Zum Hauptinhalt springen
PATCH
/
agent
/
v1
/
update
Updates an existing agent
curl --request PATCH \
  --url https://api.langdock.com/agent/v1/update \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "agentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "name": "<string>",
  "instructions": "<string>",
  "description": "<string>",
  "temperature": 0.5,
  "model": "<string>",
  "capabilities": {
    "webSearch": true,
    "dataAnalyst": true,
    "imageGeneration": true
  },
  "actions": [
    "<unknown>"
  ],
  "vectorDb": [
    "<unknown>"
  ],
  "knowledgeFolderIds": [
    "<string>"
  ],
  "attachmentIds": [
    "3c90c3cc-0d44-4b50-8888-8dd25736052a"
  ]
}
'

Documentation Index

Fetch the complete documentation index at: https://docs.langdock.com/llms.txt

Use this file to discover all available pages before exploring further.

⚠️ Du nutzt unsere API in einem Dedicated Deployment? Ersetze einfach api.langdock.com durch die Base URL deines Deployments: <deployment-url>/api/public
Dies ist die neue Agents API mit nativer Vercel AI SDK Kompatibilität. Wenn du die veraltete Assistants API verwendest, siehe den Migrations-Guide.
Aktualisiert einen vorhandenen Agenten in deinem Workspace. Nur die von dir angegebenen Felder werden aktualisiert, was partielle Updates ermöglicht, ohne andere Konfigurationen zu beeinflussen.
Änderungen werden nur auf den Entwurf des Agenten angewendet. Die aktive (veröffentlichte) Version bleibt unverändert, bis der Agent in der Langdock-Oberfläche veröffentlicht wird. Die Antwort dieses Endpoints gibt den Entwurf zurück.
Erfordert einen API-Schlüssel mit dem AGENT_API Scope und Zugriff auf den Agenten, den du aktualisieren möchtest.

Aktualisierungsverhalten

Der Update-Endpunkt verwendet partielle Update-Semantik mit spezifischem Verhalten für verschiedene Feldtypen:
  • Partielle Updates - Nur in der Anfrage enthaltene Felder werden aktualisiert; ausgelassene Felder bleiben unverändert
  • Array-Felder ersetzen - actions, inputFields, conversationStarters und attachments ersetzen bei Angabe vollständig die vorhandenen Werte
  • Leere Arrays - Sende [] um alle Actions/Felder/Anhänge zu entfernen
  • Null-Behandlung - Sende null für emoji um es zu löschen. Für description und instruction sende einen leeren String "" zum Löschen
  • Unveränderte Felder - Felder, die nicht in der Anfrage enthalten sind, behalten ihre aktuellen Werte

Anfrageparameter

Setze einen der folgenden Parameter, um die aktuellen Einstellungen des Agenten zu überschreiben. Felder, die du weglässt, bleiben unverändert. Nur agentId ist erforderlich.
ParameterTypErforderlichBeschreibung
agentIdstringJaUUID des zu aktualisierenden Agenten
namestringNeinName des Agenten (1-80 Zeichen)
descriptionstringNeinBeschreibung (max. 500 Zeichen, "" zum Löschen)
emojistringNeinEmoji-Icon (max. 16 Zeichen, null zum Löschen)
instructionstringNeinSystemanweisung (max. 40000 Zeichen, "" zum Löschen)
modelstringNeinModell-ID (Deployment-Name aus der Models API)
creativitynumberNeinTemperatur zwischen 0 und 1
conversationStartersstring[]NeinVorgeschlagene Prompts, max. 20, je 1-255 Zeichen (ersetzt vorhandene)
actionsarrayNeinActions (ersetzt vorhandene)
inputFieldsarrayNeinFormularfelder (ersetzt vorhandene)
attachmentsstring[]NeinAnhang-UUIDs (ersetzt vorhandene)
webSearchbooleanNeinWebsuche aktivieren
imageGenerationbooleanNeinBildgenerierung aktivieren
dataAnalystbooleanNeinCode-Interpreter aktivieren
inputTypestringNeinEingabetyp: “PROMPT” oder “STRUCTURED”
canvasbooleanNeinCanvas aktivieren
extendedThinkingbooleanNeinExtended Thinking aktivieren
Array-Felder (actions, inputFields, conversationStarters, attachments) werden vollständig ersetzt, nicht zusammengeführt. Gib immer das vollständige gewünschte Array an, einschließlich aller vorhandenen Elemente, die du behalten möchtest.

Actions-Konfiguration

Jede Action im actions Array sollte enthalten:
  • actionId (erforderlich) - UUID der Action aus einer aktivierten Integration
  • requiresConfirmation (optional) - Ob vor der Ausführung eine Benutzerbestätigung erforderlich ist

Eingabefelder-Konfiguration

Für die inputFields Array-Struktur, siehe die Agent Create API Dokumentation.

Beispiele

Grundlegende Eigenschaften aktualisieren

const axios = require("axios");

async function updateAgentName() {
  const response = await axios.patch(
    "https://api.langdock.com/agent/v1/update",
    {
      agentId: "550e8400-e29b-41d4-a716-446655440000",
      name: "Erweiterter Dokumentenanalyst",
      description: "Analysiert Dokumente mit erweiterten Fähigkeiten",
      creativity: 0.7
    },
    {
      headers: {
        Authorization: "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
      }
    }
  );

  console.log("Agent aktualisiert:", response.data.message);
}

Validierungsregeln

Die API wendet mehrere Validierungsregeln an:
  • Agent-Zugriff - Dein API-Schlüssel muss Zugriff auf den Agenten haben
  • Workspace-Übereinstimmung - Der Agent muss zum selben Workspace wie dein API-Schlüssel gehören
  • Modell - Falls angegeben, muss es in der Liste der aktiven Modelle deines Workspaces sein
  • Actions - Falls angegeben, müssen sie zu in deinem Workspace aktivierten Integrationen gehören
  • Anhänge - Falls angegeben, müssen sie in deinem Workspace existieren und nicht gelöscht sein
  • Name - Falls angegeben, muss zwischen 1-80 Zeichen sein
  • Beschreibung - Falls angegeben, maximal 500 Zeichen
  • Instruktion - Falls angegeben, maximal 40000 Zeichen
  • Creativity - Falls angegeben, muss zwischen 0 und 1 liegen

Antwortformat

Erfolgreiche Antwort (200 OK)

{
  status: "success";
  message: "Agent updated successfully";
  agent: {
    id: string;
    name: string;
    description: string;
    instruction: string;
    emojiIcon: string;
    model: string;
    temperature: number;
    conversationStarters: string[];
    inputType: "PROMPT" | "STRUCTURED";
    webSearchEnabled: boolean;
    imageGenerationEnabled: boolean;
    codeInterpreterEnabled: boolean;
    canvasEnabled: boolean;
    extendedThinking: boolean;
    actions: Array<{
      actionId: string;
      requiresConfirmation: boolean;
    }>;
    inputFields: Array<{
      slug: string;
      type: string;
      label: string;
      description: string;
      required: boolean;
      order: number;
      options: string[];
      fileTypes: string[] | null;
      emailDomain: string | null;
    }>;
    attachments: string[];
    createdAt: string;
    updatedAt: string;
  };
}

Fehlerbehandlung

try {
  const response = await axios.patch('https://api.langdock.com/agent/v1/update', ...);
} catch (error) {
  if (error.response) {
    switch (error.response.status) {
      case 400:
        console.error('Ungültige Parameter:', error.response.data.message);
        break;
      case 401:
        console.error('Ungültiger oder fehlender API-Schlüssel');
        break;
      case 403:
        console.error('Unzureichende Berechtigungen - kein Zugriff auf diesen Agenten');
        break;
      case 404:
        console.error('Agent nicht gefunden oder API-Schlüssel hat keinen Zugriff');
        break;
      case 429:
        console.error('Rate Limit überschritten');
        break;
      case 500:
        console.error('Server-Fehler');
        break;
    }
  }
}

Best Practices

Vorhandene Werte beibehalten: Wenn du Array-Felder wie actions oder attachments aktualisierst, füge immer vorhandene Elemente ein, die du behalten möchtest, da das gesamte Array ersetzt wird.
  1. Vor dem Update abrufen - Wenn du vorhandene Array-Werte beibehalten musst, rufe zuerst die aktuelle Agent-Konfiguration ab
  2. Inkrementelle Updates - Aktualisiere nur die Felder, die geändert werden müssen
  3. Anhänge validieren - Stelle sicher, dass Anhang-UUIDs gültig sind, bevor du sie einfügst
  4. Actions testen - Überprüfe, dass Actions zu aktivierten Integrationen gehören, bevor du aktualisierst
  5. Fehler elegant behandeln - Implementiere eine ordnungsgemäße Fehlerbehandlung für Validierungsfehler
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.

Autorisierungen

Authorization
string
header
erforderlich

API key as Bearer token. Format "Bearer YOUR_API_KEY"

Body

application/json
agentId
string<uuid>
erforderlich
name
string
erforderlich
Maximum string length: 64
instructions
string
erforderlich
Maximum string length: 16384
description
string
Maximum string length: 256
temperature
number
Erforderlicher Bereich: 0 <= x <= 1
model
string
Maximum string length: 64
capabilities
object
actions
any[]
vectorDb
any[]
knowledgeFolderIds
string[]
attachmentIds
string<uuid>[]

Array of UUID strings identifying attachments for this message

Antwort

200

Agent updated successfully