diff --git a/getting-started/deployment/local.mdx b/getting-started/deployment/local.mdx index 5ea6674..58574bc 100644 --- a/getting-started/deployment/local.mdx +++ b/getting-started/deployment/local.mdx @@ -154,6 +154,20 @@ OPS_SMTP_ALLOWED_PORTS=25,465,587,2525 +## Configuring the webhook sync timeout (nginx) + +OpenOps configures nginx with a separate timeout for webhook calls that run in sync mode. + +To set this timeout, add the `OPS_FLOW_TIMEOUT_SECONDS` environment variable to the `.env` file in your installation folder. + +```shell +OPS_FLOW_TIMEOUT_SECONDS=600 +``` + +This value is also used to set `NGINX_WEBHOOK_SYNC_TIMEOUT` inside the container. + +> If `OPS_FLOW_TIMEOUT_SECONDS` is not set, `NGINX_WEBHOOK_SYNC_TIMEOUT` defaults to `600s`. + ## Using Azure CLI in workflows: running with local credentials It is possible to share your local session with the platform for local applications. diff --git a/workflow-management/human-in-the-loop.mdx b/workflow-management/human-in-the-loop.mdx index ecdfb00..424b2ab 100644 --- a/workflow-management/human-in-the-loop.mdx +++ b/workflow-management/human-in-the-loop.mdx @@ -65,6 +65,16 @@ In this case, you can create the approval part of your workflow as follows: 3. Add the **Wait For Approval** action from the **Approval** block. Once the stakeholder clicks a link, this action updates the approval status accordingly. 4. Add the **Condition** action to define steps for approval and disapproval. +> **Note** +> The **Create Approval Links** action generates links using the instance public URL. The link opens a resume page in the OpenOps UI, which then resumes the workflow with either the approve or disapprove action. + +#### Adding attachments (Microsoft Outlook) + +When using **Microsoft Outlook** **Send Email**, add attachments as a list where each item includes: + +* **File** (required) +* **File Name** (optional). If omitted, the file name from the uploaded file is used. + Here's a sample workflow that uses **Create Approval Links**, delivers an email notification using **Send Email** from the **SMTP** block, and then proceeds based on the output of the **Wait For Approval** action: ![Sending approval links via email](/images/hitl-email-approval-links.png) diff --git a/workflow-management/webhook-responses.mdx b/workflow-management/webhook-responses.mdx index fb9c0e2..1a81121 100644 --- a/workflow-management/webhook-responses.mdx +++ b/workflow-management/webhook-responses.mdx @@ -91,6 +91,17 @@ If your workflow doesn't include a **Send Webhook Response** action, OpenOps aut - **Include error handling**: Use conditional branching to send different responses based on workflow outcomes - **Keep responses lightweight**: Avoid sending large payloads in webhook responses +## Troubleshooting + +### Webhook callers time out when waiting for a synchronous response + +If the webhook caller waits for a response from the workflow and the request times out at the reverse proxy, increase the Nginx timeouts for the webhook sync endpoint. + +1. Set the `NGINX_WEBHOOK_SYNC_TIMEOUT` environment variable. +2. Deploy/restart the Nginx container so it picks up the new value. + +OpenOps applies `NGINX_WEBHOOK_SYNC_TIMEOUT` to the Nginx timeouts for requests that match the `/api/v1/webhooks//sync` path. + ## Limitations - Only one response can be sent per webhook trigger