Example: Webhook Integration
Scenario: When a document is uploaded to your CRM, project management tool, or any external system, you want qomplement to process it automatically.
Overview
External system → Webhook to qomplement →
Parse document → Extract data → Push results back
Setup
Step 1: Create a workflow with webhook trigger
- Go to Workflows > New Workflow
- Add a Webhook Trigger node
- Add processing nodes (Parse, Fill, etc.)
- Add an action node (Call API to send results back, Send Email, etc.)
- Save the workflow
Step 2: Get your webhook URL
- Go to Webhooks panel
- Find the webhook for your workflow
- Copy the URL and Token
Step 3: Configure your external system
In your CRM/tool, set up a webhook or automation that calls qomplement when a document event happens.
Example: Zapier integration
- Trigger: "New file in Google Drive folder"
- Action: Webhooks by Zapier > POST
- URL: Your qomplement webhook URL
- Body:
{ "document_url": "{{file_url}}" }
Example: Custom application
import requests
def on_document_uploaded(document_url):
response = requests.post(
"https://api.qomplement.com/api/webhooks/trigger/YOUR_TOKEN",
json={"document_url": document_url}
)
return response.json()
Step 4: Send results back
Use a Call API action node to POST results back to your external system:
{
"url": "https://your-crm.com/api/documents/update",
"method": "POST",
"headers": {
"Authorization": "Bearer YOUR_CRM_TOKEN"
},
"body": {
"document_id": "{{document_id}}",
"extracted_data": "{{extraction_results}}"
}
}
Common integrations
| External system | Trigger | Use case |
|---|---|---|
| Google Drive | New file in folder | Process uploaded documents |
| Salesforce | New attachment | Extract data from customer documents |
| Slack | File shared | Process documents shared in channels |
| Jira | Attachment added | Extract data from supporting documents |
| Custom app | API call | Any programmatic trigger |
Tips
- Test the webhook with a simple cURL command first
- Log responses — keep track of webhook calls and results for debugging
- Handle errors — add failure notifications to your workflow
- Idempotency — consider what happens if the same document is processed twice