API reference

Retrieve a plan

Full plan detail, including the mobile networks the eSIM can roam on.

GEThttps://app.journeystack.co/api/public/v1/plans/{id}

Path parameters

FieldTypeDescription
idrequireduuidJourney Stack plan ID.

Request

cURL
curl "https://app.journeystack.co/api/public/v1/plans/<id>" \
  -H "Authorization: Bearer $JS_KEY"

Response

200 OK
{
  "data": {
    "id": "0f4c1c2e-6f8a-4a09-9f0d-2f1b8c7d5e41",
  "name": "Singapore Unlimited",
  "type": "unlimited",
  "data": {
    "unlimited": true,
    "bytes": null,
    "daily_allowance": "500 MB",
    "throttled_speed": "1 Mbps"
  },
  "validity": { "days": null, "billed_per_day": true, "min_days": 1, "max_days": 365 },
  "coverage": { "type": "country", "code": "SG", "name": "Singapore" },
  "price": { "amount": 2.45, "currency": "USD", "per": "day" },
    "networks": [
      { "country": "Singapore", "network": "Singtel", "type": "5G" },
      { "country": "Singapore", "network": "StarHub", "type": "4G" }
    ]
  }
}

Selected response fields

FieldTypeDescription
networksarrayCarriers covered. Empty array when no carrier list is published for this plan.

Errors

CodeHTTPWhat to do
unauthorized401Check the Authorization header and that the key is still active in your portal.
not_found404Re-fetch the ID. Plans return not_found once they are retired from the catalogue.
rate_limited429Honour `Retry-After` (60 seconds) and back off. Ask support for a higher limit.

Sandbox console

Run this endpoint against the sandbox with your own test key. Nothing is provisioned on the live network and no real money moves.

Try it

/api/public/v1/plans/%7Bid%7D