ITT eSIM API (1.0.0)

Download OpenAPI specification:

The ITT eSIM API exposes connectivity services that complement the existing Hotel APIs in the travel platform. Hotel services cover accommodation search, content and booking, while the eSIM services let you attach mobile data connectivity to the same customer journeys.

This specification focuses exclusively on the eSIM services. Hotel APIs are documented separately in the Hotel API specification and are currently available for production use. The eSIM endpoints described here are available only via the REST interface and are not yet accessible through WSIM based integrations.

Typical integration pattern:

  • Use Hotel APIs to search and book accommodation.
  • Use the eSIM APIs from this document to search, price and book data connectivity for the same traveller and trip.
  • Present eSIM options as an add-on in the booking flow or post-booking journeys.

Key eSIM flows and their endpoints:

eSim

eSIM related operations

Search eSIM plans

Searches for available eSIM plans for a given region, country or supplier. Use this endpoint to build the initial connectivity offer alongside hotel search results, then narrow down to a specific package with /esim/single-esim-package.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "eSim": {
    },
  • "supplier_uid": "all",
  • "partner_id": "1",
  • "short_ref": "xxxx111",
  • "language": "en"
}

Response samples

Content type
application/json
{ }

Get single eSIM package

Retrieves detailed information and pricing for a specific eSIM package that was returned from /esim/search. The response can be used to confirm the offer shown to the user before creating a booking with /esim/create-booking.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "tracking_id": "11763299361URM1",
  • "package_id": "X1AO00012||bangladesh||1067||fatafati-in-7days-1gb"
}

Response samples

Content type
application/json
{ }

Update customer information

Updates passenger and contact details on an existing eSIM booking. Call this endpoint after hotel or itinerary changes so that the connectivity order has the same traveller profile and contact information as the related hotel booking.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "booking_tracking_id": "11176335754526194RQYGH",
  • "member_id": "2",
  • "save_pax": "yes",
  • "passenger": [
    ]
}

Response samples

Content type
application/json
{ }

Create eSIM booking

Creates a confirmed eSIM booking for one or more packages. Typically called after hotel booking confirmation, using the same member and contact details so that eSIM vouchers and installation instructions can be surfaced in the same post-booking experience.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{ }

Get data usage

Returns data usage for a provisioned eSIM, including remaining balance and consumption trends. Use this to power “trip dashboard” or “upcoming stay” views where usage is shown next to hotel and itinerary details.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "member_id": "2",
  • "tracking_id": "11176276126126194RHSGI",
  • "eSim_iccid": "873000000000040589"
}

Response samples

Content type
application/json
{ }

Get booking details

Retrieves the full details of an eSIM booking, including package, traveller, and status information. This is the primary read endpoint to keep your UI in sync when showing combined hotel, flight or activity bookings with attached eSIMs.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "member_id": "2",
  • "tracking_id": "11176276126126194RHSGI",
  • "booking_id": "ES2510NOKJAAFK"
}

Response samples

Content type
application/json
{ }

Get installation instructions

Provides device-specific installation instructions for a purchased eSIM, in the requested language. Use this endpoint to embed install guides into your trip confirmation flows alongside hotel check-in instructions.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "member_id": "1",
  • "tracking_id": "11176276126126194RHSGI",
  • "eSim_iccid": "873000000000040589",
  • "preferred_language": "en"
}

Response samples

Content type
application/json
{ }

Get compatible devices

Returns the list of devices that are compatible with the eSIM offering. This can be used during hotel or package checkout to pre-validate that travellers’ phones and tablets support eSIM before you surface connectivity upsells.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "member_id": 1
}

Response samples

Content type
application/json
{ }

Get top-up packages

Lists available top-up options for an active eSIM. Call this endpoint when building account or “manage booking” pages so that travellers staying at a hotel can purchase additional data without leaving your application.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "member_id": "1",
  • "tracking_id": "11176328969726194MHHQA",
  • "eSim_iccid": "873000000000042014"
}

Response samples

Content type
application/json
{ }

Create top-up booking

Creates a booking for a selected top-up package. This is usually invoked from a self-service area where the traveller is reviewing their hotel stay and chooses to add more data for the same trip.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{ }

Get top-up history

Returns historical top-up transactions for a given eSIM. Use this to show spend history and support flows (for example, confirming charges related to a hotel stay or corporate trip).

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "member_id": "1",
  • "tracking_id": "11176328969726194MHHQA",
  • "eSim_iccid": "873000000000042014"
}

Response samples

Content type
application/json
{ }

Register webhook

Registers a webhook subscription so that your platform can receive asynchronous events such as low data balance or lifecycle updates. These events can be used to trigger notifications inside your travel UI, for example while the traveller is viewing upcoming or in-progress hotel stays.

Authorizations:
(apiKeyAuthsecretCodeAuth)
Request Body schema: application/json
required
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "supplier_code": "airalo",
  • "supplier_uid": "X1AO00065",
  • "notification_type": "webhook_low_data"
}

Response samples

Content type
application/json
{ }