Skip to content

ConnectWise PSA Setup

ConnectWise PSA is Junto's primary integration. It syncs tickets, companies, contacts, and time entries, providing the foundation for signal triage.

Prerequisites

  • A ConnectWise PSA instance (cloud or on-premise)
  • An API member account with appropriate security role permissions
  • Your ConnectWise Company Identifier and base URL

Step 1: Create an API Member in ConnectWise

  1. In ConnectWise, go to System > Members and create a new API member.
  2. Assign the member a security role with the following permissions:
    • Service Tickets -- Read, Add, Edit
    • Companies -- Read
    • Contacts -- Read
    • Time Entries -- Read, Add, Edit
    • Service Boards -- Read
  3. Generate API keys (public and private) for this member.

Step 2: Configure in Junto

  1. In Junto, go to Settings > Integrations > ConnectWise PSA.
  2. Click Add Configuration and fill in:
    • Company Identifier -- Your ConnectWise company ID (e.g., mycompany).
    • Base URL -- Your ConnectWise instance URL (e.g., na.myconnectwise.net).
    • Public Key -- The API public key from Step 1.
    • Private Key -- The API private key from Step 1.
  3. Click Create. Junto validates the connection by querying your ConnectWise instance.

Step 3: Map Service Boards

After connecting, configure which ConnectWise service boards Junto should monitor:

  1. Select the boards you want to sync tickets from.
  2. For each board, map ticket statuses to Junto signal statuses (Open, In Progress, Closed, etc.).
  3. Map ConnectWise priorities to Junto priority levels.

Step 4: Map Technicians

Link your Junto users to their ConnectWise member records:

  1. Go to the Member Mapping section on the ConnectWise settings page.
  2. For each Junto user, select their corresponding ConnectWise member.
  3. This mapping enables time entries created by the AI agent to be attributed to the correct technician.

Step 5: Run Initial Sync

Click Full Sync to perform the initial data import. This syncs:

  • Companies -- All active companies from ConnectWise.
  • Contacts -- Contacts associated with synced companies.
  • Tickets -- Open tickets from the selected service boards.
  • Time entries -- Time entries associated with synced tickets.

After the initial sync, Junto automatically runs incremental syncs on a schedule and listens for webhook events.

Webhook Auto-Registration

Junto automatically registers ConnectWise callbacks (webhooks) for real-time updates. When a ticket, time entry, company, or contact changes in ConnectWise, the webhook notifies Junto immediately so it does not need to wait for the next scheduled sync.

Webhooks are auto-registered when you create or update the configuration. No manual setup is required.

Troubleshooting

  • Connection fails -- Verify your Company Identifier, Base URL, and API keys. Ensure the API member is not disabled.
  • Tickets not syncing -- Check that the correct service boards are selected and that the API member has read access to those boards.
  • Time entries not attributed -- Verify the technician mapping. The Junto user who initiates the agent must be mapped to a ConnectWise member.
  • Webhooks not firing -- Junto auto-registers callbacks. If issues persist, check the Callback Entries in ConnectWise under System > Setup Tables.