---
updatedAt: 2026-05-07T20:11:29.000Z
agentTools:
  siteIndex: https://developer.sportradar.com/llms.txt
  projectIndex: https://developer.sportradar.com/insights/llms.txt
---

# Insights Push Feeds

## Intro to Push

Insights Push feeds deliver real-time JSON payloads over a persistent HTTP connection, reducing the need for repeated REST API calls.

These feeds use a publish/subscribe model:

* You subscribe via a single HTTP request
* The server continuously streams updates as they occur
* A heartbeat message is sent every 5 seconds when no new data is available

Push feeds mirror the structure of their corresponding REST endpoints, making them easy to integrate into existing workflows.

***

## Quick Start

1. Open a streaming HTTP connection to the endpoint
2. Provide your API key
3. Optionally filter results using query parameters
4. Continuously process incoming JSON messages

### Example

```curl
curl -N \
  --request GET \
  --url "https://api.sportradar.com/insights/production/stream/nba/sportradar/subscribe?insight_type=scoring" \
  --header "x-api-key: YOUR_API_KEY"
```

***

## How It Works

* The connection remains open and streams data continuously
* Updates are sent as soon as new data is available
* When idle, heartbeat messages are sent every 5 seconds
* No historical data is replayed upon reconnect

***

## Technical Requirements

To accept data from our Push feeds, ensure that your application can:

* Can follow a HTTP redirect or use the location provided in the feeds header within one minute of your initial request.
* Can accept HTTP data transfer encoded as chunked.

***

## Access

Each Insights Push feed is available based on your subscription (e.g., NBA, NFL, MLB).

Refer to your <Anchor label="Marketplace" target="_blank" href="https://marketplace.sportradar.com/accounts">Marketplace</Anchor> account to confirm access.

***

## Disconnections

Our Push service does not provide a "stateful session", there is no memory of what data has been sent previously.

Should you cease to receive heartbeat messages, or are disconnected from the Push service for any reason, re-connect using your same initial request.

***

## Endpoint

```
https://api.sportradar.com/insights/production/stream/{league}/{provider}/subscribe
```

***

## Path Parameters

| Parameter  | Description                                                                                                                                                                                                                    |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `league`   | League for Insights<br /><br />`mlb`, `nba`, `ncaafb`, `ncaamb`, `nfl`, `nhl`                                                                                                                                                  |
| `provider` | Insight provider<br /><br />`sportradar` (Scoring, Milestones, Leaderboards, Highs)<br />`fansure` (Player Betting Trends, Team Betting Trends)<br />`tallysight` (Expert Picks)<br />`fairplay` (Lineup Changes, Predictions) |

***

## Optional Query Parameters

| Parameter      | Description                                                                                                                                                                |
| -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `insight_type` | Filter by insight type (`scoring`, `milestones`, `leaderboards`, `highs`, `expert_picks`, `player_betting_trends`, `team_betting_trends`, `lineup_changes`, `predictions`) |
| `locale`       | Language (`en`, `fr`, `de`, `it`, `es`)<br /><br /><i>Note: Non-English translations are currently only available for scoring insights</i>                                 |
| `subject_type` | Filter scope: `game`, `team`, or `player`                                                                                                                                  |
| `game_id`      | Filter by game. Accepts a Sportradar ID (`sr:match:...`) or UUID                                                                                                           |
| `player_id`    | Filter by player. Accepts a Sportradar ID (`sr:player:...`) or UUID                                                                                                        |
| `team_id`      | Filter by team. Accepts a Sportradar ID (`sr:competitor:...`) or UUID                                                                                                      |

> **Note:** IDs correspond to values returned in the response payload fields `subject_id`, `subject_sr_id`, and `subject_us_id`. Any of these identifiers may be used interchangeably when filtering requests.

***

## Request Samples

### Basic Subscription (NBA Scoring)

```curl
curl -N \
  --request GET \
  --url "https://api.sportradar.com/insights/production/stream/nba/sportradar/subscribe?insight_type=scoring" \
  --header "x-api-key: YOUR_API_KEY"
```

***

### Node.js (Streaming with Axios)

```javascript
import axios from "axios";

const url = "https://api.sportradar.com/insights/production/stream/nba/sportradar/subscribe";

const response = await axios({
  method: "get",
  url,
  params: {
    insight_type: "scoring"
  },
  headers: {
    "x-api-key": process.env.API_KEY
  },
  responseType: "stream"
});

response.data.on("data", (chunk) => {
  console.log(chunk.toString());
});
```

***

### Filter by Game + Insight Type

```curl
curl -N \
  --request GET \
  --url "https://api.sportradar.com/insights/production/stream/nba/sportradar/subscribe?subject_type=game&game_id=sr:match:45785631&insight_type=milestones" \
  --header "x-api-key: YOUR_API_KEY"
```

***

### Betting Trends (FanSure Provider)

```curl
curl -N \
  --request GET \
  --url "https://api.sportradar.com/insights/production/stream/nfl/fansure/subscribe?insight_type=player_betting_trends" \
  --header "x-api-key: YOUR_API_KEY"
```

***

## Response Samples

*Response samples will be added soon.*

***

## Notes

> Push feeds remain open until explicitly closed.\
> Ensure your client properly handles long-lived HTTP connections and reconnection logic.\
> Make note of your subscriptions to ensure access to the provider and league.

<br />