> ## Documentation Index
> Fetch the complete documentation index at: https://docs.neoagent.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Connecting ConnectWise CPQ to Neo

> Create a ConnectWise CPQ API key pair and save it in Neo with your access key

You connect ConnectWise CPQ once at the MSP level. Neo needs three values: your CPQ access key and an API key pair.

## 1. Find your access key

Sign in to ConnectWise CPQ. The address in your browser contains `accesskey=` followed by your access key. Copy that value.

## 2. Create the API key pair

<Steps>
  <Step title="Use an API user">
    The key pair belongs to a CPQ user marked as an API user. Create one for Neo, or ask your CPQ administrator to mark an existing user as an API user. What that user may do in CPQ is what Neo may do.
  </Step>

  <Step title="Create the keys">
    In CPQ, open **Settings > Organization Settings > API Keys** and create a key pair for that user.
  </Step>

  <Step title="Copy both keys">
    Copy the public key and the private key. CPQ shows the private key only once.
  </Step>
</Steps>

<Warning>
  Do not delete the key pair in CPQ after you connect it. Neo loses access until you save a new pair here.
</Warning>

## 3. Add the keys in Neo

<Steps>
  <Step title="Open Integrations">
    In the Neo Dashboard, open **Integrations** and find the ConnectWise CPQ card, under Sales & Quoting.
  </Step>

  <Step title="Save the keys">
    Paste the access key, the public key and the private key, and click **Save**. Neo checks them against CPQ before saving, so a wrong key is rejected straight away. Keys whose CPQ user may not read tax codes still save; that user's rights limit what the agent can do.
  </Step>
</Steps>

## 4. Turn ConnectWise CPQ on per agent

Open the agent, go to the Integrations section, and configure the ConnectWise CPQ block. Pick a profile, then adjust any area:

| Area | Access levels you can pick | Notes |
| - | - | - |
| **Quotes** | Disabled, Read Only, Read/Write | Quotes, lines, tabs, terms and the customer records on them. This is the area a quote-drafting agent needs. |
| **Quote Approval Decisions** | Disabled, Read/Write | Recording an approver's decision on a quote. It also needs **Quotes** at Read Only or above, because CPQ answers with the whole quote. Leave it off on an agent that drafts quotes. |
| **Users** | Disabled, Read Only, Read/Write | Your CPQ users. Read Only lets the agent find a rep's approver. |
| **Templates and Lookups** | Disabled, Read Only | Templates, tax codes and billing periods. A drafting agent needs it to pick a template. |

See [ConnectWise CPQ API](/agents/tools/sales/connectwise-cpq-api) for what the agent can do.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.