Gaunamieji webhookai leidžia išoriniams įrankiams skelbti automatines žinutes HansaChat kanale. Naudokite juos diegimo atnaujinimams, stebėjimo įspėjimams, bilietų pranešimams, formų pateikimams ir kitiems įvykiams, kurie turėtų atsirasti komandos pokalbiuose.
Gaunamus webhookus kurti ir tvarkyti gali tik darbo erdvės administratoriai.

Sukurkite webhooką
- Atidarykite Nustatymus šoninės juostos apatiniame kairiajame kampe.
- Pasirinkite Webhookai.
- Pasirinkite Kurti webhooką.
- Įveskite aiškų webhooko pavadinimą, pavyzdžiui,
CI Deployments. - Pasirinkite kanalą, kuriame žinutės turėtų būti skelbiamos.
- Jei norite, įveskite piktogramos URL.
- Pasirinkite Kurti webhooką.


Nukopijuokite webhooko URL
Sukūrus HansaChat webhooko URL rodo vieną kartą. Nukopijuokite jį ir saugiai išsaugokite išoriniame įrankyje, kuris siųs įvykius.

Jei uždarysite šį ekraną neįrašę URL, sukurkite naują URL, kad gautumėte naują paslaptį. Ankstesnis URL nustoja veikti iš karto po pakeitimo.
Tvarkykite webhookus
Iš Webhookų puslapio administratoriai gali:
- Redaguoti webhooko pavadinimą, kanalą, piktogramos URL arba aktyvumo būseną.
- Išjungti webhooką, kad jis atmestų naujas žinutes, bet nebūtų ištrintas.
- Sukurti naują URL, kad sena paslaptis taptų negaliojanti ir būtų sugeneruotas naujas URL.
- Ištrinti webhooką. Jau esančios pokalbių žinutės nepašalinamos.
Techninė nuoroda
Siųskite POST užklausą į webhooko URL:
https://{workspace-domain}/api/webhooks/{publicID}/{secret}
URL savyje turi webhooko prieigos duomenis. Nereikia jokios papildomos autentifikavimo antraštės. Laikykite visą URL paslaptyje.
Minimali užklausa
curl -X POST 'https://{workspace-domain}/api/webhooks/{publicID}/{secret}' \
-H 'Content-Type: application/json' \
-d '{"text":"Deployment completed successfully"}'
Kai HansaChat grąžina ok, žinutė atsiranda pasirinktame kanale.

Slack suderinamas duomenų paketas
Galinis taškas priima Slack suderinamus JSON duomenų paketus su text, blocks ir attachments.
{
"text": "Deployment completed successfully",
"blocks": [
{
"type": "header",
"text": {
"type": "plain_text",
"text": "Deployment completed"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "Branch `main` is now live."
}
}
]
}
Bent vienas iš text, blocks arba attachments turi turėti skaitomą tekstą.
Palaikomi laukai
| Laukas | Būtinas | Pastabos |
|---|---|---|
text |
Ne | Paprasto teksto žinutės turinys. |
blocks |
Ne | Slack Block Kit stiliaus blokai. Iki 50 blokų. Palaikomi blokų tipai: section, header, context, image. |
attachments |
Ne | Slack stiliaus priedai. Iki 100 priedų. |
Didžiausias duomenų paketo dydis — 1 MB.
Užklausų ribos
Gaunamų webhookų priėmimas ribojamas pagal užklausų dažnį kiekvienam webhooko URL atskirai.
Kiekvienas webhookas gali priimti iki 10 autentifikuotų užklausų per minutę ir iki 100 autentifikuotų užklausų per valandą. Kai pasiekiama bet kuri iš šių ribų, HansaChat grąžina 429 resource_exhausted.
Jei norite padidinti užklausų ribą, susisiekite su mumis.
Duomenų paketų ribos taikomos atskirai: didžiausias užklausos dydis — 1 MB, blocks priima iki 50 elementų, attachments — iki 100 elementų, o duomenų pakete turi būti skaitomo teksto.
Idempotencija
Pridėkite antraštę Idempotency-Key, kai Jūsų sistema gali pakartoti tą patį įvykį:
curl -X POST 'https://{workspace-domain}/api/webhooks/{publicID}/{secret}' \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: deploy-1247' \
-d '{"text":"Deployment #1247 completed"}'
Jei HansaChat tas pats idempotencijos raktas tam pačiam webhookui gauna dar kartą, jis grąžina 200 ok nesukurdamas dubliuotos žinutės.
Atsakymai
Sėkmingos užklausos grąžina:
ok
Dažnos klaidos:
| Būsena | Turinys | Reikšmė |
|---|---|---|
| 400 | invalid_payload |
JSON turinio nepavyko perskaityti. |
| 400 | invalid_blocks |
Užklausa turi daugiau nei 50 blokų. |
| 400 | too_many_attachments |
Užklausa turi daugiau nei 100 priedų. |
| 400 | no_text |
Duomenų pakete nėra skaitomo teksto. |
| 429 | resource_exhausted |
Webhookas viršijo 10 užklausų per minutę arba 100 užklausų per valandą. |
| 404 | no_active_hooks |
Darbo erdvė, webhookas, paslaptis arba aktyvumo būsena negalioja. |
| 410 | channel_is_archived |
Tikslinis kanalas suarchyvuotas. |
| 503 | temporarily_unavailable |
HansaChat šiuo metu negali apdoroti žinutės. Pakartokite vėliau su tuo pačiu Idempotency-Key. |
Saugumo patarimai
- Elkitės su webhookų URL kaip su slaptažodžiais.
- Saugokite URL savo išorinio įrankio paslapčių tvarkytuvėje.
- Sukurkite naują URL, jei jis buvo atskleistas arba pamestas.
- Išjunkite nenaudojamus webhookus.
- Naudokite atskirą webhooką kiekvienai išorinei sistemai, kad prieigą būtų galima švariai atšaukti.