Overview
Connect Copper with Flows360
Copper integration for Flows360 workflows.
Use the Copper connector to include its declared actions and events in Flows360 workflows without duplicating the integration logic inside each consuming system. This pinned connector version currently exposes 20 actions and 11 triggers.
Available actions
- Create Person
- Update Person
- Create Lead
- Update Lead
- Convert Lead
- Create Company
- Update Company
- Create Opportunity
- Plus 12 additional declared actions.
Available triggers
- New Activity
- New Person
- New Lead
- New Task
- Updated Lead
- Updated Task
- Plus 5 additional declared triggers.
The capability list above is generated from the exact reviewed connector package so the public description stays aligned with the version Flows360 operates.
Technical guide
Technical reference
Package identity
- Connector: Copper
- Package:
@activepieces/piece-copper@0.2.0 - Exact artifact digest:
sha256:5ca4d511f9152d835affb69abc322a2481de822499d196ab38e9d8ab77bd580d - Runtime: Activepieces-compatible deterministic worker
- Source: the exact reviewed Activepieces source
Authentication
CUSTOM AUTH. Connection values are tenant-specific and remain in the consuming Studio instance; CDK stores definitions and field metadata, not customer credential values.
Action contracts
- Create Person (
createPerson), Adds a new person/contact. Classification: read. - Update Person (
updatePerson), Updates a person based on matching criteria. Classification: read. - Create Lead (
createLead), Adds a new lead. Classification: read. - Update Lead (
updateLead), Updates an existing lead. Classification: read. - Convert Lead (
convertLead), Converts a lead into a person (optionally with company/opportunity). Classification: read. - Create Company (
createCompany), Adds a new company. Classification: read. - Update Company (
updateCompany), Updates a company record. Classification: read. - Create Opportunity (
createOpportunity), Adds a new opportunity. Classification: read. - Update Opportunity (
updateOpportunity), Updates an opportunity using match criteria. Classification: read. - Create Project (
createProject), Adds a new project. Classification: read. - Update Project (
updateProject), Updates a project record. Classification: read. - Create Task (
createTask), Adds a new task under a person, lead, or opportunity. Classification: read. - Create Activity (
createActivity), Logs an activity related to CRM entities. Classification: read. - Search for an Activity (
searchForAnActivity), Find an existing activity by type/criteria. Classification: read. - Search for a Person (
searchForAPerson), Lookup a person using match criteria. Classification: read. - Search for a Lead (
searchForALead), Lookup a lead using match criteria. Classification: read. - Search for a Company (
searchForACompany), Lookup a company. Classification: read. - Search for an Opportunity (
searchForAnOpportunity), Lookup an opportunity. Classification: read. - Search for a Project (
searchForAProject), Lookup a project. Classification: read. - Custom API Call (
custom_api_call), Make a custom API call to a specific endpoint Classification: read.
Trigger contracts
- New Activity, polling.
- New Person, webhook.
- New Lead, webhook.
- New Task, webhook.
- Updated Lead, webhook.
- Updated Task, webhook.
- Updated Opportunity, webhook.
- Updated Opportunity Stage, webhook.
- Updated Opportunity Status, webhook.
- Updated Project, webhook.
- Updated Lead Status, webhook.
Verification
Deterministic execution evidence is recorded for the pinned artifact, including 1 exercised action entrypoint and 0 exercised trigger entrypoints.
Capability summary
Authentication
Authentication method: custom
Authentication profiles
connection · custom
- Email Address Required
- API Key Required · protected credential
Supported objects
| Object | Read | Write | Notes |
|---|---|---|---|
| Create Person | Yes | No | Adds a new person/contact. |
| Update Person | Yes | No | Updates a person based on matching criteria. |
| Create Lead | Yes | No | Adds a new lead. |
| Update Lead | Yes | No | Updates an existing lead. |
| Convert Lead | Yes | No | Converts a lead into a person (optionally with company/opportunity). |
| Create Company | Yes | No | Adds a new company. |
| Update Company | Yes | No | Updates a company record. |
| Create Opportunity | Yes | No | Adds a new opportunity. |
| Update Opportunity | Yes | No | Updates an opportunity using match criteria. |
| Create Project | Yes | No | Adds a new project. |
| Update Project | Yes | No | Updates a project record. |
| Create Task | Yes | No | Adds a new task under a person, lead, or opportunity. |
| Create Activity | Yes | No | Logs an activity related to CRM entities. |
| Search for an Activity | Yes | No | Find an existing activity by type/criteria. |
| Search for a Person | Yes | No | Lookup a person using match criteria. |
| Search for a Lead | Yes | No | Lookup a lead using match criteria. |
| Search for a Company | Yes | No | Lookup a company. |
| Search for an Opportunity | Yes | No | Lookup an opportunity. |
| Search for a Project | Yes | No | Lookup a project. |
| Custom API Call | Yes | No | Make a custom API call to a specific endpoint |
| New Activity | Yes | No | polling trigger declared by the pinned package. |
| New Person | Yes | No | webhook trigger declared by the pinned package. |
| New Lead | Yes | No | webhook trigger declared by the pinned package. |
| New Task | Yes | No | webhook trigger declared by the pinned package. |
| Updated Lead | Yes | No | webhook trigger declared by the pinned package. |
| Updated Task | Yes | No | webhook trigger declared by the pinned package. |
| Updated Opportunity | Yes | No | webhook trigger declared by the pinned package. |
| Updated Opportunity Stage | Yes | No | webhook trigger declared by the pinned package. |
| Updated Opportunity Status | Yes | No | webhook trigger declared by the pinned package. |
| Updated Project | Yes | No | webhook trigger declared by the pinned package. |
| Updated Lead Status | Yes | No | webhook trigger declared by the pinned package. |
Supported actions
Create Person · Read
Adds a new person/contact.
create_person · Risk: low · Retry: safe
Inputs
name· string · Requiredemails· array · Requiredphone_numbers· array · Optionaladdress_street· string · Optionaladdress_city· string · Optionaladdress_state· string · Optionaladdress_postal_code· string · Optionaladdress_country· string · Optional
Update Person · Read
Updates a person based on matching criteria.
update_person · Risk: low · Retry: safe
Inputs
personId· string · Required, select a personfields· object · Optional
Create Lead · Read
Adds a new lead.
create_lead · Risk: low · Retry: safe
Inputs
name· string · Requiredemail· string · Requiredcategory· string · Requiredphone_numbers· array · Optionaladdress_street· string · Optionaladdress_city· string · Optionaladdress_state· string · Optionaladdress_postal_code· string · Optionaladdress_country· string · Optional
Update Lead · Read
Updates an existing lead.
update_lead · Risk: low · Retry: safe
Inputs
leadId· string · Required, select a Leadfields· object · Optional
Convert Lead · Read
Converts a lead into a person (optionally with company/opportunity).
convert_lead · Risk: low · Retry: safe
Inputs
leadId· string · Required, select a LeadcompanyId· string · Optional, select a CompanyopportunityId· string · Optional, select an Opportunity
Create Company · Read
Adds a new company.
create_company · Risk: low · Retry: safe
Inputs
name· string · Requiredemail_domain· string · Optional, E.g. democompany.comdetails· string · Optionalphone_numbers· array · Optionaladdress_street· string · Optionaladdress_city· string · Optionaladdress_state· string · Optionaladdress_postal_code· string · Optionaladdress_country· string · OptionalprimaryContactId· string · Optional, select a primary contact
Update Company · Read
Updates a company record.
update_company · Risk: low · Retry: safe
Inputs
companyId· string · Required, select a Companyfields· object · OptionalprimaryContactId· string · Optional, select a primary contact
Create Opportunity · Read
Adds a new opportunity.
create_opportunity · Risk: low · Retry: safe
Inputs
name· string · Required, The name of the opportunitypipelineId· string · Optional, select a PipelinepipelineStageId· string · Optional, Select a stageprimaryContactId· string · Optional, select a primary contact
Update Opportunity · Read
Updates an opportunity using match criteria.
update_opportunity · Risk: low · Retry: safe
Inputs
opportunityId· string · Required, select an OpportunityupdateFields· object · OptionalpipelineId· string · Optional, select a PipelinepipelineStageId· string · Optional, Select a stageprimaryContactId· string · Optional, select a primary contact
Create Project · Read
Adds a new project.
create_project · Risk: low · Retry: safe
Inputs
name· string · Required, The name of the projectdetails· string · Optional, The details of the project
Update Project · Read
Updates a project record.
update_project · Risk: low · Retry: safe
Inputs
projectId· string · Required, select a ProjectupdateFields· object · Optional
Create Task · Read
Adds a new task under a person, lead, or opportunity.
create_task · Risk: low · Retry: safe
Inputs
name· string · Requireddetails· string · Optional, Details fo this taskcustom_activity_type_id· string · Required, Select activity TypeassigneeId· string · Optional, select a user to assign toentity· string · Optional, Choose the type of Copper record this task should be linked to (e.g. Person, Company, Lead, Opportunity, or Project).entityItemId· string · Optional, Select the specific record (from the chosen type above) that this task should be attached to. For example, pick the Person or Opportunity the task relates to.due_date· string · Optional, Enter date and time in 24-hour format, e.g. `2025-09-09 11:40` (11:40 AM) or `2025-09-09 13:00` (1:00 PM).reminder_date· string · Optional, Enter date and time in 24-hour format, e.g. `2025-09-09 11:40` (11:40 AM) or `2025-09-09 13:00` (1:00 PM)priority· string · Optionaltags· array · Optional
Create Activity · Read
Logs an activity related to CRM entities.
create_activity · Risk: low · Retry: safe
Inputs
entity· string · Required, Select parent entityentityItemId· string · Required, Select Resourcedetails· string · Optional, The details of the projecttype· string · Required, Select activity Type
Search for an Activity · Read
Find an existing activity by type/criteria.
search_for_an_activity · Risk: low · Retry: safe
Inputs
entity· string · Optional, Select parent entityentityItemId· string · Optional, Select Resourceactivity_types· array · Optional, Select activity Typepage_size· number · Optional, Default 50. Max 200.page_number· number · Optionalminimum_activity_date· string · Optional, 24-hour format, e.g. 2025-09-10 11:40. The timestamp of the earliest activity date.maximum_activity_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest activity date.full_result· boolean · Optional, (Optional) If set, search performance improves but duplicate activity logs may be returned
Search for a Person · Read
Lookup a person using match criteria.
search_for_aperson · Risk: low · Retry: safe
Inputs
name· string · Optional, Full name of the People to search for.phone_number· string · Optional, Phone Number of the People to search for.emails· array · Optional, Emails of the People to search for.contact_type_ids· array · Optional, Select contact Typeassignee_ids· array · Optional, select assigneescompany_ids· array · Optional, select Companiesopportunity_ids· array · Optional, select Opportunitiescity· string · Optional, The city in which People must be located.state· string · Optional, The state or province in which People must be located.postal_code· string · Optional, The postal code in which People must be located.country· string · Optional, The two character country code where People must be located.tags· array · Optional, Filter People to those that match at least one of the tags specified.socials· array · Optional, Filter People to those that match at least one of the social accounts specified.followed· string · Optional, Filter by followed stateage· number · Optional, The maximum age in seconds that People must be.page_size· number · Optional, Default 50. Max 200.page_number· number · Optionalsort_by· string · Optional, The field on which to sort the resultssort_direction· string · Optional, The direction in which to sort the resultminimum_interaction_count· number · Optional, The minimum number of interactions People must have had.maximum_interaction_count· number · Optional, The maximum number of interactions People must have had.minimum_interaction_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date of the last interaction.maximum_interaction_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date of the last interaction.minimum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date People are created.maximum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date People are Created.
Search for a Lead · Read
Lookup a lead using match criteria.
search_for_alead · Risk: low · Retry: safe
Inputs
name· string · Optional, Full name of the Lead to search for.phone_number· string · Optional, Phone Number of the Lead to search for.emails· string · Optional, Emails of the Lead to search for.tassignee_ids· array · Optional, select assigneesstatus_ids· array · Optional, Select lead statuscustomer_source_ids· array · Optional, Select customer source.city· string · Optional, The city in which Lead must be located.state· string · Optional, The state or province in which Lead must be located.postal_code· string · Optional, The postal code in which Lead must be located.country· string · Optional, The two character country code where Lead must be located.tags· array · Optional, Filter Lead to those that match at least one of the tags specified.socials· array · Optional, Filter Lead to those that match at least one of the social accounts specified.followed· string · Optional, Filter by followed stateage· number · Optional, The maximum age in seconds that Lead must be.page_size· number · Optional, Default 50. Max 200.page_number· number · Optionalsort_by· string · Optional, The field on which to sort the resultssort_direction· string · Optional, The direction in which to sort the resultinclude_converted_leads· boolean · Optional, Specify if response should contain converted leads.minimum_monetary_value· number · Optional, The minimum monetary value Leads must have.maximum_monetary_value· number · Optional, The maximum monetary value Leads must have.minimum_interaction_count· number · Optional, The minimum number of interactions Lead must have had.maximum_interaction_count· number · Optional, The maximum number of interactions Lead must have had.minimum_interaction_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date of the last interaction.maximum_interaction_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date of the last interaction.minimum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date Lead are created.maximum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date Lead are Created.minimum_modified_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date Lead are Modified.maximum_modified_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date Lead are Modified.
Search for a Company · Read
Lookup a company.
search_for_acompany · Risk: low · Retry: safe
Inputs
name· string · Optional, Full name of the Company to search for.phone_number· string · Optional, Phone Number of the Company to search for.email_domains· string · Optional, Email Domain of the Company to search for.contact_type_ids· array · Optional, Select contact Typeassignee_ids· array · Optional, select assigneescity· string · Optional, The city in which Company must be located.state· string · Optional, The state or province in which Company must be located.postal_code· string · Optional, The postal code in which Company must be located.country· string · Optional, The two character country code where Company must be located.tags· array · Optional, Filter Company to those that match at least one of the tags specified.socials· array · Optional, Filter Company to those that match at least one of the social accounts specified.followed· string · Optional, Filter by followed stateage· number · Optional, The maximum age in seconds that Company must be.page_size· number · Optional, Default 50. Max 200.page_number· number · Optionalsort_by· string · Optional, The field on which to sort the resultssort_direction· string · Optional, The direction in which to sort the resultminimum_interaction_count· number · Optional, The minimum number of interactions Company must have had.maximum_interaction_count· number · Optional, The maximum number of interactions Company must have had.minimum_interaction_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date of the last interaction.maximum_interaction_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date of the last interaction.minimum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date Company are created.maximum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date Company are Created.
Search for an Opportunity · Read
Lookup an opportunity.
search_for_an_opportunity · Risk: low · Retry: safe
Inputs
name· string · Optional, Full name of the Opportunity to search for.assignee_ids· array · Optional, select assigneescompany_ids· array · Optional, select Companiesstatus_ids· array · Optional, Filter by Opportunity statuspriorities· array · Optionalpipeline_ids· array · Optional, select a Pipelinepipeline_stage_ids· array · Optional, Select a stageprimary_contact_ids· array · Optional, select primary contactscustomer_source_ids· array · Optional, Select customer source.loss_reason_ids· array · Optional, Select loss reason.tags· array · Optional, Filter People to those that match at least one of the tags specified.followed· string · Optional, Filter by followed statepage_size· number · Optional, Default 50. Max 200.page_number· number · Optionalsort_by· string · Optional, The field on which to sort the resultssort_direction· string · Optional, The direction in which to sort the resultminimum_monetary_value· number · Optional, The minimum monetary value Opportunities must have.maximum_monetary_value· number · Optional, The maximum monetary value Opportunities must have.minimum_interaction_count· number · Optional, The minimum number of interactions Opportunity must have had.maximum_interaction_count· number · Optional, The maximum number of interactions Opportunity must have had.minimum_close_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date close date.maximum_close_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date close date.minimum_interaction_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date of the last interaction.maximum_interaction_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date of the last interaction.minimum_stage_change_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date of a stage change.maximum_stage_change_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date of a stage change.minimum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date Opportunity are created.maximum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date Opportunity are Created.minimum_modified_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date Opportunity are Modified.maximum_modified_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date Opportunity are Modified.
Search for a Project · Read
Lookup a project.
search_for_aproject · Risk: low · Retry: safe
Inputs
name· string · Optional, Full name of the Opportunity to search for.assignee_ids· array · Optional, select assigneesstatuses· array · Optional, Filter by Opportunity statustags· array · Optional, Filter People to those that match at least one of the tags specified.followed· string · Optional, Filter by followed statepage_size· number · Optional, Default 50. Max 200.page_number· number · Optionalsort_by· string · Optional, The field on which to sort the resultssort_direction· string · Optional, The direction in which to sort the resultminimum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date Opportunity are created.maximum_created_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date Opportunity are Created.minimum_modified_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the earliest date Opportunity are Modified.maximum_modified_date· string · Optional, 24-hour format, e.g. 2025-09-10 13:00. The timestamp of the latest date Opportunity are Modified.
Custom API Call · Read
Make a custom API call to a specific endpoint
custom_api_call · Risk: low · Retry: safe
Inputs
url· object · Requiredmethod· string · Requiredheaders· object · Optional, Authorization headers are injected automatically from your connection.queryParams· object · Optional, Appended to the URL as ?key=value.body_type· string · Optionalbody· object · Optionalresponse_is_binary· boolean · Optional, Enable for files like PDFs, images, etc.failsafe· boolean · Optional, On a failed request, output the error instead of failing the step.timeout· number · Optional, Seconds to wait for a response. Empty: up to the flow limit (10 min).followRedirects· boolean · Optional, Follow 3xx redirects instead of returning them as the response.
Triggers
New Activity · Poll
Triggers when a new activity is logged
New Person · Webhook
Triggers when a new person/contact is created.
New Lead · Webhook
Triggers when a new lead is created.
New Task · Webhook
Triggers when a new task is created.
Updated Lead · Webhook
Triggers when a lead is modified.
Updated Task · Webhook
Triggers when a task is updated.
Updated Opportunity · Webhook
Triggers when an opportunity changes.
Updated Opportunity Stage · Webhook
Triggers when an opportunity stage changes
Updated Opportunity Status · Webhook
Triggers when an opportunity's status changes.
Updated Project · Webhook
Triggers when a project is updated.
Updated Lead Status · Webhook
Triggers when the status of a lead changes.
Setup
Setup
- Add the Copper connector to the workflow in the target Flows360 Studio instance.
- Create or select the tenant-specific connection required by the connector. Connection secrets remain in the Studio connection boundary and are not copied into CDK documentation.
- Provide the connection fields declared by the pinned package:
- Email Address (
email), required. - API Key (
apiKey), required; stored as a sensitive connection value.
- Select the required action or trigger and complete its declared input fields. Required and optional inputs are defined by the exact package schema.
- Test the workflow in the appropriate environment before enabling production scheduling or event delivery.
Limitations
Limitations and operational notes
- This content describes
@activepieces/piece-copper@0.2.0; provider behaviour can change independently and should be revalidated when the provider or connector version changes. - Only the 20 actions and 11 triggers declared by this pinned package are represented here.
- Tenant credentials and connection values are not stored in the public connector record.
- Provider-side permissions, account entitlements, quotas and rate limits remain subject to the connected provider account and are not inferred when the package does not declare them.
- Deterministic execution evidence is recorded for the pinned artifact, including 1 exercised action entrypoint and 0 exercised trigger entrypoints.
Troubleshooting
Why canu2019t the connector authenticate?
Check the tenant connection in Studio and confirm every required Copper connection field is present. Re-authorise OAuth-based connections if the provider token or consent has expired. Do not place credential values in CDK content or logs.
Why is an action or trigger unavailable?
Confirm that the workflow is using @activepieces/piece-copper@0.2.0 and compare the requested capability with the declared action and trigger list for this version. A capability that is not declared by the pinned package should not be presented as supported.
What should I check after a provider-side change?
Revalidate authentication, required fields, action/trigger behaviour and provider documentation before publishing refreshed connector content or moving a new package version into production.