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

User Profiles changedapi/beta/user_profiles

Nearest release: v2.1.245, published an hour after 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+68added
Lines−53removed
From line 1 where the diff opens
First seen 14 Aug 2026 this site's first read of the page
Recorded edits20to this page, all time

### Headers ### Body parameters #### Response (200) ### Query parameters ### Headers #### Response (200) ### Path parameters ### Headers #### Response (200) ### Path parameters ### Headers ### Body parameters #### Response (200) ### Path parameters ### Headers #### Response (200) ## Domain types ### Header Parameters ### Body Parameters #### Response ### Query Parameters ### Header Parameters #### Response ### Path Parameters ### Header Parameters #### Response ### Path Parameters ### Header Parameters ### Body Parameters #### Response ### Path Parameters ### Header Parameters #### Response ## Domain Types

The whole hunk

from line 1, old and new numbered
/
lines
from line 1
1---
2title: User Profiles
3url: https://platform.claude.com/docs/en/api/beta/user_profiles
4---
5 
61# User Profiles
72 
83## Create User Profile
94 
10**post** `/v1/user_profiles`
5**POST** `/v1/user_profiles`
116 
127Create User Profile
138 
14### Header Parameters
9### Headers
1510 
1611- `"anthropic-beta": optional array of AnthropicBeta`
1712 
from line 84
8984 
9085 - `"mid-conversation-tool-changes-2026-07-01"`
9186 
92### Body Parameters
87### Body parameters
9388 
9489- `access_type: optional "application" or "passthrough"`
9590 
from line 98
10398 
10499 Platform's own identifier for this user. Not enforced unique. Maximum 255 characters.
105100 
101 minLength: 1, maxLength: 255
102 
106103- `metadata: optional map[string]`
107104 
108105 Free-form key-value data to attach to this user profile. Maximum 16 keys, with keys up to 64 characters and values up to 512 characters. Values must be non-empty strings.
from line 108
111108 
112109 Optional for all profiles. Real-world name of the entity this profile represents (company or individual); for a resold-to company (`relationship` `resold` / `access_type` `passthrough`), that company's name where known. Maximum 255 characters.
113110 
111 minLength: 1, maxLength: 255
112 
114113- `relationship: optional "external" or "resold" or "internal"`
115114 
116115 How the entity behind a user profile relates to the platform that owns the API key. `external`: an individual end-user of the platform. `resold`: a company the platform resells Claude access to. `internal`: the platform's own usage.
from line 122
123122 
124123### Returns
125124 
126- `BetaUserProfile object { id, created_at, metadata, 7 more }`
125- `BetaUserProfile object`
127126 
128127 - `id: string`
129128 
from line 132
133132 
134133 A timestamp in RFC 3339 format
135134 
135 format: date-time
136 
136137 - `metadata: map[string]`
137138 
138139 Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
from line 156
155156 
156157 Object type. Always `user_profile`.
157158 
158 - `"user_profile"`
159 
160159 - `updated_at: string`
161160 
162161 A timestamp in RFC 3339 format
163162 
163 format: date-time
164 
164165 - `access_type: optional "application" or "passthrough"`
165166 
166167 How the platform uses the API on behalf of the entity this profile represents. `application`: the platform sells a product that uses the API behind the scenes, and the profile represents an individual end-user of that product. `passthrough`: the platform resells raw inference, and the profile identifies the resold-to company.
from line 190
189190 
190191### Example
191192 
192```http
193```bash
193194curl https://api.anthropic.com/v1/user_profiles \
194195 -H 'Content-Type: application/json' \
195196 -H 'anthropic-version: 2023-06-01' \
from line 202
201202 }'
202203```
203204 
204#### Response
205#### Response (200)
205206 
206207```json
207208{
from line 225
224225 
225226## List User Profiles
226227 
227**get** `/v1/user_profiles`
228**GET** `/v1/user_profiles`
228229 
229230List User Profiles
230231 
231### Query Parameters
232### Query parameters
232233 
233234- `limit: optional number`
234235 
235236 Query parameter for limit
236237 
238 format: int32
239 
237240- `order: optional "asc" or "desc"`
238241 
239242 Query parameter for order
from line 249
246249 
247250 Query parameter for page
248251 
249### Header Parameters
252### Headers
250253 
251254- `"anthropic-beta": optional array of AnthropicBeta`
252255 
from line 341
338341 
339342 A timestamp in RFC 3339 format
340343 
344 format: date-time
345 
341346 - `metadata: map[string]`
342347 
343348 Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
from line 365
360365 
361366 Object type. Always `user_profile`.
362367 
363 - `"user_profile"`
364 
365368 - `updated_at: string`
366369 
367370 A timestamp in RFC 3339 format
368371 
372 format: date-time
373 
369374 - `access_type: optional "application" or "passthrough"`
370375 
371376 How the platform uses the API on behalf of the entity this profile represents. `application`: the platform sells a product that uses the API behind the scenes, and the profile represents an individual end-user of that product. `passthrough`: the platform resells raw inference, and the profile identifies the resold-to company.
from line 403
398403 
399404### Example
400405 
401```http
406```bash
402407curl https://api.anthropic.com/v1/user_profiles \
403408 -H 'anthropic-version: 2023-06-01' \
404409 -H 'anthropic-beta: user-profiles-2026-08-18' \
from line 410
405410 -H "X-Api-Key: $ANTHROPIC_API_KEY"
406411```
407412 
408#### Response
413#### Response (200)
409414 
410415```json
411416{
from line 438
433438 
434439## Get User Profile
435440 
436**get** `/v1/user_profiles/{user_profile_id}`
441**GET** `/v1/user_profiles/{user_profile_id}`
437442 
438443Get User Profile
439444 
440### Path Parameters
445### Path parameters
441446 
442447- `user_profile_id: string`
443448 
444### Header Parameters
449### Headers
445450 
446451- `"anthropic-beta": optional array of AnthropicBeta`
447452 
from line 526
521526 
522527### Returns
523528 
524- `BetaUserProfile object { id, created_at, metadata, 7 more }`
529- `BetaUserProfile object`
525530 
526531 - `id: string`
527532 
from line 536
531536 
532537 A timestamp in RFC 3339 format
533538 
539 format: date-time
540 
534541 - `metadata: map[string]`
535542 
536543 Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
from line 560
553560 
554561 Object type. Always `user_profile`.
555562 
556 - `"user_profile"`
557 
558563 - `updated_at: string`
559564 
560565 A timestamp in RFC 3339 format
561566 
567 format: date-time
568 
562569 - `access_type: optional "application" or "passthrough"`
563570 
564571 How the platform uses the API on behalf of the entity this profile represents. `application`: the platform sells a product that uses the API behind the scenes, and the profile represents an individual end-user of that product. `passthrough`: the platform resells raw inference, and the profile identifies the resold-to company.
from line 594
587594 
588595### Example
589596 
590```http
597```bash
591598curl https://api.anthropic.com/v1/user_profiles/$USER_PROFILE_ID \
592599 -H 'anthropic-version: 2023-06-01' \
593600 -H 'anthropic-beta: user-profiles-2026-08-18' \
from line 601
594601 -H "X-Api-Key: $ANTHROPIC_API_KEY"
595602```
596603 
597#### Response
604#### Response (200)
598605 
599606```json
600607{
from line 624
617624 
618625## Update User Profile
619626 
620**post** `/v1/user_profiles/{user_profile_id}`
627**POST** `/v1/user_profiles/{user_profile_id}`
621628 
622629Update User Profile
623630 
624### Path Parameters
631### Path parameters
625632 
626633- `user_profile_id: string`
627634 
628### Header Parameters
635### Headers
629636 
630637- `"anthropic-beta": optional array of AnthropicBeta`
631638 
from line 710
703710 
704711 - `"mid-conversation-tool-changes-2026-07-01"`
705712 
706### Body Parameters
713### Body parameters
707714 
708715- `access_type: optional "application" or "passthrough" or null`
709716 
from line 724
717724 
718725 If present, replaces the stored external_id. Omit to leave unchanged. Maximum 255 characters.
719726 
727 minLength: 1, maxLength: 255
728 
720729- `metadata: optional map[string]`
721730 
722731 Key-value pairs to merge into the stored metadata. Keys provided overwrite existing values. To remove a key, set its value to an empty string. Keys not provided are left unchanged. Maximum 16 keys, with keys up to 64 characters and values up to 512 characters.
from line 734
725734 
726735 If present, replaces the stored name. Omit to leave unchanged. Maximum 255 characters.
727736 
737 minLength: 1, maxLength: 255
738 
728739- `relationship: optional "external" or "resold" or "internal" or null`
729740 
730741 How the entity behind a user profile relates to the platform that owns the API key. `external`: an individual end-user of the platform. `resold`: a company the platform resells Claude access to. `internal`: the platform's own usage.
from line 748
737748 
738749### Returns
739750 
740- `BetaUserProfile object { id, created_at, metadata, 7 more }`
751- `BetaUserProfile object`
741752 
742753 - `id: string`
743754 
from line 758
747758 
748759 A timestamp in RFC 3339 format
749760 
761 format: date-time
762 
750763 - `metadata: map[string]`
751764 
752765 Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
from line 782
769782 
770783 Object type. Always `user_profile`.
771784 
772 - `"user_profile"`
773 
774785 - `updated_at: string`
775786 
776787 A timestamp in RFC 3339 format
777788 
789 format: date-time
790 
778791 - `access_type: optional "application" or "passthrough"`
779792 
780793 How the platform uses the API on behalf of the entity this profile represents. `application`: the platform sells a product that uses the API behind the scenes, and the profile represents an individual end-user of that product. `passthrough`: the platform resells raw inference, and the profile identifies the resold-to company.
from line 816
803816 
804817### Example
805818 
806```http
819```bash
807820curl https://api.anthropic.com/v1/user_profiles/$USER_PROFILE_ID \
808821 -H 'Content-Type: application/json' \
809822 -H 'anthropic-version: 2023-06-01' \
from line 827
814827 }'
815828```
816829 
817#### Response
830#### Response (200)
818831 
819832```json
820833{
from line 850
837850 
838851## Create Enrollment URL
839852 
840**post** `/v1/user_profiles/{user_profile_id}/enrollment_url`
853**POST** `/v1/user_profiles/{user_profile_id}/enrollment_url`
841854 
842855Create Enrollment URL
843856 
844### Path Parameters
857### Path parameters
845858 
846859- `user_profile_id: string`
847860 
848### Header Parameters
861### Headers
849862 
850863- `"anthropic-beta": optional array of AnthropicBeta`
851864 
from line 938
925938 
926939### Returns
927940 
928- `BetaUserProfileEnrollmentURL object { expires_at, type, url }`
941- `BetaUserProfileEnrollmentURL object`
929942 
930943 - `expires_at: string`
931944 
932945 A timestamp in RFC 3339 format
933946 
947 format: date-time
948 
934949 - `type: "enrollment_url"`
935950 
936951 Object type. Always `enrollment_url`.
937952 
938 - `"enrollment_url"`
939 
940953 - `url: string`
941954 
942955 Enrollment URL to send to the end user. Valid until `expires_at`.
from line 956
943956 
944957### Example
945958 
946```http
959```bash
947960curl https://api.anthropic.com/v1/user_profiles/$USER_PROFILE_ID/enrollment_url \
948961 -X POST \
949962 -H 'anthropic-version: 2023-06-01' \
from line 964
951964 -H "X-Api-Key: $ANTHROPIC_API_KEY"
952965```
953966 
954#### Response
967#### Response (200)
955968 
956969```json
957970{
from line 974
961974}
962975```
963976 
964## Domain Types
977## Domain types
965978 
966979### Beta User Profile
967980 
968- `BetaUserProfile object { id, created_at, metadata, 7 more }`
981- `BetaUserProfile object`
969982 
970983 - `id: string`
971984 
from line 988
975988 
976989 A timestamp in RFC 3339 format
977990 
991 format: date-time
992 
978993 - `metadata: map[string]`
979994 
980995 Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
from line 1012
9971012 
9981013 Object type. Always `user_profile`.
9991014 
1000 - `"user_profile"`
1001 
10021015 - `updated_at: string`
10031016 
10041017 A timestamp in RFC 3339 format
10051018 
1019 format: date-time
1020 
10061021 - `access_type: optional "application" or "passthrough"`
10071022 
10081023 How the platform uses the API on behalf of the entity this profile represents. `application`: the platform sells a product that uses the API behind the scenes, and the profile represents an individual end-user of that product. `passthrough`: the platform resells raw inference, and the profile identifies the resold-to company.
from line 1046
10311046 
10321047### Beta User Profile Enrollment URL
10331048 
1034- `BetaUserProfileEnrollmentURL object { expires_at, type, url }`
1049- `BetaUserProfileEnrollmentURL object`
10351050 
10361051 - `expires_at: string`
10371052 
10381053 A timestamp in RFC 3339 format
10391054 
1055 format: date-time
1056 
10401057 - `type: "enrollment_url"`
10411058 
10421059 Object type. Always `enrollment_url`.
10431060 
1044 - `"enrollment_url"`
1045 
10461061 - `url: string`
10471062 
10481063 Enrollment URL to send to the end user. Valid until `expires_at`.
from line 1064
10491064 
10501065### Beta User Profile Trust Grant
10511066 
1052- `BetaUserProfileTrustGrant object { status }`
1067- `BetaUserProfileTrustGrant object`
10531068 
10541069 - `status: "active" or "pending" or "rejected"`
10551070 
Feedback