API Data Provider - Online Help

Connecting to Copper

Using API Key Authentication

To authenticate with Copper, you need to obtain an API key from your Copper account. Copper uses API key authentication combined with your user email address.

To generate an API key:

  1. Log into your Copper CRM web application
  2. Navigate to Settings > Integrations > API Keys
  3. Click the 'Generate API Key' button
  4. Label the key for its intended purpose
  5. Copy the generated API key

After obtaining your API key, set the following connection properties:

  • AuthScheme: Set this to APIKey.
  • APIKey: Set this to your Copper API key obtained from the Copper web application.
  • UserEmail: Set this to the email address of the API key owner (your Copper account email).

Example connection string:

Profile=C:\profiles\Copper.apip;AuthScheme=APIKey;ProfileSettings='ApiKey=your_api_key;[email protected]';

Connection Properties

The following properties are available for configuration in the ProfileSettings connection string:

  • APIKey: Your Copper API key (required)
  • UserEmail: The email address of the API key owner (required)
  • AuthScheme: The authentication scheme (APIKey or None)

Usage Examples

Account:

SELECT * FROM Account;

Activities:

SELECT * FROM Activities;
INSERT INTO Activities (ParentId, ParentType, TypeId, TypeCategory, Details, UserId, ActivityDate) VALUES (178040265, 'person', 1, 'user', 'Had a discovery call to discuss product requirements.', 987654, '2024-01-15 10:30:00');
UPDATE Activities SET Details = 'Follow-up call scheduled for next week.', ActivityDate = '2024-01-22 14:00:00' WHERE Id = 98765432;
DELETE FROM Activities WHERE Id = 98765432;

ActivityTypes:

SELECT * FROM ActivityTypes;

Companies:

SELECT * FROM Companies;
INSERT INTO Companies (Name, AssigneeId, ContactTypeId, Details, EmailDomain) VALUES ('Acme Corporation', 987654, 3, 'Leading provider of enterprise solutions.', 'acmecorp.com');
UPDATE Companies SET Name = 'Acme Corporation Ltd.', Details = 'Updated company description.', EmailDomain = 'acmecorp.com' WHERE Id = 74393124;
DELETE FROM Companies WHERE Id = 74393124;

CompanyActivities:

SELECT * FROM CompanyActivities WHERE ParentId = '74393124' and ActivityTypes = '{\"id\": 2, \"category\": \"system\"}';

ConnectFields:

SELECT * FROM ConnectFields Where SourceEntityType  = 'people' and SourceId = '178040265';
INSERT INTO ConnectFields (CustomFieldDefinitionId, SourceId, SourceEntityType, TargetId, TargetEntityType) VALUES (100001, 178040265, 'people', 74393124, 'company');
DELETE FROM ConnectFields WHERE Id = 654321;

ContactTypes:

SELECT * FROM ContactTypes;

CustomActivityTypes:

SELECT * FROM CustomActivityTypes;
INSERT INTO CustomActivityTypes (Name, IconType, IsDisabled, IsInteraction) VALUES ('Client Call', 'call', false, true);
UPDATE CustomActivityTypes SET Name = 'Client Video Call', IconType = 'video_call', IsInteraction = true WHERE Id = 123456;

CustomFields:

SELECT * FROM CustomFields;
INSERT INTO CustomFields (Name, DataType, AvailableOn, IsFilterable) VALUES ('Contract Value', 'Number', '["opportunity","project"]', true);
UPDATE CustomFields SET Name = 'Deal Contract Value', IsFilterable = true WHERE Id = 100001;
DELETE FROM CustomFields WHERE Id = 100001;

CustomerSources:

SELECT * FROM CustomerSources;

FieldLayouts:

SELECT * FROM FieldLayouts WHERE EntityType = 'people';

FileAttachments:

SELECT * FROM FileAttachments WHERE EntityType = 'people' AND EntityId = '177976744';
DELETE FROM FileAttachments WHERE EntityType = 'people' AND EntityId = '177976744' AND Id = '550e8400-e29b-41d4-a716-446655440000';

FileAttachmentSignedS3URL:

SELECT * FROM FileAttachmentSignedS3URL WHERE EntityType = 'people' AND EntityId = '177976744';

LeadActivities:

SELECT * FROM LeadActivities Where ParentId='92555096' AND ActivityTypes = '{\"id\": 2, \"category\": \"system\"}';

Leads:

SELECT * FROM Leads;
INSERT INTO Leads (Name, AssigneeId, CompanyName, Title, Details, StatusId, Email) VALUES ('Jane Smith', 987654, 'Acme Corp', 'VP of Engineering', 'Interested in enterprise plan.', 1, '[email protected]');
UPDATE Leads SET Name = 'Jane Smith', Title = 'CTO', Details = 'Upgraded interest to enterprise plan.', StatusId = 2 WHERE Id = 92555096;
DELETE FROM Leads WHERE Id = 92555096;

LeadStatuses:

SELECT * FROM LeadStatuses;

LossReasons:

SELECT * FROM LossReasons;

Opportunities:

SELECT * FROM Opportunities;
INSERT INTO Opportunities (Name, AssigneeId, CompanyId, PipelineId, PipelineStageId, MonetaryValue, MonetaryUnit, Status) VALUES ('Acme Enterprise Deal', 987654, 74393124, 1126631, 2345678, 50000, 'USD', 'Open');
UPDATE Opportunities SET Name = 'Acme Enterprise Deal Q1', MonetaryValue = 75000, Status = 'Won', WinProbability = 90 WHERE Id = 345678901;
DELETE FROM Opportunities WHERE Id = 345678901;

People:

SELECT * FROM People;
INSERT INTO People (Name, AssigneeId, CompanyId, Title, Details) VALUES ('John Doe', 987654, 74393124, 'Director of Sales', 'Key decision maker for enterprise accounts.');
UPDATE People SET Name = 'John Doe', Title = 'VP of Sales', CompanyId = 74393124, Details = 'Promoted to VP role in Q1 2024.' WHERE Id = 178040265;
DELETE FROM People WHERE Id = 178040265;

PeopleActivities:

SELECT * FROM PeopleActivities Where ParentId='178040265' AND ActivityTypes = '{\"id\": 2, \"category\": \"system\"}';

Pipelines:

SELECT * FROM Pipelines;
INSERT INTO Pipelines (Name, Stages, Type, IsRevenue) VALUES ('Enterprise Sales', '[{"name":"Prospect","win_probability":10},{"name":"Proposal","win_probability":50},{"name":"Closed Won","win_probability":100}]', 'opportunity', true);
UPDATE Pipelines SET Name = 'Enterprise Sales Pipeline', Stages = '[{"name":"Prospect","win_probability":10},{"name":"Qualification","win_probability":30},{"name":"Closed Won","win_probability":100}]' WHERE Id = 1126631;
DELETE FROM Pipelines WHERE Id = 1126631;

PipelineStages:

SELECT * FROM PipelineStages;

PipelineStages:

SELECT * FROM PipelineStages WHERE PipelineId = '1126631';

Projects:

SELECT * FROM Projects;
INSERT INTO Projects (Name, AssigneeId, Status, Details, RelatedResourceId, RelatedResourceType) VALUES ('Website Redesign', 987654, 'Open', 'Redesign the company website for Q2 launch.', 345678901, 'opportunity');
UPDATE Projects SET Name = 'Website Redesign 2024', Status = 'In Progress', Details = 'Phase 1 underway, targeting Q2 launch.' WHERE Id = 456789012;
DELETE FROM Projects WHERE Id = 456789012;

RelatedItems:

SELECT * FROM RelatedItems;
INSERT INTO RelatedItems (EntityType, EntityId, Id, Type) VALUES ('people', '178040265', 74393124, 'company');
DELETE FROM RelatedItems WHERE EntityType = 'people' AND EntityId = '178040265' AND Id = 74393124 AND Type = 'company';

Tags:

SELECT * FROM Tags;

Tasks:

SELECT * FROM Tasks;
INSERT INTO Tasks (Name, AssigneeId, Priority, Status, Details, DueDate) VALUES ('Follow up with Acme Corp', 987654, 'High', 'Open', 'Send proposal and schedule follow-up call.', '2024-01-31 17:00:00');
UPDATE Tasks SET Name = 'Follow up with Acme Corp - Urgent', Priority = 'High', Status = 'Completed', Details = 'Proposal sent and accepted.' WHERE Id = 567890123;
DELETE FROM Tasks WHERE Id = 567890123;

Users:

SELECT * FROM Users;

Webhooks:

SELECT * FROM Webhooks;

Connection Properties

The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider.


Property Description
APIKey Your Copper API key.
AuthScheme The scheme used for authentication. Accepted entries are APIKey or None.
Allowed values are: BASIC, NONE, NTLM, OAUTH, APIKEY, OAUTH_CLIENT, OAUTH_PASSWORD
UserEmail The Email address of the API Key owner.

Copyright (c) 2026 CData Software, Inc. - All rights reserved.
Build 26.0.9770.0