Docs
Create View
POST /views
POST
/viewsRequired Tokens
| Field | Type | Required | Description |
|---|---|---|---|
| Bearer | Authorization: Bearer <api-key> | Optional | Your API key. Pass it as the Bearer token on every request. |
Creates a new saved view for a table. The entityId scopes the view to the relevant entity (e.g. an event or collaborator). The configuration field holds the serialized layout state as a JSON string.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | Required | Display name for the view. |
| index | int | Required | Sort position among views for this table. |
| entityId | Guid | Required | The entity this view belongs to (e.g. `{{eventId}}`). |
| tableId | string | Required | Identifier of the table this view applies to (e.g. `"tasks"`, `"activities"`). |
| isDefault | bool | Required | Whether this should be the default view for the table. Setting `true` will unset any existing default. |
| configuration | string | Required | Serialized view configuration as a JSON string. Pass `"{}"` for an empty configuration. |
| isPrivate | bool | Required | `false` creates a shared view everyone on the event can see. `true` creates a view visible only to the calling user. **Permanent** — scope cannot be changed later, only copied via a new create. Omitting the field yields a shared view. |
Scope and indexes
Shared views and each user's private views are independent 1-based index sequences. A first
private view on a table that already has three shared views gets index: 1, not 4. Send the next
index within the bucket you are creating into.
One shared default and one private default per user may coexist on the same table. Setting
isDefault: true demotes the incumbent default within the same scope only.
Errors
| Condition | Response |
|---|---|
isPrivate: true with no acting user (API-key auth) | 400 — A private view requires a signed-in user |
Blank name, blank configuration, blank tableId, empty entityId | 400 |
index less than 1 | 400 — Index must be greater than 0 |
Response
Returns 201 Created with an empty body on success.