Flashscore API endpoint
Returns the title odds bookmakers list for a team in one viewer market, grouped by the competitions it is priced in (league, cup, European competition) with every bookmaker's price and last movement. Pick geo (and subdivision for US or CA) from flashscore-odds-geos. A team with no listed title odds returns empty lists; a player id returns not found.
/flashscore/team-outright-oddsQuery parameters:
id (required): eight-character Flashscore team id. A player id and an unknown id return 404.geo (optional, default GB): viewer market country code from /api/v1/flashscore/odds-geos. One of AE, AL, AM, AO, AR, AT, AU, AZ, BA, BD, BE, BG, BO, BR, BY, CA, CH, CI, CL, CM, CN, CO, CR, CY, CZ, DE, DK, DO, DZ, EC, EE, EG, ES, ET, FI, FR, GB, GE, GH, GR, GT, HK, HN, HR, HU, ID, IE, IL, IN, IQ, IR, IS, IT, JO, JP, KE, KG, KH, KR, KW, KZ, LA, LB, LK, LT, LU, LV, LY, MA, MD, ME, MK, MM, MN, MT, MX, MY, NG, NI, NL, NO, NP, NZ, PA, PE, PH, PK, PL, PT, PY, QA, RO, RS, RU, SA, SD, SE, SG, SI, SK, SN, SV, TH, TN, TR, TW, TZ, UA, UG, US, UY, UZ, VE, VN, XK, ZA, ZM, ZW. Letter case is ignored. Bookmakers depend on the market; markets AE, BE, BR, HR, HU, ID, KZ and LT had no bookmakers when verified.subdivision (optional): a US state (with geo=US) or Canadian province (with geo=CA); any other combination is rejected. It changes which bookmakers are licensed. US: AK, AL, AR, AZ, CA, CO, CT, DC, DE, FL, GA, HI, IA, ID, IL, IN, KS, KY, LA, MA, MD, ME, MI, MN, MO, MS, MT, NC, ND, NE, NH, NJ, NM, NV, NY, OH, OK, OR, PA, RI, SC, SD, TN, TX, UT, VA, VT, WA, WI, WV, WY. Canada: AB, BC, MB, NB, NL, NS, NT, NU, ON, PE, QC, SK, YT.Invalid geo/subdivision values return 400 before any upstream request. Only competitions where the team is among the priced favourites appear: Manchester City was listed for the Premier League, the Champions League and the EFL Cup, a Los Angeles Lakers query only for the NBA.
Response fields: team_id, team_name, geo, subdivision, has_more, bookmakers ({id, name}) and tournaments. Each tournament has id (the season-level tournament id, which also works with /api/v1/flashscore/tournament-outright-odds), name and offers (bookmaker_id, odds, change UP or DOWN when reported, active, best). A team with no listed title odds, or a market without bookmakers, returns empty lists.
Example response (shortened):
{"code":200,"msg":"OK","data":{"source_url":"https://global.ds.lsapp.eu/odds/pq_graphql?_hash=two&geoIpCode=GB&geoIpSubdivisionCode=&participantId=Wtn9Stg0&projectId=2","team_id":"Wtn9Stg0","team_name":"Manchester City","geo":"GB","has_more":false,"bookmakers":[{"id":16,"name":"bet365"},{"id":1281,"name":"BetMGM.uk"}],"tournaments":[{"id":"SY30SsKF","name":"Premier League","offers":[{"bookmaker_id":16,"odds":5,"change":"UP","active":true,"best":false}]},{"id":"tfRdlhP9","name":"Champions League","offers":[{"bookmaker_id":1281,"odds":10,"change":"UP","active":true,"best":false}]}]}}
| Field | Filled in, of 3 checked | Values in the sample |
|---|---|---|
| id | 3 | |
| name | 3 | “Betway” and 2 other values |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id | string | Yes | Eight-character Flashscore team id | Wtn9Stg0 | |
| geo | string | No | GB | Viewer market country code from flashscore-odds-geos; defaults to GB Allowed values: AE, AL, AM, AO, AR, AT, AU, AZ, BA, BD, BE, BG, BO, BR, BY, CA, CH, CI, CL, CM, CN, CO, CR, CY, CZ, DE, DK, DO, DZ, EC, EE, EG, ES, ET, FI, FR, GB, GE, GH, GR, GT, HK, HN, HR, HU, ID, IE, IL, IN, IQ, IR, IS, IT, JO, JP, KE, KG, KH, KR, KW, KZ, LA, LB, LK, LT, LU, LV, LY, MA, MD, ME, MK, MM, MN, MT, MX, MY, NG, NI, NL, NO, NP, NZ, PA, PE, PH, PK, PL, PT, PY, QA, RO, RS, RU, SA, SD, SE, SG, SI, SK, SN, SV, TH, TN, TR, TW, TZ, UA, UG, US, UY, UZ, VE, VN, XK, ZA, ZM, ZW. | GB |
| subdivision | string | No | US state (with geo US) or Canadian province (with geo CA) code from flashscore-odds-geos; rejected with any other geo Allowed values: AB, AK, AL, AR, AZ, BC, CA, CO, CT, DC, DE, FL, GA, HI, IA, ID, IL, IN, KS, KY, LA, MA, MB, MD, ME, MI, MN, MO, MS, MT, NB, NC, ND, NE, NH, NJ, NL, NM, NS, NT, NU, NV, NY, OH, OK, ON, OR, PA, PE, QC, RI, SC, SD, SK, TN, TX, UT, VA, VT, WA, WI, WV, WY, YT. | NJ | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/flashscore/team-outright-odds?id=Wtn9Stg0&geo=AE&subdivision=AB" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"source_url": "https://global.ds.lsapp.eu/odds/pq_graphql?_hash=two&geoIpCode=GB&geoIpSubdivisionCode=&participantId=Wtn9Stg0&projectId=2",
"team_id": "Wtn9Stg0",
"team_name": "Manchester City",
"geo": "GB",
"has_more": false,
"bookmakers": [
{
"id": 16,
"name": "bet365"
},
{
"id": 1281,
"name": "BetMGM.uk"
}
],
"tournaments": [
{
"id": "SY30SsKF",
"name": "Premier League",
"offers": [
{
"bookmaker_id": 16,
"odds": 5,
"change": "UP",
"active": true,
"best": false
}
]
},
{
"id": "tfRdlhP9",
"name": "Champions League",
"offers": [
{
"bookmaker_id": 1281,
"odds": 10,
"change": "UP",
"active": true,
"best": false
}
]
}
]
}
}Request schema
No body schema
Response schema
Inline response schema
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | Code is the HTTP status code or a custom code used to indicate the result of the request @example 200 | |||
| data | flashscore.TeamOutrightOddsResponse | No | ||||
| data.bookmakers | array | No | ||||
| data.bookmakers[].id | integer | No | ||||
| data.bookmakers[].name | string | No | ||||
| data.geo | string | No | ||||
| data.has_more | boolean | No | ||||
| data.source_url | string | No | ||||
| data.subdivision | string | No | ||||
| data.team_id | string | No | ||||
| data.team_name | string | No | ||||
| data.tournaments | array | No | ||||
| data.tournaments[].id | string | No | ||||
| data.tournaments[].name | string | No | ||||
| data.tournaments[].offers | array | No | ||||
| data.tournaments[].offers[].active | boolean | No | ||||
| data.tournaments[].offers[].best | boolean | No | ||||
| data.tournaments[].offers[].bookmaker_id | integer | No | ||||
| data.tournaments[].offers[].change | string | No | UP, DOWN | |||
| data.tournaments[].offers[].odds | number | No | ||||
| msg | unknown | No | Msg is the message that describes the result of the request @example "Request successful" |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/flashscore/team-outright-odds?id=Wtn9Stg0&geo=AE&subdivision=AB" \
-H "x-api-key: $CRAWLORA_API_KEY"