ScrapeLab API

competitor intelligence data — REST API reference

Authentication

All API requests require an API key passed via the x-api-key header.

Header
x-api-key: sk_your_api_key_here

Contact your account manager to obtain an API key. Keys can be revoked at any time.

Base URL

List competitors

GET /api/data/competitors

Returns all available competitors with their dataset types and periods.

Request
curl /api/data/competitors \
  -H "x-api-key: YOUR_KEY"
Response
{
  "gadventure": {
    "types": ["raw", "beautify"],
    "periods": ["january_2026"]
  },
  "intrepid": {
    "types": ["raw"],
    "periods": ["january_2026"]
  }
}

Get competitor data

GET /api/data/competitors/{competitor}

Returns paginated data rows for a specific competitor dataset.

Query parameters

ParameterTypeDescription
data_typeoptionalstringraw or beautify — defaults to raw
periodoptionalstringe.g. january_2026
pageoptionalintegerPage number, starting from 1
page_sizeoptionalintegerRows per page, 1–1000 — defaults to 100
Request
curl "/api/data/competitors/gadventure?data_type=raw&period=january_2026&page=1&page_size=3" \
  -H "x-api-key: YOUR_KEY"
Response
{
  "competitor": "gadventure",
  "data_type": "raw",
  "period": "january_2026",
  "columns": ["date", "itineraryName", "priceBase", "..."],
  "total_rows": 91362,
  "page": 1,
  "page_size": 3,
  "data": [
    {
      "date": "Feb 7, 2026 - Mar 5, 2026",
      "itineraryName": "27 Days in Southeast Asia",
      "priceBase": 2389.0,
      "..."
    }
  ]
}

Get columns

GET /api/data/competitors/{competitor}/columns

Returns the list of available columns for a competitor dataset.

Query parameters

ParameterTypeDescription
data_typeoptionalstringraw or beautify
periodoptionalstringe.g. january_2026
Request
curl "/api/data/competitors/gadventure/columns?data_type=raw" \
  -H "x-api-key: YOUR_KEY"
Response
{
  "competitor": "gadventure",
  "data_type": "raw",
  "columns": [
    "date",
    "itineraryName",
    "itineraryType",
    "priceBase",
    "priceDiscounted",
    "spacesLeft",
    "url",
    "zItineraryStatus"
  ]
}