Skip to content

Commit

Permalink
feat(integrations): Add copper integration (#3071)
Browse files Browse the repository at this point in the history
<!-- Describe the problem and your solution --> 

<!-- Issue ticket number and link (if applicable) -->

<!-- Testing instructions (skip if just adding/editing providers) -->

---------

Co-authored-by: Khaliq <[email protected]>
  • Loading branch information
dannylwe and khaliqgant authored Dec 2, 2024
1 parent edf796d commit fa56a6e
Show file tree
Hide file tree
Showing 10 changed files with 156 additions and 6 deletions.
2 changes: 1 addition & 1 deletion docs-v2/integrations/all/asana-scim/connect.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ sidebarTitle: Asana

# Overview

To authenticate with Asana, you need two key pieces of information:
To authenticate with Asana, you need one piece of information:
1. **API Key** - Your Asana API Key


Expand Down
37 changes: 37 additions & 0 deletions docs-v2/integrations/all/copper-api-key/connect.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
title: Copper - How do I link my account?
sidebarTitle: Copper
---


# Overview

To authenticate with Copper, you need one key piece of information:
1. **API Key** - Your Copper API Key


This guide will walk you through finding or creating those credentials within Copper.


### Prerequisites:

- You must set up an account with Copper.


#### Step 1: Finding Copper API Key
1. Log into your Copper account and navigate to `System settings` > `Integrations` > `API Keys` and click the `GENERATE API KEY` button.

<img src="/integrations/all/copper-api-key/copper_key.png" />

2. After generating a new token, securely copy your API Key. Also note your email address related to the API key.

#### Step 2: Connect Your Copper Account

<img src="/integrations/all/copper-api-key/nango_connect_ui.png" />

To authenticate using your API credentials, navigate to the Copper authentication form.
Enter your credentials as follows:
- API Key: Your API key
- User Email: Your email that created the API Key

Click "Connect" to complete the authentication.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
47 changes: 47 additions & 0 deletions docs-v2/integrations/all/copper.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
title: Copper
sidebarTitle: Copper
---

API configuration: [`copper`](https://nango.dev/providers.yaml), [`copper-api-key`](https://nango.dev/providers.yaml)


## Features

| Features | Status |
| - | - |
| [Auth (OAuth) + API Key](/guides/getting-started/authorize-an-api-from-your-app) ||
| [Sync data](/guides/getting-started/read-from-an-api) ||
| [Perform workflows](/guides/getting-started/write-to-an-api) ||
| [Proxy requests](/guides/proxy-requests-to-an-api) ||
| [Receive webhooks](/guides/receive-webhooks-from-an-api) | 🚫 (time to contribute: &lt;48h) |

<Tip>We can implement missing features in &lt;48h, just ask for it in the [community](https://nango.dev/slack).</Tip>

## Getting started

- [Generate a copper API token in your copper developer account](https://support.copper.com/en/articles/8823347-generating-an-api-key)
- [How to register your Oauth Application](https://developer.copper.com/introduction/oauth/index.html#2-prerequisites)
- [OAuth related docs](https://developer.copper.com/introduction/oauth/quickstart.html)
- [List of OAuth scopes](https://developer.copper.com/introduction/oauth/index.html#7-scopes)
- [Copper API docs](https://developer.copper.com/introduction/requests.html#headers)
- [API rate liming](https://developer.copper.com/introduction/requests.html#rate-limits)

<Tip>Need help getting started? Get help in the [community](https://nango.dev/slack).</Tip>

## API gotchas

- Copper offers both OAuth and API_KEY authentication modes. To use OAuth2.0 with Copper, you must first register your application.

- To register your application, [contact](https://developer.copper.com/introduction/oauth/index.html#:~:text=To%20register%20your,all%20authorization%20flows.) copper.

- You will need to provide the name and purpose of your application as well as a URL to an HTTPS endpoint that will handle the secure callback.
You will receive two credentials, client_id and client_secret, required for all authorization flows.

- To generate an API token, in the Copper web app navigate to `System settings` > `Integrations` > `API Keys` and click the `GENERATE API KEY` button.

<Note>Add Getting Started links and Gotchas by [editing this page](https://github.com/nangohq/nango/tree/master/docs-v2/integrations/all/copper.mdx)</Note>

<Card title="Connect to copper-api-key" icon="link" href="/integrations/all/copper-api-key/connect" horizontal>
Guide to connect to Copper API Key using Nango Connect.
</Card>
9 changes: 5 additions & 4 deletions docs-v2/integrations/crm.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -31,27 +31,28 @@ Ask us in the [Slack community](https://nango.dev/slack) and we can help you qui
<Card title="Blackbaud" href="/integrations/all/blackbaud" color="#68a063" />
<Card title="Buildium" href="/integrations/all/buildium" color="#68a063" />
<Card title="Close" href="/integrations/all/close" color="#68a063" />
<Card title="Copper" href="/integrations/all/copper" color="#68a063" />
<Card title="Exact Online" href="/integrations/all/exact-online" color="#68a063" />
<Card title="Firefish" href="/integrations/all/firefish" color="#68a063" />
<Card title="Freshsales" href="/integrations/all/freshsales" color="#68a063" />
<Card title="Gainsight CC" href="/integrations/all/gainsight-cc" color="#68a063" />
<Card title="Gong" href="/integrations/all/gong" color="#68a063" />
<Card title="Holded" href="/integrations/all/holded" color="#68a063" />
<Card title="Hubspot" href="/integrations/all/hubspot" color="#68a063" />
<Card title="Freshsales" href="/integrations/all/freshsales" color="#68a063" />
<Card title="Intercom" href="/integrations/all/intercom" color="#68a063" />
<Card title="Insightly" href="/integrations/all/insightly" color="#68a063" />
<Card title="Intercom" href="/integrations/all/intercom" color="#68a063" />
<Card title="Keap" href="/integrations/all/keap" color="#68a063" />
<Card title="Kustomer" href="/integrations/all/kustomer" color="#68a063" />
<Card title="Manatal" href="/integrations/all/manatal" color="#68a063" />
<Card title="Medallia" href="/integrations/all/medallia" color="#68a063" />
<Card title="Pipedrive" href="/integrations/all/pipedrive" color="#68a063" />
<Card title="Salesforce" href="/integrations/all/salesforce" color="#68a063" />
<Card title="Salesloft" href="/integrations/all/salesloft" color="#68a063" />
<Card title="Wealthbox" href="/integrations/all/wealthbox" color="#68a063" />
<Card title="Twenty CRM" href="/integrations/all/twenty-crm" color="#68a063" />
<Card title="Unanet" href="/integrations/all/unanet" color="#68a063" />
<Card title="Wealthbox" href="/integrations/all/wealthbox" color="#68a063" />
<Card title="Zoho CRM" href="/integrations/all/zoho-crm" color="#68a063" />
<Card title="ZoomInfo" href="/integrations/all/zoominfo" color="#68a063" />
<Card title="Twenty CRM" href="/integrations/all/twenty-crm" color="#68a063" />
</CardGroup>

<Tip>
Expand Down
1 change: 1 addition & 0 deletions docs-v2/mint.json
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,7 @@
"integrations/all/contentstack",
"integrations/all/coupa-compass",
"integrations/all/coros",
"integrations/all/copper",
"integrations/all/databricks",
"integrations/all/datev",
"integrations/all/datadog",
Expand Down
52 changes: 51 additions & 1 deletion packages/shared/providers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1500,6 +1500,56 @@ codeclimate:
title: API Key
description: The API key for your Code Climate account

copper:
display_name: Copper
categories:
- crm
auth_mode: OAUTH2
proxy:
base_url: https://api.copper.com/developer_api/
default_scopes:
- developer/v1/all
authorization_url: https://app.copper.com/oauth/authorize
token_url: https://app.copper.com/oauth/token
authorization_params:
response_type: code
token_params:
grant_type: authorization_code
refresh_params:
grant_type: refresh_token
docs: https://docs.nango.dev/integrations/all/copper

copper-api-key:
display_name: Copper (api key)
categories:
- crm
auth_mode: API_KEY
proxy:
base_url: https://api.copper.com/developer_api
headers:
X-PW-AccessToken: ${apiKey}
X-PW-Application: developer_api
X-PW-UserEmail: ${connectionConfig.userEmail}
Content-Type: application/json
verification:
method: GET
endpoint: /v1/account
docs_connect: https://docs.nango.dev/integrations/all/copper/connect
credentials:
apiKey:
type: string
title: API Key
description: The API key for your Copper account
pattern: '^[a-f0-9]{32}$'
example: '4f3c12efb9659a0b5c123b568745dbf9'
doc_section: '#step-1-finding-copper-api-key'
connection_config:
userEmail:
type: string
title: User Email
description: Email address of the user who generated the token
docs: https://docs.nango.dev/integrations/all/copper

connectwise-psa:
display_name: ConnectWise PSA
categories:
Expand Down Expand Up @@ -2320,7 +2370,7 @@ firefish:
display_name: Firefish
scope_separator: ' '
categories:
- CRM
- crm
auth_mode: OAUTH2_CC
token_url: https://api.firefishsoftware.com/authorization/token
token_params:
Expand Down
13 changes: 13 additions & 0 deletions packages/webapp/public/images/template-logos/copper.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit fa56a6e

Please sign in to comment.