Knock Workflows API is one of 19 APIs that Knock publishes on the APIs.io network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification.
Tagged areas include Workflows. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an AsyncAPI specification.
This API exposes
2 operations
across 2 paths,
and defines 32 schemas.
It is described by OpenAPI 3.0.0, at version 1.0.
Requests are made against a single base URL, https://api.knock.app.
2 operations2 paths32 schemas2 POST
Metadata
The identity and technical contract details declared by the specification.
Specification
OpenAPI 3.0.0
API Version
1.0
Base URL
https://api.knock.app/v1
Authentication
HTTP Bearer
Resource Areas
1
Authentication & Security 1
Knock Workflows API declares
1 security scheme
for authenticating requests.
It accepts HTTP bearer tokens (JWT) (BearerAuth).
By default, every request must be authenticated.
Paths & Operations 2
Across 2 paths, the API surfaces 2 operations — 2 POST. Each is listed below with its method, path, parameters, and response codes.
Workflows 2
A workflow is a structured set of steps that is triggered to produce notifications sent over channels.
POST
/v1/workflows/{key}/trigger
Trigger workflow
triggerWorkflow (2)1 parambody→ 200
POST
/v1/workflows/{key}/cancel
Cancel workflow
cancelWorkflow1 parambody→ 204
Schemas 32
The contract defines 32 schemas that model the data the API accepts and returns. The most detailed are InlineIdentifyUserRequest (10 properties), PreferenceSetChannelTypes (6 properties), PreferenceSetRequest (6 properties), InlineIdentifyObjectRequest (6 properties). Each schema is shown below with its type and property counts.
DiscordIncomingWebhookConnection
object
Discord incoming webhook connection.
1 property1 required
TenantRequest
object
A tenant to be set in the system. You can supply any additional properties on the tenant object.
5 properties1 required
RecipientReference
A reference to a recipient, either a user identifier (string) or an object reference (ID, collection).
InlinePreferenceSetRequest
object
Inline set preferences for a recipient, where the key is the preference set id. Preferences that are set inline will be merged into any existing preferences ra…
InlineTenantRequest
An request to set a tenant inline.
MsTeamsChannelData
object
Microsoft Teams channel data.
2 properties1 required
MsTeamsTokenConnection
object
Microsoft Teams token connection.
4 properties
TriggerWorkflowResponse
object
The response from triggering a workflow.
1 property1 required
MsTeamsIncomingWebhookConnection
object
Microsoft Teams incoming webhook connection.
1 property1 required
OneSignalChannelDataPlayerIdsOnly
object
OneSignal channel data.
1 property1 required
InlineIdentifyObjectRequest
object
A custom [Object](/concepts/objects) entity which belongs to a collection.
6 properties2 required
PreferenceSetWorkflowCategorySetting
object
Workflow or category preferences within a preference set
PreferenceSetChannelTypes
object
Channel type preferences.
6 properties
PreferenceSetChannelTypeSetting
object
A set of settings for a channel type. Currently, this can only be a list of conditions to apply.
1 property1 required
CancelWorkflowRequest
object
When invoked using a specific workflow key and cancellation key, will cancel any queued workflow runs associated with that key/cancellation key pair. Can optio…
2 properties1 required
PreferenceSetRequest
object
A request to set a preference set for a recipient.
6 properties
AWSSNSPushChannelDataTargetARNsOnly
object
AWS SNS push channel data.
1 property1 required
DiscordChannelConnection
object
Discord channel connection.
1 property1 required
AWSSNSPushChannelDataDevicesOnly
object
AWS SNS push channel data.
1 property1 required
InlineIdentifyUserRequest
object
A set of parameters to inline-identify a user with. Inline identifying the user will ensure that the user is available before the request is executed in Knock.…
10 properties1 required
Condition
object
A condition to be evaluated.
3 properties3 required
InlineChannelDataRequest
object
A request to set channel data for a type of channel inline.
RecipientRequest
Specifies a recipient in a request. This can either be a user identifier (string), an inline user request (object), or an inline object request, which is deter…
PushChannelDataTokensOnly
object
Push channel data.
1 property1 required
DiscordChannelData
object
Discord channel data.
1 property1 required
SlackTokenConnection
object
A Slack connection token.
3 properties
PreferenceSetChannels
object
Channel preferences.
SlackIncomingWebhookConnection
object
A Slack connection incoming webhook.
1 property1 required
SlackChannelData
object
Slack channel data.
2 properties1 required
TriggerWorkflowRequest
object
A request to trigger a notification workflow.
5 properties1 required
PreferenceSetChannelSetting
object
A set of settings for a specific channel. Currently, this can only be a list of conditions to apply.
1 property1 required
PushChannelDataDevicesOnly
object
Push channel data.
1 property1 required
Specification
The full machine-readable OpenAPI contract behind this narrative.