Opono
Skip to content
Documentation menu Fixtures ▾

API reference

Fixtures

Copy as Markdown

List fixtures

GET /v1/fixtures

Find pre-match fixtures at zero credits; test keys return an empty list.

Authentication: Bearer API key with data.read; active Plus or Pro plan required.

Parameters

Path parameters

NameTypeRequiredDescription
———None.

Query parameters

NameTypeRequiredDescription
fromstringNoStart date or ISO 8601 timestamp with a time zone; defaults to now.
tostringNoEnd date (inclusive) or timestamp with a time zone; defaults to seven days after from and must be on or after from.
competitionintegerNoCompetition ID; use a positive integer; minimum: 1.
teamstringNoTeam name filter; maximum length: 200.
limitintegerNoMaximum rows to return; range: 1–200; default: 100.

Body parameters

NameTypeRequiredDescription
———None.

Example request

bash
curl 'https://api.opono.com/v1/fixtures?from=2026-10-18&to=2026-10-19&team=Everton&limit=20' \
  --header "Authorization: Bearer $OPONO_API_KEY"

Response

FieldTypeDescription
objectstringlist.
has_morebooleanTrue when results are truncated; narrow your date window or filters.
dataarrayMatching fixtures.
data[].fixture_idintegerUse this ID to request a simulation.
data[].kickoffstringKick-off in ISO 8601 UTC.
data[].home / data[].awayobjectTeam ID and name.
data[].competitionobjectCompetition ID and name.
data[].statestringprovisional, inputs_final, or lineups_announced.
data[].data_versionstringOpaque input version.
data[].summaryobject or nullCached forecast summary, or null when unavailable.
data[].freshness.statusstringfresh, kickoff_passed, or unavailable. A fixture is on sale until kick-off whatever its inputs' age.
data[].freshness.reasonstringWhen the inputs are from, or why the fixture is not on sale.
data[].freshness.evaluatedAtnumberCheck time in Unix milliseconds.
data[].freshness.validUntilnumber or nullKick-off in Unix milliseconds, minus one; null when not on sale.
data[].freshness.inputsAsOfnumberWhen the inputs were captured, in Unix milliseconds. Absent when unknown.

Example response

200 response with a test key.

json
{
  "object": "list",
  "has_more": false,
  "data": []
}

Errors

StatusCodeMeaning
400parameter_invalidA parameter has an invalid value.
401invalid_api_keyThe credential cannot authenticate.
401key_revokedThe API key has been revoked.
401key_expiredThe API key has expired.
403scope_missingThe key lacks the required scope.
403tier_restrictedThe organisation plan does not include this operation.
403org_suspendedYour account is suspended.
403ip_not_allowedThe caller is outside the key's IP allowlist.
429rate_limitedA request or authentication rate limit was exceeded.
503dependency_unavailableRequest admission is unavailable.
503maintenanceThe API is paused for maintenance.