Selections

Selections related endpoints

Get similar selections

get
/api/sports/selections/similar

Returns similar selections for the given selection id(s).

Similarity is measured for the selection's characteristics such as the market type but also for the selection's underlying event.

Only selections for events starting between the requested time range will be considered.

Distance

The metric used to measure similarity between items is called distance. It is a system indicator on how similar the item is to the input.

The smaller the number the more similar the item.

The normalized value of the item's distance to the input is also assigned to each selection as its confidence.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
selection_idsstringRequired

Comma separated list of selection ids for which to return similar selections.

Example: c495ac571a7e4ecf2014abd597d2c1aa
countinteger · min: 1Optional

Number of selections to return.

Default: 5Example: 5
filtersstring · enumOptional

Optional filtering on the events and markets to consider for the returned selections. It expects a string adhering to the filtering format, as described in the filtering section, e.g. sport:eq:Soccer;market:eq:1X2.

Example: sport:eq:Soccer;market:eq:1X2Possible values:
fromstring · date-timeOptional

The minimum event's starting datetime.

from_offsetstringOptional

Considers events starting after the from timestamp plus the given minutes/hours/days. If not set defaults to 0 minutes. The value must be in range [-7d - 7d].

Default: 0Example: 0Pattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
to_offsetstringOptional

Considers events starting till the from timestamp plus the given minutes/hours/days. If not set defaults to 2 days. The value must be in range [-7d - 7d].

Default: 2dExample: 2dPattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
hoursinteger · min: 1 · max: 72Optional

DEPRECATED: Considers events starting till the from timestamp plus the given hours. If not set defaults to one day (24 hours).

fieldsstring · enumOptional

Optional selection of the object fields to retrieve. It expects a comma separated list of strings, as described in the field selection section, e.g. event_id,event_type.

Default: ["event_id","event_type","begin","country","country_id","league","league_id","sport","sport_id","participants","participant_ids","status","selection_id","uof_external_id","bet_offer_id","market","market_id","market_type","market_type_id","outcome","outcome_id","period","period_id","quote","quote_group","side","count","distance","confidence"]Possible values:
operatorstringOptional

The operator to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored.

bookmaker_idintegerOptional

The bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the sub_bookmaker_id parameter.

sub_bookmaker_idintegerOptional

The sub-bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the bookmaker_id parameter.

event_typesstring · enumOptional

List of event types to consider when generating recommendations. One or more types can be provided. Available options are:

  • match: Standard matches to be considered.
  • seasonal: Seasonal events to be considered.
  • forced_events: Handpicked events to be considered regardless of their start_time.
Default: match,forced_eventsPossible values:
locationstringOptional

The location of the page where the request takes place.

Example: inplay_widget
Header parameters
x-vaix-client-idstringRequired

Custom client header, the value should be the name of the group the user belongs to

x-vaix-authentication-methodstringOptional

Authentication method to be used, supported values [vaix, iam]. Defaults to vaix

Responses
200

OK

application/json
get
/api/sports/selections/similar
GET /api/sports/selections/similar?selection_ids=text HTTP/1.1
Host: api.vaix.ai
Authorization: Bearer YOUR_SECRET_TOKEN
x-vaix-client-id: text
Accept: */*
{
  "data": [
    {
      "event_id": "sr:match:21516115",
      "selection_id": "a142f3a4ca61f1933d912d604c860118"
    },
    {
      "event_id": "sr:match:21514507",
      "selection_id": "de5ac237061d4b6d650043116f947f2a"
    },
    {
      "event_id": "sr:match:24719116",
      "selection_id": "692949653076070098cf9538c6b6c265"
    },
    {
      "event_id": "sr:match:24719114",
      "selection_id": "2f83f453780399756af840966a4a02dd"
    },
    {
      "event_id": "sr:match:24719112",
      "selection_id": "db8f18fbe2eadc0516758bc5e4520aaa"
    }
  ],
  "status": "success"
}
get
/api/sports/selections/recommended

Returns recommended selections for the given user.

The top count recommended events for the given user are fetched. For each of these events, the top selection_count selections are returned.

Recommended selections per event

The recommended selections returned per event are also personalized based on the user's preferences.

Notice that in the case of multiple selections per event, each selection will be of different market type.

Getting recommended selections

In this example we get 3 recommended events for the user with id 1. For each of these events, we request 2 selections.

$ curl --request GET \
  --url 'https://api.vaix.ai/api/sports/selections/recommended?user=1&count=3%3Aeq%3Aselection_count=2'
Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
userstringRequired

The user id.

selection_countinteger · min: 1Optional

Number of selections to return for each event.

Default: 1Example: 1
countinteger · min: 1Optional

Number of events to return.

Default: 5Example: 5
filtersstring · enumOptional

Optional filtering on the events and markets to consider for the returned selections. It expects a string adhering to the filtering format, as described in the filtering section, e.g. sport:eq:Soccer;market:eq:1X2.

Example: sport:eq:Soccer;market:eq:1X2Possible values:
fromstring · date-timeOptional

The minimum event's starting datetime.

from_offsetstringOptional

Considers events starting after the from timestamp plus the given minutes/hours/days. If not set defaults to 0 minutes. The value must be in range [-7d - 7d].

Default: 0Example: 0Pattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
to_offsetstringOptional

Considers events starting till the from timestamp plus the given minutes/hours/days. If not set defaults to 2 days. The value must be in range [-7d - 7d].

Default: 2dExample: 2dPattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
hoursinteger · min: 1 · max: 72Optional

DEPRECATED: Considers events starting till the from timestamp plus the given hours. If not set defaults to one day (24 hours).

event_idsstringOptional

The event ids to get selections for. If not set, the most recommended events for the user will be automatically picked.

Example: sr:match:23150637
fieldsstring · enumOptional

Optional selection of the object fields to retrieve. It expects a comma separated list of strings, as described in the field selection section, e.g. event_id,event_type.

Default: ["event_id","event_type","begin","country","country_id","league","league_id","sport","sport_id","participants","participant_ids","status","selection_id","uof_external_id","bet_offer_id","market","market_id","market_type","market_type_id","outcome","outcome_id","period","period_id","quote","quote_group","side","count","confidence"]Possible values:
operatorstringOptional

The operator to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored.

bookmaker_idintegerOptional

The bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the sub_bookmaker_id parameter.

sub_bookmaker_idintegerOptional

The sub-bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the bookmaker_id parameter.

event_typesstring · enumOptional

List of event types to consider when generating recommendations. One or more types can be provided. Available options are:

  • match: Standard matches to be considered.
  • seasonal: Seasonal events to be considered.
  • forced_events: Handpicked events to be considered regardless of their start_time.
Default: match,forced_eventsPossible values:
group_limitstring · enumOptional

Applies a limit to a group of items. For more information, head to Limiting -> Group Limiting section of the docs. country:5,country_id:2.

Possible values:
order_bystring · enumOptional

The columns to sort the results by. It expects a string adhering to the ordering format, as described in the ordering section, e.g. +event_confidence,-league_confidence.

Possible values:
locationstringOptional

The location of the page where the request takes place.

Example: inplay_widget
rawstring · enumOptional

Comma separated list of keywords. If given, this input will be used as user demographics data for the recommendations, e.g country:gr,city:ath.

Possible values:
reorder_bystring · enumOptional

Optional re ordering of the results based on one or more metrics. Expected format is a comma separated list of keywords where each value should be a float in the range [0,1]. e.g. popular:0.3,trending:0.2. For more information head to the ordering documentation section.

Possible values:
populationinteger · min: 1Optional

Number of items to use when reordering items with reorder_by parameter. This parameter is meaningful only when reorder_by is also set. If not set, then count will be used as population.

Example: 5
diversity_limitstring · enumOptional

A string in the format 'field:value', where 'field' is a supported field and 'value' is a positive integer. Used for configuration, filtering, or limiting based on field values.

Example: sport:3Possible values:
Header parameters
x-vaix-client-idstringRequired

Custom client header, the value should be the name of the group the user belongs to

x-vaix-authentication-methodstringOptional

Authentication method to be used, supported values [vaix, iam]. Defaults to vaix

Responses
200

OK

application/json
get
/api/sports/selections/recommended
GET /api/sports/selections/recommended?user=text HTTP/1.1
Host: api.vaix.ai
Authorization: Bearer YOUR_SECRET_TOKEN
x-vaix-client-id: text
Accept: */*
{
  "data": [
    {
      "begin": "2021-07-02T14:00:00Z",
      "confidence": 0.723419964,
      "country": "International Clubs",
      "country_id": "sr:category:393",
      "event_id": "sr:match:27186050",
      "event_type": null,
      "league": "AFC Champions League",
      "league_id": "sr:tournament:463",
      "participant_ids": [
        "sr:competitor:7644",
        "sr:competitor:3376"
      ],
      "participants": [
        "Daegu FC",
        "Beijing Guoan"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "count": 7,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 3,
          "period": null,
          "period_id": null,
          "quote": 100,
          "quote_group": ">52.2",
          "selection_id": "f90066f715f2259d1797000ddf720ed4",
          "side": "back",
          "uof_external_id": "uof:1/sr:sport:1/1/3"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    },
    {
      "begin": "2021-07-02T17:55:00Z",
      "confidence": 0.155901492,
      "country": "ATP",
      "country_id": "sr:category:3",
      "event_id": "sr:match:27967946",
      "event_type": null,
      "league": "Wimbledon Men Singles",
      "league_id": "sr:tournament:2555",
      "participant_ids": [
        "sr:competitor:117916",
        "sr:competitor:15126"
      ],
      "participants": [
        "Shapovalov, Denis",
        "Murray, Andy"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "count": 9,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 186,
          "outcome": null,
          "outcome_id": 4,
          "period": null,
          "period_id": null,
          "quote": 1.03,
          "quote_group": "0-1.1",
          "selection_id": "38b1d33ce2ee498c34e7a9036941dd32",
          "side": "back",
          "uof_external_id": "uof:1/sr:sport:5/186/4"
        }
      ],
      "sport": "Tennis",
      "sport_id": "sr:sport:5",
      "status": "closed"
    }
  ],
  "status": "success"
}
get
/api/sports/selections/popular

Get popular selections for the given time range.

Only events starting between the given time range will be considered and the most popular selections across these events will be returned.

Flat vs nested response

Two options are supported for the response format.

  • Flat: The event and selection info are returned merged in a single object. The results are sorted based on popularity

  • Nested: The selections are returned grouped by their events. Each event's selections are sorted based on popularity.

Availability of results

Notice that if no bets for the available selections have been placed in the given time frame, no results will be returned.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
countinteger · min: 1 · max: 100Optional

Number of selections to return.

Default: 5Example: 5
event_idsstringOptional

Comma separated list of event ids for which to return selections.

Example: sr:match:20521307,sr:match:20521317
filtersstring · enumOptional

Optional filtering on the events and markets to consider for the returned selections. It expects a string adhering to the filtering format, as described in the filtering section, e.g. sport:eq:Soccer;market:eq:1X2.

Example: sport:eq:Soccer;market:eq:1X2Possible values:
fromstring · date-timeOptional

The minimum event's starting datetime.

from_offsetstringOptional

Considers events starting after the from timestamp plus the given minutes/hours/days. If not set defaults to 0 minutes. The value must be in range [-7d - 7d].

Default: 0Example: 0Pattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
to_offsetstringOptional

Considers events starting till the from timestamp plus the given minutes/hours/days. If not set defaults to 2 days. The value must be in range [-7d - 7d].

Default: 2dExample: 2dPattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
hoursinteger · min: 1 · max: 72Optional

DEPRECATED: Considers events starting till the from timestamp plus the given hours. If not set defaults to one day (24 hours).

fieldsstring · enumOptional

Optional selection of the object fields to retrieve. It expects a comma separated list of strings, as described in the field selection section, e.g. event_id,event_type.

Default: ["event_id","event_type","begin","country","country_id","league","league_id","sport","sport_id","participants","participant_ids","status","selection_id","uof_external_id","bet_offer_id","market","market_id","market_type","market_type_id","outcome","outcome_id","period","period_id","quote","quote_group","side","count"]Possible values:
operatorstringOptional

The operator to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored.

bookmaker_idintegerOptional

The bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the sub_bookmaker_id parameter.

sub_bookmaker_idintegerOptional

The sub-bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the bookmaker_id parameter.

event_typesstring · enumOptional

List of event types to consider when generating recommendations. One or more types can be provided. Available options are:

  • match: Standard matches to be considered.
  • seasonal: Seasonal events to be considered.
  • forced_events: Handpicked events to be considered regardless of their start_time.
Default: match,forced_eventsPossible values:
locationstringOptional

The location of the page where the request takes place.

Example: inplay_widget
Header parameters
x-vaix-client-idstringRequired

Custom client header, the value should be the name of the group the user belongs to

x-vaix-authentication-methodstringOptional

Authentication method to be used, supported values [vaix, iam]. Defaults to vaix

Responses
200

OK

application/json
get
/api/sports/selections/popular
GET /api/sports/selections/popular HTTP/1.1
Host: api.vaix.ai
Authorization: Bearer YOUR_SECRET_TOKEN
x-vaix-client-id: text
Accept: */*
{
  "data": [
    {
      "begin": "2021-07-03T00:00:00Z",
      "country": "International",
      "country_id": "sr:category:4",
      "event_id": "sr:match:27738714",
      "event_type": null,
      "league": "Copa America",
      "league_id": "sr:tournament:133",
      "participant_ids": [
        "sr:competitor:4748",
        "sr:competitor:4754"
      ],
      "participants": [
        "Brazil",
        "Chile"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "count": 4412,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 1,
          "period": null,
          "period_id": null,
          "quote": 1.32,
          "quote_group": "1.2-1.4",
          "selection_id": "5d02d54e23961c8511b9bc97366682ac",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/1"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    },
    {
      "begin": "2021-07-02T16:00:00Z",
      "country": "International",
      "country_id": "sr:category:4",
      "event_id": "sr:match:21514503",
      "event_type": null,
      "league": "Euro Cup",
      "league_id": "sr:tournament:1",
      "participant_ids": [
        "sr:competitor:4699",
        "sr:competitor:4698"
      ],
      "participants": [
        "Switzerland",
        "Spain"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "count": 3874,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 3,
          "period": null,
          "period_id": null,
          "quote": 1.7,
          "quote_group": "1.4-1.8",
          "selection_id": "e6f85d8635c10ed61ff18cb3499f9f0e",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/3"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    },
    {
      "begin": "2021-07-02T19:00:00Z",
      "country": "International",
      "country_id": "sr:category:4",
      "event_id": "sr:match:21516115",
      "event_type": null,
      "league": "Euro Cup",
      "league_id": "sr:tournament:1",
      "participant_ids": [
        "sr:competitor:4717",
        "sr:competitor:4707"
      ],
      "participants": [
        "Belgium",
        "Italy"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "count": 3410,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 1,
          "period": null,
          "period_id": null,
          "quote": 3.4,
          "quote_group": "2.6-4.2",
          "selection_id": "038dd32eb17260c134c515d8c9e43b91",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/1"
        },
        {
          "bet_offer_id": null,
          "count": 2037,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 3,
          "period": null,
          "period_id": null,
          "quote": 2.38,
          "quote_group": "1.8-2.6",
          "selection_id": "e2321e73569d1dab9e15633cb2b4e9c4",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/3"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    },
    {
      "begin": "2021-07-02T18:45:00Z",
      "country": "Ireland",
      "country_id": "sr:category:51",
      "event_id": "sr:match:26142132",
      "event_type": null,
      "league": "First Division",
      "league_id": "sr:tournament:193",
      "participant_ids": [
        "sr:competitor:3174",
        "sr:competitor:190654"
      ],
      "participants": [
        "Shelbourne FC",
        "Cabinteely FC"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "count": 2607,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 1,
          "period": null,
          "period_id": null,
          "quote": 1.23,
          "quote_group": "1.2-1.4",
          "selection_id": "75fbc2384842e69aa3766e06650c7ce4",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/1"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    }
  ],
  "status": "success"
}

Get sorted selections

get
/api/sports/selections/sorted

Ranks a specific set of selections for a given user. A confidence value is assigned to each selections and the results are returned sorted by relevance.

Endpoint usage

This endpoint should be used to rank a static set of selections, for example to personalize the promoted selections of the day for each user. To get the most relevant recommendations across all the available selections refer to get_recommended_selections.

Confidence

Each returned item is associated with a number from 0 to 1 indicating the confidence of the system in this specific recommendation.

The confidence is calculated based on both the event and market preferences of the given selection.

The higher the number the more confident the recommendation of it.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
selection_idsstringRequired

Comma separated list of the selection ids to sort.

Example: c495ac571a7e4ecf2014abd597d2c1aa
userstringRequired

The user id.

rawstring · enumOptional

Comma separated list of keywords. If given, this input will be used as user demographics data for the recommendations, e.g country:gr,city:ath.

Possible values:
fieldsstring · enumOptional

Optional selection of the object fields to retrieve. It expects a comma separated list of strings, as described in the field selection section, e.g. event_id,event_type.

Default: ["event_id","event_type","begin","country","country_id","league","league_id","sport","sport_id","participants","participant_ids","status","selection_id","uof_external_id","bet_offer_id","market","market_id","market_type","market_type_id","outcome","outcome_id","period","period_id","quote","quote_group","side","confidence"]Possible values:
operatorstringOptional

The operator to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored.

bookmaker_idintegerOptional

The bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the sub_bookmaker_id parameter.

sub_bookmaker_idintegerOptional

The sub-bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the bookmaker_id parameter.

locationstringOptional

The location of the page where the request takes place.

Example: inplay_widget
Header parameters
x-vaix-client-idstringRequired

Custom client header, the value should be the name of the group the user belongs to

x-vaix-authentication-methodstringOptional

Authentication method to be used, supported values [vaix, iam]. Defaults to vaix

Responses
200

OK

application/json
get
/api/sports/selections/sorted
GET /api/sports/selections/sorted?selection_ids=text&user=text HTTP/1.1
Host: api.vaix.ai
Authorization: Bearer YOUR_SECRET_TOKEN
x-vaix-client-id: text
Accept: */*
{
  "data": [
    {
      "begin": "2021-07-02T16:00:00Z",
      "bet_offer_id": null,
      "confidence": 0.3670864405,
      "country": "International",
      "country_id": "sr:category:4",
      "event_id": "sr:match:21514503",
      "event_type": null,
      "league": "Euro Cup",
      "league_id": "sr:tournament:1",
      "market": "total=4.5",
      "market_id": null,
      "market_type": null,
      "market_type_id": 20,
      "outcome": null,
      "outcome_id": 12,
      "participant_ids": [
        "sr:competitor:4699",
        "sr:competitor:4698"
      ],
      "participants": [
        "Switzerland",
        "Spain"
      ],
      "period": null,
      "period_id": null,
      "quote": 13,
      "quote_group": "7.4-13.8",
      "selection_id": "3929a107b51f6d02b96345f4a3f5a4d9",
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed",
      "uof_external_id": "uof:3/sr:sport:1/20/12?total=4.5"
    },
    {
      "begin": "2021-07-02T19:00:00Z",
      "bet_offer_id": null,
      "confidence": 0.3404481115,
      "country": "International",
      "country_id": "sr:category:4",
      "event_id": "sr:match:21516115",
      "event_type": null,
      "league": "Euro Cup",
      "league_id": "sr:tournament:1",
      "market": null,
      "market_id": null,
      "market_type": null,
      "market_type_id": 10,
      "outcome": null,
      "outcome_id": 9,
      "participant_ids": [
        "sr:competitor:4717",
        "sr:competitor:4707"
      ],
      "participants": [
        "Belgium",
        "Italy"
      ],
      "period": null,
      "period_id": null,
      "quote": 1.61,
      "quote_group": "1.4-1.8",
      "selection_id": "6e2319203e41ff749b61b17cb8c66c0b",
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed",
      "uof_external_id": "uof:3/sr:sport:1/10/9"
    },
    {
      "begin": "2021-07-02T19:00:00Z",
      "bet_offer_id": null,
      "confidence": 0.283523649,
      "country": "Ireland",
      "country_id": "sr:category:51",
      "event_id": "sr:match:25852926",
      "event_type": null,
      "league": "Premier Division",
      "league_id": "sr:tournament:192",
      "market": "hcp=2:0",
      "market_id": null,
      "market_type": null,
      "market_type_id": 65,
      "outcome": null,
      "outcome_id": 1711,
      "participant_ids": [
        "sr:competitor:3177",
        "sr:competitor:3179"
      ],
      "participants": [
        "Shamrock Rovers",
        "Dundalk FC"
      ],
      "period": null,
      "period_id": null,
      "quote": 1.01,
      "quote_group": "0-1.1",
      "selection_id": "779cd372fdac78a0145c5dd635df18fb",
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed",
      "uof_external_id": "uof:3/sr:sport:1/65/1711?hcp=2:0"
    }
  ],
  "status": "success"
}
get
/api/sports/selections/trending

Get trending selections for the given time frame.

Only events starting between the given time range will be considered and the most trending selections across these events will be returned.

Flat vs Nested response

Two options are supported for the response format.

  • Flat: The event and selection info are returned merged in a single object. The results are sorted based on trending score.

  • Nested: The selections are returned group by their events, so if more than one selections correspond to the same event, these will be grouped in the selections field of the given event object. Each event's selections are sorted based on trending score.

Trending score

To calculate trending score for a selection, each bet placed on this selection contributes a value determined by how recently the bet was placed.

Recent bets add more value than older ones.

Getting trending selections

In this example we get 10 trending selections for events played in China.

$ curl --request GET \
  --url 'https://api.vaix.ai/api/sports/selections/trending?count=10&filters=country%3Aeq%3AChina'

Availability of results

Notice that if no bets for the available selections have been placed in the given time frame, no results will be returned.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
countinteger · min: 1 · max: 100Optional

Number of selections to return.

Default: 5Example: 5
event_idsstringOptional

Comma separated list of event ids for which to return trending selections.

Example: sr:match:27913362,sr:match:26142132
filtersstring · enumOptional

Optional filtering on the events and markets to consider for the returned selections. It expects a string adhering to the filtering format, as described in the filtering section, e.g. sport:eq:Soccer;market:eq:1X2.

Example: sport:eq:Soccer;market:eq:1X2Possible values:
fromstring · date-timeOptional

The minimum event's starting datetime.

from_offsetstringOptional

Considers events starting after the from timestamp plus the given minutes/hours/days. If not set defaults to 0 minutes. The value must be in range [-7d - 7d].

Default: 0Example: 0Pattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
to_offsetstringOptional

Considers events starting till the from timestamp plus the given minutes/hours/days. If not set defaults to 2 days. The value must be in range [-7d - 7d].

Default: 2dExample: 2dPattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
hoursinteger · min: 1 · max: 72Optional

DEPRECATED: Considers events starting till the from timestamp plus the given hours. If not set defaults to one day (24 hours).

aggregation_typestring · enumOptional

Used to return results aggregated in the given market category. Instead of returning selections, this option allows to rank the markets on the given aggregation type level. By default no aggregation will take place. Available options are:

  • market_type_and_market: Return selections aggregated on market type and market.
  • market_type: Return selections aggregated on market type.
  • market: Return selections aggregated on market.
Possible values:
fieldsstring · enumOptional

Optional selection of the object fields to retrieve. It expects a comma separated list of strings, as described in the field selection section, e.g. event_id,event_type.

Default: ["event_id","event_type","begin","country","country_id","league","league_id","sport","sport_id","participants","participant_ids","status","selection_id","uof_external_id","bet_offer_id","market","market_id","market_type","market_type_id","outcome","outcome_id","period","period_id","quote","quote_group","side","score"]Possible values:
operatorstringOptional

The operator to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored.

bookmaker_idintegerOptional

The bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the sub_bookmaker_id parameter.

sub_bookmaker_idintegerOptional

The sub-bookmaker id to use for querying data. Notice that this is applied only if your account has access to multiple operators. In a different case the assigned operator to your account is used and the value of this field is ignored. Note that this parameter is used together with the bookmaker_id parameter.

event_typesstring · enumOptional

List of event types to consider when generating recommendations. One or more types can be provided. Available options are:

  • match: Standard matches to be considered.
  • seasonal: Seasonal events to be considered.
  • forced_events: Handpicked events to be considered regardless of their start_time.
Default: match,forced_eventsPossible values:
locationstringOptional

The location of the page where the request takes place.

Example: inplay_widget
trending_withinstringOptional

Considers bets placed after the current timestamp minus the given minutes/hours/days. If not set defaults to 2 days. The value must be in range [1m - 7d].

Default: 2dExample: 3hPattern: ^[+-]?[0-9]+([.][0-9]+)?[smhd]?$
Header parameters
x-vaix-client-idstringRequired

Custom client header, the value should be the name of the group the user belongs to

x-vaix-authentication-methodstringOptional

Authentication method to be used, supported values [vaix, iam]. Defaults to vaix

Responses
200

OK

application/json
get
/api/sports/selections/trending
GET /api/sports/selections/trending HTTP/1.1
Host: api.vaix.ai
Authorization: Bearer YOUR_SECRET_TOKEN
x-vaix-client-id: text
Accept: */*
{
  "data": [
    {
      "begin": "2021-07-02T16:00:00Z",
      "country": "International",
      "country_id": "sr:category:4",
      "event_id": "sr:match:21514503",
      "event_type": null,
      "league": "Euro Cup",
      "league_id": "sr:tournament:1",
      "participant_ids": [
        "sr:competitor:4699",
        "sr:competitor:4698"
      ],
      "participants": [
        "Switzerland",
        "Spain"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 3,
          "period": null,
          "period_id": null,
          "quote": 1.7,
          "quote_group": "1.4-1.8",
          "score": 225.26196791432193,
          "selection_id": "e6f85d8635c10ed61ff18cb3499f9f0e",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/3"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    },
    {
      "begin": "2021-07-03T00:00:00Z",
      "country": "International",
      "country_id": "sr:category:4",
      "event_id": "sr:match:27738714",
      "event_type": null,
      "league": "Copa America",
      "league_id": "sr:tournament:133",
      "participant_ids": [
        "sr:competitor:4748",
        "sr:competitor:4754"
      ],
      "participants": [
        "Brazil",
        "Chile"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 1,
          "period": null,
          "period_id": null,
          "quote": 1.32,
          "quote_group": "1.2-1.4",
          "score": 218.91377720183033,
          "selection_id": "5d02d54e23961c8511b9bc97366682ac",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/1"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    },
    {
      "begin": "2021-07-02T00:30:00Z",
      "country": "Chile",
      "country_id": "sr:category:49",
      "event_id": "sr:match:27913362",
      "event_type": null,
      "league": "Copa Chile",
      "league_id": "sr:tournament:1221",
      "participant_ids": [
        "sr:competitor:3161",
        "sr:competitor:434014"
      ],
      "participants": [
        "Universidad de Chile",
        "Arturo Fernandez Vial"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 1,
          "period": null,
          "period_id": null,
          "quote": 1.25,
          "quote_group": "1.2-1.4",
          "score": 211.01998252157708,
          "selection_id": "1311d7a48ab586914ed2805e7714b853",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/1"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    },
    {
      "begin": "2021-07-02T13:00:00Z",
      "country": "Kazakhstan",
      "country_id": "sr:category:278",
      "event_id": "sr:match:26228454",
      "event_type": null,
      "league": "Premier League",
      "league_id": "sr:tournament:682",
      "participant_ids": [
        "sr:competitor:5172",
        "sr:competitor:5356"
      ],
      "participants": [
        "FC Kairat Almaty",
        "FK Atyrau"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 1,
          "period": null,
          "period_id": null,
          "quote": 1.3,
          "quote_group": "1.2-1.4",
          "score": 133.12470555567035,
          "selection_id": "8e61819ac33e92d68b997d6958be158c",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/1"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    },
    {
      "begin": "2021-07-02T19:00:00Z",
      "country": "International",
      "country_id": "sr:category:4",
      "event_id": "sr:match:21516115",
      "event_type": null,
      "league": "Euro Cup",
      "league_id": "sr:tournament:1",
      "participant_ids": [
        "sr:competitor:4717",
        "sr:competitor:4707"
      ],
      "participants": [
        "Belgium",
        "Italy"
      ],
      "selections": [
        {
          "bet_offer_id": null,
          "market": null,
          "market_id": null,
          "market_type": null,
          "market_type_id": 1,
          "outcome": null,
          "outcome_id": 1,
          "period": null,
          "period_id": null,
          "quote": 3.4,
          "quote_group": "2.6-4.2",
          "score": 129.30074099415148,
          "selection_id": "038dd32eb17260c134c515d8c9e43b91",
          "side": "back",
          "uof_external_id": "uof:3/sr:sport:1/1/1"
        }
      ],
      "sport": "Soccer",
      "sport_id": "sr:sport:1",
      "status": "closed"
    }
  ],
  "status": "success"
}

Was this helpful?