Localization

The Odditt B2B API supports localized responses for trend narratives and descriptions. Send the X-Language header to receive translated content.

Usage

Include the X-Language header in your request:

curl -X POST https://api.odditt.com/v1/trends/mixed-flows \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "X-Language: es-419" \
  -H "Content-Type: application/json" \
  -d '{"sport_ids": [1], "league_ids": [7], "page": 1, "page_size": 10}'

Any BCP-47 language tag is accepted, case-insensitive, including granular regional codes - es, ES-419, es_419, es-MX, and pt-BR all work. Resolution picks the closest available translation: an exact match wins; otherwise the base language is used (es-MX resolves to es-419); codes with no available translation fall back to English. The request never fails because of the header.

Supported Languages

CodeLanguage
enEnglish (default)
es-419Spanish (Latin America)
itItalian
pt-BRPortuguese (Brazil)

Additional languages are added over time - ask your Odditt contact about upcoming coverage. When no X-Language header is provided, responses default to English.

What Gets Translated

Localization applies to trend narrative content - the human-readable text that describes statistical insights:

  • Fact condition descriptions (e.g. "has scored 20+ points in 8 of the last 10 games")
  • Fun flow descriptions

Reference data (sport names, league names, team names, player names) and structured fields (IDs, numbers, timestamps) are not translated.

Supported Endpoints

The X-Language header is supported on the flow retrieval endpoints:

Other endpoints - including reference endpoints (/v1/references/*), events, and odds endpoints - ignore the header.

Widget Integration

If you embed the Bet Discovery Widget, you don't need to set X-Language yourself - the widget's lang iframe parameter is automatically forwarded to the API as the X-Language header on every request, so trend narratives follow the embed's language. Note that the widget UI locale list and the API narrative language list differ - a locale like de-DE localizes the widget UI, but narratives fall back to English until a matching API language exists.


Did this page help you?