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

# Saved views

> Manage saved keyword and competitor comparison views.

Paths are relative to `/api/v1`. All routes use a project-scoped API key -
`Authorization: Bearer <api_key>` - that must belong to the project in the
path. See [Authentication](/docs/docs/authentication) for scopes.

| Method   | Path                                                  | Purpose                                                              |
| -------- | ----------------------------------------------------- | -------------------------------------------------------------------- |
| `GET`    | `/projects/{project_id}/saved-views?surface=keywords` | List views for one surface (`keywords` by default or `competitors`). |
| `POST`   | `/projects/{project_id}/saved-views`                  | Save a named, versioned surface config.                              |
| `DELETE` | `/projects/{project_id}/saved-views/{view_id}`        | Delete a view through the project-scoped route.                      |
| `DELETE` | `/saved-views/{view_id}`                              | Delete the same view through the short route.                        |

Every response includes `surface`. A create request accepts either a keyword
config or a competitor config with `surface: "competitors"`, `version: 1`, an
exact Google location/device scope, filters, and public keyword exclusions. The
optional top-level `surface` is also accepted for API clients. Names are scoped
by project and surface, so a Keywords view and a Competitors view may share a
name without overwriting one another.

Saved views store presentation state; deleting one does not mutate keywords.

The generated [OpenAPI document](/docs/api/v1/openapi.json) remains the
authoritative request and response schema.
