Use the placeholder host https://{endpoint}.statarena-api.com in all examples shown on this page.
Documentation for the v1 football data API.
StatArena API exposes authenticated REST endpoints for live scores, match detail, standings, schedules, squads, and historical football data.
All documented football services are currently published under /v1. New versions will be added as separate path versions instead of silently changing the existing contract.
Overview
The public contract uses JSON responses and API key authentication.
addons for expandable resources.
Global conventions
- Country-specific routes accept ISO-style codes such as
USandNO, and provider-style codes such asGB-ENGwhen exposed by the mapped entity model. - All
/v1endpoints require authentication. - Expandable match resources use
addonsas a comma-separated query parameter.
Authentication
Send your API key either with the X-API-Key header or as a bearer token. The key is validated against plan status, expiration, and account state before the endpoint handler runs.
curl "https://{endpoint}.statarena-api.com/v1/matches/live" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Accept: application/json"
{
"error": {
"code": "missing_api_key",
"message": "Provide an API key using the X-API-Key header or Authorization Bearer token."
},
"meta": {
"request_id": "req_01jexample"
}
}
Common response contract
Successful responses return a data payload plus request metadata. Error responses return a structured error object and a request_id that can be used for support and incident tracing.
{
"data": {},
"meta": {
"request_id": "req_01jexample"
}
}
{
"error": {
"code": "string",
"message": "string",
"details": {}
},
"meta": {
"request_id": "req_01jexample"
}
}
GET /v1/matches/date/:date returns pagination inside meta.pagination.
{
"data": [/*Matches array*/],
"meta": {
"request_id": "req_01jexample",
"pagination": {
"count": 50,
"has_more": true,
"current_page": 9,
"next_page": "https://{endpoint}.statarena-api.com/v1/matches/date/2026-07-18?timezone=America%2FMexico_City&addons=round%2Cstate%2Cstadium%2Cleague%2Cevents%2Cscores%2Ccoaches%2Clineups%2Cperiods%2Cformations%2Cstatistics%2Cparticipants%2Creferees&page=10"
}
}
}
Leagues
League endpoints cover discovery, live competitions, country filtering, and the current competitions for a team.
Available routes
GET /v1/leaguesGET /v1/leagues/liveGET /v1/leagues/countries/:countryCodeGET /v1/leagues/teams/:teamId/currentGET /v1/leagues/:leagueId
Returns an array of league records available for current API Key suscription level. Collection routes return data as an array. The single-item route returns one league object.
/v1/leagues, /live, /countries/:countryCode, and /teams/:teamId/current return arrays. /v1/leagues/:leagueId returns a single object.
{
"data": [
{
"id": "24222",
"name": "Champions League",
"active": true,
"image_url": "https://{CDN_RESOURCE}",
"country_code": "EU"
}
],
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_country_code",
"message": "The countryCode parameter is not valid."
},
"meta": {
"request_id": "req_01jexample"
}
}
Returns an array of league records with matches currently in play
Returns an array of league records for specified country code
Returns an array of league records corresponding to the leagues in which the specified team participates.
Returns a league object for specified leagueId
Matches
Matches service cover live lists, date-based retrieval, ranges, head-to-head data, and detailed match payloads with optional nested expansions.
Available routes
GET /v1/matches/liveGET /v1/matches/date/:dateGET /v1/matches/between/:startDate/:endDateGET /v1/matches/head-to-head/:firstTeam/:secondTeamGET /v1/matches/:matchId
| Route | Useful query parameters | Data shape |
|---|---|---|
/v1/matches/live |
inPlay=true, addons |
Array of match objects |
/v1/matches/date/:date |
timezone, page,addons |
Object with matches and pagination |
/v1/matches/between/:startDate/:endDate |
page, addons |
Array of match objects |
/v1/matches/head-to-head/:firstTeam/:secondTeam |
None | Object |
/v1/matches/:matchId |
addons |
Single match object |
Supported match add-ons
round, state, stadium, league, events, scores, coaches, lineups, periods, formations, statistics, teams, referees.
{
"data": {
"id": "19748782162",
"league_id": "2472212",
"season_id": "26760202",
"stage_id": "77479518792",
"group_id": null,
"round_id": null,
"state_id": "24122",
"name": "Machida Zelvia vs Fujieda MYFC",
"starting_at": "2026-07-18 07:30:00",
"result_info": null,
"leg": "1/1",
"state": {
"name": "Cancelled",
"short_name": "CANC"
},
"stadium": {
"id": "6034572",
"name": "Machida Athletic Stadium"
},
"scores": [
{
"description": "CURRENT",
"score": {
"home": 2,
"away": 1
}
}
],
"teams": [
{
"id": "9270902",
"name": "Machida Zelvia",
"country_code": "JP",
"location": "home"
},
{
"id": "18284122",
"name": "Fujieda MYFC",
"country_code": "JP",
"location": "away"
}
]
},
"meta": {
"request_id": "req_01jexample"
}
}
Pagination example for matches by date
{
"data": [
{
"id": "19748782162",
"league_id": "2472212",
"season_id": "26760202",
"stage_id": "77479518792",
"state_id": "24122",
"name": "Machida Zelvia vs Fujieda MYFC",
"starting_at": "2026-07-18 01:30:00"
}
],
"meta": {
"request_id": "req_01jexample",
"pagination": {
"count": 1,
"has_more": true,
"current_page": 1,
"next_page": "https://{endpoint}.statarena-api.com/v1/matches/date/2026-07-18?timezone=America%2FMexico_City&page=2"
}
}
}
Error example
{
"error": {
"code": "invalid_match_addon",
"message": "Unsupported live addon \"weather\".",
"details": {
"allowed_addons": [
"round",
"state",
"stadium",
"league",
"events",
"scores",
"coaches",
"lineups",
"periods",
"formations",
"statistics",
"teams",
"referees"
]
}
},
"meta": {
"request_id": "req_01jexample"
}
}
Seasons
Season routes cover direct lookups, league-based season discovery, and access to the current season for a league.
GET /v1/seasons/:seasonIdReturns one season by public ID.GET /v1/seasons/leagues/:leagueIdReturns the seasons mapped to one league.GET /v1/seasons/leagues/:leagueId/currentReturns the current season for one league.
{
"data": {
"id": "26646282",
"league_id": "804722",
"tie_breaker_rule": null,
"name": "2026/2027",
"finished": false,
"pending": false,
"is_current": true,
"starting_at": "2026-08-01",
"ending_at": "2027-05-31",
"games_in_current_week": false
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_season_id",
"message": "Invalid season id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Stages
Stage routes support direct lookup and season-based listing. When required, stage payloads can be expanded with related round or match data using addons=rounds, addons=matches, or both values together in the same request.
GET /v1/stages/:stageIdReturns one stage by public ID.GET /v1/stages/seasons/:seasonIdReturns the stages mapped to one season.GET /v1/stages/seasons/:seasonId/currentReturns the current stage for one season.- Optional add-ons:
addons=rounds,addons=matches, oraddons=rounds,matches
{
"data": {
"id": "77478660702",
"sport_id": "1",
"league_id": "804722",
"season_id": "26646282",
"type_id": "223",
"name": "Regular Season",
"sort_order": 1,
"finished": false,
"pending": false,
"is_current": true,
"starting_at": "2026-08-01",
"ending_at": "2027-05-31",
"rounds": [
{
"id": "395390302",
"name": "Round 1",
"is_current": false
}
]
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_stage_id",
"message": "Invalid stage id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Rounds
Round routes support direct lookup and season-based listing. Round payloads can optionally embed mapped match objects using addons=matches.
GET /v1/rounds/:roundIdGET /v1/rounds/seasons/:seasonId- Optional add-on:
addons=matches
{
"data": {
"id": "395390302",
"sport_id": "1",
"league_id": "804722",
"season_id": "26646282",
"stage_id": "77478660702",
"name": "Round 1",
"finished": false,
"is_current": false,
"starting_at": "2026-08-01",
"ending_at": "2026-08-03",
"matches": [
{
"id": "19748782162",
"name": "Machida Zelvia vs Fujieda MYFC",
"starting_at": "2026-07-18 07:30:00"
}
]
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_round_id",
"message": "Invalid round id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Teams
Team routes support single-team lookup, derived recent-form lookup, and season-based collections.
GET /v1/teams/:teamId/formGET /v1/teams/:teamIdGET /v1/teams/seasons/:seasonId
{
"data": {
"team_id": "18596182",
"league_id": "804722",
"window": 10,
"form": {
"matches_count": 5,
"sequence": ["W", "D", "W", "L", "W"],
"matches": [
{
"result": "W",
"fixture_id": "19748782162",
"starting_at": "2026-07-18 19:00:00",
"league_id": 732,
"home_team_id": 65,
"away_team_id": 14,
"goals_for": 2,
"goals_against": 1
}
]
}
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_team_id",
"message": "Invalid team id."
},
"meta": {
"request_id": "req_01jexample"
}
}
{
"data": {
"id": "18596182",
"country_code": "GB-ENG",
"stadium_id": "21852262",
"gender": "male",
"name": "Manchester City",
"short_code": "MCI",
"image_url": "https://{CDN_RESOURCE}",
"founded": 1880,
"type": "domestic",
"placeholder": false,
"last_played_at": "2026-07-19 19:00:00",
"location": null,
"winner": null,
"table_position": null
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_team_id",
"message": "Invalid team id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Squads
Squad endpoints return team rosters either for the current setup or constrained to a specific season-team combination.
GET /v1/squads/teams/:teamIdGET /v1/squads/seasons/:seasonId/teams/:teamId
{
"data": [
{
"id": "squad_row_1",
"team_id": "18596182",
"player_id": "154432112",
"position_id": "208",
"jersey_number": 9,
"player": {
"id": "154432112",
"display_name": "Erling Haaland"
},
"team": {
"id": "18596182",
"name": "Manchester City"
}
}
],
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_team_id",
"message": "Invalid team id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Players
Player detail is available by public player ID.
{
"data": {
"id": "154432112",
"country_code": "GB-ENG",
"position": "Attacker",
"detailed_position": "Centre Forward",
"type": "Attacker",
"common_name": "E. Haaland",
"firstname": "Erling Braut",
"lastname": "Haaland",
"name": "Erling Håland",
"display_name": "Erling Haaland",
"image_url": "https://{CDN_RESOURCE}}",
"height": 195,
"weight": 88,
"date_of_birth": "2000-07-21",
"gender": "male"
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_player_id",
"message": "Invalid player id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Coaches
Coach detail follows the same single-entity lookup pattern as players.
{
"data": {
"id": "37740500352",
"country_code": "ES",
"firstname": "Josep",
"lastname": "Guardiola",
"name": "Josep Guardiola",
"display_name": "Pep Guardiola",
"image_url": "https://{CDN_RESOURCE}",
"date_of_birth": "1971-01-18",
"gender": "male"
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_coach_id",
"message": "Invalid coach id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Referees
Referee detail is exposed as a direct lookup resource with the same public ID rules used across the entity layer.
{
"data": {
"id": "16700152",
"country_code": "AR",
"firstname": "Facundo",
"lastname": "Tello",
"name": "Facundo Tello",
"display_name": "Facundo Tello",
"image_url": "https://{CDN_RESOURCE}",
"date_of_birth": "1982-05-04",
"gender": "male"
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_referee_id",
"message": "Invalid referee id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Stadiums
Stadium detail is exposed as a single object by public stadium ID.
{
"data": {
"id": "21852262",
"country_id": "826",
"city_id": "2643743",
"name": "Etihad Stadium",
"address": "Ashton New Road",
"zipcode": "M11 3FF",
"latitude": "53.4831",
"longitude": "-2.2004",
"capacity": 53400,
"image_path": "https://{CDN_RESOURCES}"
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_stadium_id",
"message": "Invalid stadium id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Standings
Standings are available by season, by round, and as a live table for specific leagues. Every variant returns an array of standing rows.
GET /v1/standings/seasons/:seasonIdGET /v1/standings/rounds/:roundIdGET /v1/standings/live/leagues/:leagueId
{
"data": [
{
"id": "standing_row_1",
"season_id": "26646282",
"round_id": "395390302",
"stage_id": "77478660702",
"group_id": null,
"team_id": "18596182",
"position": 1,
"result": null,
"points": 87,
"details": [],
"form": ["W", "W", "D", "W", "W"]
}
],
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_season_id",
"message": "Invalid season id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Schedules
Schedules return grouped match collections rather than raw matches.
GET /v1/schedules/seasons/:seasonIdGET /v1/schedules/teams/:teamIdGET /v1/schedules/seasons/:seasonId/teams/:teamId
{
"data": {
"id": null,
"season_id": "26646282",
"team_id": "18596182",
"matches": [
{
"id": "19748782162",
"league_id": "2472212",
"season_id": "26760202",
"name": "Machida Zelvia vs Fujieda MYFC",
"starting_at": "2026-07-18 07:30:00"
}
]
},
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_team_id",
"message": "Invalid team id."
},
"meta": {
"request_id": "req_01jexample"
}
}
Top scorers
Top scorer endpoints are grouped by stage or season and require the query parameter type. Results are limited to the first 20 rows. Public pagination is not used for this service.
GET /v1/topscorers/stages/:stageId?type=goalGET /v1/topscorers/seasons/:seasonId?type=assist- Allowed
typevalues:redcards,yellowcards,goal,assist,penalty,missedpenalty
{
"data": [
{
"id": "294414388292",
"stage_id": "77478660702",
"player_id": "184816182",
"type_id": "236282",
"position": 1,
"total": 6,
"team_type": "team",
"team_id": "18658142",
"player": {
"id": "184816182",
"display_name": "Lionel Messi",
"country_code": "AR"
},
"team": {
"id": "18658142",
"name": "Argentina",
"country_code": "AR"
}
}
],
"meta": {
"request_id": "req_01jexample"
}
}
Error example
{
"error": {
"code": "invalid_topscorer_type",
"message": "Invalid topscorer type."
},
"meta": {
"request_id": "req_01jexample"
}
}
Error reference
Most client-side failures fall into a few predictable categories: authentication, invalid public IDs, invalid country codes, unsupported add-ons, invalid pages, and invalid top scorer types.
| Code | Status | Meaning |
|---|---|---|
missing_api_key |
401 | No API key was sent. |
invalid_api_key |
401 | The provided key does not exist or does not match a valid record. |
api_key_not_active |
403 | The key exists but is not currently active. |
api_key_expired |
403 | The key exists but has expired. |
invalid_country_code |
400 | The supplied country code cannot be mapped to a supported provider country. |
invalid_page |
400 | The page query parameter is missing, non-integer, or lower than 1. |
invalid_match_addon |
400 | An unsupported add-on was requested for a match endpoint. |
invalid_topscorer_type |
400 | The type query parameter is not one of the supported public values. |
Match Statistics
The following match statistics are part of the public API coverage for match-level statistical payloads.
- Accurate Crosses
- Assists
- Attacks
- Ball Possession %
- Ball Safe
- Big Chances Created
- Big Chances Missed
- Corners
- Counter Attacks
- Dangerous Attacks
- Dribble Attempts
- Duels Won
- Fouls
- Free Kicks
- Goal Attempts
- Goal Kicks
- Goals
- Hit Woodwork
- Injuries
- Interceptions
- Key Passes
- Long Passes
- Offsides
- Passes
- Penalties
- Redcards
- Saves
- Shots Blocked
- Shots Insidebox
- Shots Off Target
- Shots On Target
- Shots Outsidebox
- Shots Total
- Substitutions
- Successful Dribbles
- Successful Dribbles Percentage
- Successful Headers
- Successful Long Passes
- Successful Long Passes Percentage
- Successful Passes
- Successful Passes Percentage
- Tackles
- Throwins
- Total Crosses
- Yellowcards
- Yellowred Cards
Match States
The following match states describe the lifecycle and live status of a football fixture as exposed by the API.
| Name | Description |
|---|---|
| Not Started | The match is scheduled but the opening whistle has not been blown yet. |
| 1st Half | The first half is in progress under regular time. |
| Half Time | The first half has ended and the match is at the half-time interval. |
| Break | Play is paused during an official break before regular time resumes. |
| Full Time | Regular time has finished and the match result is final unless extra time or penalties apply in that competition. |
| Extra Time | The match is being played in extra time after the end of regular time. |
| After Extra Time | The match concluded after extra time without needing a penalty shootout. |
| After Penalties | The match concluded after a penalty shootout. |
| Penalties | The penalty shootout is currently in progress. |
| Postponed | The fixture has been moved to a later date and is not being played as originally scheduled. |
| Suspended | The match started but has been suspended and is not currently active. |
| Cancelled | The fixture has been cancelled and will not be played in its scheduled form. |
| To Be Announced | The fixture exists, but its final kick-off details are still to be confirmed. |
| Walk Over | The fixture was decided as a walkover without normal on-field play. |
| Abandoned | The match was stopped and declared abandoned before normal completion. |
| Delayed | The start or restart of the match has been delayed for operational or external reasons. |
| Awarded | The result was awarded administratively rather than fully decided on the pitch. |
| Interrupted | Play has been interrupted temporarily and the fixture is awaiting further action. |
| Awaiting Updates | The fixture state is pending provider confirmation or fresh live updates. |
| Deleted | The fixture record was removed from the active schedule and should no longer be treated as playable. |
| Extra Time - Break | The match is in the interval between extra-time periods. |
| 2nd Half | The second half is in progress under regular time. |
| ET - 2nd Half | The second period of extra time is currently being played. |
| Penalties - Break | The penalty shootout is paused between kicks or phases. |
| Pending | The fixture is pending final scheduling, validation, or competition-side confirmation. |
Match Events
The following event types are available through match event payloads when event coverage is available for a given fixture.
- Goal
- Missed Penalty
- Own Goal
- Penalty
- Penalty Shootout Goal
- Penalty Shootout Miss
- Redcard
- Substitution
- VAR
- VAR_CARD
- Yellow/Red card
- Yellowcard
Country Codes
The following country codes are supported by the public country-based routes and country-coded entity fields.
- Andorra
AD - United Arab Emirates
AE - Afghanistan
AF - Antigua and Barbuda
AG - Anguilla
AI - Albania
AL - Armenia
AM - Angola
AO - Argentina
AR - American Samoa
AS - Austria
AT - Australia
AU - Aruba
AW - Azerbaijan
AZ - Bosnia and Herzegovina
BA - Barbados
BB - Bangladesh
BD - Belgium
BE - Burkina Faso
BF - Bulgaria
BG - Bahrain
BH - Burundi
BI - Benin
BJ - Bermuda
BM - Brunei
BN - Bolivia
BO - Caribbean Netherlands
BQ - Brazil
BR - Bahamas
BS - Bhutan
BT - Botswana
BW - Belarus
BY - Belize
BZ - Canada
CA - DR Congo
CD - Central African Republic
CF - Republic of the Congo
CG - Switzerland
CH - Ivory Coast
CI - Cook Islands
CK - Chile
CL - Cameroon
CM - China
CN - Colombia
CO - Costa Rica
CR - Cuba
CU - Cape Verde
CV - Curaçao
CW - Cyprus
CY - Czech Republic
CZ - Germany
DE - Djibouti
DJ - Denmark
DK - Dominica
DM - Dominican Republic
DO - Algeria
DZ - Ecuador
EC - Estonia
EE - Egypt
EG - England
GB-ENG - Northern Ireland
GB-NIR - Scotland
GB-SCT - Wales
GB-WLS - Eritrea
ER - Spain
ES - Ethiopia
ET - Europe
EU - Finland
FI - Fiji
FJ - Falkland Islands (Malvinas)
FK - Federated States of Micronesia
FM - Faroe Islands
FO - France
FR - Gabon
GA - Grenada
GD
- Georgia
GE - French Guiana
GF - Guernsey
GG - Ghana
GH - Gibraltar
GI - Gambia
GM - Guinea
GN - Guadeloupe
GP - Equatorial Guinea
GQ - Greece
GR - Guatemala
GT - Guam
GU - Guinea-Bissau
GW - Guyana
GY - Hong Kong
HK - Honduras
HN - Croatia
HR - Haiti
HT - Hungary
HU - Indonesia
ID - Republic of Ireland
IE - Israel
IL - Isle of Man
IM - India
IN - Iraq
IQ - Iran
IR - Iceland
IS - Italy
IT - Jersey
JE - Jamaica
JM - Jordan
JO - Japan
JP - Kenya
KE - Kyrgyz Republic
KG - Cambodia
KH - Comoros
KM - Saint Kitts and Nevis
KN - South Korea
KR - Kuwait
KW - Cayman Islands
KY - Kazakhstan
KZ - Laos
LA - Lebanon
LB - Saint Lucia
LC - Liechtenstein
LI - Sri Lanka
LK - Liberia
LR - Lesotho
LS - Lithuania
LT - Luxembourg
LU - Latvia
LV - Libya
LY - Morocco
MA - Monaco
MC - Moldova
MD - Montenegro
ME - Madagascar
MG - Macedonia
MK - Mali
ML - Myanmar
MM - Mongolia
MN - Macau
MO - Northern Mariana Islands
MP - Martinique
MQ - Mauritania
MR - Montserrat
MS - Malta
MT - Mauritius
MU - Maldives
MV - Malawi
MW - Mexico
MX - Malaysia
MY - Mozambique
MZ - Namibia
NA - New Caledonia
NC
- Niger
NE - Nigeria
NG - Nicaragua
NI - Netherlands
NL - Norway
NO - Nepal
NP - Niue
NU - New Zealand
NZ - Oman
OM - Panama
PA - Peru
PE - Tahiti
PF - Papua New Guinea
PG - Philippines
PH - Pakistan
PK - Poland
PL - Puerto Rico
PR - Palestine
PS - Portugal
PT - Paraguay
PY - Qatar
QA - Réunion
RE - Romania
RO - Serbia
RS - Russia
RU - Rwanda
RW - Saudi Arabia
SA - Solomon Islands
SB - Seychelles
SC - Sudan
SD - Sweden
SE - Singapore
SG - Slovenia
SI - Slovakia
SK - Sierra Leone
SL - San Marino
SM - Senegal
SN - Somalia
SO - Suriname
SR - South Sudan
SS - São Tomé and Príncipe
ST - El Salvador
SV - Sint Maarten
SX - Syria
SY - Swaziland
SZ - Turks and Caicos Islands
TC - Chad
TD - Togo
TG - Thailand
TH - Tajikistan
TJ - Timor-Leste
TL - Turkmenistan
TM - Tunisia
TN - Tonga
TO - Türkiye
TR - Trinidad and Tobago
TT - Tuvalu
TV - Taiwan
TW - Tanzania
TZ - Ukraine
UA - Uganda
UG - United States
US - Uruguay
UY - Uzbekistan
UZ - Saint Vincent and the Grenadines
VC - Venezuela
VE - British Virgin Islands
VG - Vietnam
VN - Vanuatu
VU - West Indies
WI - Samoa
WS - Kosovo
XK - Yemen
YE - Mayotte
YT - South Africa
ZA - Zambia
ZM - Zimbabwe
ZW