|
15 | 15 |
|
16 | 16 | This project is a Dify Plugin that enables seamless triggering of Dify applications using webhooks. With this plugin, you can effortlessly initiate both chatflows and workflows through HTTP requests from any third-party system. 🚀 |
17 | 17 |
|
| 18 | +### ⭐ GitHub Repository |
| 19 | +Star and watch our GitHub repository at https://github.com/perzeuss/dify-plugin-webhook to be notified about new releases! The project is open source, feel free to fork and modify it! |
| 20 | + |
18 | 21 | ### ✨ Key Features & Benefits |
19 | 22 |
|
20 | 23 | | Feature | Webhook Plugin | Standard Dify API | Benefit | |
@@ -54,16 +57,16 @@ Visit the Dify Plugin marketplace, search for the "Webhook" plugin and click the |
54 | 57 | Enable this option to automatically convert the entire request body to a JSON string. This is particularly useful when you want to pass a complex payload through a single input variable in Dify and parse it within your application logic. |
55 | 58 |
|
56 | 59 | 7. **Specify Output Handling**: |
57 | | - Configure how the output data from **workflows** is returned using the `raw_data_output` flag: |
58 | | - - Set `raw_data_output` to `true` to receive only the output of the End node without Dify metadata. |
59 | | - - Default setting is `false`, which includes Dify metadata in the response. |
60 | | - |
61 | | - This configuration ensures output data aligns perfectly with the requirements of your integration. |
| 60 | + Configure the output data from **workflows**. The webhook can send res.body.data (Output of the End node) as the response body without Dify metadata. By default the response contains metada which could conflict with the requirements of your integration. |
62 | 61 |
|
63 | 62 | 8. **Available Endpoints**: |
64 | | - You have access to two endpoint URLs: |
65 | | - - **Chatflow Endpoint**: `/chatflow/<app_id>` |
66 | | - - **Workflow Endpoint**: `/workflow/<app_id>` |
| 63 | + You have access to the following endpoint URLs: |
| 64 | + - Dynamic endpoints, exposes all apps in the workspace |
| 65 | + - **Chatflow Endpoint**: `/chatflow/<app_id>` |
| 66 | + - **Workflow Endpoint**: `/workflow/<app_id>` |
| 67 | + - Single app endpoints, exposes only the selected app |
| 68 | + - **Chatflow Endpoint**: `/single-chatflow` |
| 69 | + - **Workflow Endpoint**: `/single-workflow` |
67 | 70 |
|
68 | 71 | ### 📘 Usage Guide |
69 | 72 |
|
@@ -128,16 +131,16 @@ The plugin supports middleware for extended functionality: |
128 | 131 |
|
129 | 132 | #### Multiple Endpoints Configuration |
130 | 133 |
|
131 | | -You can create multiple endpoints with different configurations: |
| 134 | +You can create multiple endpoints with different configurations. For example: |
132 | 135 |
|
133 | | -- **Discord Bot Endpoint**: With Discord middleware and no API key |
134 | | -- **Zapier Integration**: With API key in URL parameter and raw data output |
135 | | -- **Internal Systems**: With API key in header and full response data |
| 136 | +- **Discord Bot Endpoint**: With Discord middleware and public key for signature verification |
| 137 | +- **Zapier Integration**: With request payload in json_string variable and res.body.data as output |
| 138 | +- **Internal Systems**: With full response data including metadata for token usage tracking |
136 | 139 |
|
137 | 140 | #### Custom Response Formatting |
138 | 141 |
|
139 | 142 | For workflows that need to integrate with systems expecting specific response formats: |
140 | | -1. Configure the endpoint with `raw_data_output: true` |
| 143 | +1. Enable the toggle for: `Send res.body.data instead of res.body as workflow response.` |
141 | 144 | 2. In your Dify workflow, ensure the End node provides exactly the format expected |
142 | 145 |
|
143 | 146 | ### 🔍 Troubleshooting |
|
0 commit comments