Create a share link
Returns a link the customer opens on their phone to install the eSIM, and a 4-digit access code the page asks for before it shows anything. The page carries your brand — your name, logo and support contact — not ours.
Use it when you would rather hand the customer a link than embed the QR code yourself. Everything the page shows is also available on Get an eSIM if you want to render it in your own app.
Path parameters
Section titled “Path parameters”| Name | Notes |
|---|---|
iccid |
The ICCID of the eSIM |
curl -X POST https://partner-api.esimfo.com/v1/esims/89852350326100409575/share-link \ -H 'Authorization: Bearer esf_live_at_...'No request body.
Response 200
Section titled “Response 200”| Field | Type | Notes |
|---|---|---|
url |
string | Send this to the customer. Opens the installation page under your brand |
access_code |
string | 4 digits. The customer types it on the page |
{ "url": "https://sharesim.io/travelsim/K7MXQ4RB2N", "access_code": "4831"}Send the url and the code separately. The code is what keeps the page private: without it the page shows nothing, and the page locks after a few wrong attempts. Put the link in one message and the code in another, or show the code at your checkout.
Safe to repeat. The link is created on the first call. Every call after
that returns the same url and access_code, so you can call it again
whenever the customer asks for the link instead of storing it.
Requires a brand username. The page lives at /{username}/…, so the
account needs a brand set up in the portal under Settings, Brand. Until
then this endpoint returns brand_not_configured.
It is a POST that answers 200. The first call does create something,
but the result is the same on every call, so there is no 201 and no
Idempotency-Key.
Errors
Section titled “Errors”| Status | Code | Cause |
|---|---|---|
| 404 | not_found |
No such ICCID, or it belongs to another account |
| 422 | brand_not_configured |
No brand username on the account — set one up in the portal |
| 403 | insufficient_scope |
Key lacks esims:read |
