List of countries ISO 3166-1-alpha-3

List of Countries (ISO 3166 Alpha-3)

The /api/enums/ISO3166Alpha3Country endpoint returns a comprehensive list of all countries using the three-letter ISO 3166-1 Alpha-3 code, which is the international standard for representing country names. This endpoint is intended for populating country selection fields in frontend applications, ensuring consistency and compliance with international standards. The response can be used directly in drop-down menus, forms, and any other UI elements where a country selection is required.

Endpoint

GET /api/enums/ISO3166Alpha3Country

Authentication

Bearer token required. Obtain via:

POST https://api.banking.netevia.dev/api/auth/v2

Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.

When to use

Use this endpoint when building registration, KYC, or profile forms that require a country selection input. Fetching the list from this endpoint ensures your application uses the same standardized country codes expected by all other Netevia API endpoints. It is recommended to cache the response on the client side, as the country list changes infrequently.

Response

200 OK

Returns an array of country enum objects.

FieldTypeDescription
namestringThe ISO 3166-1 Alpha-3 three-letter country code (e.g., USA, GBR, DEU)
idinteger (int32)Internal numeric identifier for the country enum value
descriptionstringHuman-readable country name (e.g., United States of America)
groupNamestringOptional grouping label for the enum entry
endpointsarray of stringsList of API endpoints where this enum value is applicable
[
  {
    "name": "USA",
    "id": 1,
    "description": "United States of America",
    "groupName": null,
    "endpoints": [
      "/api/customer/personal/profile",
      "/api/customer/business/profile"
    ]
  },
  {
    "name": "CAN",
    "id": 2,
    "description": "Canada",
    "groupName": null,
    "endpoints": [
      "/api/customer/personal/profile",
      "/api/customer/business/profile"
    ]
  },
  {
    "name": "GBR",
    "id": 3,
    "description": "United Kingdom of Great Britain and Northern Ireland",
    "groupName": null,
    "endpoints": [
      "/api/customer/personal/profile",
      "/api/customer/business/profile"
    ]
  }
]

Error Codes

CodeWhen it happens
401Token missing, expired, or invalid
403Insufficient permissions
500Internal server error

Common Mistakes

  • Hardcoding country codes in your application instead of fetching from this endpoint — the numeric id values are used internally and may differ from external sources, so always source them from this API.
  • Using two-letter ISO 3166-1 Alpha-2 codes (e.g., US) instead of three-letter Alpha-3 codes (e.g., USA) when submitting country values to other Netevia endpoints.
  • Not caching the response, causing unnecessary repeated calls to a static reference dataset.

Related Endpoints

  • GET /api/enums/ISO3166Alpha2Country — Retrieve the list of countries in ISO 3166-1 Alpha-2 (two-letter) format
  • GET /api/enums/USState — Retrieve a list of US states for state selection fields
  • POST /api/customer/personal/profile — Create a personal customer profile, which requires a country code
  • POST /api/customer/business/profile — Create a business customer profile, which requires a country code

Example

curl -X GET https://api.banking.netevia.dev/api/enums/ISO3166Alpha3Country \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/json"
Headers
string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Response

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
text/plain
application/json
text/json