Quoten, Wetten und Coupons — technische API-Dokumentation
Diese Datei enthält ein minimales eigenständiges Skript für die Verbindung zum Coupon-Berechnungssystem SportAPI. Einzelheiten und seltene Fälle finden Sie in der vollständigen Dokumentation.
POST /api/partner/login
POST /api/partner/coupons/place
GET /api/partner/coupons/calculated?time=10 1. Was Sie vom Manager erfahren müssen
- Basis-URL-API;
- Login und Passwort des Kundenkontos;
- Wenn Sie einen Rückruf verwenden, aktivieren Sie die Funktion und die geheime Phrase
callback_secret.
Die Beispiele verwenden eine bedingte Adresse:
BASE_URL="https://coupon-api.example.com"
Verwenden Sie in der Produktion HTTPS. Alle Daten werden als Unix-Zeitstempel in Millisekunden übertragen, Geldwerte werden als Dezimalzahlen ohne feste Genauigkeit übertragen.
2. API-Antwortformat
Erfolg:
{
"code": 1,
"body": {},
"error_code": null,
"error_message": null,
"date": 1784970000000,
"time_ms": 5,
"path": "/api/partner/example"
}
Der Geschäftsfehler kommt normalerweise auch mit HTTP 200:
{
"code": 0,
"body": null,
"error_code": 1002,
"error_message": "Not all params",
"date": 1784970000000,
"time_ms": 5,
"path": "/api/partner/example"
}
Überprüfen Sie immer den HTTP-Code, dann code, dann error_code. Verwenden Sie nicht den Text error_message als Softwareschlüssel.
3. Autorisierung
POST /api/partner/login
Content-Type: application/json
{
"username": "partner-demo",
"password": "strong-password"
}
Das Feld login wird als kompatibler Alias username unterstützt.
Erfolgreiche Antwort:
{
"code": 1,
"body": {
"token": "<jwt-token>",
"user_id": 17,
"username": "partner-demo"
},
"error_code": null,
"error_message": null
}
Übergeben Sie in allen geschützten Anfragen Folgendes:
Authorization: Bearer <jwt-token>
Grundlegende Anmeldefehler:
| Code | Grund |
|---|---|
1002 | Login oder Passwort nicht gesendet. |
1003 | Unbekannter Login oder falsches Passwort. |
1004 | Das Kundenkonto wurde deaktiviert. |
1006 | Das Zugriffsdatum ist abgelaufen. |
1007 | Der Kundensaldo ist Null oder negativ. |
Diese Fehler werden von HTTP 200, code = 0 zurückgegeben. HTTP 401 einer geschützten Methode bedeutet, dass das JWT fehlt, ungültig, abgelaufen oder widerrufen ist; Melden Sie sich erneut an. HTTP 403 bedeutet unangemessene Rolle oder Zugriff verweigert.
4. Tarifindikator
Jedes ausgewählte Ergebnis wird als vorgefertigte Zeile aus der Sportzeile übermittelt:
line_type#game_id#group_id#type_id#rate#coefficient[#player_id]
Beispiele:
line#737779544#1#1#0#1.85
live#738917381|119|5869|0.5#3.6#149439538
line_type:lineoderlive;rate: Gesamt-/Handicap-Parameter oder0;player_id: optionale Spieler-ID;- Die Trennzeichen
#und|werden unterstützt.
Erfassen oder korrigieren Sie den Zeiger nicht manuell – übergeben Sie den aus der Zeile erhaltenen Wert unverändert.
5. Erstellen Sie einen Gutschein
POST /api/partner/coupons/place
Authorization: Bearer <jwt-token>
Content-Type: application/json
{
"list_bets": [
"line#737779544#1#1#0#1.85"
],
"amount": 10,
"currency": "USD",
"callback_url": "https://partner.example.com/api/coupon-result",
"lang": "en",
"mode": "reject",
"mode_type": null,
"multi": false
}
| Feld | Obligatorisch | Zweck |
|---|---|---|
list_bets | Ja | Ein oder mehrere Hinweise. |
amount | Ja | Der positive Betrag eines Coupons, der erstellt wird. |
currency | Nein | Beliebige Zeichenfolgenbezeichnung, einschließlich virtueller Währung. |
callback_url | Nein | URL-Rückruf; Ohne Rückruf können Sie es nicht senden. Sie können null, eine leere Zeichenfolge oder eine Site-Domäne übergeben. |
lang | Nein | Ein aus zwei Buchstaben bestehender Code für eine von etwa 50 unterstützten Sprachen. Die Sprache der Namen wird bei der Schöpfung festgelegt. |
mode | Nein | reject oder accept; Standardwert reject. |
mode_type | Für accept | Zulässige Richtung der Koeffizientenänderung. |
multi | Nein | Ein allgemeiner Coupon oder einzelne Singles; Standardwert false. |
Quoten
| Einstellungen | Verhalten |
|---|---|
mode = reject | Erstellung ablehnen, wenn sich der Koeffizient ändert. |
mode = accept, mode_type = 1 | Akzeptieren Sie nur Werbeaktionen. |
mode = accept, mode_type = 2 | Akzeptieren Sie nur Herabstufungen. |
mode = accept, mode_type = 3 | Akzeptieren Sie jede Änderung. |
Normal-, Express- und multi
| Anfrage | Ergebnis | Abschreibung des Kundenguthabens |
|---|---|---|
| Ein Ergebnis | Ein gewöhnlicher | amount |
Mehrere Ergebnisse, multi = false | Ein Express | amount |
Mehrere Ergebnisse, multi = true | Separate Single für jedes Ergebnis | amount × Anzahl der erstellten Coupons |
Ein Schnellzug kann nicht mehr als 15 Ereignisse enthalten. Sie können nicht mehrere Wetten auf dasselbe Spiel kombinieren, einschließlich des Hauptspiels, Halbzeiten, Perioden, Ecken, Fouls und anderer damit zusammenhängender Unterereignisse. Diese Kombination gibt 506 zurück.
6. Bestätigung der Coupon- und Gebotserstellung
Vollständige erfolgreiche Antwort mit Gutschein und akzeptierten Wettdaten in events_data:
{
"code": 1,
"body": {
"coupons": [
{
"coupon_code": "000000000272",
"amount": 10,
"win": 18.5,
"potential_win": 18.5,
"real_win": null,
"coef": 1.85,
"original_coef": 1.85,
"calculate_coef": null,
"has_return": false,
"date": 1784970000000,
"status": 0,
"asian": false,
"calculate_date": null,
"coupon_type": 1,
"events_count": 1,
"events_data": [
{
"id": 912,
"game_id": 737779544,
"main_game_id": 737779544,
"is_sub_game": false,
"parent_game_id": null,
"sub_game_key": null,
"raw_pointer": "line#737779544#1#1#0#1.85",
"line_type": "line",
"is_live": false,
"bet_group_id": 1,
"bet_group_name": "Match result",
"bet_id": 1,
"bet_name": "First team to win",
"sport_id": 1,
"sport_name": "Football",
"tournament_id": 10001,
"tournament": "National League",
"event_date": 1784971800000,
"status": 0,
"opp1": "Team A",
"opp2": "Team B",
"coef": 1.85,
"calc_coef": null,
"bet_score": "line#737779544#1#1#0#1.85",
"calculate_date": null,
"calculate_score": null,
"settlement_reason_code": null,
"settlement_reason": null,
"placement_score_full": null,
"placement_score_periods": null,
"calculation_score_full": null,
"calculation_score_periods": null,
"timer": null,
"dop_name": null,
"rate": "0",
"sgame_id": null,
"game_num": null,
"stat_id": null,
"team1_id": 101,
"team2_id": 102,
"opp_icon1": 101,
"opp_icon2": 102
}
]
}
]
},
"error_code": null,
"error_message": null,
"date": 1784970000015,
"time_ms": 45,
"path": "/api/partner/coupons/place"
}
Gutscheinfelder
Für jeden Artikel body.coupons[] wird ein separater Gutschein erstellt.
| Feld | Typ | Bedeutung |
|---|---|---|
coupon_code | string | Öffentlicher 12-stelliger Gutscheincode. Als Zeichenfolge speichern, um den Verlust führender Nullen zu vermeiden. |
amount | number | Der bei der Erstellung übertragene Couponbetrag. |
win | number | Aktuell angezeigter Gewinnbetrag. |
potential_win | number | Möglicher Gewinn vor der endgültigen Abrechnung. |
real_win | number/null | Tatsächlicher Zahlungsbetrag nach Berechnung; vor der Berechnung - null. |
coef | number | Aktuelles oder endgültiges Kuponverhältnis. |
original_coef | number | Der Gesamtkoeffizient des Coupons zum Zeitpunkt seiner Erstellung. |
calculate_coef | number/null | Endgültig berechneter Koeffizient; vor der Berechnung - null. |
has_return | boolean | true, wenn der Coupon eine Wette mit Rückerstattungsstatus enthält. |
date | integer | Coupon-Erstellungsdatum, Unix-Zeitstempel in Millisekunden. |
status | integer | Aktueller Gutscheinstatus. Die Werte werden im Abschnitt „Coupon- und Gebotsstatus“ beschrieben. |
asian | boolean | Zeichen für das Vorhandensein einer asiatischen Siedlung, einschließlich halber Gewinne oder Verluste. |
calculate_date | integer/null | Datum der Couponberechnung in Millisekunden; vor der Berechnung - null. |
coupon_type | integer | Gutscheintyp: 1 – normal, 2 – Express. |
events_count | integer | Anzahl der Wetten im Coupon. |
events_data | array | Das gesamte Wettangebot ist im Coupon enthalten. |
Gebotsfelder
Jedes Element von events_data[] beschreibt eine bestimmte akzeptierte Wette innerhalb des Coupons.
| Feld | Typ | Bedeutung |
|---|---|---|
id | integer/null | Interne ID der angenommenen Wette. Wird in Verbindung mit coupon_code verwendet, um innerhalb eines Coupons nach einem Preis zu suchen. |
game_id | integer | ID des Ereignisses oder Unterereignisses, auf das die Wette platziert wird. |
main_game_id | integer/null | ID des Hauptspiels, zu dem das Ereignis oder Unterereignis gehört. |
is_sub_game | boolean | true, wenn sich die Wette auf eine Halbzeit, ein Viertel, einen Satz, Eckbälle oder ein anderes Unterereignis bezieht. |
parent_game_id | integer/null | Die ID des unmittelbar übergeordneten Ereignisses, sofern vorhanden. |
sub_game_key | string/null | Technischer Schlüssel eines Unterereignisses oder Zeitraums. |
raw_pointer | string | Der von der API akzeptierte ursprüngliche Tarifindikator. |
line_type | string | Linientyp: line – Vorspiel, live – Echtzeitereignis. |
is_live | boolean | true, wenn die Wette auf einer Live-Linie erstellt wurde. |
bet_group_id | integer | ID der Wettgruppe oder des Marktes. |
bet_group_name | string/null | Lokalisierter Name der Wettgruppe. |
bet_id | integer | ID der ausgewählten Auswahl innerhalb der Wettgruppe. |
bet_name | string/null | Lokalisierter vollständiger Name der ausgewählten Auswahl. |
sport_id | integer/null | Sportausweis. |
sport_name | string/null | Lokalisierter Name der Sportart. |
tournament_id | integer/null | Turnier-ID. |
tournament | string/null | Lokalisierter Name des Turniers. |
event_date | integer/null | Startdatum des Ereignisses, Unix-Zeitstempel in Millisekunden. |
status | integer | Aktueller Tarifberechnungsstatus. Nicht zu verwechseln mit dem Gutscheinstatus. |
opp1 | string/null | Name des ersten Teams oder Teilnehmers. |
opp2 | string/null | Name des zweiten Teams oder Teilnehmers. |
coef | number | Die Wettquote, zu der die Wette angenommen wurde. |
calc_coef | number/null | Berechneter Wettmultiplikator; vor der Berechnung - null. |
bet_score | string | Mit der Legacy-API kompatibles Feld, das den Wettindikator und nicht den Spielstand enthält. |
calculate_date | integer/null | Datum der Tarifberechnung in Millisekunden; vor der Berechnung - null. |
calculate_score | string/null | Das Konto, das zur Berechnung der Wette verwendet wird. |
settlement_reason_code | string/null | Stabiler Maschinencode des Zahlungs- oder Rückgabegrundes; vor der Berechnung - null. |
settlement_reason | string/null | Erläuternder Text zum Zahlungs- oder Rückgabegrund; vor der Berechnung - null. |
placement_score_full | string/null | Gesamtpunktzahl des Ereignisses zum Zeitpunkt der Erstellung der Wette, sofern verfügbar. |
placement_score_periods | string/null | Ergebnis nach Zeitraum zum Zeitpunkt der Erstellung der Wette, falls verfügbar. |
calculation_score_full | string/null | Die Gesamtpunktzahl des Ereignisses zum Zeitpunkt der Wettabrechnung. |
calculation_score_periods | string/null | Konto nach Periode zum Zeitpunkt der Tarifberechnung. |
timer | integer/null | Ereignis-Timer zum Zeitpunkt der Datenspeicherung, falls verfügbar. |
dop_name | string/null | Name des Unterereignisses: Halbzeit, Periode, Satz, Inning usw. |
rate | string | Ergebnisparameter, zum Beispiel der Wert der Gesamtsumme oder des Handicaps; für ein Ergebnis ohne Parameter - "0". |
sgame_id | string/null | Fremdschlüssel des Unterereignisses. |
game_num | integer/null | Spielnummer, sofern von der Quelle bereitgestellt. |
stat_id | string/null | Externe statistische Ereignis-ID. |
team1_id | integer/null | ID des ersten Teams oder Teilnehmers. |
team2_id | integer/null | ID des zweiten Teams oder Teilnehmers. |
opp_icon1 | integer/null | Kompatible ID des ersten Befehlssymbols; entspricht team1_id. |
opp_icon2 | integer/null | Kompatible Symbol-ID des zweiten Teams; entspricht team2_id. |
Der Wert null ist normal für Daten, die noch nicht berechnet wurden oder nicht verfügbar sind. Ersetzen Sie es nicht automatisch durch 0 oder die leere Zeichenfolge.
Betrachten Sie den Gutschein nur als akzeptiert, wenn code = 1 und das Vorhandensein von Gegenständen in body.coupons vorliegt. Zuvor ist der Korb eine Vorauswahl: Die Auswahl könnte verschwinden, gesperrt werden oder sich die Quoten ändern.
Nach Erfolg:
- alle
body.coupons-Objekte speichern, nicht nur das erste; - Speichern Sie
coupon_codeals Zeichenfolge mit führenden Nullen. - Speichern Sie die erforderlichen Daten von
events_data; - Ordnen Sie den Coupon dem Endbenutzer zu.
- Erfassen Sie die Finanztransaktion des Benutzers im System des Partners.
Identifikatoren:
| Feld | Zweck |
|---|---|
coupon_code | Öffentlicher Gutscheincode. |
events_data[].id | ID der konkret akzeptierten Wette im Coupon. |
Rückruf events_data[].uuid | Dieselbe Gebots-ID, als Zeichenfolge übergeben. |
batchId | ID der Callback-Paketversion, nicht der Coupon oder der Preis. |
currency wird im vollständigen Modell und Rückruf nicht zurückgegeben. Wenn die Währung benötigt wird, speichern Sie den Wert aus der Erstellungsanforderung.
7. Erstellungsfehler
| Code | Grund | Aktion |
|---|---|---|
10 | Kein Anfragetext. | Korrigieren Sie die Anfrage. |
11 | Ungültiger Zeiger. | Holen Sie sich den aktuellen Zeiger aus der Zeile. |
12 | Ungültiger amount. | Übergeben Sie eine positive Zahl. |
501 | Der Koeffizient hat sich geändert. | Neuen Wert anzeigen oder mode ändern. |
502 | Es gibt kein Ergebnis. | Gebot im Warenkorb entfernen/aktualisieren. |
503 | Das Ergebnis ist blockiert. | Vorübergehende Nichtverfügbarkeit melden. |
504 | Fehler bei der Ergebnisüberprüfung. | Betrachten Sie den Gutschein nicht als angenommen; später wiederholen. |
506 | Bei Expresswetten ein Spiel. | Belassen Sie ein Ergebnis oder verwenden Sie separate Singles. |
507 | Unzureichendes Kundenguthaben. | Laden Sie Ihr Guthaben auf oder reduzieren Sie den Gesamtbetrag. |
1002 | Ungültiger Parametersatz. | Korrekte Parameter. |
10000 | Interner Fehler. | Notieren Sie den Fehler und überprüfen Sie das Ergebnis, bevor Sie es erneut versuchen. |
Für 501–504 gibt die neue API die problematischen Raten in body.changes[] zurück. Feld change_type: 1 – der Koeffizient ist gestiegen, 2 – gesunken, null – die Richtung ist nicht anwendbar.
Versuchen Sie es nicht blind erneut mit POST /coupons/place nach einer Zeitüberschreitung: Möglicherweise wurde die erste Anfrage akzeptiert und bei einem erneuten Versuch wird ein Duplikat erstellt.
8. Gutscheine erhalten
| Betrieb | Endpunkt | Ergebnis |
|---|---|---|
| Ein Gutschein | GET /api/partner/coupons/get?coupon_code={code} | Gutschein bei body. |
| Aktiv | GET /api/partner/coupons/active | Array in body[]. |
| Aktuelle Berechnungen | GET /api/partner/coupons/calculated?time=10 | Array in body[]; maximal 120 Minuten. |
| Nach Code/Zeitraum | POST /api/partner/coupons/results | Array in body.coupons. |
| Kundensaldo | GET /api/partner/balance | body.balance. |
Mithilfe von Codes können Sie bis zu 100 Werte übertragen:
{
"coupon_ids": ["000000000272", "000000000273"]
}
Oder verstreichen Sie den Erstellungszeitraum nicht länger als 24 Stunden:
{
"start_date": 1784880000000,
"end_date": 1784966400000
}
Kombinieren Sie coupon_ids und Datumsangaben nicht in derselben Abfrage. results filtert nach Erstellungszeit und calculated filtert nach Endabrechnungszeit.
9. Gutschein- und Wettstatus
Gutscheinstatus:
| Code | Bedeutung | Endgültig |
|---|---|---|
0 | Aktiv oder teilweise besiedelt. | Nein |
2 | Gewonnen. | Ja |
4 | Verloren. | Ja |
8 | Vollständig erstattet. | Ja |
15 | Zur Neuberechnung zurückgegeben; ein neues Ergebnis erwarten. | Nein |
Gebotsstatus:
| Code | Bedeutung | calc_coef |
|---|---|---|
0 | Nicht berechnet. | null |
1 | Gewinnen. | Ursprünglicher Koeffizient |
2 | Verlieren. | 0 |
3 | Rückkehr. | 1 |
4 | Warten auf Neuberechnung. | null |
21 | Die Hälfte des Gewinns. | (coef + 1) / 2 |
22 | Halber Verlust. | 0.5 |
23 | Drücken. | 1 |
Für die finanzielle Abgrenzung an den Endbenutzer verwenden Sie das vorgefertigte real_win. Verwenden Sie nicht potential_win und berechnen Sie die Zahlung nicht selbst neu. Vor der Berechnung sind real_win, calculate_coef, calc_coef und calculate_date gleich null, nicht 0.
Beim ersten Status des Gutscheins 15, wenn das vorherige Ergebnis bereits finanziell abgewickelt wurde, belastet der Partner erneut amount vom Endbenutzer, erwartet einen neuen Endstatus und berechnet einen neuen real_win. Schützen Sie den Betrieb vor einer Wiederaufbereitung.
10. Grund der Berechnung
Jede Wette im vollständigen Modell und Rückruf hat:
| Feld | Zweck |
|---|---|
settlement_reason_code | Stabiler Code für den Zahlungs-/Rückerstattungsgrund. |
settlement_reason | Erklärender Quelltext. |
Vor der Berechnung sind beide Felder gleich null. Für eine lokalisierte Benachrichtigung verwenden Sie Code wie:
MATCH_POSTPONED– das Spiel wurde verschoben;MATCH_CANCELLED– Spiel abgesagt;MARKET_PUSH– Rendite gemäß den Marktregeln.
Wenn der Code unbekannt ist, speichern Sie ihn und verwenden Sie den nicht leeren settlement_reason als Fallback-Text. Berechnen Sie die Zahlung nicht nach Grund, sondern verwenden Sie Status und real_win.
Diese Felder erläutern die bereits durchgeführte Berechnung oder Rückgabe und stellen keinen separaten Echtzeit-Feed des Match-Status dar.
11. Rückruf
Rückruf ist optional. Ein Partner kann nur durch Umfragen arbeiten. Für den Rückruf muss der Manager die Funktion aktivieren und callback_secret erstellen; Die URL wird in jedem erstellten Coupon mitgesendet.
Der Partner bestimmt die Callback-URL selbstständig. In der Produktion sollte https:// verwendet werden; In einer Testumgebung ist http:// zulässig.
Das System sendet:
POST {callback_url}
Content-Type: application/json
X-Coupon-Signature: sha256=<hex_hmac_sha256>
Kurze Nutzlast:
{
"event": "coupons.settled",
"batchId": "d407e986f3a64d9d36a77bf532322ef8",
"couponCount": 1,
"coupons": [
{
"coupon_code": "000000000272",
"realWin": 18.5,
"calculate_coefficient": 1.85,
"status": 2,
"calculate_date": 1784973600000,
"events_data": [
{
"uuid": "912",
"status": 1,
"calculate_coefficient": 1.85,
"calculate_date": 1784973600000,
"calculate_score": "2:1",
"settlement_reason_code": "REMOTE_WIN",
"settlement_reason": "Win",
"timer": 0
}
]
}
]
}
Obligatorische Regeln:
- Berechnen Sie
sha256=<hex(HMAC-SHA256(raw_body, callback_secret))>aus den genauen Quellbytes des Körpers vor der JSON-Analyse und vergleichen Sie Signaturen auf sichere Weise. - alle Artikel verarbeiten
coupons, das Paket kann bis zu 100 Coupons enthalten; - Speichern Sie
batchIdmit einem eindeutigen Index. - wiederholtes
batchIdsollte die Abschreibung oder Rückstellung nicht wiederholen; - ein
coupon_codekann während der progressiven Berechnung und Neuberechnung mit unterschiedlichenbatchIdkommen; - Geben Sie HTTP
200erst zurück, nachdem das gesamte Paket sicher gespeichert wurde.
Die minimale erfolgreiche Antwort ist ein leeres HTTP 200. Fortgeschritten:
{
"success": true,
"processed": 1
}
processed muss gleich couponCount sein. Die Antworten 201, 202 und 204 gelten als nicht erfolgreich.
Wiederholungen werden nur bei Zeitüberschreitung, Transportfehler oder HTTP durchgeführt. 500, 502, 503, 504: sofort, dann nach 1, 5, 15 und 60 Minuten – nicht mehr als fünf Sendungen. Es gibt keinen automatischen Wiederholungsversuch bei HTTP 200 mit success: false oder teilweisem processed.
12. Reserveumfrage
Überprüfen Sie auch bei Rückruf regelmäßig die Ergebnisse:
GET /api/partner/coupons/calculated?time=10
Nach einer Pause von mehr als 120 Minuten verwenden Sie POST /api/partner/coupons/results über gespeicherte coupon_ids oder Erstellungszeiträume bis zu 24 Stunden. Um das gleiche Vermögen noch einmal zu erhalten, sollten keine Finanztransaktionen wiederholt werden.
13. Sicherheit und Lagerung
- Login, Passwort, JWT und
callback_secretnur auf dem Server speichern; - Übergeben Sie kein JWT in der URL und schreiben Sie nicht das vollständige Token in die Protokolle.
- Verwenden Sie für Geld den Dezimaltyp.
- Speichern Sie
coupon_codeals Zeichenfolge. - Speichern Sie
amount, die erforderlichen Gebotsdaten undcurrency, falls verwendet. - zwischen Coupon- und Gebotsstatus unterscheiden;
- Akzeptieren Sie unbekannte Felder und Ursachencodes ohne Fehler.
- Machen Sie alle Finanztransaktionen der Endbenutzer idempotent.
14. Alte API und Auszahlung
Alte Routen werden weiterhin unterstützt, neue Integrationen müssen jedoch /api/partner/** verwenden. Alte Antworten und Fehler haben unterschiedliche Formate. Um einen vorhandenen Client zu aktualisieren, verwenden Sie eine einzelne Datei „Migration von der alten API“.
Cashout befindet sich in der Entwicklung, ist noch nicht vollständig getestet und wird nicht für die Produktion empfohlen.
15. Abschließende Checkliste
- Erhalten Sie
BASE_URL, Login und Passwort. - JWT wird als Bearer-Token übertragen.
- Die Zeiger werden unverändert aus der Zeile übernommen.
- Der Warenkorb wird erst nach
code = 1als akzeptierter Coupon gespeichert. - Verarbeitet
multi, ausdrückliche Einschränkungen und Fehler501–507. - Die automatische Abschreibung des Kundenguthabens wurde berücksichtigt.
- Alle
coupon_codeund Gebots-IDs werden gespeichert. - Die endgültige Auszahlung erfolgt aus
real_win. - Der Rückruf wird anhand der Quellbytes überprüft und mit
batchIddedupliziert. - Backup-Polling wurde konfiguriert.
- Das Benutzerguthaben ist vom Kundenguthaben SportAPI getrennt.
Die ausführliche Dokumentation beginnt mit API-Übersicht. Die vollständige Endpunktkarte finden Sie im Handbuch.