/meetings/userProviderLinks
A video calling provider must call this endpoint after a user has installed the video calling app so that the new user’s information is sent.
application/json
MeetingsLinkUserProviderRequest
| Property | Type | Required |
|---|---|---|
| user_id | integer | required |
| company_id | integer | required |
| user_provider_id | string | required |
| marketplace_client_id | string | required |
User provider link was successfully created
No permission to create user provider link
POST /meetings/userProviderLinks
/meetings/userProviderLinks/{id}
A video calling provider must call this endpoint to remove the link between a user and the installed video calling app.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | Unique identifier linking a user to the installed integration |
User provider link successfully removed
No permission to remove user provider link
Incorrect parameter provided
DELETE /meetings/userProviderLinks/{id}
/noteFields
Returns data about all note fields.
Success
GET /noteFields
/notes
Returns all notes.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| user_id | query | optional | integer | The ID of the user whose notes to fetch. If omitted, notes by all users will be returned. |
| lead_id | query | optional | string | The ID of the lead which notes to fetch. If omitted, notes about all leads will be returned. |
| deal_id | query | optional | integer | The ID of the deal which notes to fetch. If omitted, notes about all deals will be returned. |
| person_id | query | optional | integer | The ID of the person whose notes to fetch. If omitted, notes about all persons will be returned. |
| org_id | query | optional | integer | The ID of the organization which notes to fetch. If omitted, notes about all organizations will be returned. |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
| sort | query | optional | string | The field names and sorting mode separated by a comma ( |
| start_date | query | optional | string | The date in format of YYYY-MM-DD from which notes to fetch |
| end_date | query | optional | string | The date in format of YYYY-MM-DD until which notes to fetch to |
| pinned_to_lead_flag | query | optional | number | If set, the results are filtered by note to lead pinning state |
| pinned_to_deal_flag | query | optional | number | If set, the results are filtered by note to deal pinning state |
| pinned_to_organization_flag | query | optional | number | If set, the results are filtered by note to organization pinning state |
| pinned_to_person_flag | query | optional | number | If set, the results are filtered by note to person pinning state |
Get all notes
GET /notes
/notes
Adds a new note.
application/json
NotesCreateNoteRequest
| Property | Type | Required |
|---|---|---|
| org_id | integer | optional |
| content | string | required |
| deal_id | integer | optional |
| lead_id | string | optional |
| person_id | integer | optional |
| user_id | integer | optional |
| add_time | string | optional |
| pinned_to_deal_flag | number | optional |
| pinned_to_lead_flag | number | optional |
| pinned_to_person_flag | number | optional |
| pinned_to_organization_flag | number | optional |
Add, update or get a note
POST /notes
/notes/{id}
Deletes a specific note.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the note |
Delete a note
DELETE /notes/{id}
/notes/{id}
Returns details about a specific note.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the note |
Add, update or get a note
GET /notes/{id}
/notes/{id}
Updates a note.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the note |
application/json
NotesUpdateNoteRequest
| Property | Type | Required |
|---|---|---|
| content | string | optional |
| org_id | integer | optional |
| deal_id | integer | optional |
| lead_id | string | optional |
| person_id | integer | optional |
| user_id | integer | optional |
| add_time | string | optional |
| pinned_to_deal_flag | number | optional |
| pinned_to_lead_flag | number | optional |
| pinned_to_person_flag | number | optional |
| pinned_to_organization_flag | number | optional |
Add, update or get a note
PUT /notes/{id}
/notes/{id}/comments
Returns all comments associated with a note.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the note |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
Get all comments
GET /notes/{id}/comments
/notes/{id}/comments
Adds a new comment to a note.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the note |
application/json
NotesAddNewCommentRequest
| Property | Type | Required |
|---|---|---|
| content | string | required |
Add, update or get a comment
POST /notes/{id}/comments
/notes/{id}/comments/{commentId}
Deletes a comment.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the note |
| commentId | path | required | string | The ID of the comment |
Delete a comment
DELETE /notes/{id}/comments/{commentId}
/notes/{id}/comments/{commentId}
Returns the details of a comment.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the note |
| commentId | path | required | string | The ID of the comment |
Add, update or get a comment
GET /notes/{id}/comments/{commentId}
/notes/{id}/comments/{commentId}
Updates a comment related to a note.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the note |
| commentId | path | required | string | The ID of the comment |
application/json
NotesUpdateCommentRequest
| Property | Type | Required |
|---|---|---|
| content | string | required |
Add, update or get a comment
PUT /notes/{id}/comments/{commentId}
/oauth/authorize
Authorize a user by redirecting them to the Pipedrive OAuth authorization page and request their permissions to act on their behalf. This step is necessary to implement only when you allow app installation outside of the Marketplace.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| client_id | query | required | string | The client ID provided to you by the Pipedrive Marketplace when you register your app |
| redirect_uri | query | required | string | The callback URL you provided when you registered your app. Authorization code will be sent to that URL (if it matches with the value you entered in the registration form) if a user approves the app install. Or, if a customer declines, the corresponding error will also be sent to this URL. |
| state | query | optional | string | You may pass any random string as the state parameter and the same string will be returned to your app after a user authorizes access. It may be used to store the user’s session ID from your app or distinguish different responses. Using state may increase security; see RFC-6749. The state parameter is not automatically available in Marketplace Manager. To enable it for your app, please write to us at marketplace.devs@pipedrive.com. |
Authorize user in the app.
GET /oauth/authorize
/oauth/token
The access_token has a lifetime. After a period of time, which was returned to you in expires_in JSON property, the access_token will be invalid, and you can no longer use it to get data from our API. To refresh the access_token, you must use the refresh_token.
application/x-www-form-urlencoded
OauthRefreshTokenRequest
| Property | Type | Required |
|---|---|---|
| grant_type | string | optional |
| refresh_token | string | optional |
Returns user Oauth2 tokens.
POST /oauth/token
/organizationFields
Marks multiple fields as deleted.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| ids | query | required | string | The comma-separated field IDs to delete |
Success
DELETE /organizationFields
/organizationFields
Returns data about all organization fields.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
Success
GET /organizationFields
/organizationFields
Adds a new organization field. For more information, see the tutorial for adding a new custom field.
application/json
OrganizationFieldsAddNewFieldRequest
| Property | Type | Required |
|---|---|---|
| name | string | required |
| options | array | optional |
| add_visible_flag | boolean | optional |
| field_type | string | required |
Success
POST /organizationFields
/organizationFields/{id}
Marks a field as deleted. For more information, see the tutorial for deleting a custom field.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the field |
Success
DELETE /organizationFields/{id}
/organizationFields/{id}
Returns data about a specific organization field.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the field |
Success
GET /organizationFields/{id}
/organizationFields/{id}
Updates an organization field. For more information, see the tutorial for updating custom fields’ values.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the field |
application/json
OrganizationFieldsUpdateFieldRequest
| Property | Type | Required |
|---|---|---|
| name | string | optional |
| options | array | optional |
| add_visible_flag | boolean | optional |
Success
PUT /organizationFields/{id}
/organizationRelationships
Gets all of the relationships for a supplied organization ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| org_id | query | required | integer | The ID of the organization to get relationships for |
Success
GET /organizationRelationships
/organizationRelationships
Creates and returns an organization relationship.
application/json
OrganizationRelationshipsCreateNewRelationshipRequest
| Property | Type | Required |
|---|---|---|
| type | string | required |
| org_id | integer | optional |
| rel_owner_org_id | integer | required |
| rel_linked_org_id | integer | required |
Success
POST /organizationRelationships
/organizationRelationships/{id}
Deletes an organization relationship and returns the deleted ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization relationship |
Success
DELETE /organizationRelationships/{id}
/organizationRelationships/{id}
Finds and returns an organization relationship from its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization relationship |
| org_id | query | optional | integer | The ID of the base organization for the returned calculated values |
Success
GET /organizationRelationships/{id}
/organizationRelationships/{id}
Updates and returns an organization relationship.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization relationship |
application/json
OrganizationRelationshipsUpdateAndReturnRequest
| Property | Type | Required |
|---|---|---|
| type | string | optional |
| org_id | integer | optional |
| rel_owner_org_id | integer | optional |
| rel_linked_org_id | integer | optional |
Success
PUT /organizationRelationships/{id}
/organizations
Marks multiple organizations as deleted. After 30 days, the organizations will be permanently deleted.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| ids | query | required | string | The comma-separated IDs that will be deleted |
Success
DELETE /organizations
/organizations
Returns all organizations.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| user_id | query | optional | integer | If supplied, only organizations owned by the given user will be returned. However, |
| filter_id | query | optional | integer | The ID of the filter to use |
| first_char | query | optional | string | If supplied, only organizations whose name starts with the specified letter will be returned (case-insensitive) |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
| sort | query | optional | string | The field names and sorting mode separated by a comma ( |
Success
GET /organizations
/organizations
Adds a new organization. Note that you can supply additional custom fields along with the request that are not described here. These custom fields are different for each Pipedrive account and can be recognized by long hashes as keys. To determine which custom fields exists, fetch the organizationFields and look for key values. For more information, see the tutorial for adding an organization.
application/json
OrganizationsAddNewOrganizationRequest
| Property | Type | Required |
|---|---|---|
| name | string | required |
| add_time | string | optional |
| label | integer | optional |
| owner_id | integer | optional |
| visible_to | string | optional |
Success
POST /organizations
/organizations/collection
Returns all organizations. This is a cursor-paginated endpoint that is currently in BETA. For more information, please refer to our documentation on pagination. Please note that only global admins (those with global permissions) can access these endpoints. Users with regular permissions will receive a 403 response. Read more about global permissions here.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| cursor | query | optional | string | For pagination, the marker (an opaque string value) representing the first item on the next page |
| limit | query | optional | integer | For pagination, the limit of entries to be returned. If not provided, 100 items will be returned. Please note that a maximum value of 500 is allowed. |
| since | query | optional | string | The time boundary that points to the start of the range of data. Datetime in ISO 8601 format. E.g. 2022-11-01 08:55:59. Operates on the |
| until | query | optional | string | The time boundary that points to the end of the range of data. Datetime in ISO 8601 format. E.g. 2022-11-01 08:55:59. Operates on the |
| owner_id | query | optional | integer | If supplied, only organizations owned by the given user will be returned |
| first_char | query | optional | string | If supplied, only organizations whose name starts with the specified letter will be returned (case-insensitive) |
Success
Forbidden response
GET /organizations/collection
/organizations/search
Searches all organizations by name, address, notes and/or custom fields. This endpoint is a wrapper of /v1/itemSearch with a narrower OAuth scope.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| term | query | required | string | The search term to look for. Minimum 2 characters (or 1 if using |
| fields | query | optional | string | A comma-separated string array. The fields to perform the search from. Defaults to all of them. Only the following custom field types are searchable: |
| exact_match | query | optional | boolean | When enabled, only full exact matches against the given term are returned. It is not case sensitive. |
| start | query | optional | integer | Pagination start. Note that the pagination is based on main results and does not include related items when using |
| limit | query | optional | integer | Items shown per page |
Success
GET /organizations/search
/organizations/{id}
Marks an organization as deleted. After 30 days, the organization will be permanently deleted.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
Success
DELETE /organizations/{id}
/organizations/{id}
Returns the details of an organization. Note that this also returns some additional fields which are not present when asking for all organizations. Also note that custom fields appear as long hashes in the resulting data. These hashes can be mapped against the key value of organizationFields.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
Success
GET /organizations/{id}
/organizations/{id}
Updates the properties of an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
application/json
OrganizationsUpdatePropertiesRequest
| Property | Type | Required |
|---|---|---|
| name | string | optional |
| label | integer | optional |
| owner_id | integer | optional |
| visible_to | string | optional |
Success
PUT /organizations/{id}
/organizations/{id}/activities
Lists activities associated with an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
| done | query | optional | number | Whether the activity is done or not. 0 = Not done, 1 = Done. If omitted returns both Done and Not done activities. |
| exclude | query | optional | string | A comma-separated string of activity IDs to exclude from result |
Success
GET /organizations/{id}/activities
/organizations/{id}/changelog
Lists updates about field values of an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
| cursor | query | optional | string | For pagination, the marker (an opaque string value) representing the first item on the next page |
| limit | query | optional | integer | Items shown per page |
Get changelog of an organization
GET /organizations/{id}/changelog
/organizations/{id}/deals
Lists deals associated with an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
| status | query | optional | string | Only fetch deals with a specific status. If omitted, all not deleted deals are returned. If set to deleted, deals that have been deleted up to 30 days ago will be included. |
| sort | query | optional | string | The field names and sorting mode separated by a comma ( |
| only_primary_association | query | optional | number | If set, only deals that are directly associated to the organization are fetched. If not set (default), all deals are fetched that are either directly or indirectly related to the organization. Indirect relations include relations through custom, organization-type fields and through persons of the given organization. |
Success
GET /organizations/{id}/deals
/organizations/{id}/files
Lists files associated with an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
| sort | query | optional | string | The field names and sorting mode separated by a comma ( |
Success
GET /organizations/{id}/files
/organizations/{id}/flow
Lists updates about an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
| all_changes | query | optional | string | Whether to show custom field updates or not. 1 = Include custom field changes. If omitted, returns changes without custom field updates. |
| items | query | optional | string | A comma-separated string for filtering out item specific updates. (Possible values - activity, plannedActivity, note, file, change, deal, follower, participant, mailMessage, mailMessageWithAttachment, invoice, activityFile, document). |
Get the organization updates
GET /organizations/{id}/flow
/organizations/{id}/followers
Lists the followers of an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
Success
GET /organizations/{id}/followers
/organizations/{id}/followers
Adds a follower to an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
application/json
OrganizationsAddFollowerRequest
| Property | Type | Required |
|---|---|---|
| user_id | integer | required |
Success
POST /organizations/{id}/followers
/organizations/{id}/followers/{follower_id}
Deletes a follower from an organization. You can retrieve the follower_id from the List followers of an organization endpoint.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
| follower_id | path | required | integer | The ID of the follower |
Success
DELETE /organizations/{id}/followers/{follower_id}
/organizations/{id}/mailMessages
Lists mail messages associated with an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
Success
GET /organizations/{id}/mailMessages
/organizations/{id}/merge
Merges an organization with another organization. For more information, see the tutorial for merging two organizations.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
application/json
OrganizationsMergeTwoRequest
| Property | Type | Required |
|---|---|---|
| merge_with_id | integer | required |
Success
PUT /organizations/{id}/merge
/organizations/{id}/permittedUsers
List users permitted to access an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
Success
GET /organizations/{id}/permittedUsers
/organizations/{id}/persons
Lists persons associated with an organization.
If a company uses the Campaigns product, then this endpoint will also return the data.marketing_status field.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the organization |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
Success
GET /organizations/{id}/persons
/permissionSets
Returns data about all permission sets.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| app | query | optional | string | The app to filter the permission sets by |
Get all permissions
GET /permissionSets
/permissionSets/{id}
Returns data about a specific permission set.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID of the permission set |
The permission set of a specific user ID
If the user ID has no assignments, then it will return NotFound
GET /permissionSets/{id}
/permissionSets/{id}/assignments
Returns the list of assignments for a permission set.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID of the permission set |
| start | query | optional | integer | Pagination start |
| limit | query | optional | integer | Items shown per page |
The assignments of a specific user ID
If the user ID has no assignments, then it will return NotFound
GET /permissionSets/{id}/assignments
/personFields
Marks multiple fields as deleted.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| ids | query | required | string | The comma-separated field IDs to delete |
Success
DELETE /personFields