Planning API v1

The Planning API exposes the following API endpoints. Send a GET request to https://api.planning.org.uk/v1/{endpoint} with the required query string parameters and the API will return a JSON response to the request.

Quick Start

  1. Create a unique API key using the /generatekey endpoint
  2. Call the /lpas endpoint to find the lpa_id (s) for required LPAs.
  3. Run unlimited free searches using the /search endpoint.
  4. If you want full data to be returned in the search results, append return_data=1 to the /search endpoint. You will need to first top up your credits using the /topup endpoint.

API Endpoints Reference

/generatekey

Returns a randomly generated API key for a new user.

ParameterData typeRequiredNotes
emailstringyesRequired to receive low credit warnings.

EXAMPLE

GET REQUEST: https://api.planning.org.uk/v1/[email protected]

JSON RESPONSE: { "request": { "api_endpoint": "/generatekey", "ip_address": "999.999.999.999", "datetime": "2023-10-22 20:40:38", "email": "[email protected]" }, "response": { "api_version": "1.0", "status": "OK", "key": "a1b2c3d4e5f6g7h8" } }

/topup

API endpoint response is a redirect to STRIPE payment page for top up of credits for the API key. Alternatively the topup payment links below can also be used.

ParameterData typeRequiredNotes
keystringyesRequired for authentication.
creditsintyesThe number of credits you wish to purchase.

EXAMPLE

GET REQUEST: https://api.planning.org.uk/v1/topup?key=a1b2c3d4e5f6g7h8&credits=1000

CreditsCost / creditCostPayment link
1,000£0.10£100Buy now
2,500£0.09£225Buy now
5,000£0.08£400Buy now
10,000£0.07£700Buy now
25,000£0.06£1,500Buy now
50,000£0.05£2,500Buy now
For larger volume discounts, contact [email protected]

/lpas

Returns a list of available LPA IDs for use in the /search endpoint.

EXAMPLE

GET REQUEST: https://api.planning.org.uk/v1/lpas

JSON RESPONSE: { "request": { "api_endpoint": "/lpas", "ip_address": "999.999.999.999", "datetime": "2023-10-22 20:44:08" }, "response": { "api_version": "1.0", "status": "OK", "data": [ { "id": "1", "name": "bromsgrove", "application_count": "2496" }, ...json truncated.

/search

Returns matching application results. Please ensure you understand the return_data parameter before use.

ParameterData typeRequiredNotes
keystringyesRequired for authentication.
lpa_idstringnoField can accept a single LPA ID or multiple comma separated LPA IDs.
date_fromstringnoFormat: yyyy-mm-dd, matches all applications whose validated date is greater than or equal to given date.
date_tostringnoFormat: yyyy-mm-dd, matches all applications whose validated date is less than or equal to given date.
postcode_exactstringnoExample "GU16 7HF", matches all applications with given exact postcode (with space).
postcode_startstringnoExample "GU16", matches all applications whose postcode start with given string.
postcode_radiusstringnoExample "GU16 7HF,0.5", matches all applications whose postcode are within 0.5 miles of a full postcode. The larger the radius the slower the query.
addressstringnoMatches all applications whose application address contains the given string.
keywordstringnoMatches all applications whose application description contains the given string.
return_dataintnoIf parameter is set to 1, the API will return all matching application data for the search and charge the corresponding number of credits. It is highly recommended that searches are initially run with this parameter set to 0 to understand the volume of responses expected.

EXAMPLE - (return_data=0)

GET REQUEST: https://api.planning.org.uk/v1/search?key=a1b2c3d4e5f6g7h8&lpa_id=2&date_from=2023-10-10&date_to=2023-10-21&return_data=0

JSON RESPONSE: { { "request": { "api_endpoint": "/search", "ip_address": "999.999.999.999", "datetime": "2023-10-22 21:16:42", "key": "a1b2c3d4e5f6g7h8", "date_from": "2023-10-20", "date_to": "2023-10-21", "return_data": "0" }, "response": { "api_version": "1.0", "credits": { "consumed": 0, "remaining": "100" }, "status": "OK", "application_count": 26 } }

EXAMPLE - (return_data=1)

GET REQUEST: https://api.planning.org.uk/v1/search?key=a1b2c3d4e5f6g7h8&lpa_id=2&date_from=2023-10-10&date_to=2023-10-21&return_data=1

JSON RESPONSE: { { "request": { "api_endpoint": "/search", "ip_address": "999.999.999.999", "datetime": "2023-10-22 21:16:42", "key": "a1b2c3d4e5f6g7h8", "date_from": "2023-10-20", "date_to": "2023-10-21", "return_data": "0" }, "response": { "api_version": "1.0", "credits": { "consumed": 26, "remaining": "74 }, "status": "OK", "application_count": 26, "data": [ { "lpa_id": "2", "lpa_name": "chichester", "keyval": "S08U81GYK8S00", "externalLink": "https://publicaccess.bromsgroveandredditch.gov.uk/online-applications/applicationDetails.do?activeTab=summary&keyVal=RX66U0SEIM600", "title": "Two storey rear extension, following demolition of the existing ground floor rear addition.", "address": "21 Church Road Epsom Surrey KT17 4DZ", "postcode": "KT17 4DZ", "lat": "51.333349", "lng": "-0.257361", "validated": "2023-10-10", "applicant_name": "Mr Adrian Bailey", "applicant_address": "21 Church Road Epsom Surrey KT17 4DZ", "agent_name": null, "agent_address": null, "agent_phone": null, "agent_email": null, "docs": "11" },...json truncated