Webhook timeout intervals and how to avoid them
Webhook requests sent by FotoWeb on-premises / FotoWare SaaS have a timeout of 10 seconds.
If a webhook request takes longer than the timeout to complete, then the webhook will be shown as "timed out" in the webhook log. Note that even if a webhook request has timed out, the webhook request handler may still have completed successfully, but this is not reflected in FotoWare's logs.
It is strongly recommended to ensure that webhook request handlers return as soon as possible, or at least significantly earlier than the timeout. Costly, long-running operations, such as outgoing API requests or other I/O operations, should be avoided or offloaded to background workers.
One practice to avoid long-running operations in webhook request handlers is to insert the webhook event into a queue and then process events from the queue in background workers. Note that when hosting a webhook request handler in a PaaS environment, such as Microsoft Azure, there may already be services for queuing and background processing of events, and using those may be preferable to building a custom architecture. Event processing services, such as Zapier or Microsoft Azure Logic Apps, may also automatically do queuing to avoid request timeouts. Please see the documentation of your platform for more information.