中文 ← MyDocs

Chats

List chats

get /v1/compliance/apps/chats

Lists chat metadata with filtering capabilities for targeted compliance review. Results are sorted chronologically (time ascending) by created_at, with ties broken by id.

Query Parameters

  • user_ids: array of string

    Filter to chats created by specific users. Required; pass 1–10 user IDs per request. Enumerate IDs via GET /v1/compliance/organizations/{org_uuid}/users.

  • after_id: optional string

    Pagination cursor for retrieving the next page of results (heading backwards in time). To paginate, pass the last_id value from the most recent response. Clients should treat this value as an opaque string and not attempt to parse or interpret its contents, as the format may change without notice.

  • before_id: optional string

    Pagination cursor for retrieving the previous page of results (heading forwards in time). To paginate, pass the first_id value from the most recent response. Clients should treat this value as an opaque string and not attempt to parse or interpret its contents, as the format may change without notice.

  • created_at: optional object { gt, gte, lt, lte }

    • gt: optional string

      Filter chats created after this time (RFC 3339 format)

    • gte: optional string

      Filter chats created at or after this time (RFC 3339 format)

    • lt: optional string

      Filter chats created before this time (RFC 3339 format)

    • lte: optional string

      Filter chats created at or before this time (RFC 3339 format)

  • limit: optional number

    Maximum results (default: 100, max: 1000)

  • organization_ids: optional array of string

    Filter by organization IDs (accepts org_... or organization UUID). Enumerate IDs via GET /v1/compliance/organizations.

  • project_ids: optional array of string

    Filter by project IDs (accepts claude_proj_...). Enumerate IDs via GET /v1/compliance/apps/projects.

  • updated_at: optional object { gt, gte, lt, lte }

    • gt: optional string

      Filter chats updated after this time (RFC 3339 format)

    • gte: optional string

      Filter chats updated at or after this time (RFC 3339 format)

    • lt: optional string

      Filter chats updated before this time (RFC 3339 format)

    • lte: optional string

      Filter chats updated at or before this time (RFC 3339 format)

Header Parameters

  • "x-api-key": optional string

Returns

  • data: array of object { id, created_at, deleted_at, 8 more }

    List of chat metadata sorted chronologically by created_at, tie break by id

    • id: string

      Chat ID

    • created_at: string

      Creation timestamp

    • deleted_at: string

      Deletion timestamp if deleted

    • href: string

      URL to view this chat in claude.ai

    • model: string

      Model selected for this chat (e.g. 'claude-opus-4-7'). May be null for legacy chats that never had a model recorded.

    • name: string

      Chat name/title

    • organization_id: string

      Organization ID this chat belongs to

    • organization_uuid: string

      Organization UUID this chat belongs to

    • project_id: string

      Project ID this chat belongs to

    • updated_at: string

      Last update timestamp

    • user: object { id, email_address }

      User information for the chat creator

      • id: string

        User identifier

      • email_address: string

        User's email address

  • first_id: string

    First chat ID in the current result set. To get the previous page, use this as before_id in your next request

  • has_more: boolean

    Whether more records exist beyond the current result set

  • last_id: string

    Last chat ID in the current result set. To get the next page, use this as after_id in your next request

Example

curl https://api.anthropic.com/v1/compliance/apps/chats \
    -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"

Response

{
  "data": [
    {
      "id": "claude_chat_abc123",
      "name": "Product Requirements Discussion",
      "created_at": "2025-06-07T08:09:10Z",
      "updated_at": "2025-06-07T09:10:11Z",
      "organization_id": "org_abc123",
      "organization_uuid": "abcdef0123-4567-89ab-cdef-0123456789ab",
      "project_id": "claude_proj_xyz789",
      "model": "claude-opus-4-7",
      "user": {
        "id": "user_xyz456",
        "email_address": "user@example.com"
      },
      "href": "https://claude.ai/chat/abcdef01-2345-6789-abcd-ef0123456789"
    }
  ],
  "has_more": false,
  "first_id": "claude_chat_abc123",
  "last_id": "claude_chat_abc123"
}

Delete chat

delete /v1/compliance/apps/chats/{claude_chat_id}

Permanently deletes a chat and all associated messages and files. This is a destructive operation that cannot be undone.

Path Parameters

  • claude_chat_id: string

    The chat ID (tagged ID, e.g., claude_chat_abc123)

Header Parameters

  • "x-api-key": optional string

Returns

  • id: string

    The ID of the Claude chat that was deleted

  • type: optional "claude_chat_deleted"

    Constant string confirming deletion

    • "claude_chat_deleted"

Example

curl https://api.anthropic.com/v1/compliance/apps/chats/$CLAUDE_CHAT_ID \
    -X DELETE \
    -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"

Response

{
  "id": "claude_chat_abc123",
  "type": "claude_chat_deleted"
}

Domain Types

Chat List Response

  • ChatListResponse object { id, created_at, deleted_at, 8 more }

    Chat metadata for listing chats (without messages).

    • id: string

      Chat ID

    • created_at: string

      Creation timestamp

    • deleted_at: string

      Deletion timestamp if deleted

    • href: string

      URL to view this chat in claude.ai

    • model: string

      Model selected for this chat (e.g. 'claude-opus-4-7'). May be null for legacy chats that never had a model recorded.

    • name: string

      Chat name/title

    • organization_id: string

      Organization ID this chat belongs to

    • organization_uuid: string

      Organization UUID this chat belongs to

    • project_id: string

      Project ID this chat belongs to

    • updated_at: string

      Last update timestamp

    • user: object { id, email_address }

      User information for the chat creator

      • id: string

        User identifier

      • email_address: string

        User's email address

Chat Delete Response

  • ChatDeleteResponse object { id, type }

    Response for deleting a Claude chat.

    • id: string

      The ID of the Claude chat that was deleted

    • type: optional "claude_chat_deleted"

      Constant string confirming deletion

      • "claude_chat_deleted"

Messages

Get chat messages

get /v1/compliance/apps/chats/{claude_chat_id}/messages

Retrieves message history and file metadata for a specific chat.

Path Parameters

  • claude_chat_id: string

    The chat ID (tagged ID, e.g., claude_chat_abc123)

Query Parameters

  • after_id: optional string

    Pagination cursor for retrieving the next page of results (heading backwards in time). To paginate, pass the last_id value from the most recent response. Clients should treat this value as an opaque string and not attempt to parse or interpret its contents, as the format may change without notice.

  • before_id: optional string

    Pagination cursor for retrieving the previous page of results (heading forwards in time). To paginate, pass the first_id value from the most recent response. Clients should treat this value as an opaque string and not attempt to parse or interpret its contents, as the format may change without notice.

  • created_at: optional object { gt, gte, lt, lte }

    • gt: optional string

      Filter messages created after this time (RFC 3339 format)

    • gte: optional string

      Filter messages created at or after this time (RFC 3339 format)

    • lt: optional string

      Filter messages created before this time (RFC 3339 format)

    • lte: optional string

      Filter messages created at or before this time (RFC 3339 format)

  • limit: optional number

    Maximum results (max: 1000). When omitted, the full result set is returned in one response.

  • order: optional "asc" or "desc"

    Sort direction for messages within the response. asc (the default) returns oldest-first; desc returns newest-first.

    • "asc"

    • "desc"

  • updated_at: optional object { gt, gte, lt, lte }

    • gt: optional string

      Filter messages updated after this time (RFC 3339 format)

    • gte: optional string

      Filter messages updated at or after this time (RFC 3339 format)

    • lt: optional string

      Filter messages updated before this time (RFC 3339 format)

    • lte: optional string

      Filter messages updated at or before this time (RFC 3339 format)

Header Parameters

  • "x-api-key": optional string

Returns

  • id: string

    Chat ID

  • chat_messages: array of object { id, artifacts, content, 4 more }

    Array of chat messages in order of created_at

    • id: string

      Unique identifier for the message e.g. 'claude_chat_msg_abcd1234'

    • artifacts: array of object { id, artifact_type, title, version_id }

      Versioned documents generated or updated by the assistant in this message. Download via GET /v1/compliance/apps/artifacts/{artifact_version_id}/content.

      • id: string

        Artifact ID e.g. 'claude_artifact_abc123'

      • artifact_type: string

        MIME-like artifact type e.g. 'application/vnd.ant.code'

      • title: string

        Artifact title

      • version_id: string

        Artifact version ID e.g. 'claude_artifact_version_abc123'

    • content: array of object { text, type }

      Content blocks within the message

      • text: string

        Text content from human or assistant

      • type: "text"

        • "text"
    • created_at: string

      Message creation timestamp - For human: when they sent the message, For assistant: when it completed the last content block

    • files: array of object { id, filename, mime_type }

      Binary file attachments uploaded by the user. Download via GET /v1/compliance/apps/chats/files/{claude_file_id}/content.

      • id: string

        File ID

      • filename: string

        Display name of the file

      • mime_type: string

        MIME type of the file when it was uploaded (e.g. 'application/pdf')

    • generated_files: array of object { id, filename, mime_type }

      Downloadable files the assistant created via tool use (e.g. PDF, spreadsheet, slide deck). Distinct from files, which are uploads attached to the message. Download via GET /v1/compliance/apps/chats/generated-files/{claude_gen_file_id}/content.

      • id: string

        Opaque generated-file id, e.g. 'claude_gen_file_abc123'. Treat as an opaque string; the encoding may change without notice.

      • filename: string

        Display name of the generated file

      • mime_type: string

        MIME type reported by the tool that produced the file

    • role: "assistant" or "user"

      Message sender (user or assistant)

      • "assistant"

      • "user"

  • created_at: string

    Creation timestamp

  • deleted_at: string

    Deletion timestamp if deleted

  • first_id: string

    Opaque pagination cursor for the first message in the current result set. Pass as before_id on the next request to page backwards. Clients should treat this value as an opaque string and not attempt to parse or interpret its contents, as the format may change without notice.

  • has_more: boolean

    Whether more chat messages exist beyond the current result set. Use last_id as after_id in a follow-up request to page forward.

  • href: string

    URL to view this chat in claude.ai

  • last_id: string

    Opaque pagination cursor for the last message in the current result set. Pass as after_id on the next request to page forwards. Clients should treat this value as an opaque string and not attempt to parse or interpret its contents, as the format may change without notice.

  • model: string

    Model selected for this chat (e.g. 'claude-opus-4-7'). May be null for legacy chats that never had a model recorded.

  • name: string

    Chat name

  • organization_id: string

    Organization ID this chat belongs to

  • organization_uuid: string

    Organization UUID this chat belongs to

  • project_id: string

    Project ID this chat belongs to

  • updated_at: string

    Last update timestamp

  • user: object { id, email_address }

    User information

    • id: string

      User identifier

    • email_address: string

      User's email address

Example

curl https://api.anthropic.com/v1/compliance/apps/chats/$CLAUDE_CHAT_ID/messages \
    -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"

Response

{
  "id": "claude_chat_abc123",
  "name": "Product Requirements Discussion",
  "created_at": "2025-06-07T08:09:10Z",
  "updated_at": "2025-06-07T08:09:11Z",
  "organization_id": "org_abc123",
  "organization_uuid": "abcdef0123-4567-89ab-cdef-0123456789ab",
  "project_id": "claude_proj_xyz789",
  "model": "claude-opus-4-7",
  "user": {
    "id": "user_xyz456",
    "email_address": "user@example.com"
  },
  "href": "https://claude.ai/chat/abcdef01-2345-6789-abcd-ef0123456789",
  "chat_messages": [
    {
      "id": "claude_chat_msg_abc123",
      "role": "user",
      "created_at": "2025-06-07T08:09:10Z",
      "content": [
        {
          "type": "text",
          "text": "Can you help me draft requirements for our new dashboard feature?"
        }
      ],
      "files": [
        {
          "id": "claude_file_xyz789",
          "filename": "dashboard_mockup_v1.pdf",
          "mime_type": "application/pdf"
        }
      ]
    },
    {
      "id": "claude_chat_msg_def456",
      "role": "assistant",
      "created_at": "2025-06-07T08:09:11Z",
      "content": [
        {
          "type": "text",
          "text": "I'd be happy to help you draft requirements for your dashboard feature..."
        }
      ],
      "artifacts": [
        {
          "id": "claude_artifact_abc123",
          "version_id": "claude_artifact_version_xyz789",
          "title": "Dashboard Requirements Draft",
          "artifact_type": "text/markdown"
        }
      ]
    }
  ],
  "has_more": false,
  "first_id": "eyJtc2dfdXVpZCI6ICIwZjcwYjA2Ni0uLi4ifQ==",
  "last_id": "eyJtc2dfdXVpZCI6ICJhNGUwYjE3Mi0uLi4ifQ=="
}

Domain Types

Message List Response

  • MessageListResponse object { id, artifacts, content, 4 more }

    A single message in a chat conversation.

    • id: string

      Unique identifier for the message e.g. 'claude_chat_msg_abcd1234'

    • artifacts: array of object { id, artifact_type, title, version_id }

      Versioned documents generated or updated by the assistant in this message. Download via GET /v1/compliance/apps/artifacts/{artifact_version_id}/content.

      • id: string

        Artifact ID e.g. 'claude_artifact_abc123'

      • artifact_type: string

        MIME-like artifact type e.g. 'application/vnd.ant.code'

      • title: string

        Artifact title

      • version_id: string

        Artifact version ID e.g. 'claude_artifact_version_abc123'

    • content: array of object { text, type }

      Content blocks within the message

      • text: string

        Text content from human or assistant

      • type: "text"

        • "text"
    • created_at: string

      Message creation timestamp - For human: when they sent the message, For assistant: when it completed the last content block

    • files: array of object { id, filename, mime_type }

      Binary file attachments uploaded by the user. Download via GET /v1/compliance/apps/chats/files/{claude_file_id}/content.

      • id: string

        File ID

      • filename: string

        Display name of the file

      • mime_type: string

        MIME type of the file when it was uploaded (e.g. 'application/pdf')

    • generated_files: array of object { id, filename, mime_type }

      Downloadable files the assistant created via tool use (e.g. PDF, spreadsheet, slide deck). Distinct from files, which are uploads attached to the message. Download via GET /v1/compliance/apps/chats/generated-files/{claude_gen_file_id}/content.

      • id: string

        Opaque generated-file id, e.g. 'claude_gen_file_abc123'. Treat as an opaque string; the encoding may change without notice.

      • filename: string

        Display name of the generated file

      • mime_type: string

        MIME type reported by the tool that produced the file

    • role: "assistant" or "user"

      Message sender (user or assistant)

      • "assistant"

      • "user"

Files

Get file metadata

get /v1/compliance/apps/chats/files/{claude_file_id}

Retrieves metadata for a file referenced in chat messages, without downloading the file content. Use the sibling /content endpoint to download the bytes.

Path Parameters

  • claude_file_id: string

    The file ID (tagged ID, e.g., claude_file_abc123)

Header Parameters

  • "x-api-key": optional string

Returns

  • id: string

    File ID

  • created_at: string

    File creation timestamp

  • filename: string

    Display name of the file, if set

  • md5: string

    Lowercase hex MD5 of the file's preferred downloadable variant, as recorded at upload time. Null when no stored hash is available. The sibling /content endpoint also sets a Content-MD5 header (base64 per RFC 1864) computed over the exact served bytes; when the two disagree, the header is authoritative.

  • message_ids: array of string

    Chat message IDs this file is attached to. A file can be referenced by multiple messages.

  • mime_type: string

    MIME type of the file's preferred downloadable variant (e.g. 'application/pdf'). May be null for files with no downloadable content (e.g. code-interpreter outputs).

  • size_bytes: number

    Size in bytes of the file's preferred downloadable variant, if known

Example

curl https://api.anthropic.com/v1/compliance/apps/chats/files/$CLAUDE_FILE_ID \
    -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"

Response

{
  "id": "claude_file_xyz789",
  "filename": "quarterly_report.pdf",
  "mime_type": "application/pdf",
  "size_bytes": 1048576,
  "md5": "5d41402abc4b2a76b9719d911017c592",
  "created_at": "2024-01-15T10:30:00Z",
  "message_ids": [
    "claude_chat_msg_abc123"
  ]
}

Delete file

delete /v1/compliance/apps/chats/files/{claude_file_id}

Permanently deletes a specific file. This is a destructive operation that cannot be undone.

Path Parameters

  • claude_file_id: string

    The file ID (tagged ID, e.g., claude_file_abc123)

Header Parameters

  • "x-api-key": optional string

Returns

  • id: string

    The ID of the file that was deleted

  • type: optional "claude_file_deleted"

    Constant string confirming deletion

    • "claude_file_deleted"

Example

curl https://api.anthropic.com/v1/compliance/apps/chats/files/$CLAUDE_FILE_ID \
    -X DELETE \
    -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"

Response

{
  "id": "claude_file_xyz789",
  "type": "claude_file_deleted"
}

Download file content

get /v1/compliance/apps/chats/files/{claude_file_id}/content

Downloads the binary content of a file referenced in chat messages.

Path Parameters

  • claude_file_id: string

    The file ID (tagged ID, e.g., claude_file_abc123)

Header Parameters

  • "x-api-key": optional string

Example

curl https://api.anthropic.com/v1/compliance/apps/chats/files/$CLAUDE_FILE_ID/content \
    -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"

Domain Types

File Retrieve Response

  • FileRetrieveResponse object { id, created_at, filename, 4 more }

    File metadata for GET /v1/compliance/apps/chats/files/{claude_file_id}.

    Returns metadata only. Use the sibling /content endpoint to download the file bytes.

    • id: string

      File ID

    • created_at: string

      File creation timestamp

    • filename: string

      Display name of the file, if set

    • md5: string

      Lowercase hex MD5 of the file's preferred downloadable variant, as recorded at upload time. Null when no stored hash is available. The sibling /content endpoint also sets a Content-MD5 header (base64 per RFC 1864) computed over the exact served bytes; when the two disagree, the header is authoritative.

    • message_ids: array of string

      Chat message IDs this file is attached to. A file can be referenced by multiple messages.

    • mime_type: string

      MIME type of the file's preferred downloadable variant (e.g. 'application/pdf'). May be null for files with no downloadable content (e.g. code-interpreter outputs).

    • size_bytes: number

      Size in bytes of the file's preferred downloadable variant, if known

File Delete Response

  • FileDeleteResponse object { id, type }

    Response for deleting a compliance file.

    • id: string

      The ID of the file that was deleted

    • type: optional "claude_file_deleted"

      Constant string confirming deletion

      • "claude_file_deleted"

Generated Files

Get Claude-generated file metadata

get /v1/compliance/apps/chats/generated-files/{claude_gen_file_id}

Returns metadata for a file the assistant created via tool use.

Metadata is read from Filestore (the durable backing store for per-conversation tool outputs). Use the sibling /content endpoint to download the bytes.

Path Parameters

  • claude_gen_file_id: string

    The generated-file id (e.g., 'claude_gen_file_abc123') as returned in chat_messages[].generated_files[].id from GET /apps/chats/{claude_chat_id}/messages.

Header Parameters

  • "x-api-key": optional string

Returns

  • id: string

    Opaque generated-file id, e.g. 'claude_gen_file_abc123'.

  • claude_chat_id: string

    The chat this generated file belongs to

  • created_at: string

    File creation timestamp from Filestore

  • filename: string

    Display name of the generated file

  • md5: string

    Lowercase hex MD5 of the stored file, as recorded by Filestore. Null when no stored hash is available. The sibling /content endpoint also sets a Content-MD5 header (base64 per RFC 1864) computed over the exact served bytes.

  • mime_type: string

    MIME type as recorded by Filestore, when available

  • size_bytes: number

    Size in bytes of the stored file, when available

Example

curl https://api.anthropic.com/v1/compliance/apps/chats/generated-files/$CLAUDE_GEN_FILE_ID \
    -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"

Response

{
  "id": "id",
  "claude_chat_id": "claude_chat_id",
  "created_at": "2019-12-27T18:11:19.117Z",
  "filename": "filename",
  "md5": "md5",
  "mime_type": "mime_type",
  "size_bytes": 0
}

Download a Claude-generated file

get /v1/compliance/apps/chats/generated-files/{claude_gen_file_id}/content

Downloads the binary content of a file the assistant created via tool use.

Path Parameters

  • claude_gen_file_id: string

    The generated-file id (e.g., 'claude_gen_file_abc123') as returned in chat_messages[].generated_files[].id from GET /apps/chats/{claude_chat_id}/messages.

Header Parameters

  • "x-api-key": optional string

Example

curl https://api.anthropic.com/v1/compliance/apps/chats/generated-files/$CLAUDE_GEN_FILE_ID/content \
    -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"

Domain Types

Generated File Retrieve Response

  • GeneratedFileRetrieveResponse object { id, claude_chat_id, created_at, 4 more }

    Metadata for GET /v1/compliance/apps/chats/generated-files/{claude_gen_file_id}.

    Returns metadata only. Use the sibling /content endpoint to download the bytes. The owning chat is included since the id is opaque; to find the specific message that produced the file, fetch /v1/compliance/apps/chats/{claude_chat_id}/messages and match on generated_files[].id.

    • id: string

      Opaque generated-file id, e.g. 'claude_gen_file_abc123'.

    • claude_chat_id: string

      The chat this generated file belongs to

    • created_at: string

      File creation timestamp from Filestore

    • filename: string

      Display name of the generated file

    • md5: string

      Lowercase hex MD5 of the stored file, as recorded by Filestore. Null when no stored hash is available. The sibling /content endpoint also sets a Content-MD5 header (base64 per RFC 1864) computed over the exact served bytes.

    • mime_type: string

      MIME type as recorded by Filestore, when available

    • size_bytes: number

      Size in bytes of the stored file, when available