Insurers Global Resolve API

The Resolve API from Insurers Global — 2 operation(s) for resolve.

GitHub OpenAPI

Operations 2

GET /resolve/lei/{lei}.json The insurer(s) carrying one Legal Entity Identifier #
GET /resolve/domain/{host}.json The insurer(s) whose published website is on one host #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/insurers-global:insurers-global-resolve-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

insurers-global-resolve-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Insurers Global Resolve API
  version: 2026-09-08+97f331e66662
  summary: Static, read-only JSON API for the Insurers Global directory of licensed insurance companies.
  description: Every endpoint is a pre-rendered JSON file served from the Cloudflare edge with CORS enabled. There is no authentication and no rate limit beyond normal fair use. Slugs are stable lowercase identifiers used in page URLs. Attribute KAFS North America (Kenbright Actuarial and Financial Services North America) under CC BY 4.0.
  license:
    name: CC BY 4.0
    url: https://creativecommons.org/licenses/by/4.0/
  contact:
    name: Kenbright Actuarial and Financial Services North America
    url: https://www.kenbright.ai/
  termsOfService: https://insurers.global/terms/
  x-mcp:
    endpoint: https://insurers.global/mcp
    transport: streamable-http
    authentication: none
    health: https://insurers.global/mcp/health
    serverCard: https://insurers.global/.well-known/mcp/server-card.json
    configSchema: https://insurers.global/.well-known/mcp-config
servers:
- url: https://insurers.global/api/v1
tags:
- name: Resolve
paths:
  /resolve/lei/{lei}.json:
    get:
      operationId: resolveLei
      summary: The insurer(s) carrying one Legal Entity Identifier
      description: One file per LEI in the register (ISO 17442, 20 characters, exact match); an LEI not in the register is a 404. Usually one row; a few LEIs sit on two rows because the entity holds a licence in two markets.
      parameters:
      - name: lei
        in: path
        required: true
        description: Legal Entity Identifier, 20 upper-case alphanumeric characters
        schema:
          type: string
          pattern: ^[A-Z0-9]{18}[0-9]{2}$
        example: 549300RLAVC923B23203
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  dataset:
                    type: string
                  version:
                    type: string
                  verified:
                    type: string
                    format: date
                  licence:
                    type: string
                  count:
                    type: integer
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResolveMatch'
      tags:
      - Resolve
  /resolve/domain/{host}.json:
    get:
      operationId: resolveDomain
      summary: The insurer(s) whose published website is on one host
      description: 'One file per host in the register: lower case, no scheme, port or path, any leading "www." removed (lahitapiola.fi, not https://www.lahitapiola.fi/). A host not in the register is a 404. Each match says whether the website came from the register or from an accepted Wikidata record.'
      parameters:
      - name: host
        in: path
        required: true
        description: Website host, lower case, without a leading www.
        schema:
          type: string
          pattern: ^[a-z0-9.-]+\.[a-z0-9-]+$
        example: lahitapiola.fi
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  dataset:
                    type: string
                  version:
                    type: string
                  verified:
                    type: string
                    format: date
                  licence:
                    type: string
                  count:
                    type: integer
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/ResolveMatch'
      tags:
      - Resolve
components:
  schemas:
    ResolveMatch:
      type: object
      description: 'An InsurerSummary plus the identifier that matched. matchedBy.source is present for a domain match: "register" when the website is the register''s, "wikidata" when it came from an accepted Wikidata record.'
      allOf:
      - $ref: '#/components/schemas/InsurerSummary'
      properties:
        website:
          type:
          - string
          - 'null'
          format: uri
        countryName:
          type: string
        api:
          type: string
          format: uri
          description: The full record, /insurers/{slug}.json
        matchedBy:
          type: object
          properties:
            key:
              type: string
              enum:
              - lei
              - domain
            value:
              type: string
            source:
              type: string
              enum:
              - register
              - wikidata
    InsurerSummary:
      type: object
      description: Abbreviated register entity retaining verification, source and classification caveats
      properties:
        slug:
          type: string
        name:
          type: string
        country:
          type: string
        class:
          type: string
          description: Class of business slug
        classCode:
          type: string
          enum:
          - G
          - L
          - C
          - R
          - T
          - M
          - X
          - F
          - H
          - U
          description: U = class not stated in the source register
        group:
          type: string
          description: Parent / group text as the register records it. "Independent" when the register records no parent company. Read it as a parent organisation only when groupPlaceholder is false.
        groupSlug:
          type:
          - string
          - 'null'
        groupPlaceholder:
          type: boolean
          description: 'True when group does not name a parent organisation: the register recorded none and the value is an ownership style, a status, a NAIC group code, a domicile or a description of the entity. Absence of a parent is not evidence of independence.'
        groupType:
          type: string
        verification:
          type: string
          enum:
          - verified
          - partial
          - unverified
        sourceBasis:
          type: string
        classBasis:
          type:
          - string
          - 'null'
          description: How the class was determined
        groupBasis:
          type:
          - string
          - 'null'
          description: How the parent or group was determined
        lei:
          type:
          - string
          - 'null'
          description: LEI where the register carries it
        nationalId:
          type:
          - string
          - 'null'
          description: National register identifier if available
        notes:
          type:
          - string
          - 'null'
        url:
          type: string
          format: uri
      required:
      - slug
      - name
      - country
      - class
      - verification
      - sourceBasis
      - classBasis
      - groupBasis
      - lei
      - nationalId
externalDocs:
  description: 'Agent guide: MCP server, WebMCP tools and this API'
  url: https://insurers.global/ai/