• Nachrichten
  • Managed Agents
  • Admin
Search...
⌘K
Organisation
Admin APIWorkspaces
Authentifizierung
ÜbersichtWorkload Identity FederationWIF-Referenz
Monitoring
Usage and Cost APIRate Limits APIClaude Code Analytics API
Daten & Compliance
DatenresidenzAPI und Datenaufbewahrung
Compliance API
ÜbersichtZugriff erhaltenAktivitäts-FeedChats, Dateien und ProjekteOrganisationen, Benutzer, Rollen und GruppenIntegration entwerfenFehlerFAQ
Log in
Integration entwerfen
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Admin/Compliance API

Gestalte deine Compliance-Integration

Wähle zwischen Polling und cursor-gesteuertem Konsum des Activity Feeds, korreliere Compliance API-Ereignisse mit deinem SIEM und plane die Datenaufbewahrung.

Die Compliance API wird auf Anfrage aktiviert. Claude Enterprise-Organisationen haben Zugriff auf die vollständige API; Claude Console-Organisationen haben nur Zugriff auf den Activity Feed. Siehe Zugriff auf die Compliance API erhalten.

Erforderlicher Scope: read:compliance_activities auf dem Compliance Access Key oder Admin API-Key.

Eine produktionsreife Compliance API-Integration trifft drei Designentscheidungen: wie sie den Activity Feed konsumiert, wie ihre Ausgabe mit deinem „security information and event management" (Sicherheitsinformations- und Ereignismanagement), oder SIEM, korreliert und wo langfristige Kopien von Aktivitäten und Inhalten gespeichert werden. Diese Entscheidungen sind unabhängig von den Endpunkten selbst; diese Seite hilft dir, die Kompromisse abzuwägen.

Diese Seite setzt voraus, dass du Den Activity Feed abfragen gelesen hast, wo die Parameter und der Paginierungsvertrag definiert sind, auf die hier durchgehend verwiesen wird, sowie Chats, Dateien und Projekte abrufen und löschen, wo die Content-Endpunkte und die deleted_at-Semantik definiert sind, auf die in Content-Aufbewahrung planen verwiesen wird.

Wähle ein Feed-Konsummuster

Der Activity Feed unterstützt zwei Konsummuster: periodisches „window polling" (Zeitfenster-Polling), begrenzt durch created_at.gte und created_at.lt, sowie cursor-gesteuerte inkrementelle Lesevorgänge, die einen Cursor aus einer Antwort persistieren und ihn bei der nächsten Anfrage übergeben. Beide liefern identische Activity-Objekte zurück; der Unterschied liegt im Zustand, den dein Client zwischen den Aufrufen persistiert.

Beide Muster teilen diese Einschränkungen:

  • Aktivitäten sind innerhalb von 1 Minute nach ihrem Auftreten abfragbar und werden 6 Jahre lang aufbewahrt.
  • Das maximale limit pro Seite beträgt 5.000.
  • Cursor-Werte sind opake Strings, die du nicht parsen darfst.
  • Anfragen sind auf 600 pro Minute pro übergeordneter Organisation begrenzt, geteilt über alle Keys, alle verknüpften Organisationen und alle /v1/compliance/*-Endpunkte; siehe 429 Too Many Requests für die Antwort-Header und den Retry-Vertrag.
MusterWähle dies, wenn
Zeitfenster-PollingDeine Pipeline nach einem festen Zeitplan läuft, du zustandslose Worker bevorzugst und du das erneute Abspielen oder Überlappen von Zeitfenstern tolerieren kannst
Cursor-gesteuerte inkrementelle LesevorgängeDu die geringste Latenz zwischen dem Auftreten einer Aktivität und deren Aufnahme in deine Pipeline möchtest, du das erneute Lesen bereits geleerter Seiten vermeiden möchtest und du einen dauerhaften Ort hast, um einen Cursor zwischen den Läufen zu persistieren

Zeitfenster-Polling

Setze created_at.lt mindestens 1 Minute in die Vergangenheit, damit jede Aktivität im Fenster bereits abfragbar ist. Verwende created_at.gte für die untere Grenze und created_at.lt für die obere Grenze, sodass aufeinanderfolgende Fenster lückenlos und ohne Überlappung aneinandergereiht werden; verwende den lt-Wert des vorherigen Fensters als gte des nächsten Fensters.

cURL
curl --fail-with-body -sS -G \
  "https://api.anthropic.com/v1/compliance/activities" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --data-urlencode "created_at.gte=2026-04-20T07:00:00Z" \
  --data-urlencode "created_at.lt=2026-04-20T08:00:00Z" \
  --data-urlencode "limit=5000"

Wenn die Antwort has_more: true enthält, umfasst das Fenster mehr als eine Seite an Aktivitäten. Paginiere entweder innerhalb des Fensters, indem du die last_id der Antwort als after_id bei der nächsten Anfrage übergibst (und stoppst, wenn has_more false ist), oder wähle ein kleineres Zeitfenster. Siehe Ergebnisse paginieren für den vollständigen Vertrag.

Selbst bei sauberer Aneinanderreihung erscheint eine Aktivität, die erst indiziert wird, nachdem ihr Fenster geschlossen wurde, nie in einem späteren Fenster. Dedupliziere anhand der Aktivitäts-id und erweitere entweder jedes neue Fenster so, dass es das vorherige um einige Minuten überlappt, oder führe einen periodischen Abgleichslauf durch, der ein älteres Fenster erneut abfragt.

Eine created_at.lt-Grenze, die zu nah an der Gegenwart liegt, verwirft spät indizierte Aktivitäten stillschweigend und dauerhaft: Sobald created_at.gte über sie hinaus vorrückt, kann kein späteres Fenster sie wiederherstellen. Behandle die 1-Minuten-Abfragbarkeitsangabe als dokumentierte Indizierungsverzögerung, nicht als weiche Empfehlung.

Cursor-gesteuerte inkrementelle Lesevorgänge

cURL
first_id="activity_01XyDMpzjS89pFZXqSFUBDr6"  # first_id from a previous response

curl --fail-with-body -sS -G \
  "https://api.anthropic.com/v1/compliance/activities" \
  --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" \
  --data-urlencode "limit=5000" \
  --data-urlencode "before_id=$first_id"

Paginiere durch, bis has_more false ist, persistiere dann first_id aus der letzten Antwort und übergib sie unverändert als before_id beim nächsten Lauf, um Aktivitäten abzurufen, die neuer sind als der gespeicherte Cursor. Um für einen Backfill in die entgegengesetzte Richtung zu laufen, persistiere stattdessen last_id und übergib sie als after_id. Für die vollständige Referenz zu Cursor vs. Page-Token und die Retry-Semantik siehe Ergebnisse paginieren.

Eine produktionsreife Catch-up-Schleife ruft Aktivitäten ab, die seit deinem letzten Poll aufgezeichnet wurden, indem sie die Iteration über has_more und first_id steuert:

cursor = stored_cursor
loop:
  page = GET /v1/compliance/activities?before_id={cursor}&limit=5000
  store(page.data)
  if page.first_id is not null:
    cursor = page.first_id
  if not page.has_more: break
persist(cursor)

Cursor überleben die Key-Rotation; siehe Keys verwalten und rotieren.

Jede Seite grenzt an den Cursor an, den du übergibst: Die Schleife läuft vorwärts in Richtung Gegenwart, eine Seite nach der anderen. Behandle eine einzelne Antwort nicht als aufgeholt, solange has_more true ist. Persistiere den Cursor erst, nachdem has_more false ist; die nicht abgerufenen Seiten sind die neueren zwischen der first_id dieser Antwort und der Gegenwart, und sie bleiben ungelesen, bis du die Schleife beendest oder erneut ausführst.

Korreliere mit deinem SIEM

Jede Activity enthält Felder, die du mit Ereignissen verknüpfen kannst, die bereits in deinem SIEM (Splunk, Datadog, Microsoft Sentinel, Cribl oder ähnlichen) vorhanden sind:

Compliance API-FeldJoin-Ziel
actor.user_idDie stabile Benutzerkennung deines Identity Providers
actor.email_addressVerzeichnis-E-Mail, wenn keine stabile ID verfügbar ist
actor.ip_addressNetzwerk-, VPN- und Endpunkt-Logs
created_atZeitfenster-Korrelation über beliebige Quellen hinweg

actor.user_id und actor.email_address sind vorhanden, wenn actor.type den Wert user_actor hat; prüfe den Diskriminator, bevor du sie ausliest. user_id ist eine stabile, opake Kennung für das Benutzerkonto: Sie ist über alle Compliance API-Endpunkte und Aktivitäts-Payloads hinweg konsistent und ändert sich nicht, wenn sich die E-Mail oder der Anzeigename des Benutzers ändert. Verwende user_id, nicht email_address, als primären Join-Key.

Aufrufe der Compliance API selbst erzeugen compliance_api_accessed-Aktivitäten. Nimm diese zusammen mit anderen Aktivitätstypen auf, damit dein SIEM aufzeichnet, wer Compliance-Daten abgefragt hat und wann. Übergib activity_types[]=compliance_api_accessed, um die Abfrage einzugrenzen, und lies dann in deinem Client actor.api_key_id aus jeder Aktivität aus, deren actor.type den Wert api_actor hat, um den Zugriff einem bestimmten Compliance Access Key oder Admin API-Key zuzuordnen.

Content-Aufbewahrung planen

Drei Aufbewahrungshorizonte bestimmen, was du später abrufen kannst:

DatenAufbewahrt fürGesteuert durch
Activity Feed-Einträge6 JahreAnthropic
Chat-, Datei- und ProjektinhalteDie claude.ai-Aufbewahrungsrichtlinie deiner OrganisationDeine Organisation
Über die Compliance API hart gelöschte InhalteNicht aufbewahrt; Löschung ist sofort und dauerhaftDer Aufrufer des DELETE-Endpunkts

Wie der Rest der Claude Platform mit Aufbewahrung umgeht, findest du unter API und Datenaufbewahrung.

Entscheide wie folgt zwischen Export-und-Archivierung und bedarfsgesteuertem API-Abruf:

  • Wenn dein Legal-Hold- oder Audit-Horizont für Aktivitätsmetadaten 6 Jahre überschreitet, exportiere Activity Feed-Seiten in dein eigenes Archiv, während du sie aufnimmst.
  • Wenn deine Content-Aufbewahrungsrichtlinie kürzer ist als dein eDiscovery-Horizont, exportiere Chat- und Dateiinhalte, bevor das Aufbewahrungsfenster abläuft; die Compliance API kann keine Inhalte zurückgeben, die durch die Aufbewahrung bereits entfernt wurden.
  • Wenn ein Workflow möglicherweise einen Compliance API-Hard-Delete auslöst (zum Beispiel DLP-Durchsetzung), rufe den Zielinhalt zuerst ab und archiviere ihn. Es gibt kein Wiederherstellungsfenster nach einem Hard-Delete; Soft-Deletes aus claude.ai bleiben mit gesetztem deleted_at abrufbar, Compliance API-Löschungen jedoch nicht.

In allen anderen Fällen verlasse dich auf den direkten API-Abruf und vermeide es, eine parallele Kopie zu pflegen.

Zustellgarantien und Vollständigkeit

Behandle den Activity Feed als at-least-once (mindestens einmal): Eine korrekt paginierte Traversierung liefert jede Aktivität mindestens einmal zurück, aber ein Retry nach einem Teilfehler kann Aktivitäten erneut liefern, die du bereits gespeichert hast. Dedupliziere anhand des Aktivitäts-id-Felds.

Die List-Endpunkte geben kein total_count-Feld und keine Prüfsumme zurück. Um zu bestätigen, dass ein Exportlauf vollständig ist, protokolliere:

  • Den Start-Cursor und die abschließende last_id.
  • Die Anzahl der exportierten Datensätze.
  • Den Zeitstempel des Laufs und die request-id der letzten Seite.

Die Content-Endpunkte (Chats, Dateien, Projekte und Projektanhänge) liefern ausschließlich claude.ai-Daten; der Activity Feed zeigt administrative und Ressourcen-Ereignisse organisationsweit an. Die Compliance API umfasst nicht:

  • Prompt-Text oder Modellantworten aus Claude Console- oder Claude API-Workloads.
  • Inhalte, die durch die Aufbewahrungsrichtlinie deiner Organisation entfernt wurden.
  • Inhalte, die über die Compliance API hart gelöscht wurden.

Siehe die Compliance API FAQ für weitere Informationen darüber, was die Compliance API erfasst und was nicht.

Für die Chain of Custody speichere die exportierten Datensätze mit Herkunftsmetadaten: Quell-Endpunkt, Abfrageparameter, Zeitstempel des Laufs und einen Content-Hash jedes Datensatzes.

Nächste Schritte

Den Activity Feed abfragen

Filterparameter, Paginierung und das Activity-Objektschema.

Chats, Dateien und Projekte abrufen und löschen

Die Content- und Hard-Delete-Endpunkte.

Was this page helpful?

  • Wähle ein Feed-Konsummuster
  • Zeitfenster-Polling
  • Cursor-gesteuerte inkrementelle Lesevorgänge
  • Korreliere mit deinem SIEM
  • Content-Aufbewahrung planen
  • Zustellgarantien und Vollständigkeit
  • Nächste Schritte