Overview
This node acts as a webhook trigger for ConnectWise Manage events, allowing workflows in n8n to respond automatically when specific events occur within ConnectWise Manage. It is particularly useful for automating processes based on changes or updates in various ConnectWise entities such as tickets, contacts, invoices, projects, and more.
Common scenarios include:
- Triggering workflows when a new service ticket is created or updated.
- Responding to changes in company or contact records.
- Automating actions based on invoice or purchase order events.
- Filtering ticket notes by specific types to trigger workflows only on relevant updates.
For example, you could use this node to start a workflow that sends notifications when a service ticket's status changes or to update an external CRM when a new contact is added.
Properties
| Name | Meaning |
|---|---|
| Filter Notes | Whether to filter ticket notes by their type (only applicable when Event Type is "Service Ticket"). |
| Note Types | Types of ticket notes to include if filtering is enabled. Options: Detail Description, Internal Analysis, Resolution. |
| Event Type | The type of ConnectWise event to watch. Options include Activity, Agreement, Company, Configuration, Contact, Expense, Invoice, Member, Opportunity, Product Catalog, Project, Purchase Order, Schedule, Service Ticket, Time. Default is Service Ticket. |
| Level | For Service Tickets, the level of the callback: Board or Owner. For other event types, this is hidden and defaults to Owner. |
| Level Value Name or ID | When Level is "Board", select the specific board by name or ID from a dynamically loaded list. |
| Active | Whether this webhook trigger is active (boolean). |
| Self-Suppressed | Whether to suppress notifications for changes made by this integration itself (boolean). |
Output
The node outputs JSON data representing the webhook payload received from ConnectWise Manage. This includes details about the event that triggered the webhook, such as the entity type, its properties, and any associated notes.
If the event type is "Service Ticket" and note filtering is enabled, the output will only be emitted if the ticket notes contain at least one of the selected note types marked as true.
No binary data output is produced by this node.
Dependencies
- Requires an API key credential for ConnectWise Manage with appropriate permissions to manage webhooks and access event data.
- The node uses ConnectWise Manage REST API endpoints to register, check, and delete webhooks.
- Requires network connectivity to the ConnectWise Manage instance URL specified in the credentials.
- Uses n8n helper methods for authenticated HTTP requests.
Troubleshooting
- Webhook creation errors: If the webhook already exists, the node attempts cleanup and retries up to three times. Persistent failures may require manual deletion of existing webhooks in ConnectWise Manage.
- Permission issues: Ensure the API key used has sufficient rights to create and manage callbacks/webhooks.
- Filtering not working as expected: Verify that the "Filter Notes" option and "Note Types" selections match the actual note types present in the incoming webhook payload.
- Inactive webhook: If the "Active" property is set to false, the webhook will be registered but inactive, so no events will trigger the workflow.
- Self-suppression: If notifications are missing for changes made by the integration, check the "Self-Suppressed" setting.
Common error messages include:
- "ConnectWise Trigger Error: [message]" — indicates issues communicating with the ConnectWise API or managing webhooks.
- "Failed to create webhook after multiple cleanup attempts" — suggests conflicts with existing webhooks; manual intervention may be needed.