BetTune API

BetTune API

Interaktive Dokumentation für die externe BetTune API: Matches finden, Prediction-Filter lesen und Prediction-Quoten verwalten.

OpenAPI-Schema herunterladen
Öffentliche API-Basis-URL
https://ovaccess.com/bet-tune-api/v1
API-Token

Du kannst deinen API-Token auf der BetTune-Settings-Seite erstellen oder neu generieren.

BetTune Settings öffnen
Nur mit PRO-Abonnement

Die BetTune API ist nur für Nutzer mit aktivem PRO-Abonnement verfügbar.

Authentifizierung

Authorization: Bearer dein_bettune_api_token

Endpunkte

Öffne einen Endpunkt, um Parameter, Request Body, Antworten, Beispiele und Schemas zu sehen.

get/sports

List available sports

Sports

Antworten

200 Available sports.
object
counterforderlich
integer
itemserforderlich
array<object>
object
iderforderlich
integer
Beispiel: 1
nameerforderlich
string
Beispiel: "football"
{
  "count": 1,
  "items": [
    {
      "id": 1,
      "name": "football"
    }
  ]
}
401 Missing or invalid API token.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "missing_token",
  "message": "No token provided"
}
429 Rate limit exceeded.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "rate_limit_exceeded",
  "message": "Rate limit exceeded"
}
Header: Retry-After, X-RateLimit-Limit, X-RateLimit-Window
get/matches

List matches for one UTC date

Matches

Parameter

NameOrtErforderlichTypBeschreibung
datequeryJastring:dateUTC date in `YYYY-MM-DD` format.
sportqueryJaintegerSport id. Currently only football is exposed by `/sports`.

Antworten

200 Matches for the requested UTC date.
object
dateerforderlich
string:date
Beispiel: "2026-06-06"
counterforderlich
integer
itemserforderlich
array<object>
object
iderforderlich
integer
Beispiel: 1611243
dateerforderlich
string:date-time
Beispiel: "2026-06-06T18:00:00+00:00"
finishederforderlich
boolean
Beispiel: false
scoreerforderlich
object
countryerforderlich
object
tournamenterforderlich
object
seasonerforderlich
object
homeerforderlich
object
awayerforderlich
object
400 Invalid query parameters.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "date_invalid",
  "message": "Invalid or missing date. Expected format: YYYY-MM-DD"
}
401 Missing or invalid API token.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "missing_token",
  "message": "No token provided"
}
429 Rate limit exceeded.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "rate_limit_exceeded",
  "message": "Rate limit exceeded"
}
Header: Retry-After, X-RateLimit-Limit, X-RateLimit-Window
get/prediction-filters

List prediction filters

Prediction Filters

Antworten

200 Prediction-based filters for the current API token user.
object
counterforderlich
integer
itemserforderlich
array<object>
object
iderforderlich
integer
Beispiel: 11583
nameerforderlich
string
Beispiel: "Manual football"
sporterforderlich
object
betTypeerforderlich
string
Beispiel: "Home"
statuserforderlich
string
Beispiel: "approved"
enum: disabled, approved
401 Missing or invalid API token.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "missing_token",
  "message": "No token provided"
}
429 Rate limit exceeded.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "rate_limit_exceeded",
  "message": "Rate limit exceeded"
}
Header: Retry-After, X-RateLimit-Limit, X-RateLimit-Window
post/predictions/search

Search existing predictions

Predictions

Request Body

object
filterIderforderlich
integer
Beispiel: 11583
matchIdserforderlich
array<integer>
Beispiel: [1611243,1611244]
{
  "filterId": 11583,
  "matchIds": [
    1611243,
    1611244
  ]
}

Antworten

200 Existing predictions for requested matches.
object
counterforderlich
integer
itemserforderlich
array<object>
object
iderforderlich
integer
Beispiel: 10
filterIderforderlich
integer
Beispiel: 11583
matchIderforderlich
integer
Beispiel: 1611243
oddserforderlich
string
Beispiel: "2.150000"
sourceerforderlich
string
Beispiel: "api"
enum: api, ui
createdAterforderlich
string:date-time
Beispiel: "2026-06-06T12:00:00+00:00"
updatedAterforderlich
string:date-time
Beispiel: "2026-06-06T12:05:00+00:00"
400 Validation error.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "invalid_json_body",
  "message": "Invalid JSON body"
}
401 Missing or invalid API token.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "missing_token",
  "message": "No token provided"
}
403 The current user cannot access this resource.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "pro_subscription_required",
  "message": "Prediction-based filters are available only for PRO subscription"
}
404 Filter or match not found.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "filter_not_found",
  "message": "Filter not found"
}
429 Rate limit exceeded.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "rate_limit_exceeded",
  "message": "Rate limit exceeded"
}
Header: Retry-After, X-RateLimit-Limit, X-RateLimit-Window
put/prediction-filters/{filterId}/matches/{matchId}/prediction

Create or update prediction odds

Predictions

Parameter

NameOrtErforderlichTypBeschreibung
filterIdpathJainteger-
matchIdpathJainteger-

Request Body

object
oddserforderlich
string | number
Beispiel: "2.15"
{
  "odds": "2.15"
}

Antworten

200 Created or updated prediction.
object
iderforderlich
integer
Beispiel: 10
filterIderforderlich
integer
Beispiel: 11583
matchIderforderlich
integer
Beispiel: 1611243
oddserforderlich
string
Beispiel: "2.150000"
sourceerforderlich
string
Beispiel: "api"
enum: api, ui
createdAterforderlich
string:date-time
Beispiel: "2026-06-06T12:00:00+00:00"
updatedAterforderlich
string:date-time
Beispiel: "2026-06-06T12:05:00+00:00"
400 Validation error.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "invalid_json_body",
  "message": "Invalid JSON body"
}
401 Missing or invalid API token.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "missing_token",
  "message": "No token provided"
}
403 The current user cannot access this resource.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "pro_subscription_required",
  "message": "Prediction-based filters are available only for PRO subscription"
}
404 Filter or match not found.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "filter_not_found",
  "message": "Filter not found"
}
429 Rate limit exceeded.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "rate_limit_exceeded",
  "message": "Rate limit exceeded"
}
Header: Retry-After, X-RateLimit-Limit, X-RateLimit-Window
delete/prediction-filters/{filterId}/matches/{matchId}/prediction

Delete prediction

Predictions

Parameter

NameOrtErforderlichTypBeschreibung
filterIdpathJainteger-
matchIdpathJainteger-

Antworten

204 Prediction deleted. The endpoint is idempotent.
400 Validation error.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "invalid_json_body",
  "message": "Invalid JSON body"
}
401 Missing or invalid API token.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "missing_token",
  "message": "No token provided"
}
403 The current user cannot access this resource.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "pro_subscription_required",
  "message": "Prediction-based filters are available only for PRO subscription"
}
404 Filter or match not found.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "filter_not_found",
  "message": "Filter not found"
}
429 Rate limit exceeded.
object
codeerforderlich
string
messageerforderlich
string
{
  "code": "rate_limit_exceeded",
  "message": "Rate limit exceeded"
}
Header: Retry-After, X-RateLimit-Limit, X-RateLimit-Window

Schemas

ErrorResponse
object
codeerforderlich
string
messageerforderlich
string
SportsResponse
object
counterforderlich
integer
itemserforderlich
array<object>
object
iderforderlich
integer
Beispiel: 1
nameerforderlich
string
Beispiel: "football"
Sport
object
iderforderlich
integer
Beispiel: 1
nameerforderlich
string
Beispiel: "football"
MatchesResponse
object
dateerforderlich
string:date
Beispiel: "2026-06-06"
counterforderlich
integer
itemserforderlich
array<object>
object
iderforderlich
integer
Beispiel: 1611243
dateerforderlich
string:date-time
Beispiel: "2026-06-06T18:00:00+00:00"
finishederforderlich
boolean
Beispiel: false
scoreerforderlich
object
countryerforderlich
object
tournamenterforderlich
object
seasonerforderlich
object
homeerforderlich
object
awayerforderlich
object
Match
object
iderforderlich
integer
Beispiel: 1611243
dateerforderlich
string:date-time
Beispiel: "2026-06-06T18:00:00+00:00"
finishederforderlich
boolean
Beispiel: false
scoreerforderlich
object
countryerforderlich
object
tournamenterforderlich
object
seasonerforderlich
object
homeerforderlich
object
awayerforderlich
object
Score
object
homeerforderlich
integer
Beispiel: null
awayerforderlich
integer
Beispiel: null
IdName
object
iderforderlich
integer
nameerforderlich
string
PredictionFiltersResponse
object
counterforderlich
integer
itemserforderlich
array<object>
object
iderforderlich
integer
Beispiel: 11583
nameerforderlich
string
Beispiel: "Manual football"
sporterforderlich
object
betTypeerforderlich
string
Beispiel: "Home"
statuserforderlich
string
Beispiel: "approved"
enum: disabled, approved
PredictionFilter
object
iderforderlich
integer
Beispiel: 11583
nameerforderlich
string
Beispiel: "Manual football"
sporterforderlich
object
betTypeerforderlich
string
Beispiel: "Home"
statuserforderlich
string
Beispiel: "approved"
enum: disabled, approved
SearchPredictionsRequest
object
filterIderforderlich
integer
Beispiel: 11583
matchIdserforderlich
array<integer>
Beispiel: [1611243,1611244]
PutPredictionRequest
object
oddserforderlich
string | number
Beispiel: "2.15"
PredictionsResponse
object
counterforderlich
integer
itemserforderlich
array<object>
object
iderforderlich
integer
Beispiel: 10
filterIderforderlich
integer
Beispiel: 11583
matchIderforderlich
integer
Beispiel: 1611243
oddserforderlich
string
Beispiel: "2.150000"
sourceerforderlich
string
Beispiel: "api"
enum: api, ui
createdAterforderlich
string:date-time
Beispiel: "2026-06-06T12:00:00+00:00"
updatedAterforderlich
string:date-time
Beispiel: "2026-06-06T12:05:00+00:00"
Prediction
object
iderforderlich
integer
Beispiel: 10
filterIderforderlich
integer
Beispiel: 11583
matchIderforderlich
integer
Beispiel: 1611243
oddserforderlich
string
Beispiel: "2.150000"
sourceerforderlich
string
Beispiel: "api"
enum: api, ui
createdAterforderlich
string:date-time
Beispiel: "2026-06-06T12:00:00+00:00"
updatedAterforderlich
string:date-time
Beispiel: "2026-06-06T12:05:00+00:00"