1xBet API1xbet.ng ↗
Access live sports odds and real-time game data from 1xBet Nigeria. Two endpoints return all available sports and current betting markets across 35+ sports.
What is the 1xBet API?
The 1xBet Nigeria API exposes two endpoints covering live sports odds and platform sport listings from 1xbet.ng. The list_sports endpoint returns all 35+ available sports with league and game counts, while get_live_odds delivers real-time game data including team names, current scores, market odds, and league metadata. Between them, these endpoints expose nine distinct response fields per game object.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/6abcf8e3-384d-48e9-bff9-87df103fcce0/list_sports' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace 1xbet-ng-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: 1xBet Sports Odds API — bounded, re-runnable."""
from parse_apis._1xBet_Sports_Odds_API import OneXBet, SportNotFound
client = OneXBet()
# List all available sports with their IDs and game counts.
for sport in client.sports.list(limit=5):
print(sport.name, f"(ID: {sport.sport_id}, leagues: {sport.league_count}, games: {sport.total_games})")
# Drill into one sport's live odds using constructible Sport.
football = client.sport(sport_id=1)
game = football.odds(limit=1).first()
if game:
print(f"\nLive: {game.home} vs {game.away} ({game.league})")
for odd in game.odds[:3]:
print(f" {odd.market_name}: {odd.odds} (param={odd.parameter})")
# Typed error handling for invalid sport_id.
try:
bad_sport = client.sport(sport_id=99999)
for g in bad_sport.odds(limit=1):
print(g.home)
except SportNotFound as exc:
print(f"\nSport not found: {exc}")
print("\nexercised: sports.list / sport.odds / SportNotFound")
Returns all available sports on the platform with their numeric IDs, names, league counts, and total game counts. Use the sport_id values from this endpoint to filter live odds in get_live_odds. Results are ordered by sport_id ascending. The platform hosts 35+ sports ranging from Football to Esports.
No input parameters required.
{
"type": "object",
"fields": {
"sports": "array of sport objects with sport_id, name, league_count, total_games",
"total_sports": "integer"
},
"sample": {
"data": {
"sports": [
{
"name": "Football",
"sport_id": 1,
"total_games": 1149,
"league_count": 126
},
{
"name": "Basketball",
"sport_id": 3,
"total_games": 64,
"league_count": 23
},
{
"name": "Volleyball",
"sport_id": 6,
"total_games": 119,
"league_count": 12
}
],
"total_sports": 35
},
"status": "success"
}
}About the 1xBet API
Available Sports
The list_sports endpoint takes no inputs and returns a sports array alongside a total_sports integer. Each sport object includes a numeric sport_id, a human-readable name, a league_count, and a total_games count. Results are ordered by sport_id ascending. Use this endpoint to discover which sport_id values are active before querying live odds.
Live Odds and Game Data
The get_live_odds endpoint returns every currently live game on the platform. Each object in the games array carries a game_id, sport_id, sport_name, league, country, home and away team names, a live score, a start_time, and an odds object containing all available markets — win, handicap, total, and others depending on the sport. The response also includes a total_games count and a filter_sport_id field that reflects the filter you passed (or null when none was applied).
Filtering by Sport
Pass a sport_id string to get_live_odds to scope results to a single sport. For example, sport_id=1 returns only live football games, sport_id=3 returns basketball, and sport_id=4 returns tennis. Valid IDs are obtained from list_sports. Omitting the parameter returns all live games across every sport simultaneously.
Data Freshness
Live odds change frequently as games progress. Scores and market lines in get_live_odds reflect the state of the platform at the moment of the request. There is no historical or pre-match odds endpoint in the current API; data is limited to games that are live at the time of the call.
The 1xBet API is a managed, monitored endpoint for 1xbet.ng — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when 1xbet.ng changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official 1xbet.ng API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Display a real-time odds comparison widget for live football and basketball markets using the
oddsfield fromget_live_odds. - Build a sport navigator that lists available sports with their league and game counts sourced from
list_sports. - Alert users when a specific team appears in live
homeorawayfields across any active game. - Aggregate live score data from the
scorefield to feed a sports-tracker dashboard. - Filter live tennis matches by passing
sport_id=4and surface handicap and total market lines to bettors. - Track how many live games are running per sport by combining
total_gamesfromlist_sportswith live game counts fromget_live_odds. - Monitor market odds drift over repeated calls to
get_live_oddsto detect line movement on specificgame_identries.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does 1xBet offer an official developer API?+
What does the `odds` field in `get_live_odds` contain?+
odds field is an object attached to each game and contains all betting markets currently available for that game — such as match winner (win), handicap, and total (over/under). The exact markets present vary by sport and game state.Does the API cover pre-match or upcoming events, not just live games?+
get_live_odds, and sport/league metadata via list_sports. You can fork it on Parse and revise to add a pre-match or scheduled-events endpoint.Is historical odds data or past game results available?+
How frequently does live odds data change, and is there pagination?+
get_live_odds reflect the platform state at the moment of each request; lines can shift within seconds during active games. The endpoint returns all live games (or all for a given sport_id) in a single response with no pagination — total_games indicates how many records are included.