---
title: "Update a table view"
method: PATCH
path: "/api/v1/table-views/{id}"
tags: ["Views"]
---

# Update a table view

`PATCH /api/v1/table-views/{id}`

## Request

- Base URL: `https://api.recruitwithatlas.com`
- URL: `https://api.recruitwithatlas.com/api/v1/table-views/{id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/recruitwithatlas/apis/atlas-api/docs/api/v1/table-views/:id/patch.ts> (a function with typed inputs; its response is checked against the schema)

Changes a saved view. Send at least one field; each one replaces its value wholesale, so `filters`, `columns` and `sorting` are not merged into what is already stored. `name`, `visibility` and `isCollaborative` are owner-only (an agency admin may also change them on a shared view). On a collaborative view, anyone who can see it may change `filters`, `columns` and `sorting`.

## Path parameters

- `id` string, uuid, required: Table view ID

## Request body

- object
  - `name` string: New view name
  - `filters` object: Replaces the saved filter state
  - `columns` object: Replaces the column layout
    - `visibility` object, required: Column ID → shown
    - `order` string[], required: Column IDs, left to right
  - `sorting` object[]: Replaces the sort order
    - `id` string, required: Column ID to sort on
    - `direction` 'asc' | 'desc', required: Sort direction
  - `visibility` 'public' | 'team' | 'private': Who can see the view — owner or agency admin only
  - `isCollaborative` boolean: Whether viewers of a shared view may change it — owner or agency admin only

## Response `200`

Table view updated

- object
  - `status` 'ok', required
  - `data` object, required
    - `id` string, uuid, required: Table view ID
    - `name` string, required: View name
    - `pageType` 'people' | 'companyContacts' | 'companies', required: Page the view belongs to
    - `filters` object, required: Saved filter state — opaque JSON defined by the page
    - `columns` object, required: Column layout keyed by the page's own column IDs
      - `visibility` object, required
      - `order` string[], required
    - `sorting` object[], required: Saved sort order
      - `id` string, required
      - `direction` string, required
    - `visibility` 'public' | 'team' | 'private', required: Who can see the view
    - `isCollaborative` boolean, required: Whether viewers of a shared view may change it
    - `isSystem` boolean, required: Whether Atlas ships the view (never true for API-created views)
    - `position` integer, required: Order within the owner's own view list
    - `owner` object, required: The user who owns the view
      - `id` string, uuid, required
      - `name` string, required: "Deleted user" when the owner has been deleted
      - `deleted` boolean, required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required

## Other responses

- `401`: Unauthorized - missing or invalid API key
- `403`: The view is visible to you, but you may not change it — only the owner, or an agency admin on a shared view
- `404`: The view does not exist, belongs to another agency, or is not visible to you
- `415`: The request carried a body without `Content-Type: application/json`
- `422`: Validation error - the request failed schema validation (`errors.fieldErrors`) or a business rule (`errors.formErrors`)
- `429`: Too many requests - the caller has exceeded the per-agency rate limit for the tier this endpoint counts against (default per minute: 1200 read / 400 write / 60 upload). Inspect the `RateLimit-*` headers — returned on every response, not only on 429s — and back off until the window resets. See the "Rate limits" section of the introduction for details.
- `500`: Internal server error
- `501`: Endpoint is disabled in this environment. Not a routing error — do not retry.

## Changes

- **2026-10-07** `0c873956b881`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/recruitwithatlas/apis/atlas-api/changes/api/v1/table-views/:id/patch.md)

---

[API](https://skmtc.dev/recruitwithatlas/apis/atlas-api.md) - [All operations](https://skmtc.dev/recruitwithatlas/apis/atlas-api/llms.txt) - [OpenAPI document](https://skmtc.dev/recruitwithatlas/apis/atlas-api/revisions/158ee454751c?raw)
