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

# Update user employment info

> Update employment and source-of-wealth information for a user account.



## OpenAPI

````yaml PATCH /users/me/employment-info
openapi: 3.0.3
info:
  title: Wealthyhood Users API
  version: 1.0.0
  description: >
    User management endpoints for creating and managing user accounts in the
    Wealthyhood platform.


    All requests require a bearer access token with the advertised scopes, and
    must include 

    appropriate authentication headers.
servers:
  - url: https://{host}
    variables:
      host:
        default: api.wealthyhood.com
        description: Wealthyhood API host name.
security:
  - bearerAuth: []
tags:
  - name: Users
    description: Create and manage user accounts.
paths:
  /users/me/employment-info:
    patch:
      tags:
        - Users
      summary: Update user employment info
      description: >
        Update employment and source-of-wealth information for a B2B user. An
        existing entry is overwritten.


        **Headers:**

        - `x-user-id`: MongoDB ObjectId of the user to update.
      operationId: updateUserEmploymentInfo
      parameters:
        - name: x-user-id
          in: header
          required: true
          description: MongoDB ObjectId of the authenticated user
          schema:
            type: string
            pattern: ^[a-f0-9]{24}$
          example: 64f0c51e7fb3fc001234a001
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateUserEmploymentInfoRequest'
            example:
              employmentInfo:
                incomeRangeId: '5'
                employmentStatus: SelfEmployed
                sourcesOfWealth:
                  - BusinessOwnership
                industry: FinanceAndInsurance
      responses:
        '204':
          description: Employment info updated successfully
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
components:
  schemas:
    UpdateUserEmploymentInfoRequest:
      type: object
      required:
        - employmentInfo
      properties:
        employmentInfo:
          $ref: '#/components/schemas/EmploymentInfoRequest'
      additionalProperties: false
    EmploymentInfoRequest:
      type: object
      description: >
        Employment and source of wealth information. Required on create user.

        incomeRangeId, employmentStatus, and sourcesOfWealth are required.
        Industry is required

        when employmentStatus is FullTime, PartTime, or SelfEmployed.
      required:
        - incomeRangeId
        - employmentStatus
        - sourcesOfWealth
      properties:
        incomeRangeId:
          type: string
          description: >
            ID of the income range (1-10). Valid values and their annual income
            ranges (in EUR):

            1 = €0 - €10,000 | 2 = €10,001 - €20,000 | 3 = €20,001 - €30,000 | 4
            = €30,001 - €50,000 |

            5 = €50,001 - €75,000 | 6 = €75,001 - €100,000 | 7 = €100,001 -
            €150,000 |

            8 = €150,001 - €250,000 | 9 = €250,001 - €500,000 | 10 = €500,001+
          example: '5'
        employmentStatus:
          type: string
          description: Employment status
          enum:
            - FullTime
            - PartTime
            - SelfEmployed
            - Unemployed
            - Retired
            - Student
            - NotWorkingDueToIllnessOrDisability
            - CarerOrParent
          example: SelfEmployed
        sourcesOfWealth:
          type: array
          description: At least one source of wealth required
          items:
            type: string
            enum:
              - Salary
              - Inheritance
              - Gift
              - BusinessOwnership
              - SaleOfProperty
              - GamblingOrLottery
              - PersonalSavings
              - LegalSettlement
              - SaleOfInvestments
              - Dividend
          example:
            - BusinessOwnership
        industry:
          type: string
          description: >-
            Required when employmentStatus is FullTime, PartTime, or
            SelfEmployed
          enum:
            - AgricultureForestryAndFishing
            - ArtsSportAndCreative
            - ConstructionAndEngineering
            - CryptoIndustryAndCryptocurrencies
            - CulturalArtefacts
            - DatingOrAdultIndustry
            - Education
            - EnergyAndWaterSupply
            - FinanceAndInsurance
            - GamblingOrIGamingIndustry
            - GovernmentPublicServiceAndDefence
            - HealthAndSocialWork
            - Hospitality
            - ImportAndExport
            - InformationAndCommunication
            - LegalAndRegulatory
            - Manufacturing
            - Mining
            - MoneyTransfer
            - MotorTrades
            - PreciousMetals
            - Property
            - Retail
            - ScientificAndTechnical
            - Tobacco
            - TransportAndStorage
            - Wholesale
          example: FinanceAndInsurance
      additionalProperties: false
    ApiErrorResponse:
      type: object
      properties:
        status:
          type: integer
          description: HTTP status code
        error:
          type: object
          properties:
            message:
              type: string
              description: Error message
            description:
              type: string
              description: Additional error details
              nullable: true
        responseId:
          type: string
          format: uuid
          description: Unique identifier for this error response
      additionalProperties: false
  responses:
    BadRequestError:
      description: Validation failure or business rule violation.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorResponse'
          examples:
            invalidEmail:
              summary: Invalid email format
              value:
                status: 400
                error:
                  message: Invalid email address format
                responseId: 3f0fd3bf-a2ff-4c0e-9b1d-5d7055dbf6cd
            missingFields:
              summary: Missing required fields
              value:
                status: 400
                error:
                  message: 'Missing required fields: firstName, lastName'
                responseId: 3f0fd3bf-a2ff-4c0e-9b1d-5d7055dbf6cd
            addressCountryMismatch:
              summary: Address country code mismatch
              value:
                status: 400
                error:
                  message: Address countryCode must match residencyCountry
                responseId: 3f0fd3bf-a2ff-4c0e-9b1d-5d7055dbf6cd
    UnauthorizedError:
      description: Missing or invalid bearer token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiErrorResponse'
          example:
            status: 401
            error:
              message: Unauthorized - Invalid or missing authentication token
            responseId: 145f2b0d-1d5b-4e91-8d0d-7af0ae9ad13a
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Auth0-issued access token that includes the scopes listed for the
        endpoint.

````