---
title: "Bulk delete subscriptions"
method: POST
path: "/v1/objects/{collection}/bulk/subscriptions/delete"
tags: ["Objects", "Subscriptions", "Bulk operations"]
---

# Bulk delete subscriptions

`POST /v1/objects/{collection}/bulk/subscriptions/delete`

Delete subscriptions for many objects in a single collection type. If a subscription for an object in the collection doesn't exist, it will be skipped.

## Path parameters

- `collection` string, required

## Request body

- BulkDeleteSubscriptionsRequest — A request to delete subscriptions for many groups of 1 subscribed-to object, N subscriber recipients.
  - `subscriptions` object[], required — A nested list of subscriptions.
    - `id` string, required — Unique identifier for the object.
    - `recipients` RecipientReference[], required — The recipients of the subscription. You can subscribe up to 100 recipients to an object at a time.
      - union — A reference to a recipient, either a user identifier (string) or an object reference (ID, collection).
        - string — The ID of the user which is used as the reference for the recipient.
        - object — A reference to a recipient object.
          - `collection` string — The collection the recipient object belongs to.
          - `id` string — An identifier for the recipient object.

## Response `200`

OK

- BulkOperation — A bulk operation entity.
  - `__typename` string, required — The typename of the schema.
  - `completed_at` string, date-time, nullable — Timestamp when the bulk operation was completed.
  - `error_count` integer — The number of failed operations.
  - `error_items` object[] — A list of items that failed to be processed.
    - `collection` string, nullable — The collection this object belongs to.
    - `id` string, required — Unique identifier for the object.
  - `estimated_total_rows` integer, required — The estimated total number of rows to process.
  - `failed_at` string, date-time, nullable — Timestamp when the bulk operation failed.
  - `id` string, uuid, required — Unique identifier for the bulk operation.
  - `inserted_at` string, date-time, required — Timestamp when the resource was created.
  - `name` string, required — The name of the bulk operation.
  - `processed_rows` integer, required — The number of rows processed so far.
  - `progress_path` string, uri — The URI to the bulk operation's progress.
  - `started_at` string, date-time, nullable — Timestamp when the bulk operation was started.
  - `status` 'queued' | 'processing' | 'completed' | 'failed', required — The status of the bulk operation.
  - `success_count` integer, required — The number of successful operations.
  - `updated_at` string, date-time, required — The timestamp when the resource was last updated.

---

[API](https://skmtc.net/knocklabs/apis/knock-api.md) · [All operations](https://skmtc.net/knocklabs/apis/knock-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/knocklabs/knock-api/revisions/4b8499dddbc5/schema)
