GET /v1/products
Lists product nodes from the canonical organization graph.
curl -H "Authorization: Bearer YOUR_TOKEN" \
"https://api.docsignal.app/v1/products?organization_id=ogn_01ARZ3NDEKTSV4RRFFQ69G5FAV&as_of=2026-07-31"
| Parameter | Meaning |
|---|---|
organization_id | Optional organization, business-unit, brand or family node. Includes descendant products. |
as_of | Optional YYYY-MM-DD; defaults to today. |
geography_type | Optional attribute type. Required when any place filter is supplied. |
country_code | Optional ISO 3166-1 alpha-2 country match. |
subdivision_code | Optional ISO-shaped subdivision; requires country_code. |
region_name | Optional vendor-authored region, only with operating_region. |
{
"products": [
{
"id": "ogn_01ARZ3NDEKTSV4RRFFQ69G5FAZ",
"organization_id": "ogn_01ARZ3NDEKTSV4RRFFQ69G5FAV",
"parent_id": "ogn_01ARZ3NDEKTSV4RRFFQ69G5FAY",
"name": "Acme Build",
"slug": "acme-build",
"active_from": "2022-04-01",
"active_to": null,
"geography": [
{
"id": "oga_01ARZ3NDEKTSV4RRFFQ69G5FB0",
"type": "operating_market",
"country_code": "GB",
"subdivision_code": null,
"locality": null,
"region_name": null,
"effective_from": "2025-01-01",
"effective_to": null,
"evidence": []
}
]
}
],
"query": {
"organization_id": "ogn_01ARZ3NDEKTSV4RRFFQ69G5FAV",
"as_of": "2026-07-31"
}
}
GET /v1/products/:id
Returns one product with its effective-dated aliases and ancestor chain.
Product IDs are stable identity. A rename changes aliases; a move between brands or families changes an effective-dated parent relationship. Neither creates a new product ID. Historical products remain addressable at dates when they were active.
Product geography is direct attribution only. Organization or business-unit headquarters and markets are never inherited onto descendant products.
Compatibility
These routes are additive. Existing event product values remain product
slugs, and null keeps its existing meaning. New clients should join on
product_id; old clients do not need to change.