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

# Copper

> CRM — account users & access

<Tabs>
  <Tab title="Overview">
    Connect Copper with an API key to sync account users and run access reviews. Read-only; the key is held by Nango.

    <Info>
      **Read-only access.** DSALTA only reads data from this integration. It never creates, modifies, or deletes anything in your environment, and every remediation step is performed by your team directly in the third-party product.
    </Info>

    <Note>
      DSALTA collects this integration's data when you connect it — you can refresh it at any time with **Sync from integrations** on the **Integrations** page. The compliance checks below re-run once a day at 02:00 America/New\_York.
    </Note>

    ## What DSALTA reads

    DSALTA reads your Copper account users — name and email address, which is what Copper's admin API returns for a user — and those appear on your **Access** page. Copper is a CRM, so the Companies, People, Opportunities and Leads it holds are your own customer and prospect data rather than infrastructure, and nothing is synced to **Inventory**, **Incidents** or **Changes**. **People** is your own DSALTA directory, which the access reviews below match Copper users against by email.

    It calls these Copper endpoints:

    * `/v1/account`
    * `/v1/users/search`

    Every request is a read. DSALTA has no code path that creates, modifies, or deletes anything in your Copper environment.

    ## Troubleshooting

    <AccordionGroup>
      <Accordion title="Every Copper user shows as Active, including someone I removed">
        Copper's user object carries no status field, so every user Copper returns is recorded as Active. Remove the person in Copper itself, then run **Sync from integrations** — the row leaves the Access page once Copper stops returning them.
      </Accordion>

      <Accordion title="The connection is rejected">
        The API key is invalid or revoked, or the email address entered does not belong to the Copper user the key was generated for. Copper authenticates the key and the address together.
      </Accordion>
    </AccordionGroup>

    <AccordionGroup>
      <Accordion title="How do I check whether the connection is healthy?">
        Open **Integrations** in the DSALTA sidebar, stay on the **Connected** tab, and click **Manage** on the integration's card. Open the **Status** tab: it shows either **Connected and working properly** or **Connection issues detected**.

        Use the **Status** tab, not **Overview** — Overview always reports **Connected** regardless of the real state.
      </Accordion>

      <Accordion title="A check shows Failed and nothing changed on my side">
        On an integration-powered check, **Failed** normally means DSALTA was blocked rather than that you are non-compliant. Open the test, go to **Source Data**, and read the result code: **403** is a missing permission, **428** is a setting DSALTA still needs, **500** is a failure on DSALTA's side.

        A real compliance gap shows **207** and leaves the test looking **Completed**. See [Understanding Test Results](/guides/data-library/test-results).
      </Accordion>

      <Accordion title="Data looks out of date">
        Compliance checks re-run once a day at 02:00 America/New\_York. To refresh sooner, open **Integrations → Connected** and click **Sync from integrations** at the top right — it refreshes every connected integration at once.
      </Accordion>

      <Accordion title="How do I repair a broken connection?">
        There is no Reconnect, Repair or Refresh Token button. The only repair available is to disconnect and connect again.

        <Warning>
          **Disconnecting is destructive and cannot be undone.** DSALTA removes the access records, inventory, vulnerabilities, code changes, incidents and device records collected from this integration, and deletes the test results tied to the connection. Export anything you still need as audit evidence first — see [Integration errors](/troubleshooting/integration-errors).
        </Warning>
      </Accordion>

      <Accordion title="Configure scope will not let me change anything">
        That is expected. **Configure scope** is read-only — it shows what DSALTA is permitted to read, and has no Save action. To change what DSALTA can see, change the permissions on the credential in the third-party product, then disconnect and connect again.
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="How to connect">
    A Copper API key plus the email address of the account it belongs to, entered in Nango's secure window. Read-only.

    **Before you begin**

    * A Copper account that can create API keys. A standard Copper account works; no paid or enterprise plan is required.
    * The email address of the Copper user the key is generated for — Copper authenticates the key and that address as a pair, so you need both.

    You will need:

    | Field             | Where to find it                            | Example                           |
    | ----------------- | ------------------------------------------- | --------------------------------- |
    | **API key**       | Copper → Settings → Integrations → API Keys | `Shown when the key is generated` |
    | **Account email** | The Copper user the key belongs to          | `you@your-company.com`            |

    <Steps>
      <Step title="Start in DSALTA">
        Open **Integrations** in the DSALTA sidebar, find **Copper**, and click **Connect** to open the connect panel. Leave it open — it lists every value you need, and you create those in the steps below.
      </Step>

      <Step title="Open Copper's API Keys settings">
        In Copper, go to Settings → Integrations → API Keys. A standard Copper account works; no paid or enterprise plan is required.
      </Step>

      <Step title="Generate an API key">
        Click Generate API Key, give it a name (e.g. DSALTA), and copy the key shown. You'll paste it in the next step, along with the email address of the account it belongs to.

        <Warning>
          The key inherits the permissions of the Copper user it is generated for and is not scoped to the endpoints DSALTA calls. Treat it as a secret, and revoke it in Copper if you disconnect the integration.
        </Warning>
      </Step>

      <Step title="Connect Copper">
        Back in the connect panel, click through to the **Connect Copper** step and enter your Copper credentials in the secure Nango window. DSALTA never stores them directly — it keeps only a connection reference, and the key itself is held by Nango.

        <Tip>
          Enter the email address exactly as it appears on the Copper user who owns the key. It is not a display name and not a shared alias — Copper authenticates the key and the address together.
        </Tip>
      </Step>
    </Steps>

    <Check>
      DSALTA validates the credential as soon as the Nango window closes, by calling `/v1/account` and confirming it resolves to a Copper account. On success the integration moves to the **Connected** tab, and **Manage → Status** reads **Connected and working properly**. Checks begin reporting after the first sync.
    </Check>

    <Warning>
      **If the connection is rejected.** The key is invalid or revoked, or the email address does not belong to the Copper user the key was generated for.

      The on-screen message is generic — see [Connection error messages](/troubleshooting/connection-error-messages).
    </Warning>
  </Tab>

  <Tab title="Automated checks">
    Each check below re-runs once a day, at 02:00 America/New\_York, while this integration is connected. Click any check for step-by-step remediation guidance.

    | Check                                                                                                                 | Severity | What it verifies                                                                  |
    | --------------------------------------------------------------------------------------------------------------------- | -------- | --------------------------------------------------------------------------------- |
    | [User access to Critical System should be valid](/integrations/copper/user-access-to-critical-system-should-be-valid) | Info     | Checks that everyone with Copper access is an active employee on the People page. |
    | [Offboarded users should not have active access](/integrations/copper/offboarded-users-should-not-have-active-access) | High     | Checks that offboarded employees no longer have active Copper access.             |
  </Tab>

  <Tab title="Useful links">
    | Topic   | Link                                                                    |
    | ------- | ----------------------------------------------------------------------- |
    | General | [Copper website](https://copper.com)                                    |
    | DSALTA  | [Connection error messages](/troubleshooting/connection-error-messages) |
  </Tab>
</Tabs>
