API Endpoints

Complete reference for all ScraperCompany API endpoints.

Base URL: https://api.scrapercompany.com
Auth Header: x-api-key: YOUR_API_KEY

Discovery

POST/v1/search

Find a Google property token by hotel name and city. This is your starting point.

Request Body

{
  "name": "Hilton Chicago",
  "city": "Chicago",
  "market": "US",
  "limit": 5
}

Response

{
  "recommended_match": {
    "token": "ChUIoben2Mv6-CYaCi9tLzA3czVwbjQQAQ",
    "name": "Hilton Chicago",
    "name_score": 1.0
  },
  "search_status": "matched"
}

Google SERP

POST/v1/calendar

Get 90-night forward horizon in one ~30KB request. The cheapest endpoint by far.

Request Body

{
  "token": "ChUIoben2Mv6-CYaCi9tLzA3czVwbjQQAQ",
  "days": 90,
  "currency": "USD",
  "market": "US",
  "adults": 2
}
POST/v1/stay

Get rates for a specific check-in/check-out window.

POST/v1/offers

Get per-OTA breakdown with room detail. Samples multi-MB pages (~5 credits).

POST/v1/rooms

Room types by OTA matrix, aligned by normalized signature.

Airbnb

POST/v1/serp/airbnb

Airbnb destination search with listings, prices, filters, and pagination.

Request Body

{
  "q": "Toronto",
  "airbnb_domain": "airbnb.ca",
  "currency": "CAD",
  "check_in_date": "2026-09-10",
  "check_out_date": "2026-09-12",
  "adults": 2
}

OTA Direct

POST/v1/ota/booking/search

Find Booking.com pagename and country by hotel name and city.

POST/v1/ota/booking

Get 61-date calendar from Booking.com GraphQL in ~33KB. Requires browser-minted token.

Request Body

{
  "pagename": "moxy-boston-downtown",
  "country": "us",
  "days": 365,
  "currency": "USD"
}
POST/v1/ota/hotels/search

Find Hotels.com numeric property ID by hotel name and city.

POST/v1/ota/hotels

Get Hotels.com rate for one stay date. Unlike Booking, no calendar endpoint (one call per date).

POST/v1/ota/agoda/search

Find Agoda numeric property ID by hotel name and city.

POST/v1/ota/agoda

Get every Agoda room type with rate plans. No anti-bot gate, per-room ladder included (~0.3s).

POST/v1/ota/compare

Run Booking, Hotels.com, and Agoda concurrently. Fail-soft per source.

GET/v1/ota/sources

Which OTA engines are available on this deployment, their call patterns, and browser requirements.

Official Site

POST/v1/official

Fetch rates from the hotel's own booking engine. Engine is auto-detected (29+ extractors).

Request Body

{
  "url": "https://bookings.example.com/hotel",
  "check_in": "2026-09-14",
  "nights": 1
}
GET/v1/official/engines

List of official-site booking engines that can be extracted, their detection patterns, and cost per query.

Storage & Usage

GET/v1/rates/stored

Query stored rates by property/date with freshness metadata. Reads from PostgreSQL, does not scrape.

GET/v1/storage/status

Database and R2 archive health: safe table counts, retention windows, operational status.

GET/v1/usage

Request counts, errors, bytes, and latency aggregated by endpoint and day.

GET/v1/requests

Filterable request ledger with forward/back paging. Credential-safe, sanitized params only.

GET/v1/requests/{request_id}

Detailed metadata for one request by its opaque ID (returned in x-request-id header).

Async Jobs

POST/v1/jobs

Submit a durable, idempotent batch of up to 50 calendar requests. PostgreSQL-backed queue with optional webhook.

Request Body

{
  "items": [
    {
      "token": "ChUIoben2Mv6-CYaCi9tLzA3czVwbjQQAQ",
      "label": "Competitor A",
      "days": 90,
      "currency": "USD"
    }
  ],
  "priority": 5,
  "callback_url": "https://example.com/webhooks/scrapingme"
}
GET/v1/jobs/{job_id}

Poll job status. Once succeeded/partial/failed, results are available.

Common Parameters

Most endpoints accept these common parameters:

  • token — Google property token from /v1/search
  • currency — ISO 4217 code (USD, EUR, GBP, etc.)
  • market — Market/country (US, MX, AU, GB, etc.)
  • adults — Occupancy (1-8)
  • check_in — Date in YYYY-MM-DD format
  • nights or check_out — Length of stay

Response Format

All endpoints return consistent JSON envelopes with meta, search_parameters, and provenance fields.

Full API Specification: Download our OpenAPI 3.0 spec for complete schemas and examples.

Next Steps