Skip to content
FX-Port/Docs
GuidesAPI referenceChangelog
Get API keys
  • Overview
  • Error object

Catalog

  • PackagesGET
  • Compatible devicesGET

Orders and top-ups

  • Create an orderPOST
  • Top-up packagesGET
  • Top upPOST

After the order

  • UsageGET
  • Usage of several eSIMsGET
  • BookingsGET
  • Top-up historyGET
  • Check ownershipGET
  • Setup dataGET
  • Installation instructionsGET

Objects

  • eSIM package
  • eSIM booking

eSIMs · After the order

List eSIM bookings

List the eSIM orders of your agency in this environment, newest first, with search and pagination.

GET/api/v1/esims/bookings

Requires an API key with Read permission; a Read+Write key works too.

Only orders (type esim) are listed: topups are returned by GET /esims/bookings/{iccid}/topup-history, and both are listed by the account history. A failed attempt is listed with the status failed.

search matches part of the booking id, the traveler's first or last name, the email, the package name or the ICCID (not the supplier order code or the phone). Characters that are not letters, digits or @.-_+':/& are treated as spaces, so any text is safe. pagination.total counts the bookings that match, search included.

An API key gets at most 200 bookings per request: all=true returns pages of 200 (follow pagination.has_more and page) and the response carries a coerced_value warning.

curl 'https://api.fx-port.com/api/v1/esims/bookings?limit=1' \
  -H "Authorization: Bearer fxp_test_YOUR_KEY"
Response200
{
  "environment": "sandbox",
  "success": true,
  "data": [
    {
      "id": "639417b4-b103-4ece-bd5d-850315322278",
      "booking_id": "FX-1793546602916",
      "order_id": "20261101-106852",
      "status": "confirmed",
      "currency": "DZD",
      "total_price": 468.84,
      "agency_commission": 50.24,
      "type": "esim",
      "package_name": "1 GB - 7 days • France",
      "iccid": "8900000540463077957",
      "customer_email": "[email protected]",
      "customer_first_name": "John",
      "customer_last_name": "Smith",
      "customer_phone": "+15555550123",
      "provider_name": "Airalo",
      "supplier_id": "airalo",
      "created_at": "2026-11-01T15:23:22.961228+00:00",
      "updated_at": "2026-11-01T15:23:22.961228+00:00",
      "environment": "sandbox"
    }
  ],
  "pagination": {
    "total": 61,
    "page": 1,
    "limit": 1,
    "pages": 61,
    "total_pages": 61,
    "has_more": true
  }
}

Request

Query parameters

searchstring

Part of a booking id, name, email, package name or ICCID. At most 100 characters.

At most 100 characters.

pageinteger

The page, starting at 1. An empty value means not sent.

Between 1 and 10000. Default 1.

limitinteger

Bookings per page, from 1 to 200. An empty value means not sent.

Between 1 and 200. Default 50.

allboolean

true for pages of 200 bookings (the default limit becomes 200). An empty value means not sent.

Default false.

Response

200A page of eSIM bookings.

successboolean

true when the list was returned.

dataarray of EsimBooking

The eSIM orders of this page, newest first. Topups are not listed here.

See the eSIM booking object

paginationobject

Where this page sits in the list.

ShowHide 6 attributes
totalinteger

Number of eSIM bookings of your agency in this environment that match the request (search included).

pageinteger

The page returned.

limitinteger

The page size used. With all=true for the dashboard it equals total.

pagesintegerdeprecated

Legacy name, still accepted. Use total_pages instead.

Number of pages: total divided by limit, rounded up. 0 when there are no bookings.

total_pagesinteger

Number of pages: total divided by limit, rounded up. 0 when there are no bookings.

has_moreboolean

true when another page follows.

Errors

StatusCodeExample message
400invalid_searchsearch must be at most 100 characters.
422validation_errorInput should be less than or equal to 200

The shape of the error body depends on the endpoint. See Errors for every shape and code.

Related guides

  • eSIM bookings
PreviousGet the usage of several eSIMsNext List the topups of an eSIM

© 2026 FX-Port

TermsPrivacy[email protected]