Skip to content

Commit c3344bc

Browse files
cjbellcursoragentsamseely
authored
Update "what is knock" page content (#1008)
* Update "What is Knock" doc with expanded messaging infrastructure overview Co-authored-by: chris <chris@knock.app> * Update Knock description to clarify product messaging capabilities Co-authored-by: chris <chris@knock.app> * Update Knock overview with minor formatting and content improvements Co-authored-by: chris <chris@knock.app> * chore: small sam edits --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Sam Seely <samseely@gmail.com>
1 parent e0f2e58 commit c3344bc

1 file changed

Lines changed: 49 additions & 17 deletions

File tree

content/getting-started/what-is-knock.mdx

Lines changed: 49 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,19 @@
11
---
22
title: What is Knock?
3-
description: Learn more about what Knock does and how it helps power your product notifications.
3+
description: Learn more about what Knock does and how it helps power your product messaging.
44
tags: ["getting started", "explainer", "explained"]
55
section: Getting started
66
---
77

8-
Knock is notifications infrastructure that helps you implement notifications your users will love, without the effort of building and maintaining your own in-house notifications system.
8+
Knock is product and customer messaging infrastructure. You can use Knock to power all of your product's messaging needs, including transactional messaging, lifecycle marketing, one-time announcements, and in-product messaging, without the effort of building and maintaining your own in-house messaging system.
99

10-
In this overview, we'll cover some of the foundational concepts of Knock. Knock is designed with both developers and product teams in mind: it's easy for developers to implement quickly, and simple for less-technical users to maintain with our intuitive dashboard.
10+
Knock enables you to power three core messaging experiences:
11+
12+
- **Workflows.** Transactional and lifecycle messaging flows that respond to user actions and events.
13+
- **Broadcasts.** One-time messages sent to groups of users for announcements, updates, and campaigns.
14+
- **Guides.** In-app lifecycle messaging that helps users discover features and complete key actions.
15+
16+
In this overview, we'll cover the foundational concepts of Knock. Knock is designed with both developers and product teams in mind. It's easy for developers to implement, and simple for less-technical users to maintain in our dashboard.
1117

1218
<div
1319
style={{
@@ -39,7 +45,7 @@ In this overview, we'll cover some of the foundational concepts of Knock. Knock
3945

4046
## Workflows
4147

42-
Workflows are a foundational concept in Knock. They allow you to easily model complex messaging flows across channels using a variety of logical function steps while respecting a users individual preferences. Workflows are a primary method for sending notifications in Knock.
48+
Workflows are a foundational concept in Knock. They enable you to easily model complex messaging flows across channels using a variety of logical function steps while respecting a user's individual preferences. Workflows power both transactional messaging (such as order confirmations, password resets, and account updates) and lifecycle messaging (such as onboarding sequences, engagement campaigns, and retention flows).
4349

4450
<Image
4551
src="/images/what-is-knock/workflow-diagram-3.png"
@@ -53,11 +59,35 @@ Your application can trigger workflows using our REST API, any one of our [avail
5359

5460
<MultiLangCodeBlock snippet="workflows.trigger" title="Trigger a workflow" />
5561

56-
Knock processes each workflow run using a combination of the following concepts:
62+
## Broadcasts
63+
64+
Broadcasts enable you to send one-time messages to groups of users for announcements, product updates, marketing campaigns, and other communications that aren't triggered by individual user actions. Unlike workflows that are event-driven, broadcasts are initiated directly from the Knock dashboard or via API and can target specific audiences based on user properties, segments, or custom criteria.
65+
66+
Broadcasts are perfect for:
67+
68+
- Product announcements and feature releases
69+
- Marketing campaigns and promotional messages
70+
- System maintenance notifications
71+
- Company updates and newsletters
72+
- Time-sensitive alerts and emergency communications
73+
74+
## Guides
75+
76+
Guides power in-app lifecycle messaging that helps users discover features, complete onboarding steps, and take key actions within your application. Unlike traditional messaging that happens outside your app, guides appear contextually within your product interface to provide timely, relevant guidance.
77+
78+
Guides enable you to:
79+
80+
- Create interactive onboarding flows
81+
- Highlight new features and updates
82+
- Guide users through complex workflows
83+
- Drive adoption of key product features
84+
- Provide contextual help and tips
85+
86+
Knock processes each workflow run and manages broadcasts and guides using a combination of the following concepts:
5787

5888
## Recipients
5989

60-
Recipients are in most cases users in your application. As you trigger workflows for recipients, Knock creates a cache of the data needed to notify them on different platforms, like an email address, phone number, avatar URL, or push token. Knock also stores custom properties you pass from your application to customize their notifications, like a plan type, user role, or timezone.
90+
In most cases, recipients are users in your application. As you trigger workflows for recipients, Knock creates a cache of the data needed to notify them on different platforms, such as an email address, phone number, avatar URL, or push token. Knock also stores custom properties you pass from your application to customize their notifications, such as a plan type, user role, or timezone.
6191

6292
```javascript title="An object used to create a User"
6393
{
@@ -81,7 +111,7 @@ Recipients are in most cases users in your application. As you trigger workflows
81111

82112
## Channels
83113

84-
Channels in Knock represent a specific provider you have configured to send notifications. You can include channel steps in your workflows to send notifications with the providers you already use in production.
114+
Channels in Knock represent a specific provider you have configured to send messages. You can include channel steps in your workflows or use them in broadcasts to send messages with the providers you already use in production.
85115
Knock supports the following channel types and providers:
86116

87117
<AccordionGroup>
@@ -127,7 +157,7 @@ Knock supports the following channel types and providers:
127157
</Accordion>
128158
</AccordionGroup>
129159

130-
A notification that is generated as a part of a workflow is called a `Message`, and Knock allows you to define dynamic message templates using a combination of a drag-and-drop editor and the Liquid templating language.
160+
A message that is generated as a part of a workflow or broadcast is called a `Message`, and Knock enables you to define dynamic message templates using a combination of a drag-and-drop editor and the Liquid templating language.
131161

132162
This helps product and marketing teams standardize on one templating system instead of using different templating languages for different providers. It also has the added benefit of lifting these messages out of your codebase so you can iterate quickly on customer communications without a developer.
133163

@@ -161,7 +191,7 @@ You can combine the following function steps with any number of channel steps to
161191
<Accordion title="Fetch">
162192
[A fetch step](/designing-workflows/fetch-function) makes an HTTP request to
163193
an external service and uses the returned data in subsequent steps, e.g.
164-
query an MLS API for recent home sales in the users zip code and render
194+
query an MLS API for recent home sales in the user's zip code and render
165195
them in an email.
166196
</Accordion>
167197
<Accordion title="Trigger workflow">
@@ -188,7 +218,7 @@ In addition to giving your technical and non-technical users the ability to cons
188218

189219
## Preferences
190220

191-
In Knock, each workflow run is executed on behalf of a recipient, and each recipient can specify their preferences to receive notifications across a number of different criteria: channel types, individual workflows, and workflow categories.
221+
In Knock, each workflow run and broadcast is executed on behalf of a recipient, and each recipient can specify their preferences to receive messages across a number of different criteria: channel types, individual workflows, workflow categories, and broadcast types.
192222

193223
<Image
194224
src="/images/what-is-knock/preferences.png"
@@ -198,7 +228,7 @@ In Knock, each workflow run is executed on behalf of a recipient, and each recip
198228
className="rounded-md mx-auto border border-gray-200"
199229
/>
200230

201-
Application developers have control over how these preference sets are presented to the user and which options to surface, but Knock enforces these preferences during every workflow run automatically.
231+
Application developers have control over how these preference sets are presented to the user and which options to surface, but Knock enforces these preferences during every workflow run and broadcast automatically.
202232

203233
You can learn more about how to set a user's preferences in our [preferences overview](/preferences/overview).
204234

@@ -246,7 +276,7 @@ If you want to keep learning about Knock using a curated example application, ch
246276

247277
### Keep learning
248278

249-
While the workflow engine is at the heart of Knock, our goal is to build a complete notification system for our customers. Here is an overview of some of the more-advanced features that we provide:
279+
While workflows, broadcasts, and guides are at the heart of Knock, our goal is to build a complete messaging system for our customers. Here is an overview of some of the more-advanced features that we provide.
250280

251281
#### UI components
252282

@@ -256,13 +286,15 @@ Knock provides developers with React components like `<NotificationFeed/>` and `
256286

257287
There is a lot more to learn about Knock, and our [concepts overview page](/concepts/overview) is a good place to start. Here are use cases our customers commonly solve with Knock:
258288

259-
- Powering [translation and localization](/concepts/translations) and managing timezone-aware delivery
260-
- Creating advanced notification logic using [subscriptions](/concepts/subscriptions) and [schedules](/concepts/schedules)
261-
- Integrating Knock with your application's data model, using [tenants](/concepts/tenants) and [objects](/concepts/objects) to power customized experiences
262-
- Using [the template editor](/designing-workflows/template-editor/overview) to standarize messaging templates across providers
289+
- Powering [translation and localization](/concepts/translations) and managing timezone-aware delivery.
290+
- Creating advanced messaging logic using [subscriptions](/concepts/subscriptions) and [schedules](/concepts/schedules).
291+
- Integrating Knock with your application's data model, using [tenants](/concepts/tenants) and [objects](/concepts/objects) to power customized experiences.
292+
- Using [the template editor](/designing-workflows/template-editor/overview) to standardize messaging templates across providers.
263293

264294
#### Developer tools
265295

266296
Knock is a developer-first platform, with both [environment](/concepts/environments) and [commit models](/concepts/commits). If you want to work with Knock resources in code, you can use our [Management API](/developer-tools/management-api) or [CLI](/developer-tools/knock-cli).
267297

268-
Once you're sending notifications through Knock, we offer observability tools like [workflow run logs](/send-notifications/debugging-workflows) (to examine all steps of workflow execution in your dashboard) and data streaming into a monitoring system like Datadog with [extensions](/integrations/extensions/overview).
298+
Knock also supports an [MCP](/developer-tools/mcp-server) server, which allows you to work with Knock resources in your IDE, entirely using natural language. Our MCP server is a great way to migrate from a legacy system to Knock, or to make updates across many Knock resources at once.
299+
300+
Once you're sending messages through Knock, we offer observability tools like [workflow run logs](/send-notifications/debugging-workflows) (to examine all steps of workflow execution in your dashboard) and data streaming into a monitoring system like Datadog with [extensions](/integrations/extensions/overview).

0 commit comments

Comments
 (0)