---
title: "Batch resolve firm identifiers"
method: POST
path: "/firms/resolve"
tags: ["Firms"]
---

# Batch resolve firm identifiers

`POST /firms/resolve`

## Request

- Base URL: `https://api.hackforddata.com/v1`
- URL: `https://api.hackforddata.com/v1/firms/resolve`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer
  - HTTP bearer
  - API key in header `Authorization`
  - API key in cookie `sessionid`

Resolve up to 200 external records into Hackford canonical firm identities using deterministic identifier matching.

## Request body

- BatchFirmResolveRequestRequest
  - `records` BatchFirmResolveRecordRequest[], required
    - `client_reference` string, nullable
    - `hackford_id` string, nullable
    - `fca_frn` string, nullable
    - `sec_crd` string, nullable
    - `sec_file` string, nullable
    - `cik` string, nullable
    - `companies_house` string, nullable
    - `lei` string, nullable

## Response `200`

- BatchFirmResolveResponse
  - `count` integer, required
  - `matched_count` integer, required
  - `ambiguous_count` integer, required
  - `unmatched_count` integer, required
  - `invalid_count` integer, required
  - `results` BatchFirmResolveResult[], required
    - `client_reference` string, nullable
    - `match_status` string, required
    - `matched_on` string[], required
    - `hackford_id` string, nullable, required
    - `canonical_url` string, nullable, required
    - `warnings` string[], required

## Other responses

- `400`
- `429`

---

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