Pipedrive
Create deals, manage contacts, and track activities in Pipedrive.
On this page
- Connect
- Call it from a workflow
- Actions (30)
- create-deal
- create-person
- find-deal
- add-follower
- add-labels-to-person
- add-product-to-deal
- attach-file
- create-activity
- create-lead
- create-note
- create-organization
- create-product
- custom_api_call
- find-activity
- find-deals-associated-with-person
- find-lead
- find-notes
- find-organization
- find-person
- find-product
- find-products
- find-user
- get-note
- get-product
- update-activity
- update-deal
- update-lead
- update-organization
- update-person
- update-product
- Details
Connect
Auth type: OAuth (oauth2). Click Connect and approve access on the provider's page. Appbricx runs the OAuth flow (signed single-use state, PKCE where the provider supports it), stores the tokens encrypted and refreshes them before they expire.
OAuth needs an OAuth app: the platform's when the operator configured one, or your own (admin panel, Integrations, Configure). You can also bring your own credentials.
- In the editor: Backend panel, Integrations tab, then Connect. This connects it for the project.
- For every project in a workspace: Workspace settings, Integrations.
- Owners and admins choose which integrations members may connect in the admin panel (Integrations tab), and can attach their own OAuth app there.
Call it from a workflow
Pass the action name and its input. The call resolves with { success, output, error? }; a missing connection resolves with success false and the reason. See ctx.integrations.invoke and ctx.integrations.call.
// .workflow.js (native ctx)
export async function run(ctx) {
const res = await ctx.integrations.invoke("pipedrive", "create-deal", {
"title": "<title>"
});
if (!res.success) throw new Error(res.error);
ctx.log.info("Pipedrive answered", { output: res.output });
}// defineWorkflow module (@app/sdk ctx)
import { defineWorkflow } from "@app/sdk";
export default defineWorkflow({
id: "pipedrive-create-deal",
name: "Pipedrive: Create Deal",
description: "Calls Pipedrive when a row is created.",
trigger: { type: "entity_event", entity: "tickets", event: "created" },
async run(ctx, event) {
const res = await ctx.integrations.call("pipedrive", {
"action": "create-deal",
"title": "<title>"
}) as { success: boolean; error?: string };
if (!res.success) throw new Error(res.error);
},
});curl -X POST "$APP_ORIGIN/__appbricx/connector-proxy/pipedrive/create-deal" \
-H "Authorization: Bearer $APP_KEY" \
-H "content-type: application/json" \
-d '{"props":{"title":"<title>"}}'Actions
create-dealin catalog
Create Deal. Creates a new deal.
Also accepted as create_deal.
| Input | Type | Description |
|---|---|---|
titlerequired | text | Title |
creationTimeoptional | date-time (ISO) | Creation Time |
statusoptional | one of "open" | "won" | "lost" | "deleted" | Status |
stageIdoptional | id (picked from your account) | If a stage is chosen above, the pipeline field will be ignored. |
pipelineIdoptional | id (picked from your account) | Pipeline |
ownerIdoptional | id (picked from your account) | Owner |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
personIdoptional | number | You can use Find Person action to retrieve person ID. |
labelIdsoptional | ids (picked from your account) | Label |
probabilityoptional | number | Probability |
expectedCloseDateoptional | date-time (ISO) | Please enter date in YYYY-MM-DD format. |
dealValueoptional | number | Value |
dealValueCurrencyoptional | text | Please enter currency code (e.g., "USD", "EUR"). |
visibleTooptional | one of "1" | "3" | Visible To |
customfieldsoptional | object (depends on other props) | Custom Fields |
create-personin catalog
Create Person. Creates a new person.
Also accepted as create_person.
| Input | Type | Description |
|---|---|---|
nameoptional | text | Name |
ownerIdoptional | id (picked from your account) | Owner |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
emailoptional | array | |
phoneoptional | array | Phone |
labelIdsoptional | ids (picked from your account) | Label |
firstNameoptional | text | First Name |
lastNameoptional | text | Last Name |
visibleTooptional | one of "1" | "3" | Visible To |
marketing_statusoptional | one of "no_consent" | "unsubscribed" | "subscribed" | "archived" | Marketing opt-in status |
customfieldsoptional | object (depends on other props) | Custom Fields |
find-dealin catalog
Find Deal. Finds a deal by any field.
| Input | Type | Description |
|---|---|---|
searchFieldrequired | id (picked from your account) | Field to search by |
searchFieldValuerequired | object (depends on other props) | Field Value |
add-follower
Add Follower. Adds a follower to a deal, person, organization or product.
| Input | Type | Description |
|---|---|---|
followerIdrequired | id (picked from your account) | Follower |
entityrequired | one of "deal" | "person" | "organization" | "product" | Type of object to add the follower to. |
entityIdrequired | text | ID of the object to add the follower to. |
add-labels-to-person
Add Labels to Person. Adds existing labels to an existing person.
| Input | Type | Description |
|---|---|---|
personIdrequired | number | You can use Find Person action to retrieve person ID. |
labelIdsrequired | ids (picked from your account) | Label |
add-product-to-deal
Add Product to Deal. Adds a product to a deal.
| Input | Type | Description |
|---|---|---|
dealIdrequired | number | You can use Find Deal action to retrieve deal ID. |
productIdrequired | number | You can use Find Product action to retrieve product ID. |
pricerequired | number | Price |
quantityrequired | number | Quantity |
discountoptional | number | Discount |
discountTypeoptional | one of "percentage" | "amount" | Discount Type |
commentsoptional | long text | Comments |
enableProductoptional | boolean | Enable Product? |
taxMethodoptional | one of "exclusive" | "inclusive" | "none" | Tax Method |
taxPercentageoptional | number | Tax Percentage |
attach-file
Attach File. Uploads a file and attaches it to a deal,person,organization,activity or product.
| Input | Type | Description |
|---|---|---|
filerequired | file | File |
fileNamerequired | text | File Name |
dealIdoptional | number | You can use Find Deal action to retrieve deal ID. |
personIdoptional | number | You can use Find Person action to retrieve person ID. |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
productIdoptional | number | You can use Find Product action to retrieve product ID. |
activityIdoptional | number | Activity ID |
create-activity
Create Activity. Creates a new activity.
| Input | Type | Description |
|---|---|---|
subjectrequired | text | Subject |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
personIdoptional | number | You can use Find Person action to retrieve person ID. |
dealIdoptional | number | You can use Find Deal action to retrieve deal ID. |
leadIdoptional | text | Lead ID |
assignTooptional | id (picked from your account) | Assign To |
typeoptional | id (picked from your account) | Activity Type |
dueDateoptional | date-time (ISO) | Please enter date in YYYY-MM-DD format. |
dueTimeoptional | text | Please enter time in HH:MM format. |
durationoptional | text | Please enter time in HH:MM format (e.g., "01:30" for 1 hour 30 minutes). |
isDoneoptional | boolean | Mark as Done? |
busyoptional | one of "free" | "busy" | Free or Busy |
noteoptional | long text | Note |
publicDescriptionoptional | long text | Public Description |
create-lead
Create Lead. Creates a new lead.
| Input | Type | Description |
|---|---|---|
titlerequired | text | Title |
ownerIdoptional | id (picked from your account) | Owner |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
personIdoptional | number | You can use Find Person action to retrieve person ID. |
labelIdsoptional | ids (picked from your account) | Label |
expectedCloseDateoptional | date-time (ISO) | Please enter date in YYYY-MM-DD format. |
visibleTooptional | one of "1" | "3" | Visible To |
channeloptional | id (picked from your account) | Channel |
leadValueoptional | number | Lead Value Amount |
leadValueCurrencyoptional | text | The currency of the lead value (e.g., "USD", "EUR"). |
customfieldsoptional | object (depends on other props) | Custom Fields |
create-note
Create Note. Creates a new note.
| Input | Type | Description |
|---|---|---|
contentrequired | long text | Content |
dealIdoptional | number | You can use Find Deal action to retrieve deal ID. |
pinnedToDealoptional | boolean | Pin note to deal? |
personIdoptional | number | You can use Find Person action to retrieve person ID. |
pinnedToPersonoptional | boolean | Pin note to person? |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
pinnedToOrganizationoptional | boolean | Pin note to organization? |
leadIdoptional | text | Lead ID |
pinnedToLeadoptional | boolean | Pin note to lead? |
create-organization
Create Organization. Creates a new organization.
| Input | Type | Description |
|---|---|---|
namerequired | text | Name |
ownerIdoptional | id (picked from your account) | Owner |
visibleTooptional | one of "1" | "3" | Visible To |
labelIdsoptional | ids (picked from your account) | Label |
addressoptional | long text | Address |
customfieldsoptional | object (depends on other props) | Custom Fields |
create-product
Create Product. Creates a new product.
| Input | Type | Description |
|---|---|---|
namerequired | text | Name |
codeoptional | text | Code |
descriptionoptional | long text | Description |
unitoptional | text | Unit |
taxoptional | number | Tax percentage |
isActiveoptional | boolean | Is Active ? |
ownerIdoptional | id (picked from your account) | Owner |
currencyoptional | text | Please enter currency code (e.g., "USD", "EUR"). |
priceoptional | number | Price |
costoptional | number | Cost |
overheadCostoptional | number | Overhead Cost |
visibleTooptional | one of "1" | "3" | Visible To |
customfieldsoptional | object (depends on other props) | Custom Fields |
custom_api_call
Custom API Call. Make a custom API call to a specific endpoint
| Input | Type | Description |
|---|---|---|
urlrequired | object (depends on other props) | url |
methodrequired | one of "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | "HEAD" | Method |
headersrequired | object | Authorization headers are injected automatically from your connection. |
queryParamsrequired | object | Query Parameters |
body_typeoptional | one of "none" | "json" | "form_data" | "raw" | Body Type |
bodyoptional | object (depends on other props) | Body |
response_is_binaryoptional | boolean | Enable for files like PDFs, images, etc. |
failsafeoptional | boolean | No Error on Failure |
timeoutoptional | number | Timeout (in seconds) |
followRedirectsoptional | boolean | Follow redirects |
find-activity
Find Activity. Finds an activity by subject.
| Input | Type | Description |
|---|---|---|
subjectrequired | text | Subject |
exactMatchoptional | boolean | Exact Match |
assignTooptional | id (picked from your account) | Assign To |
typeoptional | id (picked from your account) | Activity Type |
filterIdoptional | id (picked from your account) | Filter |
statusoptional | one of "1" | "0" | Status |
find-deals-associated-with-person
Find Deals Associated With Person. Finds multiple deals related to a specific person.
| Input | Type | Description |
|---|---|---|
personIdrequired | number | You can use Find Person action to retrieve person ID. |
find-lead
Find Lead. Finds leads by title.
| Input | Type | Description |
|---|---|---|
termrequired | text | The title to search for. |
exact_matchoptional | boolean | When enabled, only full exact matches against the given title are returned. It is not case sensitive. |
find-notes
Find Notes. Finds notes by Deal, Lead, Person, or Organization ID.
| Input | Type | Description |
|---|---|---|
objectTyperequired | one of "deal_id" | "lead_id" | "person_id" | "org_id" | Search By |
objectIdrequired | text | ID |
find-organization
Find Organization. Finds an organization.
| Input | Type | Description |
|---|---|---|
searchFieldrequired | id (picked from your account) | Field to search by |
searchFieldValuerequired | object (depends on other props) | Field Value |
find-person
Find Person. Finds a person.
| Input | Type | Description |
|---|---|---|
searchFieldrequired | id (picked from your account) | Field to search by |
searchFieldValuerequired | object (depends on other props) | Field Value |
find-product
Find Product. Finds a product by name
| Input | Type | Description |
|---|---|---|
searchTermrequired | text | Search Term |
find-products
Find Products. Finds a product or products by name or product code.
| Input | Type | Description |
|---|---|---|
fieldrequired | one of "name" | "code" | Field to search by |
fieldValuerequired | text | Field Value |
find-user
Find User. Finds a user by name or email.
| Input | Type | Description |
|---|---|---|
fieldrequired | one of "name" | "email" | Field to search by |
fieldValuerequired | text | Field Value |
get-note
Retrieve a Note. Finds a note by ID.
| Input | Type | Description |
|---|---|---|
noteIdrequired | number | Note ID |
get-product
Retrieve a Product. Finds a product by ID.
| Input | Type | Description |
|---|---|---|
productIdrequired | number | Product ID |
update-activity
Update Activity. Updates an existing activity.
| Input | Type | Description |
|---|---|---|
activityIdrequired | number | Activity ID |
subjectoptional | text | Subject |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
personIdoptional | number | You can use Find Person action to retrieve person ID. |
dealIdoptional | number | You can use Find Deal action to retrieve deal ID. |
leadIdoptional | text | Lead ID |
assignTooptional | id (picked from your account) | Assign To |
typeoptional | id (picked from your account) | Activity Type |
dueDateoptional | date-time (ISO) | Please enter date in YYYY-MM-DD format. |
dueTimeoptional | text | Please enter time in HH:MM format. |
durationoptional | text | Please enter time in HH:MM format (e.g., "01:30" for 1 hour 30 minutes). |
isDoneoptional | boolean | Mark as Done? |
busyoptional | one of "free" | "busy" | Free or Busy |
noteoptional | long text | Note |
publicDescriptionoptional | long text | Public Description |
update-deal
Update Deal. Updates an existing deal.
| Input | Type | Description |
|---|---|---|
dealIdrequired | number | You can use Find Deal action to retrieve deal ID. |
titleoptional | text | Title |
creationTimeoptional | date-time (ISO) | Creation Time |
statusoptional | one of "open" | "won" | "lost" | "deleted" | Status |
stageIdoptional | id (picked from your account) | If a stage is chosen above, the pipeline field will be ignored. |
pipelineIdoptional | id (picked from your account) | Pipeline |
ownerIdoptional | id (picked from your account) | Owner |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
personIdoptional | number | You can use Find Person action to retrieve person ID. |
labelIdsoptional | ids (picked from your account) | Label |
probabilityoptional | number | Probability |
expectedCloseDateoptional | date-time (ISO) | Please enter date in YYYY-MM-DD format. |
dealValueoptional | number | Value |
dealValueCurrencyoptional | text | Please enter currency code (e.g., "USD", "EUR"). |
visibleTooptional | one of "1" | "3" | Visible To |
customfieldsoptional | object (depends on other props) | Custom Fields |
update-lead
Update Lead. Updates an existing lead.
| Input | Type | Description |
|---|---|---|
leadIdrequired | text | Lead ID |
titleoptional | text | Title |
ownerIdoptional | id (picked from your account) | Owner |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
personIdoptional | number | You can use Find Person action to retrieve person ID. |
labelIdsoptional | ids (picked from your account) | Label |
expectedCloseDateoptional | date-time (ISO) | Please enter date in YYYY-MM-DD format. |
visibleTooptional | one of "1" | "3" | Visible To |
channeloptional | id (picked from your account) | Channel |
leadValueoptional | number | Lead Value Amount |
leadValueCurrencyoptional | text | The currency of the lead value (e.g., "USD", "EUR"). |
customfieldsoptional | object (depends on other props) | Custom Fields |
update-organization
Update Organization. Updates an existing organization.
| Input | Type | Description |
|---|---|---|
organizationIdrequired | number | You can use Find Organization action to retrieve org ID. |
nameoptional | text | Name |
ownerIdoptional | id (picked from your account) | Owner |
visibleTooptional | one of "1" | "3" | Visible To |
labelIdsoptional | ids (picked from your account) | Label |
addressoptional | long text | Address |
customfieldsoptional | object (depends on other props) | Custom Fields |
update-person
Update Person. Updates an existing person.
| Input | Type | Description |
|---|---|---|
personIdrequired | number | You can use Find Person action to retrieve person ID. |
nameoptional | text | Name |
ownerIdoptional | id (picked from your account) | Owner |
organizationIdoptional | number | You can use Find Organization action to retrieve org ID. |
emailoptional | array | |
phoneoptional | array | Phone |
labelIdsoptional | ids (picked from your account) | Label |
firstNameoptional | text | First Name |
lastNameoptional | text | Last Name |
visibleTooptional | one of "1" | "3" | Visible To |
marketing_statusoptional | one of "no_consent" | "unsubscribed" | "subscribed" | "archived" | Marketing opt-in status |
customfieldsoptional | object (depends on other props) | Custom Fields |
update-product
Update Product. Updates an existing product.
| Input | Type | Description |
|---|---|---|
idrequired | text | Product ID |
nameoptional | text | Name |
codeoptional | text | Code |
descriptionoptional | long text | Description |
unitoptional | text | Unit |
taxoptional | number | Tax percentage |
isActiveoptional | boolean | Is Active ? |
ownerIdoptional | id (picked from your account) | Owner |
currencyoptional | text | Please enter currency code (e.g., "USD", "EUR"). |
priceoptional | number | Price |
costoptional | number | Cost |
overheadCostoptional | number | Overhead Cost |
visibleTooptional | one of "1" | "3" | Visible To |
customfieldsoptional | object (depends on other props) | Custom Fields |
Details
- Id
pipedrive- Category
- CRM and sales
- Tags
- crm, sales, pipeline, deals
- Package
@activepieces/piece-pipedrive@0.8.6- Tier
- Built in