Zum Inhalt springen

API-Referenz

Alle Endpunkte werden relativ zur Basis-URL Ihrer Instanz aufgerufen — https://app.nara.de oder https://your-instance.nara.de. Authentifizieren Sie jede Anfrage wie unter API-Authentifizierung beschrieben; die folgenden Beispiele verwenden ein Server-Token. Schreibende Anfragen erfordern Content-Type: application/json.

MethodePfadBeschreibung
GET/api/agent/runAusführbare Workflow-Agents auflisten
POST/api/agent/runEinen Workflow-Agent per Name ausführen

Über die API lassen sich nur Workflow-Agents ausführen; Chat-Agents sind auf diesem Weg nicht ausführbar. Agents, deren Tools eine WEBAPP-Ausführung erfordern, können ebenfalls nicht über die API laufen.

Der Editor jedes Agents enthält außerdem den Dialog Call this agent via API, der den exakten Endpunkt, die Header und fertige Codebeispiele für diesen Agent anzeigt.

Terminal-Fenster
curl https://app.nara.de/api/agent/run \
-H "Authorization: Bearer nara_sa_..."

Body: agentName (der interne Name des Agents) und args (ein Objekt gemäß dem Eingabe-Datentyp des Agents).

Terminal-Fenster
curl -X POST https://app.nara.de/api/agent/run \
-H "Authorization: Bearer nara_sa_..." \
-H "Content-Type: application/json" \
-d '{ "agentName": "invoice-classifier", "args": { "invoiceId": "INV-1042" } }'
MethodePfadBeschreibung
GET/api/memory/typesMemory-Typen auflisten
POST/api/memory/typesMemory-Typ erstellen
PUT/api/memory/types/{id}Memory-Typ aktualisieren
DELETE/api/memory/types/{id}Memory-Typ löschen
Terminal-Fenster
curl https://app.nara.de/api/memory/types \
-H "Authorization: Bearer nara_sa_..."
Terminal-Fenster
curl -X POST https://app.nara.de/api/memory/types \
-H "Authorization: Bearer nara_sa_..." \
-H "Content-Type: application/json" \
-d '{
"name": "customer",
"displayName": "Customer",
"schema": {
"type": "object",
"properties": {
"name": { "type": "string" },
"tier": { "type": "string" }
}
}
}'
Terminal-Fenster
curl -X DELETE https://app.nara.de/api/memory/types/{id} \
-H "Authorization: Bearer nara_sa_..."
MethodePfadBeschreibung
GET/api/memory/objectsMemory-Objekte auflisten
POST/api/memory/objectsMemory-Objekt erstellen
PATCH/api/memory/objects/{id}Memory-Objekt aktualisieren
DELETE/api/memory/objects/{id}Memory-Objekt löschen
ParameterBeschreibung
typeIdNach Memory-Typ-ID filtern
typeNach technischem Typnamen filtern
keyNach Objektschlüssel filtern
pageSeitennummer
pageSizeErgebnisse pro Seite
Terminal-Fenster
curl "https://app.nara.de/api/memory/objects?type=customer&page=1&pageSize=20" \
-H "Authorization: Bearer nara_sa_..."
Terminal-Fenster
curl -X POST https://app.nara.de/api/memory/objects \
-H "Authorization: Bearer nara_sa_..." \
-H "Content-Type: application/json" \
-d '{ "type": "customer", "contents": { "name": "Acme GmbH", "tier": "gold" } }'
Terminal-Fenster
curl -X PATCH https://app.nara.de/api/memory/objects/{id} \
-H "Authorization: Bearer nara_sa_..." \
-H "Content-Type: application/json" \
-d '{ "contents": { "tier": "platinum" } }'
MethodePfadBeschreibung
GET/api/rolesRollen auflisten
POST/api/rolesBenutzerdefinierte Rolle erstellen
GET/api/roles/{id}Rolle abrufen
PUT/api/roles/{id}Rolle aktualisieren
DELETE/api/roles/{id}Benutzerdefinierte Rolle löschen
POST/api/roles/{id}/assignRolle einem Principal zuweisen
POST/api/roles/{id}/unassignRolle einem Principal entziehen
GET/api/roles/{id}/principalsDer Rolle zugewiesene Principals auflisten

Die integrierten Rollen Admin und Member können weder gelöscht noch umbenannt werden.

Terminal-Fenster
curl -X POST https://app.nara.de/api/roles \
-H "Authorization: Bearer nara_sa_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Support Lead",
"description": "Manages tickets and support access",
"permissions": ["ticket.view", "ticket.update", "supportAccess.manage"]
}'
Terminal-Fenster
curl -X POST https://app.nara.de/api/roles/{id}/assign \
-H "Authorization: Bearer nara_sa_..." \
-H "Content-Type: application/json" \
-d '{ "principalType": "USER", "principalId": "<user-id>" }'
Terminal-Fenster
curl https://app.nara.de/api/roles/{id}/principals \
-H "Authorization: Bearer nara_sa_..."

Alle Endpunkte verwenden die gemeinsamen Statuscodes aus der API-Authentifizierung: 400 ungültiger Body, 401 Authentifizierungsfehler, 402 unzureichende Credits, 403 Berechtigung verweigert, 404 nicht gefunden, 500 Serverfehler.