Channel steps

Learn more about channel steps within Knock's notification engine.

A channel step within a workflow is the building block to produce a notification for a recipient. Channel steps house your notification templates and represent a notification to be delivered on a single channel type (e.g. email, push, SMS, in-app, etc).

For a channel step to be valid it must have a channel or channel group associated with it.

Channel step execution

When a channel step is executed Knock does the following:

  1. Runs through any step conditions to see if the step should be executed.
  2. Checks the recipient has the information required to send notifications via this channel. (e.g. for an email channel, do they have an email address set? For a push channel do they have the required channel data configured?)
  3. Checks the recipient's preferences to see if they have opted out from receiving notifications on this channel or from this workflow.
  4. Checks the channel's send windows to see if the notification should be sent now or at a later time.

If the step continues, Knock will render the template associated with the step and enqueue a message to deliver to the provider via the configured credentials on the channel.

Channel support

You can read more about configuring channels in our integrations guide.

In-app notifications

The Knock Feed API gives developers a way to deliver in-app notifications to feeds, inboxes, and other notification-based experiences.

There are a few ways to power in-app notifications in your product using Knock:

  • Use our React SDK. The Knock notification feed component provides real-time updates, pagination, badge behavior, filtering, and more. It's a great way to quickly add an in-app feed to your product if you use React.
  • Leverage our client-side JS SDK. This is a good approach if you need to use a component library outside of React JS but are still in the JS ecosystem.
  • Integrate with our API directly. If you're not working within the JS ecosystem in your client, you can integrate directly with the Knock Feed API to power your in-app notifications.

Out-of-app channels

We support notification delivery to the following out-of-app channel types: email, push, SMS, and 3rd-party chat apps (such as Slack). You can see a list of which providers we support within each channel type in the Integrations > Channels section of the Knock dashboard.