Amba

Stores

Active stores and their storefront listings with merged catalog + override prices.

Listings are filtered by availability windows (available_from / available_until) server-side so clients only see what's currently sellable.

Source: apps/api/src/routes/client/stores.ts.

Endpoints

MethodPathDescription
GET/client/storesActive stores.
GET/client/stores/:storeIdStore + available listings (joined to catalog items + prices).

GET /client/stores

Response 200

{ "data": [{ "id": "…", "name": "…", "description": "…", "is_active": true }] }

Try it:

GET/client/stores
client auth
curl -X GET 'https://api.amba.dev/client/stores'
Loading auth… Configure auth in the settings drawer (top-right) to run this request.

Curl:

curl -X GET '${BASE_URL}/client/stores' \
  -H 'X-Api-Key: ${CLIENT_API_KEY}' \
  -H 'Authorization: Bearer ${SESSION_TOKEN}'

GET /client/stores/:storeId

Response 200

{
  "data": {
    "store": { "id": "…", "name": "…" },
    "listings": [
      {
        "id": "…",
        "store_id": "…",
        "catalog_item_id": "…",
        "sort_order": 0,
        "override_prices": null,
        "catalog_items": {
          "key": "…",
          "name": "…",
          "icon_url": "…",
          "item_type": "…",
          "category": "…",
          "tags": [],
          "metadata": {},
          "catalog_item_prices": [{ "currency_code": "gems", "price": 100 }]
        }
      }
    ]
  }
}

Errors

  • 404 NOT_FOUND — store not found or not active.
  • 500 FETCH_FAILED.

Try it:

GET/client/stores/%7B%7BstoreId%7D%7D
client auth
curl -X GET 'https://api.amba.dev/client/stores/%7B%7BstoreId%7D%7D'
Loading auth… Configure auth in the settings drawer (top-right) to run this request.

Curl:

curl -X GET '${BASE_URL}/client/stores/{storeId}' \
  -H 'X-Api-Key: ${CLIENT_API_KEY}' \
  -H 'Authorization: Bearer ${SESSION_TOKEN}'

On this page