Roami — Agent & API Documentation

This page documents the machine-readable endpoints that AI agents and crawlers can use to discover, read, and compare Roami travel eSIM products across 200+ destinations.

Endpoints

EndpointPurpose
/catalog.jsonComplete product catalog — every country, every plan, with data amount, validity, and price.
/llms.txtLLM-friendly overview: coverage, pricing tiers, key pages, and popular destinations.
/sitemap.xmlStandard sitemap of all pages.
/openapi.jsonOpenAPI spec describing the catalog endpoint.
/.well-known/api-catalogRFC 9727 linkset pointing to the API description and docs.
/.well-known/ai-catalog.jsonARD (Agent Resource Discovery) manifest of discoverable resources.
/.well-known/agent-skills/index.jsonAgent skills discovery index.

/catalog.json schema

The catalog is a JSON document (valid JSON-LD, @type: ItemList) with the following top-level fields:

{
  "@type": "ItemList",
  "brand": "Roami",
  "currency": "USD",
  "itemCount": 164,
  "countries": [ { ... } ]
}

Each entry in countries:

{
  "name": "Japan eSIM",
  "url": "https://www.roamiapp.com/japan-esim/",
  "operators": ["NTT Docomo", "SoftBank", "KDDI"],
  "cities": ["Tokyo", "Osaka", "Kyoto"],
  "lowPriceUSD": 1.99,
  "highPriceUSD": 39.9,
  "plans": [
    {
      "validityDays": 3,
      "validityLabel": "3 Days",
      "dataAmount": "1GB",
      "network": "High-Speed 5G/4G/LTE",
      "priceUSD": "1.99",
      "oldPriceUSD": "2.98",
      "dailyUSD": "0.66"
    }
  ]
}

Field reference

FieldTypeMeaning
validityDaysnumberPlan validity in days (3, 7, 10, 15, 30, 180).
dataAmountstringIncluded data, e.g. 1GB, 5GB, or Unlimited.
priceUSDstringPrice in USD (before any discount code).
oldPriceUSDstringList price before discount.
dailyUSDstringEffective cost per day.

How agents should use this

Access

All major AI crawlers (GPTBot, ClaudeBot, Google-Extended, PerplexityBot, and others) are allowed in /robots.txt.