Discover/H2hggl API
live

H2hggl APIh2hggl.com

Access H2H GG League eBasketball schedules, live scores, match stats, play-by-play timelines, player stats, and head-to-head comparisons via 9 endpoints.

Endpoint health
verified 3d ago
get_schedule
get_live_games
get_h2h
get_players
get_player_past_games
9/9 passing latest checkself-healing
Endpoints
9
Updated
26d ago

What is the H2hggl API?

The H2H GG League eBasketball API exposes 9 endpoints covering game schedules (100–200 games per day), live scores, full box scores, play-by-play timelines, and player career statistics. The get_schedule endpoint returns upcoming and completed games across a configurable date range, while get_match_timeline delivers per-incident play-by-play with millisecond timing and running scores for any completed match.

Try it
Date in YYYY-MM-DD format. Defaults to today (UTC).
Number of days to fetch starting from date.
api.parse.bot/scraper/dd72b5c0-aef0-43c1-9cc0-4246bb6dbe2b/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/dd72b5c0-aef0-43c1-9cc0-4246bb6dbe2b/get_schedule?date=2026-07-11&days=1' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 h2hggl-com-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.

"""
H2H GG League eBasketball API - Usage Example

Get your API key from: https://parse.bot/settings
"""
from parse_apis.h2h_gg_league_ebasketball_api import H2HGGLeague, ResourceNotFound

# Initialize client
h2h = H2HGGLeague(api_key="YOUR_API_KEY")

# Get today's schedule — returns a Schedule with games, date_range, total_games
schedule = h2h.schedules.fetch()
print(schedule.total_games, schedule.date_range.from_date, schedule.date_range.to_date)

# List live games — bounded iteration
for game in h2h.games.list_live(limit=5):
    print(game.external_id, game.team_a_name, "vs", game.team_b_name, game.team_a_score, game.team_b_score)

# Get all players and inspect the first one
player = h2h.players.list(limit=1).first()
if player:
    print(player.participant_name, player.avg_points, player.matches_win_pct, player.match_form)

# Construct a player and get head-to-head comparison
sparkz = h2h.player(participant_name="SPARKZ")
comparison = sparkz.head_to_head(opponent="SAINT JR")
print(comparison.player_a, "vs", comparison.player_b)
print(comparison.h2h.results)
print(comparison.h2h.participant_a_stats.avg_points, comparison.h2h.participant_b_stats.avg_points)

# Construct a game and fetch full match details (stats + timeline combined)
game = h2h.game(external_id="NB151100626")
try:
    details = game.fetch_details()
    print(details.match_id, len(details.stats), "periods")
    for period in details.stats[:2]:
        print(period.period_type, period.team_a.stats_points, period.team_b.stats_points)
    print(details.timeline.match_summary.sport, details.timeline.match_summary.start_date)
except ResourceNotFound as exc:
    print(f"Match not found: {exc}")

# Get past games for a player
for game in sparkz.past_games(limit=3):
    print(game.external_id, game.team_a_name, game.team_a_score, "vs", game.team_b_name, game.team_b_score)

print("exercised: schedules.fetch / games.list_live / players.list / head_to_head / fetch_details / past_games")
All endpoints · 9 totalmissing one? ·

Get all eBasketball games for a specific date or date range. Returns both upcoming and completed games with scores, teams, and participant info. Each day typically has 100-200 games. Defaults to today (UTC) if no date provided.

Input
ParamTypeDescription
datestringDate in YYYY-MM-DD format. Defaults to today (UTC).
daysintegerNumber of days to fetch starting from date.
Response
{
  "type": "object",
  "fields": {
    "games": "array of game objects with externalId, startDate, teamAName, teamBName, participantAName, participantBName, matchStatus, teamAScore, teamBScore, streamName",
    "date_range": "object with from (string), to (string), and days (integer)",
    "total_games": "integer count of games in the range"
  },
  "sample": {
    "data": {
      "games": [
        {
          "_date": "2026-06-10",
          "startDate": "2026-06-10T20:43:00Z",
          "teamAName": "New York Knicks",
          "teamBName": "Boston Celtics",
          "externalId": "NB183100626",
          "streamName": "Ebasketball 3",
          "teamAScore": null,
          "teamBScore": null,
          "isCancelled": false,
          "matchStatus": null,
          "tournamentName": "Ebasketball H2H GG League",
          "_status_category": "upcoming",
          "participantAName": "MARINE",
          "participantBName": "SAINT JR"
        }
      ],
      "date_range": {
        "to": "2026-06-10",
        "days": 1,
        "from": "2026-06-10"
      },
      "total_games": 177
    },
    "status": "success"
  }
}

About the H2hggl API

Schedule and Live Game Data

The get_schedule endpoint accepts a date parameter in YYYY-MM-DD format and an optional days integer to fetch multi-day windows. Each game object in the games array includes externalId, startDate, teamAName, teamBName, participantAName, participantBName, and matchStatus. The date_range response object confirms the actual window served. For currently active sessions, get_live_games returns the same game shape plus a streamName field and a total count across all live and immediately upcoming matches — no parameters required.

Match Statistics and Timelines

get_match_stats returns box score data broken down by quarter-1 through quarter-4 and an end-match period. Each period object contains parallel teamA and teamB sub-objects covering points, field goals, three-pointers, free throws, rebounds, assists, steals, blocks, and turnovers. Stats are only populated for matches where matchStatus equals MATCH_ENDED. get_match_timeline returns an incidents array where each event carries a messageType, time (milliseconds remaining in the period), period info, and a running score — useful for reconstructing possession-level flows. get_match_details combines both the stats and timeline into a single call.

Player Stats and Head-to-Head

get_players returns the full roster of approximately 160 active players, each with avgPoints, matchesPlayed, matchesWon, matchesLost, matchesWinPct, and a matchForm string. For individual lookup, get_player_stats accepts a case-insensitive player_name and returns the same career fields alongside a recent_games array. get_player_past_games isolates the 15 most recent completed games for a given player. get_h2h takes two case-insensitive player names and returns participantAStats, participantBStats, and an h2H array of win/loss strings from player A's perspective.

Reliability & maintenanceVerified

The H2hggl API is a managed, monitored endpoint for h2hggl.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when h2hggl.com 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 h2hggl.com 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.

Last verified
3d ago
Latest check
9/9 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a daily eBasketball results digest using get_schedule with a rolling days window
  • Power a live scoreboard widget with real-time data from get_live_games
  • Render quarter-by-quarter box score breakdowns for completed matches via get_match_stats
  • Reconstruct game flow with millisecond-precise play-by-play from get_match_timeline
  • Generate player performance dashboards using career stats from get_player_stats
  • Display head-to-head records and win rates between two players using get_h2h
  • Track recent form for betting or fantasy purposes using get_player_past_games
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does H2H GG League have an official public developer API?+
H2H GG League does not publish an official public developer API or documented data feed. This Parse API provides structured access to the platform's game and player data.
What does `get_match_stats` return for live or upcoming matches?+
get_match_stats only returns populated box score data for matches where matchStatus equals MATCH_ENDED. For live or upcoming matches, the stats array is empty. Use get_live_games to confirm a match is active, then poll get_match_details for any partial timeline data that may be available mid-game.
Does the API cover individual player per-game box scores, not just career averages?+
Career-level stats (averages, win percentages, form) and recent game results are available via get_player_stats and get_player_past_games, but per-game individual box scores — points, rebounds, assists per match — are not currently broken out at the player level. Match stats in get_match_stats are aggregated at the team level per period. You can fork the API on Parse and revise it to add a player-level per-game box score endpoint.
How many days of schedule data can be fetched in one call?+
The get_schedule endpoint accepts a days integer alongside the date parameter, allowing multi-day windows in a single request. The response includes a date_range object with from, to, and days fields confirming what was returned. There is no documented maximum for the days value, but each day typically contains 100–200 games, so large ranges produce large payloads.
Does the API support filtering games by team name or stream?+
Currently, get_schedule and get_live_games return all games for the given window without server-side filtering by team or stream. The response fields teamAName, teamBName, and streamName (on live games) are available for client-side filtering. You can fork the API on Parse and revise it to add a filtered endpoint that scopes results to a specific team or stream.
Page content last updated . Spec covers 9 endpoints from h2hggl.com.
Related APIs in SportsSee all →
hltv.org API
Access Counter-Strike esports data from HLTV.org including match results, player and team statistics, team rankings, upcoming match schedules, tournament information, and fantasy league data.
cba.sports.sina.com.cn API
Access comprehensive sports data including live game details, team information, player statistics rankings, schedules, and current round results. Track performances across teams and players while staying updated on upcoming matchups and real-time game outcomes.
fiba.basketball API
Track FIBA basketball games and scores by date, dive into game details, explore competition schedules, check world rankings, and search for the latest basketball news all in one place. Stay updated on international basketball with comprehensive data covering live games, team information, and competitive standings.
nhl.com API
Access data from nhl.com.
csgostats.gg API
Track and analyze Counter-Strike 2 player performance with detailed statistics including weapon usage, match history, and head-to-head comparisons. Access global leaderboards, view recent matches, and discover which players you've competed against to benchmark your skills.
espn.com API
Get live scores, schedules, standings, teams, rosters, athlete profiles, game logs, and league news across major sports from ESPN.
csstats.gg API
Access Counter-Strike 2 player statistics, match history, and leaderboard rankings from csstats.gg. Search players by Steam ID or name, retrieve detailed performance metrics and recent match results, explore scoreboard data, view played-with history, and check global ban statistics.
nikeeyblscholastic.com API
Access comprehensive Nike EYBL Scholastic basketball league data including teams, player bios, schedules, standings, and detailed game box scores. Track team rosters, player statistics, and season performance across the entire league in one place.