Pipedrive PermissionSets API

Permission sets define what users in the account can do: which actions they are allowed to perform and which features they can access. Permission sets are app-specific, where apps are large parts of functionality, e.g., sales app, which allows accessing sales data, global permissions, which oversee cross-product features (for example contacts, insights, products) or account settings, which provides access to billing, user management, company settings and security center. Some permission sets with types such as admin and regular are pre-created for the account, while other custom ones can be created by users (depending on the tier the account is on).

Documentation

📖
Documentation
https://developers.pipedrive.com/
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Deals
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Leads
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Persons
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Organizations
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Activities
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Pipelines
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Stages
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Products
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Notes
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Files
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Mailbox
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/CallLogs
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Users
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Roles
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Filters
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Goals
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Subscriptions
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Projects
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/DealFields
📖
APIReference
https://developers.pipedrive.com/docs/api/v1/Webhooks
📖
Documentation
https://pipedrive.readme.io/docs/guide-for-webhooks-v2
📖
Documentation
https://developers.pipedrive.com/docs/api/v1/oauth2

Specifications

Other Resources

OpenAPI Specification

pipedrive-permissionsets-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Pipedrive API v1 Activities PermissionSets API
  version: 1.0.0
  description: 'Activities are appointments/tasks/events on a calendar that can be associated with a deal, a lead, a person and an organization. Activities can be of different type (such as call, meeting, lunch or a custom type - see ActivityTypes object) and can be assigned to a particular user. Note that activities can also be created without a specific date/time.

    '
servers:
- url: https://api.pipedrive.com/v1
tags:
- name: PermissionSets
  description: 'Permission sets define what users in the account can do: which actions they are allowed to perform and which features they can access. Permission sets are app-specific, where apps are large parts of functionality, e.g., sales app, which allows accessing sales data, global permissions, which oversee cross-product features (for example contacts, insights, products) or account settings, which provides access to billing, user management, company settings and security center. Some permission sets with types such as admin and regular are pre-created for the account, while other custom ones can be created by users (depending on the tier the account is on).

    '
paths:
  /permissionSets:
    get:
      summary: Get all permission sets
      description: Returns data about all permission sets.
      x-token-cost: 20
      operationId: getPermissionSets
      tags:
      - PermissionSets
      security:
      - api_key: []
      - oauth2:
        - admin
      parameters:
      - in: query
        name: app
        description: The app to filter the permission sets by
        schema:
          type: string
          enum:
          - sales
          - projects
          - campaigns
          - global
          - account_settings
      responses:
        '200':
          description: Get all permissions
          content:
            application/json:
              schema:
                title: GetPermissionSetsResponse
                allOf:
                - title: baseResponse
                  type: object
                  properties:
                    success:
                      type: boolean
                      description: If the response is successful or not
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        type: object
                        title: PermissionSet
                        properties:
                          id:
                            type: string
                            description: The ID of user permission set
                          name:
                            type: string
                            description: The name of the permission set
                          description:
                            type: string
                            description: The description of the permission set
                          app:
                            type: string
                            description: The app that permission set belongs to
                            enum:
                            - sales
                            - projects
                            - campaigns
                            - global
                            - account_settings
                          type:
                            type: string
                            description: The type of permission set
                            enum:
                            - admin
                            - manager
                            - regular
                            - custom
                          assignment_count:
                            type: integer
                            description: The number of users assigned to this permission set
                      description: The array of permission set
              example:
                success: true
                data:
                - id: 62cc4d7f-4038-4352-abf3-a8c1c822b631
                  name: Deals admin
                  description: See and edit all sales data (deals, leads), manage company-level sales setup (such as lost reasons and pipelines)
                  app: sales
                  type: admin
                  assignment_count: 1
                - id: f07d229d-088a-4144-a40f-1fe64295d180
                  name: Deals regular user
                  description: Access to sales data (deals, leads) and available actions may be limited depending on the custom permission setup. This set is the default for new users.
                  app: sales
                  type: regular
                  assignment_count: 3
                - id: 233b7976-39bd-43a9-b305-ef3a2b0998e5
                  name: Global admin
                  description: See and edit all cross-product data (such as contacts, activities, reports) and access related features
                  app: global
                  type: admin
                  assignment_count: 1
                - id: ec8a42e5-1842-490d-9113-b3a3b4b1c0a9
                  name: Global regular user
                  description: Access to cross-product data (such as contacts, activities, reports) and available actions may be limited depending on the custom permission setup. This set is the default for new users.
                  app: global
                  type: regular
                  assignment_count: 2
                - id: 982c5ce5-b8ba-4b47-b102-9da024f4b990
                  name: Account settings
                  description: Access company account level features and setup (billing, security center, company settings, user management)
                  app: account_settings
                  type: admin
                  assignment_count: 1
  /permissionSets/{id}:
    get:
      summary: Get one permission set
      description: Returns data about a specific permission set.
      x-token-cost: 2
      operationId: getPermissionSet
      tags:
      - PermissionSets
      security:
      - api_key: []
      - oauth2:
        - admin
      parameters:
      - in: path
        name: id
        description: The ID of the permission set
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The permission set of a specific user ID
          content:
            application/json:
              schema:
                title: GetPermissionSetResponse
                allOf:
                - type: object
                  title: PermissionSet
                  properties:
                    id:
                      type: string
                      description: The ID of user permission set
                    name:
                      type: string
                      description: The name of the permission set
                    description:
                      type: string
                      description: The description of the permission set
                    app:
                      type: string
                      description: The app that permission set belongs to
                      enum:
                      - sales
                      - projects
                      - campaigns
                      - global
                      - account_settings
                    type:
                      type: string
                      description: The type of permission set
                      enum:
                      - admin
                      - manager
                      - regular
                      - custom
                    assignment_count:
                      type: integer
                      description: The number of users assigned to this permission set
                - type: object
                  properties:
                    contents:
                      type: array
                      description: A permission assigned to this permission set
                      items:
                        type: string
              example:
                success: true
                data:
                - id: f07d229d-088a-4144-a40f-1fe64295d180
                  name: Deals regular user
                  description: Access to sales data (deals, leads) and available actions may be limited depending on the custom permission setup. This set is the default for new users.
                  app: sales
                  assignment_count: 3
                  contents:
                  - can_add_products
                  - can_bulk_edit_items
                  - can_change_visibility_of_items
                  - can_delete_activities
                  - can_edit_products
                  - can_edit_shared_filters
                  - can_export_data_from_lists
                  - can_see_deals_list_summary
                  - can_see_other_users
                  - can_share_filters
                  - can_use_api
                  - can_use_email_tracking
        '404':
          description: If the user ID has no assignments, then it will return NotFound
          content:
            application/json:
              schema:
                title: NotFoundResponse
  /permissionSets/{id}/assignments:
    get:
      summary: List permission set assignments
      description: Returns the list of assignments for a permission set.
      x-token-cost: 20
      operationId: getPermissionSetAssignments
      tags:
      - PermissionSets
      security:
      - api_key: []
      - oauth2:
        - admin
      parameters:
      - in: path
        name: id
        description: The ID of the permission set
        required: true
        schema:
          type: string
      - in: query
        name: start
        description: Pagination start
        schema:
          type: integer
          default: 0
      - in: query
        name: limit
        description: Items shown per page
        schema:
          type: integer
      responses:
        '200':
          description: The assignments of a specific user ID
          content:
            application/json:
              schema:
                title: GetUserAssignmentsToPermissionSetResponse
                allOf:
                - title: baseResponse
                  type: object
                  properties:
                    success:
                      type: boolean
                      description: If the response is successful or not
                - type: object
                  properties:
                    data:
                      type: array
                      items:
                        type: object
                        properties:
                          user_id:
                            type: integer
                            description: The ID of the user in the permission set
                          permission_set_id:
                            type: string
                            description: The ID of the permission set
                          name:
                            type: string
                            description: The name of the permission set
                      description: An array of the assignments of the user
              example:
                success: true
                data:
                - user_id: 10
                  permission_set_id: f07d229d-088a-4144-a40f-1fe64295d180
                  name: Deals regular user
        '404':
          description: If the user ID has no assignments, then it will return NotFound
          content:
            application/json:
              schema:
                title: NotFoundResponse
components:
  securitySchemes:
    basic_authentication:
      type: http
      scheme: basic
      description: Base 64 encoded string containing the `client_id` and `client_secret` values. The header value should be `Basic <base64(client_id:client_secret)>`.
    api_key:
      type: apiKey
      name: x-api-token
      in: header
    oauth2:
      type: oauth2
      description: For more information, see https://pipedrive.readme.io/docs/marketplace-oauth-authorization
      flows:
        authorizationCode:
          authorizationUrl: https://oauth.pipedrive.com/oauth/authorize
          tokenUrl: https://oauth.pipedrive.com/oauth/token
          refreshUrl: https://oauth.pipedrive.com/oauth/token
          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
            deal-fields:full: Create, read, update and delete deal fields
            product-fields:full: Create, read, update and delete product fields
            contact-fields:full: Create, read, update and delete person and organization fields
            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