---
title: "Get Countries with Regions"
method: GET
path: "/v1/countries"
tags: ["Reference Data", "Companies", "v1"]
---

# Get Countries with Regions

`GET /v1/countries`

Returns the full list of countries with their administrative regions.

Credit Note: This endpoint does not consume credits.

:::info
Requires the `companies:read` OAuth2 scope.
:::

## Query parameters

- `account_id` string, required

## Response `200`

Countries with their administrative regions

- object
  - `data` CountryV1[], required
    - `type` 'country', required — The type of the object
    - `id` string, required — ISO-3166-1 alpha-2 country code.
    - `attributes` object, required
      - `code` string, required — ISO-3166-1 alpha-2 country code.
      - `name` string, required — Country name.
      - `regions` object[], required — Administrative regions for the country, sorted by `code`. Empty if no regions are tracked for the country.
        - `code` string, required — Region code. For European countries the NUTS1-3 schema is used (e.g. `AT11`, `DE2`). For countries outside Europe, values comply with ISO 3166-2 using underscores in place of hyphens (e.g. `US_CA`, `US_AK`).
        - `name` string, required — Region name.
  - `meta` object, required
    - `request_id` string, required — A unique identifier assigned to each API request for end-to-end traceability.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized. The request was rejected because the credentials are missing, invalid, expired, or have been revoked. The client must re-authenticate before retrying. Clients can differentiate via the `code` value of the first item in `errors`.
- `403` — Forbidden. The credentials are valid but the caller is not authorized to perform the request — typically because the user lacks the required permission, the OAuth scope is insufficient, the subscription plan does not include the required entitlement, the `account_id` does not belong to the authenticated user, or the target list is read-only and its members cannot be modified. Clients can differentiate via the `code` value of the first item in `errors`.
- `429` — Too many requests. Either the per-second rate limit or the monthly quota configured for the API key / OAuth application has been exceeded. Clients can differentiate via the `code` value of the first item in `errors`.
- `500` — Internal server error
- `503` — Service unavailable
- `504` — Server timeout

---

[API](https://skmtc.dev/leadfeeder/apis/leadfeeder-public-api.md) · [All operations](https://skmtc.dev/leadfeeder/apis/leadfeeder-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/leadfeeder/leadfeeder-public-api/revisions/3b95d5a53148/schema)
