Skip to content
datasportsAPI

FixturesMomentum

Documentation

/

Type to filter the docs by title or path.

FixturesEndpoint 13 of 116

Momentum

GET

/v2/fixtures/{id}/momentum

Plan
Pro + Business
Auth
Bearer dsa_live_…
Parameters
1 required · 0 optional
Returns
Momentum

Attack-momentum curve with a point for every minute: positive values mean home pressure, negative values away pressure. Tennis uses games instead — a value per game (positive when the home player took it) plus a flag for whether serve was broken.

Plan access

Requires a Pro or Business plan; every other plan receives 403 endpoint_not_in_plan.

Worth knowing

  • points is filled for football, basketball and ice hockey in covered leagues; games is filled for tennis only (where points stays empty) and is empty for all other sports.
  • Both lists are empty before kick-off and when no graph exists.
  • Football gives each added-time minute its own point: minute stays at the last minute of the period (45 or 90) and addedMinute runs 1, 2, …; in normal time addedMinute is null.
  • In other sports (basketball, handball, …) a minute value ending in .5 can mark the end of a period — 45.5 is half-time.
  • Football and ice hockey have used the curve the source draws on its own website since 2026-11-04 (see the changelog).

01Parameters

  • idpathRequired

    fixture id issued by DataSportsAPI, a positive integer

02Request

The same call from the command line and each SDK. The SDK lines assume a client created with your key; left out, it is read from DATASPORTSAPI_API_KEY. Installing a client: SDKs & CLI.

curl -H "Authorization: Bearer dsa_live_…" \
    "https://api.datasportsapi.com/v2/fixtures/{id}/momentum"

03Response

The top-level keys of the JSON body. Each object links to its full shape in the data reference.

data
Momentum
ObjectsMomentum
Example response
{ "data": { "points": [ { "minute": 1, "addedMinute": null, "value": 3 }, { "minute": 2, "addedMinute": null, "value": 12 }, …,
                       { "minute": 45, "addedMinute": null, "value": 0 }, { "minute": 45, "addedMinute": 1, "value": -22 }, …, { "minute": 46, "addedMinute": null, "value": 16 }, … ],
    "periodLengthMinutes": 45, "periodCount": 2, "overtimeLengthMinutes": 15, "overtimeCount": null, "games": [] } }

// Tennis:
{ "data": { "points": [], "periodLengthMinutes": null, "periodCount": null, "overtimeLengthMinutes": null, "overtimeCount": null,
    "games": [ { "period": "period1", "game": 1, "value": -10, "breakOfServe": false },
               { "period": "period1", "game": 2, "value": 34, "breakOfServe": true }, … ] } }

04Errors

Nothing specific to this endpoint: only the account-wide errors below apply.

Any key can also meet401unauthorized429rate_limited429quota_exceeded500internal_errorEvery error code