Activities

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.

Get all activities assigned to a particular user

Copy link

Returns all activities assigned to a particular user.

API v1
Request
GET

/v1/activities

Query parameters

user_id

integer

The ID of the user whose activities will be fetched. If omitted, the user associated with the API token will be used. If 0, activities for all company users will be fetched based on the permission sets.

filter_id

integer

The ID of the filter to use (will narrow down results if used together with user_id parameter)

type

string

The type of the activity, can be one type or multiple types separated by a comma. This is in correlation with the key_string parameter of ActivityTypes.

limit

integer

For pagination, the limit of entries to be returned. If not provided, 100 items will be returned.

start

integer

For pagination, the position that represents the first result for the page

start_date

string

Use the activity due date where you wish to begin fetching activities from. Insert due date in YYYY-MM-DD format.

Format

date

end_date

string

Use the activity due date where you wish to stop fetching activities from. Insert due date in YYYY-MM-DD format.

Format

date

done

number

Whether the activity is done or not. 0 = Not done, 1 = Done. If omitted returns both done and not done activities.

Values

0

1

Response
200

OK

Expand all
Copy code
    • true
    • [ ... ]
      • { ... }
        • { ... }

        Get all activities (BETA)

        Copy link

        Returns all activities. 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.

        API v1
        Request
        GET

        /v1/activities/collection

        Query parameters

        cursor

        string

        For pagination, the marker (an opaque string value) representing the first item on the next page

        limit

        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

        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 update_time field.

        until

        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 update_time field.

        user_id

        integer

        The ID of the user whose activities will be fetched. If omitted, all activities are returned.

        done

        boolean

        Whether the activity is done or not. false = Not done, true = Done. If omitted, returns both done and not done activities.

        type

        string

        The type of the activity, can be one type or multiple types separated by a comma. This is in correlation with the key_string parameter of ActivityTypes.

        Response
        200

        OK

        Expand all
        Copy code
          • true
          • [ ... ]
            • { ... }

            Get details of an activity

            Copy link

            Returns the details of a specific activity.

            API v1
            Request
            GET

            /v1/activities/{id}

            Path parameters

            id

            integer

            required

            The ID of the activity

            Response
            200

            OK

            Expand all
            Copy code
              • true
              • { ... }
                • { ... }

                Add an activity

                Copy link

                Adds a new activity. Includes more_activities_scheduled_in_context property in response's additional_data which indicates whether there are more undone activities scheduled with the same deal, person or organization (depending on the supplied data). For more information, see the tutorial for adding an activity.

                Starting from 30.09.2024, activity attendees will receive updates only if the activity owner has an active calendar sync

                API v1
                Request
                POST

                /v1/activities

                Body parameters

                application/json

                due_date

                string

                The due date of the activity. Format: YYYY-MM-DD

                Format

                date

                due_time

                string

                The due time of the activity in UTC. Format: HH:MM

                duration

                string

                The duration of the activity. Format: HH:MM

                deal_id

                integer

                The ID of the deal this activity is associated with

                lead_id

                string

                The ID of the lead in the UUID format this activity is associated with

                Format

                uuid

                person_id

                integer

                The ID of the person this activity is associated with

                project_id

                integer

                The ID of the project this activity is associated with

                org_id

                integer

                The ID of the organization this activity is associated with

                location

                string

                The address of the activity.

                public_description

                string

                Additional details about the activity that is synced to your external calendar. Unlike the note added to the activity, the description is publicly visible to any guests added to the activity.

                note

                string

                The note of the activity (HTML format)

                subject

                string

                The subject of the activity. When value for subject is not set, it will be given a default value Call.

                type

                string

                The type of the activity. This is in correlation with the key_string parameter of ActivityTypes. When value for type is not set, it will be given a default value Call.

                user_id

                integer

                The ID of the user whom the activity is assigned to. If omitted, the activity is assigned to the authorized user.

                participants

                array

                List of multiple persons (participants) this activity is associated with. If omitted, single participant from person_id field is used. It requires a structure as follows: [{"person_id":1,"primary_flag":true}]

                busy_flag

                boolean

                Set the activity as 'Busy' or 'Free'. If the flag is set to true, your customers will not be able to book that time slot through any Scheduler links. The flag can also be unset by never setting it or overriding it with null. When the value of the flag is unset (null), the flag defaults to 'Busy' if it has a time set, and 'Free' if it is an all-day event without specified time.

                attendees

                array

                The attendees of the activity. This can be either your existing Pipedrive contacts or an external email address. It requires a structure as follows: [{"email_address":"mail@example.org"}] or [{"person_id":1, "email_address":"mail@example.org"}]

                done

                Whether the activity is done or not. 0 = Not done, 1 = Done

                Values

                0

                1

                Response
                201

                Created

                Expand all
                Copy code
                  • true
                  • { ... }
                    • { ... }
                      • { ... }

                      Update an activity

                      Copy link

                      Updates an activity. Includes more_activities_scheduled_in_context property in response's additional_data which indicates whether there are more undone activities scheduled with the same deal, person or organization (depending on the supplied data).

                      Starting from 30.09.2024, activity attendees will receive updates only if the activity owner has an active calendar sync

                      API v1
                      Request
                      PUT

                      /v1/activities/{id}

                      Path parameters

                      id

                      integer

                      required

                      The ID of the activity

                      Body parameters

                      application/json

                      due_date

                      string

                      The due date of the activity. Format: YYYY-MM-DD

                      Format

                      date

                      due_time

                      string

                      The due time of the activity in UTC. Format: HH:MM

                      duration

                      string

                      The duration of the activity. Format: HH:MM

                      deal_id

                      integer

                      The ID of the deal this activity is associated with

                      lead_id

                      string

                      The ID of the lead in the UUID format this activity is associated with

                      Format

                      uuid

                      person_id

                      integer

                      The ID of the person this activity is associated with

                      project_id

                      integer

                      The ID of the project this activity is associated with

                      org_id

                      integer

                      The ID of the organization this activity is associated with

                      location

                      string

                      The address of the activity.

                      public_description

                      string

                      Additional details about the activity that is synced to your external calendar. Unlike the note added to the activity, the description is publicly visible to any guests added to the activity.

                      note

                      string

                      The note of the activity (HTML format)

                      subject

                      string

                      The subject of the activity

                      type

                      string

                      The type of the activity. This is in correlation with the key_string parameter of ActivityTypes.

                      user_id

                      integer

                      The ID of the user whom the activity is assigned to

                      participants

                      array

                      List of multiple persons (participants) this activity is associated with. It requires a structure as follows: [{"person_id":1,"primary_flag":true}]

                      busy_flag

                      boolean

                      Set the activity as 'Busy' or 'Free'. If the flag is set to true, your customers will not be able to book that time slot through any Scheduler links. The flag can also be unset by never setting it or overriding it with null. When the value of the flag is unset (null), the flag defaults to 'Busy' if it has a time set, and 'Free' if it is an all-day event without specified time.

                      attendees

                      array

                      The attendees of the activity. This can be either your existing Pipedrive contacts or an external email address. It requires a structure as follows: [{"email_address":"mail@example.org"}] or [{"person_id":1, "email_address":"mail@example.org"}]

                      done

                      Whether the activity is done or not. 0 = Not done, 1 = Done

                      Values

                      0

                      1

                      Response
                      200

                      OK

                      Expand all
                      Copy code
                        • true
                        • { ... }
                          • { ... }

                          Delete multiple activities in bulk

                          Copy link

                          Marks multiple activities as deleted. After 30 days, the activities will be permanently deleted.

                          API v1
                          Request
                          DELETE

                          /v1/activities

                          Query parameters

                          ids

                          string

                          required

                          The comma-separated IDs of activities that will be deleted

                          Response
                          200

                          OK

                          Expand all
                          Copy code
                            • true
                            • { ... }

                            Delete an activity

                            Copy link

                            Marks an activity as deleted. After 30 days, the activity will be permanently deleted.

                            API v1
                            Request
                            DELETE

                            /v1/activities/{id}

                            Path parameters

                            id

                            integer

                            required

                            The ID of the activity

                            Response
                            200

                            OK

                            Expand all
                            Copy code
                              • true
                              • { ... }

                              Subscribe to Pipedrive’s Developer Newsletter