GuidesAPI ReferenceRelease Notes
HomeLog InHome
Guides

Filters

The API supports advanced filtering to help you retrieve only the story content you need.
This endpoint accepts a range of query parameters that let you refine results by title, status, geographic targeting, creation and update timestamps, and associations with specific games, teams, players, and other entities.

Query parameters

Query parameterTypeDescription
TitlestringFilter stories by title (case-insensitive substring match)
LabelsFilterExpressionstringFilter stories using a label expression (see Label Expressions section below)
Statusesarray of ContentStatusFilter stories by their current status
GeostringFilter stories by geographic region
OnlyLivebooleanWhen set to true, returns only currently live stories
UpdateTime.Fromstring (datetime)Filter stories updated after the specified date/time
UpdateTime.Tostring (datetime)Filter stories updated before the specified date/time
CreateTime.Fromstring (datetime)Filter stories created after the specified date/time
CreateTime.Tostring (datetime)Filter stories created before the specified date/time

Entity filters

Stories can be filtered by their relation to various sports-related entities. You can filter using the WSC ID or the service provider ID.

Query parameterContext (entity)Parameter typeID source
Entities.Game.WscIdGameintegerWSC
Entities.Game.ServiceProviderIdGamestringService provider
Entities.Team.WscIdTeamintegerWSC
Entities.Team.ServiceProviderIdTeamstringService provider
Entities.Player.WscIdPlayerintegerWSC
Entities.Player.ServiceProviderIdPlayerstringService provider
Entities.Round.WscIdRoundintegerWSC
Entities.Round.ServiceProviderIdRoundstringService provider
Entities.Season.WscIdSeasonintegerWSC
Entities.Season.ServiceProviderIdSeasonstringService provider
Entities.IdTypeEntityIdTypeSelection logic

Label expression filtering

The LabelsFilterExpression parameter allows you to filter stories using a boolean expression based on labels.

Syntax

The expression is formatted as a JSON array with the following structure:

  • [operator, condition1, condition2, ...]
  • Operators can be "and" or "or"
  • Conditions can be either strings in "label:value" format or nested arrays with the same structure
  • Nested arrays allow for complex filtering logic

Examples

  • Simple conditions with AND: ["and", "football", "recap"]
  • Multiple conditions with OR: ["or", "football", "basketball", "hockey"]
  • Nested conditions: ["and", ["or", "football", "basketball"], "highlight"]
  • Complex nesting: ["or", ["and", "football", "recap"], ["and", "basketball", "highlight"]]

Date format

All date parameters should be in ISO 8601 format

YYYY-MM-DDThh:mm:ssZ

Example requests

Get all football stories created in the last 24 hours

GET /v1/stories?LabelsFilterExpression=sport:football&CreateTime.From=2025-03-31T00:00:00Z

Get all live stories featuring a specific player

GET /v1/stories?OnlyLive=true&Entities.Player.WscId=12345

Get all stories for a specific team

GET /v1/stories?Entities.Team.WscId=678

Schema definitions

ContentStatus

Enum representing the possible statuses of a story:

  • draft
  • active

EntityIdType

Enum representing the id provider WSC ID and Service Provider ID are provided:

  • wsc - Use WSC ID
  • service_provider - Use Service Provider ID

Did this page help you?