Create record access grants in bulk
Shares a single record with multiple users and/or the whole workspace in one request, up to 1000 grants per call. Only the record’s owner or a workspace permission admin (records and lists), the record’s owner (messages), a participant (meetings), or the assignee or creator (tasks) can create grants. Requires a user-backed API key; workspace-actor API keys are not supported.
API key authentication. Send your key in the Authorization header as: api-key <your-api-key>.
In: header
Path Parameters
The workspace slug — the {slug} segment of your Clarify workspace URL.
The shareable object the record belongs to: a record entity (deal, company, person, task, a custom object) or list / meeting / message.
The unique ID of the shared record.
Query Parameters
When true, suppresses in-app and Slack notifications for this mutation.
Header Parameters
The API version for this request. Send 2026-10 to get the behavior documented here. Omit it to use your API key's version, which this header can raise but not lower.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/workspaces/string/objects/string/records/string/access/bulk" \ -H "clarify-version: 2026-10" \ -H "Content-Type: application/json" \ -d '{ "data": [ { "type": "object-record-access", "attributes": { "grantee_type": "user", "grantee_id": "7d4e2f9a-1b3c-4d5e-8f6a-9c0b2d4e6f81", "access_level": "view" } }, { "type": "object-record-access", "attributes": { "grantee_type": "workspace", "grantee_id": null, "access_level": "edit" } } ] }'{ "data": [ { "type": "object-record-access", "id": "2f4a6c8e-0b1d-4a3f-8c5e-7a9b1c3d5e6f", "attributes": { "_id": "2f4a6c8e-0b1d-4a3f-8c5e-7a9b1c3d5e6f", "object_id": "9d2c4e6f-8a1b-4c3d-9e5f-7a9b1c3d5e7f", "grantee_type": "user", "grantee_id": "7d4e2f9a-1b3c-4d5e-8f6a-9c0b2d4e6f81", "access_level": "view", "source": "share", "_created_at": "2026-01-15T09:30:00.000Z", "_created_by": "7d4e2f9a-1b3c-4d5e-8f6a-9c0b2d4e6f81", "_updated_at": null, "_updated_by": null } }, { "type": "object-record-access", "id": "3a5b7d9f-1c2e-4b6a-8d0f-2e4c6a8b0d1f", "attributes": { "_id": "3a5b7d9f-1c2e-4b6a-8d0f-2e4c6a8b0d1f", "object_id": "9d2c4e6f-8a1b-4c3d-9e5f-7a9b1c3d5e7f", "grantee_type": "workspace", "grantee_id": null, "access_level": "edit", "source": "share", "_created_at": "2026-01-15T09:30:00.000Z", "_created_by": "7d4e2f9a-1b3c-4d5e-8f6a-9c0b2d4e6f81", "_updated_at": null, "_updated_by": null } } ], "meta": { "viewerAccess": [] }}Create a record access grant
Shares a single record — a record entity (`deal`, `company`, `person`, or a custom object) or a `list`, `meeting`, or `message` — with a user or the whole workspace at a given access level. Only the record’s owner or a workspace permission admin (records and lists), the record’s owner (messages), a participant (meetings), or the assignee or creator (tasks) can create grants. Requires a user-backed API key; workspace-actor API keys are not supported.
List record access grants
Returns every access grant on a single record — a record entity (`deal`, `company`, `person`, or a custom object) or a `list`, `meeting`, or `message` — as a JSON:API collection. A grant shares the record with a single workspace member or the whole workspace at a given access level. Visible to anyone who can already read the record. Requires a user-backed API key; workspace-actor API keys are not supported.