Skip to content
scango.ch
English
Esc
navigateopen⌘Jpreview

List or search products

List products, or search with q. Search supports offset and caps page size at 250. Without q, use cursor for stable pagination with limit.

GET/products
Authorization
AuthorizationBearer token (API key) · headerrequired
Organization API key.
Query parameters
qstring
Search text. Enables `offset` pagination.
limitinteger
Page size (1–5000, default 100; max 250 with `q`).
min 1 · max 5000 · default: 100
offsetinteger
Skip search hits. Only with `q`.
min 0 · max 10000 · default: 0
storestring
Filter by store id. Works with and without `q`. When set, `meta.total` reflects the filtered page (not the unfiltered search estimate).
cursorstring
Opaque document id for the next page. Only without `q`. Do not parse. Follow `meta.nextCursor` until it is absent.
Responses
200List of products with meta.
dataProduct[]required
Show properties
Array of Product
idstring
Product document id
externalIdstring
Optional external identifier
namestring
priceinteger
Price in cents.
supplierstring
Supplier id
taxCategorystring
Swiss VAT category code
Allowed:8.12.63.80
categorystring
Category id
declarationsstring
barcodestring
depositProductinteger
Deposit in cents.
depositProductLabelstring
descriptionstring
salePriceinteger
Sale price in cents.
salePercentagenumber
salePriceDateFromstring<date-time>
salePriceDateTostring<date-time>
costPriceinteger
Cost price in cents.
marginnumber
showOnScreenboolean
ageRestrictionboolean
showOnScaleboolean
saleStopboolean
deactivatedboolean
openInputboolean
imageUrlstring
Image URL (read-only).
indexinteger
allowStorestring[]
Allowed store ids (read-only).
hideStorestring[]
Hidden store ids (read-only).
deletedboolean
Soft-deleted when true.
createdatestring<date-time>
lastupdatestring<date-time>
instancestring
Organization id when present
metaListMetarequired
List metadata. `returned` is the length of `data`. Soft-deleted catalog rows are omitted from list results, so `returned` may be less than `limit` even when more active items exist. When `nextCursor` is present, more pages may exist — keep paging until `nextCursor` is absent.
Show properties
totalintegerrequired
With product search (`q`) without `store`: estimated match count. With `store`: equals `returned` after store visibility filtering. Otherwise equals `returned`. Soft-deleted items are omitted, so a page may be shorter than `limit` even when more active items exist.
returnedintegerrequired
Number of active items in `data` (soft-deleted rows excluded).
limitintegerrequired
Applied page size.
offsetinteger
Only for product search with `q`.
nextCursorstring
Opaque cursor for the next page. Present when more results may exist. Do not parse; pass unchanged as `cursor`. Under soft-delete filtering, `returned < limit` does not mean the list is finished.
400Bad request
errorValidationErrorrequired
Validation details.
Show properties
formErrorsstring[]required
fieldErrorsobjectrequired
403Unauthorized
statusCodeintegerrequired
HTTP status code
messagestringrequired
Human-readable error message
timestampstring<date-time>required
pathstringrequired
Request path
503Search unavailable
errorstringrequired
Request
curl -X GET "https://dashboard.scango.ch/api/v1/products" \
  -H "Authorization: Bearer YOUR_TOKEN"
Response
{
  "data": [
    {
      "id": "string",
      "externalId": "string",
      "name": "string",
      "price": 0,
      "supplier": "string",
      "taxCategory": "8.1",
      "category": "string",
      "declarations": "string",
      "barcode": "string",
      "depositProduct": 0,
      "depositProductLabel": "string",
      "description": "string",
      "salePrice": 0,
      "salePercentage": 0,
      "salePriceDateFrom": "2024-01-01T00:00:00Z",
      "salePriceDateTo": "2024-01-01T00:00:00Z",
      "costPrice": 0,
      "margin": 0,
      "showOnScreen": true,
      "ageRestriction": true,
      "showOnScale": true,
      "saleStop": true,
      "deactivated": true,
      "openInput": true,
      "imageUrl": "string",
      "index": 0,
      "allowStore": [
        "string"
      ],
      "hideStore": [
        "string"
      ],
      "deleted": true,
      "createdate": "2024-01-01T00:00:00Z",
      "lastupdate": "2024-01-01T00:00:00Z",
      "instance": "string"
    }
  ],
  "meta": {
    "total": 0,
    "returned": 0,
    "limit": 0,
    "offset": 0,
    "nextCursor": "string"
  }
}