Skip to main content
DELETE
/
v1
/
views
/
{view_id}
TypeScript SDK
import { Client } from "@notionhq/client"

const notion = new Client({ auth: process.env.NOTION_API_KEY })

const response = await notion.views.delete({
  view_id: "a3f1b2c4-5678-4def-abcd-1234567890ab"
})
{
  "object": "<string>",
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "parent": {
    "type": "<string>",
    "database_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
  },
  "type": "table"
}
Deletes the specified view. The last remaining view on a database cannot be deleted — delete the database instead. For dashboard views, deleting the dashboard also archives all of its widget views.
Integration capabilitiesThis endpoint requires an integration to have update content capabilities. For more information on integration capabilities, see the capabilities guide.

Errors

Returns a 404 HTTP response if the view doesn’t exist, or if the integration doesn’t have access. Returns a 400 HTTP response if the view is the last view on the database. Returns a 400 or 429 HTTP response if the request exceeds the request limits.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Notion-Version
enum<string>
required

The API version to use for this request. The latest version is 2026-03-11.

Available options:
2026-03-11

Path Parameters

view_id
string
required

The ID of the view to delete.

Response

object
string
required

The object type name.

Allowed value: "view"
id
string<uuid>
required

The ID of the view.

parent
object
required

The parent database of the view.

type
enum<string>
required

The view type.

Available options:
table,
board,
list,
calendar,
timeline,
gallery,
form,
chart,
map,
dashboard