Using Webhooks

Webhooks are created based on events on the Optix platform. You can use webhooks to subscribe to specific events on the platform and inform URLs to be called when events occur.

To subscribe to webhooks, you need to add them in the settings file for your app. Learn how to do this in the App settings file section.

All webhooks are POSTED (POST HTTP method), using an HTTP form method, containing:

  • client_id: The app client_id. Available on the App’s details page on the admin dashboard
  • created_timestamp: Unix timestamp of the moment where the webhook was created
  • organization_id: ID of the organization where the app is available
  • event: The webhook name (check out the available webhooks)
  • request_signature: A SHA1 Hash of the current client_id + secret + created_timestamp (You can find the secret in the app details screen in ‘Apps → Develop → Your app’ in the Optix admin dashboard). E.g., client_id=123, secret=”secret”, and created_timestamp=123456 would be presented as sha1("123secret123456")

A complete list of available webhooks:

Webhooks list

A tool to help you debug webhooks:

Debugger tool

On this page

Webhook context

The primary purpose of a webhook is to notify the app about a change/event taking place on the Optix platform. The information received by the target of the webhook is a subset of the full data. We strongly recommend supplementing the use of webhooks with a query to the public API to retrieve the complete and most up-to-date dataset. This is particularly important if the target receives the webhooks out of order or after a long delay, where the data received may no longer be correct.

We do not guarantee the sequencing or delay time of webhook delivery. Typically the webhook is dispatched within 1 and 15 seconds after the event.

Retry policy

Each webhook request will be repeated until a 2xx (successful) HTTP response is received. 301 redirects will not be followed. A 410 response will force the webhook subscription to be removed, no other request will be sent to the endpoint regarding the same event (unless a new app is installed). Any other code will be logged as a failure, and the system will retry the request up to 10 times (with a delay of 10 minutes between each attempt).

The webhook system has a timeout of 5 seconds for connection and 2 seconds to receive the response. Any request that takes more time will be considered failed and will retry in the manner described above. You can use the Webhook debugger to identify problems during the development of your app.

Got questions?

We are here to help. Ask us a question and we’ll do our best to answer as soon as possible.

Contact Us