ConnectWise Manage icon

ConnectWise Manage

Consume ConnectWise Manage API

Overview

The node integrates with the ConnectWise Manage API to perform operations on Service Tickets, specifically supporting a "Search" operation for tickets. This operation allows users to query service tickets based on specified conditions, order the results, and control pagination or result limits.

Typical use cases include:

  • Retrieving a filtered list of service tickets matching certain criteria (e.g., status, priority).
  • Sorting tickets by fields such as ID or priority.
  • Fetching all matching tickets or limiting the number of returned results for performance.
  • Automating reporting or monitoring workflows that require ticket data from ConnectWise Manage.

For example, a user might search for all open tickets with high priority, ordered by creation date descending, to generate a daily report of urgent issues.

Properties

Name Meaning
Order By Field(s) to order the search results by, e.g., "priority/sort desc, ID asc".
Return All Boolean flag indicating whether to return all matching tickets or limit the number of results.
Limit Maximum number of tickets to return if Return All is false. Range: 1 to 1000.
Conditions Query string specifying filter conditions, e.g., "status/ID=1 and priority/ID=3".

Note: The "Order By" property appears twice in the provided properties but serves the same purpose — defining sorting criteria for the search results.

Output

The output consists of JSON objects representing individual service tickets matching the search criteria. Each item corresponds to one ticket's data as returned by the ConnectWise Manage API.

  • If multiple tickets are returned, each is output as a separate item.
  • The structure of each ticket JSON object includes all standard ticket fields available via the API.
  • No binary data is produced by this operation.

Example output snippet (simplified):

{
  "ticketId": 12345,
  "summary": "User cannot access email",
  "status": { "id": 1, "name": "Open" },
  "priority": { "id": 3, "name": "High" },
  "board": { "id": 10, "name": "Support" },
  ...
}

Dependencies

  • Requires an active connection to the ConnectWise Manage API.
  • Needs configuration of an API authentication credential (an API key or token) within n8n credentials.
  • The node uses the base URL (siteUrl) from the configured credentials to construct API requests.
  • The API version targeted is v4_6_release, API version 3.0 endpoints.

Troubleshooting

Common Issues

  • Invalid or missing credentials: The node requires valid API credentials; ensure these are correctly set up in n8n.
  • Unsupported operation or resource: Using an unsupported operation or resource will throw an error.
  • Missing required parameters: For example, omitting required fields like conditions or primary keys when needed.
  • API rate limits or connectivity issues: Network problems or API throttling can cause request failures.

Error Messages

  • "Operation 'search' is not supported for resource '...'."
    Occurs if the operation-resource combination is invalid. Verify correct resource and operation names.

  • "No custom fields found on ticket"
    Happens when trying to update a custom field that does not exist on the ticket.

  • "Board ID is required for listTypes operation" or similar messages indicate missing mandatory parameters for special operations.

  • API request failures will surface errors with details from the ConnectWise API response body logged for debugging.

Resolution Tips

  • Double-check all input parameters and their formats.
  • Confirm API credentials and permissions.
  • Review API documentation for valid query syntax in conditions and orderBy fields.
  • Use the "Return All" option carefully to avoid large data loads impacting performance.

Links and References

  • ConnectWise Manage API Documentation
    Official API docs for understanding endpoints, query parameters, and data models.

  • n8n Documentation
    General guidance on using credentials and configuring nodes.

  • Example query condition syntax: "status/ID=1 and priority/ID=3" means filtering tickets where status ID equals 1 and priority ID equals 3.


This summary is based solely on static analysis of the provided source code and property definitions without runtime execution.

Discussion