SPB Git

Repository Public

user_profiles.md 44.5 KB 1,682 lines markdown

1---2title: User Profiles3url: https://platform.claude.com/docs/en/api/beta/user_profiles4---56# User Profiles78## Create User Profile910**POST** `/v1/user_profiles`1112Create User Profile1314### Headers1516- `"anthropic-beta": optional array of AnthropicBeta`1718  Optional header to specify the beta version(s) you want to use.1920  - `string`2122  - `"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more`2324    - `"message-batches-2024-09-24"`2526    - `"prompt-caching-2024-07-31"`2728    - `"computer-use-2024-10-22"`2930    - `"computer-use-2025-01-24"`3132    - `"pdfs-2024-09-25"`3334    - `"token-counting-2024-11-01"`3536    - `"token-efficient-tools-2025-02-19"`3738    - `"output-128k-2025-02-19"`3940    - `"files-api-2025-04-14"`4142    - `"mcp-client-2025-04-04"`4344    - `"mcp-client-2025-11-20"`4546    - `"dev-full-thinking-2025-05-14"`4748    - `"interleaved-thinking-2025-05-14"`4950    - `"code-execution-2025-05-22"`5152    - `"extended-cache-ttl-2025-04-11"`5354    - `"context-1m-2025-08-07"`5556    - `"context-management-2025-06-27"`5758    - `"model-context-window-exceeded-2025-08-26"`5960    - `"skills-2025-10-02"`6162    - `"fast-mode-2026-02-01"`6364    - `"output-300k-2026-03-24"`6566    - `"user-profiles-2026-03-24"`6768    - `"user-profiles-2026-08-18"`6970    - `"user-profiles-2026-09-04"`7172    - `"advisor-tool-2026-03-01"`7374    - `"managed-agents-2026-04-01"`7576    - `"cache-diagnosis-2026-04-07"`7778    - `"dreaming-2026-04-21"`7980    - `"thinking-token-count-2026-05-13"`8182    - `"server-side-fallback-2026-06-01"`8384    - `"server-side-fallback-2026-07-01"`8586    - `"fallback-credit-2026-06-01"`8788    - `"fallback-credit-2026-07-01"`8990    - `"agent-memory-2026-07-22"`9192    - `"mid-conversation-tool-changes-2026-07-01"`9394    - `"compact-2026-01-12"`9596    - `"computer-use-2025-11-24"`9798    - `"mcp-tunnels-2026-06-22"`99100    - `"structured-outputs-2025-11-13"`101102    - `"task-budgets-2026-03-13"`103104    - `"thinking-display-updates-2026-08-18"`105106    - `"ce-user-management-2026-07-13"`107108    - `"mid-conversation-output-config-2026-07-01"`109110    - `"thinking-binding-controls-2026-08-01"`111112    - `"mid-conversation-system-clear-at-2026-08-21"`113114    - `"compact-2026-09-04"`115116- `"anthropic-workspace-id": optional string`117118### Body parameters119120- `access_type: optional "application" or "passthrough"`121122  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.123124  - `"application"`125126  - `"passthrough"`127128- `external_id: optional string or null`129130  Platform's own identifier for this user. Not enforced unique. 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.131132  minLength: 1, maxLength: 255133134- `external_user_details: optional BetaUserProfileExternalUserDetailsParams`135136  Details about the entity this profile represents, as the platform states them. Every field is optional. Accepted under the `user-profiles-2026-09-04` beta header only.137138  - `account_status: optional "active" or "suspended" or "blocked" or null`139140    The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.141142    - `"active"`143144    - `"suspended"`145146    - `"blocked"`147148  - `country: optional string or null`149150    The country of the entity (not of the platform), as the platform determines it: an ISO 3166-1 alpha-2 code in upper case, for example `US`. Only the form, two uppercase ASCII letters, is checked.151152  - `email_hash: optional string or null`153154    A hash of the entity's email address, computed by the platform. Anthropic treats it as an opaque string and does not prescribe the hash function. 1 to 255 characters.155156    minLength: 1, maxLength: 255157158  - `entity_type: optional "individual" or "business" or "non_profit" or "government" or null`159160    What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.161162    - `"individual"`163164    - `"business"`165166    - `"non_profit"`167168    - `"government"`169170  - `name_hash: optional string or null`171172    A hash of the entity's name, computed by the platform. Anthropic treats it as an opaque string and does not prescribe the hash function. 1 to 255 characters.173174    minLength: 1, maxLength: 255175176  - `onboarded_at: optional string`177178    A timestamp in RFC 3339 format179180    format: date-time181182  - `reference_id: optional string or null`183184    The platform's own reference for the entity, for example the key of the end-user's row in the platform's database. Not interpreted by Anthropic and not enforced unique. 1 to 255 characters.185186    minLength: 1, maxLength: 255187188- `external_user_onboarded_at: optional string`189190  A timestamp in RFC 3339 format191192  format: date-time193194- `metadata: optional map[string]`195196  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.197198- `name: optional string or null`199200  Optional for all profiles. Real-world name of the entity this profile represents (company or individual); for a company the platform resells Claude access to (`access_type` `passthrough`), that company's name where known. Maximum 255 characters.201202  minLength: 1, maxLength: 255203204### Returns205206- `BetaUserProfile object`207208  - `type: "user_profile"`209210    Object type. Always `user_profile`.211212  - `id: string`213214    Unique identifier for this user profile, prefixed `uprof_`.215216  - `created_at: string`217218    A timestamp in RFC 3339 format219220    format: date-time221222  - `metadata: map[string]`223224    Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.225226  - `trust_grants: map[BetaUserProfileTrustGrant]`227228    Trust grants for this profile, keyed by grant name. Key omitted when no grant is active or in flight.229230    - `status: "active" or "pending" or "rejected"`231232      Status of the trust grant.233234      - `"active"`235236      - `"pending"`237238      - `"rejected"`239240  - `updated_at: string`241242    A timestamp in RFC 3339 format243244    format: date-time245246  - `access_type: optional "application" or "passthrough"`247248    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.249250    - `"application"`251252    - `"passthrough"`253254  - `external_id: optional string or null`255256    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`.257258  - `external_user_details: optional BetaUserProfileExternalUserDetails`259260    Details about the entity this profile represents, as the platform states them. Anthropic does not verify them. Every field is present, `null` until the platform supplies a value.261262    - `account_status: "active" or "suspended" or "blocked" or null`263264      The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.265266      - `"active"`267268      - `"suspended"`269270      - `"blocked"`271272    - `country: string or null`273274      The country the platform associates with the entity, as an ISO 3166-1 alpha-2 code. `null` until the platform supplies one.275276    - `email_hash: string or null`277278      The platform-computed hash of the entity's email address. `null` until the platform supplies one.279280    - `entity_type: "individual" or "business" or "non_profit" or "government" or null`281282      What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.283284      - `"individual"`285286      - `"business"`287288      - `"non_profit"`289290      - `"government"`291292    - `name_hash: string or null`293294      The platform-computed hash of the entity's name. `null` until the platform supplies one.295296    - `onboarded_at: string or null`297298      A timestamp in RFC 3339 format299300      format: date-time301302    - `reference_id: string or null`303304      The platform's own reference for the entity. `null` until the platform supplies one.305306  - `external_user_onboarded_at: optional string or null`307308    A timestamp in RFC 3339 format309310    format: date-time311312  - `name: optional string or null`313314    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.315316### Example317318```bash319curl https://api.anthropic.com/v1/user_profiles \320    -H 'Content-Type: application/json' \321    -H 'anthropic-version: 2023-06-01' \322    -H 'anthropic-beta: user-profiles-2026-08-18' \323    -H "X-Api-Key: $ANTHROPIC_API_KEY" \324    -d '{325          "external_id": "user_12345",326          "external_user_onboarded_at": "2024-11-02T08:15:00Z",327          "metadata": {}328        }'329```330331#### Response (200)332333```json334{335  "id": "uprof_011CZkZCu8hGbp5mYRQgUmz9",336  "created_at": "2026-03-15T10:00:00Z",337  "metadata": {},338  "trust_grants": {339    "cyber": {340      "status": "active"341    }342  },343  "type": "user_profile",344  "updated_at": "2026-03-15T10:00:00Z",345  "access_type": "application",346  "external_id": "user_12345",347  "external_user_details": {348    "account_status": "active",349    "country": "country",350    "email_hash": "email_hash",351    "entity_type": "individual",352    "name_hash": "name_hash",353    "onboarded_at": "2019-12-27T18:11:19.117Z",354    "reference_id": "reference_id"355  },356  "external_user_onboarded_at": "2024-11-02T08:15:00Z",357  "name": "Example User"358}359```360361## List User Profiles362363**GET** `/v1/user_profiles`364365List User Profiles366367### Query parameters368369- `limit: optional number`370371  Query parameter for limit372373  format: int32374375- `order: optional "asc" or "desc"`376377  Query parameter for order378379  - `"asc"`380381  - `"desc"`382383- `order_by: optional "created_at" or "name"`384385  Query parameter for order_by386387  - `"created_at"`388389  - `"name"`390391- `page: optional string`392393  Query parameter for page394395### Headers396397- `"anthropic-beta": optional array of AnthropicBeta`398399  Optional header to specify the beta version(s) you want to use.400401  - `string`402403  - `"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more`404405    - `"message-batches-2024-09-24"`406407    - `"prompt-caching-2024-07-31"`408409    - `"computer-use-2024-10-22"`410411    - `"computer-use-2025-01-24"`412413    - `"pdfs-2024-09-25"`414415    - `"token-counting-2024-11-01"`416417    - `"token-efficient-tools-2025-02-19"`418419    - `"output-128k-2025-02-19"`420421    - `"files-api-2025-04-14"`422423    - `"mcp-client-2025-04-04"`424425    - `"mcp-client-2025-11-20"`426427    - `"dev-full-thinking-2025-05-14"`428429    - `"interleaved-thinking-2025-05-14"`430431    - `"code-execution-2025-05-22"`432433    - `"extended-cache-ttl-2025-04-11"`434435    - `"context-1m-2025-08-07"`436437    - `"context-management-2025-06-27"`438439    - `"model-context-window-exceeded-2025-08-26"`440441    - `"skills-2025-10-02"`442443    - `"fast-mode-2026-02-01"`444445    - `"output-300k-2026-03-24"`446447    - `"user-profiles-2026-03-24"`448449    - `"user-profiles-2026-08-18"`450451    - `"user-profiles-2026-09-04"`452453    - `"advisor-tool-2026-03-01"`454455    - `"managed-agents-2026-04-01"`456457    - `"cache-diagnosis-2026-04-07"`458459    - `"dreaming-2026-04-21"`460461    - `"thinking-token-count-2026-05-13"`462463    - `"server-side-fallback-2026-06-01"`464465    - `"server-side-fallback-2026-07-01"`466467    - `"fallback-credit-2026-06-01"`468469    - `"fallback-credit-2026-07-01"`470471    - `"agent-memory-2026-07-22"`472473    - `"mid-conversation-tool-changes-2026-07-01"`474475    - `"compact-2026-01-12"`476477    - `"computer-use-2025-11-24"`478479    - `"mcp-tunnels-2026-06-22"`480481    - `"structured-outputs-2025-11-13"`482483    - `"task-budgets-2026-03-13"`484485    - `"thinking-display-updates-2026-08-18"`486487    - `"ce-user-management-2026-07-13"`488489    - `"mid-conversation-output-config-2026-07-01"`490491    - `"thinking-binding-controls-2026-08-01"`492493    - `"mid-conversation-system-clear-at-2026-08-21"`494495    - `"compact-2026-09-04"`496497- `"anthropic-workspace-id": optional string`498499### Returns500501- `data: array of BetaUserProfile`502503  User profiles on this page.504505  - `type: "user_profile"`506507    Object type. Always `user_profile`.508509  - `id: string`510511    Unique identifier for this user profile, prefixed `uprof_`.512513  - `created_at: string`514515    A timestamp in RFC 3339 format516517    format: date-time518519  - `metadata: map[string]`520521    Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.522523  - `trust_grants: map[BetaUserProfileTrustGrant]`524525    Trust grants for this profile, keyed by grant name. Key omitted when no grant is active or in flight.526527    - `status: "active" or "pending" or "rejected"`528529      Status of the trust grant.530531      - `"active"`532533      - `"pending"`534535      - `"rejected"`536537  - `updated_at: string`538539    A timestamp in RFC 3339 format540541    format: date-time542543  - `access_type: optional "application" or "passthrough"`544545    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.546547    - `"application"`548549    - `"passthrough"`550551  - `external_id: optional string or null`552553    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`.554555  - `external_user_details: optional BetaUserProfileExternalUserDetails`556557    Details about the entity this profile represents, as the platform states them. Anthropic does not verify them. Every field is present, `null` until the platform supplies a value.558559    - `account_status: "active" or "suspended" or "blocked" or null`560561      The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.562563      - `"active"`564565      - `"suspended"`566567      - `"blocked"`568569    - `country: string or null`570571      The country the platform associates with the entity, as an ISO 3166-1 alpha-2 code. `null` until the platform supplies one.572573    - `email_hash: string or null`574575      The platform-computed hash of the entity's email address. `null` until the platform supplies one.576577    - `entity_type: "individual" or "business" or "non_profit" or "government" or null`578579      What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.580581      - `"individual"`582583      - `"business"`584585      - `"non_profit"`586587      - `"government"`588589    - `name_hash: string or null`590591      The platform-computed hash of the entity's name. `null` until the platform supplies one.592593    - `onboarded_at: string or null`594595      A timestamp in RFC 3339 format596597      format: date-time598599    - `reference_id: string or null`600601      The platform's own reference for the entity. `null` until the platform supplies one.602603  - `external_user_onboarded_at: optional string or null`604605    A timestamp in RFC 3339 format606607    format: date-time608609  - `name: optional string or null`610611    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.612613- `next_page: string or null`614615  Cursor for the next page, or `null` when there are no more results.616617### Example618619```bash620curl https://api.anthropic.com/v1/user_profiles \621    -H 'anthropic-version: 2023-06-01' \622    -H 'anthropic-beta: user-profiles-2026-08-18' \623    -H "X-Api-Key: $ANTHROPIC_API_KEY"624```625626#### Response (200)627628```json629{630  "data": [631    {632      "id": "uprof_011CZkZCu8hGbp5mYRQgUmz9",633      "created_at": "2026-03-15T10:00:00Z",634      "metadata": {},635      "trust_grants": {636        "cyber": {637          "status": "active"638        }639      },640      "type": "user_profile",641      "updated_at": "2026-03-15T10:00:00Z",642      "access_type": "application",643      "external_id": "user_12345",644      "external_user_details": {645        "account_status": "active",646        "country": "country",647        "email_hash": "email_hash",648        "entity_type": "individual",649        "name_hash": "name_hash",650        "onboarded_at": "2019-12-27T18:11:19.117Z",651        "reference_id": "reference_id"652      },653      "external_user_onboarded_at": "2024-11-02T08:15:00Z",654      "name": "Example User"655    }656  ],657  "next_page": "page_MjAyNS0wNS0xNFQwMDowMDowMFo="658}659```660661## Get User Profile662663**GET** `/v1/user_profiles/{user_profile_id}`664665Get User Profile666667### Path parameters668669- `user_profile_id: string`670671### Headers672673- `"anthropic-beta": optional array of AnthropicBeta`674675  Optional header to specify the beta version(s) you want to use.676677  - `string`678679  - `"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more`680681    - `"message-batches-2024-09-24"`682683    - `"prompt-caching-2024-07-31"`684685    - `"computer-use-2024-10-22"`686687    - `"computer-use-2025-01-24"`688689    - `"pdfs-2024-09-25"`690691    - `"token-counting-2024-11-01"`692693    - `"token-efficient-tools-2025-02-19"`694695    - `"output-128k-2025-02-19"`696697    - `"files-api-2025-04-14"`698699    - `"mcp-client-2025-04-04"`700701    - `"mcp-client-2025-11-20"`702703    - `"dev-full-thinking-2025-05-14"`704705    - `"interleaved-thinking-2025-05-14"`706707    - `"code-execution-2025-05-22"`708709    - `"extended-cache-ttl-2025-04-11"`710711    - `"context-1m-2025-08-07"`712713    - `"context-management-2025-06-27"`714715    - `"model-context-window-exceeded-2025-08-26"`716717    - `"skills-2025-10-02"`718719    - `"fast-mode-2026-02-01"`720721    - `"output-300k-2026-03-24"`722723    - `"user-profiles-2026-03-24"`724725    - `"user-profiles-2026-08-18"`726727    - `"user-profiles-2026-09-04"`728729    - `"advisor-tool-2026-03-01"`730731    - `"managed-agents-2026-04-01"`732733    - `"cache-diagnosis-2026-04-07"`734735    - `"dreaming-2026-04-21"`736737    - `"thinking-token-count-2026-05-13"`738739    - `"server-side-fallback-2026-06-01"`740741    - `"server-side-fallback-2026-07-01"`742743    - `"fallback-credit-2026-06-01"`744745    - `"fallback-credit-2026-07-01"`746747    - `"agent-memory-2026-07-22"`748749    - `"mid-conversation-tool-changes-2026-07-01"`750751    - `"compact-2026-01-12"`752753    - `"computer-use-2025-11-24"`754755    - `"mcp-tunnels-2026-06-22"`756757    - `"structured-outputs-2025-11-13"`758759    - `"task-budgets-2026-03-13"`760761    - `"thinking-display-updates-2026-08-18"`762763    - `"ce-user-management-2026-07-13"`764765    - `"mid-conversation-output-config-2026-07-01"`766767    - `"thinking-binding-controls-2026-08-01"`768769    - `"mid-conversation-system-clear-at-2026-08-21"`770771    - `"compact-2026-09-04"`772773- `"anthropic-workspace-id": optional string`774775### Returns776777- `BetaUserProfile object`778779  - `type: "user_profile"`780781    Object type. Always `user_profile`.782783  - `id: string`784785    Unique identifier for this user profile, prefixed `uprof_`.786787  - `created_at: string`788789    A timestamp in RFC 3339 format790791    format: date-time792793  - `metadata: map[string]`794795    Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.796797  - `trust_grants: map[BetaUserProfileTrustGrant]`798799    Trust grants for this profile, keyed by grant name. Key omitted when no grant is active or in flight.800801    - `status: "active" or "pending" or "rejected"`802803      Status of the trust grant.804805      - `"active"`806807      - `"pending"`808809      - `"rejected"`810811  - `updated_at: string`812813    A timestamp in RFC 3339 format814815    format: date-time816817  - `access_type: optional "application" or "passthrough"`818819    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.820821    - `"application"`822823    - `"passthrough"`824825  - `external_id: optional string or null`826827    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`.828829  - `external_user_details: optional BetaUserProfileExternalUserDetails`830831    Details about the entity this profile represents, as the platform states them. Anthropic does not verify them. Every field is present, `null` until the platform supplies a value.832833    - `account_status: "active" or "suspended" or "blocked" or null`834835      The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.836837      - `"active"`838839      - `"suspended"`840841      - `"blocked"`842843    - `country: string or null`844845      The country the platform associates with the entity, as an ISO 3166-1 alpha-2 code. `null` until the platform supplies one.846847    - `email_hash: string or null`848849      The platform-computed hash of the entity's email address. `null` until the platform supplies one.850851    - `entity_type: "individual" or "business" or "non_profit" or "government" or null`852853      What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.854855      - `"individual"`856857      - `"business"`858859      - `"non_profit"`860861      - `"government"`862863    - `name_hash: string or null`864865      The platform-computed hash of the entity's name. `null` until the platform supplies one.866867    - `onboarded_at: string or null`868869      A timestamp in RFC 3339 format870871      format: date-time872873    - `reference_id: string or null`874875      The platform's own reference for the entity. `null` until the platform supplies one.876877  - `external_user_onboarded_at: optional string or null`878879    A timestamp in RFC 3339 format880881    format: date-time882883  - `name: optional string or null`884885    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.886887### Example888889```bash890curl https://api.anthropic.com/v1/user_profiles/$USER_PROFILE_ID \891    -H 'anthropic-version: 2023-06-01' \892    -H 'anthropic-beta: user-profiles-2026-08-18' \893    -H "X-Api-Key: $ANTHROPIC_API_KEY"894```895896#### Response (200)897898```json899{900  "id": "uprof_011CZkZCu8hGbp5mYRQgUmz9",901  "created_at": "2026-03-15T10:00:00Z",902  "metadata": {},903  "trust_grants": {904    "cyber": {905      "status": "active"906    }907  },908  "type": "user_profile",909  "updated_at": "2026-03-15T10:00:00Z",910  "access_type": "application",911  "external_id": "user_12345",912  "external_user_details": {913    "account_status": "active",914    "country": "country",915    "email_hash": "email_hash",916    "entity_type": "individual",917    "name_hash": "name_hash",918    "onboarded_at": "2019-12-27T18:11:19.117Z",919    "reference_id": "reference_id"920  },921  "external_user_onboarded_at": "2024-11-02T08:15:00Z",922  "name": "Example User"923}924```925926## Update User Profile927928**POST** `/v1/user_profiles/{user_profile_id}`929930Update User Profile931932### Path parameters933934- `user_profile_id: string`935936### Headers937938- `"anthropic-beta": optional array of AnthropicBeta`939940  Optional header to specify the beta version(s) you want to use.941942  - `string`943944  - `"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more`945946    - `"message-batches-2024-09-24"`947948    - `"prompt-caching-2024-07-31"`949950    - `"computer-use-2024-10-22"`951952    - `"computer-use-2025-01-24"`953954    - `"pdfs-2024-09-25"`955956    - `"token-counting-2024-11-01"`957958    - `"token-efficient-tools-2025-02-19"`959960    - `"output-128k-2025-02-19"`961962    - `"files-api-2025-04-14"`963964    - `"mcp-client-2025-04-04"`965966    - `"mcp-client-2025-11-20"`967968    - `"dev-full-thinking-2025-05-14"`969970    - `"interleaved-thinking-2025-05-14"`971972    - `"code-execution-2025-05-22"`973974    - `"extended-cache-ttl-2025-04-11"`975976    - `"context-1m-2025-08-07"`977978    - `"context-management-2025-06-27"`979980    - `"model-context-window-exceeded-2025-08-26"`981982    - `"skills-2025-10-02"`983984    - `"fast-mode-2026-02-01"`985986    - `"output-300k-2026-03-24"`987988    - `"user-profiles-2026-03-24"`989990    - `"user-profiles-2026-08-18"`991992    - `"user-profiles-2026-09-04"`993994    - `"advisor-tool-2026-03-01"`995996    - `"managed-agents-2026-04-01"`997998    - `"cache-diagnosis-2026-04-07"`9991000    - `"dreaming-2026-04-21"`10011002    - `"thinking-token-count-2026-05-13"`10031004    - `"server-side-fallback-2026-06-01"`10051006    - `"server-side-fallback-2026-07-01"`10071008    - `"fallback-credit-2026-06-01"`10091010    - `"fallback-credit-2026-07-01"`10111012    - `"agent-memory-2026-07-22"`10131014    - `"mid-conversation-tool-changes-2026-07-01"`10151016    - `"compact-2026-01-12"`10171018    - `"computer-use-2025-11-24"`10191020    - `"mcp-tunnels-2026-06-22"`10211022    - `"structured-outputs-2025-11-13"`10231024    - `"task-budgets-2026-03-13"`10251026    - `"thinking-display-updates-2026-08-18"`10271028    - `"ce-user-management-2026-07-13"`10291030    - `"mid-conversation-output-config-2026-07-01"`10311032    - `"thinking-binding-controls-2026-08-01"`10331034    - `"mid-conversation-system-clear-at-2026-08-21"`10351036    - `"compact-2026-09-04"`10371038- `"anthropic-workspace-id": optional string`10391040### Body parameters10411042- `access_type: optional "application" or "passthrough" or null`10431044  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.10451046  - `"application"`10471048  - `"passthrough"`10491050- `external_id: optional string or null`10511052  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.10531054  minLength: 1, maxLength: 25510551056- `external_user_details: optional BetaUserProfileExternalUserDetailsParams`10571058  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.10591060  - `account_status: optional "active" or "suspended" or "blocked" or null`10611062    The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.10631064    - `"active"`10651066    - `"suspended"`10671068    - `"blocked"`10691070  - `country: optional string or null`10711072    The country of the entity (not of the platform), as the platform determines it: an ISO 3166-1 alpha-2 code in upper case, for example `US`. Only the form, two uppercase ASCII letters, is checked.10731074  - `email_hash: optional string or null`10751076    A hash of the entity's email address, computed by the platform. Anthropic treats it as an opaque string and does not prescribe the hash function. 1 to 255 characters.10771078    minLength: 1, maxLength: 25510791080  - `entity_type: optional "individual" or "business" or "non_profit" or "government" or null`10811082    What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.10831084    - `"individual"`10851086    - `"business"`10871088    - `"non_profit"`10891090    - `"government"`10911092  - `name_hash: optional string or null`10931094    A hash of the entity's name, computed by the platform. Anthropic treats it as an opaque string and does not prescribe the hash function. 1 to 255 characters.10951096    minLength: 1, maxLength: 25510971098  - `onboarded_at: optional string`10991100    A timestamp in RFC 3339 format11011102    format: date-time11031104  - `reference_id: optional string or null`11051106    The platform's own reference for the entity, for example the key of the end-user's row in the platform's database. Not interpreted by Anthropic and not enforced unique. 1 to 255 characters.11071108    minLength: 1, maxLength: 25511091110- `external_user_onboarded_at: optional string`11111112  A timestamp in RFC 3339 format11131114  format: date-time11151116- `metadata: optional map[string]`11171118  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.11191120- `name: optional string or null`11211122  If present, replaces the stored name. Omit to leave unchanged. Maximum 255 characters.11231124  minLength: 1, maxLength: 25511251126### Returns11271128- `BetaUserProfile object`11291130  - `type: "user_profile"`11311132    Object type. Always `user_profile`.11331134  - `id: string`11351136    Unique identifier for this user profile, prefixed `uprof_`.11371138  - `created_at: string`11391140    A timestamp in RFC 3339 format11411142    format: date-time11431144  - `metadata: map[string]`11451146    Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.11471148  - `trust_grants: map[BetaUserProfileTrustGrant]`11491150    Trust grants for this profile, keyed by grant name. Key omitted when no grant is active or in flight.11511152    - `status: "active" or "pending" or "rejected"`11531154      Status of the trust grant.11551156      - `"active"`11571158      - `"pending"`11591160      - `"rejected"`11611162  - `updated_at: string`11631164    A timestamp in RFC 3339 format11651166    format: date-time11671168  - `access_type: optional "application" or "passthrough"`11691170    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.11711172    - `"application"`11731174    - `"passthrough"`11751176  - `external_id: optional string or null`11771178    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`.11791180  - `external_user_details: optional BetaUserProfileExternalUserDetails`11811182    Details about the entity this profile represents, as the platform states them. Anthropic does not verify them. Every field is present, `null` until the platform supplies a value.11831184    - `account_status: "active" or "suspended" or "blocked" or null`11851186      The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.11871188      - `"active"`11891190      - `"suspended"`11911192      - `"blocked"`11931194    - `country: string or null`11951196      The country the platform associates with the entity, as an ISO 3166-1 alpha-2 code. `null` until the platform supplies one.11971198    - `email_hash: string or null`11991200      The platform-computed hash of the entity's email address. `null` until the platform supplies one.12011202    - `entity_type: "individual" or "business" or "non_profit" or "government" or null`12031204      What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.12051206      - `"individual"`12071208      - `"business"`12091210      - `"non_profit"`12111212      - `"government"`12131214    - `name_hash: string or null`12151216      The platform-computed hash of the entity's name. `null` until the platform supplies one.12171218    - `onboarded_at: string or null`12191220      A timestamp in RFC 3339 format12211222      format: date-time12231224    - `reference_id: string or null`12251226      The platform's own reference for the entity. `null` until the platform supplies one.12271228  - `external_user_onboarded_at: optional string or null`12291230    A timestamp in RFC 3339 format12311232    format: date-time12331234  - `name: optional string or null`12351236    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.12371238### Example12391240```bash1241curl https://api.anthropic.com/v1/user_profiles/$USER_PROFILE_ID \1242    -H 'Content-Type: application/json' \1243    -H 'anthropic-version: 2023-06-01' \1244    -H 'anthropic-beta: user-profiles-2026-08-18' \1245    -H "X-Api-Key: $ANTHROPIC_API_KEY" \1246    -d '{1247          "external_id": "user_12345"1248        }'1249```12501251#### Response (200)12521253```json1254{1255  "id": "uprof_011CZkZCu8hGbp5mYRQgUmz9",1256  "created_at": "2026-03-15T10:00:00Z",1257  "metadata": {},1258  "trust_grants": {1259    "cyber": {1260      "status": "active"1261    }1262  },1263  "type": "user_profile",1264  "updated_at": "2026-03-15T10:00:00Z",1265  "access_type": "application",1266  "external_id": "user_12345",1267  "external_user_details": {1268    "account_status": "active",1269    "country": "country",1270    "email_hash": "email_hash",1271    "entity_type": "individual",1272    "name_hash": "name_hash",1273    "onboarded_at": "2019-12-27T18:11:19.117Z",1274    "reference_id": "reference_id"1275  },1276  "external_user_onboarded_at": "2024-11-02T08:15:00Z",1277  "name": "Example User"1278}1279```12801281## Create Enrollment URL12821283**POST** `/v1/user_profiles/{user_profile_id}/enrollment_url`12841285Create Enrollment URL12861287### Path parameters12881289- `user_profile_id: string`12901291### Headers12921293- `"anthropic-beta": optional array of AnthropicBeta`12941295  Optional header to specify the beta version(s) you want to use.12961297  - `string`12981299  - `"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more`13001301    - `"message-batches-2024-09-24"`13021303    - `"prompt-caching-2024-07-31"`13041305    - `"computer-use-2024-10-22"`13061307    - `"computer-use-2025-01-24"`13081309    - `"pdfs-2024-09-25"`13101311    - `"token-counting-2024-11-01"`13121313    - `"token-efficient-tools-2025-02-19"`13141315    - `"output-128k-2025-02-19"`13161317    - `"files-api-2025-04-14"`13181319    - `"mcp-client-2025-04-04"`13201321    - `"mcp-client-2025-11-20"`13221323    - `"dev-full-thinking-2025-05-14"`13241325    - `"interleaved-thinking-2025-05-14"`13261327    - `"code-execution-2025-05-22"`13281329    - `"extended-cache-ttl-2025-04-11"`13301331    - `"context-1m-2025-08-07"`13321333    - `"context-management-2025-06-27"`13341335    - `"model-context-window-exceeded-2025-08-26"`13361337    - `"skills-2025-10-02"`13381339    - `"fast-mode-2026-02-01"`13401341    - `"output-300k-2026-03-24"`13421343    - `"user-profiles-2026-03-24"`13441345    - `"user-profiles-2026-08-18"`13461347    - `"user-profiles-2026-09-04"`13481349    - `"advisor-tool-2026-03-01"`13501351    - `"managed-agents-2026-04-01"`13521353    - `"cache-diagnosis-2026-04-07"`13541355    - `"dreaming-2026-04-21"`13561357    - `"thinking-token-count-2026-05-13"`13581359    - `"server-side-fallback-2026-06-01"`13601361    - `"server-side-fallback-2026-07-01"`13621363    - `"fallback-credit-2026-06-01"`13641365    - `"fallback-credit-2026-07-01"`13661367    - `"agent-memory-2026-07-22"`13681369    - `"mid-conversation-tool-changes-2026-07-01"`13701371    - `"compact-2026-01-12"`13721373    - `"computer-use-2025-11-24"`13741375    - `"mcp-tunnels-2026-06-22"`13761377    - `"structured-outputs-2025-11-13"`13781379    - `"task-budgets-2026-03-13"`13801381    - `"thinking-display-updates-2026-08-18"`13821383    - `"ce-user-management-2026-07-13"`13841385    - `"mid-conversation-output-config-2026-07-01"`13861387    - `"thinking-binding-controls-2026-08-01"`13881389    - `"mid-conversation-system-clear-at-2026-08-21"`13901391    - `"compact-2026-09-04"`13921393- `"anthropic-workspace-id": optional string`13941395### Returns13961397- `BetaUserProfileEnrollmentURL object`13981399  - `type: "enrollment_url"`14001401    Object type. Always `enrollment_url`.14021403  - `expires_at: string`14041405    A timestamp in RFC 3339 format14061407    format: date-time14081409  - `url: string`14101411    Enrollment URL to send to the end user. Valid until `expires_at`.14121413### Example14141415```bash1416curl https://api.anthropic.com/v1/user_profiles/$USER_PROFILE_ID/enrollment_url \1417    -X POST \1418    -H 'anthropic-version: 2023-06-01' \1419    -H 'anthropic-beta: user-profiles-2026-08-18' \1420    -H "X-Api-Key: $ANTHROPIC_API_KEY"1421```14221423#### Response (200)14241425```json1426{1427  "expires_at": "2026-03-15T10:15:00Z",1428  "type": "enrollment_url",1429  "url": "https://platform.claude.com/user-profiles/enrollment/M3J0bGJxZ2ppMnptbnB1"1430}1431```14321433## Domain types14341435### Beta User Profile14361437- `BetaUserProfile object`14381439  - `type: "user_profile"`14401441    Object type. Always `user_profile`.14421443  - `id: string`14441445    Unique identifier for this user profile, prefixed `uprof_`.14461447  - `created_at: string`14481449    A timestamp in RFC 3339 format14501451    format: date-time14521453  - `metadata: map[string]`14541455    Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.14561457  - `trust_grants: map[BetaUserProfileTrustGrant]`14581459    Trust grants for this profile, keyed by grant name. Key omitted when no grant is active or in flight.14601461    - `status: "active" or "pending" or "rejected"`14621463      Status of the trust grant.14641465      - `"active"`14661467      - `"pending"`14681469      - `"rejected"`14701471  - `updated_at: string`14721473    A timestamp in RFC 3339 format14741475    format: date-time14761477  - `access_type: optional "application" or "passthrough"`14781479    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.14801481    - `"application"`14821483    - `"passthrough"`14841485  - `external_id: optional string or null`14861487    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`.14881489  - `external_user_details: optional BetaUserProfileExternalUserDetails`14901491    Details about the entity this profile represents, as the platform states them. Anthropic does not verify them. Every field is present, `null` until the platform supplies a value.14921493    - `account_status: "active" or "suspended" or "blocked" or null`14941495      The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.14961497      - `"active"`14981499      - `"suspended"`15001501      - `"blocked"`15021503    - `country: string or null`15041505      The country the platform associates with the entity, as an ISO 3166-1 alpha-2 code. `null` until the platform supplies one.15061507    - `email_hash: string or null`15081509      The platform-computed hash of the entity's email address. `null` until the platform supplies one.15101511    - `entity_type: "individual" or "business" or "non_profit" or "government" or null`15121513      What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.15141515      - `"individual"`15161517      - `"business"`15181519      - `"non_profit"`15201521      - `"government"`15221523    - `name_hash: string or null`15241525      The platform-computed hash of the entity's name. `null` until the platform supplies one.15261527    - `onboarded_at: string or null`15281529      A timestamp in RFC 3339 format15301531      format: date-time15321533    - `reference_id: string or null`15341535      The platform's own reference for the entity. `null` until the platform supplies one.15361537  - `external_user_onboarded_at: optional string or null`15381539    A timestamp in RFC 3339 format15401541    format: date-time15421543  - `name: optional string or null`15441545    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.15461547### Beta User Profile Enrollment URL15481549- `BetaUserProfileEnrollmentURL object`15501551  - `type: "enrollment_url"`15521553    Object type. Always `enrollment_url`.15541555  - `expires_at: string`15561557    A timestamp in RFC 3339 format15581559    format: date-time15601561  - `url: string`15621563    Enrollment URL to send to the end user. Valid until `expires_at`.15641565### Beta User Profile External User Details15661567- `BetaUserProfileExternalUserDetails object`15681569  Details about the entity this profile represents, as the platform states them. Anthropic does not verify them. Every field is present, `null` until the platform supplies a value.15701571  - `account_status: "active" or "suspended" or "blocked" or null`15721573    The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.15741575    - `"active"`15761577    - `"suspended"`15781579    - `"blocked"`15801581  - `country: string or null`15821583    The country the platform associates with the entity, as an ISO 3166-1 alpha-2 code. `null` until the platform supplies one.15841585  - `email_hash: string or null`15861587    The platform-computed hash of the entity's email address. `null` until the platform supplies one.15881589  - `entity_type: "individual" or "business" or "non_profit" or "government" or null`15901591    What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.15921593    - `"individual"`15941595    - `"business"`15961597    - `"non_profit"`15981599    - `"government"`16001601  - `name_hash: string or null`16021603    The platform-computed hash of the entity's name. `null` until the platform supplies one.16041605  - `onboarded_at: string or null`16061607    A timestamp in RFC 3339 format16081609    format: date-time16101611  - `reference_id: string or null`16121613    The platform's own reference for the entity. `null` until the platform supplies one.16141615### Beta User Profile External User Details Params16161617- `BetaUserProfileExternalUserDetailsParams object`16181619  - `account_status: optional "active" or "suspended" or "blocked" or null`16201621    The status of the entity's account on the platform, as the platform states it: `active`; `suspended`, when the platform has restricted the account and may restore it; or `blocked`, when the platform has barred it. It records the platform's decision only; the statuses in `trust_grants` are Anthropic's and do not follow it.16221623    - `"active"`16241625    - `"suspended"`16261627    - `"blocked"`16281629  - `country: optional string or null`16301631    The country of the entity (not of the platform), as the platform determines it: an ISO 3166-1 alpha-2 code in upper case, for example `US`. Only the form, two uppercase ASCII letters, is checked.16321633  - `email_hash: optional string or null`16341635    A hash of the entity's email address, computed by the platform. Anthropic treats it as an opaque string and does not prescribe the hash function. 1 to 255 characters.16361637    minLength: 1, maxLength: 25516381639  - `entity_type: optional "individual" or "business" or "non_profit" or "government" or null`16401641    What kind of entity the profile represents, as the platform states it: `individual`, `business`, `non_profit` or `government`.16421643    - `"individual"`16441645    - `"business"`16461647    - `"non_profit"`16481649    - `"government"`16501651  - `name_hash: optional string or null`16521653    A hash of the entity's name, computed by the platform. Anthropic treats it as an opaque string and does not prescribe the hash function. 1 to 255 characters.16541655    minLength: 1, maxLength: 25516561657  - `onboarded_at: optional string`16581659    A timestamp in RFC 3339 format16601661    format: date-time16621663  - `reference_id: optional string or null`16641665    The platform's own reference for the entity, for example the key of the end-user's row in the platform's database. Not interpreted by Anthropic and not enforced unique. 1 to 255 characters.16661667    minLength: 1, maxLength: 25516681669### Beta User Profile Trust Grant16701671- `BetaUserProfileTrustGrant object`16721673  - `status: "active" or "pending" or "rejected"`16741675    Status of the trust grant.16761677    - `"active"`16781679    - `"pending"`16801681    - `"rejected"`1682
Files main
Menu

Theme