Live 3D Tracker in Sport Line API
What Is Live 3D Tracker?
Live 3D Tracker is a ready-made widget for visualizing a sporting event. It displays the field or court, ball position, attacks, score, timer, and match events.
Sport Line API does not provide raw data for the client to render a tracker
independently. The API only indicates whether the ready-made widget is available for a
specific match and returns its identifier in zp.
Sport Line API → zp field → ready-made Live 3D Tracker widget
The tracker is not an independent source of match lists. To find a match and retrieve
its zp, the client needs a SportAPI sports line subscription.
Ready-made Widget
The client does not need to develop the match visualization independently. SportAPI provides a ready-made widget for embedding in a website or web application.
Two integration methods are available:
- a direct
iframe; - the
embed.jsscript, which creates theiframeautomatically and allows the widget to be controlled through JavaScript.
Short direct-embedding example:
<iframe
src="https://bet-embed-sport-tracker.vercel.app/?key=pk_live_yourkey&gameid=745829876&sport=1&lang=en"
style="width: 100%; height: 360px; border: none; display: block;"
allowfullscreen
title="Live tracker"
></iframe>
The tracker is intended only for embedding. Do not open its page as a standalone page of the website.
Complete Integration Documentation
Embedding methods, obtaining a key, allowed domains, parameters, switching matches, and diagnostics are described in the complete Live 3D Tracker documentation.
Widget appearance demo: https://bet-embed-sport-tracker-stage.vercel.app/showcase.
The demo page does not use real Live data. It shows the widget’s appearance for the supported sports.
The zp Field
zp is returned in the sports line match object:
{
"game_id": 746266481,
"sport_id": 1,
"zp": 746266481
}
Pass the zp value as the ready-made widget’s gameid parameter:
tracker gameid = sports line zp
For the example above:
BetZoneEmbed.init({
container: '#zone',
key: 'pk_live_yourkey',
gameid: 746266481,
sport: 1,
lang: 'en',
height: 360
});
Do not pass game_id, game_mid, or stat_id as gameid. Even if game_id and zp
contain the same number in a particular response, the fields serve different purposes.
When to Show the Tracker
Show the widget only when all of the following conditions are met:
- The match is Live.
- The tracker supports the sport.
zpcontains an ID rather thannull.- The client has an active Live 3D Tracker key.
- The page’s domain is allowed for that key.
- The sport and language are included in the connected subscription.
If the sports line returns:
{
"zp": null
}
the tracker is unavailable for this match. Do not create an empty widget or substitute
another identifier for zp.
Supported Sports
Pass the match’s sport_id as the sport parameter.
| ID | Sport |
|---|---|
1 | Football |
2 | Ice Hockey |
3 | Basketball |
4 | Tennis |
5 | Baseball |
6 | Volleyball |
7 | Rugby |
8 | Handball |
10 | Table Tennis |
13 | American Football |
17 | Water Polo |
21 | Darts |
26 | Formula 1 |
28 | Australian Rules |
44 | Horse Racing |
66 | Cricket |
86 | CS:GO / Esports |
A sport’s presence in this table means that the tracker can display it. It does not
guarantee visualization for every Live match. Always perform the final availability
check using zp.
The client’s available sport set may be restricted by the subscription.
Practical Integration Rules
- Show the tracker only for a Live match.
- Verify that
sport_idis in the supported-sports list. - Pass
zpasgameidwithout modifying it. - Do not create the widget when
zp: null. - Use the ready-made
iframeorembed.jsinstead of rendering the data yourself. - Do not confuse
zpwithgame_idor other identifiers. - Use the Live 3D Tracker documentation for the complete integration.
Support
To obtain a key and add a production domain, test domain, or localhost, contact
SportAPI support:
@suport_sportapi.