Tizondocs
ReferenceOffers

List offers

GET
/v1/offers

The offers this key's mode can buy, paged. Filter by category and country. Prices already include Tizon's margin: price is what a quote will debit.

An offer the provider has stopped selling is left out of this list, but can still be retrieved, so an old order can be explained.

Authorization

ApiKey
AuthorizationBearer <token>

An account API key, sent as Authorization: Bearer tz_live_…. The prefix selects the mode: tz_test_ for sandbox, tz_live_ for real money.

In: header

Query Parameters

category?string

Value in

  • "esim"
  • "mobile_topup"
country?string

ISO 3166-1 alpha-2, case-insensitive.

Match^[A-Za-z]{2}$
display_currency?string

Adds an indicative display amount in this currency to every offer. Presentation only, never a settlement amount. USD adds nothing, since price is already USD. A currency with no rate is 400 unsupported_display_currency.

Match^[A-Za-z]{3}$
limit?integer

Maximum items to return.

Range1 <= value <= 100
Default20
cursor?string

The next_cursor from a previous page.

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/offers"
{  "object": "list",  "has_more": true,  "next_cursor": "string",  "data": [    {      "id": "off_jp_5gb_30d",      "object": "offer",      "category": "esim",      "name": "Japan 5GB 30 days",      "coverage": {        "type": "country",        "countries": [          "string"        ]      },      "data": {        "amount": 0,        "unit": "GB",        "unlimited": true      },      "validity_days": 0,      "price": {        "amount": 1450,        "currency": "USD"      },      "display": {        "amount": 2320000,        "currency": "NGN",        "rate": "1600.00",        "indicative": true      },      "requires_destination": true,      "status": "active"    }  ]}