contract 2026-08-19
Endpoints

Catalog

Build slug-addressable manufacturer and model-group navigation.

GET

/api/catalog/manufacturers

Paginated manufacturer catalog with inventory counts.

Requires the catalog scope.

Parameters

countrystring · query string

Restrict to a country or europe.

Example DE·Where the value comes from /api/countries -> country_details[].code

limit / offset / page / page_sizeinteger · query string

Standard pagination. Default limit 50.

Example 20 / 0·Where the value comes from Pagination state in your application.

Example requests

Request
GET https://api.thecarapi.com/api/catalog/manufacturers?country=DE&limit=20
GET https://api.thecarapi.com/api/catalog/manufacturers?page=2&page_size=25

Example response

json
{
  "success": true,
  "results": [
    {
      "slug": "bmw",
      "name": "BMW",
      "inventory_count": 1543,
      "brand_id": 12
    }
  ],
  "total": 96,
  "limit": 50,
  "offset": 0,
  "total_pages": 2,
  "max_page": 2
}
GET

/api/catalog/manufacturers/{slug}

Resolve one manufacturer by slug.

Requires the catalog scope.

Parameters

slugstring · in the URL pathrequired

Manufacturer slug.

Example bmw·Where the value comes from /api/catalog/manufacturers -> results[].slug

countrystring · query string

Optional country restriction.

Example DE·Where the value comes from /api/countries -> country_details[].code

Example requests

Request
GET https://api.thecarapi.com/api/catalog/manufacturers/bmw
GET https://api.thecarapi.com/api/catalog/manufacturers/bmw?country=DE

Example response

json
{
  "success": true,
  "manufacturer": {
    "slug": "bmw",
    "name": "BMW",
    "inventory_count": 1543,
    "brand_id": 12
  }
}
GET

/api/catalog/manufacturers/stats

Return aggregate manufacturer statistics.

Requires the catalog scope.

Parameters

countrystring · query string

Optional country restriction.

Example DE·Where the value comes from /api/countries -> country_details[].code

Example requests

Request
GET https://api.thecarapi.com/api/catalog/manufacturers/stats
GET https://api.thecarapi.com/api/catalog/manufacturers/stats?country=DE

Example response

json
{
  "success": true,
  "total_manufacturers": 96,
  "active_manufacturers": 84
}
GET

/api/catalog/model-groups

Paginated model groups for one manufacturer.

Requires the catalog scope.

Parameters

manufacturer__slugstring · query stringrequired

Parent manufacturer slug.

Example bmw·Where the value comes from /api/catalog/manufacturers -> results[].slug

searchstring · query string

Substring filter on model name.

Example 320·Where the value comes from Free text entered by your user.

countrystring · query string

Optional country restriction.

Example DE·Where the value comes from /api/countries -> country_details[].code

limit / offset / page / page_sizeinteger · query string

Standard pagination. Default limit 50.

Example 20 / 0·Where the value comes from Pagination state in your application.

Example requests

Request
GET https://api.thecarapi.com/api/catalog/model-groups?manufacturer__slug=bmw&search=320
GET https://api.thecarapi.com/api/catalog/model-groups?manufacturer__slug=bmw&country=DE&page=2&page_size=20

Example response

json
{
  "success": true,
  "results": [
    {
      "slug": "320d",
      "name": "320d",
      "inventory_count": 210,
      "manufacturer_slug": "bmw"
    }
  ],
  "total": 34,
  "limit": 50,
  "offset": 0,
  "total_pages": 1,
  "max_page": 1
}
GET

/api/catalog/model-groups/{slug}

Resolve one model group by slug.

Requires the catalog scope.

Parameters

slugstring · in the URL pathrequired

Model-group slug.

Example 320d·Where the value comes from /api/catalog/model-groups -> results[].slug

manufacturer__slugstring · query string

Manufacturer slug for disambiguation.

Example bmw·Where the value comes from /api/catalog/manufacturers -> results[].slug

countrystring · query string

Optional country restriction.

Example DE·Where the value comes from /api/countries -> country_details[].code

Example requests

Request
GET https://api.thecarapi.com/api/catalog/model-groups/320d?manufacturer__slug=bmw
GET https://api.thecarapi.com/api/catalog/model-groups/320d?manufacturer__slug=bmw&country=DE

Example response

json
{
  "success": true,
  "model_group": {
    "slug": "320d",
    "name": "320d",
    "inventory_count": 210,
    "manufacturer_slug": "bmw"
  }
}