POST request to your configured endpoint with a JSON payload describing the event.
How webhooks work
When an event occurs, Lymo sends aPOST request to the URL you registered. Your server receives the request, processes the payload, and responds with a 200 status code to acknowledge receipt. If Lymo does not receive a 200, it treats the delivery as failed and retries.
Webhook payload
Each webhook request includes a JSON body with the details of the event. For a plant event, the payload looks like this:Setting up your endpoint
Create a publicly accessible HTTPS endpoint
Your server must be reachable from the internet over HTTPS. Lymo will not deliver events to HTTP endpoints or localhost.
Register the webhook URL
Add your endpoint URL in the Lymo dashboard under Webhooks. Lymo starts delivering events immediately after you save the URL.
Return a 200 response to acknowledge receipt
Respond with an HTTP
200 status code as quickly as possible. Any other status code signals a failure.Responding to webhooks
Your endpoint needs to parse the incoming JSON body and return200. Here are minimal examples in Express.js and Flask:
Retry behavior
If your endpoint returns a non-2xx response or times out, Lymo retries the delivery using exponential backoff. Lymo attempts delivery multiple times before marking the event as failed.