Reference
Countries
Get all 54 African countries as reference records, detailed country objects, curated profiles, and current country signals through one API.
African Countries API
Use this page when you need one dependable country layer for onboarding flows, profile pages, search, analytics filters, and country snapshots across all 54 African countries.
This page covers:
- country discovery and filtering
- detailed country records
- curated country profiles
- current country signals
Choosing The Country Routes
- Use
/v1/countriesfor country discovery and reference records. - Use
/v1/countries/{country_code}for the full country detail record. - Use
/v1/countries/{country_code}/profilefor a curated summary that blends multiple domains. - Use
/v1/countries/{country_code}/signalsfor the latest practical country snapshot.
List Countries
/v1/countriesReturns country metadata for Africa.
Authentication required.
paginatebooleanpageintegerper_pageintegerregionstringsortstringname, area, or region; prefix with - for descendingcurl "https://api.africa-api.com/v1/countries" \
-G \
-d "paginate=true" \
-d "page=1" \
-d "per_page=5" \
-d "region=west" \
-d "sort=name" \
-H "Authorization: Bearer $AFRICA_API_KEY"{
"data": [
{
"id": "gh",
"name": "Ghana",
"official_name": "Republic of Ghana",
"capital": "Accra",
"region": "West Africa",
"subregion": "Western Africa",
"area_km2": 238533,
"currencies": ["GHS"],
"languages": ["eng"],
"flag": "GH"
}
],
"meta": {
"total": 16,
"page": 1,
"per_page": 5,
"total_pages": 4
}
}Get Country By Code
/v1/countries/{country_code}Returns a detailed country record by ISO 3166-1 alpha-2 code.
country_codestringrequiredng, ke, zacurl "https://api.africa-api.com/v1/countries/ng" \
-H "Authorization: Bearer $AFRICA_API_KEY"{
"data": {
"id": "ng",
"name": "Nigeria",
"official_name": "Federal Republic of Nigeria",
"capital": "Abuja",
"region": "West Africa",
"subregion": "Western Africa",
"area_km2": 923768,
"iso3": "NGA",
"timezone": "Africa/Lagos",
"calling_code": "+234",
"flag": "NG",
"coordinates": {
"latitude": 9.082,
"longitude": 8.6753
},
"borders": ["bj", "cm", "ne", "td"],
"currencies": [
{
"code": "NGN",
"name": "Nigerian naira",
"symbol": "NGN"
}
],
"languages": [
{
"code": "eng",
"name": "English"
}
]
}
}Get Country Profile
/v1/countries/{country_code}/profileReturns a curated summary of selected indicators for one country.
This endpoint is a convenience layer on top of /v1/data.
It also includes a focused trade summary sourced from the dedicated /v1/trade/overview/{country_code} domain.
It also includes a compact government-history block when current leadership data is available.
It also includes current cabinet members when cabinet data is available.
It now also includes the latest election summary when election data is available.
It also exposes selected transport and connectivity highlights when those observations are available.
curl "https://api.africa-api.com/v1/countries/ke/profile" \
-H "Authorization: Bearer $AFRICA_API_KEY"{
"data": {
"country": {
"code": "ke",
"name": "Kenya",
"capital": "Nairobi",
"region": "East Africa"
},
"highlights": {
"population_total": {
"value": 55100586,
"year": 2024,
"source": "world_bank_wdi",
"unit": "persons"
},
"median_age_years": {
"value": 20.4,
"year": 2024,
"source": "un_wpp",
"unit": "years"
},
"unemployment_pct": {
"value": 5.7,
"year": 2024,
"source": "ilo_ilostat",
"unit": "percent"
},
"agricultural_land_1000ha": {
"value": 30350,
"year": 2023,
"source": "faostat_agriculture",
"unit": "thousand_hectares"
},
"access_to_clean_fuels_pct": {
"value": 30.8,
"year": 2023,
"source": "world_bank_wdi",
"unit": "percent"
},
"mobile_subscriptions_per_100": {
"value": 118.6,
"year": 2024,
"source": "world_bank_wdi",
"unit": "subscriptions_per_100_people"
},
"paved_roads_pct": {
"value": 14.2,
"year": 2022,
"source": "world_bank_wdi",
"unit": "percent"
},
"pm25_air_pollution_ug_per_m3": {
"value": 18.4,
"year": 2023,
"source": "world_bank_wdi",
"unit": "micrograms_per_cubic_meter"
},
"government_effectiveness_estimate": {
"value": -0.41,
"year": 2024,
"source": "world_bank_wdi",
"unit": "estimate"
}
},
"trade": {
"latest_year": 2024,
"granular_latest_year": 2024,
"granular_years": [2023, 2024],
"latest_snapshot": {
"year": 2024,
"exports_goods_services_usd": 15420000000,
"imports_goods_services_usd": 18610000000,
"trade_balance_usd": -3190000000,
"exports_goods_services_pct_gdp": 12.1,
"imports_goods_services_pct_gdp": 14.6,
"current_account_balance_pct_gdp": -3.4,
"sources": {
"exports_goods_services_usd": "world_bank_wdi",
"imports_goods_services_usd": "world_bank_wdi",
"trade_balance_usd": "world_bank_wdi"
}
},
"top_export_partners": [
{
"partner_country_code": "ug",
"partner_country_name": "Uganda",
"flow_type": "export",
"total_value_usd": 1210000000
}
],
"top_import_partners": [
{
"partner_country_code": "cn",
"partner_country_name": "China",
"flow_type": "import",
"total_value_usd": 3180000000
}
],
"top_export_products": [
{
"product_code": "09",
"product_name": "Coffee, tea, mate and spices",
"classification": "HS",
"flow_type": "export",
"total_value_usd": 730000000
}
],
"top_import_products": [
{
"product_code": "84",
"product_name": "Machinery and mechanical appliances",
"classification": "HS",
"flow_type": "import",
"total_value_usd": 1110000000
}
]
},
"government": {
"current_head_of_state": {
"wikidata_id": "Q2",
"name": "William Ruto",
"office_name": "President of Kenya",
"role_type": "head_of_state",
"start_date": "2022-09-13",
"source": "wikidata_government_history"
},
"current_head_of_government": {
"wikidata_id": "Q2",
"name": "William Ruto",
"office_name": "President of Kenya",
"role_type": "head_of_government",
"start_date": "2022-09-13",
"source": "wikidata_government_history"
},
"cabinet_member_count": 2,
"current_cabinet_members": [
{
"wikidata_id": "Q1234",
"name": "John Mbadi",
"office_name": "Cabinet Secretary for National Treasury",
"role_category": "minister",
"party_name": "ODM",
"start_date": "2024-08-08",
"source": "wikidata_current_governments"
}
],
"latest_election": {
"wikidata_id": "Q123",
"name": "2022 Kenyan general election",
"election_scope": "general",
"election_date": "2022-08-09",
"office_name": "President of Kenya",
"election_status": "completed",
"successful_candidate_name": "William Ruto",
"source": "wikidata_elections"
},
"active_policy_count": 14,
"latest_policy": {
"wikidata_id": "Q456",
"title": "Kenya Climate Change Act",
"document_type": "law",
"policy_status": "active",
"published_at": "2016-05-27",
"source": "wikidata_policies"
},
"latest_policy_event": {
"event_key": "Q456:implemented:2016-06-01",
"policy_wikidata_id": "Q456",
"title": "Kenya Climate Change Act",
"document_type": "law",
"event_type": "implemented",
"event_date": "2016-06-01",
"summary": "Kenya Climate Change Act entered into force",
"source": "wikidata_policies"
}
}
}
}Get Country Signals
/v1/countries/{country_code}/signalsReturns a compact current snapshot for one country.
Use this when you want the latest practical country context without joining:
- current macro and infrastructure observations
- FX rates
- exchange market snapshots
- compact trade context
- compact government context
Signals may include both annual and monthly observations. Monthly/latest metrics expose as_of_period so clients can distinguish the current-signal layer from the historical backbone.
This is a convenience view. For full history and broader filtering, keep using /v1/data.
curl "https://api.africa-api.com/v1/countries/ke/signals" \
-H "Authorization: Bearer $AFRICA_API_KEY"{
"data": {
"country": {
"code": "ke",
"name": "Kenya",
"capital": "Nairobi",
"region": "East Africa"
},
"observations": [
{
"metric_key": "inflation_cpi_latest_yoy_pct",
"value": 4.8,
"year": 2025,
"source": "world_bank_gem_signals",
"freshness": "current",
"as_of_period": "2025-12"
}
],
"fx_rates": [
{
"base_currency": "USD",
"quote_currency": "KES",
"rate": 129.44,
"date": "2026-03-08",
"source": "fx_usd_daily",
"freshness": "current"
}
],
"market_snapshots": [],
"trade": {
"latest_year": 2024,
"granular_latest_year": 2024
},
"government": {
"current_head_of_state": {
"name": "William Ruto",
"role_type": "head_of_state"
}
},
"generated_at": "2026-03-09T18:00:00Z"
}
}Caching
GET /v1/countries returns ETag and Cache-Control: public, max-age=300. Send If-None-Match to receive 304 Not Modified when the list is unchanged.
African Market Data API
Bring African exchanges, tickers, FX rates, and market history into products without stitching multiple sources.
Signals
Use country signals for a compact current snapshot across indicators, FX, local prices, transport, grid conditions, climate, humanitarian displacement, disaster alerts, markets, trade, and government context.