Query UK planning applications
without scraping 400 council websites.

Council registers run on different software and describe the same decision in different words. PlanningTrack collects them and returns one JSON format, with a link back to every council record.

Free key: 500 requests a month, available now. Pro API at £150 a month is in preview.

  • DecisionGrant of conditional permissionreturns approved
  • Received14/05/2026returns 2026-05-14
  • DecisionApplication Permittedreturns approved
  • StatusPending Considerationreturns pending
  • DecisionREFUSEreturns refused
  • ReceivedThu 14 May 2026returns 2026-05-14
  • DecisionWithdrawn by applicantreturns withdrawn
  • StatusAwaiting decisionreturns pending
  • DecisionGranted subject to conditionsreturns approved
  • Received14-May-26returns 2026-05-14
  • DecisionPrior approval not requiredreturns other
  • DecisionRefusal of planning permissionreturns refused
  • StatusRegisteredreturns pending
  • DecisionApprove with conditionsreturns approved
Typical council wording. The original text stays in status; lifecycle and outcome give you fixed values.

Requests for the products
you are building.

Choose a use case to see the request and the fields it returns. Addresses are fictional; field names match the live API.

Add planning history to a property report

Conveyancing, survey and property search providers can list nearby applications for any site. Draw a small box around the property and return every collected application inside it, newest first.

See search parameters

GET /v1/applications?bbox=-1.2601,51.7519,-1.2541,51.7559&limit=20

  1. Single-storey rear extension22 Example Road, Oxford
    approved2026-05-14
  2. Replacement windows and doors9 Sample Street, Oxford
    pending2026-08-02

nextCursor continues to the next page with the same filters.

Collecting planning data
yourself means maintaining all of this.

  • Write a parser for each register software family, plus councils that run their own
  • Handle search forms, session cookies and paged results
  • Pace requests per council and back off when a register slows or blocks
  • Split large date ranges so busy councils return complete results
  • Map hundreds of decision phrases to a consistent outcome
  • Backfill historical applications without duplicates
  • Detect changes to status, dates and documents after submission
  • Fix parsers when a council changes its page layout

With PlanningTrack

One API keyOne record format, one change feed and council source links for every application.
£150a month for Pro API

A month of Pro API costs less than a typical day of contract developer time. A single council layout change can take longer than that to fix.

Each application in
one consistent record.

The same fields for every council, with null where a source does not publish a value. Documents and timeline events have their own endpoints.

{  "id": "app_7Kq2xV9…",  "authorityName": "Oxford City Council",  "reference": "26/01234/FUL",  "proposal": "Erection of a single-storey rear extension",  "address": "24 Example Road, Oxford, OX1",  "status": "Grant of conditional permission",  "lifecycle": "decided",  "outcome": "approved",  "receivedDate": "2026-03-12",  "decisionDate": "2026-05-14",  "latitude": 51.7539,  "longitude": -1.2571,  "lastCheckedAt": "2026-10-13T06:12:40Z",  "sourceUrl": "https://…/applicationDetails.do?…"}
  1. Council wording, kept and classifiedstatuslifecycleoutcome

    The original wording stays in status. lifecycle and outcome use fixed values you can filter and count.

  2. ISO datesreceivedDatedecisionDate

    Received and decision dates use YYYY-MM-DD. A date is null when the council record did not provide it.

  3. Coordinates when the source has themlatitudelongitude

    Coordinates come from the council source. They are null rather than guessed.

  4. When we last checkedlastCheckedAt

    The time of our latest collection check. The council may have newer information.

  5. Link to the council recordsourceUrl

    Every application links to its council page, so your users can check documents and comments at source.

Keep your copy up to date
with the change feed.

Don’t re-download everything to find what changed. Read new and updated applications in order and resume from your last checkpoint.

  1. 1

    Load existing applications

    Page through /v1/applications with a cursor to build your starting copy for the councils you need.

  2. 2

    Poll the change feed

    Call /v1/changes on your own schedule. Each event says which application changed, including newly discovered historical records.

  3. 3

    Save your checkpoint

    Store the cursor after processing and skip event IDs you have already applied. A failed run resumes where it stopped.

Check coverage before you build.

We publish collection progress for every council register, including councils that are not searchable yet. These live figures count collected records; historical collection is still running and not every record is searchable yet.

Check coverage by council

Coverage figures are loading or unavailable. Open the coverage page for council-by-council status.

Start free.
Move to Pro when you need volume.

Developer

£0a month

  • 500 requests a month
  • 60 requests a minute
  • All endpoints, including the change feed
  • API keys and usage dashboard
Create a free API key

Available now

Pro API

In preview

£150a month

  • 50,000 requests a month
  • 300 requests a minute
  • Everything in Developer
  • Monthly billing
Start with a free key

Subscriptions are not open yet. Allowance shown is a draft.

Questions about the API

What can I do with the free key today?

Verified developer accounts get 500 successful requests per calendar month at up to 60 requests per minute. That covers search, application details, documents, timelines, authorities, coverage and the change feed.

When can I subscribe to Pro?

Pro API at £150 a month is in preview and subscriptions are not open yet. The allowance shown on this page is a draft. Create a free key now to build and test your integration.

Does the API cover every council?

Not yet. We have identified every UK planning authority and are adding council registers in stages. Some councils have recent applications before their historical records are complete. Check coverage for each council before you depend on it.

How current is the data?

Each application includes lastCheckedAt, the time of our latest collection check. Update frequency varies by council. Councils can publish changes between checks, so link users to sourceUrl for the latest council record.

What counts as a request?

Each successful call to an API endpoint counts as one request, including each page of search results. Failed requests do not count towards your allowance.

Make your first request today.

Create a developer account, copy your key and search applications with one HTTP request.

curl "https://api.planningtrack.co.uk/v1/applications?q=extension" \
  -H "Authorization: Bearer $PLANNINGTRACK_KEY"