Skip to main content
Diese Muster richten sich an Entwickler, die KI-Agenten-Tools (OpenAI Function Calling, Claude Tools, LangChain usw.) auf der Public API aufbauen. Jeder Workflow braucht höchstens zwei Listen-Aufrufe, bevor du ins Detail gehst. Voraussetzung: API-Schlüssel mit tickets:read. Siehe Authentifizierung.

Kern-Tool-Set

Die meisten Agent-Integrationen exponieren vier Tools: Schemas: Scalar.

Use Case 1 — „Zeig offene Tickets der letzten 7 Tage“

Gespeicherte Ansichten kodieren Filter. Der Agent listet Views, wählt eine passende (offen + recent), listet Tickets. Schritte:
  1. GET /public/v1/viewsname und filters nach passender Ansicht durchsuchen.
  2. GET /public/v1/tickets?view_id=<uuid>&limit=40 — Ticket-Zusammenfassungen ans LLM oder den Nutzer.
Gibt es keine passende Ansicht: Nutzer bitten, eine in Posteingang-Ansichten anzulegen — v1 kann keine Ad-hoc-Datums-/Status-Filter.

Use Case 2 — „Fasse Ticket #1234 zusammen“

Schritte:
  1. GET /public/v1/tickets/1234/messages?order=asc&limit=100 — chronologischer Thread.
  2. messages[].text konkatenieren (max. 10.000 Zeichen pro Nachricht) und ans eigene LLM-Summarization geben.
Optional vorher: GET /public/v1/tickets/1234 für Betreff, Status, Kontakt, Tags. Interne Notizen, Entwürfe und System-Events sind in Message-Responses ausgeschlossen.

Use Case 3 — „Wie viele offene Tickets in meiner Retouren-Ansicht?“

Nicht alle Tickets paginieren zum Zählen. Nutze count der Ansicht: Schritte:
  1. GET /public/v1/views — Ansicht mit name „Retouren“ (o. ä.) finden.
  2. count aus dem View-Objekt lesen.
count kann einige Sekunden hinter dem Posteingang liegen (Read-Replica).

OpenAI Tool-Definitionen (Beispiel)

Handler-Mapping:

Claude Tool-Definitionen (Beispiel)

Gleiche HTTP-Handler wie oben. Claude-tool_result sollte den API-Body unverändert durchreichen (success, data, pagination).

Tipps für Agent-Design

  • View-Namen in Tool 1 auflösen — Modell wählt view_id aus list_inbox_views, statt UUIDs zu hardcoden.
  • Ticketnummern nutzerseitig — URLs verwenden #1234 / ticket_number, nicht UUIDs.
  • Lange Threads paginieren — bei has_more: true pagination.next_cursor folgen.
  • 404 sinnvoll behandelnVIEW_NOT_FOUND oft fehlende Agent-Sichtbarkeit; Service-Schlüssel oder andere Ansicht vorschlagen.
  • Rate Limits beachten — View-Listen cachen; nicht jeden Turn neu laden.

Verwandt