Middles-Übersicht
Aggregierte Statistiken für aktuelle Middle-Möglichkeiten ohne die vollständige Liste abrufen. Verwendet dieselben zugrunde liegenden Daten wie der Middles-Endpunkt.
GET /api/v1/opportunities/middles/summaryAuthentifizierung
Erfordert API key. Pro-Tarif oder höher erforderlich.
Query-Parameter
| Parameter | Typ | Standard | Beschreibung |
|---|---|---|---|
sport | string | all | Nach Sportart filtern (z. B. basketball, football) |
league | string | all | Nach Liga filtern (z. B. nba, nfl, nhl) |
Beispielanfragen
cURL
curl -X GET "https://api.sharpapi.io/api/v1/opportunities/middles/summary?league=nfl" \
-H "X-API-Key: YOUR_API_KEY"Antwort
Erfolg (200)
{
"success": true,
"data": {
"total": 47,
"positive_ev_count": 38,
"guaranteed_profit_count": 2,
"player_prop_count": 12,
"by_sport": {
"football": 18,
"basketball": 15,
"hockey": 8,
"baseball": 6
},
"by_market": {
"point_spread": 22,
"total_points": 13,
"player_points": 7,
"player_rebounds": 5
},
"by_sportsbook": {
"draftkings": 34,
"fanduel": 31,
"betmgm": 22,
"caesars": 18,
"bet365": 15
},
"avg_middle_size": 1.8,
"avg_probability": 0.1245,
"avg_ev": 4.72,
"best_ev": {
"ev": 31.52,
"sport": "football",
"market": "point_spread"
},
"has_key_numbers_count": 14
},
"meta": {
"source": "cache",
"filters": {
"sport": null,
"league": ["nfl"]
},
"updated_at": "2026-02-17T19:45:30Z"
}
}Antwort-Header
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 296
X-RateLimit-Reset: 1707401000
X-Data-Delay: 0
X-Request-Id: req_msum789defFehlerantworten
401 Unauthorized
{
"error": {
"code": "unauthorized",
"message": "Invalid or missing API key",
"docs": "https://docs.sharpapi.io/en/authentication"
}
}403 Tier Required
{
"error": {
"code": "tier_restricted",
"message": "Middles detection requires Pro tier or higher",
"docs": "https://docs.sharpapi.io/en/pricing"
}
}Antwortfelder
| Feld | Typ | Beschreibung |
|---|---|---|
total | integer | Gesamtanzahl der aktuellen Middles |
positive_ev_count | integer | Middles mit positivem Erwartungswert |
guaranteed_profit_count | integer | Middles, die zugleich Arbitrage-Möglichkeiten sind |
player_prop_count | integer | Middles auf Player-Prop-Märkten |
by_sport | object | Anzahl der Middles pro Sportart |
by_market | object | Anzahl der Middles pro Markttyp |
by_sportsbook | object | Anzahl der Middles pro Sportsbook (jedes Buch in einer Middle wird gezählt) |
avg_middle_size | number | Durchschnittliche Middle-Lückengröße in Punkten |
avg_probability | number | Durchschnittliche Wahrscheinlichkeit, dass Middles eintreten |
avg_ev | number | Durchschnittlicher Erwartungswert pro 100 $ Einsatz |
best_ev | object|null | Zusammenfassung der Möglichkeit mit dem höchsten EV |
best_ev.ev | number | EV in Dollar pro 100 $ Einsatz |
best_ev.sport | string | Sportart der Middle mit dem besten EV |
best_ev.market | string | Markttyp der Middle mit dem besten EV |
has_key_numbers_count | integer | Middles, die sportartspezifische Schlüsselzahlen enthalten |
Anwendungsfälle
Dashboard-Übersicht
Nutzen Sie den Summary-Endpunkt, um Dashboard-Widgets zu betreiben, die Middle-Möglichkeitsanzahlen, Aufschlüsselungen und Durchschnittswerte anzeigen, ohne die vollständige Liste abzurufen.
Polling vs. vollständiger Abruf
Rufen Sie den Summary-Endpunkt in kürzeren Intervallen ab, um zu erkennen, wann neue Möglichkeiten erscheinen, und rufen Sie dann den vollständigen Middles-Endpunkt nur ab, wenn sich die Anzahl ändert.
// Poll summary every 10 seconds
let lastCount = 0;
setInterval(async () => {
const summary = await fetchMiddlesSummary();
if (summary.data.total !== lastCount) {
lastCount = summary.data.total;
const middles = await fetchMiddles(); // Full fetch
updateUI(middles);
}
}, 10000);Der Summary-Endpunkt wird 10 Sekunden lang zwischengespeichert und zählt genauso zu Ihrem Rate Limit wie der vollständige Middles-Endpunkt.
Verwandte Endpunkte
- Middles — Vollständige Liste der Middle-Möglichkeiten
- +EV-Möglichkeiten — Wetten mit positivem Erwartungswert
- Arbitrage-Möglichkeiten — Möglichkeiten mit garantiertem Gewinn
- SSE-Stream — Echtzeit-
middles:detected- undmiddles:expired-Ereignisse