Sign inGet Started

List orders

GET
/v1/esim/orders
bird esim orders list
Reactie200
{
  "data": [
    {
      "created_at": "2026-05-20T09:14:52Z",
      "updated_at": "2026-05-25T16:42:01Z",
      "id": "eor_01krdgeqcxet5s7t44vh8rt9mg",
      "status": "scheduled",
      "mode": "live",
      "offer_id": "eof_01krdgeqcxet5s7t44vh8rt9mg",
      "zone_id": "ezn_01krdgeqcxet5s7t44vh8rt9mg",
      "esim_id": "esm_01krdgeqcxet5s7t44vh8rt9mg",
      "subscriber_id": "esub_01krdgeqcxet5s7t44vh8rt9mg",
      "recurring_subscription_id": "ers_01krdgeqcxet5s7t44vh8rt9mg",
      "package_id": "epk_01krdgeqcxet5s7t44vh8rt9mg",
      "price": {
        "amount": "0.00995",
        "currency_code": "USD"
      },
      "wallet_transaction_id": "wtx_01krdgeqcxet5s7t44vh8rt9mg",
      "refund_transaction_id": "wtx_01krdgeqcxet5s7t44vh8rt9mg",
      "delivery": {
        "to": "traveler@example.com",
        "channel": "email",
        "locale": "pt-BR"
      },
      "funding": {
        "required_amount": {
          "amount": "0.00995",
          "currency_code": "USD"
        },
        "lapses_at": "2026-09-08T14:51:01Z"
      },
      "failure_code": "insufficient_balance"
    }
  ],
  "next_cursor": "eyJ2IjoxLCJzIjoiXCIyMDI2LTA1LTI1VDE0OjAzOjEwWlwiIiwiaSI6IjAxOTJmM2IxLTRjN2UtN2EyYi05ZDYxLThmM2E1YzJlN2I0MCJ9",
  "prev_cursor": null,
  "refresh_cursor": "eyJ2IjoxLCJzIjoiXCIyMDI2LTA1LTI1VDE2OjQyOjAxWlwiIiwiaSI6IjAxOTJmM2IxLTllMDQtN2NkMy1iODE3LTJhNmY0ZDFjOGUwOSJ9"
}

Returns the workspace's orders as a cursor-paginated list, newest first. Filter by status to find in-flight or failed purchases, by esim_id for one eSIM's purchase history, or by mode to separate test purchases from real ones. Test orders are listed alongside real ones by default, each carrying its own mode.

Queryparameters

limitinteger

Maximum number of items to return per page.

starting_afterstring

Cursor from the next_cursor field of a previous list response. Returns items immediately after the cursor position in the current sort order.

ending_beforestring

Cursor from the prev_cursor or refresh_cursor field of a previous list response. Returns items immediately before the cursor position in the current sort order. prev_cursor returns the preceding page. refresh_cursor anchors at the first row of that response, which on a newest-first sort is how to fetch the items that have appeared since.

created_afterstring

Limits the response to resources created at or after this timestamp. Combine it with created_before to select a time window. Use an RFC 3339 timestamp with a timezone offset.

created_beforestring

Limits the response to resources created before this timestamp. Combine it with created_after to select a time window. Use an RFC 3339 timestamp with a timezone offset.

statusarray

Keep only orders whose status matches; repeat the parameter to match any of several.

esim_idstring

Keep only orders for this eSIM.

modestring

Keep only orders created in this mode. Without it, both live and test orders are returned.

Possible values: live, test

completed_afterstring

Keep only orders completed at or after this timestamp. Combine it with completed_before to select a completion window, which is what the analytics spend and completion figures are counted by; created_after selects when an order was placed instead. Orders that never completed are excluded. Use an RFC 3339 timestamp with a timezone offset.

completed_beforestring

Keep only orders completed before this timestamp. Combine it with completed_after to select a completion window. Orders that never completed are excluded. Use an RFC 3339 timestamp with a timezone offset.

Response Payload

data
array of object
verplicht

Orders, newest first.

Onderliggende attributen tonen
data.created_at
string
verplicht
data.updated_at
string
verplicht
data.id
string
verplicht
data.status
string
verplicht
data.mode
string
verplicht
data.offer_id
string
verplicht

Offer purchased.

data.offer_revision
integer
verplicht

Revision of the offer this order locked at creation. The quoted price stays that of this revision even if the offer changes later. The produced package snapshots its coverage at purchase; the zone's live country list governs new sales only.

data.zone_id
string
verplicht

Coverage zone of the purchased offer, captured at creation.

data.esim_id
nullable string
verplicht

The eSIM the package lands on. Set at creation when adding to an existing eSIM; set when provisioning starts for a new-eSIM order; null before that.

data.subscriber_id
nullable string
verplicht

Subscriber to assign when the new eSIM is delivered. Null when none was requested, including top-up orders, which retain the existing assignment.

data.recurring_subscription_id
string

The recurring service associated with this purchase. Absent for one-time orders.

data.package_id
nullable string
verplicht

The purchased data package, set when the order completes; null before that.

data.price
object
verplicht

The quoted price, locked at creation in your billing currency. A mode: test order quotes this price and is never charged it, so its wallet_transaction_id stays null.

Onderliggende attributen tonen
data.wallet_transaction_id
nullable string
verplicht

The wallet transaction that paid for this order, for reconciling against your billing transactions. Null until the charge lands, and always null for a mode: test order, which is never charged.

data.refund_transaction_id
nullable string
verplicht

The wallet transaction that credited the charge back after a failure. Null unless the order failed after charging.

data.delivery
object

Where install credentials are delivered once available. Present when requested at creation.

Onderliggende attributen tonen
data.funding
nullable object
verplicht

Details of an insufficient-funds attempt while the order is in charging. May be null even while the order is awaiting funds; a null value does not confirm payment. Check the order status and your wallet balance.

Onderliggende attributen tonen
data.failure_code
nullable string
verplicht

Reason the order failed. Null unless status is failed. Handle unrecognized codes without assuming the purchase succeeded.

  • canceled: canceled while awaiting funds.
  • resolved_by_support: support closed an unresolved order as failed.
  • esim_released: the target profile became unavailable before delivery.
  • mode_mismatch: the purchase could not be fulfilled in its original live or test mode.

Any charge is credited automatically. Check refund_transaction_id to confirm an issued credit.

Possible values (may grow over time): insufficient_balance, carrier_error, capacity_exhausted, offer_unavailable, internal_error, canceled, resolved_by_support, esim_released, mode_mismatch

data.failure_reason
nullable string
verplicht

Why the order failed, in plain terms. Null unless status is failed.

data.completed_at
nullable string
verplicht

When the order reached completed. Null before that.

next_cursor
nullable string
verplicht

Cursor for the next page. Pass back as starting_after to advance forward. null when no next page exists.

prev_cursor
nullable string
verplicht

Cursor for the previous page. Pass back as ending_before to step backward. null when no previous page exists.

refresh_cursor
nullable string
verplicht

Refresh anchor, the first row of this response. Pass back as ending_before to fetch what precedes it in the current sort order. On a newest-first sort those are the items that have appeared since; on any other sort they are the items that sort earlier, so refreshing such a list means re-fetching it instead. Non-null whenever data is non-empty; null only on an empty page. Distinct from prev_cursor.

Ga verder met de documentatie, handleidingen en voorbeelden voor dit onderwerp.