Skip to content

eSIMTrade Docs

Public API

api.esimtrade.com

cURL
JavaScript
HTTP
JSON

Simpler, clearer reseller API docs.

Start with authentication, check wallet balance, read plans, and then move into orders and inventory. These docs are designed to help teams integrate faster with less scrolling and less guessing.

Fast scan
Live route coverage
Copyable examples
Getting Started
API key or session
GET

List Plans

Load the reseller catalog with reseller-aware pricing or fetch a single slug with resolved pricing detail.

Endpoint

GET /portal/plans

Endpoint behavior

Without query parameters, this route returns the current provider catalog with reseller-aware pricing attached to each package entry. With a slug query parameter, it returns a single plan and resolves reseller pricing for that item only.

The response includes supplier price information and the reseller-facing sell price. Use the returned slug or packageCode values as the source of truth for later purchase requests.

Query parameterTypeDescription
slugstringOptional single-plan lookup by slug

List catalog

cURL
curl --location --request GET 'https://api.esimtrade.com/api/v1/portal/plans' \
--header 'x-access-code: YOUR_ACCESS_CODE' \
--header 'x-secret-key: YOUR_SECRET_KEY'

Fetch single plan by slug

cURL
curl --location --request GET 'https://api.esimtrade.com/api/v1/portal/plans?slug=ES_3_30' \
--header 'x-access-code: YOUR_ACCESS_CODE' \
--header 'x-secret-key: YOUR_SECRET_KEY'

Live response shape

JSON
{
  "data": {
    "packageCode": "CKH002",
    "slug": "ES_3_30",
    "name": "Spain 3GB 30Days",
    "price": 2.5,
    "currencyCode": "USD",
    "volume": 3,
    "duration": 30,
    "durationUnit": "DAY",
    "locationCode": "ES",
    "supplierPrice": 1.8,
    "pricing": {
      "costPrice": 1.8,
      "sellPrice": 2.5,
      "margin": 0.7,
      "marginPct": 38.89,
      "ruleScope": "global",
      "ruleType": "percent"
    }
  }
}

Base URL

https://api.esimtrade.com/api/v1

Open on API host

On this page