Skip to content

Latest commit

 

History

History
939 lines (791 loc) · 189 KB

File metadata and controls

939 lines (791 loc) · 189 KB

ConnectWise PSA integration

{% hint style="info" %} Note that ConnectWise PSA was previously known as ConnectWise Manage.

If you’re new to integrations in Rewst, read through our introductory integration documentation here. {% endhint %}

What does the ConnectWise PSA integration do?

Our ConnectWise PSA integration enables the automation of PSA tasks. Use the ConnectWise PSA API within Rewst workflows to perform actions such as managing agreements, contacts, and tickets.

Why use the ConnectWise PSA integration?

Here’s just a taste of what you can automate with relevant Crates, after you've set up your ConnectWise PSA integration:

  • Add your child organizations, also known as customers, to Rewst.
  • User onboarding and offboarding
  • Categorize tickets using OpenAI

Integration prerequisites

Rewst has a number of tasks that can be performed using the ConnectWise API, all of which require different permissions. You can review the ConnectWise PSA Security Roles Matrix for more information.

{% hint style="info" %} You'll need an active ConnectWise Developer account to access the above URL. {% endhint %}

Set up the ConnectWise PSA integration

Setup steps in ConnectWise

  1. Create a security role in ConnectWise PSA
    1. Navigate to System > Security Roles.

    2. Click + in the top left of your screen.

    3. Name the security Role Rewst API.

    4. Click save.

    5. Set your permissions as per the #permission-requirements-for-connectwise-psa-integration section of this document.

  2. Create an API account.
    1. This can be done by following ConnectWise's own instructions.
    2. Note that you'll need to be signed in to ConnectWise PSA to view the documentation.
  3. Create an API member.
    1. Navigate to System > Members > API Members.

    2. Click + to create a new API member.

    3. Enter a Member ID and Member Name. We suggest naming each of these Rewst.

    4. Select Rewst API as your Role ID.

    5. Select your highest Level, such as Corporate (Level 1).

    6. Select a Location, Department, Name, and Default Territory, as per your company guidelines.

    7. Click Save.

    8. Click on the Rewst API member.

    9. Click API Keys +.

    10. Add a new API Key.

    11. Add Rewst API as the Description.

    12. Click Save.

    13. Copy and save the public and private key in a secure location. You'll need these to move on to the rest of the setup steps in Rewst.

Creating an API Member in ConnectWise PSA

Public and Private Key

Set up steps in Rewst

  1. Navigate to Marketplace > Integrations in the left side menu of your Rewst platform.
  2. In the integrations page, search for ConnectWise PSA.

  3. Click on the integration tile to launch the configuration setup page.
  4. In the Configuration form, enter the following into the relevant fields:
    1. The copied API Member ID
    2. The company ID used when logging into ConnectWise PSA
    3. The Hostname for ConnectWise PSA
    4. The private and public API key.
      1. Optionally, change the company query conditions to filter what companies are returned by the API.
    5. Add your own client ID - this is optional, but recommended. Instructions for how to find the client ID can be found here.
  5. Click Save Configuration.
  6. Rewst will do a quick validation of your input. Once completed, you'll see a new section beneath the configuration form for organization mapping. Complete your mapping as desired.

{% hint style="warning" %} Other configurations

Once the integration has been configured within Rewst, we can use the Rewst Crate: Configure Organization Variables to configure your own custom settings and how Rewst should interact with ConnectWise PSA. Our Guide for that Crate can be found here: Configure Organization Variables

Note that this form asks for information about your RMM / M365 settings as well. While this form can be completed again separately, we recommend that you also set up the integration for Microsoft Graph and your RMM at this same time. {% endhint %}

Test the ConnectWise PSA integration

  1. Navigate to Automations > Workflows in the left side menu of your Rewst platform.

  2. Click Create Workflow.

  3. Enter CW Test Workflow as the name for your workflow.

  4. Click Submit.

  5. Click to expand the ConnectWise PSA accordion menu and open the list of available actions.

  6. Scroll within the section to find the List Companies action and drag it to your canvas.

  7. Click Test in the top right corner of the screen.

  8. You'll be prompted to select a trigger context organization.

  9. Click Test at the bottom right corner of the dialog.

  10. Allow the workflow to run. Click View Results.

  11. Click connect_wise_psa_list_companies.

  12. Expand any list under Results to see part of your list of companies.

Triggers for ConnectWise PSA integration

Table of triggers
Trigger type name Type Description
Activity Record Saved Webhook Receive notifications when an Activity record is saved in ConnectWise PSA
Agreement Record Saved Webhook Receive notifications when an Agreement record is saved in ConnectWise PSA
Company Record Saved Webhook Receive notifications when a Company record is saved in ConnectWise PSA
Configuration Record Saved Webhook Receive notifications when a Configuration record is saved in ConnectWise PSA
Contact Record Saved Webhook Receive notifications when a Contact record is saved in ConnectWise PSA
Expense Record Saved Webhook Receive notifications when an Expense record is saved in ConnectWise PSA
Invoice Record Saved Webhook Receive notifications when an Invoice record is saved in ConnectWise PSA
Opportunity Record Saved Webhook Receive notifications when an Opportunity record is saved in ConnectWise PSA
Product Catalog Record Saved Webhook Receive notifications when a Product Catalog record is saved in ConnectWise PSA
Project Record Saved Webhook Receive notifications when a Project record is saved in ConnectWise PSA
Purchase Order Record Saved Webhook Receive notifications when a Purchase Order record is saved in ConnectWise PSA
Schedule Entry Record Saved Webhook Receive notifications when a Schedule Entry record is saved in ConnectWise PSA
Ticket Record Saved Webhook Receive notifications when a Ticket record is saved in ConnectWise PSA
Time Entry Record Saved Webhook Receive notifications when a Time Entry record is saved in ConnectWise PSA

Actions and endpoints

Click to expand the below table and view all related ConnectWise PSA actions and endpoints.

Actions table for ConnectWise PSA
Category Action Notes
Activities List Sales Activities
Activities Create Sales Activity
Activities Get Sales Activity
Activities Delete Sales Activity
Activities Replace Sales Activity
Activities Update Sales Activity
Address Formats List Company Address Formats
Address Formats Create Company Address Format
Address Formats Get Company Address Format
Address Formats Delete Company Address Format
Address Formats Replace Company Address Format
Address Formats Update Company Address Format
Agreement Additions List Agreement Additions
Agreement Additions Create Agreement Addition
Agreement Additions Get Agreement Addition
Agreement Additions Delete Agreement Additions
Agreement Additions Replace Agreement Additions
Agreement Additions Update Agreement Additions
Agreement Adjustments List Agreement Adjustments
Agreement Adjustments Create Agreement Adjustment
Agreement Adjustments Get Agreement Adjustments
Agreement Adjustments Delete Agreement Adjustments
Agreement Adjustments Replace Agreement Adjustments
Agreement Adjustments Update Agreement Adjustments
Agreement Types List Agreement Types
Agreement Types Create Agreement Type
Agreement Types Get Agreement Type
Agreement Types Delete Agreement Type
Agreement Types Replace Agreement Types
Agreement Types Update Agreement Types
Agreements List Agreements
Agreements Create Agreement
Agreements Get Agreement
Agreements Delete Agreement
Agreements Replace Agreement
Agreements Update Agreement
Agreements List Agreements Configurations
Agreements Create Agreement Configurations
Agreements Get Agreement Configuration
Agreements Delete Agreement Configuration
Audit Trail Get Audit Trail
Billing Cycles List Finance Billing Cycles
Billing Cycles Create Finance Billing Cycle
Billing Cycles Get Finance Billing Cycle
Billing Cycles Delete Finance Billing Cycle
Billing Cycles Replace Finance Billing Cycle
Billing Cycles Update Finance Billing Cycle
Billing Terms List Finance Billing Terms
Billing Terms Create Finance Billing Term
Billing Terms Get Finance Billing Term
Billing Terms Delete Finance Billing Term
Billing Terms Replace Finance Billing Term
Billing Terms Update Finance Billing Term
Boards List Service Boards
Boards Create Service Board
Boards Get Service Board
Boards Delete Service Board
Boards Replace Service Board
Boards Update Service Board
Boards Copy Service Board
Boards List Service Board Statuses
Boards List Service Board Types
Boards List Service Board Subtypes
Boards List Service Board Items
Calendars List Calendars
Calendars Create Calendar
Calendars Get Calendar
Calendars Update Calendar
Calendars Replace Calendar
Calendars Delete Calendar
Calendars Copy Calendar
Callbacks List Callbacks
Callbacks Delete Callback
Campaign Audits List Campaign Audits
Campaign Audits Create Campaign Audit
Campaign Audits Get Campaign Audit
Campaign Audits Delete Campaign Audits
Campaign Audits Replace Campaign Audits
Campaign Audits Update Campaign Audits
Campaign Emails Opened List Marketing Campaign Emails Opened
Campaign Emails Opened Create Marketing Campaign Emails Opened
Campaign Emails Opened Get Marketing Campaign Emails Opened
Campaign Emails Opened Delete Marketing Campaign Emails Opened
Campaign Emails Opened Replace Marketing Campaign Emails Opened
Campaign Emails Opened Update Marketing Campaign Emails Opened
Campaign Forms Submitted List Campaign Forms Submitted
Campaign Forms Submitted Create Campaign Forms Submitted
Campaign Forms Submitted Get Campaign Forms Submitted
Campaign Forms Submitted Delete Campaign Forms Submitted
Campaign Forms Submitted Replace Campaign Forms Submitted
Campaign Forms Submitted Update Campaign Forms Submitted
Campaign Links Clicked List Campaign Links Clicked
Campaign Links Clicked Create Campaign Links Clicked
Campaign Links Clicked Get Campaign Links Clicked
Campaign Links Clicked Delete Campaign Links Clicked
Campaign Links Clicked Replace Campaign Links Clicked
Campaign Links Clicked Update Campaign Links Clicked
Campaigns List Marketing Campaigns
Campaigns Create Marketing Campaign
Campaigns Get Marketing Campaign
Campaigns Delete Marketing Campaign
Campaigns Replace Marketing Campaign
Campaigns Update Marketing Campaign
Campaigns List Campaign Activities
Campaigns List Campaign Opportunities
Campaigns Get Campaign Count
Classifications List Expense Classifications
Classifications Get Expense Classification
Communication Types List Communication Types
Communication Types Create Communication Type
Communication Types Get Communication Type
Communication Types Delete Communication Type
Communication Types Replace Communication Type
Communication Types Update Company Communication Type
Companies List Companies
Companies Create Company
Companies Get Company
Companies Delete Company
Companies Replace Company
Companies Update Company Australian post codes, which are only 4 digits, will fail if passed as a string. Convert the post code to an integer before sending, or left-pad the postcode to 5 digits. For example, { "%05d"|format(CTX.user_attributes.data.zip|d|int) }}
Company Custom Notes List Custom Status Notes
Company Custom Notes Create Custom Status Note
Company Custom Notes Get Custom Status Note
Company Custom Notes Delete Custom Status Note
Company Custom Notes Replace Custom Status Note
Company Custom Notes Update Custom Status Note
Company Finances Replace Company Finance Information
Company Finances List Company Finances
Company Finances Get Company Finance
Company Finances Update Company Finance Information
Company Sites List Sites
Company Sites Get Site
Company Statuses List Statuses
Company Statuses Create Status
Company Statuses Get Status
Company Statuses Delete Status
Company Statuses Replace Status
Company Statuses Update Status
Company Types List Company Types
Company Types Create Company Type
Company Types Get Company Type
Company Types Delete Company Type
Company Types Replace Company Type
Company Types Update Company Type
Configuration Types List Configurations Types
Configuration Types Create Configurations Type
Configuration Types Get Configurations Type
Configuration Types Delete Configurations Type
Configuration Types Replace Configurations Type
Configuration Types Update Configurations Type
Configurations List Configurations
Configurations Create Configuration
Configurations Get Configuration
Configurations Delete Configuration
Configurations Replace Configuration
Configurations Update Configuration
Contact Groups List Contact Groups
Contact Groups Create Contact Group
Contact Groups Get Contact Group
Contact Groups Delete Contact Group
Contact Groups Replace Contact Group
Contact Groups Update Contact Group
Contacts List Contacts
Contacts Create Contact
Contacts Get Contact
Contacts Delete Contact
Contacts Replace Contact
Contacts Update Contact
Contacts Get Contact Image
Contacts Get Contact Portal Security
Contacts Get Default Contact
Contacts Create Password Request for Contact
Contacts Validate Portal Credentials for Contact
Contacts Get Contact Communications
Cwm Confirmations Create Pod Confirmation
Documents List Documents
Documents Get Document
Documents Delete Document
Documents Download Document
Documents Get Document Thumbnail
Expense Entries List Expense Entries
Expense Entries Create Expense Entry
Expense Entries Get Expense Entry
Expense Entries Delete Expense Entry
Expense Entries Replace Expense Entry
Expense Entries Update Expense Entry
Expense Reports List Expense Reports
Expense Reports Get Expense Report
Expense Reports Reverse Expense Report
Expense Reports Submit Expense Report
Generic Request CW PSA API Request
Holidays List Holiday List's Holidays
Holidays Create Holiday List's Holiday
Holidays Get Holiday List's Holiday
Holidays Delete Holiday List's Holiday
Holidays Replace Holiday List's Holiday
Holidays Update Holiday List's Holiday
In Out Boards List In Out Boards
In Out Boards Create In Out Board
In Out Boards Get In Out Board
In Out Boards Delete In Out Board
In Out Boards Replace In Out Board
In Out Boards Update In Out Board
Invoices List Finance Invoices
Invoices Create Invoice
Invoices Get Invoice
Invoices Delete Invoice
Invoices Replace Invoice
Invoices Update Invoice
Invoices Get Invoice PDF
Knowledge Base Articles List Service Knowledge Base Articles
Knowledge Base Articles Create Service Knowledge Base Article
Knowledge Base Articles Get Service Knowledge Base Article
Knowledge Base Articles Delete Service Knowledge Base Article
Knowledge Base Articles Replace Service Knowledge Base Article
Knowledge Base Articles Update Service Knowledge Base Article
Knowledge Base Categories List Service Knowledge Base Categories
Knowledge Base Categories Create Service Knowledge Base Category
Knowledge Base Categories Get Service Knowledge Base Category
Knowledge Base Categories Delete Service Knowledge Base Category
Knowledge Base Categories Replace Service Knowledge Base Category
Knowledge Base Categories Update Service Knowledge Base Category
Knowledge Base Sub Categories List Service Knowledge Base Sub Categories
Knowledge Base Sub Categories Create Service Knowledge Base Sub Category
Knowledge Base Sub Categories Get Service Knowledge Base Sub Category
Knowledge Base Sub Categories Delete Service Knowledge Base Sub Category
Knowledge Base Sub Categories Replace Service Knowledge Base Sub Category
Knowledge Base Sub Categories Update Service Knowledge Base Sub Category
Member Skills List Members Skills
Member Skills Create Members Skill
Member Skills Get Members Skill
Member Skills Delete Members Skill
Member Skills Replace Members Skill
Member Skills Update Members Skill
Members List Members
Members Create Member
Members Get Member
Members Replace Member
Members Update Member
Members Deactivate Member
Members Link SSO User to Member
Members Submit Member
Members Unlink SSO User from Member
Members Delete Member's Unused Time Sheets
Members Create Member Identifier Token
Opportunities List Opportunities
Opportunities Create Opportunity
Opportunities Get Opportunity Count
Opportunities Get Opportunity
Opportunities Delete Opportunity
Opportunities Replace Opportunity
Opportunities Update Opportunity
Opportunities Convert Opportunity To Agreement
Opportunities Convert Opportunity To Project
Opportunities Convert Opportunity To Sales Order
Opportunities Convert Opportunity To Service Ticket
Opportunity Forecasts List Opportunity's Sales Forecasts
Opportunity Forecasts Create Forecast for Sales Opportunity
Opportunity Forecasts Delete Opportunity's Sales Forecast
Opportunity Forecasts Replace Opportunity's Sales Forecast
Opportunity Forecasts Update Opportunity's Sales Forecast
Opportunity Forecasts Copy Opportunity's Sales Forecast
Opportunity Statuses List Sales Opportunities Statuses
Opportunity Statuses Create Sales Opportunities Status
Opportunity Statuses Get Sales Opportunities Status
Opportunity Statuses Delete Sales Opportunities Status
Opportunity Statuses Replace Sales Opportunities Status
Opportunity Statuses Update Sales Opportunities Status
Priorities List Service Priorities
Priorities Create Service Priority
Priorities Get Service Priority
Priorities Delete Service Priority
Priorities Replace Service Priority
Priorities Update Service Priority
Priorities Get Service Priority Image
Procurement Adjustments List Procurement Adjustments
Procurement Adjustments Create Procurement Adjustment
Procurement Adjustments Get Procurement Adjustment
Procurement Adjustments Delete Procurement Adjustment
Procurement Adjustments Replace Procurement Adjustment
Procurement Adjustments Update Procurement Adjustment
Product Types List Procurement Types
Product Types Create Procurement Type
Product Types Get Procurement Type
Product Types Delete Procurement Type
Product Types Replace Procurement Type
Product Types Update Procurement Type
Products List Products
Products Create Product
Products Get Product
Products Delete Product
Products Replace Product
Products Update Product
Products Detach Product
Project Notes List Project Notes
Project Notes Create Project Note
Project Notes Get Project Note
Project Notes Delete Project Note
Project Notes Replace Project Note
Project Notes Update Project Note
Project Phases List Project Phases
Project Phases Create Project Phase
Project Phases Get Project Phase
Project Phases Delete Project Phase
Project Phases Replace Project Phase
Project Phases Update Project Phase
Project Statuses List Project Statuses
Project Statuses Create Project Status
Project Statuses Get Project Status
Project Statuses Delete Project Status
Project Statuses Replace Project Status
Project Statuses Update Project Status
Project Ticket Notes Mark Project Ticket Note As
Project Ticket Notes List Project Tickets All Notes
Project Tickets List Project Tickets
Project Tickets Create Project Ticket
Project Tickets Get Project Ticket
Project Tickets Delete Project Ticket
Project Tickets Replace Project Ticket
Project Tickets Update Project Ticket
Project Tickets List Project Tickets Activities
Project Tickets List Project Ticket Configuration
Project Tickets Create Project Tickets Configuration
Project Tickets Get Project Tickets Configuration
Project Tickets Delete Project Tickets Configuration
Project Tickets Convert Project Ticket
Project Tickets List Project Ticket's Documents
Project Tickets List Project Ticket's Products
Project Tickets List Project Ticket's Schedule Entries
Project Tickets List Project Ticket's Time Entries
Project Tickets Get Project Tickets Count
Project Tickets Search Project Tickets
Project Types List Project Types
Project Types Create Project Type
Project Types Get Project Type
Project Types Delete Project Type
Project Types Replace Project Type
Project Types Update Project Type
Projects List Projects
Projects Create Project
Projects Get Project
Projects Delete Project
Projects Replace Project
Projects Update Project
Purchase Order Statuses List Purchase Order Statuses
Purchase Order Statuses Create Purchase Order Status
Purchase Order Statuses Get Purchase Order Status
Purchase Order Statuses Delete Purchase Order Status
Purchase Order Statuses Update Purchase Order Status
Purchase Order Statuses Replace Purchase Order Status
Purchase Orders List Purchase Orders
Purchase Orders Create Purchase Order
Purchase Orders Get Purchase Order
Purchase Orders Delete Purchase Order
Purchase Orders Replace Purchase Order
Purchase Orders Update Purchase Order
Reports List Reports
Reports Get Reports By Report Name
Reports List Reports By Report Name Columns
Roles List Sales Roles
Roles Create Sales Role
Roles Get Sales Role
Roles Delete Sales Role
Roles Replace Sales Role
Roles Update Sales Role
Schedules List Schedule Types
Schedules List Schedule Entries
Schedules Get Schedule Entry
Schedules Create Schedule Entry
Schedules Update Schedule Entry
Schedules Delete Schedule Entry
Security Roles List Security Roles
Security Roles Create Security Role
Security Roles Get Security Role
Security Roles Delete Security Role
Severities List Service Severities
Severities Get Service Severity
Severities Replace Service Severity
Severities Update Service Severity
Skill Categories List Skill Categories
Skill Categories Create Skill Category
Skill Categories Get Skill Category
Skill Categories Delete Skill Category
Skill Categories Replace Skill Category
Skill Categories Update Skill Category
Skills List Skills
Skills Create Skill
Skills Get Skill
Skills Delete Skill
Skills Replace Skill
Skills Update Skill
Slas List Service SLAs
Slas Create Service SLAs
Slas Get Service SLAs
Slas Delete Service SLAs
Slas Replace Service SLAs
Slas Update Service SLAs
Sources List Service Sources
Sources Create Service Sources
Sources Get Service Sources
Sources Delete Service Sources
Sources Replace Service Sources
Sources Update Service Sources
Survey Results List Service Survey Results
Survey Results Create Service Survey Result
Survey Results Get Service Survey Result
Survey Results Delete Service Survey Result
Survey Results Replace Service Survey Result
Survey Results Update Service Surveys Result
Surveys List Surveys
Surveys Create Survey
Surveys Get Survey
Surveys Delete Survey
Surveys Replace Survey
Surveys Update Survey
Surveys Copy Survey
Ticket Notes List Project Ticket Notes
Ticket Notes Create Project Ticket Notes
Ticket Notes Get Project Ticket Notes
Ticket Notes Delete Project Ticket Notes
Ticket Notes Replace Project Ticket Notes
Ticket Notes Update Project Ticket Notes
Ticket Notes List Service Ticket Notes
Ticket Notes List All Service Ticket Notes
Ticket Notes Add Note to Service Ticket
Ticket Notes Get Service Ticket Note
Ticket Notes Delete Service Ticket Notes
Ticket Notes Replace Service Ticket Notes
Ticket Notes Update Service Ticket Notes
Ticket Tasks List Project Ticket Tasks
Ticket Tasks Create Project Ticket Task
Ticket Tasks Get Project Ticket Task
Ticket Tasks Delete Project Ticket Task
Ticket Tasks Replace Project Ticket Task
Ticket Tasks Update Project Ticket Task
Ticket Tasks List Service Ticket Tasks
Ticket Tasks Create Service Ticket Task
Ticket Tasks Get Service Ticket Task
Ticket Tasks Delete Service Ticket Task
Ticket Tasks Replace Service Ticket Task
Ticket Tasks Get Service Ticket Task Count
Ticket Tasks Update Service Ticket Task
Tickets List Service Tickets
Tickets Create Service Ticket
Tickets Get Service Ticket
Tickets Delete Service Ticket
Tickets Replace Service Ticket
Tickets Update Service Ticket
Tickets List Service Tickets Activities
Tickets Attach Children to Service Ticket
Tickets List Service Ticket Configurations
Tickets Create Service Ticket Configuration
Tickets Get Service Ticket Configuration
Tickets Delete Service Ticket Configuration
Tickets Add Configuration to Service Ticket
Tickets Convert Service Ticket To Project
Tickets Merge Service Tickets
Tickets List Service Tickets Products
Tickets List Service Ticket's Schedule Entries
Tickets List Service Tickets Time Entries
Tickets Get Service Tickets Count
Tickets Search Service Tickets
Time Entries List Time Entries
Time Entries Create Time Entry
Time Entries Get Time Entry
Time Entries Delete Time Entry
Time Entries Replace Time Entry
Time Entries Update Time Entry
Time Entries Create Default Time Entry
Time Sheets List Time Sheets
Time Sheets Get Time Sheet
Time Sheets Approve Time Sheet
Time Sheets Reject Time Sheet
Time Sheets Reverse Time Sheet
Time Sheets Submit Time Sheet
Work Roles List Time Work Roles
Work Roles Create Time Work Role
Work Roles Get Time Work Role
Work Roles Delete Time Work Role
Work Roles Replace Time Work Role
Work Roles Update Time Work Role
Work Types List Work Types
Work Types Create Work Type
Work Types Get Work Type
Work Types Delete Work Type
Work Types Replace Work Type
Work Types Update Work Type

ConnectWise PSA pod configuration

{% hint style="warning" %} Pod authorization

Pods are a way to customize each of your screens in ConnectWise with relevant information that is often out of the view or displayed elsewhere in ConnectWise. Note that pods do not allow the use of the fat client due to authorization pass-through issues. This means that you can use the web client to access pods. {% endhint %}

During pod configuration, you'll need to update your Rewst base URL to match your geographic Rewst instance. This will vary depending on which Rewst instance you are on. Identify your instance by the URL you use to access Rewst. Please use the following table as a guide to identify your Rewst base URL


Rewst URL

Base URL
app.rewst.io engine.rewst.io
app.eu.rewst.io engine.eu.rewst.io
app.rewst.eu engine.rewst.eu
app.rewst.asia engine.rewst.asia

Configure ConnectWise pods

  1. Login to ConnectWise PSA as a user that has access to the setup tables. This is likely an admin account.
  2. Click System on the bottom left of the ConnectWise PSA UI.
  3. Click the Setup Tables menu that appears.
  4. Enter *api in the table filter. Your returned result should be Manage Hosted API.
  5. Click Add and use the below settings:
    1. Description - Enter Rewst
    2. Screen - For our example, we use Service Tickets
    3. Origin - <rewst_url> Note that you'll need to update this origin URL to match your Rewst instance. Determine your instance by referencing the instance table above.
    4. URL - https://<rewst_url>/organizations/<org_id>/integrations/embed/ticket/[cw_id] Note that you'll need to update this URL to match your Rewst instance. Determine your instance by referencing the included instance table. You'll also need to add your own org_idto the URL. This can be obtained by going to your Rewst platform, looking at the URL, locating the org id between the / marks, and pasting it into the URL. [cw_id]should be left as-is.
  6. Select Pod.

{% hint style="warning" %} Update the URL

You will need to add your own rewst_url and org_id to the URL above. Your Org ID can be obtained by going to Rewst and looking at the URL. [cw_id]should be left as-is. {% endhint %}

Add pods to tickets

  1. Click the Settings icon in the top right corner of your screen.
  2. Select Pod Configuration.

Selecting the Settings Icon

  1. Move the Rewst pods to the Displayed table.

Adding Rewst Configured Pods

{% hint style="danger" %} Firefox dynamic state partitioning

An issue arises with Firefox's Dynamic State Partitioning where the default network.cookie.cookieBehavior value of 5 rejects (known) trackers and partitions third-party storage, hindering the authentication process and causing a logged GraphQL error. This issue also occurs with embedded forms.

Firefox users must set network.cookie.cookieBehavior to 4 for successful pod authentication.

Consult the official Firefox documentation for more information: https://developer.mozilla.org/en-US/docs/Web/Privacy/State_Partitioning#disable_dynamic_state_partitioning. {% endhint %}

You'll have a workflow called [Rewst Master v3] Pods: Technician Toolbox within your organization.

Re-run a pod from a ticket

Let's imagine you have a ticket that has had its associated pod workflow execution expire (or fail for one reason or another). If you attempt to view the pod in the ticket you'll see something along the lines of:

To execute a new instance of the pod, click on the Links dropdown in the ticket and choose Rewst - Start Pod on this Ticket.

After you have used this button, a web page will open and close. This will send a request to the Live Link trigger and start a new execution for that ticket. Allow some time to pass for the ticket to update. You should see the pod populate once the execution has gone through.

Permission requirements for ConnectWise PSA integration

{% hint style="info" %} Our listed ConnectWise PSA permission requirements are what is needed for Rewst's Crates to run. Other API actions that you may wish to use in custom-built workflows may require additional permissions. For questions about what permissions would be required to achieve a specific goal, reach out to Rewst support. {% endhint %}

Update any of the below permissions scopes in ConnectWise PSA by doing the following in ConnectWise PSA:

  1. Click > in the left side menu.
  2. Navigate to System > Security Roles.
  3. Click +.
  4. Enter the name of your security role.
  5. Click Save.
  6. A new set of accordion menus will appear. Click to expand each as it corresponds to your needed permission for Rewst.
  7. Click ⌄ under the column for the required level of permission. Change the permission level from None to whichever option is indicated in our documentation.
  8. When all desired permissions are updated, click Save.

A white screen with grey and blue elements, and black text. Center screen is a table with down arrows, which reveal menus of options when clicked. The table is for setting permission levels in ConnectWise PSA.

Match the line item under each accordion menu with the scope header at the top of the page to find where to make your adjustment.

Click to expand and view your relevant permission scopes.

Authentication requirements

To initiate the successful authentication of the ConnectWise PSA integration with Rewst, and pull back the list of companies you want to associate, the following permission scopes are needed:

System

  • Member Maintenance: Set Inquire to All

Companies

  • Company Maintenance: Set Inquire to All

{% hint style="danger" %} If you are seeing a 403 Forbidden error when running workflows, this is due to incorrect permissions. Ensure that the above authentication requirements are complete to resolve this error. {% endhint %}

Additional action requirements

In addition to the above that’s required for authentication, there are several more actions the ConnectWise PSA integration is capable of taking within Rewst. To use them all, you’ll need the following additional security roles configured for this account:

Companies

  • Configurations: Set Add, Edit, Inquire to All
  • Contacts: Set Add, Edit, Inquire to All
  • Manage Attachments: Set Add, Edit, and Delete to My, Inquire to All
  • Team Members: Set Inquire to All

Finance

  • Agreements: Set Inquire to All
  • Billing View Time: Set Inquire to All
    • Required for adding billable time to tickets
  • Billing View Time: Set Edit to All
    • Required for adding billable time to tickets

Project

  • Project Ticket: Set Add, Edit, Inquire to All
  • Project Ticket - Dependancies: Set Add, Edit, Inquire to All
  • Close Project Tickets: Set Edit, Inquire to All

Service Desk

  • Service Tickets: Set Add, Edit, Inquire to All
  • Service Ticket – Dependencies: Set Add, Edit, Inquire to All
  • Close Service Tickets: Set Edit, Inquire to All
  • Merge Tickets: Set Add, Edit, Inquire to All

System

  • My Account: Set Add, Edit, Delete, Inquire to My
  • Table Setup: Set Add, Inquire to All (Additional customization can be done to allow or disallow tables)

Time & Expense

  • Time Entry: Set Add, Edit and Inquire to All, Delete to My
  • Time Entry Billable Option: Set Add, Edit and Inquire to All, Delete to My
Breakdown of actions per security role

The following tables outline the various actions the ConnectWise PSA integration can take within Rewst, grouped by their security roles in ConnectWise, and each of their required permission levels to be able to execute them in workflows. We also have a generic request action, that will require any relevant scopes for what it’s being used for. For more information on the ConnectWise API and its required permissions, please refer to the Official ConnectWise API documentation.

Companies

ActionsAPI endpointRequired permission
List Companies/company/companiesInquire
Get Company/company/companies/{id}Inquire
List Communication Types/company/communicationTypesInquire
List Contacts/company/contactsInquire
Get Contact/company/contacts/{id}Inquire
Create Contact/company/contactsAdd

Service Desk

ActionsAPI endpointRequired permission
List Service Tickets/service/ticketsInquire
Get Service Ticket/service/tickets/{id}Inquire
Get Tasks/service/tickets/{id}/tasksInquire
Create Task/service/tickets/tasks/{id}Add
Create Bulk Tasks/service/tickets/tasks/bulkAdd
Update Task/service/tickets/tasks/{id}Edit
Update Service Ticket/service/tickets/{id}Edit
Create Service Ticket/service/ticketsAdd

Time and expense

ActionsAPI endpointRequired permission
Add Time Entry/time/entriesAdd

Finance

ActionsAPI endpointRequired permission
List Agreements/finance/agreementsInquire

Query and filter in ConnectWise PSA actions

Query string parameters and conditions

The ability to filter and query specific data is essential when working with ConnectWise PSA Actions in Rewst. Query string parameters and conditions let you use specific symbols and expressions to pinpoint the exact data you need.

Build a query string

Query strings are made up of three parts:

  1. Attribute - This can be the name of the attribute you’re looking to filter on, such as name, or it can be the path to get to the attribute you’re looking to filter on, such as board/name.
  2. Symbol - These define how you want to filter your incoming data. This can range from one-character symbols, for example = , to entire words, such as contains.
  3. Value - This is what you’re actually looking for. This can be a wide range of data types including Strings such as "hello world", and Booleans, such as True .

These three parts can be combine to pull any data you need.

Query conditions vs child conditions

Query conditions are used to find any value that can contain only one value, such as a string or a boolean. Child conditions are used when the property you're filtering on contains many values, such as a list.

Examples

  1. Easily locate companies by name
    1. Action: List Companies
    2. Query Condition: name="Test Rewst"
  2. Organize tickets by board names for efficient processing
    1. Action: List Service Tickets
    2. Query Condition: board/name="Integration"
  3. Target contacts based on communication preferences
    1. Action: List Contacts
    2. Child Condition: communicationItems/value like "[john@Outlook.com](<mailto:john@Outlook.com>)" AND communicationItems/communicationType="Email"

How to use symbols:

  • =: Matches exactly
  • !=: Does not match
  • <, <=, >, >=: Relational operators
  • contains, like, in, not: Specific condition operators

Practical examples

Learn how to apply query string parameters and conditions in real-world scenarios.

Example 1: List companies

  • Action: List Companies
  • Query Condition: name="Test Rewst"
  • Explanation: Easily locate companies by name.

Example 2: List service tickets

  • Action: List Service Tickets
  • Query Condition: board/name="Integration"
  • Explanation: Organize tickets by board names for efficient processing.

Example 3: List contacts with specific communication items

  • Action: List Contacts
  • Child Condition: communicationItems/value like "john@Outlook.com" AND communicationItems/communicationType="Email"
  • Explanation: Target contacts based on communication preferences.

Query nested attributes

Accessing data within nested objects requires a specific approach.

  • Syntax: Use a forward slash /
  • Example: communicationItems/value
  • Use Case: When you need to extract specific attributes from nested entities, such as communication items within contacts.

Conditions in ConnectWise PSA actions

Different conditions serve different purposes. Mastering these conditions enables you to build complex and tailored queries.

  • Strings: Match text patterns - Summary = "string"
  • Integers: Locate numerical values - Board/Id = 123
  • Boolean: Filter by true/false conditions - ClosedFlag = True
  • Datetimes: Sort by date and time - LastUpdated = [2016-08-20T18:04:26Z]
  • Operators: Define relational/logical conditions - Summary Not Contains "Low Priority"
  • Logic Operators: Combine multiple conditions - AND, OR
  • Reference Conditions: Access fields within referenced objects - manufacturer/name

Troubleshoot API issues from ConnectWise logs

{% hint style="info" %} It may be necessary to collect API logs from your ConnectWise PSA to send to ConnectWise for troubleshooting, if you encounter issues. The below steps will generate a log for the specific time window you choose. {% endhint %}

  1. Log in to ConnectWise PSA.
  2. Navigate to System > Members.
  3. Click API Members. Here, you'll find settings specific to API interactions and configurations.

  1. Under the API Members tab, locate and select the user associated with Rewst's integration.

  1. After selecting the Rewst user:
    1. Navigate to the API Logs tab.
    2. Click Start Debug Mode.

  1. In the Debug Mode dialog:
    1. Enter length of time in the Minutes field. This will capture logs for the specified duration.
    2. Click Ok.

Crates related to the ConnectWise PSA integration

Cover image
Bulk Create Client from PSAScreenshot 2025-06-17 at 3.39.46 PM.pngbulk-create-client-from-psa-crate.md
OpenAI Ticket CategorizationScreenshot 2025-06-17 at 3.47.08 PM.pngopenai-ticket-categorisation-setup.md
PSA: Update ticket with User Onboard LinksScreenshot 2025-11-11 at 3.56.56 PM.png
OpenAI Ticket Sentiment AnalysisScreenshot 2025-06-17 at 3.48.28 PM.pngopenai-ticket-sentiment-setup.md
CW PSA: Pod Technician Toolbox Crate V2Screenshot 2025-06-17 at 3.49.13 PM.pngcwm-technician-toolbox-via-pod-1.md
PSA: Update ticket with User Offboard LinksScreenshot 2025-11-11 at 3.56.13 PM.png
Assign Asset/Config to Ticket Based on ContactScreenshot 2025-06-17 at 3.50.15 PM.pngassign-asset-config-to-ticket-based-on-contact-crate.md
Use OpenAI to Suggest Responses to New TicketsScreenshot 2025-06-17 at 3.51.29 PM.pnguse-ai-to-suggest-responses-to-new-tickets-crate.md
Prompt to Combine Similar TicketsScreenshot 2025-06-17 at 3.51.04 PM.pngprompt-to-combine-similar-tickets-crate.md
Browse Rewst Form Triggers Within a Form and Attach to a TicketScreenshot 2025-06-17 at 3.52.02 PM.png
ConnectWise PSA Agreement MappingScreenshot 2025-06-17 at 3.52.20 PM.pngconnectwise-psa-agreement-mapping.md
Consolidate and Manage Duplicate ConfigurationsScreenshot 2025-06-17 at 3.52.39 PM.pngconsolidate-and-manage-duplicate-configurations-crate.md
Sync AzureAD Account Information with ConnectWise PSA Contacts (V3)Screenshot 2025-06-17 at 3.53.00 PM.pngsync-azuread-account-information-with-connectwise-psa-contacts-v3-crate.md
Upload File to PSA TicketScreenshot 2025-06-17 at 3.53.16 PM.png
Configure CWM Agreement for Duo SyncScreenshot 2025-06-17 at 3.53.36 PM.png
Set ConnectWise PSA Board OnCall MemberScreenshot 2025-06-17 at 3.54.10 PM.png
Deactivate ConnectWise PSA Contacts When Their Company is DeactivatedScreenshot 2025-06-17 at 3.54.32 PM.png
Sync On-Prem Users to CWM ContactsScreenshot 2025-06-17 at 3.54.55 PM.png
Mark CWM Overdue Tasks CompleteScreenshot 2025-06-17 at 3.55.21 PM.png
Sync VIP Contact Status to ITG StatusScreenshot 2025-06-17 at 3.55.39 PM.png

{% hint style="success" %} Got an idea for a new integration? Rewst is constantly adding new integrations to our integrations page. Submit your idea or upvote existing ideas here in our Canny feedback collector. {% endhint %}