from line 1
1---
2title: Update User Profile
3url: https://platform.claude.com/docs/en/api/beta/user_profiles/update
4---
1# Update User Profile
52
6## Update User Profile
3**POST** `/v1/user_profiles/{user_profile_id}`
74
8**post** `/v1/user_profiles/{user_profile_id}`
9
105Update User Profile
116
12### Path Parameters
7## Path parameters
138
149- `user_profile_id: string`
1510
16### Header Parameters
11## Headers
1712
1813- `"anthropic-beta": optional array of AnthropicBeta`
1914
from line 86
9186
9287 - `"mid-conversation-tool-changes-2026-07-01"`
9388
94### Body Parameters
89## Body parameters
9590
9691- `access_type: optional "application" or "passthrough" or null`
9792
from line 100
105100
106101 If present, replaces the stored external_id. Omit to leave unchanged. Maximum 255 characters.
107102
103 minLength: 1, maxLength: 255
104
108105- `metadata: optional map[string]`
109106
110107 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 110
113110
114111 If present, replaces the stored name. Omit to leave unchanged. Maximum 255 characters.
115112
113 minLength: 1, maxLength: 255
114
116115- `relationship: optional "external" or "resold" or "internal" or null`
117116
118117 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 - `"internal"`
125124
126### Returns
125## Returns
127126
128- `BetaUserProfile object { id, created_at, metadata, 7 more }`
127- `BetaUserProfile object`
129128
130129 - `id: string`
131130
from line 134
135134
136135 A timestamp in RFC 3339 format
137136
137 format: date-time
138
138139 - `metadata: map[string]`
139140
140141 Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
from line 158
157158
158159 Object type. Always `user_profile`.
159160
160 - `"user_profile"`
161
162161 - `updated_at: string`
163162
164163 A timestamp in RFC 3339 format
165164
165 format: date-time
166
166167 - `access_type: optional "application" or "passthrough"`
167168
168169 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 - `"internal"`
191192
192### Example
193## Example
193194
194```http
195```bash
195196curl https://api.anthropic.com/v1/user_profiles/$USER_PROFILE_ID \
196197 -H 'Content-Type: application/json' \
197198 -H 'anthropic-version: 2023-06-01' \
from line 203
202203 }'
203204```
204205
205#### Response
206### Response (200)
206207
207208```json
208209{
No line in this hunk matches that.