Skip to documentation

Categories

List categories that contain published devices, with display names and device counts.

GET/v1/categories

Request

Run this on your server with SPECSPOOL_API_KEY set.

curl --request GET 'https://api.specspool.com/v1/categories' \
  --header "x-api-key: $SPECSPOOL_API_KEY"

Parameters

Required header: x-api-key.

  • Category values: phone, tablet, smartwatch, laptop, desktop, cpu, gpu, motherboard, memory, storage, peripheral, reference. Use GET /v1/categories to discover categories with published devices.
  • The response contains the complete populated category list sorted by descending deviceCount and a catalog revision object.
  • To find devices in a category, use Search devices with q and category.
  • This is a discovery request. Account-wide discovery limits use fixed UTC windows and apply across all API keys.

Response

200 OK, application/json. See Response schema for device, brand, variant and search-result fields.

All customer /v1 responses use Cache-Control: private, no-store. Free device-detail responses omit image URL fields. Image URLs are optional on paid plans too; check for their presence before rendering an image.

Show an example JSON response

Illustrative data; names, counts and specifications are examples.

200 OK
{
  "data": [
    {
      "slug": "phone",
      "name": "Phones",
      "deviceCount": 2
    }
  ],
  "revision": {
    "revision": "example-revision",
    "updatedAt": "2026-10-01T00:00:00.000Z"
  }
}
Success response fields
FieldTypePresence
dataobject[]Required
revisionRevisionRequired

Errors

Invalid supported parameters or malformed JSON can return 400 validation_error. Authentication and admission can return 401, 402, 403, 429 or 503; see authentication errors. Unexpected failures return 500 internal_error. Errors after admission remain counted.

{
  "error": {
    "code": "validation_error",
    "message": "Invalid request parameters"
  }
}