Email is an important and widely used channel for many of our customers. If you are using an email channel in Knock, one of the first things you'll want to do is define the layout template for your emails. Knock already generates a great looking email layout for you as a starting point so you can quickly customize it to meet your needs, such as adding links to the footer section. But right now, this requires jumping into the code editor and fiddling with HTML or text content, which can feel like a hassle. We can do better.

Starting today, we've made our default email layout template available through a visual editor, so you can easily add footer links to our out-of-the-box email layout without having to jump into code. You provide the text and URLs for the footer links, and Knock will automatically translate them into HTML links or text equivalents in the layout template. Of course, you always have the ability to drop into the code editor for complete flexibility.

Merge users API

You may run into a situation where you’ve identified an invited user to send them a notification and then that user “graduates” to a fully fledged user after they sign up, leaving you with two user profiles in Knock. Our merge users API is here to help you in this scenario!

You can now call the users.merge method in our SDKs to merge two user profiles together, moving the properties, channel data, and preferences from one user to another. The merge call will also move the message sending history so you can a nice, clear view on the messages sent.

Read more in the users docs →

Fixes and improvements

  • 🌱 We added an ability to override certain email channel settings per template for more flexibility
  • 👀 [Docs] We updated to include more thorough explanations on workflow functions: batching, delays, and throttling
  • 👀 [Docs] We added new security page to provide more information on our security posture and policies
  • 👀 [SDK] We released the latest Client JS SDK that improves TypeScript type definitions and introduces two new types of events ( and items.received.realtime)
  • 👀 [API] We added rate limiting on our feeds endpoint (5 reqs/sec/user) as a safety measure for availability of our service
  • 👀 [SDK] All of our SDKs have been updated to reflect the new merge users API
  • 👀 We improved how we display workflow steps in the workflow editor to show its description, when available
  • 🐛 We updated the label of the user id filter UI to read "contains" instead of "is equal to" to more accurately describe the fuzzy match logic