Sissetulevad webhookid võimaldavad välistel tööriistadel postitada automatiseeritud sõnumeid HansaChati kanalisse. Kasutage neid juurutuste uuenduste, jälgimishoiatuste, piletiteavituste, vormide esitiste ja muude sündmuste jaoks, mis peaksid meeskonna vestluses ilmuma.
Ainult tööruumi administraatorid saavad sissetulevaid webhooke luua ja hallata.

Webhooki loomine
- Avage küljeriba alumisest vasakust nurgast Seaded.
- Valige Webhookid.
- Valige Loo webhook.
- Sisestage selge webhooki nimi, näiteks
CI Deployments. - Valige kanal, kuhu sõnumid tuleb postitada.
- Soovi korral sisestage ikooni URL.
- Valige Loo webhook.


Webhooki URL-i kopeerimine
Pärast loomist näitab HansaChat webhooki URL-i ühe korra. Kopeerige see ja hoidke seda turvaliselt välises tööriistas, mis sündmusi saadab.

Kui sulgete selle kuva ilma URL-i salvestamata, vahetage URL välja, et luua uus saladus. Eelmine URL lakkab pärast vahetamist kohe töötamast.
Webhookide haldamine
Webhookide lehelt saavad administraatorid:
- Muuda webhooki nime, kanalit, ikooni URL-i või aktiivset olekut.
- Keela webhook, et tagasi lükata uued sõnumid ilma seda kustutamata.
- Vaheta URL, et muuta vana saladus kehtetuks ja luua uus URL.
- Kustuta webhook. Olemasolevad vestlussõnumid ei eemaldata.
Tehniline viide
Saadake webhooki URL-ile POST-päring:
https://{workspace-domain}/api/webhooks/{publicID}/{secret}
URL sisaldab webhooki mandaate. Eraldi autentimispäist pole vaja. Hoidke kogu URL salajana.
Minimaalne päring
curl -X POST 'https://{workspace-domain}/api/webhooks/{publicID}/{secret}' \
-H 'Content-Type: application/json' \
-d '{"text":"Deployment completed successfully"}'
Pärast seda, kui HansaChat tagastab ok, ilmub sõnum valitud kanalisse.

Slackiga ühilduv payload
Lõpp-punkt aktsepteerib Slackiga ühilduvaid JSON-payloadisid võtmetega text, blocks ja 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."
}
}
]
}
Vähemalt üks text, blocks või attachments peab sisaldama loetavat teksti.
Toetatud väljad
| Väli | Nõutav | Märkused |
|---|---|---|
text |
Ei | Lihttekstiline sõnumi sisu. |
blocks |
Ei | Slack Block Kit'i stiilis plokid. Kuni 50 plokki. Toetatud plokitüübid: section, header, context, image. |
attachments |
Ei | Slacki stiilis manused. Kuni 100 manust. |
Maksimaalne payloadi suurus on 1 MB.
Päringupiirangud
Sissetulevate webhookide töötlemine on webhooki URL-i kaupa päringupiiranguga piiratud.
Iga webhook aktsepteerib kuni 10 autentitud päringut minutis ja kuni 100 autentitud päringut tunnis. Kui kumbki piirang täitub, tagastab HansaChat vea 429 resource_exhausted.
Kui soovite päringupiirangut suurendada, võtke meiega ühendust.
Payloadi piiranguid jõustatakse eraldi: maksimaalne keha suurus on 1 MB, blocks aktsepteerib kuni 50 elementi, attachments kuni 100 elementi ja payload peab sisaldama loetavat teksti.
Idempotentsus
Lisage päis Idempotency-Key, kui teie süsteem võib sama sündmuse uuesti korrata:
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"}'
Kui HansaChat saab sama idempotentsusvõtme sama webhooki jaoks uuesti, tagastab ta 200 ok ilma duplikaatsõnumit loomata.
Vastused
Edukad päringud tagastavad:
ok
Levinud vead:
| Olek | Keha | Tähendus |
|---|---|---|
| 400 | invalid_payload |
JSON-keha ei õnnestunud parsida. |
| 400 | invalid_blocks |
Päring sisaldab üle 50 ploki. |
| 400 | too_many_attachments |
Päring sisaldab üle 100 manuse. |
| 400 | no_text |
Payloadis pole loetavat teksti. |
| 429 | resource_exhausted |
Webhook ületas 10 päringut minutis või 100 päringut tunnis. |
| 404 | no_active_hooks |
Tööruum, webhook, saladus või aktiivne olek on vigane. |
| 410 | channel_is_archived |
Sihtkanal on arhiveeritud. |
| 503 | temporarily_unavailable |
HansaChat ei saa sõnumit praegu töödelda. Proovige hiljem uuesti sama Idempotency-Key-ga. |
Turvanõuanded
- Käsitsege webhooki URL-e nagu salasõnu.
- Hoidke URL-e välise tööriista saladuhalduris.
- Vahetage URL välja, kui see lekis või läks kaotsi.
- Keelage kasutamata webhookid.
- Kasutage iga välise süsteemi jaoks eraldi webhooki, et juurdepääsu saaks puhtalt tühistada.