API Reference

API Documentation

RESTful API for programmatic access to the SpecBase product database. Built for AI agents, integrations, and automation.

Authentication

Include your API key in the request headers. API keys are free for basic read access.

X-API-Key: your-api-key-here

During the beta period, API requests work without authentication for read-only endpoints.

Base URL

https://api.specbase.co/api/v1

All responses are JSON. Successful responses include success: true with data in the data field.

Rate Limits

TierRequests/minDaily Limit
Free301,000
Pro12050,000
EnterpriseUnlimitedUnlimited

Endpoints

GET/api/v1/products

List and filter products

Parameters: category, manufacturer, q, page, limit, sort

Request

GET /api/v1/products?category=motors&manufacturer=abb&limit=10

Response

{
  "success": true,
  "data": [
    {
      "id": "prod-abb-m3bp-315",
      "model_number": "M3BP 315 SMC 4",
      "name": "ABB M3BP 315 Process Performance Motor",
      "specifications": {
        "horsepower": 250,
        "voltage": "460V",
        "efficiency_class": "IE3"
      },
      "manufacturer": { "name": "ABB", "slug": "abb" }
    }
  ],
  "meta": { "total": 2, "page": 1, "limit": 10 }
}
GET/api/v1/products/:id

Get a single product with full specifications

Parameters: id (path parameter)

Request

GET /api/v1/products/prod-abb-m3bp-315

Response

{
  "success": true,
  "data": {
    "id": "prod-abb-m3bp-315",
    "model_number": "M3BP 315 SMC 4",
    "name": "ABB M3BP 315 Process Performance Motor",
    "specifications": { ... },
    "manufacturer": { ... },
    "category": { ... }
  }
}
POST/api/v1/search

AI-optimized structured search

Parameters: JSON body: query, category, manufacturer, specs, page, limit

Request

POST /api/v1/search
Content-Type: application/json

{
  "category": "motors",
  "specs": {
    "horsepower_min": 20,
    "horsepower_max": 100,
    "voltage": "460V",
    "enclosure_type": "TEFC"
  },
  "manufacturer": "siemens"
}

Response

{
  "success": true,
  "data": {
    "products": [ ... ],
    "facets": {
      "categories": [{"name": "Motors", "count": 2}],
      "manufacturers": [{"name": "Siemens", "count": 2}]
    },
    "available_spec_filters": [
      "motor_type", "horsepower", "voltage", ...
    ]
  },
  "meta": { "total": 2 }
}
GET/api/v1/categories

List all product categories with product counts

Parameters: None

Request

GET /api/v1/categories

Response

{
  "success": true,
  "data": [
    { "id": "cat-motors", "name": "Motors", "slug": "motors", "product_count": 8 },
    { "id": "cat-gearboxes", "name": "Gearboxes", "slug": "gearboxes", "product_count": 0 }
  ]
}
GET/api/v1/manufacturers

List manufacturers, optionally filtered by category

Parameters: category (optional)

Request

GET /api/v1/manufacturers?category=cat-motors

Response

{
  "success": true,
  "data": [
    { "id": "mfr-abb", "name": "ABB", "slug": "abb", "product_count": 2 },
    { "id": "mfr-siemens", "name": "Siemens", "slug": "siemens", "product_count": 2 }
  ]
}
POST/api/v1/compare

Compare multiple products side by side

Parameters: JSON body: product_ids (array of 2-5 product IDs)

Request

POST /api/v1/compare
Content-Type: application/json

{
  "product_ids": [
    "prod-abb-m3bp-315",
    "prod-siemens-1le1"
  ]
}

Response

{
  "success": true,
  "data": {
    "products": [ ... ],
    "comparison_fields": [
      "motor_type", "horsepower", "voltage", ...
    ]
  }
}

Ready to integrate?

Get your free API key and start querying the SpecBase database.

Request API Key