Activities
Returns the Compliance API Activity Feed. Activities preserves the common fields and provides Actor and EventDetails as JSON aggregates. Use a named activity view for an important event type, or CreateActivitySchema to create a typed view for another type.
View-Specific Information
Select
Use a named activity view such as AccountDeleted when a fixed activity type and flattened actor columns are more convenient.
The provider uses the Claude Compliance API to process WHERE clause conditions built with the following columns and operators. The rest of the filter is executed client-side within the provider.
The API processes ORDER BY CreatedAt ASC or DESC server-side. Unsupported ordering, grouping, and offsets are executed client-side within the provider. Without ORDER BY, the API returns newest-first. A cursor must be reused with the same order that produced it.
| Column | Supported Operators |
| Type | =, IN |
| ActorId, UserId | =, IN |
| OrganizationId, OrganizationUuid | =, IN |
| CreatedAt | >, >=, <, <= |
| AfterId, BeforeId | = |
- ORDER BY CreatedAt ASC or DESC
- LIMIT
UserId is an alias for ActorId. If both ActorId and UserId are supplied, the API merges both lists.
For incremental synchronization, combine ORDER BY CreatedAt ASC with AfterId. Because the API ingests activities asynchronously, late-arriving activities whose timestamps fall behind the cursor do not appear in results. Consumers that require at-least-once delivery should periodically query an overlapping CreatedAt range and deduplicate by Id.
SELECT Id, CreatedAt, Type, Actor, EventDetails FROM Activities WHERE Type IN ('claude_file_uploaded', 'claude_chat_created') AND CreatedAt >= '2026-01-01T00:00:00Z' LIMIT 500;
SELECT * FROM Activities WHERE OrganizationUuid = 'abcdef01-2345-6789-abcd-ef0123456789' AND ActorId = 'user_123' LIMIT 100;
SELECT Id, Type FROM Activities WHERE UserId IN ('user_123', 'user_456') LIMIT 100;
SELECT Id, CreatedAt, Type FROM Activities ORDER BY CreatedAt ASC LIMIT 100;
SELECT Id, CreatedAt, Type FROM Activities ORDER BY CreatedAt DESC LIMIT 100;
SELECT * FROM Activities WHERE AfterId = 'opaque_cursor_id' LIMIT 100;
Columns
| Name | Type | Description |
| Id [KEY] | String | The unique identifier of the activity. |
| CreatedAt | Datetime | When the activity occurred. Filterable server-side with created_at range operators. |
| OrganizationId | String | The tagged organization identifier, or null for unscoped activities. Filterable via organization_ids. |
| OrganizationUuid | String | The organization UUID, or null for unscoped activities. Filterable via organization_ids. |
| Actor | String | The complete discriminated actor object as JSON. |
| Type | String | The activity type. Filterable via activity_types. |
| EventDetails | String | The complete source activity object as JSON, including type-specific fields. |
Pseudocolumns
Pseudocolumn fields are used in the WHERE clause of SELECT statements and offer more granular control over the data returned from the data source.
| Name | Type | Description |
| ActorId | String | Filters activities by actor identifier through actor_ids. |
| UserId | String | Alias for actor_ids, matching the naming of other compliance routes. Obtain user IDs from OrganizationUsers.Id. If you supply both UserId and ActorId, the API merges the lists. |
| AfterId | String | Starts a cursor query after this opaque activity Id. |
| BeforeId | String | Starts a cursor query before this opaque activity Id. |