Documentation menu
Endpoints
Get an application
/api/v1/applications/:idFetch one application by its id.
Returns one application. Use it to refresh an application you stored earlier, for example to see whether it has been decided.
Uses one record, or none if you already received this application this period. If two records for the same application are ever combined, the old id keeps working and returns the surviving record, whose id may differ: store the id from the response.
- Access: All plans, including the free demo.
- Records: one per application returned, free if already returned this period. See records and allowances.
- MCP: the
get_applicationtool calls this endpoint. See MCP for developers.
Parameters
| Parameter | Type | Description |
|---|---|---|
id(path)required | string | Application id (pa_...), as returned by a list response.404 not_found if no application has this id. |
Example request
curl "https://planningsignal.co.uk/api/v1/applications/pa_3kTq9ZxV1bN7cR2mW8yLpA" \
-H "Authorization: Bearer ps_live_your_key_here"Example response
Shown with the fields a Pro, Leads or National key receives. A demo or Starter key receives the same record without the agent fields, applicant_company and conditions_url.
{
"data": {
"id": "pa_3kTq9ZxV1bN7cR2mW8yLpA",
"reference": "2026/4417/P",
"authority": "Camden",
"address": "14 Fitzjohn's Avenue, London",
"postcode": "NW3 5NA",
"description": "Erection of a single storey rear extension and loft conversion with rear dormer.",
"app_type": "Full",
"app_state": "Undecided",
"decision": null,
"start_date": "2026-09-14",
"decided_date": null,
"lat": 51.5512,
"lng": -0.1765,
"url": "https://planning.example-council.gov.uk/application/2026-4417-P",
"docs_url": null,
"case_officer": "J. Patel",
"attribution": null,
"agent_name": "Sarah Holt",
"agent_company": "Holt Architecture Ltd",
"agent_address": "2 Example Mews, London NW1 8AA",
"agent_email": "studio@holt-architecture.example",
"agent_phone": "020 7946 0000",
"applicant_company": null,
"conditions_url": "/api/v1/applications/pa_3kTq9ZxV1bN7cR2mW8yLpA/conditions"
}
}Errors
| Status | code | When |
|---|---|---|
| 404 | not_found | No application has this id. |
| 401 | unauthorized | Missing, invalid or revoked key. |
| 429 | rate_limited | Over 60 requests a minute. |
| 429 | records_exhausted | No new record fits in your remaining allowance. |
| 500 | server_error | Something failed on our side. Retry shortly. |
Every error has the same JSON shape: { "error": "...", "code": "..." }, with extra fields on some codes. Full bodies are on rate limits and errors.
Questions? Contact us, or see the help centre.