Zum Inhalt springen

Webhook

Mit dem Webhook-Modul können Crowdin Apps auf bestimmte Ereignisse reagieren und Aktionen auslösen, wenn diese Ereignisse eintreten. Dieses Modul eignet sich zur Automatisierung von Workflows (z. B. in Kombination mit dem Workflow-Step-Type-Modul), zur Synchronisierung externer Systeme oder zum Protokollieren von Projektaktivitäten.

manifest.json
{
"modules": {
"webhook": [
{
"key": "webhook-key-module-key",
"url": "/webhooks",
"events": [
"project.translated",
"project.approved"
],
"environments": [
"crowdin",
"crowdin-enterprise"
]
}
]
}
}
key

Typ: string

Erforderlich: ja

Beschreibung: Kennung des Moduls innerhalb der Crowdin-App.

url

Typ: string

Erforderlich: ja

Beschreibung: Die relative URL des Webhook-Handlers in der App.

events

Typ: array

Erforderlich: ja

Beschreibung: Eine Liste von Ereignissen, die den Webhook auslösen. Siehe die Liste der verfügbaren Webhook-Ereignisse.

environments

Typ: string

Zulässige Werte: crowdin, crowdin-enterprise

Beschreibung: Menge der Umgebungen, in denen ein Modul installiert werden kann.
Dieser Parameter wird für produktübergreifende Anwendungen benötigt.

Alle Webhooks werden über eine HTTP-POST-Anfrage mit einer JSON-formatierten Payload ausgelöst. Die Anfrage kann ein einzelnes Ereignis oder mehrere Ereignisse enthalten (die immer im Bulk-Modus übermittelt werden).

Weitere Informationen findest du unter Beispiele für Webhook-Payloads.

Wenn ein Ereignis eintritt, sendet Crowdin eine HTTP-POST-Anfrage an deinen Webhook-Endpunkt, einschließlich der erforderlichen Header für Authentifizierung und Sicherheit. Unten findest du ein Beispiel für eine solche Anfrage.

HTTP-Anfrage:

POST /webhooks HTTP/1.1
User-Agent: Crowdin-Webhook
Content-Type: application/json
X-Crowdin-Id: <organization-id>
X-Crowdin-Domain: <organization-domain>
X-Crowdin-Signature: <signature>
X-Module-Key: <your-module-key>

Anfragetext:

{
"events": [
{
"event": "project.translated",
"project": {
"id": "777",
// ...
},
"targetLanguage": {
"id": "uk",
// ...
}
},
{
"event": "project.approved",
"project": {
"id": "777",
// ...
},
"targetLanguage": {
"id": "uk",
// ...
}
}
]
}

Während der App-Installation wird deiner App ein eindeutiges Geheimnis namens app_secret bereitgestellt. Dieses Geheimnis wird verwendet, um die Webhook-Signatur mithilfe des HMAC-Algorithmus mit SHA-256 zu erzeugen.

Crowdin erwartet, dass deine App mit einem erfolgreichen HTTP-Statuscode (d. h. einem beliebigen 2XX-Status) antwortet, um den Empfang der Webhook-Payload zu bestätigen.

War diese Seite hilfreich?