Countries

Manage countries for user profiles and content.

List Countries

GET /api/v1/countries

Query Parameters

Parameter Type Required Description
country_id string No Filter by country ID
name string No Filter by country name
continent string No Filter by continent
iso2 string No Filter by ISO 2-letter code
iso3 string No Filter by ISO 3-letter code
phone_prefix string No Filter by phone prefix

Response

{
    "data": [
        {
            "id": 1,
            "name": "Italy",
            "continent": "EU",
            "iso_char2": "IT",
            "iso_char3": "ITA",
            "phone_prefix": "+39"
        },
        {
            "id": 2,
            "name": "Spain",
            "continent": "EU",
            "iso_char2": "ES",
            "iso_char3": "ESP",
            "phone_prefix": "+34"
        }
    ]
}

Get Country

GET /api/v1/countries/{country}

Path Parameters

Parameter Type Required Description
country integer Yes Country ID

Response

{
    "data": {
        "id": 1,
        "name": "Italy",
        "continent": "EU",
        "iso_char2": "IT",
        "iso_char3": "ITA",
        "phone_prefix": "+39"
    }
}

Create Country

POST /api/v1/countries

Request Body

Parameter Type Required Description
name string Yes Country name (max 64 characters)
continent string Yes Continent code (max 5 characters)
iso_char2 string Yes ISO 2-letter code (2 characters)
iso_char3 string Yes ISO 3-letter code (3 characters)
phone_prefix string Yes Phone prefix (max 5 characters)

Response

{
    "data": {
        "id": 1,
        "name": "Italy",
        "continent": "EU",
        "iso_char2": "IT",
        "iso_char3": "ITA",
        "phone_prefix": "+39"
    }
}

Update Country

PUT /api/v1/countries/{country}

Path Parameters

Parameter Type Required Description
country integer Yes Country ID

Request Body

Parameter Type Required Description
name string Yes Country name (max 64 characters)
continent string Yes Continent code (max 5 characters)
iso_char2 string Yes ISO 2-letter code (2 characters)
iso_char3 string Yes ISO 3-letter code (3 characters)
phone_prefix string Yes Phone prefix (max 5 characters)

Response

{
    "data": {
        "id": 1,
        "name": "Italy",
        "continent": "EU",
        "iso_char2": "IT",
        "iso_char3": "ITA",
        "phone_prefix": "+39"
    }
}

Delete Country

DELETE /api/v1/countries/{country}

Path Parameters

Parameter Type Required Description
country integer Yes Country ID

Response

{
    "message": "Country deleted successfully"
}