Get product groups
Lists the authenticated company's product groups, oldest first (ordered by creation time ascending). Product groups are the categories a product can belong to: each product references at most one group, and groups are also used as targeting or exclusion filters on price tiers.
Results are paginated. When more rows exist the response includes a
next_page URL to fetch the following page; next_page is null on the last page. Page size is
fixed by the server and is not client-controllable. Filter the list
by the inserted_datetime and updated_datetime ranges.
Required permission: settings_permissions_product_groups.
BearerAuthorizationBearer <token>API token generated in Distru (Settings → Distru API). Send it on every request as Authorization: Bearer YOUR_API_TOKEN.
ids[]?array<string>Restrict the result to specific product groups by ID (the same ID returned as each group's id). Repeat the bracketed key once per ID. Unknown IDs simply match nothing; an empty list is treated as no filter. At most 200 IDs may be given.
inserted_datetime?stringFilter to product groups by their creation datetime, given as a comma-separated start,end pair of ISO8601 datetimes (inclusive). Either bound may be omitted for an open-ended range: 2022-07-10T00:00:00Z, matches on or after that instant, ,2022-07-10T00:00:00Z matches on or before it.
updated_datetime?stringFilter to product groups by their last-updated datetime, given as a comma-separated start,end pair of ISO8601 datetimes (inclusive). Either bound may be omitted for an open-ended range.
page?stringPage selector. Page size is fixed by the server; paginate by following the next_page URL in each response rather than building page selectors yourself — it is null on the last page. next_page uses page[after]=<cursor>, an opaque token marking where the next page resumes; pass it back exactly as given, and only to the endpoint that issued it. This is seek-based, so every page stays fast no matter how deep you page.
A list of product groups
*/*- response
A collection of product groups
data?array<>Product Groups
next_page?stringURL for the next page of results; null when there is no next page
curl -X GET 'https://app.distru.com/public/v1/product-groups'{ "data": [ { "id": "00000000-0000-0000-0000-000000000008", "inserted_datetime": "2026-10-08T09:10:05.295969Z", "name": "PG1", "updated_datetime": "2026-10-08T09:10:05.295969Z" }, { "id": "00000000-0000-0000-0000-000000000009", "inserted_datetime": "2026-10-08T09:10:05.297082Z", "name": "PG2", "updated_datetime": "2026-10-08T09:10:05.297082Z" }, { "id": "00000000-0000-0000-0000-00000000000a", "inserted_datetime": "2026-10-08T09:10:05.297618Z", "name": "PG3", "updated_datetime": "2026-10-08T09:10:05.297618Z" } ], "next_page": "https://www.example.com/public/v1/product-groups?page[after]=ZHwyMDI2LTEwLTA4VDA5OjEwOjA1LjI5NzYxOFp8aXwwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMGE"}