---
title: "Update User Account"
method: PUT
path: "/v1/user/account"
tags: ["User"]
---

# Update User Account

`PUT /v1/user/account`

Update the account details for the currently logged in user

## Request body

- UpdateUserAccount
  - `oldPassword` string
  - `password` string
  - `passwordConfirm` string
  - `twoFactorCode` string, nullable
  - `allowSupportAccess` boolean, nullable
  - `optOutHubEmail` boolean, nullable
  - `optOutSyncEmail` boolean, nullable
  - `optOutAiEmail` boolean, nullable
  - `optOutWelcomeEmail` boolean, nullable
  - `optOutDuplicationEmail` boolean, nullable

## Response `200`

User account updated successfully

- object
  - `metadata` object
  - `data` UserWithToken
    - `publicId` string, uuid
    - `firebaseUserId` string
    - `name` string
    - `bio` string
    - `createdAt` string, date-time
    - `constructionSoftware` string[]
    - `email` string
    - `linkedin` string
    - `phone` string
    - `profilePicture` string
    - `autodeskConnected` boolean
    - `viewpointConnected` boolean
    - `procoreConnected` boolean
    - `aconexConnected` boolean
    - `reviztoConnected` boolean
    - `asiteConnected` boolean
    - `projectsWorkedOn` string[]
    - `specialisms` string[]
    - `twitter` string
    - `university` string
    - `universityDegree` string
    - `organisation` string
    - `location` string
    - `website` string
    - `apiKeys` ApiKey[]
      - `publicId` string, uuid
      - `hash` string
      - `name` string
      - `prefix` string
      - `accessLevel` integer
      - `projectRestrictions` string[]
      - `tableRestrictions` string[]
      - `documentRestrictions` string[]
    - `kind` string
    - `tags` unknown
    - `allowSupportAccesss` boolean
    - `subscriptionQuota` integer
    - `numberOfManagedSubscriptionUsers` integer
    - `managedSubscriptionUsers` User[]
      - `publicId` string, uuid
      - `firebaseUserId` string
      - `name` string
      - `bio` string
      - `createdAt` string, date-time
      - `constructionSoftware` string[]
      - `email` string
      - `linkedin` string
      - `phone` string
      - `profilePicture` string
      - `autodeskConnected` boolean
      - `viewpointConnected` boolean
      - `procoreConnected` boolean
      - `aconexConnected` boolean
      - `reviztoConnected` boolean
      - `asiteConnected` boolean
      - `projectsWorkedOn` string[]
      - `specialisms` string[]
      - `twitter` string
      - `university` string
      - `universityDegree` string
      - `organisation` string
      - `location` string
      - `website` string
      - `apiKeys` ApiKey[]
        - `publicId` string, uuid
        - `hash` string
        - `name` string
        - `prefix` string
        - `accessLevel` integer
        - `projectRestrictions` string[]
        - `tableRestrictions` string[]
        - `documentRestrictions` string[]
      - `kind` string
      - `tags` unknown
      - `allowSupportAccesss` boolean
      - `subscriptionQuota` integer
      - `numberOfManagedSubscriptionUsers` integer
      - `managedSubscriptionUsers` User[]
      - `subscriptionManagerUser` union
        - User1
          - `email` string
          - `name` string
        - object, nullable
      - `onScalePlan` boolean
      - `optOutWelcomeEmail` boolean
      - `optOutSyncEmail` boolean
      - `optOutAiEmail` boolean
      - `optOutHubEmail` boolean
      - `optOutDuplicationEmail` boolean
    - `subscriptionManagerUser` union
      - User1
        - `email` string
        - `name` string
      - object, nullable
    - `onScalePlan` boolean
    - `optOutWelcomeEmail` boolean
    - `optOutSyncEmail` boolean
    - `optOutAiEmail` boolean
    - `optOutHubEmail` boolean
    - `optOutDuplicationEmail` boolean
    - `id` integer
    - `authToken` string
    - `authTokenExpiresAt` string, date-time
    - `isSuperAdmin` boolean
    - `is2FaEnabled` unknown
    - `lastLoginAt` string, date-time
    - `hasPassword` unknown
    - `subscriptionLevel` integer
    - `eligibleForFreeTrial` boolean
    - `isOnFreeTrial` boolean
    - `freeTrialDaysRemaining` integer
    - `allowSupportAccess` boolean

## Other responses

- `400` — Two factor code is invalid or required
- `401` — Old password is invalid

---

[API](https://skmtc.net/morta-technology/apis/morta-api-reference.md) · [All operations](https://skmtc.net/morta-technology/apis/morta-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/morta-technology/morta-api-reference/versions/9c58c1c1e7e8/schema)
