Zum Hauptinhalt springen
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

ParameterTypErforderlichBeschreibung
integrationIdstringJaUUID der Integration
triggerIdstringJaUUID des zu aktualisierenden Triggers

Request Body

ParameterTypErforderlichBeschreibung
namestringJaTrigger-Name (max. 100 Zeichen)
descriptionstringNeinTrigger-Beschreibung (max. 90 Zeichen)
pollingCodestringNeinJavaScript-Code zum Polling von neuen Events (max. 1.000 Zeichen)
inputFieldsarrayNeinEingabefelder 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");

Antwortformat

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 CodeBeschreibung
400Ungültiger Request Body oder IDs
401Ungültiger oder fehlender API-Schlüssel
403Kein Zugriff auf diese Integration
404Integration oder Trigger nicht gefunden
429Rate 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.