Gov APIinsolvencydirect.bis.gov.uk ↗
Search and retrieve UK insolvency records — bankruptcies, IVAs, DROs, and restrictions — from the Individual Insolvency Register via a simple REST API.
What is the Gov API?
This API provides access to the UK Individual Insolvency Register (IIR) across 3 endpoints, covering bankruptcies, Individual Voluntary Arrangements (IVAs), Debt Relief Orders (DROs), and bankruptcy restrictions for individuals and sole traders in England and Wales. The search_individual_insolvency_register endpoint accepts a surname or trading name and returns paginated record summaries including name, birth date, postcode, and a detail URL for full case lookup.
curl -X GET 'https://api.parse.bot/scraper/72019f0e-1631-4ca0-a134-ed349bd0c668/search_individual_insolvency_register?page=1&query=Smith' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace insolvencydirect-bis-gov-uk-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.uk_insolvency_records_api_eiir import InsolvencyRegister, RecordSummary, Record, RegisterInfo
client = InsolvencyRegister()
# Get register metadata
info = client.registerinfos.get()
print(info.title, info.coverage, info.retention_period)
# Search for insolvency records by surname
for summary in client.recordsummaries.search(query="Smith"):
print(summary.name, summary.birth_date, summary.postcode)
# Drill into full record details
record = summary.details()
print(record.surname, record.forenames, record.type, record.court, record.status)
break
Full-text search over the Individual Insolvency Register (IIR) by surname or trading name. Returns paginated results (10 per page) including name, date of birth, trading details, postcode, and a detail_url for drilling into full case information. Postcode searches are accepted but may yield zero results.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-based). |
| queryrequired | string | Search term — typically a surname or trading name. |
{
"type": "object",
"fields": {
"page": "integer — current page number",
"query": "string — the search term used",
"records": "array of record summaries with name, detail_url, birth_date, trading_details, postcode",
"total_pages": "integer — total pages available",
"total_records": "integer — total matching records"
},
"sample": {
"data": {
"page": 1,
"query": "Smith",
"records": [
{
"name": "Adam Smith Ferrier",
"postcode": "BN1 6EE",
"birth_date": "24/10/1972",
"detail_url": "https://www.insolvencydirect.bis.gov.uk/eiir/case-details/1/false/704773725/711859978/U21pdGg",
"trading_details": "Adam Smith Ferrier"
}
],
"total_pages": 630,
"total_records": 6291
},
"status": "success"
}
}About the Gov API
What the API covers
The Individual Insolvency Register (IIR) is the public register of insolvency cases for individuals and sole traders in England and Wales, maintained by the Insolvency Service. This API exposes its contents across three endpoints: a register metadata endpoint, a search endpoint, and a record detail endpoint. The get_individual_insolvency_register_info endpoint returns the register's title, geographic coverage, description of included record types, and retention period — useful for displaying context to end users or validating what the register covers before querying.
Searching for records
The search_individual_insolvency_register endpoint takes a required query parameter (typically a surname or trading name, e.g. 'Smith') and an optional page integer for paginated results. The response includes total_records, total_pages, and a records array. Each record in that array carries name, birth_date, postcode, trading_details, and a detail_url that links directly to the full case. Postcode searches are accepted but may return zero results if no IIR records match that postcode.
Retrieving full case details
Passing a detail_url from the search results into get_insolvency_record_detail returns the full case record. Fields include type (e.g. Bankruptcy, IVA, DRO), court, number, status, case_name, forenames, surname, date_of_birth (DD/MM/YYYY), and order_date. This is enough to confirm case identity, insolvency type, issuing court, and current status for a named individual.
Coverage and data scope
Coverage is limited to England and Wales. Scotland and Northern Ireland operate separate registers not included here. Records appear on the register from the date of the insolvency order and are retained according to the retention policy returned by get_individual_insolvency_register_info. Only current and recently discharged cases within that retention window are visible.
The Gov API is a managed, monitored endpoint for insolvencydirect.bis.gov.uk — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when insolvencydirect.bis.gov.uk changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official insolvencydirect.bis.gov.uk API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Screening individuals during credit or tenant onboarding by querying their surname against the IIR
- Verifying sole trader insolvency status using trading name as the search query
- Confirming case type (Bankruptcy vs IVA vs DRO) and court of issue for a known case number
- Checking current case status before extending credit or entering a contract with an individual
- Building compliance dashboards that surface active or recent insolvency flags on named persons
- Displaying register coverage and retention metadata to end users within a financial due-diligence tool
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.