# flow2act · Update a person

Replace all editable person fields and send the current revision.

Send full input fields, not id, createdAt or updatedAt. Cycles, inactive references, foreign workspace links and stale revisions are rejected.

## PUT /v1/organization/people/{personId}

Authentication: restricted integration key (scope: organization:write) or flow2act sign-in access token
Required tenant header: X-Organization-Id.
Required user permissions: Administrator or Sandbox developer required. The API checks current membership, roles, key scopes and resource permissions on every request. Documentation visibility grants no access.

## Input parameters
- displayName (string, required): min length 1 · max length 120
- email (string, required): email · max length 254
- jobTitle (string, required): max length 120 · default ""
- externalId (string, required): min length 1 · max length 120 · default null
- unitId (string, required): uuid · default null
- managerId (string, required): uuid · default null
- hrPersonId (string, required): uuid · default null
- identityId (string, required): uuid · default null
- active (boolean, required): default true
- revision (integer, required): min 1 · max 9007199254740991

## Request example (replace example IDs)

```sh
curl -X PUT "https://api.flow2act.com/v1/organization/people/10000000-0000-4000-8000-000000000006" \
  -H "authorization: Bearer $FLOW2ACT_API_KEY" \
  -H "x-organization-id: 10000000-0000-4000-8000-000000000001" \
  -H "idempotency-key: example-update-person-001" \
  -H "content-type: application/json" \
  --data-raw '{
  "displayName": "Alex Example",
  "email": null,
  "jobTitle": "Senior engineer",
  "externalId": "employee-example",
  "unitId": null,
  "managerId": null,
  "hrPersonId": null,
  "identityId": null,
  "active": true,
  "revision": 1
}'
```

## Response excerpt

```json
{
  "people": [
    {
      "displayName": "Alex Example",
      "email": null,
      "jobTitle": "Engineer",
      "externalId": "employee-example",
      "unitId": null,
      "managerId": null,
      "hrPersonId": null,
      "identityId": null,
      "active": true,
      "id": "10000000-0000-4000-8000-000000000006",
      "revision": 2
    }
  ]
}
```

Source: /docs/update-person
Full schemas: /docs/openapi.json
