Endpoint & Required Headers
This Navigation Data for Applications service allows the retrieval of the full Betfair market navigation menu from a compressed file.Â
Best Practice
The file data is cached and new request for the file once an hour should be suitable for those looking to accurately recreate the Betfair navigation menu.
The following request headers are required:
X-Application  - Your Application Key
X-Authentication - Your session token, obtained from the API login response.
Example Request
GET https://api.betfair.com/exchange/betting/rest/v1/en/navigation/menu.json
Connection: keep-alive
X-Application: <AppKey>
X-Authentication: <SessionToken>
Accept: application/json
Accept-Encoding: gzip,deflate
Supported Locales
The following languages are supported by the navigation file:
en | en_GB |Â da |Â de |Â es |Â it |Â pt |Â ru |Â sv
English - en
Spanish - es
Italian  - it
German - de
Swedish - sv
Portuguese  -pt
Russian - ru
Danish - da
Navigation Data File Structure
A ROOT group node has one or many EVENT_TYPE nodes
An EVENT_TYPE node has zero, one or many GROUP nodes
An EVENT_TYPE node has zero, one or many EVENT nodes
A Horse Racing EVENT_TYPE node has zero, one or many RACE nodes
A RACE node has one or many MARKET nodes
A GROUP node has zero, one or many EVENT nodes
A GROUP node has zero, one or many GROUP nodes
An EVENT node has zero, one or many MARKET nodes
An EVENT node has zero, one or many GROUP nodes
An EVENT node has zero, one or many EVENT nodes
JSON Model Structure
ROOT
{
    "children": [
        {
            EVENT_TYPE1
        },
        {
            EVENT_TYPE2
        },
        ...
    ],
    "id": 0, // always 0
    "name": "ROOT", // always ROOT
    "type": "GROUP" // always GROUP
}
|
EVENT_TYPEÂ
{
    "children": [
        {
            GROUP or EVENT or RACE (RACE only if Greyhounds/Horse Racing)
        },
        ...
    ],
    "id": "1", // Betfair specific eventTypeId
    "name": "Soccer",
    "type": "EVENT_TYPE"
}
|
GROUP
{
    "children": [
        {
            GROUP or EVENT
        },
        ...
    ],
    "id": "74568202414", // Not a Betfair specific id, different for every GROUP
    "name": "Womens Soccer",
    "type": "GROUP"
}
|
EVENT
{
    "children": [
        {
            GROUP, MARKET or EVENT
        },
        ...
    ],
    "id": "27244118", // Betfair specific eventId
    "name": "South Korea U20 (W) v Mexico U20 (W)",
    "countryCode": "GB",
    "type": "EVENT"
}
|
RACE
{
    "children": [
        {
            MARKET
        },
        ...
    ],
    "id": "27247020.1115", // Betfair specific raceId
    "name": "1300m 3yo",
    "startTime": "2014-08-12T11:15:00.000Z",
    "type": "RACE",
    "venue": "Deauville",
"raceNumber"  : "R1", // US specific information about race numbers
    "countryCode": "GB"
}
|
MARKET
{Â Â
    "exchangeId": "1", // Betfair specific exchangeId
    "id": "1.114881860", // Betfair specific marketId
    "marketStartTime": "2014-08-14T00:00:00.000Z", // Betfair specific marketStartTime
    "marketType": "WIN", // Betfair specific marketType (e.g. PLACE, WIN, FORECAST etc.)
    "numberOfWinners": "2", // Betfair specific number of winners
    "name": "Over/Under 6.5 Goals",
    "type": "MARKET"
}
|