---
title: "Resolve up to 1,000 inputs to places"
method: POST
path: "/v1/places/resolve"
tags: ["Places"]
---

# Resolve up to 1,000 inputs to places

`POST /v1/places/resolve`

## Request

- Base URL: `https://api.onegoodarea.com`
- URL: `https://api.onegoodarea.com/v1/places/resolve`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Resolves up to 1000 postcodes, official codes and place ids in one request, each kind in one statement against our own spine, and echoes every input with its outcome in input order. Place names are not resolved in a batch; they return not_found with reason name_not_supported_in_batch and resolve one at a time through GET /v1/places/resolve.

## Request body

- object
  - `inputs` string[], required: Postcodes, official codes and place ids, in any mix. Validated as an array of strings, never coerced.

## Response `200`

Default Response

- object
  - `count` integer, required
  - `resolved` integer, required
  - `ambiguous` integer, required
  - `not_found` integer, required
  - `results` union[], required
    - union
      - object
        - `status` 'resolved', required
        - `input` string, required
        - `place` object, required
          - `place_id` string, required
          - `place_type` 'country' | 'nation' | 'region' | 'district' | 'group' | 'neighbourhood', required
          - `name` string, required
          - `country` string, required
          - `nation` string, required
        - `resolved_via` object, required
          - `kind` 'place_id' | 'postcode' | 'code' | 'name', required
          - `scheme` 'iso3166-1' | 'iso3166-2' | 'ctry' | 'rgn' | 'lad' | 'msoa21' | 'iz2022' | 'lsoa21' | 'dz2022' | 'lsoa11' | 'dz2011' | 'iz2011', required
          - `value` string, required
        - `postcode` object, required
          - `postcode` string, required
          - `status` 'live' | 'terminated', required
          - `terminated_on` string, required
      - object
        - `status` 'ambiguous', required
        - `input` string, required
        - `candidates` object[], required
          - `label` string, required
          - `postcode` string, required
          - `place` object, required
            - `place_id` string, required
            - `place_type` 'country' | 'nation' | 'region' | 'district' | 'group' | 'neighbourhood', required
            - `name` string, required
            - `country` string, required
            - `nation` string, required
      - object
        - `status` 'not_found', required
        - `input` string, required
        - `reason` 'empty_input' | 'input_too_long' | 'invalid_input' | 'invalid_place_id' | 'unknown_place_id' | 'unknown_postcode' | 'unknown_code' | 'nation_not_covered' | 'name_not_found' | 'name_not_supported_in_batch', required
        - `message` string, required
  - `meta` object, required
    - `engine_version` string, required
    - `generated_at` string, required

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `404`: Default Response
- `429`: Default Response
- `500`: Default Response

---

[API](https://skmtc.dev/onegoodarea/apis/onegoodarea-api.md) · [All operations](https://skmtc.dev/onegoodarea/apis/onegoodarea-api/llms.txt) · [OpenAPI document](https://skmtc.dev/onegoodarea/apis/onegoodarea-api/revisions/b318d28b3412?raw)
