# List countries

`GET /client_api/v2/countries`

Every country, with its id for addresses and the labels its customs numbers go by. Needs no token.

Needs no token.

## Parameters

- `q` (string): Only countries whose name contains this text, in any case.

## Returns

Returns a list of countries.

- `countries` (array of objects, required): The countries on this page, by name.
  - `id` (integer, required): The country's id, for an address's `country_id`.
  - `default_postal_code` (object, nullable, required): The postal code we give the carrier for an address in this country that has none.
  - `dhl_export_code` (object, nullable, required): DHL's export code for the country. Usually empty.
  - `dhl_import_code` (object, nullable, required): DHL's import code for the country. Usually empty.
  - `dhl_tax_code` (object, nullable, required): DHL's tax code for the country. Usually empty.
  - `export_code_label` (string, required): What the country calls an exporter number.
  - `import_code_label` (string, required): What the country calls an importer number.
  - `iso_code_2` (string, required): The two-letter ISO code, such as `GB`.
  - `iso_code_3` (string, required): The three-letter ISO code, such as `GBR`.
  - `maximum_duty_rate` (number, required): The highest customs duty rate the country charges, as a fraction.
  - `name` (string, required): The country's name in English.
  - `part_of_eu_union` (boolean, required): `true` for a member of the European Union.
  - `postal_code_required` (boolean, required): `false` for the countries that have no postal codes.
  - `signed_civil_aircraft_agreement` (boolean, required): `true` for a signatory of the WTO Agreement on Trade in Civil Aircraft, an EU member included. Civil aircraft parts cross between signatories duty free.
  - `tax_number_label` (string, required): What the country calls a tax number.
  - `vat_rate` (number, required): The country's standard VAT or sales tax rate, as a fraction. `0.15` is 15%.
- `meta` (object, required): How many pages and records the list has.
  - `page_count` (integer, required): How many pages the list has. Ask for another with `?page=`.
  - `record_count` (integer, required): How many records the list has across all pages.

## Example request (curl)

```bash
curl -X GET "https://sandbox-api.vatit-stream.com/client_api/v2/countries?q=United"
```

## Example response (200)

```json
{
  "countries": [
    {
      "id": 16,
      "default_postal_code": null,
      "dhl_export_code": null,
      "dhl_import_code": null,
      "dhl_tax_code": null,
      "export_code_label": "Export Number",
      "import_code_label": "Importer Code",
      "iso_code_2": "GB",
      "iso_code_3": "GBR",
      "maximum_duty_rate": 0.5,
      "name": "United Kingdom",
      "part_of_eu_union": false,
      "postal_code_required": true,
      "signed_civil_aircraft_agreement": true,
      "tax_number_label": "Tax Number",
      "vat_rate": 0.17
    }
  ],
  "meta": {
    "page_count": 1,
    "record_count": 1
  }
}
```
