The two sides of this change are more than 400 edits apart, too far apart to line up, so this is the differ's own diff of it and the words inside a line are not marked.
from line 1
1---
2title: Projects
3url: https://platform.claude.com/docs/en/api/compliance/apps/projects
4---
5
61# Projects
72
83## List projects
94
10**get** `/v1/compliance/apps/projects`
5**GET** `/v1/compliance/apps/projects`
116
127Lists project metadata with filtering capabilities. Results
138are sorted chronologically (time ascending) by created_at.
149
15### Query Parameters
16
17- `created_at: optional object { gt, gte, lt, lte }`
10### Query parameters
11
12- `created_at: optional object`
1813
1914 - `gt: optional string`
2015
2116 Filter projects created after this time (RFC 3339 format)
2217
18 format: date-time
19
2320 - `gte: optional string`
2421
2522 Filter projects created at or after this time (RFC 3339 format)
2623
24 format: date-time
25
2726 - `lt: optional string`
2827
2928 Filter projects created before this time (RFC 3339 format)
3029
30 format: date-time
31
3132 - `lte: optional string`
3233
3334 Filter projects created at or before this time (RFC 3339 format)
3435
36 format: date-time
37
3538- `limit: optional number`
3639
3740 Maximum results (default: 20, max: 100)
3841
42 default: 20, maximum: 100, minimum: 1
43
3944- `organization_ids: optional array of string`
4045
4146 Filter by organization IDs (accepts `org_...` or organization UUID). Enumerate IDs via `GET /v1/compliance/organizations`.
from line 49
4449
4550 Opaque pagination token from a previous response's `next_page` field. Pass this to retrieve the next page of results. 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.
4651
47- `updated_at: optional object { gt, gte, lt, lte }`
52- `updated_at: optional object`
4853
4954 - `gt: optional string`
5055
5156 Filter projects updated after this time (RFC 3339 format)
5257
58 format: date-time
59
5360 - `gte: optional string`
5461
5562 Filter projects updated at or after this time (RFC 3339 format)
5663
64 format: date-time
65
5766 - `lt: optional string`
5867
5968 Filter projects updated before this time (RFC 3339 format)
6069
70 format: date-time
71
6172 - `lte: optional string`
6273
6374 Filter projects updated at or before this time (RFC 3339 format)
6475
76 format: date-time
77
6578- `user_ids: optional array of string`
6679
6780 Filter by user IDs. Enumerate IDs via `GET /v1/compliance/organizations/{org_uuid}/users`.
6881
69### Header Parameters
82### Headers
7083
7184- `"x-api-key": optional string`
7285
7386### Returns
7487
75- `data: array of object { id, created_at, deleted_at, 6 more }`
88- `data: array of object`
7689
7790 List of projects sorted by creation date ascending
7891
from line 97
8497
8598 Project creation timestamp
8699
100 format: date-time
101
87102 - `deleted_at: string or null`
88103
89104 Timestamp when the project was deleted by an end user, or null otherwise
90105
106 format: date-time
107
91108 - `is_private: boolean`
92109
93110 If false, the project is visible to all organization members; if true the project is accessible only to the creator and specified collaborators
from line 113
96113
97114 Project name
98115
99 - `organization_id: string`
100
101 Organization identifier (tagged ID)
102
103116 - `organization_uuid: string`
104117
105118 Organization UUID this project belongs to
from line 121
108121
109122 Project last update timestamp
110123
111 - `user: object { id, email_address } or null`
124 format: date-time
125
126 - `user: object or null`
112127
113128 The user who created a project or project document.
114129
from line 139
124139
125140 User's email address
126141
142 - `organization_id: string`
143
144 **Deprecated**
145
146 Organization identifier (tagged ID)
147
127148- `has_more: boolean`
128149
129150 Whether more records exist beyond the current result set
from line 155
134155
135156### Example
136157
137```http
158```bash
138159curl https://api.anthropic.com/v1/compliance/apps/projects \
139160 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
140161```
141162
142#### Response
163#### Response (200)
143164
144165```json
145166{
from line 186
165186
166187## Get project details
167188
168**get** `/v1/compliance/apps/projects/{project_id}`
189**GET** `/v1/compliance/apps/projects/{project_id}`
169190
170191Get detailed information for a specific project.
171192
172### Path Parameters
193### Path parameters
173194
174195- `project_id: string`
175196
176197 The project ID (tagged ID, e.g., claude_proj_abc123)
177198
178### Header Parameters
199### Headers
179200
180201- `"x-api-key": optional string`
181202
from line 218
197218
198219 Project creation timestamp
199220
221 format: date-time
222
200223- `deleted_at: string or null`
201224
202225 Timestamp when the project was deleted by an end user, or null otherwise
203226
227 format: date-time
228
204229- `description: string`
205230
206231 Project description
from line 242
217242
218243 Project name
219244
220- `organization_id: string`
221
222 Organization identifier (tagged ID)
223
224245- `organization_uuid: string`
225246
226247 Organization UUID this project belongs to
from line 250
229250
230251 Project last update timestamp
231252
232- `user: object { id, email_address } or null`
253 format: date-time
254
255- `user: object or null`
233256
234257 The user who created a project or project document.
235258
from line 268
245268
246269 User's email address
247270
271- `organization_id: string`
272
273 **Deprecated**
274
275 Organization identifier (tagged ID)
276
248277### Example
249278
250```http
279```bash
251280curl https://api.anthropic.com/v1/compliance/apps/projects/$PROJECT_ID \
252281 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
253282```
254283
255#### Response
284#### Response (200)
256285
257286```json
258287{
from line 306
277306
278307## Delete project
279308
280**delete** `/v1/compliance/apps/projects/{project_id}`
309**DELETE** `/v1/compliance/apps/projects/{project_id}`
281310
282311Delete a project for compliance purposes.
283312
from line 319
290319
291320Project must have no attached chats - returns 409 if chats exist.
292321
293### Path Parameters
322### Path parameters
294323
295324- `project_id: string`
296325
297326 The project ID (tagged ID, e.g., claude_proj_abc123)
298327
299### Header Parameters
328### Headers
300329
301330- `"x-api-key": optional string`
302331
from line 339
310339
311340 Constant string confirming deletion.
312341
313 - `"claude_project_deleted"`
342 default: claude_project_deleted
314343
315344### Example
316345
317```http
346```bash
318347curl https://api.anthropic.com/v1/compliance/apps/projects/$PROJECT_ID \
319348 -X DELETE \
320349 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
321350```
322351
323#### Response
352#### Response (200)
324353
325354```json
326355{
from line 358
329358}
330359```
331360
332## Domain Types
361## Domain types
333362
334363### Project List Response
335364
336- `ProjectListResponse object { id, created_at, deleted_at, 6 more }`
365- `ProjectListResponse object`
337366
338367 Project information for compliance responses.
339368
from line 374
345374
346375 Project creation timestamp
347376
377 format: date-time
378
348379 - `deleted_at: string or null`
349380
350381 Timestamp when the project was deleted by an end user, or null otherwise
351382
383 format: date-time
384
352385 - `is_private: boolean`
353386
354387 If false, the project is visible to all organization members; if true the project is accessible only to the creator and specified collaborators
from line 390
357390
358391 Project name
359392
360 - `organization_id: string`
361
362 Organization identifier (tagged ID)
363
364393 - `organization_uuid: string`
365394
366395 Organization UUID this project belongs to
from line 398
369398
370399 Project last update timestamp
371400
372 - `user: object { id, email_address } or null`
401 format: date-time
402
403 - `user: object or null`
373404
374405 The user who created a project or project document.
375406
from line 416
385416
386417 User's email address
387418
419 - `organization_id: string`
420
421 **Deprecated**
422
423 Organization identifier (tagged ID)
424
388425### Project Retrieve Response
389426
390- `ProjectRetrieveResponse object { id, attachments_count, chats_count, 10 more }`
427- `ProjectRetrieveResponse object`
391428
392429 Detailed project information for compliance responses.
393430
from line 444
407444
408445 Project creation timestamp
409446
447 format: date-time
448
410449 - `deleted_at: string or null`
411450
412451 Timestamp when the project was deleted by an end user, or null otherwise
413452
453 format: date-time
454
414455 - `description: string`
415456
416457 Project description
from line 468
427468
428469 Project name
429470
430 - `organization_id: string`
431
432 Organization identifier (tagged ID)
433
434471 - `organization_uuid: string`
435472
436473 Organization UUID this project belongs to
from line 476
439476
440477 Project last update timestamp
441478
442 - `user: object { id, email_address } or null`
479 format: date-time
480
481 - `user: object or null`
443482
444483 The user who created a project or project document.
445484
from line 494
455494
456495 User's email address
457496
497 - `organization_id: string`
498
499 **Deprecated**
500
501 Organization identifier (tagged ID)
502
458503### Project Delete Response
459504
460- `ProjectDeleteResponse object { id, type }`
505- `ProjectDeleteResponse object`
461506
462507 Response for deleting a Claude project.
463508
from line 514
469514
470515 Constant string confirming deletion.
471516
472 - `"claude_project_deleted"`
473
474# Attachments
475
476## List project attachments
477
478**get** `/v1/compliance/apps/projects/{project_id}/attachments`
517 default: claude_project_deleted
518
519## Projects › Attachments
520
521### List project attachments
522
523**GET** `/v1/compliance/apps/projects/{project_id}/attachments`
479524
480525List files and documents attached to a project.
481526
from line 533
488533The text content of attached project documents can be fetched using the
489534GET /v1/compliance/apps/projects/documents/{claude_proj_doc_id} endpoint.
490535
491### Path Parameters
536#### Path parameters
492537
493538- `project_id: string`
494539
495540 The project ID (tagged ID, e.g., claude_proj_abc123)
496541
497### Query Parameters
542#### Query parameters
498543
499544- `limit: optional number`
500545
501546 Maximum results (default: 20, max: 100)
502547
548 default: 20, maximum: 100, minimum: 1
549
503550- `page: optional string`
504551
505552 Opaque pagination token from a previous response's `next_page` field. Pass this to retrieve the next page of results. 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.
506553
507### Header Parameters
554#### Headers
508555
509556- `"x-api-key": optional string`
510557
511### Returns
512
513- `data: array of object { id, created_at, filename, 4 more } or object { id, created_at, filename, 3 more }`
558#### Returns
559
560- `data: array of object or object`
514561
515562 List of attachments sorted chronologically by created_at, tie break by id
516563
517 - `ComplianceProjectFileReference object { id, created_at, filename, 4 more }`
564 - `ComplianceProjectFileReference object`
518565
519566 File attachment reference for compliance responses.
520567
from line 573
526573
527574 Creation timestamp (RFC 3339 format)
528575
576 format: date-time
577
529578 - `filename: string`
530579
531580 Display name of the file (e.g., 'document.pdf')
from line 595
546595
547596 Discriminator marking this as a binary file
548597
549 - `"project_file"`
550
551 - `ComplianceProjectDocReference object { id, created_at, filename, 3 more }`
598 default: project_file
599
600 - `ComplianceProjectDocReference object`
552601
553602 Project document attachment reference for compliance responses.
554603
from line 609
560609
561610 Creation timestamp (RFC 3339 format)
562611
612 format: date-time
613
563614 - `filename: string`
564615
565616 Display name of the document (e.g., 'document.txt')
from line 619
568619
569620 MIME type of the project document, always set to plain text
570621
571 - `"text/plain"`
622 default: text/plain
572623
573624 - `type: "project_doc"`
574625
575626 Discriminator marking this as a plain text document
576627
577 - `"project_doc"`
628 default: project_doc
578629
579630 - `updated_at: string or null`
580631
581632 Last-modified timestamp of the document. Reserved for future use — currently always null.
582633
634 format: date-time
635
583636- `has_more: boolean`
584637
585638 Whether more records exist beyond the current result set
from line 641
588641
589642 To get the next page, use the 'next_page' from the current response as the 'page' in your next request
590643
591### Example
592
593```http
644#### Example
645
646```bash
594647curl https://api.anthropic.com/v1/compliance/apps/projects/$PROJECT_ID/attachments \
595648 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
596649```
597650
598#### Response
651##### Response (200)
599652
600653```json
601654{
from line 668
615668}
616669```
617670
618## Domain Types
619
620### Attachment List Response
621
622- `AttachmentListResponse = object { id, created_at, filename, 4 more } or object { id, created_at, filename, 3 more }`
623
624 File attachment reference for compliance responses.
625
626 - `ComplianceProjectFileReference object { id, created_at, filename, 4 more }`
627
628 File attachment reference for compliance responses.
629
630 - `id: string`
631
632 File identifier (e.g., 'claude_file_abcd')
633
634 - `created_at: string`
635
636 Creation timestamp (RFC 3339 format)
637
638 - `filename: string`
639
640 Display name of the file (e.g., 'document.pdf')
641
642 - `md5: string or null`
643
644 Lowercase hex MD5 of the file's preferred downloadable variant, when recorded. Null otherwise. Use the per-file `/metadata` endpoint for the authoritative value.
645
646 - `mime_type: string`
647
648 MIME type of the file's preferred downloadable variant when one is recorded, else 'application/octet-stream'. Use the per-file `/metadata` endpoint for the authoritative value.
649
650 - `size_bytes: number or null`
651
652 Size in bytes of the file's preferred downloadable variant, when recorded. Null otherwise. Use the per-file `/metadata` endpoint for the authoritative value.
653
654 - `type: "project_file"`
655
656 Discriminator marking this as a binary file
657
658 - `"project_file"`
659
660 - `ComplianceProjectDocReference object { id, created_at, filename, 3 more }`
661
662 Project document attachment reference for compliance responses.
663
664 - `id: string`
665
666 Project document identifier (e.g., 'claude_proj_doc_abcd')
667
668 - `created_at: string`
669
670 Creation timestamp (RFC 3339 format)
671
672 - `filename: string`
673
674 Display name of the document (e.g., 'document.txt')
675
676 - `mime_type: "text/plain"`
677
678 MIME type of the project document, always set to plain text
679
680 - `"text/plain"`
681
682 - `type: "project_doc"`
683
684 Discriminator marking this as a plain text document
685
686 - `"project_doc"`
687
688 - `updated_at: string or null`
689
690 Last-modified timestamp of the document. Reserved for future use — currently always null.
691
692# Collaborators
693
694## List project collaborators
695
696**get** `/v1/compliance/apps/projects/{project_id}/collaborators`
671## Projects › Collaborators
672
673### List project collaborators
674
675**GET** `/v1/compliance/apps/projects/{project_id}/collaborators`
697676
698677List the users, groups, and organization-wide grants on a project.
699678
from line 681
702681RBAC group, the whole organization, or all holders of an organization-level
703682role.
704683
705### Path Parameters
684#### Path parameters
706685
707686- `project_id: string`
708687
709688 The project ID (tagged ID, e.g., claude_proj_abc123)
710689
711### Query Parameters
690#### Query parameters
712691
713692- `limit: optional number`
714693
715694 Maximum results (default: 20, max: 100)
716695
696 default: 20, maximum: 100, minimum: 1
697
717698- `page: optional string`
718699
719700 Opaque pagination token from a previous response's `next_page` field. Pass this to retrieve the next page of results. 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.
720701
721### Header Parameters
702#### Headers
722703
723704- `"x-api-key": optional string`
724705
725### Returns
726
727- `data: array of object { granted_at, role, type, user_id } or object { granted_at, group_id, role, type } or object { granted_at, organization_uuid, role, type } or object { granted_at, organization_role, role, type }`
706#### Returns
707
708- `data: array of object or object or object or object`
728709
729710 List of collaborators sorted chronologically by granted_at, tie break by the underlying role-assignment UUID
730711
731 - `ComplianceProjectUserCollaborator object { granted_at, role, type, user_id }`
712 - `ComplianceProjectUserCollaborator object`
732713
733714 An individual user granted a role on a project.
734715
from line 717
736717
737718 When this collaborator was granted access (RFC 3339 format)
738719
720 format: date-time
721
739722 - `role: "admin" or "editor" or "owner" or "viewer"`
740723
741724 Role granted on the project
from line 735
752735
753736 Discriminator marking this as an individual user collaborator
754737
755 - `"user"`
738 default: user
756739
757740 - `user_id: string or null`
758741
759742 Identifier of the user granted access (tagged ID), or null if their account has since been deleted
760743
761 - `ComplianceProjectGroupCollaborator object { granted_at, group_id, role, type }`
744 - `ComplianceProjectGroupCollaborator object`
762745
763746 An RBAC group granted a role on a project.
764747
from line 749
766749
767750 When this collaborator was granted access (RFC 3339 format)
768751
752 format: date-time
753
769754 - `group_id: string`
770755
771756 Identifier of the group granted access (tagged ID)
from line 771
786771
787772 Discriminator marking this as a group collaborator
788773
789 - `"group"`
790
791 - `ComplianceProjectOrganizationCollaborator object { granted_at, organization_uuid, role, type }`
774 default: group
775
776 - `ComplianceProjectOrganizationCollaborator object`
792777
793778 An entire organization granted a role on a project.
794779
from line 781
796781
797782 When this collaborator was granted access (RFC 3339 format)
798783
784 format: date-time
785
799786 - `organization_uuid: string`
800787
801788 UUID of the organization granted access
from line 803
816803
817804 Discriminator marking this as an organization-wide grant
818805
819 - `"organization"`
820
821 - `ComplianceProjectOrganizationRoleCollaborator object { granted_at, organization_role, role, type }`
806 default: organization
807
808 - `ComplianceProjectOrganizationRoleCollaborator object`
822809
823810 All holders of an organization-level role granted a role on a project.
824811
from line 813
826813
827814 When this collaborator was granted access (RFC 3339 format)
828815
816 format: date-time
817
829818 - `organization_role: string`
830819
831820 The organization-level role whose holders are granted access
from line 835
846835
847836 Discriminator marking this as a grant to all organization members holding a specific org-level role
848837
849 - `"organization_role"`
838 default: organization_role
850839
851840- `has_more: boolean`
852841
from line 845
856845
857846 To get the next page, use the 'next_page' from the current response as the 'page' in your next request
858847
859### Example
860
861```http
848#### Example
849
850```bash
862851curl https://api.anthropic.com/v1/compliance/apps/projects/$PROJECT_ID/collaborators \
863852 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
864853```
865854
866#### Response
855##### Response (200)
867856
868857```json
869858{
from line 869
880869}
881870```
882871
883## Domain Types
884
885### Collaborator List Response
886
887- `CollaboratorListResponse = object { granted_at, role, type, user_id } or object { granted_at, group_id, role, type } or object { granted_at, organization_uuid, role, type } or object { granted_at, organization_role, role, type }`
888
889 An individual user granted a role on a project.
890
891 - `ComplianceProjectUserCollaborator object { granted_at, role, type, user_id }`
892
893 An individual user granted a role on a project.
894
895 - `granted_at: string`
896
897 When this collaborator was granted access (RFC 3339 format)
898
899 - `role: "admin" or "editor" or "owner" or "viewer"`
900
901 Role granted on the project
902
903 - `"admin"`
904
905 - `"editor"`
906
907 - `"owner"`
908
909 - `"viewer"`
910
911 - `type: "user"`
912
913 Discriminator marking this as an individual user collaborator
914
915 - `"user"`
916
917 - `user_id: string or null`
918
919 Identifier of the user granted access (tagged ID), or null if their account has since been deleted
920
921 - `ComplianceProjectGroupCollaborator object { granted_at, group_id, role, type }`
922
923 An RBAC group granted a role on a project.
924
925 - `granted_at: string`
926
927 When this collaborator was granted access (RFC 3339 format)
928
929 - `group_id: string`
930
931 Identifier of the group granted access (tagged ID)
932
933 - `role: "admin" or "editor" or "owner" or "viewer"`
934
935 Role granted on the project
936
937 - `"admin"`
938
939 - `"editor"`
940
941 - `"owner"`
942
943 - `"viewer"`
944
945 - `type: "group"`
946
947 Discriminator marking this as a group collaborator
948
949 - `"group"`
950
951 - `ComplianceProjectOrganizationCollaborator object { granted_at, organization_uuid, role, type }`
952
953 An entire organization granted a role on a project.
954
955 - `granted_at: string`
956
957 When this collaborator was granted access (RFC 3339 format)
958
959 - `organization_uuid: string`
960
961 UUID of the organization granted access
962
963 - `role: "admin" or "editor" or "owner" or "viewer"`
964
965 Role granted on the project
966
967 - `"admin"`
968
969 - `"editor"`
970
971 - `"owner"`
972
973 - `"viewer"`
974
975 - `type: "organization"`
976
977 Discriminator marking this as an organization-wide grant
978
979 - `"organization"`
980
981 - `ComplianceProjectOrganizationRoleCollaborator object { granted_at, organization_role, role, type }`
982
983 All holders of an organization-level role granted a role on a project.
984
985 - `granted_at: string`
986
987 When this collaborator was granted access (RFC 3339 format)
988
989 - `organization_role: string`
990
991 The organization-level role whose holders are granted access
992
993 - `role: "admin" or "editor" or "owner" or "viewer"`
994
995 Role granted on the project
996
997 - `"admin"`
998
999 - `"editor"`
1000
1001 - `"owner"`
1002
1003 - `"viewer"`
1004
1005 - `type: "organization_role"`
1006
1007 Discriminator marking this as a grant to all organization members holding a specific org-level role
1008
1009 - `"organization_role"`
1010
1011# Documents
1012
1013## Get project document content
1014
1015**get** `/v1/compliance/apps/projects/documents/{document_id}`
872## Projects › Documents
873
874### Get project document content
875
876**GET** `/v1/compliance/apps/projects/documents/{document_id}`
1016877
1017878Get detailed information for a specific project document.
1018879
1019### Path Parameters
880#### Path parameters
1020881
1021882- `document_id: string`
1022883
1023884 The document ID (tagged ID, e.g., claude_proj_doc_abc123)
1024885
1025### Header Parameters
886#### Headers
1026887
1027888- `"x-api-key": optional string`
1028889
1029### Returns
890#### Returns
1030891
1031892- `id: string`
1032893
from line 901
1040901
1041902 Document creation timestamp
1042903
904 format: date-time
905
1043906- `filename: string`
1044907
1045908 Document filename
1046909
1047- `user: object { id, email_address } or null`
910- `user: object or null`
1048911
1049912 The user who created a project or project document.
1050913
from line 923
1060923
1061924 User's email address
1062925
1063### Example
1064
1065```http
926#### Example
927
928```bash
1066929curl https://api.anthropic.com/v1/compliance/apps/projects/documents/$DOCUMENT_ID \
1067930 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
1068931```
1069932
1070#### Response
933##### Response (200)
1071934
1072935```json
1073936{
from line 945
1082945}
1083946```
1084947
1085## Get project document metadata
1086
1087**get** `/v1/compliance/apps/projects/documents/{document_id}/metadata`
948### Get project document metadata
949
950**GET** `/v1/compliance/apps/projects/documents/{document_id}/metadata`
1088951
1089952Returns metadata for a project document, without the content body.
1090953
from line 956
1093956fields here are computed over the UTF-8 encoding of that text, so a DLP
1094957consumer can dedupe or match hashes without downloading every document.
1095958
1096### Path Parameters
959#### Path parameters
1097960
1098961- `document_id: string`
1099962
1100963 The document ID (tagged ID, e.g., claude_proj_doc_abc123)
1101964
1102### Header Parameters
965#### Headers
1103966
1104967- `"x-api-key": optional string`
1105968
1106### Returns
969#### Returns
1107970
1108971- `id: string`
1109972
from line 980
1117980
1118981 Document creation timestamp
1119982
983 format: date-time
984
1120985- `filename: string`
1121986
1122987 Document filename
from line 994
1129994
1130995 MIME type of the document content, always plain text
1131996
1132 - `"text/plain"`
997 default: text/plain
1133998
1134999- `size_bytes: number`
11351000
11361001 Size in bytes of the document content (UTF-8 encoded)
11371002
1138- `user: object { id, email_address } or null`
1003- `user: object or null`
11391004
11401005 The user who created a project or project document.
11411006
from line 1016
11511016
11521017 User's email address
11531018
1154### Example
1155
1156```http
1019#### Example
1020
1021```bash
11571022curl https://api.anthropic.com/v1/compliance/apps/projects/documents/$DOCUMENT_ID/metadata \
11581023 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
11591024```
11601025
1161#### Response
1026##### Response (200)
11621027
11631028```json
11641029{
from line 1041
11761041}
11771042```
11781043
1179## Delete project document
1180
1181**delete** `/v1/compliance/apps/projects/documents/{document_id}`
1044### Delete project document
1045
1046**DELETE** `/v1/compliance/apps/projects/documents/{document_id}`
11821047
11831048Delete a project document for compliance purposes.
11841049
11851050Hard-deletes the project document permanently.
11861051
1187### Path Parameters
1052#### Path parameters
11881053
11891054- `document_id: string`
11901055
11911056 The document ID (tagged ID, e.g., claude_proj_doc_abc123)
11921057
1193### Header Parameters
1058#### Headers
11941059
11951060- `"x-api-key": optional string`
11961061
1197### Returns
1062#### Returns
11981063
11991064- `id: string`
12001065
from line 1069
12041069
12051070 Constant string confirming deletion.
12061071
1207 - `"claude_project_document_deleted"`
1208
1209### Example
1210
1211```http
1072 default: claude_project_document_deleted
1073
1074#### Example
1075
1076```bash
12121077curl https://api.anthropic.com/v1/compliance/apps/projects/documents/$DOCUMENT_ID \
12131078 -X DELETE \
12141079 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
12151080```
12161081
1217#### Response
1082##### Response (200)
12181083
12191084```json
12201085{
from line 1087
12221087 "type": "claude_project_document_deleted"
12231088}
12241089```
1225
1226## Domain Types
1227
1228### Document Retrieve Response
1229
1230- `DocumentRetrieveResponse object { id, content, created_at, 2 more }`
1231
1232 Project document information for compliance responses.
1233
1234 - `id: string`
1235
1236 Project document identifier (tagged ID)
1237
1238 - `content: string`
1239
1240 Document text content
1241
1242 - `created_at: string`
1243
1244 Document creation timestamp
1245
1246 - `filename: string`
1247
1248 Document filename
1249
1250 - `user: object { id, email_address } or null`
1251
1252 The user who created a project or project document.
1253
1254 Fields that reference this type are null when the creator's account has
1255 been deleted or the creator is no longer a member of an organization the
1256 key may read.
1257
1258 - `id: string`
1259
1260 User identifier (tagged ID)
1261
1262 - `email_address: string`
1263
1264 User's email address
1265
1266### Document Metadata Response
1267
1268- `DocumentMetadataResponse object { id, claude_project_id, created_at, 5 more }`
1269
1270 Project document metadata for GET /v1/compliance/apps/projects/documents/{document_id}/metadata.
1271
1272 Returns metadata only. Use the sibling endpoint (without `/metadata`)
1273 to fetch the document text content.
1274
1275 - `id: string`
1276
1277 Project document identifier (tagged ID)
1278
1279 - `claude_project_id: string`
1280
1281 The project this document belongs to
1282
1283 - `created_at: string`
1284
1285 Document creation timestamp
1286
1287 - `filename: string`
1288
1289 Document filename
1290
1291 - `md5: string`
1292
1293 Lowercase hex MD5 of the document content (UTF-8 encoded). Matches the `content` field returned by the sibling content endpoint.
1294
1295 - `mime_type: "text/plain"`
1296
1297 MIME type of the document content, always plain text
1298
1299 - `"text/plain"`
1300
1301 - `size_bytes: number`
1302
1303 Size in bytes of the document content (UTF-8 encoded)
1304
1305 - `user: object { id, email_address } or null`
1306
1307 The user who created a project or project document.
1308
1309 Fields that reference this type are null when the creator's account has
1310 been deleted or the creator is no longer a member of an organization the
1311 key may read.
1312
1313 - `id: string`
1314
1315 User identifier (tagged ID)
1316
1317 - `email_address: string`
1318
1319 User's email address
1320
1321### Document Delete Response
1322
1323- `DocumentDeleteResponse object { id, type }`
1324
1325 Response for deleting a project document.
1326
1327 - `id: string`
1328
1329 The ID of the project document that was deleted
1330
1331 - `type: "claude_project_document_deleted"`
1332
1333 Constant string confirming deletion.
1334
1335 - `"claude_project_document_deleted"`
13361090
No line in this hunk matches that.