---
title: "Get supported countries for address"
description: "Retrieve the list of countries supported for recipient addresses in international transfers. Countries with administrative divisions include a `states` array; countries without return an empty array."
protocol: rest
method: GET
endpoint: "/v1/transfer/supported-countries-for-address"
baseUrl: "https://api.gravv.xyz"
group: "Transfer"
auth:
  label: "Api-Key"
  name: "Api-Key"
  in: header
---

# Get supported countries for address

<Endpoint method="GET" path="/v1/transfer/supported-countries-for-address" />

Retrieve the list of countries supported for recipient addresses in international transfers. Countries with administrative divisions include a `states` array; countries without return an empty array.

## Query Parameters

<ParamField name="iso_code" query="iso_code" type="string">
  Filter by two-letter ISO 3166-1 alpha-2 country code (case-insensitive).
</ParamField>

<ParamField name="name" query="name" type="string">
  Filter by country name (case-insensitive partial match).
</ParamField>

## Responses

| Status | Description |
| --- | --- |
| `200` | List of supported countries |
| `400` | Bad request |

### 200 response

<ResponseField name="data" type="object">

  <Expandable title="properties">
    <ResponseField name="countries" type="object[]">
      Array of supported countries.

      <Expandable title="properties">
        <ResponseField name="iso_code" type="string">
          Two-letter ISO 3166-1 alpha-2 country code.
        </ResponseField>

        <ResponseField name="name" type="string">
          Full country name.
        </ResponseField>

        <ResponseField name="states" type="object[]">
          Administrative divisions of the country. Returns an empty array for countries without divisions.

          <Expandable title="properties">
            <ResponseField name="code" type="string">
              State or region code.
            </ResponseField>

            <ResponseField name="name" type="string">
              State or region name.
            </ResponseField>

          </Expandable>
        </ResponseField>

      </Expandable>
    </ResponseField>

  </Expandable>
</ResponseField>

<ResponseField name="error" type="string">
</ResponseField>

<ResponseExample>

```json title="Response"
{
  "data": {
    "countries": [
      {
        "iso_code": "NG",
        "name": "Nigeria",
        "states": [
          {
            "code": "NG-LA",
            "name": "Lagos"
          },
          {
            "code": "NG-FC",
            "name": "Federal Capital Territory"
          }
        ]
      },
      {
        "iso_code": "GH",
        "name": "Ghana",
        "states": [
          {
            "code": "GH-AA",
            "name": "Greater Accra"
          },
          {
            "code": "GH-AH",
            "name": "Ashanti"
          }
        ]
      },
      {
        "iso_code": "US",
        "name": "United States",
        "states": [
          {
            "code": "US-NY",
            "name": "New York"
          },
          {
            "code": "US-CA",
            "name": "California"
          }
        ]
      },
      {
        "iso_code": "CI",
        "name": "Côte d'Ivoire",
        "states": []
      },
      {
        "iso_code": "JP",
        "name": "Japan",
        "states": []
      }
    ]
  },
  "error": null
}
```

</ResponseExample>

### 400 response

<ResponseField name="data" type="null">
</ResponseField>

<ResponseField name="error" type="string">
</ResponseField>

<ResponseExample>

```json title="Response"
{
  "data": null,
  "error": "invalid request payload"
}
```

</ResponseExample>

## Authorization

- **ApiKeyAuth**
