Apinoa Docs

Categories

List one level of Amazon's category tree: the departments, or the children of one category.

View raw .mdx
GET | POST /v1/amazon/categories

Send parameters as a query string with GET, or as a JSON body with POST. Both are equivalent.

Request

curl "https://gateway.apinoa.com/v1/amazon/categories" \
  -H "x-api-key: $APINOA_API_KEY"

Parameters

ParameterTypeRequiredNotes
categoryIdstringOmit for the 40 departments; give a browse node (172541) or a department slug (electronics) to list that category's children. This is the one endpoint that takes either kind of id.
regionenumWhich Amazon marketplace to query, by buyer country: US, CA, MX, BR, FR, IT, ES, NL, SE, TR, AE, SA, IN, JP, SG, AU. Defaults to US. Prices come back in that marketplace's own currency (JP in JPY, FR in EUR). US CA MX BR FR IT ES NL SE TR AE SA IN JP SG AU

The same parameters, and every response type, are in the OpenAPI document.

Response

Returns CategoryList in data. A real response, shortened: arrays keep their first entries and long text is cut.

{
  "success": true,
  "data": {
    "marketplace": "amazon",
    "path": [],
    "categories": [
      {
        "id": "amazon-devices",
        "name": "Amazon Devices & Accessories",
        "browsable": false
      },
      {
        "id": "amazon-renewed",
        "name": "Amazon Renewed",
        "browsable": false
      }
    ]
  }
}

Errors

StatusCodeMeaning
400INVALID_PARAMSA parameter is missing, unknown or out of range. The message names it.
401UNAUTHORIZEDThe x-api-key header is missing, or the key is revoked or unknown.
402INSUFFICIENT_BALANCEThe balance does not cover this call. Top up in the dashboard.
429MARKETPLACE_SATURATEDToo many concurrent calls. Retry after the Retry-After seconds.
502UPSTREAM_ERRORThe platform answered with something unusable. Retry with backoff.

Every code is listed in Errors. Failed calls are not billed.

Pricing

Price $0.001 per call. List price; the rate steps down above 1,000 calls a day.

Notes

  • Omit categoryId for the departments. Pass one to list its children, and walk down.
  • Two kinds of id. A department is a store slug (electronics); everything below it is a numeric browse node (172541). Departments come back with "browsable": false because Browse needs a node. Descend one level and you have ids it accepts.
  • Below the departments, browsable is not reported and defaults to yes; a minority of nodes list nothing (Camera & Photo is one).
  • The response carries path (the ancestors, leaf last) and categories.

On this page