About this integration
Open-source PBX for managing extensions, calls, and telephony routing. Use it from the workflow canvas with no custom glue script required.
This integration exposes 1 trigger, 1 search module and 1 action as workflow nodes. Authentication uses basic authentication.
This is a focused integration — 3 public modules. The field tables below are the full reference. Connecting it uses API Key and Hostname.
How to connect
The credential form asks for API Key and Hostname.
Prefer the interactive builder form? Open it on the app page.
Enter your credentials below. WEXTL stores them encrypted and uses them only to call the API on your behalf.
| Field | Type | Help |
|---|---|---|
API KeyRequired | password | Use the following instruction to get your API Key: https://wiki.vitalpbx.com/wiki/vitalpbx/api/. |
HostnameRequired | text | A host of your instance of VitalPBX. For example, |
Use it in workflow automation
Start with Watch Calls, then add Make an API Call.
The canvas below runs Watch Calls into Make an API Call — watch the video, then drop a node onto the canvas.
Select the Watch Calls trigger and the workflow fires automatically when the event occurs — no polling required.
Then add Make an API Call as the next node. Branch, filter, or hand off to other integrations from there.
The integration includes 2 ready-made modules for communication work — each run logs its inputs and outputs for debugging.
VitalPBX workflow on the canvas: Watch Calls then Make an API Call
Triggers, searches and actions
Use the tables below to inspect VitalPBX's 1 trigger, 1 search module, and 1 action.
Triggers
1 trigger fire automatically when specified events occur — no polling or cron job needed.
- Watch Calls
Searches
Fetch data on demand using 1 search module that query the app during a run.
- Search CDR
Actions
1 action module cover the full range of create, update, and delete operations.
- Make an API Call
Explore the fields available for each VitalPBX trigger, search, and action.
Triggers
| Field | Type |
|---|---|
Calldate Ts | date |
CDR ID | text |
Calldate | text |
Clid | text |
Source | text |
Src | text |
Dst | text |
Destination | text |
Dcontext | text |
Channel | text |
Dstchannel | text |
Lastapp | text |
Lastdata | text |
Duration | text |
Billsec | text |
Disposition | text |
Amaflags | text |
Accountcode | text |
Auth Code | text |
Customer Code | text |
Searches
| Field | Type |
|---|---|
TenantRequired | choice |
Extensions | text |
Call Type | choice |
Start Date | date |
End Date | date |
Order By | text |
Order Type | choice |
Search | text |
Search Fields | text |
Call History | choice |
Limit | number |
| Field | Type |
|---|---|
Calldate Ts | date |
CDR ID | text |
Calldate | text |
Clid | text |
Source | text |
Src | text |
Dst | text |
Destination | text |
Dcontext | text |
Channel | text |
Dstchannel | text |
Lastapp | text |
Lastdata | text |
Duration | text |
Billsec | text |
Disposition | text |
Amaflags | text |
Accountcode | text |
Auth Code | text |
Customer Code | text |
Actions
| Field | Type |
|---|---|
MethodRequired | choice |
Headers | array |
Header | object |
Query String | array |
Parameter | object |
Body | text |
| Field | Type |
|---|---|
Body | text |
Headers | object |
Status code | number |

