Documentation / Endpoints / GET /api/devices

GET /api/devices

Public

Retrieve a paginated list of devices from the registry with optional filtering by category, manufacturer, and search query.

Authentication

Requires Public tier or higher. Include your API key in the Authorization header.

Authorization: Bearer YOUR_API_KEY

Query Parameters

ParameterTypeRequiredDescription
pageintegerPage number (default: 1)
limitintegerResults per page (default: 20, max: 100)
searchstringSearch query (matches name, make, category, slug)
categorystringFilter by category name (e.g., "Smartphones")
makestringFilter by manufacturer name (e.g., "Apple")
statusstringFilter by status ("active" or "discontinued")

Example Request

curl "https://api.souratlas.io/api/devices?category=Smartphones&make=Apple&page=1&limit=20" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json"

Example Response

{
  "success": true,
  "data": [
    {
      "id": "apple-iphone-14-pro",
      "name": "Apple iPhone 14 Pro",
      "slug": "apple-iphone-14-pro",
      "category": {
        "name": "Smartphones",
        "thumbnail": "https://cdn.souratlas.io/categories/smartphones.png"
      },
      "make": {
        "name": "Apple",
        "thumbnail": "https://cdn.souratlas.io/makes/apple.png"
      },
      "model_numbers": ["A2650", "A2889"],
      "technical_specifications": {
        "Display": "6.1 inch Super Retina XDR",
        "Processor": "A16 Bionic",
        "RAM": "6 GB",
        "Camera": "48 MP + 12 MP + 12 MP"
      },
      "release_date": "2022-09-16",
      "thumbnail": "https://cdn.souratlas.io/devices/iphone-14-pro.png",
      "status": "active",
      "model_identifiers": ["iPhone15,2"],
      "variants": [
        {
          "id": "var_iphone14pro_128_black",
          "sku": "MPXV3LL/A",
          "price": 99900,
          "name": "128GB Space Black",
          "part_numbers": ["MPXV3LL/A"],
          "model_numbers": ["A2650"],
          "thumbnail": "https://cdn.souratlas.io/variants/iphone-14-pro-black.png",
          "attributes": [
            { "attribute_name": "Storage", "attribute_value": "128GB" },
            { "attribute_name": "Color", "attribute_value": "Space Black" }
          ],
          "disabled": false
        }
      ]
    }
  ],
  "meta": {
    "page": 1,
    "limit": 20,
    "total": 142,
    "total_pages": 8,
    "has_next": true,
    "has_prev": false
  },
  "timestamp": "2024-01-15T10:30:00Z"
}

Response includes an array of Device objects and pagination metadata.

Error Responses

StatusError CodeDescription
401UNAUTHORIZEDMissing or invalid API key
429RATE_LIMIT_EXCEEDEDRate limit exceeded for your tier
500INTERNAL_ERRORInternal server error

See Error Handling for complete error documentation.