Pipedrive Webhooks Workflow
@user-0acbcbb6862eca675a0e482f37fad10a
code:
data:privatelast updated:5 years ago
@user-0acbcbb6862eca675a0e482f37fad10a/
Pipedrive Webhooks Workflow

Overview

The Pipedream platform is the simplest way to develop and execute event driven code, and this is an example workflow using Pipedrive webhooks as the trigger.

Features

This workflow accepts webhooks from Pipedrive and the user can:

  • Inspect the webhook
  • Execute code to modify or transform the data
  • Receive notifications (via Slack, Discord, Email) per event
  • Send the data to S3, Snowflake or another data warehouse
  • Query the data via SQL

Pipedrive Documentation

Here is the Pipedrive documentation for Guide for Webhooks

If you click "Test Event" in the workflow, this is the event the platform will send:

{
    "v": 1,
    "matches_filters": {
        "current": [],
        "previous": []
    },
    "meta": {
        "v": 1,
        "action": "added",
        "object": "deal",
        "id": "",
        "company_id": "",
        "user_id": "",
        "type": "general",
        "host": "company.pipedrive.com",
        "timestamp": 1523440213,
        "timestamp_micro": 1523440213384700,
        "permitted_user_ids": [],
        "trans_pending": false,
        "is_bulk_update": false,
        "pipedrive_service_name": false,
        "matches_filters": {
            "current": [],
            "previous": []
        },
        "webhook_id": 12345678
    },
    "retry": 0,
    "current": "(the object data as of this update)",
    "previous": "(the object data prior to this update)",
    "event": "event name"
}

Usage Tips

  • All pipeline code on Pipedream is public, all event data is private.
  • Pipeline code is run for every event sent to your source.
  • Send data to S3, Snowflake or HTTP out using destinations.
  • The event data sent to your source is accessible in the $event object — you can add, update, or delete any properties of this object in your code.
  • Most of NPM’s 400,000 packages are available for use — just require() them.
  • Using API keys or other sensitive data in your code? Create an environment variable and access it in code using process.env.KEY_NAME.
  • Need to reject certain events sent to your pipeline, or end a pipeline early? Use $end().
  • You need to await the execution of async code with Promises, using async / awaitlearn more here