{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/paubox/main/json-schema/paubox-bulk-subscription-change-request-schema.json", "title": "BulkSubscriptionChangeRequest", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/paubox-subscriptions-api-openapi.yml#/components/schemas/BulkSubscriptionChangeRequest", "type": "object", "properties": { "subscriber_ids": { "type": "array", "description": "UUIDs of specific subscribers to update. When present the request is handled synchronously and every other field is ignored.", "items": { "type": "string" } }, "from_subscription_list_id": { "type": "string", "description": "UUID of the list whose members are being updated. Required when `subscriber_ids` is omitted. On the `bulk_global_*` endpoints this is a subscription list UUID; on the `dynamic_bulk_*` endpoints it is a dynamic list UUID." }, "search": { "type": "string", "description": "Search term used to narrow the list's members. Defaults to `*` (all members) on the `bulk_global_*` endpoints." }, "filters": { "type": "string", "description": "URL-encoded JSON describing additional subscriber filters, as generated by the subscriber search in the Marketing dashboard. The decoded value is an array of filter groups, each group an array of `{\"field\": ..., \"op\": ..., \"terms\": [...]}` objects. Ignored by the `dynamic_bulk_*` endpoints, which use the filters saved on the dynamic list." }, "except_ids": { "type": "array", "description": "UUIDs of subscribers to exclude from the operation. Use this to express \"select all except these\".", "items": { "type": "string" } } } }