Wego is a travel company serving millions of travelers across the Middle East, Asia and beyond. This API exposes the building blocks wego.com itself runs on: resolve travel locations, search flights and hotels, compare fares and room rates, and continue on wego.com to book.
All /v1 operations require an OAuth2 bearer token from the Wego auth server.
Start here
- Agent setup: give your AI agent one line and it drives Wego.
- Wego in ChatGPT: add the Wego plugin and ask for a trip.
- Wego in Claude: add the Wego connector and ask for a trip.
- Ways to use this API: the plugin and connector, the skill, the CLI, or direct HTTP.
- Authentication: get a token, two ways.
- Quickstart: Dubai to London, end to end.
- Wego CLI: the same funnels, one command per step.
- API Reference: every endpoint, request and response.
The model
Both verticals run the same shape: create a search, read ranked results, open one result, then continue to wego.com, where the traveler books.
flights: search -> results -> trip -> fare -> booking-link
hotels: search -> results -> search(hotelId) -> rates -> booking-linkHotels take one step flights do not. A city search holds only a sample of any one hotel’s rates, so pricing a hotel’s full room list needs a second search created with that hotelId. Reading rates against the city search instead is a 409 rates_require_hotel_search – see the Quickstart for the shape, and Errors for the code.
The API Reference documents the machine contract in full: how async search settles, why ids expire, the fare and rate kinds, error codes, and rate limits.
Research Preview
Everything here is a Research Preview: the API, the wego CLI, the agent skill, and the Wego plugin for ChatGPT and the Wego connector for Claude. We are shipping it early to learn what people and agents actually ask for.
What that means for you:
- Things change. Endpoints, response shapes, and CLI output can change while we improve them. Read the API Reference rather than caching what you saw last month, and pin nothing you cannot re-check.
- Coverage is uneven. Results settle asynchronously and some routes, fares, or hotels are missing. An empty result is not proof that nothing exists.
- No availability promise. There is no SLA yet, and we may pause a surface to fix it.
- Booking stays on Wego. We return a link where the traveler books. We never take a charge.
Tell us what worked and what did not: wego feedback from the CLI. That feedback is what decides what we build next.