Description

Receive a list of all Brands and denominations. Each item includes a product_type of either EGV (e-gift voucher, priced by denomination_value) or PHYSICAL (priced by price, with stock_qty indicating available inventory). Each item also includes a sku_code — this is the exact value to pass as SKU in a line_items entry when creating an order.

The catalogue can grow large, so results are paginated using a cursor rather than returned all at once. Fetch the first page with no cursor, then keep following next_cursor until has_more is false. For steady-state use, do a one-time full paginated sync and rely on the Catalogue Update Webhook for changes afterward, rather than re-fetching the whole catalogue repeatedly.

Headers

Authorization

token generated from v1/company/auth.

Parameters

type optional, query string, type: string

Filter the catalogue by type: egv returns only e-gift vouchers (product_type: EGV); physical returns only physical products (product_type: PHYSICAL). Omit to return all items.

limit optional, query string, type: integer

Maximum number of items to return per page. Default 50, max 200.

cursor optional, query string, type: string

Opaque pagination cursor taken from a previous response's next_cursor. Omit to fetch the first page.

Example Request (first page)

GET v1/bigcity/rewards?limit=2

Example Response (first page)

{
  "items": [
    {
      "id": 1,
      "product_type": "EGV",
      "sku_code": "SKU1",
      "denomination_value": "100",
      "status": 1,
      "qty_trigger_limit": "0",
      "qty": "0",
      "skus": "Bigcity Rewards 100"
    },
    {
      "id": 2,
      "product_type": "EGV",
      "sku_code": "SKU2",
      "denomination_value": "200",
      "status": 1,
      "qty_trigger_limit": "0",
      "qty": "0",
      "skus": "Bigcity Rewards 200"
    }
  ],
  "next_cursor": "eyJpZCI6Mn0=",
  "has_more": true
}
                

Example Request (next page, filtered by type)

GET v1/bigcity/rewards?type=physical&limit=2&cursor=eyJpZCI6Mn0=

Example Response (last page)

{
  "items": [
    {
      "id": 4,
      "product_type": "PHYSICAL",
      "sku_code": "BC-MUG-BLUE-01",
      "price": "999",
      "status": 1,
      "stock_qty": "25",
      "skus": "BC-MUG-BLUE-01"
    }
  ],
  "next_cursor": null,
  "has_more": false
}
                

Example of Failure Response (invalid type)

{
  "name": "Bad Request",
  "message": "Invalid type filter value",
  "code": 50,
  "status": 400,
  "type": "yii\\web\\HttpException"
}
                

Example of Failure Response (invalid cursor)

{
  "name": "Bad Request",
  "message": "Invalid or expired cursor",
  "code": 51,
  "status": 400,
  "type": "yii\\web\\HttpException"
}