Create (fork) a saved view

post/v1/workspaces/{workspace_id}/views

Saves a new records view — the fork half of fork-or-mutate. Capturing the current filters, sort, and columns as a named view forks a transient default view into a persisted one. Set is_default to promote it (the previous default is demoted).

Requires a bearer token: Authorization: Bearer <token>.

Path parameters

NameTypeRequiredDescription
workspace_idstring <uuid>YesWorkspace id that owns the view.e.g. 11111111-2222-3333-4444-555555555555

Request

cURL
curl -X POST https://api.wellapp.ai/v1/workspaces/{workspace_id}/views \
  -H "Authorization: Bearer $WELL_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "data": {
    "type": "workspace_view",
    "attributes": {
      "name": "Overdue Anthropic invoices",
      "root": "invoices",
      "filters": [
        {
          "field": "status",
          "operator": "in",
          "value": [
            "issued"
          ],
          "conjunction": "and"
        }
      ],
      "sort": [
        {
          "field": "due_date",
          "direction": "asc"
        }
      ],
      "is_default": false,
      "layout_type": "kanban",
      "group_by": [
        "status"
      ]
    }
  }
}'
Request body
{
  "data": {
    "type": "workspace_view",
    "attributes": {
      "name": "Overdue Anthropic invoices",
      "root": "invoices",
      "filters": [
        {
          "field": "status",
          "operator": "in",
          "value": [
            "issued"
          ],
          "conjunction": "and"
        }
      ],
      "sort": [
        {
          "field": "due_date",
          "direction": "asc"
        }
      ],
      "is_default": false,
      "layout_type": "kanban",
      "group_by": [
        "status"
      ]
    }
  }
}

Responses

201View created.

{
  "data": {
    "type": "workspace_view",
    "id": "5c1a2b3d-0000-4000-8000-000000000001",
    "attributes": {
      "name": "Overdue Anthropic invoices",
      "root": "invoices",
      "columns": [
        {
          "field": "issuer.name",
          "visible": true
        },
        {
          "field": "grand_total.amount",
          "visible": true
        }
      ],
      "sort": [
        {
          "field": "due_date",
          "direction": "asc"
        }
      ],
      "filters": [
        {
          "field": "status",
          "operator": "in",
          "value": [
            "issued"
          ],
          "conjunction": "and"
        },
        {
          "field": "issuer.name",
          "operator": "contains",
          "value": "Anthropic"
        }
      ],
      "display": "table",
      "layout_config": {},
      "is_default": false,
      "created_at": "2026-06-01T10:00:00.000Z",
      "updated_at": "2026-06-05T14:00:00.000Z"
    }
  }
}

400Bad Request

{
  "code": "BAD_REQUEST",
  "status": 0,
  "title": "Bad Request",
  "message": "Validation failed.",
  "meta": {
    "trace_id": "a1b2c3"
  }
}

401Unauthorized

{
  "code": "UNAUTHORIZED",
  "status": 0,
  "title": "Unauthorized",
  "message": "Authentication required.",
  "meta": {
    "trace_id": "a1b2c3"
  }
}