Skip to content

Latest commit

 

History

History
1460 lines (1349 loc) · 165 KB

README.md

File metadata and controls

1460 lines (1349 loc) · 165 KB

Pipedrive client for NodeJS based apps

Pipedrive is a sales pipeline software that gets you organized. It's a powerful sales CRM with effortless sales pipeline management. See www.pipedrive.com for details.

This is the official Pipedrive API wrapper-client for NodeJS based apps, distributed by Pipedrive Inc freely under the MIT licence. It provides convenient access to the Pipedrive API, allowing you to operate with objects such as Deals, Persons, Organizations, Products and much more.

Table of Contents

Installation

npm install pipedrive

API Reference

The Pipedrive RESTful API Reference can be found at https://developers.pipedrive.com/docs/api/v1. Pipedrive API’s core concepts for its usage can be found in our Developer documentation.

How to use it

Warning

The pipedrive.ApiClient.instance has been deprecated.

Please, initialise a new pipedrive.ApiClient() instance separately for each request instead.

With a pre-set API token

You can retrieve the api_token from your existing Pipedrive account’s settings page. A step-by-step guide is available here.

const express = require('express');
const app = express();
const pipedrive = require('pipedrive');

const PORT = 1800;

app.listen(PORT, () => {
  console.log(`Listening on port ${PORT}`);
});

app.get('/', async (req, res) => {
  try {
    const apiClient = new pipedrive.ApiClient();

    // Configure API key authorization: apiToken
    let apiToken = apiClient.authentications.api_key;
    apiToken.apiKey = 'YOUR_API_TOKEN_HERE';

    const api = new pipedrive.DealsApi(apiClient);
    const deals = await api.getDeals();

    return res.send(deals);
  } catch (error) {
    console.error('Error:', error);

    res.status(500).json({
      error: error.message,
    });
  }
});

With OAuth2

If you would like to use an OAuth access token for making API calls, then make sure the API key described in the previous section is not set or is set to an empty string. If both API token and OAuth access token are set, then the API token takes precedence.

To set up authentication in the API client, you need the following information. You can receive the necessary client tokens through a Sandbox account (get it here) and generate the tokens (detailed steps here).

Parameter Description
clientId OAuth 2 Client ID
clientSecret OAuth 2 Client Secret
redirectUri OAuth 2 Redirection endpoint or Callback Uri

Next, initialize the API client as follows:

const pipedrive = require('pipedrive');

const apiClient = new pipedrive.ApiClient();

// Configuration parameters and credentials
let oauth2 = apiClient.authentications.oauth2;
oauth2.clientId = 'clientId'; // OAuth 2 Client ID
oauth2.clientSecret = 'clientSecret'; // OAuth 2 Client Secret
oauth2.redirectUri = 'redirectUri'; // OAuth 2 Redirection endpoint or Callback Uri

You must now authorize the client.

Authorizing your client

Your application must obtain user authorization before it can execute an endpoint call. The SDK uses OAuth 2.0 authorization to obtain a user's consent to perform an API request on the user's behalf. Details about how the OAuth2.0 flow works in Pipedrive, how long tokens are valid, and more, can be found here.

1. Obtaining user consent

To obtain user's consent, you must redirect the user to the authorization page. The buildAuthorizationUrl() method creates the URL to the authorization page.

const authUrl = apiClient.buildAuthorizationUrl();
// open up the authUrl in the browser

2. Handle the OAuth server response

Once the user responds to the consent request, the OAuth 2.0 server responds to your application's access request by using the URL specified in the request.

If the user approves the request, the authorization code will be sent as the code query string:

https://example.com/oauth/callback?code=XXXXXXXXXXXXXXXXXXXXXXXXX

If the user does not approve the request, the response contains an error query string:

https://example.com/oauth/callback?error=access_denied

3. Authorize the client using the code

After the server receives the code, it can exchange this for an access token. The access token is an object containing information for authorizing the client and refreshing the token itself. In the API client all the access token fields are held separately in the authentications.oauth2 object. Additionally access token expiration time as an authentications.oauth2.expiresAt field is calculated. It is measured in the number of milliseconds elapsed since January 1, 1970 00:00:00 UTC.

const tokenPromise = apiClient.authorize(code);

The Node.js SDK supports only promises. So, the authorize call returns a promise.

Refreshing token

Access tokens may expire after sometime. To extend its lifetime, you must refresh the token.

const refreshPromise = apiClient.refreshToken();
refreshPromise.then(() => {
    // token has been refreshed
} , (exception) => {
    // error occurred, exception will be of type src/exceptions/OAuthProviderException
});

If the access token expires, the SDK will attempt to automatically refresh it before the next endpoint call which requires authentication.

Storing an access token for reuse

It is recommended that you store the access token for reuse.

This code snippet stores the access token in a session for an express application. It uses the cookie-parser and cookie-session npm packages for storing the access token.

const express = require('express');
const cookieParser = require('cookie-parser');
const cookieSession = require('cookie-session');

const app = express();
app.use(cookieParser());
app.use(cookieSession({
    name: 'session',
    keys: ['key1']
}));

const lib = require('pipedrive');
...
// store access token in the session
// note that this is only the access token field value not the whole token object
req.session.accessToken = apiClient.authentications.oauth2.accessToken;

However, since the SDK will attempt to automatically refresh the access token when it expires, it is recommended that you register a token update callback to detect any change to the access token.

apiClient.authentications.oauth2.tokenUpdateCallback = function(token) {
    // getting the updated token
    // here the token is an object, you can store the whole object or extract fields into separate values
    req.session.token = token;
}

The token update callback will be fired upon authorization as well as token refresh.

To authorize a client from a stored access token, just set the access token in api client oauth2 authentication object along with the other configuration parameters before making endpoint calls:

NB! This code only supports one client and should not be used as production code. Please store a separate access token for each client.

const express = require('express');
const cookieParser = require('cookie-parser');
const cookieSession = require('cookie-session');

const app = express();
app.use(cookieParser());
app.use(cookieSession({
    name: 'session',
    keys: ['key1']
}));

const lib = require('pipedrive');

app.get('/', (req, res) => {
    apiClient.authentications.oauth2.accessToken = req.session.accessToken; // the access token stored in the session
});

Complete example

This example demonstrates an express application (which uses cookie-parser and cookie-session) for handling session persistence.

In this example, there are 2 endpoints. The base endpoint '/' first checks if the token is stored in the session. If it is, API endpoints can be called using the corresponding SDK controllers.

However, if the token is not set in the session, then authorization URL is built and opened up. The response comes back at the '/callback' endpoint, which uses the code to authorize the client and store the token in the session. It then redirects back to the base endpoint for calling endpoints from the SDK.

const express = require('express');
const app = express();
const cookieParser = require('cookie-parser');
const cookieSession = require('cookie-session');

app.use(cookieParser());
app.use(
  cookieSession({
    name: 'session',
    keys: ['key1'],
  }),
);
const PORT = 1800;

const pipedrive = require('pipedrive');

app.listen(PORT, () => {
  console.log(`Listening on port ${PORT}`);
});

app.get('/', async (req, res) => {
  const apiClient = new pipedrive.ApiClient();

  let oauth2 = apiClient.authentications.oauth2;
  oauth2.clientId = 'clientId'; // OAuth 2 Client ID
  oauth2.clientSecret = 'clientSecret'; // OAuth 2 Client Secret
  oauth2.redirectUri = 'http://localhost:1800/callback'; // OAuth 2 Redirection endpoint or Callback Uri

  if (
    req.session.accessToken !== null &&
    req.session.accessToken !== undefined
  ) {
    // token is already set in the session
    // now make API calls as required
    // client will automatically refresh the token when it expires and call the token update callback
    const api = new pipedrive.DealsApi(apiClient);
    const deals = await api.getDeals();

    res.send(deals);
  } else {
    const authUrl = apiClient.buildAuthorizationUrl();

    res.redirect(authUrl);
  }
});

app.get('/callback', (req, res) => {
  const authCode = req.query.code;
  const promise = apiClient.authorize(authCode);

  promise.then(
    () => {
      req.session.accessToken = apiClient.authentications.oauth2.accessToken;
      res.redirect('/');
    },
    (exception) => {
      // error occurred, exception will be of type src/exceptions/OAuthProviderException
    },
  );
});

Documentation for Authorization

api_key

  • Type: API key
  • API key parameter name: api_token
  • Location: URL query string

basic_authentication

  • Type: HTTP basic authentication

oauth2

  • Type: OAuth
  • Flow: accessCode
  • Authorization URL: https://oauth.pipedrive.com/oauth/authorize
  • Scopes:
    • base: Read settings of the authorized user and currencies in an account
    • deals:read: Read most of the data about deals and related entities - deal fields, products, followers, participants; all notes, files, filters, pipelines, stages, and statistics. Does not include access to activities (except the last and next activity related to a deal)
    • deals:full: Create, read, update and delete deals, its participants and followers; all files, notes, and filters. It also includes read access to deal fields, pipelines, stages, and statistics. Does not include access to activities (except the last and next activity related to a deal)
    • mail:read: Read mail threads and messages
    • mail:full: Read, update and delete mail threads. Also grants read access to mail messages
    • activities:read: Read activities, its fields and types; all files and filters
    • activities:full: Create, read, update and delete activities and all files and filters. Also includes read access to activity fields and types
    • contacts:read: Read the data about persons and organizations, their related fields and followers; also all notes, files, filters
    • contacts:full: Create, read, update and delete persons and organizations and their followers; all notes, files, filters. Also grants read access to contacts-related fields
    • products:read: Read products, its fields, files, followers and products connected to a deal
    • products:full: Create, read, update and delete products and its fields; add products to deals
    • projects:read: Read projects and its fields, tasks and project templates
    • projects:full: Create, read, update and delete projects and its fields; add projects templates and project related tasks
    • users:read: Read data about users (people with access to a Pipedrive account), their permissions, roles and followers
    • recents:read: Read all recent changes occurred in an account. Includes data about activities, activity types, deals, files, filters, notes, persons, organizations, pipelines, stages, products and users
    • search:read: Search across the account for deals, persons, organizations, files and products, and see details about the returned results
    • admin: Allows to do many things that an administrator can do in a Pipedrive company account - create, read, update and delete pipelines and its stages; deal, person and organization fields; activity types; users and permissions, etc. It also allows the app to create webhooks and fetch and delete webhooks that are created by the app
    • leads:read: Read data about leads and lead labels
    • leads:full: Create, read, update and delete leads and lead labels
    • phone-integration: Enables advanced call integration features like logging call duration and other metadata, and play call recordings inside Pipedrive
    • goals:read: Read data on all goals
    • goals:full: Create, read, update and delete goals
    • video-calls: Allows application to register as a video call integration provider and create conference links
    • messengers-integration: Allows application to register as a messengers integration provider and allows them to deliver incoming messages and their statuses

Documentation for API Endpoints

All URIs are relative to https://api.pipedrive.com/v1

Code examples are available through the links in the list below or on the Pipedrive Developers Tutorials page

Class Method HTTP request Description
Pipedrive.ActivitiesApi addActivity POST /activities Add an activity
Pipedrive.ActivitiesApi deleteActivities DELETE /activities Delete multiple activities in bulk
Pipedrive.ActivitiesApi deleteActivity DELETE /activities/{id} Delete an activity
Pipedrive.ActivitiesApi getActivities GET /activities Get all activities assigned to a particular user
Pipedrive.ActivitiesApi getActivitiesCollection GET /activities/collection Get all activities (BETA)
Pipedrive.ActivitiesApi getActivity GET /activities/{id} Get details of an activity
Pipedrive.ActivitiesApi updateActivity PUT /activities/{id} Update an activity
Pipedrive.ActivityFieldsApi getActivityFields GET /activityFields Get all activity fields
Pipedrive.ActivityTypesApi addActivityType POST /activityTypes Add new activity type
Pipedrive.ActivityTypesApi deleteActivityType DELETE /activityTypes/{id} Delete an activity type
Pipedrive.ActivityTypesApi deleteActivityTypes DELETE /activityTypes Delete multiple activity types in bulk
Pipedrive.ActivityTypesApi getActivityTypes GET /activityTypes Get all activity types
Pipedrive.ActivityTypesApi updateActivityType PUT /activityTypes/{id} Update an activity type
Pipedrive.BillingApi getCompanyAddons GET /billing/subscriptions/addons Get all add-ons for a single company
Pipedrive.CallLogsApi addCallLog POST /callLogs Add a call log
Pipedrive.CallLogsApi addCallLogAudioFile POST /callLogs/{id}/recordings Attach an audio file to the call log
Pipedrive.CallLogsApi deleteCallLog DELETE /callLogs/{id} Delete a call log
Pipedrive.CallLogsApi getCallLog GET /callLogs/{id} Get details of a call log
Pipedrive.CallLogsApi getUserCallLogs GET /callLogs Get all call logs assigned to a particular user
Pipedrive.ChannelsApi addChannel POST /channels Add a channel
Pipedrive.ChannelsApi deleteChannel DELETE /channels/{id} Delete a channel
Pipedrive.ChannelsApi deleteConversation DELETE /channels/{channel-id}/conversations/{conversation-id} Delete a conversation
Pipedrive.ChannelsApi receiveMessage POST /channels/messages/receive Receives an incoming message
Pipedrive.CurrenciesApi getCurrencies GET /currencies Get all supported currencies
Pipedrive.DealFieldsApi addDealField POST /dealFields Add a new deal field
Pipedrive.DealFieldsApi deleteDealField DELETE /dealFields/{id} Delete a deal field
Pipedrive.DealFieldsApi deleteDealFields DELETE /dealFields Delete multiple deal fields in bulk
Pipedrive.DealFieldsApi getDealField GET /dealFields/{id} Get one deal field
Pipedrive.DealFieldsApi getDealFields GET /dealFields Get all deal fields
Pipedrive.DealFieldsApi updateDealField PUT /dealFields/{id} Update a deal field
Pipedrive.DealsApi addDeal POST /deals Add a deal
Pipedrive.DealsApi addDealFollower POST /deals/{id}/followers Add a follower to a deal
Pipedrive.DealsApi addDealParticipant POST /deals/{id}/participants Add a participant to a deal
Pipedrive.DealsApi addDealProduct POST /deals/{id}/products Add a product to a deal
Pipedrive.DealsApi deleteDeal DELETE /deals/{id} Delete a deal
Pipedrive.DealsApi deleteDealFollower DELETE /deals/{id}/followers/{follower_id} Delete a follower from a deal
Pipedrive.DealsApi deleteDealParticipant DELETE /deals/{id}/participants/{deal_participant_id} Delete a participant from a deal
Pipedrive.DealsApi deleteDealProduct DELETE /deals/{id}/products/{product_attachment_id} Delete an attached product from a deal
Pipedrive.DealsApi deleteDeals DELETE /deals Delete multiple deals in bulk
Pipedrive.DealsApi duplicateDeal POST /deals/{id}/duplicate Duplicate deal
Pipedrive.DealsApi getDeal GET /deals/{id} Get details of a deal
Pipedrive.DealsApi getDealActivities GET /deals/{id}/activities List activities associated with a deal
Pipedrive.DealsApi getDealChangelog GET /deals/{id}/changelog List updates about deal field values
Pipedrive.DealsApi getDealFiles GET /deals/{id}/files List files attached to a deal
Pipedrive.DealsApi getDealFollowers GET /deals/{id}/followers List followers of a deal
Pipedrive.DealsApi getDealMailMessages GET /deals/{id}/mailMessages List mail messages associated with a deal
Pipedrive.DealsApi getDealParticipants GET /deals/{id}/participants List participants of a deal
Pipedrive.DealsApi getDealParticipantsChangelog GET /deals/{id}/participantsChangelog List updates about participants of a deal
Pipedrive.DealsApi getDealPersons GET /deals/{id}/persons List all persons associated with a deal
Pipedrive.DealsApi getDealProducts GET /deals/{id}/products List products attached to a deal
Pipedrive.DealsApi getDealUpdates GET /deals/{id}/flow List updates about a deal
Pipedrive.DealsApi getDealUsers GET /deals/{id}/permittedUsers List permitted users
Pipedrive.DealsApi getDeals GET /deals Get all deals
Pipedrive.DealsApi getDealsCollection GET /deals/collection Get all deals (BETA)
Pipedrive.DealsApi getDealsSummary GET /deals/summary Get deals summary
Pipedrive.DealsApi getDealsTimeline GET /deals/timeline Get deals timeline
Pipedrive.DealsApi mergeDeals PUT /deals/{id}/merge Merge two deals
Pipedrive.DealsApi searchDeals GET /deals/search Search deals
Pipedrive.DealsApi updateDeal PUT /deals/{id} Update a deal
Pipedrive.DealsApi updateDealProduct PUT /deals/{id}/products/{product_attachment_id} Update the product attached to a deal
Pipedrive.FilesApi addFile POST /files Add file
Pipedrive.FilesApi addFileAndLinkIt POST /files/remote Create a remote file and link it to an item
Pipedrive.FilesApi deleteFile DELETE /files/{id} Delete a file
Pipedrive.FilesApi downloadFile GET /files/{id}/download Download one file
Pipedrive.FilesApi getFile GET /files/{id} Get one file
Pipedrive.FilesApi getFiles GET /files Get all files
Pipedrive.FilesApi linkFileToItem POST /files/remoteLink Link a remote file to an item
Pipedrive.FilesApi updateFile PUT /files/{id} Update file details
Pipedrive.FiltersApi addFilter POST /filters Add a new filter
Pipedrive.FiltersApi deleteFilter DELETE /filters/{id} Delete a filter
Pipedrive.FiltersApi deleteFilters DELETE /filters Delete multiple filters in bulk
Pipedrive.FiltersApi getFilter GET /filters/{id} Get one filter
Pipedrive.FiltersApi getFilterHelpers GET /filters/helpers Get all filter helpers
Pipedrive.FiltersApi getFilters GET /filters Get all filters
Pipedrive.FiltersApi updateFilter PUT /filters/{id} Update filter
Pipedrive.GoalsApi addGoal POST /goals Add a new goal
Pipedrive.GoalsApi deleteGoal DELETE /goals/{id} Delete existing goal
Pipedrive.GoalsApi getGoalResult GET /goals/{id}/results Get result of a goal
Pipedrive.GoalsApi getGoals GET /goals/find Find goals
Pipedrive.GoalsApi updateGoal PUT /goals/{id} Update existing goal
Pipedrive.ItemSearchApi searchItem GET /itemSearch Perform a search from multiple item types
Pipedrive.ItemSearchApi searchItemByField GET /itemSearch/field Perform a search using a specific field from an item type
Pipedrive.LeadLabelsApi addLeadLabel POST /leadLabels Add a lead label
Pipedrive.LeadLabelsApi deleteLeadLabel DELETE /leadLabels/{id} Delete a lead label
Pipedrive.LeadLabelsApi getLeadLabels GET /leadLabels Get all lead labels
Pipedrive.LeadLabelsApi updateLeadLabel PATCH /leadLabels/{id} Update a lead label
Pipedrive.LeadSourcesApi getLeadSources GET /leadSources Get all lead sources
Pipedrive.LeadsApi addLead POST /leads Add a lead
Pipedrive.LeadsApi deleteLead DELETE /leads/{id} Delete a lead
Pipedrive.LeadsApi getLead GET /leads/{id} Get one lead
Pipedrive.LeadsApi getLeadUsers GET /leads/{id}/permittedUsers List permitted users
Pipedrive.LeadsApi getLeads GET /leads Get all leads
Pipedrive.LeadsApi searchLeads GET /leads/search Search leads
Pipedrive.LeadsApi updateLead PATCH /leads/{id} Update a lead
Pipedrive.LegacyTeamsApi addTeam POST /legacyTeams Add a new team
Pipedrive.LegacyTeamsApi addTeamUser POST /legacyTeams/{id}/users Add users to a team
Pipedrive.LegacyTeamsApi deleteTeamUser DELETE /legacyTeams/{id}/users Delete users from a team
Pipedrive.LegacyTeamsApi getTeam GET /legacyTeams/{id} Get a single team
Pipedrive.LegacyTeamsApi getTeamUsers GET /legacyTeams/{id}/users Get all users in a team
Pipedrive.LegacyTeamsApi getTeams GET /legacyTeams Get all teams
Pipedrive.LegacyTeamsApi getUserTeams GET /legacyTeams/user/{id} Get all teams of a user
Pipedrive.LegacyTeamsApi updateTeam PUT /legacyTeams/{id} Update a team
Pipedrive.MailboxApi deleteMailThread DELETE /mailbox/mailThreads/{id} Delete mail thread
Pipedrive.MailboxApi getMailMessage GET /mailbox/mailMessages/{id} Get one mail message
Pipedrive.MailboxApi getMailThread GET /mailbox/mailThreads/{id} Get one mail thread
Pipedrive.MailboxApi getMailThreadMessages GET /mailbox/mailThreads/{id}/mailMessages Get all mail messages of mail thread
Pipedrive.MailboxApi getMailThreads GET /mailbox/mailThreads Get mail threads
Pipedrive.MailboxApi updateMailThreadDetails PUT /mailbox/mailThreads/{id} Update mail thread details
Pipedrive.MeetingsApi deleteUserProviderLink DELETE /meetings/userProviderLinks/{id} Delete the link between a user and the installed video call integration
Pipedrive.MeetingsApi saveUserProviderLink POST /meetings/userProviderLinks Link a user with the installed video call integration
Pipedrive.NoteFieldsApi getNoteFields GET /noteFields Get all note fields
Pipedrive.NotesApi addNote POST /notes Add a note
Pipedrive.NotesApi addNoteComment POST /notes/{id}/comments Add a comment to a note
Pipedrive.NotesApi deleteComment DELETE /notes/{id}/comments/{commentId} Delete a comment related to a note
Pipedrive.NotesApi deleteNote DELETE /notes/{id} Delete a note
Pipedrive.NotesApi getComment GET /notes/{id}/comments/{commentId} Get one comment
Pipedrive.NotesApi getNote GET /notes/{id} Get one note
Pipedrive.NotesApi getNoteComments GET /notes/{id}/comments Get all comments for a note
Pipedrive.NotesApi getNotes GET /notes Get all notes
Pipedrive.NotesApi updateCommentForNote PUT /notes/{id}/comments/{commentId} Update a comment related to a note
Pipedrive.NotesApi updateNote PUT /notes/{id} Update a note
Pipedrive.OrganizationFieldsApi addOrganizationField POST /organizationFields Add a new organization field
Pipedrive.OrganizationFieldsApi deleteOrganizationField DELETE /organizationFields/{id} Delete an organization field
Pipedrive.OrganizationFieldsApi deleteOrganizationFields DELETE /organizationFields Delete multiple organization fields in bulk
Pipedrive.OrganizationFieldsApi getOrganizationField GET /organizationFields/{id} Get one organization field
Pipedrive.OrganizationFieldsApi getOrganizationFields GET /organizationFields Get all organization fields
Pipedrive.OrganizationFieldsApi updateOrganizationField PUT /organizationFields/{id} Update an organization field
Pipedrive.OrganizationRelationshipsApi addOrganizationRelationship POST /organizationRelationships Create an organization relationship
Pipedrive.OrganizationRelationshipsApi deleteOrganizationRelationship DELETE /organizationRelationships/{id} Delete an organization relationship
Pipedrive.OrganizationRelationshipsApi getOrganizationRelationship GET /organizationRelationships/{id} Get one organization relationship
Pipedrive.OrganizationRelationshipsApi getOrganizationRelationships GET /organizationRelationships Get all relationships for organization
Pipedrive.OrganizationRelationshipsApi updateOrganizationRelationship PUT /organizationRelationships/{id} Update an organization relationship
Pipedrive.OrganizationsApi addOrganization POST /organizations Add an organization
Pipedrive.OrganizationsApi addOrganizationFollower POST /organizations/{id}/followers Add a follower to an organization
Pipedrive.OrganizationsApi deleteOrganization DELETE /organizations/{id} Delete an organization
Pipedrive.OrganizationsApi deleteOrganizationFollower DELETE /organizations/{id}/followers/{follower_id} Delete a follower from an organization
Pipedrive.OrganizationsApi deleteOrganizations DELETE /organizations Delete multiple organizations in bulk
Pipedrive.OrganizationsApi getOrganization GET /organizations/{id} Get details of an organization
Pipedrive.OrganizationsApi getOrganizationActivities GET /organizations/{id}/activities List activities associated with an organization
Pipedrive.OrganizationsApi getOrganizationChangelog GET /organizations/{id}/changelog List updates about organization field values
Pipedrive.OrganizationsApi getOrganizationDeals GET /organizations/{id}/deals List deals associated with an organization
Pipedrive.OrganizationsApi getOrganizationFiles GET /organizations/{id}/files List files attached to an organization
Pipedrive.OrganizationsApi getOrganizationFollowers GET /organizations/{id}/followers List followers of an organization
Pipedrive.OrganizationsApi getOrganizationMailMessages GET /organizations/{id}/mailMessages List mail messages associated with an organization
Pipedrive.OrganizationsApi getOrganizationPersons GET /organizations/{id}/persons List persons of an organization
Pipedrive.OrganizationsApi getOrganizationUpdates GET /organizations/{id}/flow List updates about an organization
Pipedrive.OrganizationsApi getOrganizationUsers GET /organizations/{id}/permittedUsers List permitted users
Pipedrive.OrganizationsApi getOrganizations GET /organizations Get all organizations
Pipedrive.OrganizationsApi getOrganizationsCollection GET /organizations/collection Get all organizations (BETA)
Pipedrive.OrganizationsApi mergeOrganizations PUT /organizations/{id}/merge Merge two organizations
Pipedrive.OrganizationsApi searchOrganization GET /organizations/search Search organizations
Pipedrive.OrganizationsApi updateOrganization PUT /organizations/{id} Update an organization
Pipedrive.PermissionSetsApi getPermissionSet GET /permissionSets/{id} Get one permission set
Pipedrive.PermissionSetsApi getPermissionSetAssignments GET /permissionSets/{id}/assignments List permission set assignments
Pipedrive.PermissionSetsApi getPermissionSets GET /permissionSets Get all permission sets
Pipedrive.PersonFieldsApi addPersonField POST /personFields Add a new person field
Pipedrive.PersonFieldsApi deletePersonField DELETE /personFields/{id} Delete a person field
Pipedrive.PersonFieldsApi deletePersonFields DELETE /personFields Delete multiple person fields in bulk
Pipedrive.PersonFieldsApi getPersonField GET /personFields/{id} Get one person field
Pipedrive.PersonFieldsApi getPersonFields GET /personFields Get all person fields
Pipedrive.PersonFieldsApi updatePersonField PUT /personFields/{id} Update a person field
Pipedrive.PersonsApi addPerson POST /persons Add a person
Pipedrive.PersonsApi addPersonFollower POST /persons/{id}/followers Add a follower to a person
Pipedrive.PersonsApi addPersonPicture POST /persons/{id}/picture Add person picture
Pipedrive.PersonsApi deletePerson DELETE /persons/{id} Delete a person
Pipedrive.PersonsApi deletePersonFollower DELETE /persons/{id}/followers/{follower_id} Delete a follower from a person
Pipedrive.PersonsApi deletePersonPicture DELETE /persons/{id}/picture Delete person picture
Pipedrive.PersonsApi deletePersons DELETE /persons Delete multiple persons in bulk
Pipedrive.PersonsApi getPerson GET /persons/{id} Get details of a person
Pipedrive.PersonsApi getPersonActivities GET /persons/{id}/activities List activities associated with a person
Pipedrive.PersonsApi getPersonChangelog GET /persons/{id}/changelog List updates about person field values
Pipedrive.PersonsApi getPersonDeals GET /persons/{id}/deals List deals associated with a person
Pipedrive.PersonsApi getPersonFiles GET /persons/{id}/files List files attached to a person
Pipedrive.PersonsApi getPersonFollowers GET /persons/{id}/followers List followers of a person
Pipedrive.PersonsApi getPersonMailMessages GET /persons/{id}/mailMessages List mail messages associated with a person
Pipedrive.PersonsApi getPersonProducts GET /persons/{id}/products List products associated with a person
Pipedrive.PersonsApi getPersonUpdates GET /persons/{id}/flow List updates about a person
Pipedrive.PersonsApi getPersonUsers GET /persons/{id}/permittedUsers List permitted users
Pipedrive.PersonsApi getPersons GET /persons Get all persons
Pipedrive.PersonsApi getPersonsCollection GET /persons/collection Get all persons (BETA)
Pipedrive.PersonsApi mergePersons PUT /persons/{id}/merge Merge two persons
Pipedrive.PersonsApi searchPersons GET /persons/search Search persons
Pipedrive.PersonsApi updatePerson PUT /persons/{id} Update a person
Pipedrive.PipelinesApi addPipeline POST /pipelines Add a new pipeline
Pipedrive.PipelinesApi deletePipeline DELETE /pipelines/{id} Delete a pipeline
Pipedrive.PipelinesApi getPipeline GET /pipelines/{id} Get one pipeline
Pipedrive.PipelinesApi getPipelineConversionStatistics GET /pipelines/{id}/conversion_statistics Get deals conversion rates in pipeline
Pipedrive.PipelinesApi getPipelineDeals GET /pipelines/{id}/deals Get deals in a pipeline
Pipedrive.PipelinesApi getPipelineMovementStatistics GET /pipelines/{id}/movement_statistics Get deals movements in pipeline
Pipedrive.PipelinesApi getPipelines GET /pipelines Get all pipelines
Pipedrive.PipelinesApi updatePipeline PUT /pipelines/{id} Update a pipeline
Pipedrive.ProductFieldsApi addProductField POST /productFields Add a new product field
Pipedrive.ProductFieldsApi deleteProductField DELETE /productFields/{id} Delete a product field
Pipedrive.ProductFieldsApi deleteProductFields DELETE /productFields Delete multiple product fields in bulk
Pipedrive.ProductFieldsApi getProductField GET /productFields/{id} Get one product field
Pipedrive.ProductFieldsApi getProductFields GET /productFields Get all product fields
Pipedrive.ProductFieldsApi updateProductField PUT /productFields/{id} Update a product field
Pipedrive.ProductsApi addProduct POST /products Add a product
Pipedrive.ProductsApi addProductFollower POST /products/{id}/followers Add a follower to a product
Pipedrive.ProductsApi deleteProduct DELETE /products/{id} Delete a product
Pipedrive.ProductsApi deleteProductFollower DELETE /products/{id}/followers/{follower_id} Delete a follower from a product
Pipedrive.ProductsApi getProduct GET /products/{id} Get one product
Pipedrive.ProductsApi getProductDeals GET /products/{id}/deals Get deals where a product is attached to
Pipedrive.ProductsApi getProductFiles GET /products/{id}/files List files attached to a product
Pipedrive.ProductsApi getProductFollowers GET /products/{id}/followers List followers of a product
Pipedrive.ProductsApi getProductUsers GET /products/{id}/permittedUsers List permitted users
Pipedrive.ProductsApi getProducts GET /products Get all products
Pipedrive.ProductsApi searchProducts GET /products/search Search products
Pipedrive.ProductsApi updateProduct PUT /products/{id} Update a product
Pipedrive.ProjectTemplatesApi getProjectTemplate GET /projectTemplates/{id} Get details of a template
Pipedrive.ProjectTemplatesApi getProjectTemplates GET /projectTemplates Get all project templates
Pipedrive.ProjectTemplatesApi getProjectsBoard GET /projects/boards/{id} Get details of a board
Pipedrive.ProjectTemplatesApi getProjectsPhase GET /projects/phases/{id} Get details of a phase
Pipedrive.ProjectsApi addProject POST /projects Add a project
Pipedrive.ProjectsApi archiveProject POST /projects/{id}/archive Archive a project
Pipedrive.ProjectsApi deleteProject DELETE /projects/{id} Delete a project
Pipedrive.ProjectsApi getProject GET /projects/{id} Get details of a project
Pipedrive.ProjectsApi getProjectActivities GET /projects/{id}/activities Returns project activities
Pipedrive.ProjectsApi getProjectGroups GET /projects/{id}/groups Returns project groups
Pipedrive.ProjectsApi getProjectPlan GET /projects/{id}/plan Returns project plan
Pipedrive.ProjectsApi getProjectTasks GET /projects/{id}/tasks Returns project tasks
Pipedrive.ProjectsApi getProjects GET /projects Get all projects
Pipedrive.ProjectsApi getProjectsBoards GET /projects/boards Get all project boards
Pipedrive.ProjectsApi getProjectsPhases GET /projects/phases Get project phases
Pipedrive.ProjectsApi putProjectPlanActivity PUT /projects/{id}/plan/activities/{activityId} Update activity in project plan
Pipedrive.ProjectsApi putProjectPlanTask PUT /projects/{id}/plan/tasks/{taskId} Update task in project plan
Pipedrive.ProjectsApi updateProject PUT /projects/{id} Update a project
Pipedrive.RecentsApi getRecents GET /recents Get recents
Pipedrive.RolesApi addOrUpdateRoleSetting POST /roles/{id}/settings Add or update role setting
Pipedrive.RolesApi addRole POST /roles Add a role
Pipedrive.RolesApi addRoleAssignment POST /roles/{id}/assignments Add role assignment
Pipedrive.RolesApi deleteRole DELETE /roles/{id} Delete a role
Pipedrive.RolesApi deleteRoleAssignment DELETE /roles/{id}/assignments Delete a role assignment
Pipedrive.RolesApi getRole GET /roles/{id} Get one role
Pipedrive.RolesApi getRoleAssignments GET /roles/{id}/assignments List role assignments
Pipedrive.RolesApi getRolePipelines GET /roles/{id}/pipelines List pipeline visibility for a role
Pipedrive.RolesApi getRoleSettings GET /roles/{id}/settings List role settings
Pipedrive.RolesApi getRoles GET /roles Get all roles
Pipedrive.RolesApi updateRole PUT /roles/{id} Update role details
Pipedrive.RolesApi updateRolePipelines PUT /roles/{id}/pipelines Update pipeline visibility for a role
Pipedrive.StagesApi addStage POST /stages Add a new stage
Pipedrive.StagesApi deleteStage DELETE /stages/{id} Delete a stage
Pipedrive.StagesApi deleteStages DELETE /stages Delete multiple stages in bulk
Pipedrive.StagesApi getStage GET /stages/{id} Get one stage
Pipedrive.StagesApi getStageDeals GET /stages/{id}/deals Get deals in a stage
Pipedrive.StagesApi getStages GET /stages Get all stages
Pipedrive.StagesApi updateStage PUT /stages/{id} Update stage details
Pipedrive.SubscriptionsApi addRecurringSubscription POST /subscriptions/recurring Add a recurring subscription
Pipedrive.SubscriptionsApi addSubscriptionInstallment POST /subscriptions/installment Add an installment subscription
Pipedrive.SubscriptionsApi cancelRecurringSubscription PUT /subscriptions/recurring/{id}/cancel Cancel a recurring subscription
Pipedrive.SubscriptionsApi deleteSubscription DELETE /subscriptions/{id} Delete a subscription
Pipedrive.SubscriptionsApi findSubscriptionByDeal GET /subscriptions/find/{dealId} Find subscription by deal
Pipedrive.SubscriptionsApi getSubscription GET /subscriptions/{id} Get details of a subscription
Pipedrive.SubscriptionsApi getSubscriptionPayments GET /subscriptions/{id}/payments Get all payments of a subscription
Pipedrive.SubscriptionsApi updateRecurringSubscription PUT /subscriptions/recurring/{id} Update a recurring subscription
Pipedrive.SubscriptionsApi updateSubscriptionInstallment PUT /subscriptions/installment/{id} Update an installment subscription
Pipedrive.TasksApi addTask POST /tasks Add a task
Pipedrive.TasksApi deleteTask DELETE /tasks/{id} Delete a task
Pipedrive.TasksApi getTask GET /tasks/{id} Get details of a task
Pipedrive.TasksApi getTasks GET /tasks Get all tasks
Pipedrive.TasksApi updateTask PUT /tasks/{id} Update a task
Pipedrive.UserConnectionsApi getUserConnections GET /userConnections Get all user connections
Pipedrive.UserSettingsApi getUserSettings GET /userSettings List settings of an authorized user
Pipedrive.UsersApi addUser POST /users Add a new user
Pipedrive.UsersApi findUsersByName GET /users/find Find users by name
Pipedrive.UsersApi getCurrentUser GET /users/me Get current user data
Pipedrive.UsersApi getUser GET /users/{id} Get one user
Pipedrive.UsersApi getUserFollowers GET /users/{id}/followers List followers of a user
Pipedrive.UsersApi getUserPermissions GET /users/{id}/permissions List user permissions
Pipedrive.UsersApi getUserRoleAssignments GET /users/{id}/roleAssignments List role assignments
Pipedrive.UsersApi getUserRoleSettings GET /users/{id}/roleSettings List user role settings
Pipedrive.UsersApi getUsers GET /users Get all users
Pipedrive.UsersApi updateUser PUT /users/{id} Update user details
Pipedrive.WebhooksApi addWebhook POST /webhooks Create a new Webhook
Pipedrive.WebhooksApi deleteWebhook DELETE /webhooks/{id} Delete existing Webhook
Pipedrive.WebhooksApi getWebhooks GET /webhooks Get all Webhooks

Documentation for Models