Skip to main content
This walks through the fastest path to a working, billable line: authenticate, see what’s purchasable, provision a new eSIM with a plan in one call, then confirm usage once it’s live. Every request/response shown here is copy-ready — swap in your own credentials and IDs.

1. Authenticate

2. Browse the catalog

Two separate catalogs feed a provision call: SIM products (the physical/eSIM unit itself) and plans (the data/voice/SMS product you attach to it).
Take note of simId (BIB010A) and productId (AT0001) — you’ll pass them as simId/planId in the next step.

3. Provision an eSIM with a plan

One call both provisions the eSIM and activates the plan on it. This endpoint is always asynchronous — it returns 202 immediately with a transactionId, not the finished SIM:
Poll statusEndpoint — no auth header needed, the transactionId itself is the credential — until status leaves PENDING/PROCESSING:
Take note of result.iccid — that’s the identifier for every SIM-scoped call from here on, including the usage check below.
See Core Concepts → Async operations for the full polling contract, including what a FAILED transaction looks like.

4. Confirm usage

The same flow in Node.js

What you just did

  1. Exchanged credentials for a bearer token.
  2. Browsed the SIM-product and plan catalogs your account can purchase.
  3. Provisioned a new eSIM with a plan attached in one call, then polled the returned transactionId to completion.
  4. Checked usage against the new SIM’s billing cycle.

Next steps

  • Guides for deeper walkthroughs — SIM-only provisioning, port-in, billing, and webhook integration.
  • API Reference (sidebar) for every field, enum and error on every endpoint.
  • Errors for how to handle failures in each of these steps.