{
  "data": {
    "a": {
      "slug": "ratehawk",
      "name": "ETG API (RateHawk)",
      "vendor": "Emerging Travel Group",
      "vendorUrl": "https://www.ratehawk.com",
      "kind": "http-api",
      "category": "travel",
      "summary": "Hotel search and booking API from Emerging Travel Group, the company behind RateHawk and ZenHotels. Contracted partners search rates, prebook, book and cancel stays over REST, with B2B, Affiliate and Content APIs.",
      "url": "https://www.anchorterminal.com/tools/ratehawk",
      "markdownUrl": "https://www.anchorterminal.com/tools/ratehawk.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/ratehawk.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/ratehawk.json",
      "repo": "https://github.com/EmergingTravel/papi-sdk-python",
      "license": "Proprietary service under a signed partner agreement that is not published. The Python and PHP SDKs on GitHub are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.ratehawk.com",
      "packages": [
        {
          "registry": "pypi",
          "name": "papi-sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "Access is by partner approval. A person registers at ratehawk.com/registration, picks API integration as the purpose, then asks an account manager for credentials, and the docs say the relevant agreement must be signed before the API is used. Keys are `\u003cKEY_ID\u003e:\u003cAPI_KEY\u003e` pairs sent as HTTP Basic auth, issued separately for sandbox, test and production. A production key follows a written certification that the docs put at 14 to 30 days. Each key has its own endpoint permissions and request limits, readable at `/api/b2b/v3/overview/`.",
      "pricing": "byo-plan",
      "pricingNotes": "No public price list. Partners buy at net rates under contract and pay from a deposit with a credit limit, at the hotel or by card, depending on the rate. The landing page calls the API key free, and the sandbox makes no real bookings or charges, but a key comes from an account manager after registration, so an agent cannot start without a person and an agreement (checked 2026-10-08).",
      "priceSummary": "Your plan",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the Swagger file or the API landing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 9,
        "npmWeekly": null,
        "pypiWeekly": 12,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.emergingtravel.com/",
      "llmsTxt": "https://docs.emergingtravel.com/llms.txt",
      "openapi": "https://api.ratehawk.com/openapi.json",
      "capabilities": [
        "travel.stays",
        "travel.booking",
        "travel.changes",
        "travel.search"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "openapi",
        "llms-txt",
        "sandbox",
        "sales-led",
        "certification",
        "status-page",
        "python",
        "php",
        "eu"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 53,
        "grade": "D",
        "agentReady": false,
        "rank": 554,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 69,
          "maintenance": 65,
          "payments": 10,
          "reliability": 45,
          "schema": 85,
          "security": 41,
          "transparency": 56
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "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.",
        "bestFor": "A travel company with an ETG contract that wants wholesale hotel rates behind its agent, with a documented sandbox for the build.",
        "strengths": [
          "Public Swagger 2.0 file at `https://api.ratehawk.com/openapi.json` with 48 operations and 171 definitions for the B2B and Content APIs",
          "`llms.txt` and a Markdown copy of every docs page at `index.md`, with robots.txt allowing AI crawlers by name",
          "Changelog with 64 dated entries in 2026, the latest on 5 October 2026",
          "Sandbox host with over 2,000 test hotels, named error scenarios and no real bookings or charges",
          "`partner_order_id` identifies a booking across retries, and the docs say how to handle `timeout`, `unknown` and 5xx during booking"
        ],
        "weaknesses": [
          "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",
          "No public price list or API agreement was found. Rates and request limits are set per contract",
          "The status page's orders monitor recorded downtime of an hour or more on four days between 21 July and 14 September 2026, with no written incident reports",
          "Both official SDKs (Python and PHP) last changed in 2021 and default to `api.worldota.net`, a host the docs call deprecated",
          "No `security.txt`, disclosure policy or security certification page was found on ratehawk.com, emergingtravel.com or the docs site"
        ],
        "agentNotes": [
          "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 poll `booking/finish/status` until `ok` or a final error. Treat `timeout`, `unknown` and 5xx as still in progress.",
          "Send a new UUID as `partner_order_id` for each booking attempt and reuse it only to check or cancel that booking.",
          "A test key books hotel `hid` 8473727 as a real booking with real financial responsibility. Cancel it afterwards."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 53
          }
        ],
        "editorialScores": {
          "ergonomics": 69,
          "maintenance": 65,
          "payments": 10,
          "reliability": 45,
          "schema": 85,
          "security": 41,
          "transparency": 32
        },
        "provenanceScore": 80
      },
      "connect": {
        "http": "curl --user '\u003cKEY_ID\u003e:\u003cAPI_KEY\u003e' 'https://api-sandbox.ratehawk.com/api/b2b/v3/overview/'"
      },
      "letme": {
        "capability": "https://letme.dev/travel.stays",
        "tool": "https://letme.dev/ratehawk"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Leaside Services Limited",
        "domain": "ratehawk.com",
        "domainRegistered": "2006-08-24",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "https://www.ratehawk.com/legal/site/privacy-policy/",
        "statusPage": "https://status.emergingtravel.com",
        "changelog": "https://docs.emergingtravel.com/docs/changelog/2026/",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "No terms document for the API is published. The docs say the relevant agreement must be signed before use, and the only public terms we found are website terms of use on emergingtravel.com, so the terms field is left out.",
          "The RateHawk legal notice names Leaside Services Limited, a Cyprus company with registration number HE 342401, at Ifigeneias 17, Strovolos, Nicosia. The privacy notice (version 1.0, updated 8 May 2026) gives the same company an address in Limassol and lists eight other Emerging Travel entities as controllers by contract.",
          "The API answers at api.ratehawk.com and api-sandbox.ratehawk.com. Card tokenisation is at api.payota.net and the docs are at docs.emergingtravel.com, both outside ratehawk.com.",
          "`/.well-known/security.txt` returned 404 on www.ratehawk.com, api.ratehawk.com, www.emergingtravel.com and docs.emergingtravel.com.",
          "RDAP gives ratehawk.com a registration date of 2006-08-24 and emergingtravel.com 2007-02-25."
        ],
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/ratehawk.json",
      "live": {
        "slug": "ratehawk",
        "probe": {
          "target": "https://api.ratehawk.com",
          "method": "get",
          "lastAt": "2026-10-08T21:53:31.757788824Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 166,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 137,
          "p95ms24h": 188,
          "samples24h": 28,
          "samples30d": 28,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 28,
              "ok": 28
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.emergingtravel.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:39:06.568833713Z"
        },
        "updatedAt": "2026-10-08T21:53:31.757788824Z"
      }
    },
    "answer": "ETG API (RateHawk) scores 53 (D) on agent readiness against Skyscanner Travel APIs's 45.6 (E), and leads in 5 of 7 scored categories. Skyscanner Travel APIs leads on security \u0026 auth and payments \u0026 pricing.",
    "b": {
      "slug": "skyscanner",
      "name": "Skyscanner Travel APIs",
      "vendor": "Skyscanner Limited",
      "vendorUrl": "https://www.partners.skyscanner.net/product/travel-api",
      "kind": "http-api",
      "category": "travel",
      "summary": "Skyscanner's partner APIs for flight, hotel and car hire search, with live and indicative prices, hotel content and reviews, and deep links that send travellers to airlines and travel agents to book. Access is by application.",
      "url": "https://www.anchorterminal.com/tools/skyscanner",
      "markdownUrl": "https://www.anchorterminal.com/tools/skyscanner.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/skyscanner.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/skyscanner.json",
      "license": "Proprietary service. The API terms are in the partner contract and are not public",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://partners.api.skyscanner.net",
      "packages": [],
      "auth": "api-key",
      "authNotes": "Partner approval. A business applies at https://www.partners.skyscanner.net/contact/travel-api, Skyscanner reviews each application within two weeks, and an account manager issues the key after a commercial agreement and onboarding on impact.com. The key goes in the `x-api-key` header on every call. Rate limits are set per key. No scopes, self-serve rotation or OAuth were found in the docs.",
      "pricing": "free",
      "pricingNotes": "No usage fee. Skyscanner's partner help centre says the Travel APIs carry no per-booking, monthly or yearly fee and that partners earn a revenue share on bookings, tracked through Impact. The share is not published. There is no sandbox, trial or test key, and access starts only after an approved application and a commercial agreement (checked 2026-10-08).",
      "priceSummary": "Free",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the API reference or the partner pages (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developers.skyscanner.net/docs/intro",
      "capabilities": [
        "travel.flights",
        "travel.stays",
        "travel.search"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "partner-only",
        "api-key",
        "metasearch",
        "flights",
        "hotels",
        "car-hire",
        "affiliate",
        "bug-bounty"
      ],
      "lastRelease": "2026-10-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 45.6,
        "grade": "E",
        "agentReady": false,
        "rank": 655,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 7,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 50,
          "maintenance": 60,
          "payments": 25,
          "reliability": 35,
          "schema": 56,
          "security": 48,
          "transparency": 52
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Thirteen documented search APIs cover flights, hotels and car hire behind one `x-api-key` header, with default rate limits published per endpoint and no usage fee. Access needs an approved application, an audience above 100,000 monthly users and a commercial agreement, and the usage guidelines bar live-price calls made without a user action. Booking happens on supplier sites.",
        "bestFor": "An established travel site or app with a large audience that wants metasearch prices across flights, hotels and car hire and is content to send users to suppliers to book.",
        "strengths": [
          "Thirteen APIs and 21 operations cover flights, hotels and car hire, with live and indicative prices, hotel content, reviews, geography and autosuggest",
          "Default rate limits are published per endpoint, per second, minute and hour, such as 100 flight search creates a minute and 500 polls",
          "Skyscanner states the Travel APIs carry no per-booking, monthly or yearly fee, and partners earn a revenue share on bookings",
          "The docs changelog is dated and current, with four entries between 14 July and 1 October 2026",
          "Public bug bounty on Bugcrowd and a security.txt on www.skyscanner.net that runs to November 2030"
        ],
        "weaknesses": [
          "Keys are issued only after an application review and a commercial agreement, with a stated minimum of 100,000 monthly active users",
          "The usage guidelines say live pricing calls are made only on user-generated requests, and automated calls without a user action are not permitted",
          "No booking, change or cancel calls. Every result carries a deep link and the traveller books on the supplier's site",
          "No downloadable OpenAPI file, SDK or code samples were found, and `llms.txt` on the docs host returns 403",
          "No status page, SLA or public API terms were found. The API terms sit in the partner's contract on impact.com"
        ],
        "agentNotes": [
          "Send the key in the `x-api-key` header on every call to `https://partners.api.skyscanner.net`. CORS is not supported, so call from a server",
          "Create a live search only when a user has given origin, destination and exact dates. Use the indicative price endpoints for open-ended questions",
          "Poll `/search/poll/{sessionToken}` until `status` is `RESULT_STATUS_COMPLETE`, and replace earlier results only when `action` is `RESULT_ACTION_REPLACED`",
          "Start a new session when a poll returns 400. Flight session tokens last about an hour and hotel sessions at most 15 minutes",
          "Pass each `deepLink` to the traveller unchanged, since altered encoding breaks Impact tracking, and never put personal data in `subid2`"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 45.6
          }
        ],
        "editorialScores": {
          "ergonomics": 50,
          "maintenance": 60,
          "payments": 25,
          "reliability": 35,
          "schema": 56,
          "security": 48,
          "transparency": 28
        },
        "provenanceScore": 76
      },
      "connect": {
        "http": "curl --request POST 'https://partners.api.skyscanner.net/apiservices/v3/flights/live/search/create' \\\n  --header 'x-api-key: your-api-key' \\\n  --data '{\"query\":{\"market\":\"UK\",\"locale\":\"en-GB\",\"currency\":\"GBP\",\"queryLegs\":[{\"originPlaceId\":{\"iata\":\"LHR\"},\"destinationPlaceId\":{\"iata\":\"SIN\"},\"date\":{\"year\":2024,\"month\":12,\"day\":22}}],\"adults\":1,\"cabinClass\":\"CABIN_CLASS_ECONOMY\"}}'"
      },
      "letme": {
        "capability": "https://letme.dev/travel.flights",
        "tool": "https://letme.dev/skyscanner"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Skyscanner Limited",
        "domain": "skyscanner.net",
        "domainRegistered": "2002-07-03",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "https://www.skyscanner.net/media/privacy-policy",
        "statusPage": "",
        "changelog": "https://developers.skyscanner.net/docs/change-log",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The privacy policy and terms of service name Skyscanner Limited, company number 04217916, registered in England and Wales.",
          "No `terms` URL is given. The partner help centre says the Skyscanner API Terms and Conditions are in the partner's contract on impact.com, and the only public terms are the website terms of service at https://www.skyscanner.net/media/terms-of-service.",
          "The privacy policy is Skyscanner's general one for its platforms and travellers. No separate privacy notice or DPA for API partners was found.",
          "The API answers at partners.api.skyscanner.net. Deep links pass through skyscanner.pxf.io, an Impact tracking domain.",
          "https://www.skyscanner.net/.well-known/security.txt lists security@skyscanner.net and the Bugcrowd programme and expires 2030-11-20. The same path returns 403 on developers.skyscanner.net and 404 on www.partners.skyscanner.net.",
          "No status page is linked from the developer docs or the partner site. Requests to status.skyscanner.net did not connect from our network.",
          "RDAP for skyscanner.net gives a registration date of 2002-07-03."
        ],
        "score": 76
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/skyscanner.json",
      "live": {
        "slug": "skyscanner",
        "probe": {
          "target": "https://partners.api.skyscanner.net",
          "method": "get",
          "lastAt": "2026-10-08T21:53:34.145223905Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 70,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 73,
          "p95ms24h": 100,
          "samples24h": 28,
          "samples30d": 28,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 28,
              "ok": 28
            }
          ]
        },
        "updatedAt": "2026-10-08T21:53:34.145223905Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Emerging Travel Group",
        "b": "Skyscanner Limited",
        "name": "Vendor"
      },
      {
        "a": "https://api.ratehawk.com",
        "b": "https://partners.api.skyscanner.net",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Your plan",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under a signed partner agreement that is not published. The Python and PHP SDKs on GitHub are MIT",
        "b": "Proprietary service. The API terms are in the partner contract and are not public",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-05",
        "b": "2026-10-01",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-08",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "9 stars, 12 PyPI/wk",
        "b": "none",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "ETG API (RateHawk) scores 53 (D) on agent readiness against Skyscanner Travel APIs's 45.6 (E), and leads in 5 of 7 scored categories. Skyscanner Travel APIs leads on security \u0026 auth and payments \u0026 pricing.",
        "question": "Which is better for AI agents, ETG API (RateHawk) or Skyscanner Travel APIs?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do ETG API (RateHawk) and Skyscanner Travel APIs need an API key?"
      },
      {
        "answer": "Yes. ETG API (RateHawk) has a hosted endpoint at https://api.ratehawk.com and Skyscanner Travel APIs at https://partners.api.skyscanner.net.",
        "question": "Can an agent call ETG API (RateHawk) and Skyscanner Travel APIs without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 45 against 35",
          "Schema \u0026 documentation, 85 against 56",
          "Agent ergonomics, 69 against 50",
          "Maintenance \u0026 community, 65 against 60"
        ],
        "also": null,
        "goodFor": "A travel company with an ETG contract that wants wholesale hotel rates behind its agent, with a documented sandbox for the build.",
        "slug": "ratehawk",
        "watchFor": "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"
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 48 against 41",
          "Payments \u0026 pricing, 25 against 10"
        ],
        "also": null,
        "goodFor": "An established travel site or app with a large audience that wants metasearch prices across flights, hotels and car hire and is content to send users to suppliers to book.",
        "slug": "skyscanner",
        "watchFor": "Keys are issued only after an application review and a commercial agreement, with a stated minimum of 100,000 monthly active users"
      }
    ],
    "job": {
      "capability": "travel.stays",
      "name": "Travel stays"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/booking-demand-api-vs-ratehawk.json",
        "title": "Booking.com Demand API vs ETG API (RateHawk)",
        "url": "https://www.anchorterminal.com/compare/booking-demand-api-vs-ratehawk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/booking-demand-api-vs-skyscanner.json",
        "title": "Booking.com Demand API vs Skyscanner Travel APIs",
        "url": "https://www.anchorterminal.com/compare/booking-demand-api-vs-skyscanner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/duffel-vs-ratehawk.json",
        "title": "Duffel Flights and Stays API vs ETG API (RateHawk)",
        "url": "https://www.anchorterminal.com/compare/duffel-vs-ratehawk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/expedia-rapid-vs-ratehawk.json",
        "title": "Expedia Group Rapid API vs ETG API (RateHawk)",
        "url": "https://www.anchorterminal.com/compare/expedia-rapid-vs-ratehawk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/expedia-rapid-vs-skyscanner.json",
        "title": "Expedia Group Rapid API vs Skyscanner Travel APIs",
        "url": "https://www.anchorterminal.com/compare/expedia-rapid-vs-skyscanner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hotelbeds-vs-ratehawk.json",
        "title": "Hotelbeds Hotel Booking API vs ETG API (RateHawk)",
        "url": "https://www.anchorterminal.com/compare/hotelbeds-vs-ratehawk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hotelbeds-vs-skyscanner.json",
        "title": "Hotelbeds Hotel Booking API vs Skyscanner Travel APIs",
        "url": "https://www.anchorterminal.com/compare/hotelbeds-vs-skyscanner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letsfg-vs-ratehawk.json",
        "title": "LetsFG vs ETG API (RateHawk)",
        "url": "https://www.anchorterminal.com/compare/letsfg-vs-ratehawk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/liteapi-vs-ratehawk.json",
        "title": "LiteAPI (Nuitee Connect) vs ETG API (RateHawk)",
        "url": "https://www.anchorterminal.com/compare/liteapi-vs-ratehawk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/liteapi-vs-skyscanner.json",
        "title": "LiteAPI (Nuitee Connect) vs Skyscanner Travel APIs",
        "url": "https://www.anchorterminal.com/compare/liteapi-vs-skyscanner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ratehawk-vs-travelport.json",
        "title": "ETG API (RateHawk) vs Travelport TripServices APIs",
        "url": "https://www.anchorterminal.com/compare/ratehawk-vs-travelport"
      },
      {
        "json": "https://www.anchorterminal.com/compare/duffel-vs-skyscanner.json",
        "title": "Duffel Flights and Stays API vs Skyscanner Travel APIs",
        "url": "https://www.anchorterminal.com/compare/duffel-vs-skyscanner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/flightclaw-vs-skyscanner.json",
        "title": "FlightClaw vs Skyscanner Travel APIs",
        "url": "https://www.anchorterminal.com/compare/flightclaw-vs-skyscanner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kiwi-mcp-vs-skyscanner.json",
        "title": "Kiwi.com MCP Server vs Skyscanner Travel APIs",
        "url": "https://www.anchorterminal.com/compare/kiwi-mcp-vs-skyscanner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letsfg-vs-skyscanner.json",
        "title": "LetsFG vs Skyscanner Travel APIs",
        "url": "https://www.anchorterminal.com/compare/letsfg-vs-skyscanner"
      },
      {
        "json": "https://www.anchorterminal.com/compare/skyscanner-vs-travelport.json",
        "title": "Skyscanner Travel APIs vs Travelport TripServices APIs",
        "url": "https://www.anchorterminal.com/compare/skyscanner-vs-travelport"
      },
      {
        "json": "https://www.anchorterminal.com/compare/flightclaw-vs-ratehawk.json",
        "title": "FlightClaw vs ETG API (RateHawk)",
        "url": "https://www.anchorterminal.com/compare/flightclaw-vs-ratehawk"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kiwi-mcp-vs-ratehawk.json",
        "title": "Kiwi.com MCP Server vs ETG API (RateHawk)",
        "url": "https://www.anchorterminal.com/compare/kiwi-mcp-vs-ratehawk"
      }
    ],
    "scores": [
      {
        "by": 10,
        "edge": "ratehawk",
        "key": "reliability",
        "name": "Reliability",
        "ratehawk": 45,
        "skyscanner": 35,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 29,
        "edge": "ratehawk",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "ratehawk": 85,
        "skyscanner": 56,
        "weight": 13
      },
      {
        "by": 19,
        "edge": "ratehawk",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "ratehawk": 69,
        "skyscanner": 50,
        "weight": 13
      },
      {
        "by": 7,
        "edge": "skyscanner",
        "key": "security",
        "name": "Security \u0026 auth",
        "ratehawk": 41,
        "skyscanner": 48,
        "weight": 14
      },
      {
        "by": 15,
        "edge": "skyscanner",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "ratehawk": 10,
        "skyscanner": 25,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 5,
        "edge": "ratehawk",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "ratehawk": 65,
        "skyscanner": 60,
        "weight": 7
      },
      {
        "by": 4,
        "edge": "ratehawk",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "ratehawk": 56,
        "skyscanner": 52,
        "weight": 7
      }
    ],
    "summary": "ETG API (RateHawk) scores 53 (D) on agent readiness against Skyscanner Travel APIs's 45.6 (E), and leads in 5 of 7 scored categories. Skyscanner Travel APIs leads on security \u0026 auth and payments \u0026 pricing. Both do travel stays.",
    "verdicts": {
      "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.",
      "skyscanner": "Thirteen documented search APIs cover flights, hotels and car hire behind one `x-api-key` header, with default rate limits published per endpoint and no usage fee. Access needs an approved application, an audience above 100,000 monthly users and a commercial agreement, and the usage guidelines bar live-price calls made without a user action. Booking happens on supplier sites."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/ratehawk-vs-skyscanner",
    "json": "https://www.anchorterminal.com/compare/ratehawk-vs-skyscanner.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/ratehawk-vs-skyscanner.md",
    "slim": "https://www.anchorterminal.com/compare/ratehawk-vs-skyscanner.min.md"
  },
  "markdown": "ETG API (RateHawk) scores 53 (D) on agent readiness against Skyscanner Travel APIs's 45.6 (E), and leads in 5 of 7 scored categories. Skyscanner Travel APIs leads on security \u0026 auth and payments \u0026 pricing. Both do travel stays.\n\n- ETG API (RateHawk): grade D, 53/100, rank #554 of 722. Markdown https://www.anchorterminal.com/tools/ratehawk.md · JSON https://www.anchorterminal.com/api/v1/tools/ratehawk.json\n- Skyscanner Travel APIs: grade E, 45.6/100, rank #655 of 722. Markdown https://www.anchorterminal.com/tools/skyscanner.md · JSON https://www.anchorterminal.com/api/v1/tools/skyscanner.json\n\n## Which one, for what\n\n### ETG API (RateHawk) (D)\n\nGood for: A travel company with an ETG contract that wants wholesale hotel rates behind its agent, with a documented sandbox for the build.\n\nAhead on:\n- Reliability, 45 against 35\n- Schema \u0026 documentation, 85 against 56\n- Agent ergonomics, 69 against 50\n- Maintenance \u0026 community, 65 against 60\n\nWatch 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\n\n### Skyscanner Travel APIs (E)\n\nGood for: An established travel site or app with a large audience that wants metasearch prices across flights, hotels and car hire and is content to send users to suppliers to book.\n\nAhead on:\n- Security \u0026 auth, 48 against 41\n- Payments \u0026 pricing, 25 against 10\n\nWatch for: Keys are issued only after an application review and a commercial agreement, with a stated minimum of 100,000 monthly active users\n\n\n## Score by category\n\n| Category | Weight | ETG API (RateHawk) | Skyscanner Travel APIs | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 45 | 35 | ETG API (RateHawk) +10 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 85 | 56 | ETG API (RateHawk) +29 |\n| Agent ergonomics | 13% (16.2 this run) | 69 | 50 | ETG API (RateHawk) +19 |\n| Security \u0026 auth | 14% (17.5 this run) | 41 | 48 | Skyscanner Travel APIs +7 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 25 | Skyscanner Travel APIs +15 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 65 | 60 | ETG API (RateHawk) +5 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 56 | 52 | ETG API (RateHawk) +4 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **53 · D** | **45.6 · E** | |\n\n## Facts side by side\n\n| Fact | ETG API (RateHawk) | Skyscanner Travel APIs |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Emerging Travel Group | Skyscanner Limited |\n| Hosted endpoint | `https://api.ratehawk.com` | `https://partners.api.skyscanner.net` |\n| Transports | HTTP | HTTP |\n| Auth | API key | API key |\n| Pricing | Your plan | Free |\n| x402 | no | no |\n| Licence | Proprietary service under a signed partner agreement that is not published. The Python and PHP SDKs on GitHub are MIT | Proprietary service. The API terms are in the partner contract and are not public |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2026-10-05 | 2026-10-01 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | 2026-05-08 | no date given |\n| Customer content may train models |  | yes |\n| Terms restrict automated access |  |  |\n| Terms restrict benchmarking |  |  |\n| Terms or service can change without notice |  |  |\n| Arbitration or class-action waiver |  |  |\n| Popularity | 9 stars, 12 PyPI/wk | none |\n\n## Verdicts\n\n**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.\n\n**Skyscanner Travel APIs.** Thirteen documented search APIs cover flights, hotels and car hire behind one `x-api-key` header, with default rate limits published per endpoint and no usage fee. Access needs an approved application, an audience above 100,000 monthly users and a commercial agreement, and the usage guidelines bar live-price calls made without a user action. Booking happens on supplier sites.\n\n## Before you call either\n\n### ETG API (RateHawk)\n\n1. Call `/api/b2b/v3/overview/` first. It lists the endpoints the key may use and each one's request limit.\n2. Keep sandbox IDs, keys and hashes inside `api-sandbox.ratehawk.com`. Sandbox region IDs are limited to 2011, 2395, 2734 and 6053839.\n3. Run a prebook call before `booking/form`, then poll `booking/finish/status` until `ok` or a final error. Treat `timeout`, `unknown` and 5xx as still in progress.\n4. Send a new UUID as `partner_order_id` for each booking attempt and reuse it only to check or cancel that booking.\n5. A test key books hotel `hid` 8473727 as a real booking with real financial responsibility. Cancel it afterwards.\n\n### Skyscanner Travel APIs\n\n1. Send the key in the `x-api-key` header on every call to `https://partners.api.skyscanner.net`. CORS is not supported, so call from a server\n2. Create a live search only when a user has given origin, destination and exact dates. Use the indicative price endpoints for open-ended questions\n3. Poll `/search/poll/{sessionToken}` until `status` is `RESULT_STATUS_COMPLETE`, and replace earlier results only when `action` is `RESULT_ACTION_REPLACED`\n4. Start a new session when a poll returns 400. Flight session tokens last about an hour and hotel sessions at most 15 minutes\n5. Pass each `deepLink` to the traveller unchanged, since altered encoding breaks Impact tracking, and never put personal data in `subid2`\n\n## Questions\n\n### Which is better for AI agents, ETG API (RateHawk) or Skyscanner Travel APIs?\n\nETG API (RateHawk) scores 53 (D) on agent readiness against Skyscanner Travel APIs's 45.6 (E), and leads in 5 of 7 scored categories. Skyscanner Travel APIs leads on security \u0026 auth and payments \u0026 pricing.\n\n### Do ETG API (RateHawk) and Skyscanner Travel APIs need an API key?\n\nBoth need an API key.\n\n### Can an agent call ETG API (RateHawk) and Skyscanner Travel APIs without installing anything?\n\nYes. ETG API (RateHawk) has a hosted endpoint at https://api.ratehawk.com and Skyscanner Travel APIs at https://partners.api.skyscanner.net.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/ratehawk-vs-skyscanner.json, and with the fewest tokens: https://www.anchorterminal.com/compare/ratehawk-vs-skyscanner.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"ratehawk\", \"b\": \"skyscanner\"}`. From a terminal: `anchor compare ratehawk skyscanner`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/ratehawk.json and https://www.anchorterminal.com/api/v1/tools/skyscanner.json\n\n## Other comparisons with ETG API (RateHawk) or Skyscanner Travel APIs\n\n- [Booking.com Demand API vs ETG API (RateHawk)](https://www.anchorterminal.com/compare/booking-demand-api-vs-ratehawk.md)\n- [Booking.com Demand API vs Skyscanner Travel APIs](https://www.anchorterminal.com/compare/booking-demand-api-vs-skyscanner.md)\n- [Duffel Flights and Stays API vs ETG API (RateHawk)](https://www.anchorterminal.com/compare/duffel-vs-ratehawk.md)\n- [Expedia Group Rapid API vs ETG API (RateHawk)](https://www.anchorterminal.com/compare/expedia-rapid-vs-ratehawk.md)\n- [Expedia Group Rapid API vs Skyscanner Travel APIs](https://www.anchorterminal.com/compare/expedia-rapid-vs-skyscanner.md)\n- [Hotelbeds Hotel Booking API vs ETG API (RateHawk)](https://www.anchorterminal.com/compare/hotelbeds-vs-ratehawk.md)\n- [Hotelbeds Hotel Booking API vs Skyscanner Travel APIs](https://www.anchorterminal.com/compare/hotelbeds-vs-skyscanner.md)\n- [LetsFG vs ETG API (RateHawk)](https://www.anchorterminal.com/compare/letsfg-vs-ratehawk.md)\n- [LiteAPI (Nuitee Connect) vs ETG API (RateHawk)](https://www.anchorterminal.com/compare/liteapi-vs-ratehawk.md)\n- [LiteAPI (Nuitee Connect) vs Skyscanner Travel APIs](https://www.anchorterminal.com/compare/liteapi-vs-skyscanner.md)\n- [ETG API (RateHawk) vs Travelport TripServices APIs](https://www.anchorterminal.com/compare/ratehawk-vs-travelport.md)\n- [Duffel Flights and Stays API vs Skyscanner Travel APIs](https://www.anchorterminal.com/compare/duffel-vs-skyscanner.md)\n- [FlightClaw vs Skyscanner Travel APIs](https://www.anchorterminal.com/compare/flightclaw-vs-skyscanner.md)\n- [Kiwi.com MCP Server vs Skyscanner Travel APIs](https://www.anchorterminal.com/compare/kiwi-mcp-vs-skyscanner.md)\n- [LetsFG vs Skyscanner Travel APIs](https://www.anchorterminal.com/compare/letsfg-vs-skyscanner.md)\n- [Skyscanner Travel APIs vs Travelport TripServices APIs](https://www.anchorterminal.com/compare/skyscanner-vs-travelport.md)\n- [FlightClaw vs ETG API (RateHawk)](https://www.anchorterminal.com/compare/flightclaw-vs-ratehawk.md)\n- [Kiwi.com MCP Server vs ETG API (RateHawk)](https://www.anchorterminal.com/compare/kiwi-mcp-vs-ratehawk.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "ETG API (RateHawk) vs Skyscanner Travel APIs",
        "url": ""
      }
    ],
    "description": "ETG API (RateHawk) scores 53 (D) on agent readiness against Skyscanner Travel APIs's 45.6 (E), and leads in 5 of 7 scored categories. Skyscanner Travel APIs leads on security \u0026 auth and payments \u0026 pricing. Both do travel stays. Category scores, facts, verdicts and agent notes…",
    "facts": [
      "ETG API (RateHawk) D 53",
      "Skyscanner Travel APIs E 45.6",
      "scores"
    ],
    "h1": "ETG API (RateHawk) vs Skyscanner Travel APIs",
    "image": "https://www.anchorterminal.com/assets/og/compare-ratehawk-vs-skyscanner.png",
    "path": "/compare/ratehawk-vs-skyscanner",
    "published": "2026-10-01",
    "section": "tools",
    "title": "ETG API (RateHawk) vs Skyscanner Travel APIs for AI agents",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/ratehawk-vs-skyscanner"
  },
  "tokens": {
    "markdown": 2450,
    "slim": 630
  },
  "version": 1
}
