Indgående webhooks lader eksterne værktøjer sende automatiserede beskeder til en HansaChat-kanal. Brug dem til deploy-opdateringer, overvågningsalarmer, ticket-notifikationer, formularindsendelser og andre hændelser, der skal vises i teamchatten.
Kun workspace-administratorer kan oprette og administrere indgående webhooks.

Opret en webhook
- Åbn Indstillinger i sidebjælken nederst til venstre.
- Vælg Webhooks.
- Vælg Opret webhook.
- Indtast et tydeligt webhook-navn, f.eks.
CI Deployments. - Vælg den kanal, hvor beskederne skal postes.
- Indtast evt. en ikon-URL.
- Vælg Opret webhook.


Kopiér webhook-URL'en
Efter oprettelsen viser HansaChat webhook-URL'en én gang. Kopiér den, og gem den sikkert i det eksterne værktøj, der skal sende hændelser.

Hvis De lukker denne skærm uden at gemme URL'en, skal De rotere URL'en for at generere en ny hemmelig nøgle. Den forrige URL holder op med at virke straks efter rotationen.
Administrér webhooks
Fra Webhooks-siden kan administratorer:
- Redigér webhookens navn, kanal, ikon-URL eller aktive tilstand.
- Deaktivér en webhook for at afvise nye beskeder uden at slette den.
- Rotér URL for at ugyldiggøre den gamle hemmelige nøgle og generere en ny URL.
- Slet en webhook. Eksisterende chatbeskeder fjernes ikke.
Teknisk reference
Send en POST-anmodning til webhook-URL'en:
https://{workspace-domain}/api/webhooks/{publicID}/{secret}
URL'en indeholder webhookens loginoplysninger. Der kræves ingen ekstra godkendelsesheader. Hold hele URL'en hemmelig.
Minimal anmodning
curl -X POST 'https://{workspace-domain}/api/webhooks/{publicID}/{secret}' \
-H 'Content-Type: application/json' \
-d '{"text":"Deployment completed successfully"}'
Når HansaChat returnerer ok, vises beskeden i den valgte kanal.

Slack-kompatibel payload
Endpointet accepterer Slack-kompatible JSON-payloads med text, blocks og 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."
}
}
]
}
Mindst én af text, blocks eller attachments skal indeholde læsbar tekst.
Understøttede felter
| Felt | Påkrævet | Bemærkninger |
|---|---|---|
text |
Nej | Almindeligt tekstindhold til beskeden. |
blocks |
Nej | Blokke i Slack Block Kit-stil. Op til 50 blokke. Understøttede bloktyper: section, header, context, image. |
attachments |
Nej | Vedhæftninger i Slack-stil. Op til 100 vedhæftninger. |
Maksimal payload-størrelse er 1 MB.
Rate-grænser
Indtagelsen af indgående webhooks er rate-begrænset pr. webhook-URL.
Hver webhook kan acceptere op til 10 godkendte anmodninger i minuttet og op til 100 godkendte anmodninger i timen. Når en af grænserne nås, returnerer HansaChat 429 resource_exhausted.
Kontakt os, hvis De ønsker at få hævet rate-grænsen.
Payload-grænserne håndhæves separat: maksimal brødtekststørrelse er 1 MB, blocks accepterer op til 50 elementer, attachments accepterer op til 100 elementer, og payloaden skal indeholde læsbar tekst.
Idempotens
Tilføj en Idempotency-Key-header, når Deres system muligvis sender den samme hændelse igen:
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"}'
Hvis HansaChat modtager den samme idempotensnøgle igen for den samme webhook, returneres 200 ok uden at der oprettes en duplikeret besked.
Svar
Vellykkede anmodninger returnerer:
ok
Almindelige fejl:
| Status | Svarbrødtekst | Betydning |
|---|---|---|
| 400 | invalid_payload |
JSON-brødteksten kunne ikke parses. |
| 400 | invalid_blocks |
Anmodningen indeholder mere end 50 blokke. |
| 400 | too_many_attachments |
Anmodningen indeholder mere end 100 vedhæftninger. |
| 400 | no_text |
Payloaden har ingen læsbar tekst. |
| 429 | resource_exhausted |
Webhooken overskred 10 anmodninger i minuttet eller 100 anmodninger i timen. |
| 404 | no_active_hooks |
Workspacet, webhooken, den hemmelige nøgle eller den aktive tilstand er ugyldig. |
| 410 | channel_is_archived |
Målkanalen er arkiveret. |
| 503 | temporarily_unavailable |
HansaChat kan ikke behandle beskeden lige nu. Prøv igen senere med den samme Idempotency-Key. |
Sikkerhedstips
- Behandl webhook-URL'er som adgangskoder.
- Gem URL'erne i Deres eksterne værktøjs secret manager.
- Rotér URL'en, hvis den er blevet eksponeret eller mistet.
- Deaktivér ubrugte webhooks.
- Brug én dedikeret webhook pr. eksternt system, så adgangen kan tilbagekaldes på en ren måde.