---
title: "Queue an individual application refresh"
method: POST
path: "/v1/applications/{id}/refresh"
tags: ["Applications"]
---

# Queue an individual application refresh

`POST /v1/applications/{id}/refresh`

## Request

- Base URL: `https://api.planwire.io`
- URL: `https://api.planwire.io/v1/applications/{id}/refresh`
- Auth: API key in header `X-API-Key`

Paid plans, including Developer, can queue a source check for a stored application. No request body is required. Supported routes are active, live IDOX council detail routes and Stratford-on-Avon's native application detail route; unsupported routes return 409. A 202 response confirms queue acceptance, not source-check completion. Pending/running requests are deduplicated per application across callers. After a recent request, including a failed attempt, new requests are subject to a one-hour cooldown; pending/running work is reused first. Refresh POSTs, including authenticated duplicate/cooldown requests, and subsequent GETs consume the normal API allowance. The background council check is not an additional customer request. The server scheduler checks queued work every minute with bounded sequential processing, but source health holds and load can delay or prevent completion; no one-minute completion guarantee applies. Failed checks are retained, not automatically retried by the individual endpoint. Save the prior freshness fields, then read the application again: a newer recordCheckedAt confirms success, a newer recordCheckFailedAt records failure, and unchanged timestamps do not establish completion. Use the batch endpoints when queue progress and per-reference outcomes are required. Initial refresh enriches status/decision for undecided records and preserves known decisions; it does not refresh documents or reconstruct full stage history.

## Path parameters

- `id` string, uuid, required

## Response `202`

Queued or already pending/running. No source result is implied.

- ApplicationRefreshAccepted
  - `data` object, required
    - `id` string, uuid, required: Queue entry ID, not an application ID. No public queue-status endpoint is available in this release.
    - `status` 'pending' | 'running', required
    - `createdAt` string, date-time, required
    - `applicationId` string, uuid, required
    - `alreadyQueued` boolean, required: True when pending/running work is reused rather than submitting another council check.

## Other responses

- `400`: Invalid application UUID.
- `401`: Missing or invalid API key.
- `402`: Paid plan required. Free allowance is unchanged.
- `404`: No stored application with this ID.
- `409`: refresh_unsupported for an unsupported detail route, or refresh_unavailable for an inactive/unavailable council.
- `429`: Refresh cooldown or ordinary API quota/burst limit. Inspect code and Retry-After; not every 429 is refresh_cooldown.
- `503`: refresh_unavailable when disabled, or temporarily_unavailable for a transient queue conflict.

---

[API](https://skmtc.dev/planwire/apis/planwire-uk-planning-data-infrastructure-api.md) · [All operations](https://skmtc.dev/planwire/apis/planwire-uk-planning-data-infrastructure-api/llms.txt) · [OpenAPI document](https://skmtc.dev/planwire/apis/planwire-uk-planning-data-infrastructure-api/revisions/4ccb7f811da9?raw)
