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

# Update Account

> Update an existing account's name, domain or attributes

# Update Account

Updates an existing account. Returns 404 when it does not exist; use [Create or Update Account](/api-reference/accounts/upsert) to upsert.

## Request

<ParamField path="externalId" type="string" required>
  Your organization ID.
</ParamField>

<ParamField body="name" type="string">
  Display name. `null` clears it.
</ParamField>

<ParamField body="domain" type="string">
  Primary domain. `null` clears it.
</ParamField>

<ParamField body="attributes" type="object">
  Attributes to merge. `null` values delete keys.
</ParamField>

<ParamField body="replaceAttributes" type="boolean" default="false">
  Replace all stored attributes instead of merging.
</ParamField>

```bash theme={null}
curl -X PATCH "https://api.sequenzy.com/api/v1/accounts/org_123" \
  -H "Authorization: Bearer API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "attributes": { "plan": "team", "seats": null } }'
```

## Responses

<ResponseExample>
  ```json 200 theme={null}
  { "success": true, "account": { "id": "acc_abc123", "externalId": "org_123", "name": "Acme", "attributes": { "plan": "team" }, "memberCount": 2 } }
  ```

  ```json 400 theme={null}
  { "success": false, "error": "Accounts support at most 100 attributes." }
  ```

  ```json 404 theme={null}
  { "success": false, "error": "Account not found" }
  ```
</ResponseExample>
