Copper
App · CRM Systems · 20 actions
Read and write the Copper CRM: find, create and update people, companies and deals, raise and convert leads, keep tasks against them and log every call, meeting and note.
Actions
| Action | What it does |
|---|---|
| Convert lead | Turn a lead into a person, and optionally a company and a deal at the same time. |
| Create company | Add a company to Copper. |
| Create lead | Add a lead to Copper - an unqualified contact that has not become a person yet. |
| Create opportunity | Open a deal in Copper. |
| Create person | Add a person to Copper. |
| Create task | Add a task, optionally about a person, company, deal, lead or project. |
| Find person by email | Look a person up by email address - the unique key on Copper People records. |
| Get company | Read one company by id, with every field Copper holds. |
| Get opportunity | Read one deal by id, including its pipeline, stage, status, value and custom fields. |
| Get person | Read one person by id, with every field Copper holds on them including custom fields. |
| Log activity | Write a note, call or meeting onto a Copper record. |
| Search activities | Read the activity log - every note, call and meeting, optionally just the ones on one record or in one date range. |
| Search companies | Find companies by name, email domain, owner, contact type, location or tag. |
| Search leads | Find leads by name, email, phone, status, source, owner, location or tag. |
| Search opportunities | Find deals by name, status, pipeline, company, contact, owner, value or close date. |
| Search people | Find people in Copper by name, email, phone, owner, company, location or tag. |
| Search tasks | Find tasks by owner, status, due date, tag, or the deal or project they belong to. |
| Update company | Change fields on an existing company. |
| Update opportunity | Move a deal along, change its value, or close it. |
| Update person | Change fields on an existing person. |
Convert lead
Turn a lead into a person, and optionally a company and a deal at the same time. Copper deletes the lead once this succeeds, so use the person's id from here on. Give the company either an id or a name, never both - an unmatched name makes a new company.
Inputs
- Lead ID
lead_idtextRequired - The lead to convert. 'Search leads' and 'Create lead' return this id. It stops existing afterwards.
- Person's name
person_nametext - What to call the person this creates. Leave empty to keep the lead's own name.
- Existing company ID
company_idtext - File the new person against a company that already exists. Do not also give a company name.
- Company name
company_nametext - Match or create a company by name. Copper matches loosely unless you tick exact matching, and creates a new company when nothing matches.
- Match the company name exactly
company_exact_matchtrue/false - Only match a company whose name is exactly what you typed, instead of Copper's fuzzy match.Default:
false. - Opportunity name
opportunity_nametext - Open a deal as part of the conversion. Leave empty to convert without one.
- Opportunity pipeline
pipeline_idtext - Which pipeline the new deal belongs in. Pick it before the stage.
- Opportunity stage
pipeline_stage_idtext - Which stage of that pipeline the new deal starts in.
- Opportunity value
monetary_valuenumber - What the new deal is worth.
- Opportunity owner
assignee_idtext - Which Copper user owns the new deal.
Outputs
companyobject- The company, when one was matched or made
company_idnumber- The company's id, when there is one
nametext- The new person's name
opportunityobject- The deal, when one was opened
opportunity_idnumber- The deal's id, when there is one
personobject- The person the lead became
person_idnumber- The new person's id - use this from here on
Example output
{
"company": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Manufacturing partner.",
"email_domain": "example.com",
"id": 12030795,
"interaction_count": 7,
"name": "Analytical Engines",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0100"
}
],
"primary_contact_id": 27140359,
"socials": [],
"tags": [
"lodol-qa"
],
"websites": [
{
"category": "work",
"url": "https://example.com"
}
]
},
"company_id": 12030795,
"name": "Ada Lovelace",
"opportunity": {
"assignee_id": 137658,
"close_date": "1/23/2027",
"company_id": 12030795,
"company_name": "Analytical Engines",
"custom_fields": [],
"customer_source_id": 331242,
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Pilot agreed, waiting on procurement.",
"id": 14341018,
"interaction_count": 4,
"loss_reason_id": null,
"monetary_value": 25000,
"name": "Difference Engine rollout",
"pipeline_id": 213214,
"pipeline_is_revenue": true,
"pipeline_stage_id": 987790,
"pipeline_type": "opportunity",
"primary_contact_id": 27140359,
"priority": "High",
"status": "Open",
"tags": [
"lodol-qa"
],
"win_probability": 40
},
"opportunity_id": 14341018,
"person": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"company_id": 12030795,
"company_name": "Analytical Engines",
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Met at the analytics conference.",
"emails": [
{
"category": "work",
"email": "ada@example.com"
}
],
"first_name": "Ada",
"id": 27140359,
"interaction_count": 3,
"last_name": "Lovelace",
"name": "Ada Lovelace",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0110"
}
],
"socials": [],
"tags": [
"lodol-qa"
],
"title": "Head of Analysis",
"websites": []
},
"person_id": 27140359
}Create company
Add a company to Copper. Only the name is required. Setting the email domain is what lets Copper file later contacts against it automatically.
Inputs
- Name
nametextRequired - The company's name.
- Email domain
email_domaintext - The domain this company's people use, for example example.com.
- Description
detailstext - Free-text description stored on the record.
- Phone numbers
phone_numberslist - Phone numbers. Copper replaces the whole list with what you send.
- Phone category
phone_categorytext - How Copper labels the phone numbers sent above.One of:
mobile,work,home,other. - Websites
websiteslist - Website addresses. Copper replaces the whole list with what you send.
- Website category
website_categorytext - How Copper labels the websites sent above.One of:
work,personal,other. - Social profiles
socialslist - Social profile URLs. Copper replaces the whole list with what you send.
- Social network
social_categorytext - Which network the profile URLs above belong to.One of:
linkedin,twitter(X / Twitter),googleplus(Google+),facebook,youtube,quora,foursquare,klout,gravatar,other. - Owner
assignee_idtext - The Copper user who owns this record. Leave empty to leave it unowned.
- Contact type
contact_type_idtext - This account's own contact type, such as Potential Customer.
- Primary contact (person ID)
primary_contact_idtext - The person who is this company's main contact. 'Create person' and 'Search people' return this id.
- Street
address_streettext - Street address of the company.
- City
address_citytext - City of the company.
- State or region
address_statetext - State, province or region of the company.
- Postal code
address_postal_codetext - Postal or ZIP code of the company.
- Country
address_countrytext - Country, written however this Copper account writes it - Copper accepts both 'United States' and 'US' and stores what it is given.
- Tags
tagslist - The record's tags. Copper replaces the whole set with what you send, so include the tags it already has if you want to keep them.
- Custom fields
custom_fieldsobject - Custom field values, keyed by the field's definition id - for example {"126240": "Referral", "126241": 42}. The ids are on Copper's Settings > Customize Fields screen. Only the fields you list here are touched.
Outputs
companyobject- The company, as Copper returned it
company_idnumber- The company's id
nametext- The company's name
Example output
{
"company": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Manufacturing partner.",
"email_domain": "example.com",
"id": 12030795,
"interaction_count": 7,
"name": "Analytical Engines",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0100"
}
],
"primary_contact_id": 27140359,
"socials": [],
"tags": [
"lodol-qa"
],
"websites": [
{
"category": "work",
"url": "https://example.com"
}
]
},
"company_id": 12030795,
"name": "Analytical Engines"
}Create lead
Add a lead to Copper - an unqualified contact that has not become a person yet. Only the name is required. A lead's company is just a name; it becomes a real Company record when the lead is converted.
Inputs
- Full name
nametextRequired - The lead's full name.
- Email address
emailtext - The lead's email address. Copper stores one address on a lead, unlike a person.
- Email category
email_categorytext - How Copper labels the email addresses sent above.One of:
work,personal,other. - Phone numbers
phone_numberslist - Phone numbers. Copper replaces the whole list with what you send.
- Phone category
phone_categorytext - How Copper labels the phone numbers sent above.One of:
mobile,work,home,other. - Company name
company_nametext - Where the lead works, as plain text. Leads are not attached to a Company record until they are converted.
- Job title
titletext - The lead's job title.
- Description
detailstext - Free-text description stored on the record.
- Street
address_streettext - Street address of the lead.
- City
address_citytext - City of the lead.
- State or region
address_statetext - State, province or region of the lead.
- Postal code
address_postal_codetext - Postal or ZIP code of the lead.
- Country
address_countrytext - Country, written however this Copper account writes it - Copper accepts both 'United States' and 'US' and stores what it is given.
- Owner
assignee_idtext - The Copper user who owns this record. Leave empty to leave it unowned.
- Customer source
customer_source_idtext - Where this lead came from.
- Status
statustext - The lead's status, from this account's own list. Leave it empty to take the account default.
- Value
monetary_valuenumber - What the lead is thought to be worth.
- Websites
websiteslist - Website addresses. Copper replaces the whole list with what you send.
- Website category
website_categorytext - How Copper labels the websites sent above.One of:
work,personal,other. - Social profiles
socialslist - Social profile URLs. Copper replaces the whole list with what you send.
- Social network
social_categorytext - Which network the profile URLs above belong to.One of:
linkedin,twitter(X / Twitter),googleplus(Google+),facebook,youtube,quora,foursquare,klout,gravatar,other. - Tags
tagslist - The record's tags. Copper replaces the whole set with what you send, so include the tags it already has if you want to keep them.
- Custom fields
custom_fieldsobject - Custom field values, keyed by the field's definition id - for example {"126240": "Referral", "126241": 42}. The ids are on Copper's Settings > Customize Fields screen. Only the fields you list here are touched.
Outputs
leadobject- The lead, as Copper returned it
lead_idnumber- The lead's id
nametext- The lead's name
Example output
{
"lead": {
"address": null,
"assignee_id": 137658,
"company_name": "Naval Systems",
"custom_fields": [],
"customer_source_id": 331240,
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Downloaded the whitepaper.",
"email": {
"category": "work",
"email": "grace@example.com"
},
"id": 9123456,
"interaction_count": 1,
"monetary_unit": "USD",
"monetary_value": 5000,
"name": "Grace Hopper",
"phone_numbers": [],
"socials": [],
"status": "New",
"status_id": 208231,
"tags": [
"lodol-qa"
],
"title": "Rear Admiral",
"websites": []
},
"lead_id": 9123456,
"name": "Grace Hopper"
}Create opportunity
Open a deal in Copper. Only the name is required - a primary contact has been optional since August 2025. Choose the pipeline first and the stage list follows it.
Inputs
- Name
nametextRequired - What the deal is called.
- Primary contact (person ID)
primary_contact_idtext - The person this deal is with. Optional since August 2025, whatever Copper's older docs say.
- Company ID
company_idtext - The company this deal is with.
- Owner
assignee_idtext - The Copper user who owns this record. Leave empty to leave it unowned.
- Pipeline
pipeline_idtext - Which pipeline the deal belongs in. Pick this before the stage - the stage list is this pipeline's.
- Stage
pipeline_stage_idtext - Which stage of that pipeline the deal starts in. A stage from a different pipeline is rejected.
- Customer source
customer_source_idtext - Where this deal came from.
- Loss reason
loss_reason_idtext - Only meaningful when the status is Lost.
- Status
statustext - The deal's state. Copper defaults new deals to Open.One of:
Open,Won,Lost,Abandoned. - Priority
prioritytext - How urgent the deal is.One of:
None,Low,Medium,High. - Value
monetary_valuenumber - What the deal is worth, in the account's currency.
- Win probability
win_probabilitynumber - Chance of winning, 0-100.From 0 to 100.
- Expected close date
close_datedate - When the deal is expected to close.
- Description
detailstext - Free-text description stored on the record.
- Tags
tagslist - The record's tags. Copper replaces the whole set with what you send, so include the tags it already has if you want to keep them.
- Custom fields
custom_fieldsobject - Custom field values, keyed by the field's definition id - for example {"126240": "Referral", "126241": 42}. The ids are on Copper's Settings > Customize Fields screen. Only the fields you list here are touched.
Outputs
nametext- The opportunity's name
opportunityobject- The opportunity, as Copper returned it
opportunity_idnumber- The opportunity's id
Example output
{
"name": "Difference Engine rollout",
"opportunity": {
"assignee_id": 137658,
"close_date": "1/23/2027",
"company_id": 12030795,
"company_name": "Analytical Engines",
"custom_fields": [],
"customer_source_id": 331242,
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Pilot agreed, waiting on procurement.",
"id": 14341018,
"interaction_count": 4,
"loss_reason_id": null,
"monetary_value": 25000,
"name": "Difference Engine rollout",
"pipeline_id": 213214,
"pipeline_is_revenue": true,
"pipeline_stage_id": 987790,
"pipeline_type": "opportunity",
"primary_contact_id": 27140359,
"priority": "High",
"status": "Open",
"tags": [
"lodol-qa"
],
"win_probability": 40
},
"opportunity_id": 14341018
}Create person
Add a person to Copper. Only the name is required. An email address is worth setting: it is the unique key Copper looks people up by.
Inputs
- Full name
nametextRequired - The person's full name, for example Ada Lovelace.
- Email addresses
emailslist - The person's email addresses. Copper treats the address as this person's unique key.
- Email category
email_categorytext - How Copper labels the email addresses sent above.One of:
work,personal,other. - Phone numbers
phone_numberslist - Phone numbers. Copper replaces the whole list with what you send.
- Phone category
phone_categorytext - How Copper labels the phone numbers sent above.One of:
mobile,work,home,other. - Job title
titletext - The person's job title.
- Description
detailstext - Free-text description stored on the record.
- Company ID
company_idtext - The company this person works at. 'Search companies' and 'Create company' both return this id. Set it here if you can - 'Update person' cannot change it later.
- Contact type
contact_type_idtext - This account's own contact type, such as Potential Customer.
- Owner
assignee_idtext - The Copper user who owns this record. Leave empty to leave it unowned.
- Street
address_streettext - Street address of the person.
- City
address_citytext - City of the person.
- State or region
address_statetext - State, province or region of the person.
- Postal code
address_postal_codetext - Postal or ZIP code of the person.
- Country
address_countrytext - Country, written however this Copper account writes it - Copper accepts both 'United States' and 'US' and stores what it is given.
- Websites
websiteslist - Website addresses. Copper replaces the whole list with what you send.
- Website category
website_categorytext - How Copper labels the websites sent above.One of:
work,personal,other. - Social profiles
socialslist - Social profile URLs. Copper replaces the whole list with what you send.
- Social network
social_categorytext - Which network the profile URLs above belong to.One of:
linkedin,twitter(X / Twitter),googleplus(Google+),facebook,youtube,quora,foursquare,klout,gravatar,other. - Tags
tagslist - The record's tags. Copper replaces the whole set with what you send, so include the tags it already has if you want to keep them.
- Custom fields
custom_fieldsobject - Custom field values, keyed by the field's definition id - for example {"126240": "Referral", "126241": 42}. The ids are on Copper's Settings > Customize Fields screen. Only the fields you list here are touched.
Outputs
nametext- The person's name
personobject- The person, as Copper returned it
person_idnumber- The person's id
Example output
{
"name": "Ada Lovelace",
"person": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"company_id": 12030795,
"company_name": "Analytical Engines",
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Met at the analytics conference.",
"emails": [
{
"category": "work",
"email": "ada@example.com"
}
],
"first_name": "Ada",
"id": 27140359,
"interaction_count": 3,
"last_name": "Lovelace",
"name": "Ada Lovelace",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0110"
}
],
"socials": [],
"tags": [
"lodol-qa"
],
"title": "Head of Analysis",
"websites": []
},
"person_id": 27140359
}Create task
Add a task, optionally about a person, company, deal, lead or project. Only the name is required. Copper stamps the completed date itself when a task moves to Completed.
Inputs
- Task
nametextRequired - What needs doing.
- Related to
related_resource_typetext - What kind of record this task is about. Fill this in together with the id beside it, or leave both empty.One of:
person,lead,company,opportunity,project. - Related record ID
related_resource_idtext - The id of that record. Paste the app.copper.com link if that is what you have.
- Owner
assignee_idtext - The Copper user who owns this record. Leave empty to leave it unowned.
- Due
due_datedate and time - When the task is due.
- Remind at
reminder_datedate and time - When Copper should remind the owner.
- Priority
prioritytext - How urgent the task is.One of:
None,Low,Medium,High. - Status
statustext - Open or Completed. Copper stamps the completed date itself, so there is nothing to set for that.One of:
Open,Completed. - Description
detailstext - Free-text description stored on the record.
- Tags
tagslist - The record's tags. Copper replaces the whole set with what you send, so include the tags it already has if you want to keep them.
- Custom fields
custom_fieldsobject - Custom field values, keyed by the field's definition id - for example {"126240": "Referral", "126241": 42}. The ids are on Copper's Settings > Customize Fields screen. Only the fields you list here are touched.
Outputs
nametext- The task's name
taskobject- The task, as Copper returned it
task_idnumber- The task's id
Example output
{
"name": "Send the pilot summary",
"task": {
"assignee_id": 137658,
"completed_date": null,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Include the rollout timeline.",
"due_date": 1758067200,
"id": 6612345,
"name": "Send the pilot summary",
"priority": "High",
"related_resource": {
"id": 27140359,
"type": "person"
},
"reminder_date": 1757980800,
"status": "Open",
"tags": [
"lodol-qa"
]
},
"task_id": 6612345
}Find person by email
Look a person up by email address - the unique key on Copper People records. Reports 'found' as false when nobody has that address, so a workflow can branch on it instead of failing.
Inputs
- Email address
emailtextRequired - The address to look up. It must match exactly.
Outputs
foundtrue/false- Whether anyone in Copper has that address
nametext- The person's name
personobject- The person, when one was found
person_idnumber- The person's id, when one was found
Example output
{
"found": true,
"name": "Ada Lovelace",
"person": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"company_id": 12030795,
"company_name": "Analytical Engines",
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Met at the analytics conference.",
"emails": [
{
"category": "work",
"email": "ada@example.com"
}
],
"first_name": "Ada",
"id": 27140359,
"interaction_count": 3,
"last_name": "Lovelace",
"name": "Ada Lovelace",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0110"
}
],
"socials": [],
"tags": [
"lodol-qa"
],
"title": "Head of Analysis",
"websites": []
},
"person_id": 27140359
}Get company
Read one company by id, with every field Copper holds.
Inputs
- Company ID
company_idtextRequired - The company to read. Paste the app.copper.com link if that is what you have. 'Search companies' returns these in 'ids'.
Outputs
companyobject- The company, as Copper returned it
company_idnumber- The company's id
nametext- The company's name
Example output
{
"company": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Manufacturing partner.",
"email_domain": "example.com",
"id": 12030795,
"interaction_count": 7,
"name": "Analytical Engines",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0100"
}
],
"primary_contact_id": 27140359,
"socials": [],
"tags": [
"lodol-qa"
],
"websites": [
{
"category": "work",
"url": "https://example.com"
}
]
},
"company_id": 12030795,
"name": "Analytical Engines"
}Get opportunity
Read one deal by id, including its pipeline, stage, status, value and custom fields.
Inputs
- Opportunity ID
opportunity_idtextRequired - The deal to read. Paste the app.copper.com link if that is what you have. 'Search opportunities' returns these in 'ids'.
Outputs
nametext- The opportunity's name
opportunityobject- The opportunity, as Copper returned it
opportunity_idnumber- The opportunity's id
Example output
{
"name": "Difference Engine rollout",
"opportunity": {
"assignee_id": 137658,
"close_date": "1/23/2027",
"company_id": 12030795,
"company_name": "Analytical Engines",
"custom_fields": [],
"customer_source_id": 331242,
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Pilot agreed, waiting on procurement.",
"id": 14341018,
"interaction_count": 4,
"loss_reason_id": null,
"monetary_value": 25000,
"name": "Difference Engine rollout",
"pipeline_id": 213214,
"pipeline_is_revenue": true,
"pipeline_stage_id": 987790,
"pipeline_type": "opportunity",
"primary_contact_id": 27140359,
"priority": "High",
"status": "Open",
"tags": [
"lodol-qa"
],
"win_probability": 40
},
"opportunity_id": 14341018
}Get person
Read one person by id, with every field Copper holds on them including custom fields.
Inputs
- Person ID
person_idtextRequired - The person to read. Paste the app.copper.com link if that is what you have - the id is read out of it. 'Search people' returns these in 'ids'.
Outputs
nametext- The person's name
personobject- The person, as Copper returned it
person_idnumber- The person's id
Example output
{
"name": "Ada Lovelace",
"person": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"company_id": 12030795,
"company_name": "Analytical Engines",
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Met at the analytics conference.",
"emails": [
{
"category": "work",
"email": "ada@example.com"
}
],
"first_name": "Ada",
"id": 27140359,
"interaction_count": 3,
"last_name": "Lovelace",
"name": "Ada Lovelace",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0110"
}
],
"socials": [],
"tags": [
"lodol-qa"
],
"title": "Head of Analysis",
"websites": []
},
"person_id": 27140359
}Log activity
Write a note, call or meeting onto a Copper record. The type list is this account's own; leave the date empty and Copper stamps the moment the step ran.
Inputs
- Logged against
parent_typetextRequired - What kind of record this activity is about.One of:
person,lead,company,opportunity,project. - Record ID
parent_idtextRequired - The record to log against. Paste the app.copper.com link if that is what you have.
- Activity type
activity_type_idtextRequired - Which kind of activity - Note, Phone Call, Meeting, or whatever this account has added.
- Notes
detailstextRequired - What happened. This is the body of the activity.
- When it happened
activity_datedate and time - When the call, meeting or note happened. Leave empty for now.
Outputs
activityobject- The activity, as Copper returned it
activity_idnumber- The activity's id
nametext- The activity's name
Example output
{
"activity": {
"activity_date": 1757894400,
"date_created": 1757894400,
"date_modified": 1757894400,
"details": "Called to confirm the pilot dates.",
"id": 4123456,
"new_value": null,
"old_value": null,
"parent": {
"id": 27140359,
"type": "person"
},
"type": {
"category": "user",
"id": 0
},
"user_id": 137658
},
"activity_id": 4123456,
"name": null
}Search activities
Read the activity log - every note, call and meeting, optionally just the ones on one record or in one date range.
Inputs
- Logged against
parent_typetext - Only return activities on this kind of record. Fill this in together with the id beside it, or leave both empty for the whole account.One of:
person,lead,company,opportunity,project. - Record ID
parent_idtext - The record whose activities you want.
- Activity types
activity_type_idslist - Only return these kinds of activity. The list holds the activities people log; the ones Copper writes itself when a record changes come back in the results but cannot be filtered on here.
- Happened on or after
minimum_activity_datedate - Only activities dated on or after this date.
- Happened on or before
maximum_activity_datedate - Only activities dated on or before this date.
- Faster, at the cost of duplicates
full_resulttrue/false - Copper's own trade-off: switching this on makes the search faster but may return the same activity more than once. Off by default.Default:
false. - Page
page_numbernumber - Which page of results to read, starting at 1. Copper never returns more than the first 100,000 matches however far you page.From 1 to 100000. Default:
1. - Results per page
page_sizenumber - How many records to return, 1-200. Defaults to 20.From 1 to 200. Default:
20.
Outputs
activitieslist- The activities on this page
countnumber- How many came back on this page
idslist- Just the ids, for chaining into a later step
page_numbernumber- The page that was read
page_sizenumber- How many were asked for
totalnumber- Copper's upper-bound count of every match, from the X-PW-TOTAL header
Example output
{
"activities": [
{
"activity_date": 1757894400,
"date_created": 1757894400,
"date_modified": 1757894400,
"details": "Called to confirm the pilot dates.",
"id": 4123456,
"new_value": null,
"old_value": null,
"parent": {
"id": 27140359,
"type": "person"
},
"type": {
"category": "user",
"id": 0
},
"user_id": 137658
}
],
"count": 1,
"ids": [
4123456
],
"page_number": 1,
"page_size": 20,
"total": 1
}Search companies
Find companies by name, email domain, owner, contact type, location or tag. Every filter you fill in has to match; tags match any one of them.
Inputs
- Name
nametext - Company name search. Partial names match.
- Email domain
email_domaintext - One domain, for example example.com. Copper takes a single domain here, not a list.
- Contact types
contact_type_idslist - Only return records with one of these contact types.
- Owners
assignee_idslist - Only return records owned by these Copper users. Choose 'Unassigned' for the records nobody owns.
- City
citytext - Only return companies in this city.
- State or region
statetext - Only return companies in this state or region.
- Postal code
postal_codetext - Only return companies with this postal code.
- Tags
tagslist - Only return records carrying any of these tags. Tags are the one filter that widens rather than narrows: a record with any one of them matches, while every other filter on this step has to match as well.
- Last contacted on or after
minimum_interaction_datedate - Only companies interacted with on or after this date.
- Last contacted on or before
maximum_interaction_datedate - Only companies interacted with on or before this date.
- Sort direction
sort_directiontext - Ascending or descending. Copper sorts ascending by default.One of:
asc(Ascending),desc(Descending). - Page
page_numbernumber - Which page of results to read, starting at 1. Copper never returns more than the first 100,000 matches however far you page.From 1 to 100000. Default:
1. - Results per page
page_sizenumber - How many records to return, 1-200. Defaults to 20.From 1 to 200. Default:
20.
Outputs
companieslist- The companies on this page
countnumber- How many came back on this page
idslist- Just the ids, for chaining into a later step
page_numbernumber- The page that was read
page_sizenumber- How many were asked for
totalnumber- Copper's upper-bound count of every match, from the X-PW-TOTAL header
Example output
{
"companies": [
{
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Manufacturing partner.",
"email_domain": "example.com",
"id": 12030795,
"interaction_count": 7,
"name": "Analytical Engines",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0100"
}
],
"primary_contact_id": 27140359,
"socials": [],
"tags": [
"lodol-qa"
],
"websites": [
{
"category": "work",
"url": "https://example.com"
}
]
}
],
"count": 1,
"ids": [
12030795
],
"page_number": 1,
"page_size": 20,
"total": 1
}Search leads
Find leads by name, email, phone, status, source, owner, location or tag. Converted leads are left out unless you ask for them.
Inputs
- Name
nametext - Lead name search. Partial names match.
- Email address
emailtext - One email address. Copper takes a single address here, not a list.
- Phone number
phone_numbertext - Only return leads with this phone number.
- Owners
assignee_idslist - Only return records owned by these Copper users. Choose 'Unassigned' for the records nobody owns.
- Statuses
status_idslist - Only return leads in these statuses. The list is this account's own - leads are the one place Copper stores the status word on the record but filters by its id.
- Customer sources
customer_source_idslist - Only return leads from these sources.
- City
citytext - Only return leads in this city.
- State or region
statetext - Only return leads in this state or region.
- Postal code
postal_codetext - Only return leads with this postal code.
- Country code
countrytext - Two-letter country code, for example US or GB.
- Tags
tagslist - Only return records carrying any of these tags. Tags are the one filter that widens rather than narrows: a record with any one of them matches, while every other filter on this step has to match as well.
- Following
followedtext - Narrow to the records the connected Copper user follows.One of:
1(Only records I follow),2(Only records I do not follow). - Value at least
minimum_monetary_valuenumber - Only leads worth at least this much.
- Value at most
maximum_monetary_valuenumber - Only leads worth at most this much.
- Created on or after
minimum_created_datedate - Only leads created on or after this date.
- Created on or before
maximum_created_datedate - Only leads created on or before this date.
- Include converted leads
include_converted_leadstrue/false - Converted leads are hidden by default - a lead that became a person is no longer a lead. Tick this to see them anyway.Default:
false. - Sort by
sort_bytext - Which field to order the results by.One of:
name,company_name(Company),title,value,email,phone,date_modified(Last modified),date_created(Created),city,state, and 4 more. - Sort direction
sort_directiontext - Ascending or descending. Copper sorts ascending by default.One of:
asc(Ascending),desc(Descending). - Page
page_numbernumber - Which page of results to read, starting at 1. Copper never returns more than the first 100,000 matches however far you page.From 1 to 100000. Default:
1. - Results per page
page_sizenumber - How many records to return, 1-200. Defaults to 20.From 1 to 200. Default:
20.
Outputs
countnumber- How many came back on this page
idslist- Just the ids, for chaining into a later step
leadslist- The leads on this page
page_numbernumber- The page that was read
page_sizenumber- How many were asked for
totalnumber- Copper's upper-bound count of every match, from the X-PW-TOTAL header
Example output
{
"count": 1,
"ids": [
9123456
],
"leads": [
{
"address": null,
"assignee_id": 137658,
"company_name": "Naval Systems",
"custom_fields": [],
"customer_source_id": 331240,
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Downloaded the whitepaper.",
"email": {
"category": "work",
"email": "grace@example.com"
},
"id": 9123456,
"interaction_count": 1,
"monetary_unit": "USD",
"monetary_value": 5000,
"name": "Grace Hopper",
"phone_numbers": [],
"socials": [],
"status": "New",
"status_id": 208231,
"tags": [
"lodol-qa"
],
"title": "Rear Admiral",
"websites": []
}
],
"page_number": 1,
"page_size": 20,
"total": 1
}Search opportunities
Find deals by name, status, pipeline, company, contact, owner, value or close date. Every filter you fill in has to match.
Inputs
- Name
nametext - Opportunity name search. Partial names match.
- Statuses
status_idslist - Only return deals in these states. Copper stores the word on the record and numbers it in the filter; choosing here sends the number for you.One or more of:
0(Open),1(Won),2(Lost),3(Abandoned). - Pipelines
pipeline_idslist - Only return deals in these pipelines.
- Company IDs
company_idslist - Only return deals against these companies.
- Primary contact IDs
primary_contact_idslist - Only return deals whose main contact is one of these people.
- Owners
assignee_idslist - Only return records owned by these Copper users. Choose 'Unassigned' for the records nobody owns.
- Customer sources
customer_source_idslist - Only return deals from these sources.
- Loss reasons
loss_reason_idslist - Only return deals lost for these reasons.
- Tags
tagslist - Only return records carrying any of these tags. Tags are the one filter that widens rather than narrows: a record with any one of them matches, while every other filter on this step has to match as well.
- Value at least
minimum_monetary_valuenumber - Only deals worth at least this much.
- Value at most
maximum_monetary_valuenumber - Only deals worth at most this much.
- Closing on or after
minimum_close_datedate - Only deals expected to close on or after this date.
- Closing on or before
maximum_close_datedate - Only deals expected to close on or before this date.
- Created on or after
minimum_created_datedate - Only deals created on or after this date.
- Created on or before
maximum_created_datedate - Only deals created on or before this date.
- Sort by
sort_bytext - Which field to order the results by.One of:
name,assignee(Owner),company_name(Company),customer_source_id(Customer source),date_created(Created),date_modified(Last modified),inactive_days(Days inactive),interaction_count(Interaction count),last_interaction(Last interaction),monetary_unit(Currency), and 5 more. - Sort direction
sort_directiontext - Ascending or descending. Copper sorts ascending by default.One of:
asc(Ascending),desc(Descending). - Page
page_numbernumber - Which page of results to read, starting at 1. Copper never returns more than the first 100,000 matches however far you page.From 1 to 100000. Default:
1. - Results per page
page_sizenumber - How many records to return, 1-200. Defaults to 20.From 1 to 200. Default:
20.
Outputs
countnumber- How many came back on this page
idslist- Just the ids, for chaining into a later step
opportunitieslist- The opportunities on this page
page_numbernumber- The page that was read
page_sizenumber- How many were asked for
totalnumber- Copper's upper-bound count of every match, from the X-PW-TOTAL header
Example output
{
"count": 1,
"ids": [
14341018
],
"opportunities": [
{
"assignee_id": 137658,
"close_date": "1/23/2027",
"company_id": 12030795,
"company_name": "Analytical Engines",
"custom_fields": [],
"customer_source_id": 331242,
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Pilot agreed, waiting on procurement.",
"id": 14341018,
"interaction_count": 4,
"loss_reason_id": null,
"monetary_value": 25000,
"name": "Difference Engine rollout",
"pipeline_id": 213214,
"pipeline_is_revenue": true,
"pipeline_stage_id": 987790,
"pipeline_type": "opportunity",
"primary_contact_id": 27140359,
"priority": "High",
"status": "Open",
"tags": [
"lodol-qa"
],
"win_probability": 40
}
],
"page_number": 1,
"page_size": 20,
"total": 1
}Search people
Find people in Copper by name, email, phone, owner, company, location or tag. Every filter you fill in has to match; tags are the exception and match any one of them.
Inputs
- Name
nametext - Full-name search. Partial names match.
- Email addresses
emailslist - Only return people with one of these email addresses. To look one person up by address, 'Find person by email' is faster and tells you when nobody has it.
- Phone number
phone_numbertext - Only return people with this phone number.
- Phone matching
phone_matchtext - How loosely to match the phone number. Leave empty for Copper's default exact match.One of:
partial(Ends with these digits),fuzzy(Fuzzy - also tries it without a leading country or area code). - Contact types
contact_type_idslist - Only return records with one of these contact types.
- Owners
assignee_idslist - Only return records owned by these Copper users. Choose 'Unassigned' for the records nobody owns.
- Company IDs
company_idslist - Only return people at these companies. Use -2 for the people who belong to no company. 'Search companies' returns these ids.
- City
citytext - Only return people in this city.
- State or region
statetext - Only return people in this state or region.
- Postal code
postal_codetext - Only return people with this postal code.
- Country code
countrytext - Two-letter country code, for example US or GB.
- Tags
tagslist - Only return records carrying any of these tags. Tags are the one filter that widens rather than narrows: a record with any one of them matches, while every other filter on this step has to match as well.
- Following
followedtext - Narrow to the records the connected Copper user follows.One of:
1(Only records I follow),2(Only records I do not follow). - Created on or after
minimum_created_datedate - Only people created on or after this date.
- Created on or before
maximum_created_datedate - Only people created on or before this date.
- Sort by
sort_bytext - Which field to order the results by.One of:
name,title,email,phone,date_modified(Last modified),date_created(Created),city,state,country,zip(Postal code),socials(Social profiles). - Sort direction
sort_directiontext - Ascending or descending. Copper sorts ascending by default.One of:
asc(Ascending),desc(Descending). - Page
page_numbernumber - Which page of results to read, starting at 1. Copper never returns more than the first 100,000 matches however far you page.From 1 to 100000. Default:
1. - Results per page
page_sizenumber - How many records to return, 1-200. Defaults to 20.From 1 to 200. Default:
20.
Outputs
countnumber- How many came back on this page
idslist- Just the ids, for chaining into a later step
page_numbernumber- The page that was read
page_sizenumber- How many were asked for
peoplelist- The people on this page
totalnumber- Copper's upper-bound count of every match, from the X-PW-TOTAL header
Example output
{
"count": 1,
"ids": [
27140359
],
"page_number": 1,
"page_size": 20,
"people": [
{
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"company_id": 12030795,
"company_name": "Analytical Engines",
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Met at the analytics conference.",
"emails": [
{
"category": "work",
"email": "ada@example.com"
}
],
"first_name": "Ada",
"id": 27140359,
"interaction_count": 3,
"last_name": "Lovelace",
"name": "Ada Lovelace",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0110"
}
],
"socials": [],
"tags": [
"lodol-qa"
],
"title": "Head of Analysis",
"websites": []
}
],
"total": 1
}Search tasks
Find tasks by owner, status, due date, tag, or the deal or project they belong to.
Inputs
- Owners
assignee_idslist - Only return records owned by these Copper users. Choose 'Unassigned' for the records nobody owns.
- Statuses
statuseslist - Only return tasks in these states.One or more of:
Open,Completed. - Opportunity IDs
opportunity_idslist - Only return tasks about these deals.
- Project IDs
project_idslist - Only return tasks about these projects.
- Tags
tagslist - Only return records carrying any of these tags. Tags are the one filter that widens rather than narrows: a record with any one of them matches, while every other filter on this step has to match as well.
- Following
followedtext - Narrow to the records the connected Copper user follows.One of:
1(Only records I follow),2(Only records I do not follow). - Due on or after
minimum_due_datedate - Only tasks due on or after this date.
- Due on or before
maximum_due_datedate - Only tasks due on or before this date.
- Created on or after
minimum_created_datedate - Only tasks created on or after this date.
- Created on or before
maximum_created_datedate - Only tasks created on or before this date.
- Sort by
sort_bytext - Which field to order the results by. Copper sorts by due date by default.One of:
name,assigned_to(Owner),related_to(Related record),status,priority,due_date(Due date),reminder_date(Reminder date),completed_date(Completed date),date_created(Created),date_modified(Last modified). - Sort direction
sort_directiontext - Ascending or descending. Copper sorts ascending by default.One of:
asc(Ascending),desc(Descending). - Page
page_numbernumber - Which page of results to read, starting at 1. Copper never returns more than the first 100,000 matches however far you page.From 1 to 100000. Default:
1. - Results per page
page_sizenumber - How many records to return, 1-200. Defaults to 20.From 1 to 200. Default:
20.
Outputs
countnumber- How many came back on this page
idslist- Just the ids, for chaining into a later step
page_numbernumber- The page that was read
page_sizenumber- How many were asked for
taskslist- The tasks on this page
totalnumber- Copper's upper-bound count of every match, from the X-PW-TOTAL header
Example output
{
"count": 1,
"ids": [
6612345
],
"page_number": 1,
"page_size": 20,
"tasks": [
{
"assignee_id": 137658,
"completed_date": null,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Include the rollout timeline.",
"due_date": 1758067200,
"id": 6612345,
"name": "Send the pilot summary",
"priority": "High",
"related_resource": {
"id": 27140359,
"type": "person"
},
"reminder_date": 1757980800,
"status": "Open",
"tags": [
"lodol-qa"
]
}
],
"total": 1
}Update company
Change fields on an existing company. Only the fields you fill in are sent; everything else is left exactly as it is. List fields - phones, websites, tags - replace what is there rather than adding to it.
Inputs
- Company ID
company_idtextRequired - The company to update. Paste the app.copper.com link if that is what you have.
- Name
nametext - A new name for the company.
- Email domain
email_domaintext - A new email domain for the company.
- Description
detailstext - Free-text description stored on the record.
- Phone numbers
phone_numberslist - Phone numbers. Copper replaces the whole list with what you send.
- Phone category
phone_categorytext - How Copper labels the phone numbers sent above.One of:
mobile,work,home,other. - Websites
websiteslist - Website addresses. Copper replaces the whole list with what you send.
- Website category
website_categorytext - How Copper labels the websites sent above.One of:
work,personal,other. - Social profiles
socialslist - Social profile URLs. Copper replaces the whole list with what you send.
- Social network
social_categorytext - Which network the profile URLs above belong to.One of:
linkedin,twitter(X / Twitter),googleplus(Google+),facebook,youtube,quora,foursquare,klout,gravatar,other. - Owner
assignee_idtext - The Copper user who owns this record. Leave empty to leave it unowned.
- Contact type
contact_type_idtext - This account's own contact type, such as Potential Customer.
- Primary contact (person ID)
primary_contact_idtext - A new main contact for this company.
- Street
address_streettext - Street address of the company.
- City
address_citytext - City of the company.
- State or region
address_statetext - State, province or region of the company.
- Postal code
address_postal_codetext - Postal or ZIP code of the company.
- Country
address_countrytext - Country, written however this Copper account writes it - Copper accepts both 'United States' and 'US' and stores what it is given.
- Tags
tagslist - The record's tags. Copper replaces the whole set with what you send, so include the tags it already has if you want to keep them.
- Custom fields
custom_fieldsobject - Custom field values, keyed by the field's definition id - for example {"126240": "Referral", "126241": 42}. The ids are on Copper's Settings > Customize Fields screen. Only the fields you list here are touched.
Outputs
companyobject- The company, as Copper returned it
company_idnumber- The company's id
nametext- The company's name
Example output
{
"company": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Manufacturing partner.",
"email_domain": "example.com",
"id": 12030795,
"interaction_count": 7,
"name": "Analytical Engines",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0100"
}
],
"primary_contact_id": 27140359,
"socials": [],
"tags": [
"lodol-qa"
],
"websites": [
{
"category": "work",
"url": "https://example.com"
}
]
},
"company_id": 12030795,
"name": "Analytical Engines"
}Update opportunity
Move a deal along, change its value, or close it. Only the fields you fill in are sent. Marking one Lost is worth sending a loss reason with.
Inputs
- Opportunity ID
opportunity_idtextRequired - The deal to update. Paste the app.copper.com link if that is what you have.
- Name
nametext - A new name for the deal.
- Primary contact (person ID)
primary_contact_idtext - A new main contact for the deal.
- Company ID
company_idtext - A new company for the deal.
- Owner
assignee_idtext - The Copper user who owns this record. Leave empty to leave it unowned.
- Pipeline
pipeline_idtext - Move the deal to this pipeline. Pick it before the stage - the stage list is this pipeline's.
- Stage
pipeline_stage_idtext - Move the deal to this stage. The stage must belong to the deal's pipeline.
- Customer source
customer_source_idtext - Where this deal came from.
- Loss reason
loss_reason_idtext - Why the deal was lost. Send it with a Lost status.
- Status
statustext - The deal's new state.One of:
Open,Won,Lost,Abandoned. - Priority
prioritytext - How urgent the deal is.One of:
None,Low,Medium,High. - Value
monetary_valuenumber - What the deal is worth, in the account's currency.
- Win probability
win_probabilitynumber - Chance of winning, 0-100.From 0 to 100.
- Expected close date
close_datedate - When the deal is now expected to close.
- Description
detailstext - Free-text description stored on the record.
- Tags
tagslist - The record's tags. Copper replaces the whole set with what you send, so include the tags it already has if you want to keep them.
- Custom fields
custom_fieldsobject - Custom field values, keyed by the field's definition id - for example {"126240": "Referral", "126241": 42}. The ids are on Copper's Settings > Customize Fields screen. Only the fields you list here are touched.
Outputs
nametext- The opportunity's name
opportunityobject- The opportunity, as Copper returned it
opportunity_idnumber- The opportunity's id
Example output
{
"name": "Difference Engine rollout",
"opportunity": {
"assignee_id": 137658,
"close_date": "1/23/2027",
"company_id": 12030795,
"company_name": "Analytical Engines",
"custom_fields": [],
"customer_source_id": 331242,
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Pilot agreed, waiting on procurement.",
"id": 14341018,
"interaction_count": 4,
"loss_reason_id": null,
"monetary_value": 25000,
"name": "Difference Engine rollout",
"pipeline_id": 213214,
"pipeline_is_revenue": true,
"pipeline_stage_id": 987790,
"pipeline_type": "opportunity",
"primary_contact_id": 27140359,
"priority": "High",
"status": "Open",
"tags": [
"lodol-qa"
],
"win_probability": 40
},
"opportunity_id": 14341018
}Update person
Change fields on an existing person. Only the fields you fill in are sent, and everything else is left exactly as it is. List fields - emails, phones, tags - replace what is there rather than adding to it. A person's company cannot be changed through this endpoint; do that in Copper.
Inputs
- Person ID
person_idtextRequired - The person to update. Paste the app.copper.com link if that is what you have.
- Full name
nametext - A new full name for the person.
- Email addresses
emailslist - Replaces every address on the record with these. Send the ones you want to keep as well.
- Email category
email_categorytext - How Copper labels the email addresses sent above.One of:
work,personal,other. - Phone numbers
phone_numberslist - Phone numbers. Copper replaces the whole list with what you send.
- Phone category
phone_categorytext - How Copper labels the phone numbers sent above.One of:
mobile,work,home,other. - Job title
titletext - A new job title for the person.
- Description
detailstext - Free-text description stored on the record.
- Contact type
contact_type_idtext - This account's own contact type, such as Potential Customer.
- Owner
assignee_idtext - The Copper user who owns this record. Leave empty to leave it unowned.
- Street
address_streettext - Street address of the person.
- City
address_citytext - City of the person.
- State or region
address_statetext - State, province or region of the person.
- Postal code
address_postal_codetext - Postal or ZIP code of the person.
- Country
address_countrytext - Country, written however this Copper account writes it - Copper accepts both 'United States' and 'US' and stores what it is given.
- Websites
websiteslist - Website addresses. Copper replaces the whole list with what you send.
- Website category
website_categorytext - How Copper labels the websites sent above.One of:
work,personal,other. - Social profiles
socialslist - Social profile URLs. Copper replaces the whole list with what you send.
- Social network
social_categorytext - Which network the profile URLs above belong to.One of:
linkedin,twitter(X / Twitter),googleplus(Google+),facebook,youtube,quora,foursquare,klout,gravatar,other. - Tags
tagslist - The record's tags. Copper replaces the whole set with what you send, so include the tags it already has if you want to keep them.
- Custom fields
custom_fieldsobject - Custom field values, keyed by the field's definition id - for example {"126240": "Referral", "126241": 42}. The ids are on Copper's Settings > Customize Fields screen. Only the fields you list here are touched.
Outputs
nametext- The person's name
personobject- The person, as Copper returned it
person_idnumber- The person's id
Example output
{
"name": "Ada Lovelace",
"person": {
"address": {
"city": "San Francisco",
"country": "US",
"postal_code": "94105",
"state": "CA",
"street": "301 Howard St"
},
"assignee_id": 137658,
"company_id": 12030795,
"company_name": "Analytical Engines",
"contact_type_id": 451490,
"custom_fields": [],
"date_created": 1747699200,
"date_modified": 1757894400,
"details": "Met at the analytics conference.",
"emails": [
{
"category": "work",
"email": "ada@example.com"
}
],
"first_name": "Ada",
"id": 27140359,
"interaction_count": 3,
"last_name": "Lovelace",
"name": "Ada Lovelace",
"phone_numbers": [
{
"category": "work",
"number": "415-555-0110"
}
],
"socials": [],
"tags": [
"lodol-qa"
],
"title": "Head of Analysis",
"websites": []
},
"person_id": 27140359
}