Skip to content

Battlefield 2142

Battlefield 2142 endpoints are available at https://api.bflist.io/bf2142/v1/.

Live stats#

Get the number of currently active players and servers in Battlefield 2.

Please take Battlefield 2142 active player numbers with a grain of salt. We aim to not count any bots as active players, but a small number of bots may still be included in the active player total.

GET /livestats

Response

200 OK

{
    "servers": 9,
    "players": 12
}

Get a page from the list of servers#

Per default, we send 50 servers per page. You can set a custom page size betweeen 20 and 100 via an optional perPage query parameter.

Since servers for older Battlefield games do not have a guid, one is generated using the server's ip and port. The generated guid is bflist-specific and neither known to nor returned by the server.

GET /servers/:page

Response

200 OK
X-Total-Pages: 1

[
    {
        "guid": "280c936-cd4e980-7dfa898-bfd916",
        "ip": "104.238.186.56",
        "port": 17567,
        "queryPort": 29900,
        "name": "Reclamation EU",
        "numPlayers": 11,
        "maxPlayers": 64,
        "mapName": "Shuhia_Taiba",
        "mapSize": 32,
        "password": false,
        "gameType": "gpm_cq",
        "gameVersion": "1.10.112.0",
        "gameVariant": "bf2142",
        "timelimit": 0,
        "roundsPerMap": 1,
        "ranked": true,
        "anticheat": false,
        "battlerecorder": false,
        "demoIndex": "http://",
        "demoDownload": "http://",
        "voip": true,
        "autobalance": true,
        "friendlyfire": true,
        "tkmode": "Punish",
        "startdelay": 15,
        "spawntime": 15,
        "sponsorText": "",
        "sponsorLogoUrl": "http://lightav.com/bf2142/mixedmode.jpg",
        "communityLogoUrl": "http://lightav.com/bf2142/mixedmode.jpg",
        "scorelimit": 0,
        "ticketratio": 100,
        "teamratio": 100,
        "team1": "Pac",
        "team2": "EU",
        "pure": true,
        "globalUnlocks": true,
        "reservedSlots": 0,
        "maxRank": false,
        "provider": "OpenSpy",
        "region": "EU",
        "averagePing": 53,
        "rankedTournament": false,
        "allowSpectators": false,
        "customMapUrl": "0http://battlefield2142.co",
        "teams": [
            {
                "index": 1,
                "label": "Pac"
            },
            {
                "index": 2,
                "label": "EU"
            }
        ],
        "players": [
            {
                "pid": 47088,
                "name": "HawkeAssault",
                "tag": "=LMB=",
                "score": 13,
                "kills": 3,
                "deaths": 0,
                "ping": 101,
                "team": 2,
                "teamLabel": "EU"
            },
            // more players
        ]
    },
    // more servers
]

Get a server's details#

GET /servers/:ip::port

Note: You can also access each property individually. For example, GET /servers/:ip::port/name will return only the server's name as plain text. Complex properties (teams, players) are returned as JSON. So, GET /servers/:ip::port/players will return a JSON array of players on the server.

Response

200 OK
{
    "guid": "202b179-36ce39-2e52886-a64c76",
    "ip": "93.29.112.52",
    "port": 17567,
    "queryPort": 29900,
    "name": "Cadre of War",
    "numPlayers": 1,
    "maxPlayers": 64,
    "mapName": "Suez_Canal",
    "mapSize": 48,
    "password": false,
    "gameType": "gpm_ti",
    "gameVersion": "1.10.112.0",
    "gameVariant": "bf2142",
    "timelimit": 0,
    "roundsPerMap": 10,
    "ranked": false,
    "anticheat": false,
    "battlerecorder": false,
    "demoIndex": "http://",
    "demoDownload": "http://",
    "voip": true,
    "autobalance": true,
    "friendlyfire": false,
    "tkmode": "No Punish",
    "startdelay": 0,
    "spawntime": 5,
    "sponsorText": "",
    "sponsorLogoUrl": "",
    "communityLogoUrl": "",
    "scorelimit": 0,
    "ticketratio": 200,
    "teamratio": 100,
    "team1": "Pac",
    "team2": "EU",
    "pure": true,
    "globalUnlocks": true,
    "reservedSlots": 0,
    "maxRank": false,
    "provider": "",
    "region": "",
    "averagePing": 104,
    "rankedTournament": false,
    "allowSpectators": false,
    "customMapUrl": "1http://bfeditor.org/index.php?lang=English&sec=maps&act=vmap&game=bf2142&map=",
    "teams": [
        {
            "index": 1,
            "label": "Pac"
        },
        {
            "index": 2,
            "label": "EU"
        }
    ],
    "players": [
        {
            "pid": 42233,
            "name": "CrimsonBlood",
            "tag": "",
            "score": 40,
            "kills": 20,
            "deaths": 25,
            "ping": 104,
            "team": 2,
            "teamLabel": "EU"
        },
        // more players
    ]
}

Get a player's details#

GET /players/:name

Note: You can also access each property individually. For example, GET /players/:name/score will return only the players's current score as plain text.

Response

200 OK
{
    "pid": 47126,
    "name": "MMX",
    "tag": "->EPC<-",
    "score": 1,
    "kills": 1,
    "deaths": 2,
    "ping": 22,
    "team": 1,
    "teamLabel": "Pac"
}

Get a player's current server's details#

GET /players/:name/server

Please see the section on getting an individual server's details, as this endpoint's features and response structure are identical.