openapi: 3.1.1 info: title: SuprSend Broadcast Workflow Run API description: APIs supported on suprsend platform version: 1.2.2 servers: - url: https://hub.suprsend.com security: - sec0: [] - BearerAuth: [] tags: - name: Workflow Run paths: /v1/workflow_run/cancel/: post: summary: Cancel Workflow security: - BearerAuth: [] description: 'API to cancel a running workflow execution. You can cancel a workflow by passing any combination of filters in the request body. When multiple parameters are provided, they are **ANDed** together to narrow down the matching workflow runs. For example, passing both `workflow_slug` and `recipients` will cancel only the workflow runs that match both the given slug and recipients. ' operationId: cancel-workflow x-codeSamples: - lang: cURL label: Cancel by execution_id source: "curl --request POST \\\n --url 'https://hub.suprsend.com/v1/workflow_run/cancel/' \\\n --header 'Authorization: Bearer __your_api_key__' \\\n --header 'Content-Type: application/json' \\\n --data '{\n \"execution_id\": \"dsl_xxxx-xxxx-xxxx-xxxx\"\n }'\n" - lang: cURL label: Cancel by multiple filters source: "curl --request POST \\\n --url 'https://hub.suprsend.com/v1/workflow_run/cancel/' \\\n --header 'Authorization: Bearer __your_api_key__' \\\n --header 'Content-Type: application/json' \\\n --data '{\n \"recipients\": [\"user_123\"],\n \"workflow_slug\": \"order-confirmation\"\n }'\n" requestBody: required: true content: application/json: schema: type: object description: 'Filter parameters to identify workflow runs to cancel. At least one parameter must be provided. When multiple parameters are passed, they are **ANDed** together. ' properties: execution_id: type: string description: Unique execution identifier of the workflow run to cancel. You can find this in the workflow logs on the SuprSend dashboard. example: dsl_xxxx-xxxx-xxxx-xxxx recipients: type: array description: List of recipient identifiers (distinct_id or contact info) whose workflow runs should be cancelled. items: type: string example: - user_123 - user@example.com idempotency_key: type: string description: Idempotency key that was passed when triggering the workflow. Use this to cancel a specific workflow triggered with a known idempotency key. example: a1b2c3d4-xxxx-xxxx-xxxx-ef0123456789 workflow_slug: type: string description: Slug of the workflow whose runs should be cancelled. example: order-confirmation responses: '200': description: 200 - OK content: application/json: examples: Cancelled: summary: Workflow runs cancelled value: execution_ids: - dsl_xxxx-xxxx-xxxx-xxxx NoMatch: summary: No matching workflow runs found value: execution_ids: [] schema: type: object properties: execution_ids: type: array description: List of workflow execution IDs that were successfully cancelled. Empty array if no matching workflow runs were found. items: type: string description: Unique execution identifier of the cancelled workflow run. example: - dsl_xxxx-xxxx-xxxx-xxxx '400': description: 400 - Bad Request content: application/json: examples: Result: value: code: 400 message: 'at least one filter is required: execution_id, recipients, idempotency_key' schema: type: object description: Returned when the request body does not include at least one valid filter parameter. properties: code: type: integer description: HTTP status code of the error. example: 400 message: type: string description: Human-readable error message describing the issue. example: 'at least one filter is required: execution_id, recipients, idempotency_key' deprecated: false tags: - Workflow Run components: securitySchemes: BearerAuth: type: http scheme: bearer bearerFormat: API_Key description: Pass as `Bearer `. Get API Key from SuprSend dashboard Developers -> API Keys section. ServiceTokenAuth: type: apiKey in: header name: ServiceToken description: You can get Service Token from [SuprSend dashboard -> Account Settings -> Service Tokens](https://app.suprsend.com/en/account-settings/service-tokens) section. sec0: type: apiKey in: header name: Authorization x-bearer-format: bearer description: Bearer authentication header of the form `Bearer `, where is your auth token. x-readme: headers: [] explorer-enabled: true proxy-enabled: true x-readme-fauxas: true