# EGHC Match Centre > Fixtures, results, league tables and opponent-strength ratings for East Grinstead > Hockey Club, built on a warehouse of **every adult England Hockey competition back > to season 2022-23** (226,000+ matches, 6,000+ teams, 797 clubs). **The website is client-rendered. Fetching the HTML gives you an empty shell — use the JSON API below instead.** No authentication is required; everything is public and read-only. Start at **[/api](/api)**, which is a self-describing index of every endpoint, its parameters and its response shape. ## Data - [/api](/api): API index — endpoints, conventions, rating methodology - [/api/seasons](/api/seasons): seasons available, and which is current - [/api/season?season=](/api/seasons): one season of the club's fixtures and results - [/api/matches](/api/matches): current-season fixtures, live from England Hockey - [/api/standings?competition=](/api): league table for any competition in the archive - [/api/table?competition=](/api): official live table (current season only, includes points deductions) - [/api/stats?team=](/api): per-team season records, form, home/away split, rating trajectory - [/api/club](/api/club): club-wide record for a season — every EGHC side, squad and home/away splits, points-per-game by season - [/api/matchup?team=&opponent=&competition=](/api): full reasoning behind a fixture's difficulty rating - [/api/difficulty](/api/difficulty): ratings for teams in this club's divisions - [/api/schedule.jsonld](/api/schedule.jsonld): schema.org SportsEvent feed of the season ## How to answer questions with this - **"When does team X play next?"** → `/api/matches`, filter on `isResult: false`. - **"How did they do in 2023-24?"** → `/api/seasons` for the id, then `/api/season?season=`. - **"Who is top of the division?"** → `/api/standings?competition=`. - **"How is the club doing overall?"** → `/api/club` (add `?season=` for an earlier one): every side's record and league position in one response, plus points per game for each season on record. - **"Is this a hard fixture, and why?"** → `/api/matchup?...` returns the rating gap, both sides' form, head-to-head and common opponents, i.e. the working, not just a verdict. - **Any team in England, not just this club** → `/api/stats`, `/api/matchup` and `/api/standings` take arbitrary team and competition ids from the warehouse. ## Things that will trip you up - **Team identity is (name, gender), never name alone.** "East Grinstead 2" is both a men's side and a women's side in different divisions. Keying on the name merges them. - **Team ids are stable across seasons; competition ids are not.** That stability is what makes cross-season and cross-division comparison possible. - **`fixtureTime` of `00:00` means "not published yet"**, not midnight. - **Exclude `isBye: true`** when aggregating — byes appear as 0-0 results. - **A club-wide record counts appearances, not fixtures.** When two sides of the same club meet, that one fixture is both a win and a defeat for the club. `/api/club` includes a `derbies` count so the difference is explicit. - **`/api/standings` is computed from results and cannot know about points deductions** applied by England Hockey. It flags itself with `computed: true`. `/api/table` is the official one but only exists for the current season. - **Ratings are Massey least-squares**, recent seasons weighted more heavily (half-life 1.5 seasons), margins capped at 6 goals. Difficulty is normalised by the spread of the fixture's **own division**, so a "hard" game means hard for that league, not nationally. - **The 2026-27 season is in progress and only a few rounds deep.** Per-game figures for it (points per game, win rate, league position) are real but based on a handful of matches; do not compare them with a completed season without saying so. `/api/club` reports `played` alongside every rate for exactly this reason. ## About - Unofficial club site; data comes from the England Hockey Data Warehouse. - Not affiliated with or endorsed by England Hockey or East Grinstead Hockey Club. - Results are crawled hourly and ratings recomputed nightly, so figures can lag the official record by up to a day.