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

# Update person metadata

> Update a person's basic information.



## OpenAPI

````yaml /reference/manage-vanta.json patch /people/{personId}
openapi: 3.0.0
info:
  title: Manage Vanta
  version: 1.0.0
  description: >-
    The REST API lets customers query and mutate Vanta's data. Use this API to
    automate bulk actions, query data for custom workflows and dashboards, and
    bolster your security operations


    **Note for Vanta Gov (FedRAMP) customers:** Select `Vanta Gov (FedRAMP)`
    from the server dropdown to issue requests against
    `https://api.vanta-gov.com`. The OAuth token URL shown below defaults to the
    commercial host — replace it with `https://api.vanta-gov.com/oauth/token`.
  termsOfService: https://www.vanta.com/terms
  license:
    name: UNLICENSED
  contact:
    name: API Support
    url: https://help.vanta.com/
    email: support@vanta.com
servers:
  - url: https://api.vanta.com/v1
    description: Vanta (Commercial)
  - url: https://api.vanta-gov.com/v1
    description: Vanta Gov (FedRAMP)
security: []
paths:
  /people/{personId}:
    patch:
      tags:
        - People
      summary: Update person metadata
      description: Update a person's basic information.
      operationId: UpdatePerson
      parameters:
        - in: path
          name: personId
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              properties:
                name:
                  properties:
                    last:
                      type: string
                    first:
                      type: string
                  required:
                    - last
                    - first
                  type: object
                employment:
                  properties:
                    startDate:
                      type: string
                      format: date-time
                  type: object
              type: object
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Person'
              examples:
                Example 1:
                  value:
                    id: 65e1efde08e8478f143a8ff9
                    userId: 65e1efde08e8478f143a9001
                    emailAddress: example-person@email.com
                    employment:
                      endDate: null
                      jobTitle: Customer success manager
                      startDate: '2021-01-01T00:00:00.000Z'
                      status: CURRENT
                    leaveInfo: null
                    groupIds:
                      - 5f2c939a52855e725c8d5824
                    name:
                      display: Example Person
                      last: Person
                      first: Example
                    sources:
                      emailAddress:
                        integrationId: gsuiteadmin
                        resourceId: 660c701d3d344e660b032306
                        type: INTEGRATION
                      employment:
                        startDate:
                          integrationId: gusto
                          resourceId: 660c70783d344e660b032323
                          type: INTEGRATION
                        endDate:
                          integrationId: gusto
                          resourceId: 660c70783d344e660b032323
                          type: INTEGRATION
                    tasksSummary:
                      completionDate: null
                      dueDate: '2021-12-01T00:00:00.000Z'
                      status: OVERDUE
                      details:
                        completeTrainings:
                          taskType: COMPLETE_TRAININGS
                          status: COMPLETE
                          dueDate: '2021-12-01T00:00:00.000Z'
                          completionDate: '2021-11-01T00:00:00.000Z'
                          disabled:
                            date: '2021-11-01T00:00:00.000Z'
                            reason: >-
                              Training Vanta tests have been disabled for this
                              person
                          incompleteTrainings:
                            - name: Security training 1
                            - name: Security training 2
                          completedTrainings:
                            - name: Security training 3
                            - name: Security training 4
                        acceptPolicies:
                          taskType: ACCEPT_POLICIES
                          status: COMPLETE
                          dueDate: '2021-12-01T00:00:00.000Z'
                          completionDate: '2021-11-01T00:00:00.000Z'
                          disabled: null
                          unacceptedPolicies:
                            - name: Policy 1
                            - name: Policy 2
                          acceptedPolicies:
                            - name: Policy 3
                            - name: Policy 4
                        completeCustomTasks:
                          taskType: COMPLETE_CUSTOM_TASKS
                          status: OVERDUE
                          dueDate: '2021-12-01T00:00:00.000Z'
                          completionDate: '2021-11-01T00:00:00.000Z'
                          disabled:
                            date: '2021-11-01T00:00:00.000Z'
                            reason: >-
                              Custom task Vanta tests have been disabled for
                              this person
                          incompleteCustomTasks:
                            - name: Custom task 1
                            - name: Custom task 2
                          completedCustomTasks:
                            - name: Custom task 3
                            - name: Custom task 4
                        completeOffboardingCustomTasks:
                          taskType: COMPLETE_CUSTOM_OFFBOARDING_TASKS
                          status: COMPLETE
                          dueDate: '2021-12-01T00:00:00.000Z'
                          completionDate: '2021-11-01T00:00:00.000Z'
                          disabled: null
                          incompleteCustomOffboardingTasks: []
                          completedCustomOffboardingTasks:
                            - name: Custom offboarding task 1
                            - name: Custom offboarding task 2
                        installDeviceMonitoring:
                          taskType: INSTALL_DEVICE_MONITORING
                          status: DUE_SOON
                          dueDate: '2021-12-01T00:00:00.000Z'
                          completionDate: null
                          disabled: null
                        completeBackgroundChecks:
                          taskType: COMPLETE_BACKGROUND_CHECKS
                          status: COMPLETE
                          dueDate: '2021-12-01T00:00:00.000Z'
                          completionDate: '2021-11-01T00:00:00.000Z'
                          disabled: null
      security:
        - bearerAuth: []
components:
  schemas:
    Person:
      properties:
        id:
          type: string
        userId:
          type: string
          nullable: true
          description: >-
            The ID of the Vanta user account associated with this person, if one
            exists.
        emailAddress:
          type: string
        employment:
          properties:
            status:
              $ref: '#/components/schemas/EmploymentStatus'
              description: The person's employment status.
            startDate:
              type: string
              format: date-time
              description: The date the person's employment started.
            jobTitle:
              type: string
              nullable: true
              description: The person's job title.
            endDate:
              type: string
              format: date-time
              nullable: true
              description: If present, the date the person's employment ended.
          required:
            - status
            - startDate
            - jobTitle
            - endDate
          type: object
        leaveInfo:
          allOf:
            - $ref: '#/components/schemas/LeaveInfo'
          nullable: true
          description: >-
            If present, the user's active/upcoming leave. Empty if the user has
            no active/upcoming leave.
        groupIds:
          items:
            type: string
          type: array
          description: >-
            The id of each group the user belongs to. This includes both
            manually created groups in Vanta and groups imported from an
            identity provider.
        name:
          properties:
            first:
              type: string
              nullable: true
              description: The person's first (given) name.
            last:
              type: string
              nullable: true
              description: The person's last (family) name.
            display:
              type: string
              description: The person's display name, used in Vanta.
          required:
            - first
            - last
            - display
          type: object
        sources:
          properties:
            employment:
              properties:
                endDate:
                  $ref: '#/components/schemas/PersonInfoSource'
                  description: The source of the person's employment end date.
                startDate:
                  $ref: '#/components/schemas/PersonInfoSource'
                  description: The source of the person's employment start date.
              required:
                - endDate
                - startDate
              type: object
            emailAddress:
              $ref: '#/components/schemas/PersonInfoSource'
              description: The source of the person's email address.
          required:
            - employment
            - emailAddress
          type: object
          description: The sources of the person's information.
        tasksSummary:
          properties:
            details:
              $ref: '#/components/schemas/TaskSummaryDetails'
            status:
              $ref: '#/components/schemas/TasksSummaryStatus'
              description: The status of the person's tasks summary.
            dueDate:
              type: string
              format: date-time
              nullable: true
              description: The due date of the person's earliest-due task.
            completionDate:
              type: string
              format: date-time
              nullable: true
              description: The date when person's tasks were completed.
          required:
            - details
            - status
            - dueDate
            - completionDate
          type: object
          description: >-
            The person's tasks summary, which aggregates their current status
            across

            all of their relevant tasks.
      required:
        - id
        - userId
        - emailAddress
        - employment
        - leaveInfo
        - groupIds
        - name
        - sources
        - tasksSummary
      type: object
      additionalProperties: false
    EmploymentStatus:
      description: >-
        The employment status of a person:

        - UPCOMING: The person is not yet employed and will start employment in
        the future.

        - CURRENT: The person is currently employed.

        - ON_LEAVE: The person is on leave.

        - INACTIVE: The person's employment is inactive.

        - FORMER: The person was previously employed.
      enum:
        - UPCOMING
        - CURRENT
        - ON_LEAVE
        - INACTIVE
        - FORMER
      type: string
    LeaveInfo:
      properties:
        startDate:
          type: string
          format: date-time
          description: The start of the person's leave.
        endDate:
          type: string
          format: date-time
          nullable: true
          description: >-
            The end of the person's leave. Null endDate implies indefinite
            leave.
        status:
          $ref: '#/components/schemas/LeaveStatus'
          description: >-
            ACTIVE if the leave is currently ongoing. UPCOMING if the startDate
            is in the future.
      required:
        - startDate
        - endDate
        - status
      type: object
      additionalProperties: false
    PersonInfoSource:
      anyOf:
        - $ref: '#/components/schemas/VantaBasedPersonInfoSource'
        - $ref: '#/components/schemas/ScimBasedPersonInfoSource'
        - $ref: '#/components/schemas/IntegrationBasedPersonInfoSource'
      description: The source of the person's information.
    TaskSummaryDetails:
      description: >-
        All detailed information about a person's tasks, split across task
        categories.
      properties:
        completeTrainings:
          $ref: '#/components/schemas/CompleteTrainingsTaskSummary'
        acceptPolicies:
          $ref: '#/components/schemas/AcceptPoliciesTaskSummary'
        completeCustomTasks:
          $ref: '#/components/schemas/CompleteCustomTasksTaskSummary'
        completeOffboardingCustomTasks:
          $ref: '#/components/schemas/CompleteOffboardingCustomTasksTaskSummary'
        installDeviceMonitoring:
          $ref: '#/components/schemas/InstallDeviceMonitoringTaskSummary'
        completeBackgroundChecks:
          $ref: '#/components/schemas/CompleteBackgroundChecksTaskSummary'
      required:
        - completeTrainings
        - acceptPolicies
        - completeCustomTasks
        - completeOffboardingCustomTasks
        - installDeviceMonitoring
        - completeBackgroundChecks
      type: object
      additionalProperties: false
    TasksSummaryStatus:
      description: >-
        The overall status of a person's outstanding tasks:

        - NONE: There are no tasks.

        - DUE_SOON: At least one task is due soon.

        - OVERDUE: At least one task is overdue. Has a higher priority than
        DUE_SOON.

        - COMPLETE: All tasks are complete.

        - PAUSED: All tasks are paused.

        - OFFBOARDING_DUE_SOON: At least one offboarding task is due soon.

        - OFFBOARDING_OVERDUE: At least one offboarding task is overdue. Has a
        higher priority than OFFBOARDING_DUE_SOON.

        - OFFBOARDING_COMPLETE: All offboarding tasks are complete.
      enum:
        - COMPLETE
        - DUE_SOON
        - NONE
        - OFFBOARDING_COMPLETE
        - OFFBOARDING_DUE_SOON
        - OFFBOARDING_OVERDUE
        - OVERDUE
        - PAUSED
      type: string
    LeaveStatus:
      description: User can be active or upcoming leave period
      enum:
        - ACTIVE
        - UPCOMING
      type: string
    VantaBasedPersonInfoSource:
      description: The person's information comes from what is set in Vanta.
      properties:
        type:
          $ref: '#/components/schemas/PersonInfoSourceType.VANTA'
      required:
        - type
      type: object
      additionalProperties: false
    ScimBasedPersonInfoSource:
      description: The person's information comes from SCIM.
      properties:
        type:
          $ref: '#/components/schemas/PersonInfoSourceType.SCIM'
      required:
        - type
      type: object
      additionalProperties: false
    IntegrationBasedPersonInfoSource:
      description: The person's information comes from an integration.
      properties:
        integrationId:
          type: string
        resourceId:
          type: string
          nullable: true
        type:
          $ref: '#/components/schemas/PersonInfoSourceType.INTEGRATION'
      required:
        - integrationId
        - resourceId
        - type
      type: object
      additionalProperties: false
    CompleteTrainingsTaskSummary:
      description: Task summary for completing all trainings.
      properties:
        taskType:
          $ref: '#/components/schemas/TaskType.COMPLETE_TRAININGS'
        status:
          $ref: '#/components/schemas/TaskStatus'
        dueDate:
          type: string
          format: date-time
          nullable: true
          description: The due date of the task.
        completionDate:
          type: string
          format: date-time
          nullable: true
          description: The date the task was completed.
        disabled:
          properties:
            date:
              type: string
              format: date-time
            reason:
              type: string
              nullable: true
          required:
            - date
            - reason
          type: object
          nullable: true
          description: If the task is disabled, the reason and date when it was disabled.
        incompleteTrainings:
          items:
            $ref: '#/components/schemas/Training'
          type: array
          description: >-
            Incomplete security trainings that are relevant given a person's
            requirements.
        completedTrainings:
          items:
            $ref: '#/components/schemas/Training'
          type: array
          description: >-
            Security trainings that have been completed and are relevant given a
            person's current requirements.
      required:
        - taskType
        - status
        - dueDate
        - completionDate
        - disabled
        - incompleteTrainings
        - completedTrainings
      type: object
      additionalProperties: false
    AcceptPoliciesTaskSummary:
      description: Policy acceptance details for a person.
      properties:
        taskType:
          $ref: '#/components/schemas/TaskType.ACCEPT_POLICIES'
        status:
          $ref: '#/components/schemas/TaskStatus'
        dueDate:
          type: string
          format: date-time
          nullable: true
          description: The due date of the task.
        completionDate:
          type: string
          format: date-time
          nullable: true
          description: The date the task was completed.
        disabled:
          properties:
            date:
              type: string
              format: date-time
            reason:
              type: string
              nullable: true
          required:
            - date
            - reason
          type: object
          nullable: true
          description: If the task is disabled, the reason and date when it was disabled.
        unacceptedPolicies:
          items:
            properties:
              name:
                type: string
            required:
              - name
            type: object
          type: array
          description: Unaccepted policies that are relevant to the person.
        acceptedPolicies:
          items:
            properties:
              name:
                type: string
            required:
              - name
            type: object
          type: array
          description: Accepted policies that are relevant to the person.
      required:
        - taskType
        - status
        - dueDate
        - completionDate
        - disabled
        - unacceptedPolicies
        - acceptedPolicies
      type: object
      additionalProperties: false
    CompleteCustomTasksTaskSummary:
      description: Task summary for completing all custom tasks.
      properties:
        taskType:
          $ref: '#/components/schemas/TaskType.COMPLETE_CUSTOM_TASKS'
        status:
          $ref: '#/components/schemas/TaskStatus'
        dueDate:
          type: string
          format: date-time
          nullable: true
          description: The due date of the task.
        completionDate:
          type: string
          format: date-time
          nullable: true
          description: The date the task was completed.
        disabled:
          properties:
            date:
              type: string
              format: date-time
            reason:
              type: string
              nullable: true
          required:
            - date
            - reason
          type: object
          nullable: true
          description: If the task is disabled, the reason and date when it was disabled.
        incompleteCustomTasks:
          items:
            $ref: '#/components/schemas/CustomTask'
          type: array
          description: >-
            Incomplete custom tasks that are relevant given a person's
            requirements.
        completedCustomTasks:
          items:
            $ref: '#/components/schemas/CustomTask'
          type: array
          description: >-
            Custom tasks that have been completed and are relevant given a
            person's current requirements.
      required:
        - taskType
        - status
        - dueDate
        - completionDate
        - disabled
        - incompleteCustomTasks
        - completedCustomTasks
      type: object
      additionalProperties: false
    CompleteOffboardingCustomTasksTaskSummary:
      description: Task summary for completing all offboarding custom tasks.
      properties:
        taskType:
          $ref: '#/components/schemas/TaskType.COMPLETE_CUSTOM_OFFBOARDING_TASKS'
        status:
          $ref: '#/components/schemas/TaskStatus'
        dueDate:
          type: string
          format: date-time
          nullable: true
          description: The due date of the task.
        completionDate:
          type: string
          format: date-time
          nullable: true
          description: The date the task was completed.
        disabled:
          properties:
            date:
              type: string
              format: date-time
            reason:
              type: string
              nullable: true
          required:
            - date
            - reason
          type: object
          nullable: true
          description: If the task is disabled, the reason and date when it was disabled.
        incompleteCustomOffboardingTasks:
          items:
            $ref: '#/components/schemas/CustomTask'
          type: array
          description: >-
            Incomplete custom tasks that are relevant given a person's
            requirements.
        completedCustomOffboardingTasks:
          items:
            $ref: '#/components/schemas/CustomTask'
          type: array
          description: >-
            Custom tasks that have been completed and are relevant given a
            person's current requirements.
      required:
        - taskType
        - status
        - dueDate
        - completionDate
        - disabled
        - incompleteCustomOffboardingTasks
        - completedCustomOffboardingTasks
      type: object
      additionalProperties: false
    InstallDeviceMonitoringTaskSummary:
      description: Task summary for installing device monitoring.
      properties:
        taskType:
          $ref: '#/components/schemas/TaskType.INSTALL_DEVICE_MONITORING'
        status:
          $ref: '#/components/schemas/TaskStatus'
        dueDate:
          type: string
          format: date-time
          nullable: true
          description: The due date of the task.
        completionDate:
          type: string
          format: date-time
          nullable: true
          description: The date the task was completed.
        disabled:
          properties:
            date:
              type: string
              format: date-time
            reason:
              type: string
              nullable: true
          required:
            - date
            - reason
          type: object
          nullable: true
          description: If the task is disabled, the reason and date when it was disabled.
      required:
        - taskType
        - status
        - dueDate
        - completionDate
        - disabled
      type: object
      additionalProperties: false
    CompleteBackgroundChecksTaskSummary:
      description: Task summary for completing background checks.
      properties:
        taskType:
          $ref: '#/components/schemas/TaskType.COMPLETE_BACKGROUND_CHECKS'
        status:
          $ref: '#/components/schemas/TaskStatus'
        dueDate:
          type: string
          format: date-time
          nullable: true
          description: The due date of the task.
        completionDate:
          type: string
          format: date-time
          nullable: true
          description: The date the task was completed.
        disabled:
          properties:
            date:
              type: string
              format: date-time
            reason:
              type: string
              nullable: true
          required:
            - date
            - reason
          type: object
          nullable: true
          description: If the task is disabled, the reason and date when it was disabled.
      required:
        - taskType
        - status
        - dueDate
        - completionDate
        - disabled
      type: object
      additionalProperties: false
    PersonInfoSourceType.VANTA:
      enum:
        - VANTA
      type: string
    PersonInfoSourceType.SCIM:
      enum:
        - SCIM
      type: string
    PersonInfoSourceType.INTEGRATION:
      enum:
        - INTEGRATION
      type: string
    TaskType.COMPLETE_TRAININGS:
      enum:
        - COMPLETE_TRAININGS
      type: string
    TaskStatus:
      description: |-
        The status of a task.
        - COMPLETE: The task has been completed.
        - DUE_SOON: The task is due soon.
        - OVERDUE: The task is overdue.
        - NONE: The task is not assigned.
      enum:
        - COMPLETE
        - DUE_SOON
        - OVERDUE
        - NONE
      type: string
    Training:
      description: A person's security training.
      properties:
        name:
          type: string
      required:
        - name
      type: object
      additionalProperties: false
    TaskType.ACCEPT_POLICIES:
      enum:
        - ACCEPT_POLICIES
      type: string
    TaskType.COMPLETE_CUSTOM_TASKS:
      enum:
        - COMPLETE_CUSTOM_TASKS
      type: string
    CustomTask:
      description: A custom task.
      properties:
        name:
          type: string
      required:
        - name
      type: object
      additionalProperties: false
    TaskType.COMPLETE_CUSTOM_OFFBOARDING_TASKS:
      enum:
        - COMPLETE_CUSTOM_OFFBOARDING_TASKS
      type: string
    TaskType.INSTALL_DEVICE_MONITORING:
      enum:
        - INSTALL_DEVICE_MONITORING
      type: string
    TaskType.COMPLETE_BACKGROUND_CHECKS:
      enum:
        - COMPLETE_BACKGROUND_CHECKS
      type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````