๐Ÿ†“ No API Key Required

tabiji API

Free REST API for AI-curated travel data โ€” comparisons, country facts, alerts, scam guides, and more. No API key required.

866
Comparisons
250
Countries
540
Scam Cities

Base URL

All endpoints return static JSON files. No authentication needed.

https://tabiji.ai/api/v1/

Hosted on Cloudflare Pages with generous rate limits and global CDN. CORS headers are permissive by default โ€” call from any origin.

Comparisons

1,218 head-to-head destination comparisons with category breakdowns, Reddit quotes, and verdicts.

GET /api/v1/compare.json

List all destination comparisons.

Try it
https://tabiji.ai/api/v1/compare.json
{
  "count": 866,
  "comparisons": [
    {
      "slug": "tokyo-vs-kyoto",
      "title": "Tokyo vs Kyoto: Which Should You Visit?",
      "destination1": "Tokyo",
      "destination2": "Kyoto",
      "categoryCount": 10,
      "url": "https://tabiji.ai/compare/tokyo-vs-kyoto/"
    },
    ...
  ]
}
GET /compare/{slug}/

Full comparison โ€” structured categories, Reddit quotes, verdict, and FAQs โ€” served as the canonical HTML page. Per-slug JSON endpoints were retired on 2026-04-20; the summary at /api/v1/compare.json links to each HTML page via its url field.

Try it
https://tabiji.ai/compare/tokyo-vs-kyoto/
GET /api/v1/search.json?q={query}

Cross-collection search across comparisons, countries, safety profiles, alerts, and scam guides. Optional type filter and limit.

Try it
https://tabiji.ai/api/v1/search.json?q=tokyo
{
  "query": "tokyo",
  "type": null,
  "count": 27,
  "items": [
    {
      "type": "comparison",
      "slug": "tokyo-vs-kyoto",
      "title": "Tokyo vs Kyoto: Which Should You Visit?",
      "url": "https://tabiji.ai/compare/tokyo-vs-kyoto/"
    }
  ]
}

Country Facts

Static facts for every country โ€” capitals, population, area, currencies, languages, timezones, dial codes, driving side, and more. Sourced from restcountries.com.

GET /api/v1/countries.json

All 250 countries with facts โ€” capital, population, area, region, borders, currencies, languages, flag, driving side, dial code, and more.

Try it
https://tabiji.ai/api/v1/countries.json
{
  "count": 250,
  "countries": [
    {
      "name": "Japan",
      "iso2": "JP",
      "iso3": "JPN",
      "capital": ["Tokyo"],
      "population": 123210000,
      "region": "Asia",
      "flag": "๐Ÿ‡ฏ๐Ÿ‡ต",
      "currencies": { "JPY": { "name": "Japanese yen", "symbol": "ยฅ" } },
      "drivingSide": "left",
      "dialCode": "+81"
    }
  ]
}
GET /api/v1/countries/{iso2}.json

Full facts for a single country. Use lowercase ISO 3166-1 alpha-2 codes (e.g. jp, fr, us, sg).

Try it
https://tabiji.ai/api/v1/countries/jp.json
{
  "id": "country:jp",
  "name": "Japan",
  "officialName": "Japan",
  "iso2": "JP",
  "iso3": "JPN",
  "capital": ["Tokyo"],
  "population": 123210000,
  "area": 377930,
  "region": "Asia",
  "subregion": "Eastern Asia",
  "borders": [],
  "landlocked": false,
  "demonyms": { "male": "Japanese", "female": "Japanese" },
  "startOfWeek": "monday",
  "maps": { "googleMaps": "https://goo.gl/maps/...", "openStreetMaps": "..." },
  "currencies": { "JPY": { "name": "Japanese yen", "symbol": "ยฅ" } },
  "languages": { "jpn": "Japanese" },
  "timezones": ["UTC+09:00"],
  "flag": "๐Ÿ‡ฏ๐Ÿ‡ต",
  "flagSvg": "https://flagcdn.com/jp.svg",
  "flagPng": "https://flagcdn.com/w320/jp.png",
  "drivingSide": "left",
  "dialCode": "+81",
  "tld": [".jp"]
}

Agent Endpoints

New in v1.1: a unified catalog plus runtime search and recommend endpoints built for agents. The compatibility `/search.json` endpoint is also available for lighter cross-collection lookup.

GET /api/v1/catalog.json

Unified catalog metadata for comparisons, countries, safety profiles, alerts, and scam guides.

Try it
https://tabiji.ai/api/v1/catalog.json
{
  "version": "1.5.0",
  "schemaVersion": "1.0",
  "itemCount": 1920,
  "chunkUrls": ["/api/v1/catalog/1.json"],
  "shards": {
    "comparisons": "/api/v1/catalog/comparisons.json",
    "countries": "/api/v1/catalog/countries.json",
    "safety": "/api/v1/catalog/safety.json",
    "alerts": "/api/v1/catalog/alerts.json",
    "scams": "/api/v1/catalog/scams.json"
  }
}
GET/POST /api/v1/search

Natural-language retrieval over the unified catalog with optional structured filters.

curl -X POST https://tabiji.ai/api/v1/search \
  -H 'Content-Type: application/json' \
  -d '{
    "query": "best city for food and culture",
    "entity_types": ["comparison"],
    "tags": ["beach", "easy_transit"],
    "limit": 5
  }'
GET/POST /api/v1/recommend

Intent-based ranking with short explanations and tradeoffs.

curl -X POST https://tabiji.ai/api/v1/recommend \
  -H 'Content-Type: application/json' \
  -d '{
    "intent": "choose_a_winter_trip",
    "entity_types": ["comparison"],
    "party": { "traveler_type": "couple" },
    "preferences": {
      "season": ["winter"],
      "vibes": ["food", "culture"]
    },
    "limit": 5
  }'

About the Data

What makes tabiji data different from generic travel APIs.

๐Ÿ—ฃ๏ธ Reddit-Sourced, AI-Curated

tabiji data is structured for travel-research agents: comparisons, country facts, alerts, scam guides, and safety profiles are normalized into stable JSON endpoints.

Rate Limits & CORS

Everything you need to know about using the API.

Feature Details
Authentication None required โ€” completely free and open
Rate Limits Cloudflare Pages free tier โ€” generous and CDN-cached globally. No hard limit for reasonable use.
CORS Permissive by default โ€” call from any origin
Format JSON (pretty-printed, UTF-8)
Caching CDN-cached globally via Cloudflare. Data updates periodically.
License Free for non-commercial use. Attribution appreciated.

Machine-Readable Specs

For AI agents and developer tools.

File URL Description
OpenAPI 3.1 /api/openapi.json Full API specification for code generators and agent frameworks
llms.txt /llms.txt LLM-friendly API discovery (llmstxt.org)
agents.json /.well-known/agents.json AI agent workflow definitions