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

# Update logged in user using fields structure

> Updates the calling user's profile from a fields-format payload (the same shape returned by `GET /me?format=fields`). Validation errors are returned in the same fields-format shape so the client can merge them back into the form.



## OpenAPI

````yaml openapi/findity-expense-api.json PUT /me?format=fields
openapi: 3.0.3
info:
  title: Findity Expense API
  description: Findity Expense API
  version: 1.0.0
servers:
  - url: https://stage-api.findity.com/api/v1/expense
  - url: https://api.findity.com/api/v1/expense
security:
  - bearerAuth: []
paths:
  /me?format=fields:
    put:
      tags:
        - User
      summary: Update logged in user using fields structure
      description: >-
        Updates the calling user's profile from a fields-format payload (the
        same shape returned by `GET /me?format=fields`). Validation errors are
        returned in the same fields-format shape so the client can merge them
        back into the form.
      operationId: updateUserFieldsFormat
      parameters:
        - in: query
          name: format
          required: true
          description: >-
            Format parameter has to be used when sending fields structure of
            personal data to this endpoint
          schema:
            type: string
            enum:
              - fields
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PersonFieldsResponse'
            example:
              fields:
                - name: null
                  property: settingInfo
                  controlType: INFORMATION
                  mandatory: false
                  visible: true
                  value: >-
                    You can customize more account settings by logging in to the
                    web UI and go to your personal settings.
                  errorText: null
                  error: null
                  custom: false
                  dismissible: false
                  informationType: INFORMATION
                - name: ''
                  property: settings.personalGroup
                  controlType: FIELD_GROUP
                  mandatory: false
                  visible: true
                  value: null
                  errorText: null
                  error: null
                  custom: false
                  fields:
                    - name: First name
                      property: firstName
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: EndUserFirstName
                      errorText: null
                      error: null
                      custom: false
                    - name: Last name
                      property: lastName
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: EndUserLastName
                      errorText: null
                      error: null
                      custom: false
                    - name: Personal ID
                      property: personalId
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: ''
                      errorText: null
                      error: null
                      custom: false
                    - name: Email
                      property: email
                      controlType: COMMAND
                      mandatory: false
                      visible: true
                      value: test.user@example.com
                      errorText: null
                      error: null
                      custom: false
                      disabled: true
                      accessorIconUrl: https://api.findity.com/api/images/icons/ic_edit_2.svg
                      accessorText: Edit email
                      commands: null
                      clientCommand:
                        clientAction: editEmail
                        entityId: 8ab28cb36b6470b5016b64c39ad502e2
                    - name: Phone number
                      property: phone
                      controlType: COMMAND
                      mandatory: false
                      visible: true
                      value: '001000000000000'
                      errorText: null
                      error: null
                      custom: false
                      disabled: true
                      accessorIconUrl: https://api.findity.com/api/images/icons/ic_edit_2.svg
                      accessorText: Edit phone number
                      commands: null
                      clientCommand:
                        clientAction: editPhone
                        entityId: 8ab28cb36b6470b5016b64c39ad502e2
                    - name: Street
                      property: address.street1
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: null
                      errorText: null
                      error: null
                      custom: false
                    - name: Postal code
                      property: address.postalCode
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: null
                      errorText: null
                      error: null
                      custom: false
                    - name: City
                      property: address.city
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: null
                      errorText: null
                      error: null
                      custom: false
                    - name: Country
                      property: address.country
                      controlType: LIST
                      mandatory: false
                      visible: true
                      value: US
                      errorText: null
                      error: null
                      custom: false
                      url: >-
                        /me/organizations/8a49a1b359cbfe2a0159d551c8d5008b/countries
                      data:
                        iconUrl: null
                        id: US
                        name: United States of America
                        section: null
                    - name: Change password
                      property: setting.changePassword
                      controlType: COMMAND
                      mandatory: false
                      visible: true
                      value: Change password
                      errorText: null
                      error: null
                      custom: false
                      accessorIconUrl: >-
                        https://api.findity.com/api/images/icons/chevron_right.svg
                      accessorText: settingField.setting.changePassword
                      commands: null
                      clientCommand:
                        clientAction: openChangePassword
                        url: /me/password
                    - name: Send in receipts by email
                      property: setting.emailReceipts
                      controlType: COMMAND
                      mandatory: false
                      visible: true
                      value: Send in receipts by email
                      errorText: null
                      error: null
                      custom: false
                      requiresUpdate: true
                      accessorIconUrl: >-
                        https://api.findity.com/api/images/icons/chevron_right.svg
                      accessorText: settingField.setting.emailReceipts
                      commands: null
                      clientCommand:
                        clientAction: createEmail
                        url: mailto:expense@expense.findity.com
                  commands: null
                  clientCommand: null
                - name: Bank details
                  property: settings.bankGroup
                  controlType: FIELD_GROUP
                  mandatory: false
                  visible: true
                  value: null
                  errorText: null
                  error: null
                  custom: false
                  fields:
                    - name: Bank account number
                      property: bankAccountNumber
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: '000000000000000000000'
                      errorText: null
                      error: null
                      custom: false
                    - name: IBAN
                      property: IBAN
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: GB000000000000000000
                      errorText: null
                      error: null
                      custom: false
                      requiresUpdate: true
                    - name: BIC
                      property: BIC
                      controlType: TEXT
                      mandatory: false
                      visible: true
                      value: null
                      errorText: null
                      error: null
                      custom: false
                      requiresUpdate: true
                  commands: null
                  clientCommand: null
                - name: Experience settings
                  property: settings.experienceGroup
                  controlType: FIELD_GROUP
                  mandatory: false
                  visible: true
                  value: null
                  errorText: null
                  error: null
                  custom: false
                  fields:
                    - name: Currency
                      property: homeCurrency
                      controlType: LIST
                      mandatory: false
                      visible: true
                      value: EUR
                      errorText: null
                      error: null
                      custom: false
                      url: >-
                        /me/organizations/ff808081990936c201990936f7f80174/currencies
                      data:
                        iconUrl: null
                        id: EUR
                        name: EUR - Euro
                        section: null
                    - name: Language
                      property: language
                      controlType: LIST
                      mandatory: false
                      visible: true
                      value: en_GB
                      errorText: null
                      error: null
                      custom: false
                      url: >-
                        /me/organizations/ff808081990936c201990936f7f80174/locales
                      data:
                        iconUrl: null
                        id: en_GB
                        name: English
                        section: null
                    - name: Region
                      property: formattingRegion
                      controlType: LIST
                      mandatory: false
                      visible: true
                      value: en_GB
                      errorText: null
                      error: null
                      custom: false
                      url: >-
                        /me/organizations/ff808081990936c201990936f7f80174/locales?euOnly=true&format=region
                      data:
                        iconUrl: null
                        id: en_GB
                        name: English (United Kingdom)
                        section: null
                  commands: null
                  clientCommand: null
                - name: App settings
                  property: settings.appGroup
                  controlType: FIELD_GROUP
                  mandatory: false
                  visible: true
                  value: null
                  errorText: null
                  error: null
                  custom: false
                  accessorIconUrl: https://api.findity.com/api/images/icons/chevron_right.svg
                  accessorText: App settings
                  fields:
                    - name: Experience
                      property: settings.appExperienceGroup
                      controlType: FIELD_GROUP
                      mandatory: false
                      visible: true
                      value: null
                      errorText: null
                      error: null
                      custom: false
                      fields:
                        - name: App theme
                          property: preferences.app.appTheme
                          controlType: LIST
                          mandatory: true
                          visible: true
                          value: light
                          errorText: null
                          error: null
                          custom: false
                          url: /me/settings/app/themes
                          data:
                            iconUrl: null
                            id: light
                            name: Light theme
                            section: null
                      commands: null
                      clientCommand: null
                    - name: Expenses
                      property: settings.appExpenseGroup
                      controlType: FIELD_GROUP
                      mandatory: false
                      visible: true
                      value: null
                      errorText: null
                      error: null
                      custom: false
                      fields:
                        - name: Automatically open camera view for new expenses
                          property: preferences.app.automaticallyOpenCameraView
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: true
                          errorText: null
                          error: null
                          custom: false
                        - name: Use AutoPASS for road toll
                          property: preferences.bompenger.autopassActivated
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: true
                          errorText: null
                          error: null
                          custom: false
                      commands: null
                      clientCommand: null
                    - name: Prompts
                      property: settings.appPromptGroup
                      controlType: FIELD_GROUP
                      mandatory: false
                      visible: true
                      value: null
                      errorText: null
                      error: null
                      custom: false
                      fields:
                        - name: Prompt for submit expense report
                          property: preferences.app.promptForSubmitExpenseReport
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: true
                          errorText: null
                          error: null
                          custom: false
                        - name: Prompt for submit expense
                          property: preferences.app.promptForSubmitExpense
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: true
                          errorText: null
                          error: null
                          custom: false
                        - name: Prompt for approve expense report
                          property: preferences.app.promptForApproveExpenseReport
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: true
                          errorText: null
                          error: null
                          custom: false
                        - name: Prompt for approve single expense
                          property: preferences.app.promptForApproveExpense
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: true
                          errorText: null
                          error: null
                          custom: false
                      commands: null
                      clientCommand: null
                  commands: null
                  clientCommand: null
                - name: Notification settings
                  property: settings.notificationGroup
                  controlType: FIELD_GROUP
                  mandatory: false
                  visible: true
                  value: null
                  errorText: null
                  error: null
                  custom: false
                  accessorIconUrl: https://api.findity.com/api/images/icons/chevron_right.svg
                  accessorText: Notification settings
                  fields:
                    - name: Notifications
                      property: settings.notificationNotificationsGroup
                      controlType: FIELD_GROUP
                      mandatory: false
                      visible: true
                      value: null
                      errorText: null
                      error: null
                      custom: false
                      fields:
                        - name: Card transaction notifications
                          property: preferences.notifications.transactionNotifications
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: false
                          errorText: null
                          error: null
                          custom: false
                        - name: Receive all expense-related emails
                          property: receiveExpenseRelatedEmails
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: true
                          errorText: null
                          error: null
                          custom: false
                        - name: Attend user surveys
                          property: attendUserSurveys
                          controlType: SWITCH
                          mandatory: false
                          visible: true
                          value: true
                          errorText: null
                          error: null
                          custom: false
                      commands: null
                      clientCommand: null
                  commands: null
                  clientCommand: null
                - visible: true
                  custom: false
                  error: null
                  mandatory: false
                  errorText: null
                  requiresUpdate: true
                  clientCommand: null
                  accessorIconUrl: https://api.findity.com/api/images/icons/chevron_right.svg
                  controlType: FIELD_GROUP
                  name: Temporary approvers
                  property: temporaryApprovalGroup
                  fields:
                    - visible: true
                      custom: false
                      deletable: true
                      error: null
                      mandatory: false
                      errorText: null
                      requiresUpdate: true
                      deleteCommand:
                        confirmation: settingField.temporaryApprover.removeConfirmation
                        text: >-
                          Are you sure you want to remove this temporary
                          approver?
                        confirmationRequired: true
                        command: action=removeTemporaryApprover&atIndex=0
                      clientCommand: null
                      controlType: FIELD_GROUP
                      name: settingField.temporaryApprover[0] [1]
                      property: temporaryApprover[0]
                      fields:
                        - errorText: null
                          visible: false
                          controlType: TEXT
                          custom: false
                          name: ''
                          property: temporaryApprover[0].approverId
                          error: null
                          mandatory: false
                          value: '14'
                        - errorText: null
                          requiresUpdate: true
                          visible: true
                          controlType: LIST
                          data:
                            name: Organization name
                            section: null
                            iconUrl: null
                            id: ff808081990936c201990936f7f80174
                          custom: false
                          name: Organization
                          property: temporaryApprover[0].organizationId
                          error: null
                          mandatory: true
                          value: ff808081990936c201990936f7f80174
                          url: /me/organizations/approvals
                        - errorText: null
                          visible: true
                          controlType: LIST
                          data:
                            name: First and last name of temporary approver
                            section: null
                            iconUrl: null
                            id: ff808081990936c201990936f81a017c
                          custom: false
                          name: Temporary approver
                          property: temporaryApprover[0].personId
                          error: null
                          mandatory: true
                          value: ff808081990936c201990936f81a017c
                          url: >-
                            /me/organizations/ff808081990936c201990936f7f80174/approvals/users
                        - errorText: null
                          visible: true
                          controlType: DATE
                          custom: false
                          name: Start date
                          property: temporaryApprover[0].startDate
                          error: null
                          mandatory: true
                          value: '2025-09-02T06:57:01Z'
                        - errorText: null
                          visible: true
                          controlType: DATE
                          custom: false
                          name: End date
                          property: temporaryApprover[0].endDate
                          error: null
                          mandatory: true
                          value: '2025-09-04T06:57:01Z'
                      value: null
                      commands: null
                    - visible: true
                      custom: false
                      error: null
                      mandatory: false
                      errorText: null
                      requiresUpdate: true
                      clientCommand: null
                      accessorIconUrl: https://api.findity.com/api/images/icons/plus.svg
                      controlType: COMMAND
                      name: Add temporary approver
                      property: temporaryApprover.add
                      value: null
                      commands:
                        - confirmation: null
                          text: null
                          confirmationRequired: false
                          command: action=addTemporaryApprover&afterIndex=0
                  value: null
                  commands: null
              validationErrors: null
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Person'
              example:
                fields:
                  - name: null
                    property: settingInfo
                    controlType: INFORMATION
                    mandatory: false
                    visible: true
                    value: >-
                      You can customize more account settings by logging in to
                      the web UI and go to your personal settings.
                    errorText: null
                    error: null
                    custom: false
                    dismissible: false
                    informationType: INFORMATION
                  - name: ''
                    property: settings.personalGroup
                    controlType: FIELD_GROUP
                    mandatory: false
                    visible: true
                    value: null
                    errorText: null
                    error: null
                    custom: false
                    fields:
                      - name: First name
                        property: firstName
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: EndUserFirstName
                        errorText: null
                        error: null
                        custom: false
                      - name: Last name
                        property: lastName
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: EndUserLastName
                        errorText: null
                        error: null
                        custom: false
                      - name: Personal ID
                        property: personalId
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: ''
                        errorText: null
                        error: null
                        custom: false
                      - name: Email
                        property: email
                        controlType: COMMAND
                        mandatory: false
                        visible: true
                        value: test.user@example.com
                        errorText: null
                        error: null
                        custom: false
                        disabled: true
                        accessorIconUrl: https://api.findity.com/api/images/icons/ic_edit_2.svg
                        accessorText: Edit email
                        commands: null
                        clientCommand:
                          clientAction: editEmail
                          entityId: 8ab28cb36b6470b5016b64c39ad502e2
                      - name: Phone number
                        property: phone
                        controlType: COMMAND
                        mandatory: false
                        visible: true
                        value: '001000000000000'
                        errorText: null
                        error: null
                        custom: false
                        disabled: true
                        accessorIconUrl: https://api.findity.com/api/images/icons/ic_edit_2.svg
                        accessorText: Edit phone number
                        commands: null
                        clientCommand:
                          clientAction: editPhone
                          entityId: 8ab28cb36b6470b5016b64c39ad502e2
                      - name: Street
                        property: address.street1
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: null
                        errorText: null
                        error: null
                        custom: false
                      - name: Postal code
                        property: address.postalCode
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: null
                        errorText: null
                        error: null
                        custom: false
                      - name: City
                        property: address.city
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: null
                        errorText: null
                        error: null
                        custom: false
                      - name: Country
                        property: address.country
                        controlType: LIST
                        mandatory: false
                        visible: true
                        value: US
                        errorText: null
                        error: null
                        custom: false
                        url: >-
                          /me/organizations/8a49a1b359cbfe2a0159d551c8d5008b/countries
                        data:
                          iconUrl: null
                          id: US
                          name: United States of America
                          section: null
                      - name: Change password
                        property: setting.changePassword
                        controlType: COMMAND
                        mandatory: false
                        visible: true
                        value: Change password
                        errorText: null
                        error: null
                        custom: false
                        accessorIconUrl: >-
                          https://api.findity.com/api/images/icons/chevron_right.svg
                        accessorText: settingField.setting.changePassword
                        commands: null
                        clientCommand:
                          clientAction: openChangePassword
                          url: /me/password
                      - name: Send in receipts by email
                        property: setting.emailReceipts
                        controlType: COMMAND
                        mandatory: false
                        visible: true
                        value: Send in receipts by email
                        errorText: null
                        error: null
                        custom: false
                        requiresUpdate: true
                        accessorIconUrl: >-
                          https://api.findity.com/api/images/icons/chevron_right.svg
                        accessorText: settingField.setting.emailReceipts
                        commands: null
                        clientCommand:
                          clientAction: createEmail
                          url: mailto:expense@expense.findity.com
                    commands: null
                    clientCommand: null
                  - name: Bank details
                    property: settings.bankGroup
                    controlType: FIELD_GROUP
                    mandatory: false
                    visible: true
                    value: null
                    errorText: null
                    error: null
                    custom: false
                    fields:
                      - name: Bank account number
                        property: bankAccountNumber
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: '000000000000000000000'
                        errorText: null
                        error: null
                        custom: false
                      - name: IBAN
                        property: IBAN
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: GB000000000000000000
                        errorText: null
                        error: null
                        custom: false
                        requiresUpdate: true
                      - name: BIC
                        property: BIC
                        controlType: TEXT
                        mandatory: false
                        visible: true
                        value: null
                        errorText: null
                        error: null
                        custom: false
                        requiresUpdate: true
                    commands: null
                    clientCommand: null
                  - name: Experience settings
                    property: settings.experienceGroup
                    controlType: FIELD_GROUP
                    mandatory: false
                    visible: true
                    value: null
                    errorText: null
                    error: null
                    custom: false
                    fields:
                      - name: Currency
                        property: homeCurrency
                        controlType: LIST
                        mandatory: false
                        visible: true
                        value: EUR
                        errorText: null
                        error: null
                        custom: false
                        url: >-
                          /me/organizations/ff808081990936c201990936f7f80174/currencies
                        data:
                          iconUrl: null
                          id: EUR
                          name: EUR - Euro
                          section: null
                      - name: Language
                        property: language
                        controlType: LIST
                        mandatory: false
                        visible: true
                        value: en_GB
                        errorText: null
                        error: null
                        custom: false
                        url: >-
                          /me/organizations/ff808081990936c201990936f7f80174/locales
                        data:
                          iconUrl: null
                          id: en_GB
                          name: English
                          section: null
                      - name: Region
                        property: formattingRegion
                        controlType: LIST
                        mandatory: false
                        visible: true
                        value: en_GB
                        errorText: null
                        error: null
                        custom: false
                        url: >-
                          /me/organizations/ff808081990936c201990936f7f80174/locales?euOnly=true&format=region
                        data:
                          iconUrl: null
                          id: en_GB
                          name: English (United Kingdom)
                          section: null
                    commands: null
                    clientCommand: null
                  - name: App settings
                    property: settings.appGroup
                    controlType: FIELD_GROUP
                    mandatory: false
                    visible: true
                    value: null
                    errorText: null
                    error: null
                    custom: false
                    accessorIconUrl: https://api.findity.com/api/images/icons/chevron_right.svg
                    accessorText: App settings
                    fields:
                      - name: Experience
                        property: settings.appExperienceGroup
                        controlType: FIELD_GROUP
                        mandatory: false
                        visible: true
                        value: null
                        errorText: null
                        error: null
                        custom: false
                        fields:
                          - name: App theme
                            property: preferences.app.appTheme
                            controlType: LIST
                            mandatory: true
                            visible: true
                            value: light
                            errorText: null
                            error: null
                            custom: false
                            url: /me/settings/app/themes
                            data:
                              iconUrl: null
                              id: light
                              name: Light theme
                              section: null
                        commands: null
                        clientCommand: null
                      - name: Expenses
                        property: settings.appExpenseGroup
                        controlType: FIELD_GROUP
                        mandatory: false
                        visible: true
                        value: null
                        errorText: null
                        error: null
                        custom: false
                        fields:
                          - name: Automatically open camera view for new expenses
                            property: preferences.app.automaticallyOpenCameraView
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: true
                            errorText: null
                            error: null
                            custom: false
                          - name: Use AutoPASS for road toll
                            property: preferences.bompenger.autopassActivated
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: true
                            errorText: null
                            error: null
                            custom: false
                        commands: null
                        clientCommand: null
                      - name: Prompts
                        property: settings.appPromptGroup
                        controlType: FIELD_GROUP
                        mandatory: false
                        visible: true
                        value: null
                        errorText: null
                        error: null
                        custom: false
                        fields:
                          - name: Prompt for submit expense report
                            property: preferences.app.promptForSubmitExpenseReport
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: true
                            errorText: null
                            error: null
                            custom: false
                          - name: Prompt for submit expense
                            property: preferences.app.promptForSubmitExpense
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: true
                            errorText: null
                            error: null
                            custom: false
                          - name: Prompt for approve expense report
                            property: preferences.app.promptForApproveExpenseReport
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: true
                            errorText: null
                            error: null
                            custom: false
                          - name: Prompt for approve single expense
                            property: preferences.app.promptForApproveExpense
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: true
                            errorText: null
                            error: null
                            custom: false
                        commands: null
                        clientCommand: null
                    commands: null
                    clientCommand: null
                  - name: Notification settings
                    property: settings.notificationGroup
                    controlType: FIELD_GROUP
                    mandatory: false
                    visible: true
                    value: null
                    errorText: null
                    error: null
                    custom: false
                    accessorIconUrl: https://api.findity.com/api/images/icons/chevron_right.svg
                    accessorText: Notification settings
                    fields:
                      - name: Notifications
                        property: settings.notificationNotificationsGroup
                        controlType: FIELD_GROUP
                        mandatory: false
                        visible: true
                        value: null
                        errorText: null
                        error: null
                        custom: false
                        fields:
                          - name: Card transaction notifications
                            property: preferences.notifications.transactionNotifications
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: false
                            errorText: null
                            error: null
                            custom: false
                          - name: Receive all expense-related emails
                            property: receiveExpenseRelatedEmails
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: true
                            errorText: null
                            error: null
                            custom: false
                          - name: Attend user surveys
                            property: attendUserSurveys
                            controlType: SWITCH
                            mandatory: false
                            visible: true
                            value: true
                            errorText: null
                            error: null
                            custom: false
                        commands: null
                        clientCommand: null
                    commands: null
                    clientCommand: null
                  - visible: true
                    custom: false
                    error: null
                    mandatory: false
                    errorText: null
                    requiresUpdate: true
                    clientCommand: null
                    accessorIconUrl: https://api.findity.com/api/images/icons/chevron_right.svg
                    controlType: FIELD_GROUP
                    name: Temporary approvers
                    property: temporaryApprovalGroup
                    fields:
                      - visible: true
                        custom: false
                        deletable: true
                        error: null
                        mandatory: false
                        errorText: null
                        requiresUpdate: true
                        deleteCommand:
                          confirmation: settingField.temporaryApprover.removeConfirmation
                          text: >-
                            Are you sure you want to remove this temporary
                            approver?
                          confirmationRequired: true
                          command: action=removeTemporaryApprover&atIndex=0
                        clientCommand: null
                        controlType: FIELD_GROUP
                        name: settingField.temporaryApprover[0] [1]
                        property: temporaryApprover[0]
                        fields:
                          - errorText: null
                            visible: false
                            controlType: TEXT
                            custom: false
                            name: ''
                            property: temporaryApprover[0].approverId
                            error: null
                            mandatory: false
                            value: '14'
                          - errorText: null
                            requiresUpdate: true
                            visible: true
                            controlType: LIST
                            data:
                              name: Organization name
                              section: null
                              iconUrl: null
                              id: ff808081990936c201990936f7f80174
                            custom: false
                            name: Organization
                            property: temporaryApprover[0].organizationId
                            error: null
                            mandatory: true
                            value: ff808081990936c201990936f7f80174
                            url: /me/organizations/approvals
                          - errorText: null
                            visible: true
                            controlType: LIST
                            data:
                              name: First and last name of temporary approver
                              section: null
                              iconUrl: null
                              id: ff808081990936c201990936f81a017c
                            custom: false
                            name: Temporary approver
                            property: temporaryApprover[0].personId
                            error: null
                            mandatory: true
                            value: ff808081990936c201990936f81a017c
                            url: >-
                              /me/organizations/ff808081990936c201990936f7f80174/approvals/users
                          - errorText: null
                            visible: true
                            controlType: DATE
                            custom: false
                            name: Start date
                            property: temporaryApprover[0].startDate
                            error: null
                            mandatory: true
                            value: '2025-09-02T06:57:01Z'
                          - errorText: null
                            visible: true
                            controlType: DATE
                            custom: false
                            name: End date
                            property: temporaryApprover[0].endDate
                            error: null
                            mandatory: true
                            value: '2025-09-04T06:57:01Z'
                        value: null
                        commands: null
                      - visible: true
                        custom: false
                        error: null
                        mandatory: false
                        errorText: null
                        requiresUpdate: true
                        clientCommand: null
                        accessorIconUrl: https://api.findity.com/api/images/icons/plus.svg
                        controlType: COMMAND
                        name: Add temporary approver
                        property: temporaryApprover.add
                        value: null
                        commands:
                          - confirmation: null
                            text: null
                            confirmationRequired: false
                            command: action=addTemporaryApprover&afterIndex=0
                    value: null
                    commands: null
                validationErrors: null
        '400':
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400Error'
              examples:
                invalid json body:
                  value:
                    result: error
                    code: INVALID_JSON_BODY
                    description: Failed to parse json body
                unknown properties:
                  value:
                    result: error
                    code: NO_KNOWN_JSON_PROPERTIES
                    description: No known, or only read-only properties received
                invalid temporary approvers data:
                  value:
                    result: error
                    description: update of personal settings failed
                    validationErrors:
                      - checkType: ERROR
                        errorText: Data provided for temporary approvers are not valid
                        property: temporaryApprovers
                        error: INVALID_TEMPORARY_APPROVERS_DATA
                overlapping dates for temporary approvers:
                  value:
                    result: error
                    description: update of temporary approvers failed
                    validationErrors:
                      - checkType: ERROR
                        errorText: >-
                          There are temporary approvers that have overlapping
                          date periods
                        property: temporaryApprovers
                        error: OVERLAPPING_DATES_FOR_TEMPORARY_APPROVERS
components:
  schemas:
    PersonFieldsResponse:
      type: object
      description: Fields format for person settings
      properties:
        meta:
          type: object
          readOnly: true
          properties:
            capabilities:
              $ref: '#/components/schemas/PersonCapabilities'
        fields:
          description: >-
            Field-builder array describing the user-profile editable values.
            Each entry pairs a property name with a value and any errors.
          allOf:
            - $ref: '#/components/schemas/FieldsArray'
    Person:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/Uuid'
          readOnly: true
        email:
          type: string
          readOnly: true
        extraRecipients:
          type: array
          items:
            properties:
              email:
                type: string
              status:
                type: string
                enum:
                  - CONFIRMED
                  - NOT_CONFIRMED
          readOnly: true
        firstName:
          description: Given name.
          type: string
        lastName:
          description: Family name.
          type: string
        mobilePhone:
          type: string
          readOnly: true
        defaultCurrency:
          description: Default currency for new expenses (ISO 4217 code).
          type: string
        bankAccountNumber:
          description: User's bank account number for reimbursements.
          type: string
        language:
          description: Preferred UI language as a locale code (e.g. `en_GB`, `sv_SE`).
          type: string
        IBAN:
          description: International Bank Account Number for cross-border reimbursements.
          type: string
        BIC:
          description: Bank Identifier Code (SWIFT) for cross-border reimbursements.
          type: string
        address:
          $ref: '#/components/schemas/Address'
          description: User's address.
        preferences:
          description: Per-user UI/notification preferences.
          type: object
          properties:
            dateDisplayType:
              type: string
              enum:
                - TIMESTAMP
                - TIME_AGO
            calculateTaxAmount:
              type: boolean
            useOCR:
              type: boolean
            suppressAnalyzeInfoDialog:
              type: boolean
        formattingRegion:
          type: string
          description: The region/locale used for formatting dates/numbers
        temporaryApprovers:
          type: array
          description: A list of temporary approvers that user has set
          items:
            properties:
              organizationId:
                type: string
                description: >-
                  Id of organization for which user has chose to set temporary
                  approver for
              temporaryApproverPersonId:
                type: string
                description: >-
                  Id of person which current user has chosen to act to perform
                  approver role temporarily in his place
              fromDate:
                type: string
                description: >-
                  Start date from which added person will act as approver. This
                  value is set/delivered in format "yyyy-MM-dd'T'HH:mm'Z'"
              toDate:
                type: string
                description: >-
                  End date when added person will be stopped to act as temporary
                  approver instead of current user. This value is set/delivered
                  in format "yyyy-MM-dd'T'HH:mm'Z'"
              approverId:
                $ref: '#/components/schemas/Uuid'
                description: >-
                  Unique id assigned to added temporary user which is created
                  within our system.
        meta:
          description: >-
            Response-only. Server-populated capability flags and derived fields
            for the user.
          type: object
          properties:
            capabilities:
              $ref: '#/components/schemas/PersonCapabilities'
            impersonator:
              type: object
              properties:
                firstName:
                  type: string
                lastName:
                  type: string
                impersonatorType:
                  $ref: '#/components/schemas/ImpersonatorType'
    400Error:
      type: object
      properties:
        result:
          type: string
        code:
          type: string
        description:
          type: string
    PersonCapabilities:
      type: object
      properties:
        canImpersonate:
          type: boolean
          description: Indicates if the currently logged in user can act as some other user
          example: false
        canViewAdmin:
          type: boolean
          description: >-
            Indicates if the current user has an access to the admin part of the
            system or not
          example: true
        canViewSettings:
          type: boolean
          description: >-
            Indicates if the current user has an access to the settings part of
            the system or not
          example: true
    FieldsArray:
      type: array
      items:
        type: object
        properties:
          name:
            type: string
            description: >-
              A translated name of the field, can be used to present to to the
              user
          property:
            type: string
            description: >
              Identifier of the field. Contains the path to the property in the
              expense API, for example verification.amount, cardLiability.
              Expense record and expense report fields include a hidden
              (`visible: false`) `version` field (controlType INTEGER) holding
              the optimistic-lock version of the stored object (`null` for a new
              object). Send it back unchanged in the fields of the update
              request; if the object has been modified since it was read, the
              update is rejected with 409 CONCURRENT_MODIFICATION.
          controlType:
            type: string
            enum:
              - TEXT
              - MULTI_LINE_TEXT
              - DOUBLE
              - INTEGER
              - SWITCH
              - DATE
              - DATE_TIME
              - LIST
              - CONTENT_HOLDER
              - GUEST_LIST
              - FIELD_GROUP
              - LOCAL_DATE_TIME
              - INFORMATION
          mandatory:
            type: boolean
            description: The field is required
          visible:
            type: boolean
            description: Only fields with visible = true should be shown
          requiresUpdate:
            type: boolean
            description: >-
              Tells the client that if this field is changed, the client must
              call the API again with the fields data
          url:
            type: string
            description: >-
              If controlType is LIST this property contains an url to the
              selectable values for this field
          custom:
            type: boolean
            description: >-
              Indicates if this is a custom field not part of the standard
              fields
          scannable:
            type: boolean
            description: >-
              Indicates if this field is part of the data extracted by the
              receipt scanning
          qrCodeSupported:
            type: boolean
            description: >
              Set on the `verification.receiptAttachment` (CONTENT_HOLDER) field
              when the organization's booking country uses fiscal QR codes on
              receipts (currently Portugal). When `true`, clients should offer a
              QR-scan step in the receipt capture flow and, on success, send the
              decoded string as the `qrScan` header on `POST /content`. Absent
              when not applicable.
          value:
            type: object
            description: >-
              The value of the field, this is dynamic based on the control type.
              For example if the control type is DOUBLE the value property must
              have a double type. For SubsistenceAllowance and property =
              verification.specification[x].date1 or date2, this value is
              set/delivered in format "yyyy-MM-dd HH:mm" where the date is at
              UTC date time
          data:
            type: object
            description: >-
              When calling the fields-endpoint initially, this may contain a
              list object for fields with control type LIST. This way the client
              does not have to make a call to the list endpoint to fetch the
              value. This has the same structure as the result in the list.
            properties:
              id:
                type: string
                description: Represents the id of the value that is set in this Field
              name:
                type: string
                description: Representable text for chosen list item for set id
              section:
                type: integer
              iconUrl:
                type: string
          allowFutureDate:
            type: boolean
            description: >-
              If controlType is DATE or DATE_TIME or LOCAL_DATE_TIME, this
              property is set. Default value is false. If the value is false,
              then date picker shouldn't allow setting date to value higher than
              today's date.
          error:
            type: string
            description: >-
              A string that represents the error. This property is not empty
              when there is some error related to the specific field.
          errorText:
            type: string
            description: >-
              Human readable description of value returned in error property.
              This property is not empty when there is some error related to the
              specific field.
          disabled:
            type: boolean
            description: >-
              Indicates if property should be enabled or disabled for editing.
              In Approval flow, this property is always set to "true".
          fields:
            type: array
            description: >-
              This property is populated when controlType="FIELD_GROUP" and it
              has the same structure as this array of objects. The list of
              objects represents all fields that are related to the specific
              field group.
          deletable:
            type: boolean
            description: >-
              This property is used for removable fields, for example on the
              FIELD_GROUP for a specification in allowance
          deleteCommand:
            allOf:
              - $ref: '#/components/schemas/FieldsCommandSchema'
          informationType:
            type: string
            enum:
              - normal
              - information
              - warning
              - error
              - success
            description: >-
              This property is set when controlType=INFORMATION and it should
              indicate which type of information the field is
          dismissible:
            type: boolean
            description: >-
              This property is set when controlType=INFORMATION to indicate if
              the information is dismissible or not
          multiSelect:
            type: boolean
            description: >-
              This property is going in combination with controlType=LIST to
              indicate that multiple values can be selected from the list
          listItemType:
            type: string
            description: >-
              This property is set when there is controlType=LIST &
              multiSelect=true to indicate which type of item is list made of
          accessorIconUrl:
            type: string
            description: >-
              This property is set by the URL value for the icon which can
              indicate access to different provided commands. It is usually
              provided within the field of controlType=FIELD_GROUP
          accessorText:
            type: string
            description: >-
              This property represents the text that can be set as replacement
              for all the fields behind the defined FIELD_GROUP. It can be used
              as display for accessor to the list of the fields provided in the
              FIELD_GORUP
          numberOfDecimals:
            type: integer
            description: >-
              The maximum number of decimals this field can present, uses
              current currency. only set for fields with an amount in value.
          summary:
            allOf:
              - $ref: '#/components/schemas/MetaSummarySchema'
          commands:
            type: array
            description: >-
              This property contains the list of possible commands that can be
              performed on the specific field
            items:
              allOf:
                - $ref: '#/components/schemas/FieldsCommandSchema'
    Uuid:
      type: string
      pattern: ^[0-9a-fA-F]{32}$
      description: UUID without dashes (32-character hex string)
    Address:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/Uuid'
          readOnly: true
        street1:
          type: string
        postalCode:
          type: string
        city:
          type: string
        countryCode:
          type: string
      example:
        id: 2ee7643987df40b38537b32ccda585d9
        street1: 132, My Street
        postalCode: 12401
        city: New York
        countryCode: US
    ImpersonatorType:
      type: string
      enum:
        - PERSON
        - EMPLOYEE
    FieldsCommandSchema:
      type: object
      description: >-
        This property is used to define the command available on the filed of
        controlType=FIELD_GROUP
      properties:
        text:
          type: string
          description: This property contains the text for the command to be displayed
        confirmationRequired:
          type: boolean
          description: >-
            This property indicates if the client should display a dialog with
            confirmation as result of it
        confirmation:
          type: string
          description: >-
            This property contains the text that should be displayed in case
            that confirmationRequired=true and client decided to perform the
            command/action
        command:
          type: string
          description: >-
            This property contains the command that can be executed by
            performing the PUT request with it on the fields endpoint
    MetaSummarySchema:
      type: array
      description: Contains summarised information about report
      items:
        type: object
        properties:
          property:
            type: string
            description: Name of property
          type:
            type: string
            description: >-
              One of the following types will be provided [property_type,
              header, separator, image]
          value:
            type: string
            description: Value assigned to the property
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````