B2BB2B LLM

Visszahívások

Aláírt, idempotens kiszolgálók közötti események és befejezett aszinkron eredmények fogadása.

Visszahívások

Konfiguráljon egy visszahívási URL-t Profil → Visszahívások és aszinkron eredmények. A Model Gate HTTPS-t küld POST az engedélyezett fiókértesítésekre vonatkozó kérések és a befejezett natív aszinkron-következtetési kérések. A visszahívási kézbesítés független a következtetések feldolgozásától, és egy dedikált tartós Model Gate dolgozói soron keresztül fut.

Visszahívási URL és kimenő biztonság

Használjon nyilvánosan elérhető HTTPS-végpontot. A visszahívási URL-ellenőrzés egy kimenő biztonsági határ. Loopback, privát, link-local, szolgáltatói szintű NAT, dokumentáció/teszt, csoportos küldés, nem meghatározott és fenntartott IP-tartományok elutasítva. A gazdagépnév érvényesítésre kerül a mentéskor és a kézbesítés során; az átirányítások újra érvényesülnek. Ne irányítsa a visszahívásokat a belső szolgáltatásokra vagy a magánhálózatokba való átirányítást.

Közös rendezvényboríték

Minden visszahívás ugyanazt a borítékot használja:

{
  "event_id": "01J...",
  "event": "account.balance_low",
  "occurred_at": "2026-08-28T07:00:00Z",
  "data": {}
}

event_id egy logikai esemény minden újrapróbálkozásánál stabil. Szállítások ismétlődésének megszüntetése event_id; ne következtessen az azonosságra a hasznos teher többi részének összehasonlításával. occurred_at UTC RFC3339. A hasznos terhek idővel további mezőket kaphatnak, ezért a fogyasztóknak figyelmen kívül kell hagyniuk az ismeretlen mezőket.

Minden szállítás ugyanazt az eseményazonosítót is tartalmazza X-Model-Gate-Event-ID.

Rendezvény katalógus

account.balance_low

{
  "event_id": "01J...",
  "event": "account.balance_low",
  "occurred_at": "2026-08-28T07:00:00Z",
  "data": {
    "balance": "10.1234567890",
    "threshold": "20.0000000000",
    "currency": "USD"
  }
}

key.spend_limit_threshold_reached

{
  "event_id": "01J...",
  "event": "key.spend_limit_threshold_reached",
  "occurred_at": "2026-08-28T07:00:00Z",
  "data": {
    "key_id": "KEY_PUBLIC_ID",
    "key_name": "Bank integration",
    "usage": "80.1234567890",
    "spend_limit": "100.0000000000",
    "threshold_percent": 80,
    "currency": "USD"
  }
}

group.spend_limit_threshold_reached

A hasznos teher használ group_id, group_name, pontos-tizedes usage, pontos-tizedes spend_limit, egész szám threshold_percent, és currency = "USD".

request.completed

{
  "event_id": "01J...",
  "event": "request.completed",
  "occurred_at": "2026-08-28T07:00:00.123456Z",
  "data": {
    "request_id": "01J...",
    "status": "completed",
    "response_status": 200,
    "response": {"id":"msg_...","type":"message"}
  }
}

response_status érvénytelen, ha nem létezik upstream HTTP állapot. A sikertelen/megszakított/lejárt aszinkron eredmények között szerepelhet data.error.

A visszahívási hasznos adatok pénzügyi értékei pontos decimális karakterláncok; ezek nem UI-kerekített megjelenítési értékek.

A küszöbérték riasztások újraélesítésre kerülnek, miután a figyelt érték elhagyja a küszöbértéket. A küszöbérték dolgozó körülbelül percenként egyszer értékeli ki a feltételeket, a következtetési forró útvonalon kívül, így a küszöbérték visszahívásai nem valós idejű ezredmásodperces átlépési jelek.

Kérelem formátuma

POST /model-gate/callback HTTP/1.1
Content-Type: application/json
X-Model-Gate-Event-ID: 01J...
X-Model-Gate-Signature: t=1710000000,v1=hex_hmac_sha256

Aláírás ellenőrzése

Számítsa ki a HMAC-SHA256-ot a pontos karakterlánc alapján <timestamp>.<raw_body> a Profilban generált visszahívási titok használatával. A teljes titok csak generálva vagy elforgatva jelenik meg, és nyugalmi állapotban titkosítva tárolódik. Hasonlítsa össze a hexadecimális aláírást állandó időben, és utasítsa el az időbélyegeket az elfogadott visszajátszási ablakon kívül. A HMAC időbélyeg egy kézbesítési kísérletre vonatkozik; a event_id stabil marad az újrapróbálkozások során.

Kézbesítés, válaszadás és újrapróbálkozás

Bármilyen HTTP 2xx válasz elfogadja az eseményt. HTTP 200 üres testtel ajánlott. A szállítási hibák, az időtúllépések és minden nem 2xx válasz hiba.

Minden eseménynek legfeljebb Összesen 6 próbálkozás: a kezdeti kísérlet plusz öt újrapróbálkozás. Az 1–5. sikertelen kísérletek következnek 5 másodperc, 30 másodperc, 2 perc, 10 perc és 1 óra. Minden próbálkozásnak megvan a maga nehézsége 15 másodperc általános időtúllépés. A hatodik sikertelen kísérlet után az esemény terminál lesz failed és nincs további automatikus újrapróbálkozás. Az elavult munkavállalói igények automatikusan visszakerülnek a tartós sorba.

Válaszadás előtt ne végezzen hosszan tartó munkát. Ellenőrizd az aláírást, megőrizd/deuplikáld event_id, vissza 2xx, és aszinkron módon dolgozza fel.

Kapcsolódó dokumentáció