Veebikonksu lõpp-punktid
Lõpp-punktidel põhinev webhook-süsteem võimaldab registreerida organisatsiooni kohta mitu sihtkohta, millest igaühel on oma saladus, oma olek ja oma tellimus sündmusetüüpide alamhulgale. See on soovitatud mudel kõigi uute integratsioonide jaoks.
Võrdle pärand ühe URL-iga webhookiga, mis on säilitatud tagasiühilduvuse tagamiseks, kuid toetab organisatsiooni kohta ainult üht URL-i.
Lõpp-punktid
| Meetod | Tee | Nõutud roll | Kirjeldus |
|---|---|---|---|
GET | /v1/developer/webhook-endpoints | admin+ | Loetle lõpp-punktid |
POST | /v1/developer/webhook-endpoints | admin+ | Loo lõpp-punkt |
PATCH | /v1/developer/webhook-endpoints/{endpoint_id} | admin+ | Uuenda silti / URL-i / sündmusi / olekut |
DELETE | /v1/developer/webhook-endpoints/{endpoint_id} | admin+ | Kustuta lõpp-punkt |
POST | /v1/developer/webhook-endpoints/{endpoint_id}/test | admin+ | Saada allkirjastatud testiedastus |
Lõpp-punkti objekt
{
"id": "c4d5e6f7-...",
"label": "Production — Call events",
"url": "https://example.com/thunderphone/hook",
"events": ["telephony.incoming", "telephony.complete"],
"status": "active",
"secret_hint": "a1b2…9f0e",
"created_at": "2026-04-20T18:24:10.113Z",
"updated_at": "2026-04-20T18:24:10.113Z"
}
| Väli | Tüüp | Kirjeldus |
|---|---|---|
id | UUID | Lõpp-punkti ID |
label | string | Kuva nimi, 1–120 märki |
url | string | HTTPS-i URL; arenduseks on lubatud http://localhost |
events | stringide massiiv | Tellitud sündmusetüübid (vaata kehtivaid väärtusi). Tühi massiiv tellib kõik sündmused |
status | string | active, disabled (käsitsi peatatud) või failing (määratakse automaatselt, kui edastus ammendab oma 24-tunnise korduskatsete ajakava ilma ühegi 2xx vastuseta) |
secret_hint | string | Allkirjastamissaladuse esimesed 4 ja viimased 4 märki koos ellipsiga (a1b2…9f0e) — piisav, et võrrelda seda kohalikult salvestatud saladusega ilma täielikku väärtust avaldamata |
created_at, updated_at | ajatempel |
Kehtivad sündmusetüübid
events valideeritakse täpselt selle hulga järgi — loendist väljaspool olevad väärtused
tagastavad 400. Iga tüübi andmekoormuse vormingu kohta vaata sündmuste kataloogi.
telephony.incoming,telephony.complete,telephony.toolweb.incoming,web.complete,web.toolcall.gradedissue.reportedtest-call.completedalert.triggered
Lõpp-punkti olekud
active— edastused toimuvad tavapäraselt.disabled— peatatud käsitsiPATCHabil. Taotlusi ei saadeta. Me ei muuda kunagidisabledlõpp-punkti olekut; selle tagasi muutmine olekuksactiveon alati sinu otsus.failing— määratakse automaatselt, kui edastus lõpp-punkti ammendab kogu oma korduskatsete ajakava (8 katset 24 tunni jooksul), saamata kordagi 2xx vastust. Tõrkuv lõpp-punkt ei saa rohkem liiklust. Kui lõpp-punkt on parandatud, muuda selle olekPATCHabil tagasi väärtuseksactive; edastused, mille korduskatsete ajakava pole veel lõppenud, jätkuvad sealt, kus need pooleli jäid.
Loetle lõpp-punktid
curl https://api.thunderphone.com/v1/developer/webhook-endpoints \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"
Tagastab lõpp-punkti objektide massiivi.
Loo otspunkt
curl -X POST https://api.thunderphone.com/v1/developer/webhook-endpoints \
-H "Authorization: Bearer sk_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"label": "Production — Call events",
"url": "https://example.com/thunderphone/hook",
"events": ["telephony.incoming", "telephony.complete"]
}'
result = requests.post(
"https://api.thunderphone.com/v1/developer/webhook-endpoints",
headers={"Authorization": "Bearer sk_live_YOUR_API_KEY"},
json={
"label": "Production — Call events",
"url": "https://example.com/thunderphone/hook",
"events": ["telephony.incoming", "telephony.complete"],
},
).json()
secret = result["secret"]
endpoint_id = result["id"]
Päringu väljad
| Väli | Tüüp | Kohustuslik | Kirjeldus |
|---|---|---|---|
label | string | jah | 1–120 märki |
url | string | jah | HTTPS-i URL (http on lubatud ainult localhost / 127.0.0.1 puhul) |
events | array | ei | Tühi või välja jäetud väärtus tellib kõik sündmused. Kasuta väärtusi, mis on loetletud jaotises Kehtivad sündmusetüübid; duplikaadid eemaldatakse |
Tagastab 201 Created koos otspunkti objektiga ning
täiendava ülataseme väljaga secret, mis sisaldab toorest allkirjastamisvõtit —
48-märgilist kuueteistkümnendsüsteemi stringi:
{
"id": "c4d5e6f7-…",
"label": "Production — Call events",
"url": "https://example.com/thunderphone/hook",
"events": ["telephony.incoming", "telephony.complete"],
"status": "active",
"secret_hint": "a1b2…9f0e",
"created_at": "2026-04-20T18:24:10.113Z",
"updated_at": "2026-04-20T18:24:10.113Z",
"secret": "a1b2c37e08d94f5b16a2c8d90e7f3a4b5c6d7e8f90a19f0e"
}
Uuenda otspunkti
curl -X PATCH https://api.thunderphone.com/v1/developer/webhook-endpoints/c4d5e6f7-... \
-H "Authorization: Bearer sk_live_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"label": "Production — Call + Grade events",
"events": ["telephony.incoming", "telephony.complete", "call.graded"]
}'
| Väli | Tüüp | Kirjeldus |
|---|---|---|
label | string | |
url | string | |
events | array | |
status | string | active või disabled. Määra väärtuseks active, et uuesti lubada otspunkt, mille server märkis väärtusega failing |
Tagastab 200 OK koos uuendatud otspunkti objektiga.
Saada testiedastus
Saada sünteetiline webhook.test sündmus ühele otspunktile tavapärase
edastustorustiku kaudu, sealhulgas kanooniline JSON-i serialiseerimine,
X-ThunderPhone-Signature, edastuse salvestamine ja korduskatsete arvestus.
Test on suunatud valitud otspunktile sõltumata selle events-filtrist.
curl -X POST https://api.thunderphone.com/v1/developer/webhook-endpoints/c4d5e6f7-.../test \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"
Otspunkt saab ümbriku, mis näeb välja järgmine:
{
"data": {
"message": "ThunderPhone webhook test",
"sent_at": "2026-07-17T20:12:34.567890+00:00"
},
"event_id": "2ad6507c-7d19-4498-9b2d-7e8f944ab5a1",
"type": "webhook.test"
}
API tagastab 200 OK pärast esimest katset isegi siis, kui sihtkoht
tagastab vea. Edastuse tulemuse vaatamiseks kontrolli välju success,
status, response_code ja error:
{
"success": true,
"event_id": "2ad6507c-7d19-4498-9b2d-7e8f944ab5a1",
"event_type": "webhook.test",
"status": "delivered",
"response_code": 204,
"error": ""
}
webhook.test on sünteetiline ja seda ei saa lisada otspunkti events
tellimusse. Kui esimene katse ebaõnnestub, järgib edastus sama
korduskatsete ajakava nagu tavapärased sündmuste edastused.
Kustuta lõpp-punkt
curl -X DELETE https://api.thunderphone.com/v1/developer/webhook-endpoints/c4d5e6f7-... \
-H "Authorization: Bearer sk_live_YOUR_API_KEY"
Tagastab 204 No Content. URL-ile edastamine peatub kohe;
pooleliolevatest korduskatsetest loobutakse.