Webhooks are HTTP POST requests sent from your Upmind instance to an external web server whenever key events happen, for example: invoice payments, order status changes or updates to client details. This feature allows you to consume relevant event data and automate tasks and workflows with external applications however you wish; by writing custom code that makes API calls back to Upmind or some other system, or using a no/low-code automation provider such as Zapier to integrate with 3rd-party apps which are not yet officially supported in Upmind.
First, from your Upmind admin area, go to Settings > Webhooks and then click Create webhook to configure your endpoint. You will need to give it a name, and specify the URL for Upmind to send webhooks to. You can create as many endpoints as you wish, for example if using a service such as Zapier, each automation workflow may use a different URL.
There are various types of event that you can receive webhooks for, so you will need to specify which ones are relevant to your endpoint. In your endpoint settings, click the Add trigger button and select which events should trigger a webhook. If you want to enable triggers in multiple event categories, first save these triggers then repeat this step to set up more triggers in another category. For demonstration purposes, I've set up triggers for whenever Clients register, or are created manually by staff, or when their details are updated.
So now I can add a "test client" through my admin area and then inspect my Webhook events log to see what happened. Go to Clients > Add Client and add a test client, or make a change to an existing test client such as changing their name, or whatever else you set up a trigger for.
Now go to Logs > Webhook events log and if you set up a trigger for one of these events then it should appear here in your webhook log within a couple of minutes. Click on a webhook event to open up more details, including the HTTP request payload sent to your endpoint, and the status code and body returned by the endpoint in it's response.
In my case, i used a fake endpoint URL so the request failed. If you set up a real endpoint and the request failed, you can use the information here to try and fix the issue.
Next we'll dive into how you should set up your endpoint to effectively consume webhooks.
Updated 2 months ago