GoLink.hrefReplaced(filter: HrefReplacedFilter) now also supports geo filters:
countries: [CountryEnum]countrySubdivisionCodes: [String]These filters restrict the returned replaced href entries to the requested countries and/or country subdivisions.
The relation goLinks filter now supports isFiltersFallbackActive: Boolean on these fields:
Bookie.goLinks(filter: RelationGoLinksFilter)Bonus.goLinks(filter: RelationGoLinksFilter)Promotion.goLinks(filter: RelationGoLinksFilter)Channel.goLinks(filter: RelationGoLinksFilter)When isFiltersFallbackActive: true is used and the requested client-specific filters remove all matching goLinks for a relation item, the resolver performs a fallback query and returns goLinks with these filters relaxed:
countriescountrySubdivisionCodesdeviceslanguagesplatformsThe fallback still keeps the relation scope and the other goLink filters such as types, applicationIds, isActive, and tags.
query PromotionGoLinksWithFallback($id: ID!) {
promotion(filter: {id: $id}) {
id
goLinks(filter: {
isFiltersFallbackActive: true
countries: [AT]
devices: [MOBILE]
languages: [DE_DE]
}) {
id
href
}
}
}
A new Absence GraphQL type has been added for player absence data.
New fields are now available on existing types:
MatchEntity.absences: [Absence!]!Competition.currentAbsences: [Absence!]!Absence also includes a nested person field to resolve the related Person.
query MatchAbsences($id: ID!) {
match(filter: {id: $id}) {
id
absences {
id
kind
reason
person {
id
fullName
}
}
}
}
query CompetitionCurrentAbsences($id: ID!) {
competition(filter: {id: $id}) {
id
currentAbsences {
id
kind
reason
person {
id
fullName
}
}
}
}
Match association fields are now grouped under a new nested field on MatchEntity:
associations: MatchAssociationsUse the new nested path for provider-specific match association data:
match.associations.betqlmatch.associations.asmatch.associations.deltatrematch.associations.dflmatch.associations.fazmatch.associations.futbol24match.associations.gazzettamatch.associations.kickermatch.associations.manualmatch.associations.oddsetmatch.associations.optamatch.associations.phoenixmatch.associations.roninmatch.associations.sportradarmatch.associations.transfermarktmatch.associations.tonlinematch.associations.toralarmmatch.associations.livescorematch.associations.goaldotcommatch.associations.globomatch.associations.xscoresThe legacy top-level match association fields on MatchEntity are deprecated and will be removed on 2026-08-01. Use associations.<provider> instead.
query OldQuery($id: ID!) {
match(filter: {id: $id}) {
id
betql {
id
}
opta {
id
}
}
}
query NewQuery($id: ID!) {
match(filter: {id: $id}) {
id
associations {
betql {
id
}
opta {
id
}
}
}
}
The SearchIdTeamFilter input now supports competitionIds: [Int!]. This filter applies only when searchId.filter.category is TEAM and returns only teams that:
searchTermWhen multiple competition ids are provided, the filter uses OR semantics. A team is returned if it
has participated in any of the given competitions.
The SearchIdCompetitionFilter input now supportincludeInternational: Boolean.
When includeInternational: true is used on its own, only competitions without a country
(countryId = null) are returned.
When country and includeInternational: true are used together, the result includes both:
A new set of alias relations and GraphQL types has been added:
Sport.sportAliases: [SportAlias!]!Team.teamAliases: [TeamAlias!]!Competition.competitionAliases: [CompetitionAlias!]!Person.personAliases: [PersonAlias!]!The new alias types expose the alias entries as nested objects:
SportAliasTeamAliasCompetitionAliasPersonAliasTeamAlias also includes competitionId to expose the competition-specific alias scope.
For Person, the existing single-value alias field is kept for backward compatibility, and the new
personAliases field should be used to access the full list of aliases.
A new nested categoryFilters input has been added to SearchIdFilter. It groups the
per-category filters so each category can be filtered with its relevant fields:
team: SearchIdTeamFilter — applied when category is TEAM. Fields:
sports: [SportEnum!], kind: TeamKindEnum, gender: GenderEnum, age: AgeEnum, country: CountryEnum.competition: SearchIdCompetitionFilter — applied when category is COMPETITION.
Same fields as the team filter.person: SearchIdPersonFilter — applied when category is PERSON. Field:
country: CountryEnum.A new SportEnum is introduced for the sports filter on team and competition category filters with the following values:
FOOTBALL, BASKETBALL, BASEBALL, ICE_HOCKEY, TENNIS, HANDBALL, GOLF,
RUGBY, AMERICAN_FOOTBALL, CRICKET, VOLLEYBALL, FORMULA_1.
When both the legacy top-level fields and categoryFilters are provided, the values in
categoryFilters take precedence.
The TeamsFilter input now supports sports: [SportEnum!] for filtering teams by sport.
The legacy sportIds: [Int] filter on TeamsFilter is deprecated and will be removed on
2026-08-01. Use sports instead.
The incorrect person alias field aliasName will be
removed in a future release. A person can have multiple aliases, so clients should migrate to
personAliases.
The top-level age and gender arguments on SearchIdFilter are deprecated and will be
removed on 2026-08-01. After this date, queries using the deprecated arguments
will no longer be supported. Use categoryFilters instead.
The deprecated sportIds argument on TeamsFilter will be removed on 2026-08-01.
After this date, queries using the deprecated argument will no longer be supported.
query OldQuery {
searchId(filter: {searchTerm: "Madrid", category: TEAM, language: DE_DE, age: A_TEAM, gender: MALE}) {
... on Team {
id
name
}
}
}
query NewQuery {
searchId(filter: {
searchTerm: "Madrid",
category: TEAM,
language: DE_DE,
categoryFilters: {
team: {
sports: [FOOTBALL],
age: A_TEAM,
gender: MALE,
country: ES
}
}
}) {
... on Team {
id
name
}
}
}
query OldTeamsQuery($sportIds: [Int]) {
teams(filter: {sportIds: $sportIds}) {
paginatorInfo {
total
}
}
}
{
"sportIds": [1]
}
query NewTeamsQuery($sports: [SportEnum!]) {
teams(filter: {sports: $sports}) {
paginatorInfo {
total
}
}
}
{
"sports": ["FOOTBALL"]
}
A new groupOptions filter has been added to StandingsFilter.
It consists of two subfilters:
groupMode - ENUM possible values: LEAGUE, CONFERENCE, DIVISION. (Default: LEAGUE)returnGroupCompetitors - BOOLEAN. (Default: false)If roundIds and teamIds is provided and returnGroupCompetitors is true, the response will include the team's group competitors based on the provided groupMode and teamIds.
When matches are sorted by score, or the score field is queried, and no other filters are active:
A new h2hTeamIds filter has been added to MatchesFilter. It accepts an array of exactly 2 team IDs and restricts results to head-to-head matches between those teams. This filter is mutually exclusive with the teamIds filter.
The searchId query has been enhanced with the following changes:
language argument is provided, the search now queries across all available languages in the translation tables instead of defaulting to a single language. This applies to TEAM, COMPETITION, and SPORT categories.SearchIdFilter:
age: AgeEnum — Filter results by age category (e.g. A_TEAM, U21, U19). Applies to TEAM and COMPETITION categories.gender: GenderEnum — Filter results by gender (MALE, FEMALE, MIXED). Applies to TEAM and COMPETITION categories.query {
searchId(filter: {searchTerm: "Real Madrid", category: TEAM}) {
... on Team {
id
name
ageName
primaryColor
}
}
}
query {
searchId(filter: {searchTerm: "Madrid", category: TEAM, language: DE_DE, age: A_TEAM, gender: MALE}) {
... on Team {
id
name
ageName
gender
}
}
}
Added new fields to the Standing type
rankDivisionrankConferencewinPercentageDivisionwinPercentageConferencestreakwinDivisionlostDivisiondrawDivisionwinConferencelostConferencedrawConferencegamesLivewinOnPenaltylostOnPenaltywinOnExtraTimelostOnExtraTimewinOnPenaltyAwaywinOnPenaltyHomelostOnPenaltyAwaylostOnPenaltyHomewinOnExtraTimeAwaywinOnExtraTimeHomelostOnExtraTimeAwaylostOnExtraTimeHomeuserId field form these types:
ApplicationBettingMarketBettingMarketOutcomeBonusBonusTypeBookieBookieCountrySubdivisionAssociationChannelCountryCurrencyGoLinkPaymentTypePromotionPromotionOddsBoostPromotionOddsBoostMatchAssociationPromotionOddsBoostMatchAssociationBettingMarketOutcomeAssociationPromotionTypecomment field form these types: Bonus, MatchResultproductOwnerUserId field form Application typeuniqueId field to the Bet type. This field is unique for each bet.images field to the Sport typebrandColor field of type ImageBrandColor to the Image typebookieId on BetFilter input typematchMonth on Bet type is removedmatchDate added to MatchesOrderBy input type. This argument allows to sort matches by match date.HrefReplaced type added to the GoLink type. This type is used to retrieve the href of the link with replaced tracking parameters (when available).
query MyQuery {
goLink(filter: {id: "1"}) {
id
href
hrefReplaced(filter: {bookieIds: [2]}) {
href
affiliateId
applicationId
entityId
entityType
country
countrySubdivisionCode
}
}
}
{
"data": {
"goLink": {
"id": "1",
"href": "https://www.test.com/open-account?###affiliate_params###",
"hrefReplaced": [
{
"href": "https://www.test.com/open-account?affiliate=case123",
"affiliateId": "affiliate=case123",
"applicationId": 1,
"entityId": 2,
"entityType": 'bookie',
"country": null,
"countrySubdivisionCode": null
},
{
"href": "https://www.test.com/open-account?affiliate=case456",
"affiliateId": "affiliate=case456",
"applicationId": 1,
"entityId": 2,
"entityType": 'bookie',
"country": "AT",
"countrySubdivisionCode": null
}
]
}
}
}
roundMarker on Round type now returns an arrayround and roundsRoundFilter and RoundsFilter are addedRoundFilter type renamed to the CompetitionRoundFilterids, seasonIds and currentMatchDays are added to the CompetitionRoundFilter with the same functionality as the old argumentsid, seasonId and currentMatchDay in CompetitionRoundFilter will be deprecatedids is required without seasonIds on CompetitionRoundFilterroundIdsMatchDay argument in Matches filter are also considering group_matchdayTeamPerson relation added to the Person typePersonsFilterThe old arguments will be removed on November 18, 2025. After this date, queries using the deprecated arguments will no longer be supported.
query OldQuery($filter: RoundFilter!) {
competitions {
data {
rounds(filter: $filter) {
data {
id
}
}
}
}
}
{
"filter": {
"id": ["1"],
"currentMatchDay": [10],
"seasonId": [10]
}
}
query NewQuery($filter: CompetitionRoundFilter!) {
competitions {
data {
rounds(filter: $filter) {
data {
id
}
}
}
}
}
{
"filter": {
"ids": ["1"],
"currentMatchDays": [10],
"seasonIds": [10]
}
}
SerachId field is now available for application groups, channels, markets, persons, and sports.
The SearchIdResult type is extended to support the new types.
differenceName will be replaced by differenceType in the Standing type.differenceName is now nullable.The old field will be removed on October 27, 2025. After this date, queries using the deprecated types will no longer be supported.
query OldQuery {
standings {
data {
id
differenceName
}
}
}
query NewQuery {
standings {
data {
id
differenceType
}
}
}
The goLinks filters now use soft filtering. Soft Filtering means that if, for example, you filter by Country AT, you will get back both all AT goLinks and all globally available goLinks without a country restriction. Previously, globally defined goLinks were excluded when filtering by a specific country. The same behaviour also applies to the other mentioned soft filters.
The soft filter arguments are:
The country argument in these filters is renamed to countries.
The old argument will be removed on October 27, 2025. After this date, queries using the deprecated argument will no longer be supported.
query OldQuery {
matches {
data {
id
bets(filter: {
bookieIds: 10,
country: [AT, DE] # Deprecated
}) {
data {
id
}
}
}
}
}
query NewQuery {
matches {
data {
id
bets(filter: {
bookieIds: 10,
countries: [AT, DE]
}) {
data {
id
}
}
}
}
}
competitionCollectionId argument in the MatchesFilter is replaced by competitionCollectionIds and now accepts arrays.The old argument will be removed on October 27, 2025. After this date, queries using the deprecated argument will no longer be supported.
query OldQuery {
matches(filter: {competitionCollectionId: 2}) {
data {
id
competitionId
}
}
}
query NewQuery {
matches(filter: {competitionCollectionIds: [2]}) {
data {
id
competitionId
}
}
}
The deprecated fileds will be removed on October 27, 2025. After this date, queries using the deprecated fields will no longer be supported.
query OldQeury {
bookies {
data {
id
deepLinks(filter: {country: AT}) { #deprecated
id #deprecated
countries #deprecated
urlPattern #deprecated
isFillingBetSlip
glue
}
}
}
}
query NewQuery {
bookies {
data {
id
goLinks(filter: {countries: AT, types: [DEEP_LINK, MULTI_DEEP_LINK]}) {
data {
id # same as deepLink id
countries # same as deepLink countries
href # same as deepLink urlPattern
deepLink {
isFillingBetSlip
glue
}
}
}
}
}
}