Nutzt du unsere API über ein Dedicated Deployment? Ersetze einfach api.langdock.com mit der Basis-URL deines Deployments: <deployment-url>/api/public
Aktualisiert einen bestehenden Trigger in einer Integration. Diese Aktion ersetzt die Trigger-Konfiguration mit den angegebenen Werten.
Erforderliche Scopes
Dieser Endpoint erfordert den INTEGRATION_API Scope.
Pfad-Parameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|
integrationId | string | Ja | UUID der Integration |
triggerId | string | Ja | UUID des zu aktualisierenden Triggers |
Request Body
| Parameter | Typ | Erforderlich | Beschreibung |
|---|
name | string | Ja | Trigger-Name (max. 100 Zeichen) |
description | string | Nein | Trigger-Beschreibung (max. 90 Zeichen) |
pollingCode | string | Nein | JavaScript-Code zum Polling von neuen Events (max. 1.000 Zeichen) |
inputFields | array | Nein | Eingabefelder zur Konfiguration des Triggers |
Das vollständige Eingabefeld-Schema findest du unter Trigger erstellen.
Beispiel
const axios = require("axios");
async function updateTrigger(integrationId, triggerId) {
const response = await axios.put(
`https://api.langdock.com/integrations/v1/${integrationId}/triggers/${triggerId}`,
{
name: "New Issue Created v2",
description: "Updated trigger with additional filtering options",
pollingCode: `
const url = new URL('https://api.example.com/v2/issues');
url.searchParams.set('since', lastPollTime);
url.searchParams.set('project', inputs.projectId);
const response = await fetch(url, {
headers: {
'Authorization': 'Bearer ' + secrets.API_TOKEN
}
});
return await response.json();
`,
inputFields: [
{
label: "Project ID",
type: "TEXT",
required: true
},
{
label: "Status Filter",
type: "SELECT",
options: [
{ label: "All", value: "all" },
{ label: "Open", value: "open" },
{ label: "Closed", value: "closed" }
],
required: false
}
]
},
{
headers: {
Authorization: "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}
}
);
console.log("Updated trigger:", response.data.trigger);
}
updateTrigger("550e8400-e29b-41d4-a716-446655440000", "660e8400-e29b-41d4-a716-446655440001");
Erfolgreiche Antwort (200 OK)
{
trigger: {
id: string;
name: string;
slug: string;
description: string;
type: string;
pollingCode: string | null;
inputFields: Array<{
slug: string;
label: string;
type: string;
description: string;
placeholder: string | null;
required: boolean;
options: Array<{label: string, value: string}> | null;
allowMultiSelect: boolean | null;
}>;
};
}
Fehlerbehandlung
| Status Code | Beschreibung |
|---|
| 400 | Ungültiger Request Body oder IDs |
| 401 | Ungültiger oder fehlender API-Schlüssel |
| 403 | Kein Zugriff auf diese Integration |
| 404 | Integration oder Trigger nicht gefunden |
| 429 | Rate Limit überschritten |
Langdock blockiert bewusst Browser-basierte Anfragen, um deinen API-Schlüssel zu schützen und die Sicherheit deiner Anwendungen zu gewährleisten. Weitere Informationen findest du in unserem Guide zu Best Practices für API-Schlüssel.