Task action to send a cURL request for each record

Tasks are powerful tools for managing the backend of Knack databases and for using the email action time to notify users on a regular basis. However, tasks currently limited to just updating records or sending an email.

Instead of trying to infinitely create new action types, allowing for cURL requests to be triggered and sent to a desired webhook URL from the task UI would allow for infinite composability and connectivity between Knack and other tools.

Similar to the current UI for sending email, the destination address can be a webhook and the user can compose their own JSON package using fields from the object the task originated in (or a connected field) to be included in the package.

Adalo has a novel implementation of this called “Custom Actions”, however the ability to schedule/automate task triggers via the existing Knack process is potentially very powerful for users.

@ZakKatz41795 - you can send Webhooks directly using Javascript already - for example on a form submit.

However there is an alternative approach which would also work with Tasks which is to use “Mailhooks” with Make (formerly Integromat). You set up a “Mailhook” in Make and that gives you an email address to send an email to. The email can contain any data but I usually just send a unique value from the record and then have Make retrieve the data it needs for the task at hand (and make updates etc).

I have written a number of articles about using Integromat (Make is the same) with Knack on my blog:

Hope this helps.


I forgot to mention there is also a specific post about triggering Integromat (Make) from a Knack email:

My suggestion is specifically related to Knack handling the sending of json packages via a curl request rather then the type of work around you are suggesting. For one, most people don’t want to mess around with form submission JS code. The tasks feature is the perfect UI for this kind of use case.

In addition, I shouldn’t have to use a 3rd party service to retrieve data from the originating records in Knack and should be able to send those requests directly to whatever service I see fit rather than again relying on a 3rd party service like Make.

Features like the one I am proposing greatly enhance Knacks positioning and composability by allowing it to directly integrate with other services without services like Make or Zapier. Sure you could use those but that just introduces redudnacy and potential for data errors. Making direct connecting possible is a key differentiator for usability.

I do get your point - but using a tool like Make makes this type of activity much more approachable for most people. (Most Knack users won’t know what cURL is).

With the Mailhook approach, you can in principle send any data in the body of the email - but I find it simpler to just trigger with a record ID and then retrieve the data. This also give you the opportunity to access data that is not available in Knacks email (and presumably your concept) process. In a scenario you can retrieve data from multiple objects (and update them of course). I think, personally that Knack / Make is a pretty unbeatable combination!

You’re right about that, except for the fact that if you are looking to use tasks to automate actions on thousands of records, that gets expensive on Make very quickly.