> ## Documentation Index
> Fetch the complete documentation index at: https://docs.openregister.de/llms.txt
> Use this file to discover all available pages before exploring further.

# Insolvency search

## Search insolvency proceedings

Search all German insolvency proceedings — for companies and natural persons — sourced from the official insolvency announcements (Insolvenzbekanntmachungen). Combine a free-text query with structured filters to find exactly the proceedings you care about.

**Cost:** 10 credits per search

### Query and Filters

The free-text `query` matches debtor names, case numbers, administrator names, and courts. Filters narrow results by:

* **Proceeding attributes:** `current_status`, `proceeding_kind` (regular or consumer insolvency), `administration_kind` (external administration, self administration, protective shield), `insolvency_grounds`, `has_open_insolvency`
* **Debtor attributes:** `debtor_kind` (legal or natural person), `debtor_legal_form`
* **Location:** `court`, `city`
* **Dates (`YYYY-MM-DD`, range via `min`/`max`):** `opened_at`, `closed_at`, `last_event_at`, `claims_filing_deadline`
* **Entity links:** `company_id`, `person_id` — resolve a proceeding directly to a company or person in OpenRegister

See the [filtering guide](/filtering#insolvency-search-fields) for the full field list and filter types.

### Use Cases

**Risk Monitoring:** Screen your customer and supplier base for open insolvency proceedings. Filter by `has_open_insolvency = true` and `company_id` to check specific counterparties before extending credit.

**Distressed-Asset Sourcing:** Find newly opened proceedings in your target region or industry by filtering on `opened_at` ranges, `court`, and `proceeding_kind` — a reliable early signal for restructuring and acquisition opportunities.

**Claims Management:** Track `claims_filing_deadline` dates across proceedings you are involved in, so filing windows are never missed.


## OpenAPI

````yaml POST /v1/search/insolvency
openapi: 3.1.0
info:
  title: OpenRegister API
  version: 2.5.0
  description: >
    API for accessing comprehensive company data from official registers.

    This API provides access to company information, shareholder data, financial
    reports, and contact details.
servers:
  - url: https://api.openregister.de
    description: Production
security:
  - BearerAuth: []
paths:
  /v1/search/insolvency:
    post:
      tags:
        - v1
      summary: Search for insolvency proceedings
      operationId: insolvencyFilterSearch
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InsolvencySearchRequest'
        required: true
      responses:
        '200':
          description: Successful search operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InsolvencySearchResponse'
        '400':
          description: Bad Request - Invalid parameters provided
        '401':
          description: Unauthorized - Authentication required
        '402':
          description: Payment Required - Insufficient credits for this request
        '429':
          description: Too Many Requests - Rate limit exceeded
        '500':
          description: >-
            Internal Server Error - An error occurred while processing the
            request
      x-codeSamples:
        - lang: JavaScript
          source: |-
            import Openregister from 'openregister';

            const client = new Openregister({
              apiKey: process.env['OPENREGISTER_API_KEY'], // This is the default and can be omitted
            });

            const response = await client.search.findInsolvenciesV1();

            console.log(response.pagination);
        - lang: Python
          source: |-
            import os
            from openregister import Openregister

            client = Openregister(
                api_key=os.environ.get("OPENREGISTER_API_KEY"),  # This is the default and can be omitted
            )
            response = client.search.find_insolvencies_v1()
            print(response.pagination)
        - lang: Go
          source: "package main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\n\t\"github.com/oregister/openregister-go\"\n\t\"github.com/oregister/openregister-go/option\"\n)\n\nfunc main() {\n\tclient := openregister.NewClient(\n\t\toption.WithAPIKey(\"My API Key\"),\n\t)\n\tresponse, err := client.Search.FindInsolvenciesV1(context.TODO(), openregister.SearchFindInsolvenciesV1Params{})\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\tfmt.Printf(\"%+v\\n\", response.Pagination)\n}\n"
        - lang: CLI
          source: |-
            openregister search find-insolvencies-v1 \
              --api-key 'My API Key'
components:
  schemas:
    InsolvencySearchRequest:
      type: object
      properties:
        query:
          $ref: '#/components/schemas/InsolvencySearchRequestQuery'
          description: |
            Search query to filter insolvency proceedings.
        filters:
          description: |
            Filters to filter insolvency proceedings.
          type: array
          items:
            $ref: '#/components/schemas/InsolvencySearchFilter'
        pagination:
          $ref: '#/components/schemas/SearchRequestPagination'
          description: |
            Pagination parameters.
    InsolvencySearchResponse:
      type: object
      properties:
        results:
          type: array
          description: |
            List of insolvency proceedings matching the search criteria.
          items:
            $ref: '#/components/schemas/InsolvencySearchResponseItem'
        pagination:
          $ref: '#/components/schemas/Pagination'
      required:
        - results
        - pagination
    InsolvencySearchRequestQuery:
      type: object
      properties:
        value:
          type: string
          description: >
            Search query to filter insolvency proceedings.

            Matches against debtor name, case number, administrator name and
            court.
      required:
        - value
    InsolvencySearchFilter:
      allOf:
        - $ref: '#/components/schemas/SearchFilterBase'
        - type: object
          properties:
            field:
              $ref: '#/components/schemas/InsolvencySearchFilterField'
          required:
            - field
    SearchRequestPagination:
      type: object
      properties:
        page:
          type: integer
          description: |
            Page number to return.
        per_page:
          type: integer
          description: |
            Number of results per page.
    InsolvencySearchResponseItem:
      type: object
      properties:
        id:
          type: string
          description: |
            Unique insolvency proceeding identifier.
        debtor_name:
          type: string
          description: |
            Name of the debtor.
            Example: "Max Mustermann GmbH"
        debtor_kind:
          description: |
            Kind of debtor the proceeding concerns.
            Null when the kind is not known.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/InsolvencyDebtorKind'
        debtor_legal_form:
          type: string
          description: |
            Legal form of the debtor, if the debtor is a company.
            Example: "gmbh"
          nullable: true
        case_number:
          type: string
          description: |
            Case number of the proceeding at the insolvency court.
            Example: "36a IN 2792/24"
        court:
          type: string
          description: |
            Insolvency court handling the proceeding.
            Example: "Charlottenburg"
        city:
          type: string
          description: |
            City of the debtor.
            Example: "Berlin"
          nullable: true
        current_status:
          $ref: '#/components/schemas/InsolvencyStatus'
          description: |
            Current status of the proceeding.
        has_open_insolvency:
          type: boolean
          description: |
            Whether the proceeding is currently open.
        proceeding_kind:
          description: |
            Kind of insolvency proceeding.
            Null when the kind is not known.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/InsolvencyProceedingKind'
        administration_kind:
          description: |
            Kind of administration ordered for the proceeding.
            Null when no administration kind is known.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/InsolvencyAdministrationKind'
        insolvency_grounds:
          type: array
          items:
            type: string
          description: |
            Grounds for the insolvency, e.g. "illiquidity", "over_indebtedness".
          nullable: true
        administrator_name:
          description: |
            Name of the insolvency administrator.
          type: string
          nullable: true
        company_id:
          type: string
          description: |
            Unique company identifier of the debtor, if the debtor could be
            matched to a registered company.
            Example: DE-HRB-F1103-267645
          nullable: true
        person_id:
          type: string
          description: |
            Unique person identifier of the debtor, if the debtor could be
            matched to a person.
          nullable: true
        opened_at:
          description: |
            Date the proceeding was opened.
            Format: ISO 8601 (YYYY-MM-DD)
          type: string
          format: date
          nullable: true
        closed_at:
          description: |
            Date the proceeding was closed.
            Format: ISO 8601 (YYYY-MM-DD)
          type: string
          format: date
          nullable: true
        last_event_at:
          type: string
          format: date
          description: |
            Date of the most recent event in the proceeding.
            Format: ISO 8601 (YYYY-MM-DD)
          nullable: true
      required:
        - id
        - debtor_name
        - debtor_kind
        - debtor_legal_form
        - case_number
        - court
        - city
        - current_status
        - has_open_insolvency
        - proceeding_kind
        - administration_kind
        - insolvency_grounds
        - administrator_name
        - company_id
        - person_id
        - opened_at
        - closed_at
        - last_event_at
    Pagination:
      type: object
      properties:
        page:
          type: integer
          description: Current page number.
        per_page:
          type: integer
          description: Number of results per page.
        total_pages:
          type: integer
          description: Total number of pages.
        total_results:
          type: integer
          description: Total number of results.
      required:
        - page
        - per_page
        - total_pages
        - total_results
    SearchFilterBase:
      type: object
      description: >
        Filter by field. The property sets `value`, `values`, `keywords` and
        `min`/`max`

        are mutually exclusive. Dates must be YYYY-MM-DD.
      properties:
        value:
          type: string
        min:
          type: string
        max:
          type: string
        values:
          type: array
          items:
            type: string
        keywords:
          type: array
          items:
            type: string
    InsolvencySearchFilterField:
      type: string
      description: >
        Field of the insolvency proceeding to filter on.

        Date fields (opened_at, closed_at, last_event_at,
        claims_filing_deadline)

        support min/max ranges with values in the format YYYY-MM-DD.
      enum:
        - debtor_kind
        - debtor_legal_form
        - court
        - city
        - current_status
        - has_open_insolvency
        - proceeding_kind
        - administration_kind
        - insolvency_grounds
        - opened_at
        - closed_at
        - last_event_at
        - claims_filing_deadline
        - company_id
        - person_id
    InsolvencyDebtorKind:
      type: string
      description: |
        Kind of debtor the proceeding concerns.
        - legal_person: legal entities (companies, associations, etc.)
        - natural_person: private individuals
      enum:
        - legal_person
        - natural_person
    InsolvencyStatus:
      type: string
      description: |
        Current status of the insolvency proceeding.
      enum:
        - preliminary
        - opened
        - rejected_no_assets
        - mass_insufficient
        - plan_supervised
        - lifted
        - discontinued
        - discharge_pending
        - discharge_granted
        - discharge_denied
        - discharge_revoked
        - unknown
    InsolvencyProceedingKind:
      type: string
      description: |
        Kind of insolvency proceeding.
      enum:
        - regular_insolvency
        - consumer_insolvency
    InsolvencyAdministrationKind:
      type: string
      description: |
        Kind of administration ordered for the proceeding.
      enum:
        - external_administration
        - self_administration
        - protective_shield
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: |
        API Key Authentication
        Provide your API key as a Bearer token in the Authorization header.

````