Update User Profile changedapi/beta/user_profiles/update
Nearest release: v2.1.306, published 2 hours 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+24added
Lines−22removed
From line
25
where the diff opens
First seen
14 Aug 2026
this site's first read of the page
Recorded edits19to this page, all time
The whole hunk
from line 25, old and new numbered
/
from line 25
2525
2626- `"anthropic-beta": optional array of AnthropicBeta`
2727
28 This endpoint is in beta: requests must send `user-profiles-2026-03-24`, `user-profiles-2026-08-18`, or `user-profiles-2026-09-04` in this header.
28 Optional header to specify the beta version(s) you want to use.
2929
3030 - `string`
3131
from line 153
153153
154154- `external_id: optional string or null`
155155
156 If present, replaces the stored external_id. Omit to leave unchanged. Maximum 255 characters. Accepted under the `user-profiles-2026-03-24` and `user-profiles-2026-08-18` beta headers; under `user-profiles-2026-09-04` send `external_user_details.reference_id` instead.
156 If present, replaces the stored external_id. Omit to leave unchanged. Maximum 255 characters. Legacy field, accepted only under the `user-profiles-2026-03-24` and `user-profiles-2026-08-18` beta headers; without one of them, send `external_user_details.reference_id`.
157157
158158 minLength: 1, maxLength: 255
159159
160160- `external_user_details: optional BetaUserProfileExternalUserDetailsParams`
161161
162 Details about the entity this profile represents, as the platform states them. Each field sent replaces the stored value; omit a field to leave it unchanged. Once set, a value cannot be cleared and `null` is rejected. Accepted under the `user-profiles-2026-09-04` beta header only.
162 Details about the entity this profile represents, as the platform states them. Each field sent replaces the stored value; omit a field to leave it unchanged. Once set, a value cannot be cleared and `null` is rejected. Not accepted under the legacy `user-profiles-2026-03-24` and `user-profiles-2026-08-18` beta headers.
163163
164164 - `account_status: optional "active" or "suspended" or "blocked" or null`
165165
from line 219
219219
220220- `external_user_onboarded_at: optional string`
221221
222 If present, replaces the stored account creation time. Omit to leave unchanged; once set, the value cannot be cleared and `null` is rejected. Must be a complete RFC 3339 timestamp no more than 1 minute in the future. Accepted under the `user-profiles-2026-08-18` beta header; under `user-profiles-2026-09-04` send `external_user_details.onboarded_at` instead.
222 If present, replaces the stored account creation time. Omit to leave unchanged; once set, the value cannot be cleared and `null` is rejected. Must be a complete RFC 3339 timestamp no more than 1 minute in the future. Legacy field, accepted only under the `user-profiles-2026-08-18` beta header; without a legacy header, send `external_user_details.onboarded_at`.
223223
224224 format: date-time
225225
from line 259
259259
260260 Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
261261
262 - `name: string or null`
263
264 Real-world name of the entity this profile represents (company or individual). For a company the platform resells Claude access to (`access_type` `passthrough`) this is that company's name. `null` until the platform supplies one.
265
262266 - `trust_grants: map[BetaUserProfileTrustGrant]`
263267
264268 Trust grants for this profile, keyed by grant name. Key omitted when no grant is active or in flight.
from line 279
275279
276280 - `updated_at: string`
277281
278 When this user profile was last modified, in RFC 3339 format. Trust-grant status changes also bump this timestamp.
282 When this user profile was last modified, in RFC 3339 format. It normally also updates shortly after Anthropic gives the profile an approval or withdraws one. Other changes to the statuses that Anthropic reports do not always update it, so read the status itself rather than watching this timestamp.
279283
280284 format: date-time
281285
282286 - `access_type: optional "application" or "passthrough"`
283287
284 How the platform uses the API for this entity: `application` (default) or `passthrough`. Present under the `user-profiles-2026-08-18` and later beta headers.
288 How the platform uses the API for this entity: `application` (default) or `passthrough`. Absent under the legacy `user-profiles-2026-03-24` beta header.
285289
286290 - `"application"`
287291
from line 297
293297
294298 - `external_id: optional string or null`
295299
296 Platform's own identifier for this user. Not enforced unique. Present under the `user-profiles-2026-03-24` and `user-profiles-2026-08-18` beta headers; under `user-profiles-2026-09-04` the value is `external_user_details.reference_id`.
300 Platform's own identifier for this user. Not enforced unique. Legacy field, present only under the `user-profiles-2026-03-24` and `user-profiles-2026-08-18` beta headers; without one of them, the value is `external_user_details.reference_id`.
297301
298302 - `external_user_details: optional BetaUserProfileExternalUserDetails`
299303
300 Details about the entity this profile represents, as the platform states them; not verified by Anthropic. Present under the `user-profiles-2026-09-04` beta header, with every field present and `null` until the platform supplies a value; the earlier beta headers serve `reference_id` as the top-level `external_id`, and `user-profiles-2026-08-18` serves `onboarded_at` as `external_user_onboarded_at`.
304 Details about the entity this profile represents, as the platform states them; not verified by Anthropic. Every field is present, `null` until the platform supplies a value. Absent under the legacy `user-profiles-2026-03-24` and `user-profiles-2026-08-18` beta headers, which serve `reference_id` as the top-level `external_id` and, under `user-profiles-2026-08-18`, `onboarded_at` as `external_user_onboarded_at`.
301305
302306 - `account_status: "active" or "suspended" or "blocked" or null`
303307
from line 355
351355
352356 - `external_user_onboarded_at: optional string or null`
353357
354 When the entity this profile represents opened its account with the platform, as stated by the platform, in RFC 3339 format (UTC). `null` until the platform supplies one. Present under the `user-profiles-2026-08-18` beta header; under `user-profiles-2026-09-04` the value is `external_user_details.onboarded_at`.
358 When the entity this profile represents opened its account with the platform, as stated by the platform, in RFC 3339 format (UTC). `null` until the platform supplies one. Legacy field, present only under the `user-profiles-2026-08-18` beta header; without a legacy header, the value is `external_user_details.onboarded_at`.
355359
356360 format: date-time
357361
358 - `name: optional string or null`
359
360 Real-world name of the entity this profile represents (company or individual). For a company the platform resells Claude access to (`access_type` `passthrough`) this is that company's name.
361
362362## Example
363363
364364```bash
from line 368
368368 -H 'anthropic-beta: user-profiles-2026-08-18' \
369369 -H "X-Api-Key: $ANTHROPIC_API_KEY" \
370370 -d '{
371 "external_id": "user_12345"
371 "external_user_details": {
372 "account_status": "suspended"
373 }
372374 }'
373375```
374376
from line 381
379381 "id": "uprof_011CZkZCu8hGbp5mYRQgUmz9",
380382 "created_at": "2026-03-15T10:00:00Z",
381383 "metadata": {},
384 "name": "Example User",
382385 "trust_grants": {
383386 "cyber": {
384387 "status": "active"
from line 393
390393 "external_id": "user_12345",
391394 "external_user_details": {
392395 "account_status": "active",
393 "country": "country",
394 "email_hash": "email_hash",
395 "entity_type": "individual",
396 "name_hash": "name_hash",
397 "onboarded_at": "2019-12-27T18:11:19.117Z",
398 "reference_id": "reference_id"
396 "country": "US",
397 "email_hash": null,
398 "entity_type": "business",
399 "name_hash": null,
400 "onboarded_at": "2024-11-02T08:15:00Z",
401 "reference_id": "user_12345"
399402 },
400 "external_user_onboarded_at": "2024-11-02T08:15:00Z",
401 "name": "Example User"
403 "external_user_onboarded_at": "2024-11-02T08:15:00Z"
402404}
403405```
404406
No line in this hunk matches that.