{
  "openapi": "3.1.0",
  "info": {
    "title": "Insurers Global API",
    "version": "2026-09-02+b4c86679e80b",
    "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/"
    }
  },
  "servers": [
    {
      "url": "https://insurers.global/api/v1"
    }
  ],
  "paths": {
    "/meta.json": {
      "get": {
        "operationId": "getMeta",
        "summary": "Dataset metadata, endpoint list and vocabularies",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/countries.json": {
      "get": {
        "operationId": "listCountries",
        "summary": "All covered countries with regulator and counts",
        "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/Country"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/countries/{slug}.json": {
      "get": {
        "operationId": "getCountry",
        "summary": "One country including its full insurer list",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "description": "Country slug",
            "schema": {
              "type": "string",
              "pattern": "^[a-z0-9-]+$"
            },
            "example": "kenya"
          }
        ],
        "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": {
                      "$ref": "#/components/schemas/Country"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/insurers.json": {
      "get": {
        "operationId": "listInsurers",
        "summary": "All licensed insurers (886 rows)",
        "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/Insurer"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/insurers/{slug}.json": {
      "get": {
        "operationId": "getInsurer",
        "summary": "One insurer with regulator detail and group siblings",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "description": "Insurer slug",
            "schema": {
              "type": "string",
              "pattern": "^[a-z0-9-]+$"
            },
            "example": "kenya-britam-life-assurance"
          }
        ],
        "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": {
                      "$ref": "#/components/schemas/Insurer"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/groups.json": {
      "get": {
        "operationId": "listGroups",
        "summary": "Multi-country insurance groups",
        "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/Group"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/groups/{slug}.json": {
      "get": {
        "operationId": "getGroup",
        "summary": "One group with its countries and entities",
        "parameters": [
          {
            "name": "slug",
            "in": "path",
            "required": true,
            "description": "Group slug",
            "schema": {
              "type": "string",
              "pattern": "^[a-z0-9-]+$"
            },
            "example": "sanlam-allianz"
          }
        ],
        "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": {
                      "$ref": "#/components/schemas/Group"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/regulators.json": {
      "get": {
        "operationId": "listRegulators",
        "summary": "Insurance supervisory authority per country",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/search-index.json": {
      "get": {
        "operationId": "getSearchIndex",
        "summary": "Compact [name, type, slug, country] tuples for client-side search",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "array",
                    "minItems": 4,
                    "maxItems": 4
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Insurer": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer"
          },
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "country": {
            "type": "string",
            "description": "Country slug"
          },
          "countryName": {
            "type": "string"
          },
          "countryIso2": {
            "type": "string"
          },
          "region": {
            "type": "string",
            "description": "Region slug"
          },
          "class": {
            "type": "string",
            "description": "Class of business slug"
          },
          "classCode": {
            "type": "string",
            "enum": [
              "G",
              "L",
              "C",
              "R",
              "T",
              "M",
              "X",
              "F",
              "H"
            ]
          },
          "group": {
            "type": "string",
            "description": "Parent / group name, \"Independent\" if none"
          },
          "groupSlug": {
            "type": [
              "string",
              "null"
            ]
          },
          "groupType": {
            "type": "string"
          },
          "groupTypeCode": {
            "type": "string",
            "enum": [
              "DO",
              "PA",
              "FM",
              "SO",
              "MU",
              "RG"
            ]
          },
          "regulator": {
            "type": "string"
          },
          "regulatorAcronym": {
            "type": "string"
          },
          "currency": {
            "type": "string",
            "description": "ISO 4217"
          },
          "sourceBasis": {
            "type": "string"
          },
          "notes": {
            "type": [
              "string",
              "null"
            ]
          },
          "verification": {
            "type": "string",
            "enum": [
              "verified",
              "partial",
              "unverified"
            ]
          },
          "url": {
            "type": "string",
            "format": "uri"
          }
        },
        "required": [
          "slug",
          "name",
          "country",
          "class",
          "classCode",
          "regulatorAcronym",
          "verification"
        ]
      },
      "Country": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "iso2": {
            "type": "string"
          },
          "iso3": {
            "type": "string"
          },
          "isoNum": {
            "type": "string"
          },
          "region": {
            "type": "string"
          },
          "regulator": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string"
              },
              "acronym": {
                "type": "string"
              },
              "website": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "uri"
              },
              "regime": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "registerSource": {
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          },
          "currency": {
            "type": "string"
          },
          "total": {
            "type": "integer"
          },
          "byClass": {
            "type": "object",
            "additionalProperties": {
              "type": "integer"
            }
          },
          "byGroupType": {
            "type": "object",
            "additionalProperties": {
              "type": "integer"
            }
          },
          "verification": {
            "type": "object",
            "properties": {
              "level": {
                "type": "string",
                "enum": [
                  "verified",
                  "partial",
                  "unverified"
                ]
              },
              "status": {
                "type": "string"
              },
              "source": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "corrections": {
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          },
          "marketNotes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "event": {
                  "type": "string"
                },
                "effect": {
                  "type": [
                    "string",
                    "null"
                  ]
                }
              }
            }
          },
          "url": {
            "type": "string",
            "format": "uri"
          },
          "api": {
            "type": "string",
            "format": "uri"
          }
        }
      },
      "Regulator": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "acronym": {
            "type": "string"
          },
          "website": {
            "type": [
              "string",
              "null"
            ],
            "format": "uri"
          },
          "regime": {
            "type": [
              "string",
              "null"
            ]
          },
          "registerSource": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "Group": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "homeMarket": {
            "type": [
              "string",
              "null"
            ]
          },
          "type": {
            "type": "string"
          },
          "countries": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "insurers": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "entityCount": {
            "type": "integer"
          },
          "countryCount": {
            "type": "integer"
          },
          "url": {
            "type": "string",
            "format": "uri"
          }
        }
      }
    }
  }
}