B2BB2B LLM

Tagasihelistamised

Saate allkirjastatud, idempotentsed serveritevahelised sündmused ja lõpetatud asünkroonimise tulemused.

Tagasihelistamised

Seadistage tagasihelistamise URL Profiil → Tagasihelistamised ja asünkroonimise tulemused. Model Gate saadab HTTPS-i POST päringud lubatud konto märguannete ja lõpetatud native asünkroonimise järelduste päringud. Tagasihelistamine ei sõltu järelduste töötlemisest ja jookseb spetsiaalse vastupidava Model Gate'i töötajate järjekorra kaudu.

Tagasihelistamise URL ja väljamineku turvalisus

Kasutage avalikult juurdepääsetavat HTTPS-i lõpp-punkti. Tagasihelistamise URL-i valideerimine on väljamineku turvapiir. Tagasisilmus, privaatne, link-local, operaatoritaseme NAT, dokumentatsioon/testimine, multisaade, määratlemata ja reserveeritud IP-vahemikud lükatakse tagasi. Hostinimi kinnitatakse salvestamisel ja uuesti kohaletoimetamise ajal; ümbersuunamised kinnitatakse uuesti. Ärge suunake tagasihelistamisi siseteenustele ega ümbersuunamisi privaatvõrkudesse.

Ühine ürituse ümbrik

Iga tagasihelistamine kasutab sama ümbrikut:

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

event_id on stabiilne ühe loogilise sündmuse iga korduskatse jaoks. Tarnete duplikaatide tühistamine event_id; ära järelda identiteeti, võrreldes ülejäänud kasulikku koormust. occurred_at on UTC RFC3339. Kasulik koormus võib aja jooksul saada täiendavaid välju, seega peavad tarbijad tundmatuid välju ignoreerima.

Iga tarne sisaldab ka sama sündmuse ID-d X-Model-Gate-Event-ID.

Sündmuste kataloog

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

Kasulik koormus kasutab group_id, group_name, täpne koma usage, täpne koma spend_limit, täisarv threshold_percentja 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 on tühine, kui ülesvoolu HTTP olekut pole. Ebaõnnestunud/tühistatud/aegunud asünkroonimise tulemused võivad sisaldada data.error.

Rahalised väärtused tagasihelistamiskoormustes on täpsed kümnendstringid; need ei ole kasutajaliidese ümardatud kuvaväärtused.

Lävemärguanded aktiveeritakse uuesti pärast seda, kui jälgitav väärtus lahkub oma läviseisundist. Lävetöötaja hindab tingimusi ligikaudu kord minutis, väljaspool järelduse kuuma teed, seega ei ole läve tagasihelistamised reaalajas millisekundi ületamise signaal.

Taotluse vorming

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

Allkirja kinnitamine

Arvutage HMAC-SHA256 täpse stringi järgi <timestamp>.<raw_body> kasutades profiilis loodud tagasihelistamise saladust. Täielik saladus kuvatakse ainult siis, kui see luuakse või pööratakse, ja see salvestatakse puhkeolekus krüpteeritult. Võrrelge kuueteistkümnendsüsteemi allkirja konstantse aja jooksul ja lükake ajatemplid väljaspool aktsepteeritud taasesituse akent tagasi. HMAC-i ajatempel on spetsiifiline tarnekatsele; a event_id püsib kogu korduskatsetel stabiilsena.

Kohaletoimetamine, vastamine ja uuesti proovimine

Igasugune HTTP 2xx vastus nõustub sündmusega. HTTP 200 tühja kehaga on soovitatav. Transpordivead, ajalõpud ja iga mitte-2xx-vastus on tõrked.

Igal sündmusel on maksimaalselt Kokku 6 katset: esialgne katse pluss viis korduskatset. Järgnevad ebaõnnestunud katsed 1–5 5 sekundit, 30 sekundit, 2 minutit, 10 minutit ja 1 tund. Igal katsel on raske 15-sekundiline üldine ajalõpp. Pärast kuuendat ebaõnnestunud katset muutub sündmus terminaliks failed ja enam automaatset uuesti proovimist ei toimu. Aegunud töötajate nõuded tagastatakse automaatselt püsivasse järjekorda.

Ärge tehke enne vastamist pikaajalist tööd. Kontrollige allkirja, säilitage/duplikeerige event_id, tagasi 2xxja töödelda asünkroonselt.

Seotud dokumentatsioon