GetYourGuide API

Get GetYourGuide data with one API

The GetYourGuide API returns tours and activities as clean JSON.

no credit card1,000 free credits · instant API key · live in 10 seconds
Missing a GetYourGuide endpoint, or need a source we don't have yet?Contact us real people · same-day reply.
G
/getyourguide/v1

5 active endpoints, on 1 and 2 credit tiers.

  • POST/getyourguide/v1/search
  • POST/getyourguide/v1/browse
  • POST/getyourguide/v1/detail
  • POST/getyourguide/v1/reviews
  • POST/getyourguide/v1/destinations

What GetYourGuide endpoints does ReefAPI ship?

5 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.

5 endpoints

search

1 cr

Search GetYourGuide for tours & activities by free-text keyword or destination ('Rome colosse…

required
query
optional
currency, language

browse

1 cr

Browse the top tours & activities for a destination's landing page.

required
optional
slug, location_id, city, destination, url, currency, language

detail

2 cr

Full record for one tour/activity.

required
optional
url, slug, currency, language

reviews

1 cr

The most-recent public traveler reviews for one activity (rating, text, author, date) plus th…

required
optional
url, slug, language

destinations

1 cr

Destination metadata for a GetYourGuide location.

required
optional
slug, location_id, city, destination, url, language

Every parameter, every allowed value →

GetYourGuide API

2 of 5 endpoints, ready to run

View docs ↗

Search GetYourGuide for tours & activities by free-text keyword or destination ('Rome colosse…

1 credit1 required · 0 optional
POST/getyourguide/v1/search
ok1784 ms · 24 records · sample
{
  "ok": true,
  "meta": {
    "api": "getyourguide",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": 1784.4,
    "record_count": 24,
    "cache_hit": false
  },
  "data": {
    "activities": [
      {
        "activity_id": 195566,
        "title": "Colosseum, Roman Forum & Palatine Hill Guided Tour",
        "images": [
          "https://cdn.getyourguide.com/img/tour/33cca66c19886c9f.jpeg/53.jpg"
        ],
        "category": "guidedTour",
        "url": "https://www.getyourguide.com/rome-l33/colosseum-roman-forum-palatine-hill-guided-tour-t195566/"
      },
      {
        "activity_id": 217332,
        "title": "Rome: Colosseum Arena Floor, Palatine & Forum Guided Tour",
        "images": [
          "https://cdn.getyourguide.com/img/tour/94228a891b57dd5ac3f35040d77c0d5045f72c51aaf096f868ed50367e406c22.jpg/53.jpg"
        ],
        "category": "guidedTour",
        "url": "https://www.getyourguide.com/rome-l33/rome-colosseum-arena-floor-palatine-forum-guided-tour-t217332/"
      },
      {
        "activity_id": 1456538,
        "title": "St Mary Martyrs Roman Monument Entry with Multilingual Audio",
        "images": [
          "https://cdn.getyourguide.com/img/tour/345ce76397969a50b6c04a62e37286495b02a6290290801b20b4193e6d3e008e.jpg/53.jpg"
        ],
        "category": "entryTicket",
        "url": "https://www.getyourguide.com/rome-l33/st-mary-martyrs-roman-monument-entry-with-multilingual-audio-t1456538/"
      }
    ]
  }
}
Real response, fetched from the live endpoint with the parameters on the left — trimmed to the first few rows, with seller names left out. Press Try it for the untrimmed response.

How the GetYourGuide API works

GetYourGuide is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.

01
Authenticate
x-api-key header

No OAuth app, no request signing, no per-site account. One key covers all 185 engines.

02
Call
POST /getyourguide/v1/…

Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.

03
Pay
1 or 2 credits per call

Credits, not seats. Failed and blocked calls are never charged, and cache hits cost nothing.

04
Read
{ ok, data, meta, error }

One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.

Which GetYourGuide action returns which field

search and browse both return activity cards, but they are not the same card. search finds activities by keyword and gives you a category; browse lists a destination's top activities and gives you price, rating and review count. Picking the wrong one is the most common reason a field looks missing. Measured on rome-l33, paris-l16 and barcelona-l45, 2026-08-27.

FieldsearchbrowseExample
activity_idyesyes195566, the digits after -t in the URL
title, url, images[]yesyeshttps://www.getyourguide.com/rome-l33/...-t195566/
categoryyesno"guidedTour", "entryTicket"
pricenoyes57.2
currencynoyes"USD" - read it, do not assume
ratingnoyes4.77, or null when unrated
review_countnoyes89083, or null when unrated
start_datenoyes"2026-08-29T15:00:00+02:00"
locationnoyes"Rome", "Saint-Denis, Paris"
rows per call2416neither action takes a page parameter

destinations resolves a slug to location metadata, but it is partial. rome-l33 returned location_id 33, name "Rome", type "city", country "Italy" and area "Lazio", while url, abstract, country_id and activity_count came back null and parent_locations came back as an empty array. barcelona-l45 behaved identically. Treat activity_count as unavailable rather than zero.

What people build with GetYourGuide

The jobs this data is most often used for.

5

endpoints

1/2

credits per call

01

Travel apps call search to list tours and activities for a destination.

02

Aggregators use browse and detail to build an activity catalog.

03

Reputation tools use reviews to surface top-rated experiences.

What GetYourGuide data costs

The cheapest call here is 1 credit, so $15/mo (Pro) buys 10,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and failed or blocked calls are not charged.

Full pricing →
$0.67–$1.50 / 1,000 credits
  • 1,000 free credits on signup, no card
  • One key, all 185 APIs, one credit pool
  • Failed and blocked calls are never charged
  • Credits roll over and never expire

Call it in two lines

Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.

curl
curl -X POST https://api.reefapi.com/getyourguide/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"Rome colosseum"}'
python
import requests

r = requests.post(
    "https://api.reefapi.com/getyourguide/v1/search",
    headers={"x-api-key": REEF_KEY},
    json={
  "query": "Rome colosseum"
},
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up GetYourGuide.

Get a free key →
Where do activity_id and location_id come from?

Both are readable straight out of a GetYourGuide URL. In https://www.getyourguide.com/rome-l33/colosseum-roman-forum-palatine-hill-guided-tour-t195566/ the -l33 makes location_id 33 (Rome) and the -t195566 makes activity_id 195566. Verified location ids include rome-l33, paris-l16 and barcelona-l45. browse and destinations take the whole slug, "rome-l33", or location_id plus city. The city half of the slug is cosmetic; the number is what resolves.

Why does search return no prices?

The keyword search surface returns discovery cards, activity_id, title, url, images and a category such as guidedTour or entryTicket, and no commercial fields at all. Prices, ratings, review counts and next start times only appear on browse, which lists a destination's top activities. A common pattern is search to find the activity_id, then browse the destination and match on activity_id, or go straight to browse when you already know the city.

Is price the total cost or a from-price?

It is the lowest advertised per-person price for that activity, the same "from" figure the site shows on a listing card, not a total for your party and not tied to a date. A Colosseum guided tour returned 57.2 and a Paris evening cruise 19.85 on 2026-08-27. There is no participants or date parameter, so treat these as headline prices for comparison and ranking rather than as a quote.

Does the currency parameter actually change the prices?

Not reliably, so read activities[].currency on every row instead of assuming it matches what you sent. Measured on 2026-08-27: rome-l33 returned USD for currency EUR, GBP, AUD and USD alike; paris-l16 returned USD for EUR, USD and AUD but EUR for GBP; barcelona-l45 returned EUR when currency was unset, GBP or TRY, and USD when it was USD. Mixing rows from different destinations without checking the currency field will silently compare dollars against euros.

Why are rating and review_count null on some activities?

Because that activity has no public reviews yet, which is different from a rating of zero. On a live Rome browse, an established Colosseum tour returned rating 4.77 with review_count 89083 while a newly listed gallery entry returned null for both. Newly listed experiences are exactly the rows most likely to be null, so filter on review_count being non-null before you rank or average anything.

What does start_date mean on a browse result?

It is a timestamp for an offer on the destination page, returned with the local UTC offset, for example "2026-08-29T15:00:00+02:00" for Rome and "2026-08-27T10:00:00+02:00" for Paris. It is not an availability calendar and it is not filtered to the future: in a 2026-08-27 call one Rome row carried a start_date of 2026-08-25. Use it as a hint about the next advertised departure, and check the date before showing it to a user.

Do I need a GetYourGuide partner account for this?

No. GetYourGuide's own affiliate and partner APIs require an account, a partner id and approval before you can read anything. This engine reads the public destination and activity pages, so a ReefAPI key and a slug or URL is the whole setup, and the response arrives in the same { ok, data, meta, error } envelope as every other engine here.

What is the GetYourGuide API?

GetYourGuide API is a ReefAPI endpoint group for getyourguide It returns live JSON through POST requests under /getyourguide/v1.

Is the GetYourGuide API free to try?

Yes. ReefAPI starts with 1,000 free credits, no card required. GetYourGuide calls use the same shared credit balance as every other ReefAPI engine.

Do I need a GetYourGuide login or account?

No login to GetYourGuide is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the GetYourGuide data?

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the GetYourGuide API use?

GetYourGuide actions currently cost 1-2 credits per successful call. Failed or blocked calls are free, and all APIs draw from one credit pool.

Can I call GetYourGuide from an AI assistant or MCP client?

Yes. Connect ReefAPI once through MCP and your assistant can call getyourguide actions with the same key, credit pool and JSON envelope used by normal REST requests.

Is the GetYourGuide API a GetYourGuide scraper?

It is the managed alternative to a DIY GetYourGuide scraper. Instead of building and maintaining your own scraper — proxies, headless browsers, captcha and constant breakage — you call one ReefAPI endpoint and get the same getyourguide back as clean JSON.

8 Travel & Lodging APIs on the same key

One key, one credit pool, one response envelope. If you are pulling GetYourGuide, you are one call away from the rest of the category — no second contract, no second integration.

Need something this API does not do?

Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.

0/4000

No account needed · we reply from [email protected]

Try it on your own data before you pay anything

The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 184 APIs, and the same envelope everywhere.

Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts.