---
title: "Create an asynchronous application refresh batch"
method: POST
path: "/v1/applications/refresh-batches"
tags: ["Applications"]
---

# Create an asynchronous application refresh batch

`POST /v1/applications/refresh-batches`

## Request

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

Paid customers can submit up to 50,000 council/reference pairs for guarded reconciliation. References are deduplicated, the request requires an Idempotency-Key header, and each API key may have one active batch. Acceptance does not create an immediate source-request burst: the dispatcher admits at most three records per minute into the existing globally bounded refresh queue and continues to respect council health holds, shared-source pacing and per-record cooldowns.

## Headers

- `Idempotency-Key` string, required

## Request body

- object
  - `applications` object[], required
    - `council` string, required: PlanWire council id.
    - `reference` string, required

## Response `200`

Idempotent replay of the same accepted batch.

## Other responses

- `202`: Batch accepted. Use the Location header or returned id to read progress.
- `400`: Invalid batch or missing/invalid Idempotency-Key.
- `401`: Missing or invalid API key.
- `402`: Paid plan required.
- `409`: Idempotency conflict or another batch is already active for this API key.
- `503`: Application refresh is disabled.

---

[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)
