🆓 No API Key Required

tabiji API

Free REST API for AI-curated travel data — destinations, restaurant picks, itineraries, and more. Built from real traveler discussions on Reddit.

6,905
Destinations
15,227
Places
1,290
Picks Guides
398
Itineraries

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.

Destinations

6,905 travel destinations with budget level, best season, vibes, and travel styles.

GET /api/v1/destinations.json

List all 6,683 destinations with summary data.

Try it
https://tabiji.ai/api/v1/destinations.json
Response (truncated)
{
  "count": 6905,
  "destinations": [
    {
      "slug": "bogota",
      "name": "Bogotá",
      "region": "Colombia",
      "continent": "South America",
      "budget": "$",
      "season": "Dec–Mar",
      "vibes": ["Adventure", "City", "Unfrequented"],
      "photo": "https://img.tabiji.ai/find/img/bogota.webp",
      "pitch": "Graffiti tours, craft coffee, Andean sunsets..."
    },
    ...
  ]
}
GET /api/v1/destinations/{slug}.json

Get full details for a single destination. Slug is the city name, lowercased with spaces→hyphens.

Try it
https://tabiji.ai/api/v1/destinations/tokyo.json
{
  "slug": "tokyo",
  "name": "Tokyo",
  "region": "Japan",
  "continent": "Asia",
  "budget": "$$$",
  "season": "Mar–May, Oct–Nov",
  "vibes": ["City", "Cultural", "Family", "Nightlife"],
  "travelStyles": ["solo", "photography"],
  "pitch": "Controlled chaos that somehow works perfectly..."
}

Popular Picks

1,616 curated "best of" guides — restaurants, cafés, bars, attractions — with Google ratings, hours, maps links, "what to order" tips, and real Reddit quotes.

GET /api/v1/picks.json

List all picks guides with summary metadata.

Try it
https://tabiji.ai/api/v1/picks.json
{
  "count": 1616,
  "totalPlaces": 15227,
  "picks": [
    {
      "slug": "amsterdam-brunch",
      "title": "12 Best Brunch Spots in Amsterdam 2026",
      "city": "Amsterdam",
      "category": "Brunch Spots",
      "placeCount": 12,
      "url": "https://tabiji.ai/popular-picks/amsterdam-brunch/"
    },
    ...
  ]
}
GET /api/v1/picks/{slug}.json

Full picks guide with all places, ratings, hours, contact info, "what to order," Reddit quotes, and insider tips.

Try it
https://tabiji.ai/api/v1/picks/amsterdam-brunch.json
{
  "slug": "amsterdam-brunch",
  "title": "12 Best Brunch Spots in Amsterdam 2026",
  "city": "Amsterdam",
  "category": "Brunch Spots",
  "placeCount": 12,
  "places": [
    {
      "name": "Little Collins",
      "position": 1,
      "cuisineTags": ["Antipodean Brunch"],
      "googleRating": 4.5,
      "reviewCount": 1859,
      "priceRange": "€15–€25/person",
      "address": "De Pijp",
      "googleMapsUrl": "https://maps.google.com/...",
      "openingHours": {
        "Mon": "9:00 AM – 4:00 PM",
        "Tue": "9:00 AM – 4:00 PM",
        ...
      },
      "website": "http://www.littlecollins.nl/",
      "photo": "https://img.tabiji.ai/popular-picks/...",
      "whatToOrder": "The cilbir (Turkish-style poached eggs)...",
      "redditQuotes": [
        {
          "text": "Little Collins was the first to bring...",
          "source": "— r/Amsterdam"
        }
      ],
      "insiderTip": "The undisputed king of Amsterdam brunch..."
    },
    ...
  ]
}

Itineraries

398 day-by-day travel itineraries with activities, restaurants, transport tips, and accommodation suggestions.

GET /api/v1/itineraries.json

List all itineraries with summary metadata.

Try it
https://tabiji.ai/api/v1/itineraries.json
{
  "count": 398,
  "itineraries": [
    {
      "slug": "itineraries-5-day-tokyo-food-nightlife",
      "title": "5 Day Tokyo Food & Nightlife Guide (2026)",
      "destination": "Tokyo",
      "duration": "5 days",
      "tripType": ["Food Tourism", "Nightlife"],
      "url": "https://tabiji.ai/itineraries/5-day-tokyo-food-nightlife/",
      "dayCount": 9
    },
    ...
  ]
}
GET /api/v1/itineraries/{slug}.json

Full itinerary with day-by-day activities, tips, and details.

Try it
https://tabiji.ai/api/v1/itineraries/itineraries-5-day-tokyo-food-nightlife.json
{
  "slug": "itineraries-5-day-tokyo-food-nightlife",
  "title": "5 Day Tokyo Food & Nightlife Guide (2026)",
  "destination": "Tokyo",
  "duration": "5 days",
  "days": [
    {
      "dayLabel": "Day 1",
      "title": "Tsukiji & Ginza",
      "activities": [
        {
          "time": "☀️ Morning",
          "name": "Tsukiji Outer Market",
          "description": "Start your Tokyo food journey...",
          "tips": ["Arrive before 9am for the best stalls"]
        },
        ...
      ]
    },
    ...
  ]
}

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": 1218,
  "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 /api/v1/compare/{slug}.json

Full comparison with structured categories, quote sources, verdict cards, and FAQs.

Try it
https://tabiji.ai/api/v1/compare/tokyo-vs-kyoto.json
{
  "slug": "tokyo-vs-kyoto",
  "title": "Tokyo vs Kyoto: Which Should You Visit?",
  "destination1": "Tokyo",
  "destination2": "Kyoto",
  "categories": [
    {
      "title": "🍜 Food & Dining",
      "summary": "Tokyo wins on sheer range and late-night depth...",
      "redditQuotes": [
        {
          "text": "Tokyo is where you eat everything. Kyoto is where you eat beautifully.",
          "source": "r/JapanTravelTips user"
        }
      ],
      "winnerSummary": {
        "winner": "Tokyo"
      }
    }
  ],
  "verdict": {
    "summary": "Tokyo is better for first-timers and foodies; Kyoto is better for slower culture-heavy trips.",
    "takeaways": ["Choose Tokyo for breadth", "Choose Kyoto for atmosphere"]
  },
  "faqs": [
    {
      "question": "Is Tokyo or Kyoto better for first-timers?",
      "answer": "Tokyo usually makes the easier first base, while Kyoto shines if you want a slower cultural trip."
    }
  ]
}
GET /api/v1/search.json?q={query}

Cross-collection search across destinations, picks, itineraries, and comparisons. Optional type filter and limit.

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

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, filter, 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 spanning destinations and picks with normalized tags, good-for signals, freshness, and provenance.

Try it
https://tabiji.ai/api/v1/catalog.json
{
  "version": "1.1.0",
  "generatedAt": "2026-03-19T16:00:00Z",
  "itemCount": 4000,
  "items": [
    {
      "id": "place:tokyo-cheap-eats:1",
      "entityType": "place",
      "name": "Matsuya (松屋)",
      "city": "Tokyo",
      "category": "Cheap Eats",
      "tags": ["food", "late_night"],
      "priceLevel": "$",
      "freshness": {
        "confidence": "mixed",
        "operationalFieldsMayChange": true
      },
      "provenance": {
        "sources": ["tabiji_editorial", "reddit", "google_places"]
      }
    }
  ]
}
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": "quiet coffee shop with good wifi in tokyo",
    "location": "Tokyo",
    "entity_types": ["place"],
    "tags": ["remote_work"],
    "limit": 5
  }'
GET/POST /api/v1/filter

Deterministic hard constraints for city, entity type, budget band, tags, and open-now state.

curl -X POST https://tabiji.ai/api/v1/filter \
  -H 'Content-Type: application/json' \
  -d '{
    "location": "Tokyo",
    "entity_types": ["place"],
    "budget": ["$", "$$"],
    "open_now": true,
    "limit": 10
  }'
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": "first_night_dinner",
    "location": "Tokyo",
    "entity_types": ["place"],
    "party": { "traveler_type": "couple" },
    "preferences": {
      "atmosphere": ["local_feeling", "romantic"],
      "avoid": ["touristy"]
    },
    "limit": 5
  }'

📸 Photos Included

Every destination and restaurant comes with photos — hosted on our CDN, free to use. No Unsplash API, no attribution headaches.

Destination Photos (6,683 destinations)

Kyoto, Japan Kyoto
Santorini, Greece Santorini
Cappadocia, Turkey Cappadocia
Amalfi Coast, Italy Amalfi Coast
Cape Town, South Africa Cape Town
Dubai, UAE Dubai
Hoi An, Vietnam Hoi An
Lake Como, Italy Lake Como

Each destination JSON includes a photo field with a direct CDN URL. Use it in your app — no hotlinking restrictions.

Restaurant & Food Photos (3,600+ places)

Du Pain et des Idées, Paris Du Pain et des Idées — Paris Croissants
Takoyaki Wanaka, Osaka Wanaka — Osaka Takoyaki
Torcé Gelato, Rome Torcé — Rome Gelato
Octave Rooftop Bar, Bangkok Octave — Bangkok Rooftop Bars
Pastéis de Belém, Lisbon Pastéis de Belém — Lisbon Pastel de Nata
Nakamura Tokichi, Kyoto Nakamura Tokichi — Kyoto Matcha

Every place in a picks guide includes a photo URL — real photos of the actual restaurant or dish, hosted on our CDN.

🆓 Free to use — all photos are served from img.tabiji.ai with no hotlinking restrictions, no API key, and no attribution required. Use them directly in your app.

About the Data

What makes tabiji data different from generic travel APIs.

🗣️ Reddit-Sourced, AI-Curated

Every recommendation in tabiji is sourced from real traveler discussions on Reddit, travel forums, and food blogs. We don't scrape hotel booking sites or regurgitate Tripadvisor — we find what actual travelers recommend to each other.

  • Real quotes: Every pick includes actual Reddit quotes from travelers who've been there
  • "What to order": Not just "go here" — we tell you exactly what to eat when you arrive
  • Google Places enrichment: Ratings, review counts, opening hours, phone numbers, and direct Google Maps links
  • Insider tips: The tabiji verdict — our honest take on each place, including when to skip it
  • Day-by-day itineraries: Not just lists of places — time-blocked daily plans with transport tips and real logistics

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