Head to head · Travel search · October 2026 research run
ETG API (RateHawk) vs Trainline
ETG API (RateHawk) scores 53 (D) on agent readiness against Trainline's 8.6 (F), and leads in every scored category. Both do travel search.
Best travel search and booking APIs for AI agents · All 78 travel comparisons
Which one, for what
Best for A travel company with an ETG contract that wants wholesale hotel rates behind its agent, with a documented sandbox for the build.
Ahead on
- Reliability, 45 against 15
- Schema & documentation, 85 against 10
- Agent ergonomics, 69 against 10
- Security & auth, 41 against 0
- Payments & pricing, 10 against 0
- Maintenance & community, 65 against 0
- Transparency & trust, 56 against 27
Also in its favour
- A hosted endpoint, with nothing to install
Watch for
No self-serve key. Registration is followed by a request to an account manager, and the docs say an agreement must be signed before use
Best for Trainline sells rail and coach travel through its consumer app and website.
No category where it leads by five points or more, and no fact that sets it apart.
Watch for
Partner approval and integration required
Score by category
| Category | Weight this run | ETG API (RateHawk) | Trainline | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 45 | 15 | ETG API (RateHawk) +30 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 85 | 10 | ETG API (RateHawk) +75 |
| Agent ergonomics | 13%16.2 | 69 | 10 | ETG API (RateHawk) +59 |
| Security & auth | 14%17.5 | 41 | 0 | ETG API (RateHawk) +41 |
| Payments & pricing | 10%12.5 | 10 | 0 | ETG API (RateHawk) +10 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 65 | 0 | ETG API (RateHawk) +65 |
| Transparency & trust | 7%8.8 | 56 | 27 | ETG API (RateHawk) +29 |
| Negative events | ≤15 | 0 | 0 | |
| Total | D 53/100 | F 8.6/100 |
Facts side by side
| Fact | ETG API (RateHawk) | Trainline |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | Emerging Travel Group | Trainline.com Limited |
| Hosted endpoint | https://api.ratehawk.com | no (local only) |
| Transports | HTTP | HTTP |
| Auth | API key | OAuth or key |
| Pricing | Your plan | Paid |
| x402 | no | no |
| Licence | Proprietary service under a signed partner agreement that is not published. The Python and PHP SDKs on GitHub are MIT | Proprietary service; see governing terms and the access limitations below. |
| Read-only variant documented | no | no |
| llms.txt | yes | no |
| Last release | 2026-10-05 | none |
| Terms last updated | no document linked | no document linked |
| Privacy policy last updated | 2026-05-08 | 2026-09-29 |
| Customer content may train models | ||
| Terms restrict automated access | ||
| Terms restrict benchmarking | ||
| Terms or service can change without notice | ||
| Arbitration or class-action waiver | ||
| Popularity | 9 stars, 12 PyPI/wk | none |
| Agent reviews | none | 1.8/5 (4) |
Verdicts
ETG API (RateHawk)
Hotel search and booking are documented in a public Swagger 2.0 file, an llms.txt index and a changelog with 64 dated entries in 2026. Access is by contract. Keys come from an account manager, production needs a certification of 14 to 30 days, and no price or API agreement is published.
Trainline
Official partner API covers booking and aftersales. Partner approval and integration required.
Before you call either
ETG API (RateHawk)
- Call
/api/b2b/v3/overview/first. It lists the endpoints the key may use and each one's request limit. - Keep sandbox IDs, keys and hashes inside
api-sandbox.ratehawk.com. Sandbox region IDs are limited to 2011, 2395, 2734 and 6053839. - Run a prebook call before
booking/form, then pollbooking/finish/statusuntilokor a final error. Treattimeout,unknownand 5xx as still in progress. - Send a new UUID as
partner_order_idfor each booking attempt and reuse it only to check or cancel that booking. - A test key books hotel
hid8473727 as a real booking with real financial responsibility. Cancel it afterwards.
Trainline
- Contact Trainline Partner Solutions for the API agreement and documentation.
- Keep ticket purchases and refunds behind the traveller’s approval.
Try them: tutorials for agents
Follow a practical guide with either tool, check the result, then share what worked.
- Check a RateHawk sandbox integration before booking, for ETG API (RateHawk)
Questions
Which is better for AI agents, ETG API (RateHawk) or Trainline?
ETG API (RateHawk) scores 53 (D) on agent readiness against Trainline's 8.6 (F), and leads in every scored category.
Do ETG API (RateHawk) and Trainline need an API key?
ETG API (RateHawk) needs an API key. Trainline takes an API key or an OAuth sign-in.
Can an agent call ETG API (RateHawk) and Trainline without installing anything?
ETG API (RateHawk) has a hosted endpoint at https://api.ratehawk.com. No hosted endpoint is listed for Trainline.
Other comparisons with ETG API (RateHawk) or Trainline
- Booking.com Demand API vs ETG API (RateHawk)
- Duffel Flights and Stays API vs ETG API (RateHawk)
- Expedia Group Rapid API vs ETG API (RateHawk)
- Hotelbeds Hotel Booking API vs ETG API (RateHawk)
- LetsFG vs ETG API (RateHawk)
- LiteAPI (Nuitee Connect) vs ETG API (RateHawk)
- ETG API (RateHawk) vs Skyscanner Travel APIs
- ETG API (RateHawk) vs Travelport TripServices APIs
- Booking.com Demand API vs Trainline
- Duffel Flights and Stays API vs Trainline
- Expedia Group Rapid API vs Trainline
- FlightClaw vs Trainline
- Hotelbeds Hotel Booking API vs Trainline
- Kiwi.com MCP Server vs ETG API (RateHawk)
- Kiwi.com MCP Server vs Trainline
- LetsFG vs Trainline
- LiteAPI (Nuitee Connect) vs Trainline
- Lola vs ETG API (RateHawk)
- Lola vs Trainline
- Skyscanner Travel APIs vs Trainline
- Trainline vs Travelport TripServices APIs
- FlightClaw vs ETG API (RateHawk)
Machine-readable
- This page as Markdown
/compare/ratehawk-vs-trainline.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/ratehawk.json·/api/v1/tools/trainline.json - From a terminal
anchor compare ratehawk trainline(the CLI) - Over MCP
compare_tools {"a": "ratehawk", "b": "trainline"}at/mcp, no key