API v1For developers

The EdgeLab model,
in JSON.

Today's schedule, odds and how they moved, the full analysis of a match, surface Elo, head-to-heads. The same data as the site, served to your server.

The trial asks for an account, not a card: 20 calls to see the shape of the responses.

Routes9 endpointsLimit2000 calls per dayResponsesJSON, stable envelope

For developers

What the API serves

{routes} endpoints, one envelope, and the same engine as the public site.

The schedule, with odds

A day's matches, their tournament, their odds, and how those odds moved since opening.

The full analysis

Model probabilities and their components, the value signal frozen before the match, score matrix, aces and double faults.

Players

Overall and per-surface Elo, playing style, serve and return indices, recent form.

Head-to-heads

Two players face to face, filterable by surface, with the model's reading.

Track record

The model's public results, exactly as the public page shows them.

The catalogue, served by the API

One route describes the others: available fields, the tier of each, which flags are on. Your client has nothing to guess.

For developers

Three minutes to your first call

One key, one header, and your first response. The rest is JSON you already know.

1

Create your key

From your account, in one click. It is shown once: we only keep its fingerprint.

2

Call

One Authorization header, nothing else. Every response carries your limit counters.

3

Go to production

The subscription raises the ceiling to 2000 calls per day and opens the full content.

Today's schedule

curl -s "https://edge-lab.io/api/v1/matches" \
  -H "Authorization: Bearer $EDGELAB_API_KEY"

For developers

Endpoints

This list is produced by the API's own catalogue: it cannot lie about what is served.

GET /api/v1/capabilities

The catalogue itself: routes served, fields and their tier, flags that are on.

no parameters

GET /api/v1/pricing

The pricing grid, already formatted, in both languages.

no parameters

GET /api/v1/matches

A day's schedule: matches, tournament, odds and their movement since opening.

Parameters : day · optional · tour · atp | wta · optional

GET /api/v1/matches/{id}

A match header and the full trajectory of its odds.

Parameters : id

GET /api/v1/matches/{id}/analysis

The full analysis of a match in one call: model, value, score matrix, aces and double faults.

Parameters : id · viewer · free | premium · default : premium

GET /api/v1/players

The list of ranked players, by tour.

Parameters : tour · atp | wta · default : atp · limit · default : 100

GET /api/v1/players/{key}

A player's profile: surface Elo, style, serve and return indices, form.

Parameters : key

GET /api/v1/h2h

Two players head to head, filterable by surface.

Parameters : p1 (required) · p2 (required) · surface · Hard | Clay | Grass · default : Hard · viewer · free | premium · default : premium

GET /api/v1/track-record

The model's public results.

Parameters : viewer · free | premium · default : premium

For developers

The rules, written down

Three things a serious provider owes you before you sign.

A ceiling you see coming

Every response carries X-RateLimit-Limit, X-RateLimit-Remaining and the window. Going over returns 429, never a truncated response.

A key we can revoke, now

The key is resolved from the database on every call, with no cache: a revocation takes effect after zero seconds, not after a TTL.

A separate contract

Programmatic access is included neither in the free plan, nor in Pro, nor in Pro+. It has its own terms.

For developers

Two tiers, and the first one is free

The trial asks for an account, not a card. The subscription raises the ceiling to 2000 calls per day and opens the full content.

Trial

Free

20 calls in total

  • Every route
  • Free-tier content
  • An account is enough, no card
Get my trial key

API

99,00 €per month

2000 calls per day

  • Every route
  • Full content, nothing redacted
  • Cancel any time

Online subscription opens shortly. Write to us and we will open your access by hand.

For developers

Frequently asked questions

What people ask us before signing, and what we answer.

What exactly does the free trial contain?

The same routes as the subscription, with free-tier content: you see the shape of the responses, the fields and the envelope, but not the pick or the value. 20 calls in total, and they do not reload.

What happens when I hit the ceiling?

The API returns 429 with a message that says what to do. Limit headers are on every response, successes included: you see the ceiling coming long before you touch it.

Can I resell or republish the data?

Republishing an analysis inside your product, yes, that is what the subscription is for. Reselling the feed as it comes, or building a competing service, no. The API Terms say so precisely.

Are probabilities recomputed after the match?

Never. A value signal is frozen at the moment of the prediction, and the analysis of a started match shows the pre-match picture. That is what makes the track record verifiable.

Does the API cover the women's tour?

Yes, ATP and WTA. A catalogue route tells you what is on for the women's tour, so your client adapts without writing to us.

The first call is free

Create your trial key from your account, call, and decide afterwards.