For affiliate partners
Everything Roamic sells, as a feed.
Two JSON endpoints with the full Roamic eSIM catalog and one outbound link per destination. Always in sync with the store, so what you list is what a customer can actually buy right now.
Quick start
Replace {partner} with the partner name you agreed with your
Roamic affiliate manager. Lowercase letters, numbers, hyphen and underscore.
https://feeds.roamic.com/{partner}/dataPlans
https://feeds.roamic.com/{partner}/links
Try it:
curl https://feeds.roamic.com/esimdb/dataPlans
Building the integration with an AI assistant? Point it at
feeds.roamic.com/llms.txt, the same
docs in machine readable markdown.
Endpoints
| Endpoint | Returns |
|---|---|
GET /{partner}/dataPlans |
Full catalog of purchasable plans. Same content for every partner. |
GET /{partner}/links |
One landing link per destination. Pre-wrapped with your tracking link when we have it configured for your partner name. |
GET /dataPlans |
Generic catalog, no partner tag. |
GET /links |
Generic links, no partner tag. |
Responses are JSON arrays, UTF-8, served with
access-control-allow-origin: * and a 5 minute cache.
Data plans
| Field | Type | Meaning |
|---|---|---|
planName | string | Display name of the plan. |
validity | integer | Maximum duration in days without an extra payment. |
dataCap | number | High speed data allowance before any throttling, in
dataUnit. Never 0 for plans with a real allowance. |
dataUnit | string | Unit for dataCap. Currently always GB. |
dataCapPer | string or null | Reset period for recurring allowances. "day" means the
allowance renews daily. null means one total allowance. |
reducedSpeed | string | Unlimited plans only: speed after the daily allowance, for example
"1 Mbps". |
prices | object | Final checkout price keyed by ISO 4217. EUR is the
base currency and always present. Also served when available: USD,
GBP, CAD, AUD, DKK, SEK, CHF and JPY, real per market store prices. |
internetBreakouts | array | Where traffic exits to the public internet, ISO 3166-1 alpha-2. |
coverages | array | Covered countries with their local operators:
{ "code": "JP", "networks": [ { "name": "NTT docomo",
"type": "5G" } ] }. |
A fixed allowance plan
{
"planName": "Japan eSIM 3GB / 14 Days",
"validity": 14,
"dataCap": 3,
"dataUnit": "GB",
"dataCapPer": null,
"prices": { "EUR": 2.99, "USD": 3, "GBP": 3, "DKK": 23, "JPY": 600 },
"internetBreakouts": [ "HK" ],
"coverages": [ { "code": "JP", "networks": [
{ "name": "NTT docomo", "type": "5G" } ] } ]
}
An unlimited plan with daily fair use
{
"planName": "Japan eSIM Unlimited Data / 1 Day",
"validity": 1,
"dataCap": 3,
"dataUnit": "GB",
"dataCapPer": "day",
"reducedSpeed": "1 Mbps",
"prices": { "EUR": 2.99, "USD": 3, "GBP": 3 },
"internetBreakouts": [ "HK" ],
"coverages": [ { "code": "JP", "networks": [
{ "name": "NTT docomo", "type": "5G" } ] } ]
}
Unlimited plans keep full speed up to dataCap per
dataCapPer, then continue at reducedSpeed. The cap
you see is the real high speed allowance, as comparison sites require.
Links
| Field | Type | Meaning |
|---|---|---|
name | string | Call to action text, for example Japan eSIM. |
link | string | Landing page for that destination on roamic.com. |
type | string | Always web. |
targets | array | ISO 3166-1 alpha-2 country codes where the link applies. |
{
"name": "Japan eSIM",
"link": "https://roamic.com/products/japan-esim",
"type": "web",
"targets": [ "JP" ]
}
Freshness and accuracy
The feed mirrors the store, not a database that can drift. The catalog is rebuilt from the live store once a day:
· Sold out plans and unpublished destinations are excluded automatically.
· Prices are the final checkout price in EUR, straight from the store.
· The x-feed-updated response header tells you when the data
was last refreshed.
If you ever list something from this feed, a customer can buy it. Prices and plans change rarely, so a daily refresh keeps the feed exact.
Tracking and attribution
Roamic runs its affiliate program on impact.com. Two ways to use the links feed:
1. Wrap the links yourself. By default every link is a
pure product URL with no tracking parameters. If you are on impact.com, wrap
it with your own deep link, putting the URL encoded landing page in the
u parameter. Impact adds its own tracking from there.
2. Ask us to embed your tracking link. We can configure
your impact.com deep link on our side, so the link field comes
out already wrapped and attribution just works. Tell your affiliate manager
and it ships the same day.
Questions
Talk to your Roamic affiliate manager, or reach out through the program on impact.com. Technical issues with the feed are usually answered the same business day.