Skip to main content
Views are saved configurations of the recordings, deals, companies and contacts tables in Claap. A view defines which columns are displayed, which filters are applied and how rows are sorted. The API exposes the same views users create and share in the Claap application. Each domain has its own set of endpoints under /v1/recordings/views, /v1/deals/views, /v1/companies/views and /v1/contacts/views, since the available columns, filters and sort fields differ between domains.

Visibility

Views in Claap are either public (shared with the workspace) or private to their owner. Since API requests do not impersonate workspace users, only public views are accessible through the API:
  • Listing endpoints only return public views.
  • Retrieving, updating or deleting a private view fails as if the view did not exist.
  • Created views are always public.

Default views

Built-in default views (for example “All deals” or “My Meetings”) are returned by the listing endpoints after saved views, and can be retrieved by their viewId. They carry isDefault: true and cannot be updated or deleted.

Listing records within a view

The record listing endpoints — GET /v1/recordings, GET /v1/deals, GET /v1/companies and GET /v1/contacts — accept an optional viewId query parameter. When set, the endpoint returns the records of that view: the view’s filters and sorting are applied. The response keeps its usual shape and does not include the view’s columns; use the view endpoints under /v1/<domain>/views for column values. Other query parameters narrow the results down within the view rather than replacing its filters. For recordings, filters such as channelId, labels, recorderId, recorderEmail, createdAfter and createdBefore intersect with the view — a value that contradicts the view yields an empty page. Where a sort parameter is available, it overrides the view’s own sorting. An unknown or inaccessible viewId returns a 404 error, following the same visibility rules as the view endpoints: private views are reported as not found.

Ownership

Creating a view requires a creatorEmail attribute. It must be the email address of an active workspace member, who becomes the owner of the view, as if they had created it in the Claap application.

Partial updates

Update endpoints accept partial payloads: omitted attributes keep their current values. Sending an attribute replaces its value entirely — for instance, sending columns replaces the whole column list, not just the entries it contains. A few internal filter attributes are not exposed through the API and always keep their stored values on update.

The Me filter type

Some filters (for example the recording author or the deal owner) accept a special entry of type Me in addition to explicit users or email addresses. Me is resolved dynamically to whoever is viewing the table in the Claap application, which allows a single shared view like “My deals” to show different rows to each user. Since API requests are not made on behalf of a workspace user, Me is resolved against the whole workspace when listing records with a viewId: a view filter that includes Me matches records of any workspace member, and a view that excludes Me returns an empty page.