FurniOpsDocs
API referenceCategories

List a source's categories

Every category path the source's current products name, and every path above them, in path order: how many products sit at or below each, the rule set there, the rule inherited from above, or a same-name suggestion. Products under a path with no rule have no category.

  • Scopessources:read
  • Rate classread
GET/v1/sources/{id}/categories

Every category path the source's current products name, and every path above them, in path order: how many products sit at or below each, the rule set there, the rule inherited from above, or a same-name suggestion. Products under a path with no rule have no category.

Authorization

apiKey
AuthorizationBearer <token>

An API key (fo_live_… / fo_test_…) as a bearer token

In: header

Path Parameters

id*string

Source (a vendor connection) ID

Match^src_[0-9A-Za-z]{22}$

Header Parameters

FurniOps-Version?string

Dated API version; pinned per organisation on first use and overridable per request

Value in

  • "2026-10-01"
  • "2026-10-04"
FurniOps-Mode?string

The data the request acts on: test is the organisation's sandbox. An OAuth token picks it (live by default); an API key's mode is fixed, and naming the other one is refused

Value in

  • "live"
  • "test"
If-None-Match?string

ETag of a cached representation; a match returns 304

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X GET "https://example.com/v1/sources/string/categories"
{  "object": "list",  "data": [    {      "object": "source_category",      "path": [        "string"      ],      "products": 0,      "rule": {        "id": "string",        "path": "string"      },      "inherited": {        "id": "string",        "path": "string"      },      "suggestion": {        "id": "string",        "path": "string"      }    }  ],  "has_more": true,  "next_cursor": "string"}