> ## Documentation Index
> Fetch the complete documentation index at: https://stytch.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Update

> Updates the current user's profile. Calls the `PUT /sdk/v1/users/me` endpoint. Requires an active session.

## Parameters

<ParamField body="name" type="ApiUserV1Name?">
  <Expandable title="properties">
    <ParamField body="firstName" type="String?" />

    <ParamField body="middleName" type="String?" />

    <ParamField body="lastName" type="String?" />
  </Expandable>
</ParamField>

<ParamField body="emails" type="List<ApiUserV1EmailString>?">
  <Expandable title="properties">
    <ParamField body="email" type="String" required />
  </Expandable>
</ParamField>

<ParamField body="phoneNumbers" type="List<ApiUserV1PhoneNumberString>?">
  <Expandable title="properties">
    <ParamField body="phoneNumber" type="String" required />
  </Expandable>
</ParamField>

<ParamField body="cryptoWallets" type="List<ApiUserV1CryptoWalletString>?">
  <Expandable title="properties">
    <ParamField body="cryptoWalletAddress" type="String" required />

    <ParamField body="cryptoWalletType" type="String" required />
  </Expandable>
</ParamField>

<ParamField body="trustedMetadata" type="Map<String, JsonElement>?" />

<ParamField body="untrustedMetadata" type="Map<String, JsonElement>?" />

## Returns

<ResponseField name="requestId" type="String" required />

<ResponseField name="userId" type="String" required />

<ResponseField name="emails" type="List<ApiUserV1Email>" required>
  <Expandable title="properties">
    <ResponseField name="emailId" type="String" required />

    <ResponseField name="email" type="String" required />

    <ResponseField name="verified" type="Boolean" required />
  </Expandable>
</ResponseField>

<ResponseField name="phoneNumbers" type="List<ApiUserV1PhoneNumber>" required>
  <Expandable title="properties">
    <ResponseField name="phoneId" type="String" required />

    <ResponseField name="phoneNumber" type="String" required />

    <ResponseField name="verified" type="Boolean" required />
  </Expandable>
</ResponseField>

<ResponseField name="cryptoWallets" type="List<ApiUserV1CryptoWallet>" required>
  <Expandable title="properties">
    <ResponseField name="cryptoWalletId" type="String" required />

    <ResponseField name="cryptoWalletAddress" type="String" required />

    <ResponseField name="cryptoWalletType" type="String" required />

    <ResponseField name="verified" type="Boolean" required />
  </Expandable>
</ResponseField>

<ResponseField name="user" type="ApiUserV1User" required>
  <Expandable title="properties">
    <ResponseField name="userId" type="String" required />

    <ResponseField name="emails" type="List<ApiUserV1Email>" required>
      <Expandable title="properties">
        <ResponseField name="emailId" type="String" required />

        <ResponseField name="email" type="String" required />

        <ResponseField name="verified" type="Boolean" required />
      </Expandable>
    </ResponseField>

    <ResponseField name="status" type="String" required />

    <ResponseField name="phoneNumbers" type="List<ApiUserV1PhoneNumber>" required>
      <Expandable title="properties">
        <ResponseField name="phoneId" type="String" required />

        <ResponseField name="phoneNumber" type="String" required />

        <ResponseField name="verified" type="Boolean" required />
      </Expandable>
    </ResponseField>

    <ResponseField name="webauthnRegistrations" type="List<ApiUserV1WebAuthnRegistration>" required>
      <Expandable title="properties">
        <ResponseField name="webauthnRegistrationId" type="String" required />

        <ResponseField name="domain" type="String" required />

        <ResponseField name="userAgent" type="String" required />

        <ResponseField name="verified" type="Boolean" required />

        <ResponseField name="authenticatorType" type="String" required />

        <ResponseField name="name" type="String" required />
      </Expandable>
    </ResponseField>

    <ResponseField name="providers" type="List<ApiUserV1OAuthProvider>" required>
      <Expandable title="properties">
        <ResponseField name="providerType" type="String" required />

        <ResponseField name="providerSubject" type="String" required />

        <ResponseField name="profilePictureUrl" type="String" required />

        <ResponseField name="locale" type="String" required />

        <ResponseField name="oauthUserRegistrationId" type="String" required />
      </Expandable>
    </ResponseField>

    <ResponseField name="totps" type="List<ApiUserV1TOTP>" required>
      <Expandable title="properties">
        <ResponseField name="totpId" type="String" required />

        <ResponseField name="verified" type="Boolean" required />
      </Expandable>
    </ResponseField>

    <ResponseField name="cryptoWallets" type="List<ApiUserV1CryptoWallet>" required>
      <Expandable title="properties">
        <ResponseField name="cryptoWalletId" type="String" required />

        <ResponseField name="cryptoWalletAddress" type="String" required />

        <ResponseField name="cryptoWalletType" type="String" required />

        <ResponseField name="verified" type="Boolean" required />
      </Expandable>
    </ResponseField>

    <ResponseField name="biometricRegistrations" type="List<ApiUserV1BiometricRegistration>" required>
      <Expandable title="properties">
        <ResponseField name="biometricRegistrationId" type="String" required />

        <ResponseField name="verified" type="Boolean" required />
      </Expandable>
    </ResponseField>

    <ResponseField name="isLocked" type="Boolean" required />

    <ResponseField name="roles" type="List<String>" required />

    <ResponseField name="name" type="ApiUserV1Name?">
      <Expandable title="properties">
        <ResponseField name="firstName" type="String?" />

        <ResponseField name="middleName" type="String?" />

        <ResponseField name="lastName" type="String?" />
      </Expandable>
    </ResponseField>

    <ResponseField name="createdAt" type="Instant?" />

    <ResponseField name="password" type="ApiUserV1Password?">
      <Expandable title="properties">
        <ResponseField name="passwordId" type="String" required />

        <ResponseField name="requiresReset" type="Boolean" required />
      </Expandable>
    </ResponseField>

    <ResponseField name="trustedMetadata" type="Map<String, JsonElement>?" />

    <ResponseField name="untrustedMetadata" type="Map<String, JsonElement>?" />

    <ResponseField name="externalId" type="String?" />

    <ResponseField name="lockCreatedAt" type="Instant?" />

    <ResponseField name="lockExpiresAt" type="Instant?" />
  </Expandable>
</ResponseField>

<ResponseField name="statusCode" type="Int" required />

<RequestExample>
  ```js theme={null}
  StytchConsumer.user.update({ name: { firstName: "Jane", lastName: "Doe" } })
  ```
</RequestExample>
