Test your fetch functions in realtime from the template editor

A couple weeks ago, we launched the fetch function for Knock workflows. Today, we're making it a lot easier to develop this function step with a realtime test runner purpose-built for fetch functions.

When you load the template editor, you should now see the new "Test console" in the lower half of the screen along with a "Send test" button next to the URL field. When you run a fetch function test, Knock will execute your fetch step in isolation, ignoring any steps before or after in your workflow. When the step has finished, Knock will load the result into the test console for your review in realtime with no need for a refresh!

We're always working to provide a great developer experience for everyone building with the Knock platform. With this new test runner, the develop ↔ debug cycle for fetch functions just got a great boost.

Check out the guide on testing fetch functions for more details, or head to the template editor now to try it out.

Set shared preference sets for all users and objects in an environment

We built preference sets in Knock to allow you to configure granular channel and workflow preferences on a per-user and per-object basis. Preference sets serve as a flexible tool to manage things like user-owned credentials and opt-in configurations.

But sometimes you may find you want to set preferences shared across all users and objects in your account. Today we're making that much easier with default preference sets!

You can now navigate to the new "Developers > Defaults" page, where you can configure a preference set that will be global to an entire Knock environment. When Knock loads the preferences for a recipient, it will merge the recipient's owned preferences into the global defaults. User and object preferences will still take precedence, but now you can manage shared preferences in a single space.

Fixes and improvements

  • 🐛 We fixed a bug that would prevent users in a small set of cases from saving a channel or fetch function template without a page reload.
  • 🐛 We fixed an issue where category preferences required all categories on a workflow to be opted-out before we considered the preference as opted-out.
  • 🐛 We fixed an issue where setting conditions for channel-type preferences would result in a 422 Unprocessable Entity error from the Knock API.