Chat Messages
Ingests individual chat messages from the Anthropic Compliance API for visibility into Claude conversation activity across your organization.
Sync Type: Incremental
Requirements
Before configuring this input, you need to:
-
Create a Compliance Access Key — Anthropic docs.
- Log in to your Anthropic account
- Navigate to the Data Management Settings
- Create a new Compliance Access Key
- Ensure the key has the
read:compliance_user_datascope - Copy and securely store the generated key
-
Identify Organization IDs (optional):
- You can filter chats by specific Anthropic organization IDs
- If not specified, chats for all accessible organizations will be fetched
- Organization IDs are in the format:
org_xxxxxxxx
-
Identify Project IDs (optional):
- You can filter chats by specific Anthropic project IDs
- If not specified, chats for all projects will be fetched
- Project IDs are in the format:
proj_xxxxxxxx
-
Identify User IDs (optional):
- You can filter chats by specific Anthropic user IDs
- If not specified, all users are automatically discovered across your organizations
- User IDs are in the format:
user_xxxxxxxx
Details
Monad keeps track of the state of the input via a timestamp using the updated_at.gt filter parameter on the Compliance API. The timestamp of the last successful run is used to retrieve only chats that have been created or updated since the previous sync. Monad generates a timestamp when initiating the sync and will only save it if no errors occur during the sync.
Each message is emitted as its own record with chat and user context attached (chat ID, chat name, user, organization, and project). This ensures new messages added to existing chats are captured on subsequent runs and avoids record size limits from large chat histories.
If no User IDs are configured, the input automatically discovers all users across your accessible organizations by iterating through the organizations and users endpoints.
For the first run, if no backfill start time is specified, the input defaults to the current time. All subsequent syncs will be incremental from that point forward.
Configuration
The following configuration defines the input parameters. Each field's specifications, such as type, requirements, and descriptions, are detailed below.
Settings
| Setting | Type | Required | Description |
|---|---|---|---|
| Backfill Start Time | string | No | Date to start fetching data from (ISO 8601 format). If not specified, defaults to the current time on the first sync. All subsequent syncs will be incremental. |
| Organization IDs | string[] | No | List of Anthropic organization IDs to filter chats by. If not specified, chats for all organizations accessible by the provided access key will be fetched. |
| Project IDs | string[] | No | List of Anthropic project IDs to filter chats by. If not specified, chats for all projects will be fetched. |
| User IDs | string[] | No | List of Anthropic user IDs to filter chats by. If not specified, all users are automatically discovered across accessible organizations. |
Secrets
| Secret | Type | Required | Description |
|---|---|---|---|
| Compliance Access Key | string | Yes | Compliance Access Key with read:compliance_user_data scope. Created in Data Management Settings. |
Rate Limits
| Scope | Limit | Window | Notes |
|---|---|---|---|
| API Requests | 4 | Per second | Requests per second across all endpoints |
| Page Size | 1,000 | Per request | Maximum records returned per page |
Headers: x-api-key
Source: Anthropic Compliance API Documentation
Related Articles
Sample Record
{
"id": "claude_chat_msg_123456",
"role": "user",
"created_at": "2026-04-08T14:30:45.123Z",
"content": [
{
"type": "text",
"text": "Can you help me review this pull request for security issues?"
}
],
"files": null,
"artifacts": null,
"chat_id": "claude_chat_789012",
"chat_name": "PR Security Review",
"chat_user": {
"id": "user_abcdefgh",
"email_address": "user@example.com"
},
"organization_id": "org_12345678",
"organization_uuid": "550e8400-e29b-41d4-a716-446655440000",
"project_id": ""
}