# Update workspace collaborator

`PATCH https://api.airtable.com/v0/meta/workspaces/{workspaceId}/collaborators/{userOrGroupId}`

Updates the permission level of a collaborator on a workspace.

## Requirements

- **Authentication:** [Personal access token](https://airtable.com/developers/web/api/authentication.md#types-of-token), [OAuth integration](https://airtable.com/developers/web/api/authentication.md#types-of-token)
- **Scope:** [`workspacesAndBases:write`](https://airtable.com/developers/web/api/scopes.md#workspaces-and-bases-write)
- **User role:** Workspace collaborators subject to [sharing restrictions](https://support.airtable.com/docs/workspace-sharing-restrictions)
- **Billing plans:** Enterprise (pre-2023.08 legacy plan), Enterprise Scale

## Path parameters

- `workspaceId: string`

- `userOrGroupId: string`

## Request body

- `permissionLevel: Workspace-Permission-Levels` — required

## Response format

### Example — Success request

```sh
curl -X PATCH "https://api.airtable.com/v0/meta/workspaces/{workspaceId}/collaborators/{userOrGroupId}" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
--data '{
    "permissionLevel": "read"
  }'
```

## Error responses

### 403

**Groups cannot be owners** — Cannot assign a group as a workspace owner.

```json
{
  "error": {
    "message": "Groups cannot be the owners of a workspace",
    "type": "INVALID_PERMISSIONS"
  }
}
```

**Not workspace collaborator** — This route can only be used for users who are already collaborators on the workspace. To add a new collaborator, use the [add workspace collaborator](workspace-addWorkspaceCollaborators) route.

```json
{
  "error": {
    "message": "Invalid permissions",
    "type": "INVALID_PERMISSIONS"
  }
}
```

**Sole owner** — A workspace must have at least 1 owner who's responsible for the workspace's bill.

```json
{
  "error": {
    "message": "You can not change the permissions of the sole owner of the workspace.",
    "type": "INVALID_PERMISSIONS"
  }
}
```
