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

# Update User



## OpenAPI

````yaml /openapi/mortgage-crm.json put /users/{id}
openapi: 3.0.3
info:
  title: Universal Mortgage CRM API Documentation
  description: Development documentation
  version: '1.0'
servers:
  - url: https://mortgage-crm.universal.rollout.com/api
security: []
paths:
  /users/{id}:
    put:
      tags:
        - Users
      summary: Update User
      operationId: putUsersById
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
        - name: fields
          in: query
          required: false
          schema:
            type: string
            description: >-
              Comma-separated top-level fields to return; the parameter can also
              be repeated, once per field. `id` is always returned. Omit it, or
              pass `allFields`, to get every field, including `original`.
              Unknown names return 400.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                firstName:
                  type: string
                lastName:
                  type: string
                phone:
                  type: string
                role:
                  type: string
                status:
                  type: string
                timezone:
                  nullable: true
                  type: string
                username:
                  type: string
                participatingOfficeIds:
                  type: array
                  items:
                    type: string
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                email:
                  type: string
                firstName:
                  type: string
                lastName:
                  type: string
                phone:
                  type: string
                role:
                  type: string
                status:
                  type: string
                timezone:
                  nullable: true
                  type: string
                username:
                  type: string
                participatingOfficeIds:
                  type: array
                  items:
                    type: string
          multipart/form-data:
            schema:
              type: object
              properties:
                email:
                  type: string
                firstName:
                  type: string
                lastName:
                  type: string
                phone:
                  type: string
                role:
                  type: string
                status:
                  type: string
                timezone:
                  nullable: true
                  type: string
                username:
                  type: string
                participatingOfficeIds:
                  type: array
                  items:
                    type: string
      responses:
        '200':
          description: Response for status 200
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  firstName:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  lastName:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  email:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  phone:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  role:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  status:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  timezone:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  created:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  updated:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: string
                  rolloutUpdated:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  originalIds:
                    description: Present unless the request's `fields` leaves it out.
                    type: object
                    additionalProperties:
                      anyOf:
                        - type: number
                        - type: string
                  original:
                    description: Present unless the request's `fields` leaves it out.
                    type: object
                    additionalProperties:
                      type: object
                      additionalProperties: {}
                  address:
                    description: Present unless the request's `fields` leaves it out.
                    nullable: true
                    type: object
                    properties:
                      type:
                        type: string
                      street:
                        type: string
                      city:
                        type: string
                      state:
                        type: string
                      code:
                        type: string
                      county:
                        type: string
                      country:
                        type: string
                    required:
                      - type
                      - street
                      - city
                      - state
                      - code
                      - country
                  username:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  type:
                    description: Present unless the request's `fields` leaves it out.
                    type: string
                  offices:
                    description: Present unless the request's `fields` leaves it out.
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                      required:
                        - id
                required:
                  - id
        '400':
          description: Response for status 400
          content:
            application/json:
              schema:
                type: object
                properties:
                  errorMessage:
                    type: string
                required:
                  - errorMessage
        '404':
          description: Response for status 404
          content:
            application/json:
              schema:
                type: object
                properties:
                  errorMessage:
                    type: string
                required:
                  - errorMessage
        '409':
          description: Response for status 409
          content:
            application/json:
              schema:
                type: object
                properties:
                  errorMessage:
                    type: string
                    enum:
                      - >-
                        Data for this credential is not ready yet. Please try
                        again.
                required:
                  - errorMessage
        '423':
          description: >-
            423 Locked — the credential is temporarily frozen by an operator.
            Reads still work; POST/PATCH/PUT/DELETE are rejected until it is
            unfrozen. Unlike 424 (invalid credential), do not re-authenticate —
            retry later.
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        message:
                          type: string
                      required:
                        - message
                required:
                  - errors
      security:
        - jwt: []
          credential_id: []
components:
  securitySchemes:
    jwt:
      type: http
      scheme: bearer
      description: Consumer JWT minted by the tenant's backend
    credential_id:
      type: apiKey
      in: header
      name: X-Rollout-Credential-Id
      description: The Rollout Credential ID to use for queries/mutations

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.