ConnectWise PSA

ConnectWise PSA, formerly ConnectWise Manage, is a professional services automation platform used to manage tickets, companies, agreements, projects, and other operational service data through the ConnectWise REST APIs.

The Flowgear ConnectWise PSA Node lets you query, create, update, and delete supported ConnectWise resources by using template-driven operations in a Workflow.

Revision History

0.0.0.1 - Initial release.
0.0.0.2 - Maintenance update.
0.0.0.3 - Fixed error message handling.
0.0.0.5 - Separated methods and templates.
0.0.0.11 - Improved security.
0.0.0.15 - Fixed serialization.
0.0.0.16 - Removed paging Properties from templates because paging is handled by the Node.
0.0.0.17 - Fixed blank responses and response objects being lost.
0.0.0.18 - Updated connection terms and enriched query templates with field and filter examples.
0.0.0.19 - Standardized the public method surface to Query, Create, Update, and Delete.
0.0.0.20 - Added typed query CustomParameters for @parameter replacement in Options.
0.0.0.25 - Updated the OpenAPI document to 2026.4 and added batching for supported bulk operations.
0.0.0.25 - Renamed the public Node to ConnectWise PSA and updated the connection contract and query parameter guidance.
0.1.0.0 - Completed the V2 overhaul with eager first-request startup, lazy paging, and bounded bulk batches.
0.1.2.0 - Added mutation request echoes and improved lazy query-page resource handling.
0.1.2.1 - Preserved inherited fields in designer templates when OpenAPI schemas use constraints-only allOf overlays.

Connection

The Connection stores the ConnectWise PSA base URL and API key credentials used by all methods.

Property Type Description
Site Url String The ConnectWise PSA site URL, e.g. https://example.connectwise.com.
Company ID String The ConnectWise PSA company identifier used with the API member public key.
Public Key String The public key generated for the ConnectWise API member.
Private Key Masked The private key generated for the ConnectWise API member.

Setup Notes

This Node uses API-member authentication with the compound username and private key expected by ConnectWise PSA, as described in ConnectWise Manage Member Authentication.

1. Create an API Member

  1. In ConnectWise PSA, open System -> Members -> API Members.
  2. Click + to create an API member.
  3. Enter Flowgear in Member ID.
  4. Enter an email address for your company.
  5. Under System, select Admin or a custom security role with the permissions Flowgear needs.
  6. Complete the remaining required fields.
  7. Click Save.

2. Create an API Key

  1. Select the API member you created for Flowgear, then open the API Keys tab.
  2. Click + to create an API key.
  3. Enter Flowgear as the description, then click Save.
  4. Copy the private key when it is shown. ConnectWise only displays it once.

3. Create the Connection

  1. Enter your ConnectWise PSA URL in Site Url, e.g. https://mycompany.myconnectwise.net.
  2. Enter your company identifier in Company ID.
  3. Enter the API member public key in Public Key.
  4. Enter the API member private key in Private Key.

Methods

This Node exposes template-driven Query, Create, Update, and Delete operations for ConnectWise PSA resources.

Select a template for the method you want to use. The template supplies the correct OperationId and the expected Options and Items shape for the selected ConnectWise endpoint.

Query

Retrieves ConnectWise PSA resources using GET operations. Use Query for single-record lookups, lists, count endpoints, info endpoints, and other read-only operations exposed by the selected template.

Paging options such as page, pageSize, and pageId are handled internally by the Node and are not exposed in the template.

Parameter Type Description
Connection Connection The ConnectWise PSA Connection profile.
OperationId String The unique identifier for the selected operation to be performed.
Options Object Route values, query values, and operation controls required by the selected request.
CustomParameters Object Values substituted into Options entries that reference @parameters.
Return Type Description
Response Array Response rows returned by the selected operation.

Create

Creates ConnectWise PSA resources using POST operations. Some ConnectWise POST endpoints perform actions instead of creating a standard record. Use the selected template to confirm the required Options and Items shape.

Parameter Type Description
Connection Connection The ConnectWise PSA Connection profile.
OperationId String The unique identifier for the selected operation to be performed.
Options Object Route values, query values, and operation controls required by the selected request.
Items Array Optional request body rows sent to ConnectWise PSA.
Return Type Description
Response Array Response rows returned by the selected operation.

Update

Updates ConnectWise PSA resources using PUT or PATCH operations. PUT operations replace the entity with the supplied body. PATCH operations update specific fields on the entity.

For PATCH templates, each Items row represents one patch operation. Supported op values are add, replace, and remove. The path value is case-sensitive and should target a field path exposed by the selected template.

Parameter Type Description
Connection Connection The ConnectWise PSA Connection profile.
OperationId String The unique identifier for the selected operation to be performed.
Options Object Route values, query values, and operation controls required by the selected request.
Items Array Optional request body rows sent to ConnectWise PSA.
Return Type Description
Response Array Response rows returned by the selected operation.

Delete

Deletes ConnectWise PSA resources using DELETE operations. Most delete templates require the record ID or parent IDs in Options.

Some bulk delete templates accept Items rows with an id value. The Node groups supported bulk requests into ConnectWise batches.

Parameter Type Description
Connection Connection The ConnectWise PSA Connection profile.
OperationId String The unique identifier for the selected operation to be performed.
Options Object Route values, query values, and operation controls required by the selected request.
Items Array Optional request body rows sent to ConnectWise PSA.
Return Type Description
Response Array Response rows returned by the selected operation.

Usage Notes

  • Templates are filtered by method. A Query template can only be executed by Query, a POST template by Create, a PUT or PATCH template by Update, and a DELETE template by Delete.
  • Query completes the first ConnectWise PSA page while the Node invoke is awaited. Additional pages are fetched only as the Workflow consumes the response stream.
  • Create, Update, and Delete complete the first request or supported bulk batch while the Node invoke is awaited. Later input is consumed lazily, and an empty connected input sends no provider request.
  • Mutation rows include an input snapshot under Flowgear.Request. Body-bearing operations copy Items, while bodyless operations copy their Options values.
  • Options contains route and query parameters for the selected operation. Common query options include conditions, childConditions, customFieldConditions, fields, and orderBy.
  • Use conditions to filter by fields returned by the selected GET operation. Use reference paths such as board/name when filtering fields on referenced objects.
  • Use childConditions when the endpoint supports filtering a child collection, e.g. communicationItems/value like "john@example.com".
  • Use customFieldConditions when the endpoint supports custom fields, e.g. caption="TomNumber" AND value != null.
  • Wrap string values in double quotes, leave numeric values unquoted, leave Boolean values unquoted, and wrap DateTime values in square brackets, e.g. [2016-08-20T18:04:26Z].
  • Use fields to limit the fields returned by the response, e.g. id,name,status/id. Use orderBy with a field and direction, e.g. name asc.
  • CustomParameters is available on Query. Add values keyed as StatusName or @StatusName, then reference them in Options as @StatusName.
  • For PATCH operations that update a referenced object, replace the whole reference object, e.g. patch company with an object value instead of using a path such as company/identifier.
  • When patching customFields, send the full customFields array expected by ConnectWise PSA.
  • Create, Update, and Delete responses include a Flowgear object with IsSuccess and, when available, Message fields.

Examples

Query With Search Conditions

  • Use conditions for the ConnectWise search expression and CustomParameters for values that change between Workflow runs.
  • Search conditions support comparison operators such as =, !=, <, <=, >, >=, contains, like, in, and not. Combine expressions with AND or OR.

In Options, set:

  • conditions: board/name = "Integration" AND status/name != "@StatusName" AND priority/id in (1, 2, @PriorityId) AND lastUpdated >= [@UpdatedSince]
  • fields: id,summary,status/name,board/name,lastUpdated
  • orderBy: lastUpdated desc

In CustomParameters, set:

  • StatusName: Closed
  • PriorityId: 3
  • UpdatedSince: 2026-01-01T00:00:00Z

Patch Specific Fields

Select a PATCH template under Update, then supply one or more Items rows with op, path, and value.

Available op actions are:

  • add: Adds a value to the selected field.
  • replace: Replaces the selected field value.
  • remove: Removes the selected field value.

In Items, add one row for each field update.

Row 1:

  • op: replace
  • path: summary
  • value: New Summary

Row 2:

  • op: replace
  • path: company
  • value: New Company

Known Issues

  • Binary responses are not currently supported.