Home

Pitchup

How to get Pitchup with the API

Scrape Pitchup.com campsite search results - names, bookable flags, lead prices with currency, ratings, and location hierarchy for arrive/depart dates. pitchup.com is one page of it. A run reads that public list and saves one row per result.

Set up the Apify actor

Apify is where this run is collected. An actor is the program that collects the rows. A task is that program saved with your settings, so the next section can ask for the latest rows. You need a free Apify account.

  1. 01
    Open Pitchup and click Try for free. Create an Apify account if you do not have one. The Free plan does not ask for a card.
  2. 02
    You are on the input form. Keep the sample for this first run.
    {
        "query": "Cornwall",
        "adults": 2,
        "maxItems": 5
    }
  3. 03
    Leave the proxy setting as it is. Click Start and wait until the run says Succeeded.
  4. 04
    Open Storage, then Dataset. You should see name, slug, url, bookable.
  5. 05
    When you want the real list, raise maxItems. The sample cap is only there so the first run stays small.
  6. 06
    Go back to the input and choose Save as a new task. Name it after this list.
  7. 07
    Open the task. Copy the task ID from the address bar. Excel, Sheets, Power BI, and the other guides ask for this ID.
  8. 08
    On the task, open Schedules and add a weekly run if you want fresh rows. Each run pays the start charge and the charge for the rows. The amounts are in the price list on this page.
  9. 09
    Open Settings, then API & Integrations, and copy an API token. Excel, Sheets, and the other guides put this token in a download link. Anyone with that link can download the rows, so treat it like a password.

How to set up with the API

  1. 01
    Use the API token from Set up the Apify actor, above.
  2. 02
    Send this request. Replace YOUR_TOKEN. It waits up to 120 seconds.
    curl -X POST "https://api.apify.com/v2/acts/bakos_bence~pitchup-availability/runs?token=YOUR_TOKEN&waitForFinish=120" \
      -H "Content-Type: application/json" \
      -d '{ "query": "Cornwall", "adults": 2, "maxItems": 5 }'
  3. 03
    From the response, copy defaultDatasetId.
  4. 04
    Fetch the rows. Replace DATASET_ID and YOUR_TOKEN.
    https://api.apify.com/v2/datasets/DATASET_ID/items?format=json&clean=true&token=YOUR_TOKEN
  5. 05
    To repeat it, use the task and the weekly schedule from Set up the Apify actor, above. A scheduled task's newest rows are this URL, with your task id and token:
    https://api.apify.com/v2/actor-tasks/TASK_ID/runs/last/dataset/items?format=json&clean=true&status=SUCCEEDED&token=YOUR_TOKEN
  6. 06
    Anyone with a URL that contains the token can read the rows.

Schema

Examples come from the actor sample, not a live result.

NameDescriptionExample
nameNameMonkey Tree Holiday Park
slugSlugmonkey-tree-holiday-park
urlUrlhttps://www.pitchup.com/campsites/England/South_West/Cornwall/Newquay/monkey-tree-holiday-park/
bookableBookabletrue
leadPriceAmountLead Price Amount63
leadPriceCurrencyLead Price CurrencyGBP
ratingRating4.08
hierarchyTextHierarchy TextNewquay, Cornwall, South West England, England
arriveArrive2026-10-04
departDepart2026-10-06
adultsAdults2
scrapedAtScraped At2026-09-24T12:00:00.000Z
  • nameNameMonkey Tree Holiday Park
  • slugSlugmonkey-tree-holiday-park
  • urlUrlhttps://www.pitchup.com/campsites/England/South_West/Cornwall/Newquay/monkey-tree-holiday-park/
  • bookableBookabletrue
  • leadPriceAmountLead Price Amount63
  • leadPriceCurrencyLead Price CurrencyGBP
  • ratingRating4.08
  • hierarchyTextHierarchy TextNewquay, Cornwall, South West England, England
  • arriveArrive2026-10-04
  • departDepart2026-10-06
  • adultsAdults2
  • scrapedAtScraped At2026-09-24T12:00:00.000Z

The same row as JSON

{
  "name": "Monkey Tree Holiday Park",
  "slug": "monkey-tree-holiday-park",
  "url": "https://www.pitchup.com/campsites/England/South_West/Cornwall/Newquay/monkey-tree-holiday-park/",
  "bookable": "true",
  "leadPriceAmount": "63",
  "leadPriceCurrency": "GBP",
  "rating": "4.08",
  "hierarchyText": "Newquay, Cornwall, South West England, England",
  "arrive": "2026-10-04",
  "depart": "2026-10-06",
  "adults": "2",
  "scrapedAt": "2026-09-24T12:00:00.000Z"
}