Documentation · v1

GlobeAPI reference.

59 endpoints for flights, hotels, places, AI, voice, moderation, trip planning, geocoding, routing and weather — one key, one response shape. No signup required to read any of this.

Quickstart

Authenticate, then call.

Every endpoint takes the same header. There is no OAuth dance, no token exchange, and no per-product credential — one key opens all 59 endpoints.

Base URL
https://goglobe.live
Authentication
Send your key in the X-API-Key header on every request. Treat it like a password — never commit it to git or ship it in client-side code.
Responses
Every endpoint returns the same envelope: status plus data. Errors return a non-success status with a message.
Get your API key
Any request — authentication
curl "https://goglobe.live/api/v1/places/search?query=coffee%20shop&limit=5" \
  -H "X-API-Key: YOUR_API_KEY"
Your first call
curl "https://goglobe.live/api/v1/cities/search?query=tokyo&limit=3" \
  -H "X-API-Key: YOUR_API_KEY"
API reference · 59 endpoints

Every endpoint, in full.

Places

Places Nearby

GET/api/v1/places/nearby

Find places near a specific coordinate.

Parameters
latnumberrequired

Latitude

lngnumberrequired

Longitude

radiusintegeroptional

Radius in metres (m). Default 1000 m (1 km). Max 50000 m (50 km).

categorystringoptional

Filter by category. Works for both top-level OSM keys (amenity, shop, tourism) and specific subcategories (cafe, restaurant, museum, pharmacy, hotel) — matched via the search_tags GIN index.

limitintegeroptional

Max results (1-15, default 10). Use /places/search for larger sets.

curl "https://goglobe.live/api/v1/places/nearby?lat=53.3498&lng=-6.2603&radius=1000" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "place_id": "gg_IRL_node_9876543",
      "source": "goglobe",
      "name": "Kaph",
      "primary_category": "cafe",
      "main_category": "cafe",
      "subcategories": [],
      "address": "31 Drury St, Dublin",
      "distance_m": 120
    }
  ],
  "meta": {
    "total": 1,
    "radius_m": 1000
  }
}

Place Details (coming soon)Coming soon

GET/api/v1/places/details

In active rebuild — multi-source enrichment with Haiku-validated cross-checks across Wikidata, Wikipedia, Overpass and licensed commercial POI feeds. Endpoint currently returns 503; not billed. Use /places/search and /places/nearby in the meantime.

Parameters
place_idstringrequired

place_id from /search or /nearby (gg_* for GoGlobe, fsq_* for Foursquare Americas)

curl "https://goglobe.live/api/v1/places/details?place_id=gg_IRL_node_1234567" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "place_id": "gg_IRL_node_1234567",
    "source": "goglobe",
    "name": "The Woollen Mills",
    "description": "Restaurant and bar on the north quays of Dublin.",
    "latitude": 53.3465,
    "longitude": -6.2586,
    "category": "restaurant",
    "primary_category": "restaurant",
    "subcategories": [
      "amenity",
      "restaurant"
    ],
    "address": {
      "formatted": "42 Ormond Quay Lower, Dublin",
      "locality": "Dublin",
      "postal_code": "D01 EC51",
      "country_code": "IRL"
    },
    "phone": "+353 1 828 0835",
    "website": "https://thewoollenmills.com",
    "opening_hours": "Mo-Fr 08:00-22:00; Sa-Su 09:00-23:00",
    "price_level": 2,
    "rating": 4.5,
    "review_count": 1204,
    "business_status": "OPERATIONAL",
    "verified": true,
    "traveler_favorite": true,
    "wikipedia_url": null,
    "photos": [
      "https://..."
    ]
  }
}

Places Autocomplete

GET/api/v1/places/autocomplete

Real-time typeahead suggestions for place-name forms.

Parameters
querystringrequired

Partial text the user has typed

latnumberoptional

Bias toward this coordinate

lngnumberoptional

Bias toward this coordinate

countrystringoptional

Optional ISO-3 country filter. Must match the country of the lat/lng — e.g. "IRL" for Dublin, "ESP" for Madrid. Leave blank for global.

limitintegeroptional

1–15, default 8

curl "https://goglobe.live/api/v1/places/autocomplete?query=temp&lat=53.3498&lng=-6.2603&limit=8" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "place_id": "gg_osm_IRL_way_76592311",
      "source": "goglobe",
      "name": "Temple Bar",
      "category": "attraction",
      "locality": "Dublin",
      "country_code": "IRL",
      "latitude": 53.3450846,
      "longitude": -6.2605819
    }
  ],
  "meta": {
    "total": 1,
    "query": "temp"
  }
}

Flights & Hotels

Book FlightComing soon

POST/api/v1/flights/book

Not yet generally available — creates a flight booking from a selected offer once your account is enabled for ticket issuance.

Parameters
offer_idstringrequired

The offer ID from search results

passengersarrayrequired

Array of passenger details (JSON)

paymentobjectrequired

Payment information (JSON)

curl -X POST "https://goglobe.live/api/v1/flights/book" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "offer_id": "gg_of_3k2m9x",
  "passengers": [
    {
      "type": "adult",
      "given_name": "Alex",
      "family_name": "Morrison",
      "born_on": "1990-01-01",
      "email": "[email protected]",
      "phone_number": "+441234567890",
      "gender": "m",
      "title": "mr"
    }
  ],
  "payment": {
    "type": "balance"
  }
}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "booking_id": "gg_bk_f8x2m9",
    "order_id": "ord_00009htYpSCXrwaB9DnUm0",
    "status": "confirmed",
    "pnr": "ABC123",
    "total": 342,
    "currency": "EUR"
  }
}

Live Flight Position

GET/api/v1/flights/live

Real-time position for an in-flight aircraft by callsign (e.g.

Parameters
callsignstringoptional

Flight callsign (preferred when known)

icao24stringoptional

ICAO24 transponder hex

curl "https://goglobe.live/api/v1/flights/live?callsign=BAW249&icao24=a8fd3c" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "icao24": "a8fd3c",
      "callsign": "AAL1002",
      "registration": "N123AA",
      "aircraft_type": "B738",
      "aircraft_description": "BOEING 737-800",
      "latitude": 39.9356,
      "longitude": -85.638,
      "baro_altitude_ft": 35000,
      "ground_speed_kts": 502,
      "heading_deg": 145.87,
      "on_ground": false,
      "source": "adsb"
    }
  ],
  "meta": {
    "total": 1,
    "source": "goglobe-adsb"
  }
}

Aircraft in BBox

GET/api/v1/flights/live/bbox

All live aircraft inside a lat/lng bounding box.

Parameters
laminnumberrequired

Lower latitude bound

lominnumberrequired

Lower longitude bound

lamaxnumberrequired

Upper latitude bound

lomaxnumberrequired

Upper longitude bound

limitintegeroptional

1-500, default 100

curl "https://goglobe.live/api/v1/flights/live/bbox?lamin=45.0&lomin=-10.0&lamax=55.0&lomax=5.0&limit=100" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "icao24": "4ca7b4",
      "callsign": "RYR2A",
      "latitude": 51.48,
      "longitude": -0.46,
      "baro_altitude_ft": 37000,
      "ground_speed_kts": 452,
      "heading_deg": 89,
      "on_ground": false,
      "origin_country": "Ireland",
      "source": "adsb"
    }
  ],
  "meta": {
    "total": 1,
    "source": "goglobe-adsb"
  }
}

Aircraft Lookup

GET/api/v1/flights/aircraft

Live state for a single aircraft by ICAO24 transponder hex.

Parameters
icao24stringrequired

ICAO24 transponder hex (lowercase)

curl "https://goglobe.live/api/v1/flights/aircraft?icao24=a8fd3c" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "icao24": "a8fd3c",
    "callsign": "AAL1002",
    "registration": "N123AA",
    "aircraft_type": "B738",
    "aircraft_description": "BOEING 737-800",
    "latitude": 39.9356,
    "longitude": -85.638,
    "baro_altitude_ft": 35000,
    "ground_speed_kts": 502,
    "heading_deg": 145,
    "source": "adsb"
  },
  "meta": {
    "source": "goglobe-adsb"
  }
}

US Airport Delays

GET/api/v1/airports/delays

Live airport-level delay status sourced from the FAA National Airspace System status feed.

Parameters
airportstringoptional

ICAO or IATA airport code (optional)

curl "https://goglobe.live/api/v1/airports/delays?airport=KJFK" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "airport_iata": "JFK",
      "type": "arrival_delay",
      "reason": "WEATHER / LOW CEILINGS",
      "avg_delay": "45 minutes",
      "trend": "Increasing"
    }
  ],
  "meta": {
    "total": 1,
    "airport": "KJFK",
    "source": "faa_nas_status",
    "coverage": "US airports only"
  }
}

Flight Status

GET/api/v1/flights/status

Live flight status derived from our own ADS-B stack — route, live position, altitude, speed, registration and aircraft type. Observation, not airline schedule data: scheduled times, gates and terminals are not available.

Parameters
flight_numberstringrequired

Flight number, e.g. "BA117" (IATA) or "BAW117" (ICAO). 3-8 characters.

datestringoptional

ISO date (YYYY-MM-DD). Defaults to today. Live tracking reflects current observation only — this does NOT retrieve historical flights, and a past date returns a warning in meta.

curl "https://goglobe.live/api/v1/flights/status?flight_number=BA249&date=2026-08-22" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "flight_number": "BA249",
    "callsign": "BAW249",
    "status": "in_air",
    "airline": "British Airways",
    "aircraft": {
      "icao24": "4008f3",
      "registration": "G-VIIA",
      "type": "B772"
    },
    "route": {
      "origin": "LHR",
      "destination": "GRU"
    },
    "position": {
      "lat": 51.12,
      "lng": -1.04,
      "altitude_ft": 37000,
      "ground_speed_kt": 486,
      "heading": 218,
      "vertical_rate_fpm": 0,
      "squawk": "2456",
      "on_ground": false,
      "observed_at": "2026-08-22T14:12:00+00:00"
    },
    "coverage": {
      "scheduled_times": false,
      "gate": false,
      "terminal": false,
      "live_position": true,
      "route": true,
      "note": "Derived from ADS-B observation. Scheduled times, gates and terminals require airline schedule data and are not included."
    }
  },
  "meta": {
    "sources": [
      "goglobe-adsb",
      "goglobe-routes"
    ],
    "date": "2026-08-22"
  }
}

ADS-B Firehose (SSE stream)

GET/api/v1/firehose/adsb

Real-time Server-Sent Events stream of live aircraft positions worldwide.

Parameters
laminnumberoptional

Lower latitude bound (optional bbox filter; all 4 bounds required together)

lominnumberoptional

Lower longitude bound

lamaxnumberoptional

Upper latitude bound

lomaxnumberoptional

Upper longitude bound

categorystringoptional

'commercial' (the global fleet — the default) | 'all' (alias of 'commercial') | 'mil' | 'ladd' | 'pia'. Frames are labelled with the resolved category, so passing 'all' returns category: 'commercial'.

api_keystringoptional

API key as query param (alternative to X-API-Key header — required for browser EventSource)

curl "https://goglobe.live/api/v1/firehose/adsb?lamin=45.0&lomin=-10.0&lamax=55.0&lomax=5.0&category=mil&api_key=gapi_prod_..." \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{}

Aircraft Trail (last 10 min)

GET/api/v1/firehose/aircraft/{icao24}/track

Last ~10 minutes of position points for a single aircraft, served from the in-memory track buffer. Useful for plotting recent flight path on a map. Requires Firehose subscription.

Parameters
icao24stringrequired

ICAO 24-bit hex code, case-insensitive. Substituted into the path.

curl "https://goglobe.live/api/v1/firehose/aircraft/4CAA6F/track" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "icao24": "4caa6f",
    "points": [
      {
        "lat": 53.342,
        "lng": -6.25,
        "alt": 32000,
        "hdg": 87.4,
        "gs": 458,
        "ts": 1714658400
      },
      {
        "lat": 53.341,
        "lng": -6.244,
        "alt": 32000,
        "hdg": 87.5,
        "gs": 459,
        "ts": 1714658405
      }
    ],
    "duration_sec": 600
  }
}

Firehose Status (Public)

GET/api/v1/firehose/status

Public status / SLA endpoint — uptime + per-category health. No authentication required so prospective merchants can verify reliability before subscribing. SLA target 99.5%.

curl "https://goglobe.live/api/v1/firehose/status"
Response · 200 OK
{
  "status": "operational",
  "checked_at": "2026-08-22T22:40:00Z",
  "categories": {
    "commercial": {
      "status": "operational",
      "aircraft_count": 2405,
      "latency_ms": 2447,
      "last_healthy_at": "2026-08-22T22:40:00Z"
    },
    "mil": {
      "status": "operational",
      "aircraft_count": 89,
      "latency_ms": 909,
      "last_healthy_at": "2026-08-22T22:40:00Z"
    },
    "ladd": {
      "status": "operational",
      "aircraft_count": 12,
      "latency_ms": 865,
      "last_healthy_at": "2026-08-22T22:40:00Z"
    },
    "pia": {
      "status": "operational",
      "aircraft_count": 2,
      "latency_ms": 1322,
      "last_healthy_at": "2026-08-22T22:40:00Z"
    }
  },
  "uptime": {
    "last_24h": 99.97,
    "last_7d": 99.86,
    "last_30d": 99.78,
    "sla_target": 99.5
  },
  "incidents_last_30d": 2
}

Aviation Weather

GET/api/v1/aviation/weather

METAR (current observation) and TAF (forecast) for any ICAO airport.

Parameters
icaostringrequired

ICAO airport code (4 letters, e.g. EIDW=Dublin, KJFK=New York JFK)

curl "https://goglobe.live/api/v1/aviation/weather?icao=EIDW" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "icao": "EIDW",
    "metar": {
      "raw": "EIDW 251800Z 18012KT 9999 SCT025 BKN035 12/09 Q1018",
      "observed_at": "2026-04-25T18:00:00Z",
      "temp_c": 12,
      "dewpoint_c": 9,
      "wind_dir_deg": 180,
      "wind_speed_kt": 12,
      "visibility_sm": 6.21,
      "altimeter_hpa": 1018,
      "flight_category": "VFR"
    },
    "taf": {
      "raw": "EIDW 251700Z 2518/2624 18012KT 9999 SCT020",
      "issue_time": "2026-04-25T17:00:00Z"
    }
  }
}

Discover Hotels (DB)Coming soon

GET/api/v1/hotels/discover

Find hotels, hostels, apartments and other accommodation near a point — backed by our 470k-row places DB. No live availability or pricing — use /hotels/search for bookable inventory.

Parameters
latnumberrequired

Latitude

lngnumberrequired

Longitude

radiusintegeroptional

Search radius in metres (m). Range 100–50000 m (= up to 50 km). Default 5000 m (5 km).

limitintegeroptional

Max results (1-15, default 10)

categorystringoptional

Optional category filter. One of: alpine_hut, apartment, bed_and_breakfast, camp_site, caravan_site, chalet, guest_house, hostel, hotel, motel, resort

qstringoptional

Optional free-text keyword search against name

curl "https://goglobe.live/api/v1/hotels/discover?lat=53.343&lng=-6.255&radius=5000&limit=10" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "type": "FeatureCollection",
    "features": [
      {
        "type": "Feature",
        "geometry": {
          "type": "Point",
          "coordinates": [
            -6.2554,
            53.3434
          ]
        },
        "properties": {
          "id": "gp_12345",
          "name": "Trinity City Hotel",
          "category": "hotel",
          "address": "Pearse Street, Dublin 2",
          "country_code": "IRL",
          "source": "goglobe_places"
        }
      }
    ],
    "meta": {
      "provider": "goglobe_places_db",
      "count": 1
    }
  }
}

Geocoding

Reverse Geocode

GET/api/v1/geocode/reverse

Convert a lat/lng pair into a human-readable address.

Parameters
latnumberrequired

Latitude

lngnumberrequired

Longitude

curl "https://goglobe.live/api/v1/geocode/reverse?lat=53.3498&lng=-6.2603" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "display_name": "Trinity College, College Green, Dublin 2, Ireland",
    "street": "College Green",
    "city": "Dublin",
    "region": "Leinster",
    "country": "Ireland",
    "postal_code": "D02",
    "lat": 53.3438,
    "lng": -6.2546
  },
  "meta": {
    "source": "osm"
  }
}

Forward Geocode

GET/api/v1/geocode/forward

Convert an address or landmark name to coordinates.

Parameters
addressstringrequired

Full or partial address, landmark name, or POI

countrystringoptional

ISO-3166 alpha-3 country filter

limitintegeroptional

1–10, default 5

curl "https://goglobe.live/api/v1/geocode/forward?address=Trinity%20College%20Dublin&country=IRL&limit=5" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "place_id": "gg_osm_way_311466843",
      "source": "goglobe",
      "name": "Trinity College Dublin",
      "latitude": 53.3437375,
      "longitude": -6.2544619,
      "formatted_address": "College Green, Dublin",
      "country_code": "IRL",
      "locality": "Dublin",
      "postal_code": null,
      "category": "amenity",
      "precision": "poi"
    }
  ],
  "meta": {
    "total": 1,
    "query": "Trinity College Dublin"
  }
}

Timezone Lookup

GET/api/v1/timezone

Return the IANA timezone at any lat/lng plus current UTC offset (DST-aware) and local time.

Parameters
latnumberrequired

Latitude (-90 to 90)

lngnumberrequired

Longitude (-180 to 180)

curl "https://goglobe.live/api/v1/timezone?lat=53.3498&lng=-6.2603" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "timezone": "Europe/Dublin",
    "utc_offset_seconds": 3600,
    "utc_offset": "+01:00",
    "dst_active": true,
    "current_time": "2026-08-22T14:32:50+01:00"
  }
}

Hotels

Book HotelComing soon

POST/api/v1/hotels/book

Not yet available — hotel booking is not deployed.

Parameters
rate_idstringrequired

Room rate identifier from /hotels/search

guestobjectrequired

Primary guest details

curl -X POST "https://goglobe.live/api/v1/hotels/book"   -H "X-API-Key: YOUR_API_KEY"   -H "Content-Type: application/json"   -d '{"rate_id":"gg_rate_abc123","guest":{"first_name":"Alex","last_name":"Morrison","email":"[email protected]"}}'
Response · 200 OK
{
  "status": "coming_soon",
  "message": "Hotel booking endpoint is in private beta."
}

Travel AI

AI Travel Chat

POST/api/v1/ai/chat

Text-based AI travel assistant powered by Seol AI.

Parameters
messagestringrequired

User message or travel question

curl -X POST "https://goglobe.live/api/v1/ai/chat" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "message": "Name the top 3 restaurants in Dublin, Ireland — one short line each."
}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "response": "Here are the top restaurants near the Eiffel Tower:\\n\\n1. **Le Jules Verne** — Michelin-starred dining on the second floor...",
    "tokens_used": 342,
    "model": "seol-v3"
  }
}

Seol Vision

POST/api/v1/ai/vision

Analyze travel photos with Seol AI.

Parameters
imagefilerequired

Image file to analyze (max 35MB)

messagestringoptional

Optional question/instruction about the image

curl -X POST "https://goglobe.live/api/v1/ai/vision" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "message=What landmark is this?"
Response · 200 OK
{
  "status": "success",
  "data": {
    "description": "The image shows the Eiffel Tower in Paris, France, photographed from the Champ de Mars.",
    "landmark": "Eiffel Tower",
    "city": "Paris",
    "country": "France",
    "tokens_used": 1842,
    "model": "seol-vision-v3"
  }
}

Seol Video

POST/api/v1/ai/video

Analyze travel videos with Seol AI.

Parameters
videofilerequired

Video file to analyze (max 80MB)

messagestringoptional

Optional question/instruction about the video

curl -X POST "https://goglobe.live/api/v1/ai/video" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "message=What places are shown?"
Response · 200 OK
{
  "status": "success",
  "data": {
    "description": "The video shows a walking tour through the Gothic Quarter in Barcelona...",
    "frames_analyzed": 12,
    "locations": [
      "Gothic Quarter",
      "La Rambla"
    ],
    "city": "Barcelona",
    "tokens_used": 48200,
    "model": "seol-vision-v3"
  }
}

Analyze Content

POST/api/v1/moderation/analyze

AI-powered content moderation for travel photos and UGC. Billed €1 / 1K images per category (option) selected — à la carte, pick any subset. child_safety always runs for legal compliance but is only billed if you request it. (The Súil widget uses the same rate but always adds and bills child_safety.)

Parameters
photofilerequired

One or more photo OR video files to analyze (max 100MB each, maximum 250 files per request). Photos: JPEG/PNG/WebP. Videos: MP4/MOV/WebM/AVI/MKV (max 5min). Mix photos+videos in one batch.

categoriesarrayoptional

Each selected category runs as a separate model pass and counts as ONE AI call PER ITEM against your quota (videos cost 2× — they sample 10 frames). 10 categories: NSFW (Falconsai — suggestive), Nudity (NudeNet — explicit body parts), Violence (graphic violence), Weapons (firearms/blades), Child Safety (CSAM/age detection), Deepfake (face swaps), AI Generated (synthetic imagery), Hate Symbols (extremist iconography), Offensive Text (slurs/threats via OCR), Sensitive Documents (IDs, cards, phone numbers via OCR). If omitted, the FULL pipeline runs — 9 GPU stages covering all 10 categories (AI Generated shares the Deepfake stage) — billed as 9 stages per item (= €0.009 per photo, €0.018 per video at €0.001/stage — i.e. €1 / 1K images per option). Tip: select only the categories you actually need to cut cost. Note: the embeddable Súil Content widget (the drop-in JS widget) forces child_safety on regardless of selection — that policy does NOT apply to this direct API endpoint, where you control every category.

curl -X POST "https://goglobe.live/api/v1/moderation/analyze" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "photo=@/path/to/file.jpg" \
  -F 'categories=["nsfw","nudity","violence","weapons","deepfake"]' \
  -F 'thresholds={"nsfw":0.30,"violence":0.10}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "moderation_id": 1776415525,
    "status": "ACCEPTED",
    "categories": [],
    "severity": "NONE",
    "requires_legal_reporting": false,
    "reason": "Content meets all policy requirements",
    "processing_time_ms": 580,
    "models_used": [
      "nsfw_detector_v3",
      "deepfake_detector_v2",
      "ai_generation_detector_v1"
    ]
  }
}

Eist Voice Transcribe

POST/api/v1/voice/transcribe

Speech-to-text transcription powered by Whisper.

Parameters
audiofilerequired

Audio file (webm, wav, mp3, m4a, ogg)

languagestringoptional

Language code (passed through to Whisper for auto-detection hints)

curl -X POST "https://goglobe.live/api/v1/voice/transcribe" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "language=en"
Response · 200 OK
{
  "status": "success",
  "data": {
    "transcription": "I want to visit the Eiffel Tower in Paris",
    "language": "en",
    "tokens": 12,
    "cost_eur": 0.0144
  }
}

TranslateComing soon

POST/api/v1/translate

Translate any text into 30+ languages via DeepL.

Parameters
textstringrequired

Source text (max 5000 chars)

target_langstringrequired

Target ISO-639 (e.g. EN, DE, JA, FR, ES, IT, PT)

source_langstringoptional

Source ISO-639. Omit for auto-detect.

curl -X POST "https://goglobe.live/api/v1/translate" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "text": "Where is the nearest train station?",
  "target_lang": "JA",
  "source_lang": "EN"
}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "translation": "最寄りの駅はどこですか?",
    "detected_source_lang": "EN",
    "target_lang": "JA",
    "characters": 38
  }
}

Planner

Generate Trip Plan

POST/api/v1/trips/plan

Structured trip itinerary generation.

Parameters
destinationstringrequired

Destination city or country

duration_daysintegerrequired

Trip duration in days (1-14)

country_codestringoptional

ISO-3166 alpha-3 country code (e.g., ESP, USA, VEN). When set, destination is resolved within that country only. Returns 400 if destination not found in the specified country.

max_distance_kmnumberoptional

Hard cap on activity radius from destination centroid (0-200 km). Default 25 km for city queries; 75 km if country_code is set without specific city. Activities beyond this radius are filtered out.

travelersintegeroptional

Number of travelers

stylesarrayoptional

Trip styles — any of: relaxing, adventure, cultural, historical, romantic, family, food, nightlife, nature, beach, shopping, spiritual, photography, wellness

descriptionstringoptional

Optional free-text extras (e.g. "travelling with kids, love coffee shops"). Runs through AI for soft category overrides.

preferencesarrayoptional

Legacy alias — merges recognised pill names into styles, the rest into description. Prefer the structured fields above.

curl -X POST "https://goglobe.live/api/v1/trips/plan" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "destination": "Barcelona",
  "duration_days": 5,
  "travelers": 2,
  "styles": [
    "cultural",
    "food"
  ],
  "description": "love coffee shops, budget-conscious",
  "preferences": [
    "culture",
    "food"
  ]
}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "plan_id": "gg_tp_x7b4n1",
    "destination": "Barcelona",
    "duration": "5 days",
    "days": [
      {
        "day": 1,
        "title": "Gothic Quarter & La Rambla",
        "activities": [
          "..."
        ]
      }
    ]
  }
}

Media

Trip Planner Images

GET/api/v1/images/trip-planner

Place photos from trip itineraries.

Parameters
countrystringoptional

ISO3 country code (provide this OR lat+lng)

latnumberoptional

Latitude (use with lng instead of country)

lngnumberoptional

Longitude (use with lat instead of country)

limitintegeroptional

Number of results (1-100)

curl "https://goglobe.live/api/v1/images/trip-planner?country=IRL&limit=10" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "items": [
      {
        "id": "tp_12345",
        "title": "Portrane Beach",
        "photo_url": "/api/serve-trip-planner-photo/goglobe/12345_1.jpg",
        "coordinates": {
          "lat": 53.4967,
          "lng": -6.1105
        }
      }
    ],
    "pagination": {
      "total": 1234,
      "limit": 10,
      "offset": 0
    }
  }
}

Destination Photos

GET/api/v1/photos/destinations

Royalty-free destination photos by query.

Parameters
querystringrequired

Search term (city, landmark, theme)

per_pageintegeroptional

1-30, default 10

pageintegeroptional

1-10, default 1

orientationstringoptional

landscape | portrait | squarish

curl "https://goglobe.live/api/v1/photos/destinations?query=Dublin&per_page=10&page=1&orientation=landscape" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "items": [
      {
        "id": "abc123",
        "description": "Ha'penny Bridge at sunset",
        "width": 6000,
        "height": 4000,
        "color": "#f59e0b",
        "url_thumb": "https://images.unsplash.com/photo-...?w=200",
        "url_regular": "https://images.unsplash.com/photo-...?w=1080",
        "photographer": "Jane Doe",
        "photographer_url": "https://unsplash.com/@janedoe",
        "photo_url": "https://unsplash.com/photos/abc123"
      }
    ],
    "meta": {
      "total": 247,
      "total_pages": 25,
      "page": 1,
      "per_page": 10
    }
  }
}

Weather

Weather Forecast

GET/api/v1/weather/forecast

Hourly + daily forecast for any coordinate worldwide.

Parameters
latnumberrequired

Latitude (-90..90)

lngnumberrequired

Longitude (-180..180)

daysintegeroptional

Forecast horizon (1-16, default 7)

curl "https://goglobe.live/api/v1/weather/forecast?lat=53.3498&lng=-6.2603&days=7" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "latitude": 53.3498,
    "longitude": -6.2603,
    "timezone": "Europe/Dublin",
    "elevation": 25,
    "hourly": {
      "time": [
        "2026-08-22T00:00"
      ],
      "temperature_2m": [
        9.4
      ],
      "precipitation": [
        0
      ]
    },
    "daily": {
      "time": [
        "2026-08-22"
      ],
      "temperature_2m_max": [
        13.1
      ],
      "temperature_2m_min": [
        5.2
      ],
      "precipitation_sum": [
        0.5
      ],
      "sunrise": [
        "2026-08-22T06:08"
      ],
      "sunset": [
        "2026-08-22T20:34"
      ]
    }
  }
}

Historical Weather

GET/api/v1/weather/historical

Daily weather records from 1940 to today for any coordinate.

Parameters
latnumberrequired

Latitude

lngnumberrequired

Longitude

start_datestringrequired

ISO date (>= 1940-01-01). Must be in the past — this is an archive, not a forecast.

end_datestringrequired

ISO date, after start_date and still in the past.

curl "https://goglobe.live/api/v1/weather/historical?lat=53.3498&lng=-6.2603&start_date=2025-07-23&end_date=2025-08-22" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "latitude": 53.3498,
    "longitude": -6.2603,
    "timezone": "Europe/Dublin",
    "daily": {
      "time": [
        "2025-07-23"
      ],
      "temperature_2m_max": [
        21.4
      ],
      "temperature_2m_min": [
        13.2
      ],
      "temperature_2m_mean": [
        17.1
      ],
      "precipitation_sum": [
        2.1
      ]
    }
  }
}

Air Quality

GET/api/v1/weather/air-quality

Current PM2.5, PM10, ozone, nitrogen dioxide, European AQI and US AQI snapshot for a coordinate.

Parameters
latnumberrequired

Latitude

lngnumberrequired

Longitude

curl "https://goglobe.live/api/v1/weather/air-quality?lat=53.3498&lng=-6.2603" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "latitude": 53.3498,
    "longitude": -6.2603,
    "current": {
      "pm10": 12.4,
      "pm2_5": 7.1,
      "european_aqi": 35,
      "us_aqi": 41,
      "ozone": 78,
      "nitrogen_dioxide": 11,
      "measured_at": "2026-08-22T18:00"
    }
  }
}

Reference

List Countries

GET/api/v1/countries

Machine-readable list of all ISO-3166 countries supported by GoGlobe APIs.

Parameters
regionstringoptional

Filter by region (e.g., "Europe", "Asia", "Africa", "Americas", "Oceania", "Antarctica")

qstringoptional

Case-insensitive name substring filter (max 100 results)

curl "https://goglobe.live/api/v1/countries?region=Europe&q=Spain"   -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "iso2": "ES",
      "iso3": "ESP",
      "name": "Spain",
      "region": "Europe",
      "currency": "EUR"
    },
    {
      "iso2": "FR",
      "iso3": "FRA",
      "name": "France",
      "region": "Europe",
      "currency": "EUR"
    },
    {
      "iso2": "IE",
      "iso3": "IRL",
      "name": "Ireland",
      "region": "Europe",
      "currency": "EUR"
    },
    {
      "iso2": "IT",
      "iso3": "ITA",
      "name": "Italy",
      "region": "Europe",
      "currency": "EUR"
    },
    {
      "iso2": "PT",
      "iso3": "PRT",
      "name": "Portugal",
      "region": "Europe",
      "currency": "EUR"
    }
  ],
  "meta": {
    "total": 50,
    "version": "iso-3166:2026-05",
    "region_filter": "Europe",
    "name_filter": null
  }
}

Country Metadata

GET/api/v1/countries/{code}

ISO-3166 country metadata: capital, currencies, languages, calling codes, timezones, flag URLs, neighbours, population, area.

Parameters
codestringrequired

ISO-3166 alpha-2 (IE) or alpha-3 (IRL)

curl "https://goglobe.live/api/v1/countries/{code}" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "code_alpha2": "IE",
    "code_alpha3": "IRL",
    "name_common": "Ireland",
    "name_official": "Republic of Ireland",
    "capital": "Dublin",
    "region": "Europe",
    "subregion": "Northern Europe",
    "population": 5458600,
    "area_km2": 70273,
    "latitude": 53,
    "longitude": -8,
    "languages": [
      "English",
      "Irish"
    ],
    "currencies": [
      {
        "code": "EUR",
        "name": "Euro",
        "symbol": "€"
      }
    ],
    "calling_codes": [
      "353"
    ],
    "timezones": [
      "UTC"
    ],
    "borders": [
      "GBR"
    ],
    "tld": [
      ".ie"
    ],
    "flag_emoji": "🇮🇪",
    "flag_svg": "https://flagcdn.com/ie.svg"
  }
}

Currency Rates

GET/api/v1/currency/rates

Latest ECB reference exchange rates against any base currency.

Parameters
basestringoptional

Base ISO-4217 (default EUR)

symbolsstringoptional

Comma-separated targets (optional). Leave blank for all.

curl "https://goglobe.live/api/v1/currency/rates?base=EUR&symbols=USD,GBP,JPY" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "base": "EUR",
    "date": "2026-08-22",
    "rates": {
      "USD": 1.0823,
      "GBP": 0.8517,
      "JPY": 167.42
    }
  }
}

Currency Convert

GET/api/v1/currency/convert

Convert an amount between two ISO-4217 currencies using ECB latest rates.

Parameters
amountnumberrequired

Source amount (>0)

fromstringrequired

Source ISO-4217

tostringrequired

Target ISO-4217

curl "https://goglobe.live/api/v1/currency/convert?amount=100&from=USD&to=EUR" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "amount_from": 100,
    "from": "USD",
    "amount_to": 92.4,
    "to": "EUR",
    "rate": 0.924,
    "date": "2026-08-22"
  }
}

Sunrise / Sunset

GET/api/v1/almanac/sunrise-sunset

Sunrise, sunset, civil/nautical/astronomical twilight, day length for any coordinate and date.

Parameters
latnumberrequired

Latitude

lngnumberrequired

Longitude

datestringoptional

ISO date (default: today)

curl "https://goglobe.live/api/v1/almanac/sunrise-sunset?lat=64.1466&lng=-21.9426&date=2026-08-22" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "date": "2026-08-22",
    "utc": {
      "sunrise": "2026-08-22T02:55:00+00:00",
      "sunset": "2026-08-22T23:04:00+00:00",
      "solar_noon": "2026-08-22T13:00:00+00:00"
    },
    "local": {
      "sunrise": "2026-08-22T02:55:00+00:00",
      "sunset": "2026-08-22T23:04:00+00:00",
      "timezone": "Atlantic/Reykjavik"
    },
    "day_length_seconds": 72540
  }
}

Discover

Discover Article

GET/api/v1/discover/article

Short article extract, thumbnail and coordinates for any topic — landmarks, neighbourhoods, events.

Parameters
titlestringoptional

Topic title (spaces or underscores both OK). One of `title` or `query` is required.

querystringoptional

Alias for `title`. One of `title` or `query` is required.

langstringoptional

Language code (default en)

curl "https://goglobe.live/api/v1/discover/article?title=Trinity%20College%20Dublin&lang=en" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "title": "Trinity College Dublin",
    "description": "Sole college of the University of Dublin",
    "extract": "The College of the Holy and Undivided Trinity of Queen Elizabeth near Dublin, branded by the board as Trinity College...",
    "thumbnail": "https://upload.wikimedia.org/wikipedia/commons/thumb/.../320px-...",
    "coordinates": {
      "lat": 53.3444,
      "lng": -6.2577
    },
    "page_url": "https://en.wikipedia.org/wiki/Trinity_College_Dublin"
  }
}

Discover Nearby

GET/api/v1/discover/nearby

Notable articles within radius of a coordinate — landmarks, museums, monuments, neighbourhoods.

Parameters
latnumberrequired

Latitude

lngnumberrequired

Longitude

radius_mintegeroptional

Search radius in metres (m). Range 10–10000 m (= up to 10 km). Default 2000 m (2 km).

limitintegeroptional

1-50, default 20

langstringoptional

Language code (default en)

curl "https://goglobe.live/api/v1/discover/nearby?lat=53.3498&lng=-6.2603&radius_m=2000&limit=20&lang=en" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "items": [
      {
        "title": "Spire of Dublin",
        "page_id": 1234567,
        "lat": 53.3498,
        "lng": -6.2603,
        "distance_m": 5,
        "page_url": "https://en.wikipedia.org/wiki/Spire_of_Dublin"
      }
    ],
    "meta": {
      "total": 1,
      "radius_m": 2000,
      "lang": "en"
    }
  }
}

Marine

Marine POIs

GET/api/v1/marine/poi

Lighthouses, marinas, harbours, anchorages, ferry terminals, buoys and wrecks near a coordinate.

Parameters
latnumberrequired

Latitude

lngnumberrequired

Longitude

radius_mintegeroptional

Search radius in metres (m). Range 10–50000 m (= up to 50 km). Default 5000 m (5 km).

countrystringoptional

Filter by ISO-3 country code (e.g., "ESP" for Spain)

typestringoptional

lighthouse | harbour | marina | anchorage | ferry_terminal | buoy | wreck | all (default all)

limitintegeroptional

1-200, default 50

curl "https://goglobe.live/api/v1/marine/poi?lat=53.3498&lng=-6.2603&radius_m=5000&type=all&limit=50" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "items": [
      {
        "osm_id": "node/123456",
        "lat": 53.345,
        "lng": -6.252,
        "name": "Dublin Port Marina",
        "type": "marina",
        "tags": {
          "leisure": "marina",
          "seamark:name": "Dublin Marina"
        }
      },
      {
        "osm_id": "node/789012",
        "lat": 53.3438,
        "lng": -6.2484,
        "name": "Poolbeg Lighthouse",
        "type": "lighthouse",
        "tags": {
          "man_made": "lighthouse",
          "seamark:type": "light_major"
        }
      }
    ],
    "meta": {
      "total": 2,
      "radius_m": 5000,
      "type": "all"
    }
  }
}

Trains

Train Stations NearbyComing soon

GET/api/v1/trains/stations/nearby

Coming soon — rail is not a launched GoGlobe product yet. When it ships this finds train stations near a point from our own places database, as a pure DB query with no upstream API.

Parameters
latnumberrequired

Latitude (-90 to 90)

lngnumberrequired

Longitude (-180 to 180)

radiusintegeroptional

Search radius in metres (m). Range 100–50000 m (= up to 50 km). Default 5000 m (5 km).

countrystringoptional

Filter by ISO-3 country code (e.g., "ESP" for Spain)

limitintegeroptional

Max results (1-15, default 10 — capped to prevent enumeration)

qstringoptional

Optional name keyword search (ILIKE)

curl "https://goglobe.live/api/v1/trains/stations/nearby?lat=53.346&lng=-6.295&radius=10000&limit=10" \
  -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "type": "FeatureCollection",
    "features": [
      {
        "type": "Feature",
        "geometry": {
          "type": "Point",
          "coordinates": [
            -6.2543,
            53.3471
          ]
        },
        "properties": {
          "id": "gg_98765",
          "name": "Tara Street",
          "category": "train_station",
          "address": "Townsend Street, Dublin",
          "country_code": "IRL"
        }
      }
    ],
    "meta": {
      "provider": "goglobe_places_db",
      "count": 1
    }
  }
}

Routing

Directions

POST/api/v1/routing/directions

Turn-by-turn directions between two points. Real per-profile routing for driving, walking, and cycling.

Parameters
profilestringrequired

Travel profile: driving | cycling | walking

coordinatesarrayrequired

Array of [lng, lat] pairs (start, end, optional waypoints)

curl -X POST "https://goglobe.live/api/v1/routing/directions" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"profile":"walking","origin":[53.3322,-6.2603],"destination":[53.3380,-6.2585]}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "profile": "walking",
    "provider": "ors",
    "distance_m": 840.4,
    "duration_s": 605,
    "route": {
      "type": "LineString",
      "coordinates": [
        [
          -6.2603,
          53.3322
        ],
        [
          -6.2585,
          53.338
        ]
      ]
    },
    "steps": [
      {
        "type": "depart",
        "name": "Mespil Road",
        "distance_m": 12,
        "duration_s": 9,
        "instruction": "Head out on Mespil Road"
      },
      {
        "type": "turn",
        "name": "Leeson Street Upper",
        "distance_m": 43,
        "duration_s": 31,
        "instruction": "Turn right onto Leeson Street Upper"
      }
    ]
  }
}

Matrix

POST/api/v1/routing/matrix

Many-to-many distance/duration matrix. Billed per source×destination cell — perfect for delivery routing or trip optimisation.

Parameters
profilestringrequired

Travel profile

sourcesarrayrequired

Array of [lng, lat] origin points

destinationsarrayrequired

Array of [lng, lat] destination points

curl -X POST "https://goglobe.live/api/v1/routing/matrix" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"profile":"driving","sources":[[53.33,-6.26]],"destinations":[[53.34,-6.27],[53.35,-6.28]]}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "profile": "driving",
    "provider": "ors",
    "n_sources": 1,
    "n_destinations": 2,
    "n_cells_billed": 2,
    "distances": [
      [
        1234,
        2345
      ]
    ],
    "durations": [
      [
        180,
        320
      ]
    ]
  }
}

Isochrones

POST/api/v1/routing/isochrones

Areas reachable within N seconds — "what's a 15-minute walk from here?" Returns GeoJSON polygons.

Parameters
profilestringrequired

Travel profile

locationsarrayrequired

Array of [lng, lat] origin points

range_secondsarrayrequired

Array of travel-time bands in seconds (s). E.g. [300, 600, 900] = polygons reachable within 5, 10, 15 minutes.

curl -X POST "https://goglobe.live/api/v1/routing/isochrones" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"profile":"walking","locations":[[53.33,-6.26]],"range_seconds":[900,1800]}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "type": "FeatureCollection",
    "features": [
      {
        "type": "Feature",
        "properties": {
          "value": 900,
          "group_index": 0
        },
        "geometry": {
          "type": "Polygon",
          "coordinates": [
            []
          ]
        }
      },
      {
        "type": "Feature",
        "properties": {
          "value": 1800,
          "group_index": 0
        },
        "geometry": {
          "type": "Polygon",
          "coordinates": [
            []
          ]
        }
      }
    ]
  }
}

Snap to Road

POST/api/v1/routing/snap

Snap noisy GPS coordinates to the nearest road. Cleans GPS traces before processing.

Parameters
profilestringrequired

Travel profile

locationsarrayrequired

Array of [lng, lat] points to snap

radiusintegeroptional

Max snap radius in metres (m). Default 100 m. Larger values snap to roads farther from the input coordinate.

curl -X POST "https://goglobe.live/api/v1/routing/snap" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"profile":"driving","locations":[[53.331,-6.261],[53.339,-6.258]],"radius_m":350}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "type": "FeatureCollection",
    "features": [
      {
        "type": "Feature",
        "properties": {
          "source_id": 0,
          "snapped_distance": 12.3
        },
        "geometry": {
          "type": "Point",
          "coordinates": [
            -6.2611,
            53.3309
          ]
        }
      }
    ]
  }
}

Route OptimizationBeta

POST/api/v1/routing/optimization

Vehicle Routing Problem solver — schedule jobs across vehicles respecting time windows, capacities, skills.

Parameters
jobsarrayrequired

Array of jobs with id and [lng, lat] location

vehiclesarrayrequired

Array of vehicles with start point and constraints

curl -X POST "https://goglobe.live/api/v1/routing/optimization" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"jobs":[{"id":1,"location":[-6.26,53.33]},{"id":2,"location":[-6.27,53.34]}],"vehicles":[{"id":1,"start":[-6.26,53.33],"end":[-6.26,53.33]}]}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "code": 0,
    "summary": {
      "cost": 1234,
      "routes": 1,
      "unassigned": 0,
      "service": 0,
      "duration": 1234,
      "distance": 5678
    },
    "unassigned": [],
    "routes": [
      {
        "vehicle": 1,
        "steps": [
          {
            "type": "start",
            "location": [
              -6.26,
              53.33
            ],
            "arrival": 0
          },
          {
            "type": "job",
            "id": 1,
            "location": [
              -6.26,
              53.33
            ],
            "arrival": 600
          },
          {
            "type": "job",
            "id": 2,
            "location": [
              -6.27,
              53.34
            ],
            "arrival": 1100
          },
          {
            "type": "end",
            "location": [
              -6.26,
              53.33
            ],
            "arrival": 1234
          }
        ]
      }
    ]
  }
}

Elevation

POST/api/v1/routing/elevation

Enrich a 2D line or point with elevation (Z values). Accepts polyline, encodedpolyline, or GeoJSON.

Parameters
geometryobjectrequired

GeoJSON LineString OR encoded polyline string OR list of [lng,lat] pairs.

format_instringoptional

Input geometry format: polyline | geojson | encodedpolyline5. Default polyline.

format_outstringoptional

Output geometry format: geojson | polyline | encodedpolyline5. Default geojson.

curl -X POST "https://goglobe.live/api/v1/routing/elevation" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"format_in":"polyline","format_out":"geojson","geometry":[[8.34,38.11],[12.64,37.65]]}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "geometry": {
      "type": "LineString",
      "coordinates": [
        [
          8.34,
          38.11,
          412
        ],
        [
          12.64,
          37.65,
          87
        ]
      ]
    }
  }
}

POIs

POST/api/v1/routing/pois

Find POIs around a bbox / polygon / buffered point. Alternative POI source to /api/v1/places — different OSM-derived dataset.

Parameters
geometryobjectrequired

Search area. Either an explicit {"bbox": [west, south, east, north]} — honoured verbatim — or a GeoJSON Point / LineString / Polygon with [lng, lat] coordinates, which gets a 2 km buffer by default ("buffer" in metres overrides it, capped at 20 km).

limitintegeroptional

Max POIs to return. Default 10, hard cap 15 — values above 15 are clamped, not rejected.

filtersobjectoptional

Provider-specific filter object. Only reaches the external fallback providers — it is ignored when the results come from our own database, which is the normal case.

curl -X POST "https://goglobe.live/api/v1/routing/pois" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"geometry":{"bbox":[-6.30,53.32,-6.25,53.36]},"limit":20}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "type": "FeatureCollection",
    "features": [
      {
        "type": "Feature",
        "properties": {
          "osm_id": 12345,
          "category_ids": {
            "206": {
              "category_name": "restaurant"
            }
          }
        },
        "geometry": {
          "type": "Point",
          "coordinates": [
            -6.27,
            53.33
          ]
        }
      }
    ]
  }
}

Aviation Intelligence

TFR Point Check

GET/api/v1/aviation/tfr-check

Check if a geographic point is within a Temporary Flight Restriction (TFR).

Parameters
latnumberrequired

Latitude (WGS84)

lngnumberrequired

Longitude (WGS84)

icao24stringoptional

Optional ICAO24 to cross-check active presence

curl "https://goglobe.live/api/v1/aviation/tfr-check?lat=51.5074&lng=-0.1278&icao24=a80210"   -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "in_breach": false,
    "tfrs": [
      {
        "tfr_id": "TFR-2025-001",
        "name": "Royal Wedding Airspace Restriction",
        "type": "VIP_MOVEMENT",
        "polygon_geojson": {
          "type": "Polygon",
          "coordinates": [
            [
              [
                -0.13,
                51.5
              ],
              [
                -0.12,
                51.5
              ],
              [
                -0.12,
                51.51
              ],
              [
                -0.13,
                51.51
              ],
              [
                -0.13,
                51.5
              ]
            ]
          ]
        },
        "effective_from": "2026-08-22T08:00:00Z",
        "effective_until": "2026-08-22T18:00:00Z",
        "altitude_floor_ft": 0,
        "altitude_ceiling_ft": 5000
      }
    ]
  }
}

Aircraft Conflict Detection

GET/api/v1/aviation/conflict-check

Detect proximate aircraft pairs within a geographic bounding box.

Parameters
laminnumberrequired

Min latitude

lamaxnumberrequired

Max latitude

lominnumberrequired

Min longitude

lomaxnumberrequired

Max longitude

curl "https://goglobe.live/api/v1/aviation/conflict-check?lamin=51.0&lamax=52.0&lomin=-1.0&lomax=0.0"   -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "pairs": [
      {
        "ac1": {
          "icao24": "a80210",
          "callsign": "BA123",
          "lat": 51.5,
          "lng": -0.1,
          "alt_ft": 35000
        },
        "ac2": {
          "icao24": "a80211",
          "callsign": "FR456",
          "lat": 51.501,
          "lng": -0.101,
          "alt_ft": 35100
        },
        "separation_nm": 0.08,
        "separation_ft": 100,
        "severity": "warning"
      }
    ],
    "analyzed_count": 24
  }
}

Aircraft Trajectory Replay

GET/api/v1/aviation/replay

Retrieve full flight trajectory (track, altitude, speed, heading) for a single aircraft over a time window.

Parameters
icao24stringrequired

ICAO24 address (6 hex digits)

fromstringrequired

Start time (ISO8601). Must be in the past and within the last 30 days.

tostringoptional

End time (ISO8601, defaults to from+1h)

curl "https://goglobe.live/api/v1/aviation/replay?icao24=a80210&from=2026-08-21T12%3A00%3A00Z&to=2026-08-21T13%3A00%3A00Z"   -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "icao24": "a80210",
    "registration": "N12345",
    "points": [
      {
        "ts": "2026-08-21T12:00:00Z",
        "lat": 51.4,
        "lng": -0.15,
        "alt_ft": 5000,
        "speed_kts": 380,
        "heading": 45
      },
      {
        "ts": "2026-08-21T12:05:00Z",
        "lat": 51.41,
        "lng": -0.14,
        "alt_ft": 5500,
        "speed_kts": 400,
        "heading": 50
      },
      {
        "ts": "2026-08-21T13:00:00Z",
        "lat": 51.5,
        "lng": -0.1,
        "alt_ft": 35000,
        "speed_kts": 480,
        "heading": 60
      }
    ],
    "stats": {
      "start_lat": 51.4,
      "start_lng": -0.15,
      "end_lat": 51.5,
      "end_lng": -0.1,
      "max_alt_ft": 35000,
      "total_distance_nm": 42.3,
      "duration_sec": 3600
    }
  }
}

Sanctions Check

GET/api/v1/aviation/sanctions-check

Check if an aircraft is on OFAC SDN or EU consolidated sanctions lists.

Parameters
icao24stringoptional

Aircraft ICAO24 hex code (6 digits, e.g. a80210)

registrationstringoptional

Aircraft tail number (e.g. N12345 or 9H-QBK)

operatorstringoptional

Operator ICAO code (3 letters, e.g. UAE)

curl "https://goglobe.live/api/v1/aviation/sanctions-check?icao24=a80210&registration=N12345&operator=UAE"   -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "is_sanctioned": true,
    "lists": [
      "OFAC SDN",
      "EU Consolidated"
    ],
    "match_type": "registration",
    "match_details": {
      "list": "OFAC SDN",
      "program": "SDGT",
      "name": "REGISTRATION MATCHED ON CONSOLIDATED LIST"
    }
  }
}

VIP Aircraft List

GET/api/v1/aviation/vip-list

Query government, royal, and VIP aircraft by ICAO24, or paginate the entire VIP callsign database.

Parameters
icao24stringoptional

Specific ICAO24 hex to lookup (optional; omit to list)

limitintegeroptional

Pagination limit (1-500, default 100)

offsetintegeroptional

Pagination offset (default 0)

curl "https://goglobe.live/api/v1/aviation/vip-list?limit=100&offset=0"   -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "icao24": "000001",
      "registration": null,
      "operator": null,
      "country": "US",
      "category": "Government"
    }
  ],
  "meta": {
    "total": 2847,
    "limit": 100,
    "offset": 0
  }
}

Aviation Incidents

GET/api/v1/aviation/incidents

Fetch historical aviation incidents (accidents, serious incidents) by aircraft registration or operator.

Parameters
registrationstringoptional

Aircraft tail number (e.g. N12345)

operatorstringoptional

Operator ICAO code (3 letters, e.g. UAL)

curl "https://goglobe.live/api/v1/aviation/incidents?registration=N12345&operator=UAL"   -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": [
    {
      "date": "2015-08-24T10:22:00Z",
      "location": "Shenzhen, China",
      "severity": "critical",
      "narrative": "Aircraft crashed during approach. 154 fatalities.",
      "ntsb_url": "https://ntsb.gov/Events/Pages/event_2015_08_24.aspx"
    }
  ],
  "meta": {
    "total": 1
  }
}

Operator Risk Score

GET/api/v1/aviation/operator-risk

Compute risk score for an airline operator (0-100) based on safety record, sanctions flags, and fleet composition.

Parameters
operatorstringrequired

Operator ICAO code (3 letters, e.g. BAW for British Airways)

curl "https://goglobe.live/api/v1/aviation/operator-risk?operator=BAW"   -H "X-API-Key: YOUR_API_KEY"
Response · 200 OK
{
  "status": "success",
  "data": {
    "operator": "British Airways",
    "score": 15,
    "components": {
      "sanctions": false,
      "recent_incidents": 0,
      "flag_of_convenience": false,
      "fleet_age_avg": 9.5
    },
    "summary": "Operator BAW has risk score 15/100. 0 incidents in 5 years. No sanctions issues."
  }
}

Aircraft Watchlist

POST/api/v1/aviation/watchlist

Create and manage per-merchant aircraft watchlists with webhook delivery on matches.

Parameters
namestringrequired

Human-readable name for the watchlist entry (e.g. "Airbus A380s")

match_typestringrequired

Type of match: icao24 | registration | operator | tail_prefix

match_valuestringrequired

Value to match (e.g. A0B1C2 for ICAO24, N1234 for registration)

notify_on_seenbooleanoptional

Fire webhook when aircraft enters our coverage (default true)

notify_on_sanctionsbooleanoptional

Fire on sanctions flag (default false)

notify_on_tfr_breachbooleanoptional

Fire on TFR breach (default false)

notify_on_emergency_squawkbooleanoptional

Fire on emergency squawk 7500/7600/7700 (default false)

curl -X POST "https://goglobe.live/api/v1/aviation/watchlist"   -H "X-API-Key: YOUR_API_KEY"   -H "Content-Type: application/json"   -d '{"name":"Boeing 747s","match_type":"icao24","match_value":"A0B1C2","notify_on_seen":true,"notify_on_sanctions":false,"notify_on_tfr_breach":false,"notify_on_emergency_squawk":false}'
Response · 200 OK
{
  "status": "success",
  "data": {
    "id": 123,
    "merchant_id": 456,
    "name": "Boeing 747s",
    "match_type": "icao24",
    "match_value": "A0B1C2",
    "notify_on_seen": true,
    "notify_on_sanctions": false,
    "notify_on_tfr_breach": false,
    "notify_on_emergency_squawk": false,
    "webhook_url": null,
    "webhook_secret": null,
    "created_at": "2026-08-15T10:00:00Z",
    "updated_at": "2026-08-15T10:00:00Z",
    "status": "active"
  }
}