Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial
One change · api

Apps changedapi/compliance/apps

Nearest release: v2.1.301, published 7 hours before this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.

Recorded here
Lines+388added
Lines−0removed
From line 3,286 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits18to this page, all time

## Apps › Code › Artifacts ### List Code Artifacts ### Download Code Artifact Version Content ### Download Code Artifact Content ### Delete Code Artifact

The whole hunk

from line 3286, old and new numbered
/
lines
from line 3286
32863286}
32873287```
32883288 
3289## Apps › Code › Artifacts
3290 
3291### List Code Artifacts
3292 
3293**GET** `/v1/compliance/apps/code/artifacts`
3294 
3295List Claude Code Artifacts owned by organizations under the parent
3296organization.
3297 
3298Results are sorted by Artifact identifier. Pages may be short or empty
3299while `next_page` is still set — continue until `next_page` is absent.
3300Artifacts are sorted by identifier (not creation time): an Artifact
3301published during an export may land before the cursor and be omitted, so
3302for a point-in-time-complete export re-enumerate after publishing
3303quiesces.
3304 
3305Artifacts owned by a since-deleted child organization are not
3306returned.
3307 
3308#### Query parameters
3309 
3310- `limit: optional number`
3311 
3312 Maximum results (default: 20, max: 100)
3313 
3314 default: 20, minimum: 1, maximum: 100
3315 
3316- `organization_ids: optional array of string`
3317 
3318 Filter by organization IDs (accepts `org_...` or organization UUID, up to 500). Enumerate IDs via `GET /v1/compliance/organizations`.
3319 
3320 maxItems: 500
3321 
3322- `page: optional string`
3323 
3324 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.
3325 
3326- `updated_at: optional object`
3327 
3328 - `gt: optional string`
3329 
3330 Return only Artifacts updated after this time (RFC 3339 format). See `updated_at.gte` for the completeness caveat.
3331 
3332 format: date-time
3333 
3334 - `gte: optional string`
3335 
3336 Return only Artifacts updated at or after this time (RFC 3339 format). Time filters match an eventually-consistent index and Artifacts published before this field was recorded never match — omit the time filter for compliance-complete enumeration. For incremental export, apply a generous overlap margin between windows and dedupe by `id`: adjacent tiling silently misses items whose index update lagged their publish.
3337 
3338 format: date-time
3339 
3340 - `lt: optional string`
3341 
3342 Return only Artifacts updated before this time (RFC 3339 format). Multiple time operators are AND-ed to the tightest bound. See `updated_at.gte` for the completeness caveat.
3343 
3344 format: date-time
3345 
3346 - `lte: optional string`
3347 
3348 Return only Artifacts updated at or before this time (RFC 3339 format). See `updated_at.gte` for the completeness caveat.
3349 
3350 format: date-time
3351 
3352- `user_ids: optional array of string`
3353 
3354 Filter by owner user IDs (up to 200). Enumerate IDs via `GET /v1/compliance/organizations/{org_uuid}/users`.
3355 
3356 maxItems: 200
3357 
3358#### Headers
3359 
3360- `"anthropic-version": optional string`
3361 
3362 The version of the Claude API you want to use.
3363 
3364 Read more about versioning and our version history [here](https://platform.claude.com/docs/en/api/versioning?sdk_languages=http).
3365 
3366- `"x-api-key": optional string`
3367 
3368#### Returns
3369 
3370- `data: array of object`
3371 
3372 Page of Artifacts
3373 
3374 - `id: string`
3375 
3376 Artifact identifier (tagged ID)
3377 
3378 - `artifact_type: "claude_design" or "claude_design_systems" or "claude_docs" or 4 more`
3379 
3380 Which kind of Artifact this is: `code` for a site published from Claude Code, or the built-in Artifact type it was made from — `claude_docs` (Claude Docs), `claude_slides` (Slides), `claude_design` (Design), `claude_design_systems` (a design system) or `claude_motion` (Motion). `other` is an Artifact made from a built-in type this list does not name yet.
3381 
3382 - `"claude_design"`
3383 
3384 - `"claude_design_systems"`
3385 
3386 - `"claude_docs"`
3387 
3388 - `"claude_motion"`
3389 
3390 - `"claude_slides"`
3391 
3392 - `"code"`
3393 
3394 - `"other"`
3395 
3396 - `organization_uuid: string`
3397 
3398 Organization UUID this Artifact belongs to
3399 
3400 - `owner_user_id: string or null`
3401 
3402 Artifact owner's user identifier (tagged ID), or null for Artifacts published by an agent session rather than a user account. When set, it survives after the owner's account is deleted or the owner leaves every organization under the parent.
3403 
3404 - `published_version_id: string or null`
3405 
3406 Identifier of the version a non-owner viewer would render when `read_mode` permits them — the version the owner has pinned for non-owner readers if one is pinned, otherwise the owner's latest. When `read_mode` is `owner` no non-owner renders any version; the field still reports which version would be served were read_mode widened. Null for a Claude Doc; see `versions`.
3407 
3408 - `read_mode: "org" or "owner" or "public" or "users"`
3409 
3410 Who can view this Artifact: only its owner, a named set of users, every member of its organization, or anyone on the internet (`public`)
3411 
3412 - `"org"`
3413 
3414 - `"owner"`
3415 
3416 - `"public"`
3417 
3418 - `"users"`
3419 
3420 - `updated_at: string or null`
3421 
3422 Artifact last update timestamp, or null for Artifacts published before this field was recorded
3423 
3424 format: date-time
3425 
3426 - `user: object or null`
3427 
3428 Artifact owner with email, or null if the Artifact was published by an agent session, the owner's account has been deleted, or the owner is no longer a member of an organization the key may read
3429 
3430 - `id: string`
3431 
3432 User identifier (tagged ID)
3433 
3434 - `email_address: string`
3435 
3436 User's email address
3437 
3438 - `versions: array of object`
3439 
3440 Up to roughly 20 most-recently-published versions of this Artifact (older versions are not retained). Metadata only — use `GET /v1/compliance/apps/code/artifacts/{artifact_id}/versions/{version_id}` to download a version's content. Empty for a Claude Doc, because a Doc's versions hold only the web page that displays it, not its text. Download a Doc's text with `GET /v1/compliance/apps/code/artifacts/{artifact_id}/content?multi_file_format=zip`.
3441 
3442 - `id: string`
3443 
3444 Opaque version identifier
3445 
3446 - `created_at: string or null`
3447 
3448 When this version was published
3449 
3450 format: date-time
3451 
3452 - `name: string`
3453 
3454 Artifact title at this version. Falls back to the version identifier when the title for an older version is no longer retained.
3455 
3456- `has_more: boolean`
3457 
3458 Whether `next_page` is set. May be true for a page whose next page is empty — continue until `next_page` is absent.
3459 
3460- `next_page: string or null`
3461 
3462 Token to retrieve the next page. Use this as the 'page' parameter in your next request
3463 
3464#### Example
3465 
3466```bash
3467curl https://api.anthropic.com/v1/compliance/apps/code/artifacts \
3468 -H 'anthropic-version: 2023-06-01' \
3469 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
3470```
3471 
3472##### Response (200)
3473 
3474```json
3475{
3476 "data": [
3477 {
3478 "id": "cart_01Tu9VwXyZaBcDeFgHiJkLmN",
3479 "artifact_type": "code",
3480 "organization_uuid": "a1b2c3d4-e5f6-4789-a012-3456789abcde",
3481 "owner_user_id": "user_01WCz1FkmYMm4gnmykNKUu3Q",
3482 "published_version_id": "1741803761-9f3a",
3483 "read_mode": "org",
3484 "updated_at": "2025-03-14T09:05:17.456789Z",
3485 "user": {
3486 "id": "user_01WCz1FkmYMm4gnmykNKUu3Q",
3487 "email_address": "[email protected]"
3488 },
3489 "versions": [
3490 {
3491 "id": "1741803761-9f3a",
3492 "created_at": "2025-03-12T18:22:41.123456Z",
3493 "name": "Team dashboard"
3494 }
3495 ]
3496 }
3497 ],
3498 "has_more": true,
3499 "next_page": "cGFnZV90b2tlbl9leGFtcGxlXzE3MzQ1Njc4OTA="
3500}
3501```
3502 
3503### Download Code Artifact Version Content
3504 
3505**GET** `/v1/compliance/apps/code/artifacts/{artifact_id}/versions/{version_id}`
3506 
3507Streams the content of one version of a Claude Code Artifact as the
3508response body.
3509 
3510Returns 404 for Artifacts that don't exist or belong to another parent
3511organization. A listed version id can start returning 404 if subsequent
3512publishes rotated it out of retained history — re-list on 404. Returns
3513503 while the version's content upload is still in flight or was
3514abandoned — retry with backoff. Returns 422 with
3515`error.details.error_code` `multi_file_unavailable` for a version that
3516has more than one file, unless the request sets `multi_file_format=zip`,
3517which returns those files as a ZIP archive. With `multi_file_format=zip`,
3518a version with more than one file, one of them with a name the API cannot
3519export, gets 422 `file_set_unavailable`. Do not retry a 422. A Claude
3520Doc's versions hold only the web page that displays the Doc and never come
3521back as a ZIP. That page usually has more than one file, so a Doc's version
3522usually gets the 422 `multi_file_unavailable`. Download the Doc's text with
3523`GET /v1/compliance/apps/code/artifacts/{artifact_id}/content?multi_file_format=zip`.
3524Oversized encoded content aborts mid-stream: headers and initial bytes arrive
3525but the body terminates early — an aborted chunked transfer is the
3526only truncation signal for encoded content. `Content-MD5` is emitted
3527only for identity-stored content; validate against it when present.
3528 
3529#### Path parameters
3530 
3531- `artifact_id: string`
3532 
3533 The Artifact ID (tagged ID, e.g., cart_abc123)
3534 
3535- `version_id: string`
3536 
3537 Opaque version identifier from the Artifact's `versions` list
3538 
3539#### Query parameters
3540 
3541- `multi_file_format: optional string`
3542 
3543 Set to `zip`, its only value, to receive a version that has more than one file as a ZIP archive of its files with an index, `files.json`. Files the artifact copied from its type (the app that displays every artifact of that type) are listed under `omitted_files` in the index, and left out of the archive, when an organization other than the artifact's owns that type. A Claude Doc's version never comes back as a ZIP: it is answered as without this parameter, except that a version with more than one file, one of them with a name the API cannot export, gets 422 `file_set_unavailable`. A version with one file is returned as that file, as without this parameter.
3544 
3545#### Headers
3546 
3547- `"anthropic-version": optional string`
3548 
3549 The version of the Claude API you want to use.
3550 
3551 Read more about versioning and our version history [here](https://platform.claude.com/docs/en/api/versioning?sdk_languages=http).
3552 
3553- `"x-api-key": optional string`
3554 
3555#### Example
3556 
3557```bash
3558curl https://api.anthropic.com/v1/compliance/apps/code/artifacts/$ARTIFACT_ID/versions/$VERSION_ID \
3559 -H 'anthropic-version: 2023-06-01' \
3560 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
3561```
3562 
3563### Download Code Artifact Content
3564 
3565**GET** `/v1/compliance/apps/code/artifacts/{artifact_id}/content`
3566 
3567Streams an Artifact's current content as the response body. For a
3568Claude Doc, that is the Doc's text as a ZIP archive of Word files, one per
3569text tab, and the request must set `multi_file_format=zip`. For any other
3570Artifact, it is the latest version, as
3571`GET /v1/compliance/apps/code/artifacts/{artifact_id}/versions/{version_id}`
3572returns it.
3573 
3574Returns 404 for Artifacts that don't exist or that the API key cannot read.
3575Returns 400 with `error.details.error_code` `cmek_key_disabled` when the
3576organization's customer-managed encryption key can't be used, for example
3577because it is disabled or revoked. Returns 503 when the content can't be
3578produced right now; wait the number of seconds in the `Retry-After`
3579header, or retry with backoff when it is absent. For a Claude Doc, a 422's
3580`error.details.error_code` is `multi_file_unavailable` when the request
3581does not set `multi_file_format=zip`, `document_unavailable` when the Doc
3582has no text to export (for example, it has no text tab or is in the trash),
3583`document_too_large` when the export is over 16 MiB, or
3584`cmek_org_unsupported` when the organization uses customer-managed
3585encryption keys and the export can't be served for it right now. For any
3586other Artifact, the 422s are the version download's.
3587 
3588#### Path parameters
3589 
3590- `artifact_id: string`
3591 
3592 The Artifact ID (tagged ID, e.g., cart_abc123)
3593 
3594#### Query parameters
3595 
3596- `multi_file_format: optional string`
3597 
3598 Set to `zip`, its only value. A Claude Doc downloads only this way, as a ZIP archive of Word files, one per text tab. For any other Artifact it works as on the version download: when the latest version has more than one file, it comes back as a ZIP archive of its files with an index, `files.json`.
3599 
3600#### Headers
3601 
3602- `"anthropic-version": optional string`
3603 
3604 The version of the Claude API you want to use.
3605 
3606 Read more about versioning and our version history [here](https://platform.claude.com/docs/en/api/versioning?sdk_languages=http).
3607 
3608- `"x-api-key": optional string`
3609 
3610#### Example
3611 
3612```bash
3613curl https://api.anthropic.com/v1/compliance/apps/code/artifacts/$ARTIFACT_ID/content \
3614 -H 'anthropic-version: 2023-06-01' \
3615 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
3616```
3617 
3618### Delete Code Artifact
3619 
3620**DELETE** `/v1/compliance/apps/code/artifacts/{artifact_id}`
3621 
3622Permanently deletes a Code Artifact and all its versions. This is a
3623destructive operation that cannot be undone. A 200 response means the
3624deletion is initiated and the Artifact is claimed; content removal
3625completes asynchronously.
3626 
3627Returns 404 for Artifacts that don't exist or belong to another parent
3628organization. Returns 404 on a repeated delete of an already-deleted
3629Artifact.
3630 
3631#### Path parameters
3632 
3633- `artifact_id: string`
3634 
3635 The Artifact ID (tagged ID, e.g., cart_abc123)
3636 
3637#### Headers
3638 
3639- `"anthropic-version": optional string`
3640 
3641 The version of the Claude API you want to use.
3642 
3643 Read more about versioning and our version history [here](https://platform.claude.com/docs/en/api/versioning?sdk_languages=http).
3644 
3645- `"x-api-key": optional string`
3646 
3647#### Returns
3648 
3649- `type: "code_artifact_deleted"`
3650 
3651 Constant string confirming deletion
3652 
3653 default: code_artifact_deleted
3654 
3655- `id: string`
3656 
3657 The ID of the Artifact that was deleted
3658 
3659#### Example
3660 
3661```bash
3662curl https://api.anthropic.com/v1/compliance/apps/code/artifacts/$ARTIFACT_ID \
3663 -X DELETE \
3664 -H 'anthropic-version: 2023-06-01' \
3665 -H "Authorization: Bearer $ANTHROPIC_COMPLIANCE_API_KEY"
3666```
3667 
3668##### Response (200)
3669 
3670```json
3671{
3672 "id": "cart_xyz789",
3673 "type": "code_artifact_deleted"
3674}
3675```
3676 
Feedback