API Description

Collect Amazon keyword search results with synchronous responses or asynchronous callbacks.

This page uses parserName=amzKeyword.

Request URL

POST https://scrapeapi.pangolinfo.com/api/v1/scrape

Request Headers

ParametersParameter valueTypeDescription
Content-Typeapplication/jsonstringData format
AuthorizationBearer xxxstringAuthorization Token

Request Parameters

ParametersRequiredTypeDescription
url Conditional string Target URL
Note: If omitted, site and content are required.
parserNameYesstringFixed value: amzKeyword.
site Conditional string Site information
Note: site is optional if url is provided.
Supported countries / marketplaces (13):
amz_us (United States) / amz_de (Germany) / amz_uk (United Kingdom) / amz_jp (Japan) / amz_fr (France) / amz_it (Italy) / amz_es (Spain) / amz_ca (Canada) / amz_au (Australia) / amz_mx (Mexico) / amz_sa (Saudi Arabia) / amz_ae (United Arab Emirates) / amz_br (Brazil)
contentConditionalstringSupply keyword. Omit when using url; otherwise supply together with site.
format Yes string Response format. Available values: json (structured data; default; 1 credit/request), rawHtml (raw HTML; 0.75 credits/request), markdown (Markdown; 0.75 credits/request)
bizContext.zipcode No string Optional; when provided, the request uses this zipcode for every parser and output format; when omitted, the backend randomly selects one for the marketplace. It must match the site’s country. Keyword, category, seller, Best Sellers, New Releases and delivery-time responses return the zipcode actually used in data.zipcode.
United States: 10041 / 90001 / 60601 / 84104
United Kingdom: W1S 3AS / EH15 1LR / M13 9PL / M2 5BQ
Canada: M4C 4Y4 / V6E 1N2 / H3G 2K8 / T2R 0G5
Germany: 80331 / 10115 / 20095 / 60306
France: 75000 / 69001 / 06000 / 13000
Japan: 100-0004 / 060-8588 / 163-8001 / 900-8570
Italy: 20019 / 50121 / 00042 / 30100
Spain: 41001 / 28001 / 08001 / 46001
Australia: 2000_SYDNEY / 3000_MELBOURNE
Mexico: 01000 / 55000
Saudi Arabia: Riyadh_الرياض / Jeddah_جدة
UAE: Abu Dhabi_ADCO Compound / Ajman_Aamra
Brazil: 03001-000 / 20031-000

Response Fields

Return valueTypeDescription
codeintStatus Code
messagestringMessage
dataobjectReturned data

Return parameter data description

Return valueTypeDescription
jsonobject[]Return JSON data
urlstringTask URL
taskIdstringTask ID

Parsed Result Fields

Synchronous data.json[] contains parsed results. Product records are in each parsed result’s data.results[].

ParameterstypeDescription
asinstringASIN code
titlestringProduct title
pricestringProduct price
starstringProduct rating
ratingstringNumber of ratings
imagestringImage URL
salesstringProduct sales volume
rankintOrganic rank
sponsoredstringSponsored (SP ad) indicator
spRankintSP ad rank
badgestringBadge
deliveryobjectDelivery time

Request Example

curl -X POST "https://scrapeapi.pangolinfo.com/api/v1/scrape" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "https://www.amazon.com/s?k=coffee",
  "parserName": "amzKeyword",
  "format": "json"
}'

Response Example

This structural example illustrates the response format.

{
  "code": 0,
  "message": "ok",
  "data": {
    "json": [
      {
        "code": 0,
        "message": "ok",
        "data": {
          "results": [
            {
              "asin": "B0B4NLGCH5",
              "title": "Example product",
              "price": "",
              "star": "",
              "rating": "",
              "image": "",
              "sales": "",
              "rank": 0,
              "sponsored": "",
              "spRank": 0,
              "badge": "",
              "delivery": {}
            }
          ]
        }
      }
    ],
    "url": "https://www.amazon.com/s?k=coffee",
    "taskId": "example-task-id",
    "zipcode": "10041"
  }
}

Asynchronous Calls

Use async for batch jobs without holding HTTP connections open. Send bizContext.callbackUrl, a publicly reachable callback URL, to the same endpoint. Omit it for synchronous responses. Async requires format=json; zipcode remains available.

ParameterRequiredTypeDescription
bizContext.callbackUrlYesstringCustomer callback URL; required only for async.
curl -X POST "https://scrapeapi.pangolinfo.com/api/v1/scrape" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "https://www.amazon.com/s?k=coffee",
  "parserName": "amzKeyword",
  "format": "json",
  "bizContext": {
    "callbackUrl": "https://your-domain.com/webhooks/amazon"
  }
}'

Submission Response

{
  "code": 0,
  "message": "ok",
  "data": {
    "taskId": "example-task-id"
  }
}

Result Callback

The result is POSTed as JSON to callbackUrl. Callback data is the parsed result directly, rather than the synchronous data.json array wrapper. taskId and pointCost are top-level fields. Process callbacks idempotently by taskId and return HTTP 2xx. Failed deliveries are retried.

{
  "code": 0,
  "message": "ok",
  "data": {
    "code": 0,
    "message": "ok",
    "data": {
      "results": [
        {
          "asin": "B0B4NLGCH5",
          "title": "Example product",
          "price": "",
          "star": "",
          "rating": "",
          "image": "",
          "sales": "",
          "rank": 0,
          "sponsored": "",
          "spRank": 0,
          "badge": "",
          "delivery": {}
        }
      ]
    }
  },
  "taskId": "example-task-id",
  "pointCost": 1,
  "zipcode": "10041"
}

Points Usage

JSON: 1 point per successful fetch; rawHtml / markdown: 0.75 points. Async supports JSON only; pointCost reports the final charge. Async reserves points and settles at completion. No-content fetches release reserved points; callback delivery failures after parsing do not refund the completed fetch.