Pipedrive

Pipedrive と Salesforce 連携ガイド:API・ノーコード・自前スクリプト実装手順

ⓘ本ページはプロモーションが含まれています

お得なお知らせ

スポンサードリンク
タイプ別にすぐ選べる

2026年、ビジネス競争力を上げる2ルート

"組織を動かす"立場と"個人スキルを伸ばす"立場では必要な打ち手が違います。自分の役割で選んでください。

▷ 部門・全社でAIリテラシー研修を入れたい管理職・人事・経営層

【Kindle本】イノベーションOps 組織を動かすDX&AI導入プロセスのすべて

▷ 個人のビジネススキル・思考法を"本から"底上げしたい実務担当者

Kindle Unlimited 30日無料|ビジネス書読み放題▶

※積極的な自己学習が成長への近道です

▶ 耳で学ぶビジネススキルなら オーディオブックAudible 。日経BP・東洋経済系の話題作も対象です。


スポンサードリンク

Pipedrive API と Salesforce REST API の基礎

この章では、両方の CRM が提供する REST API の全体像と認証方式を整理します。
まず Pipedrive はシンプルなトークン認証で手軽に始められる点が特徴です。一方 Salesforce は OAuth2 による高度な認可機構とバージョニングが必須になるため、実装前にフローを正確に把握しておく必要があります。以下でエンドポイント・認証手順・代表的リクエスト例を詳述します。

Pipedrive API 概要(エンドポイント・認証方式)

Piped​drive の API は 1.0 系と 2.0 系が混在していますが、現在推奨されるのは v1 系統です。
- ベース URLhttps://api.pipedrive.com/v1/(例: /deals/persons
- 認証方式:ユーザー設定画面で発行できる API トークン をクエリパラメータ api_token もしくは HTTP ヘッダー Authorization: Bearer <token> に付与します。OAuth2 も利用可能ですが、シンプルさが求められる場面ではトークン方式で十分です。
- レスポンス形式:すべて JSON。成功時は { "success": true, "data": [...] } の形で data 配列にレコードが格納され、エラー時は HTTP ステータスと error フィールドで詳細が返ります。

代表的なリクエスト例

メソッド エンドポイント 説明
GET /deals?api_token=YOUR_TOKEN 全 Deal の一覧取得(ページングは start パラメータ)
POST /persons?api_token=YOUR_TOKEN 新規コンタクト作成(JSON ボディに name, email 等)
PUT /deals/123?api_token=YOUR_TOKEN Deal ID 123 の情報更新(部分更新可能)

Salesforce REST API 概要(OAuth2 フロー・主要リソース)

Salesforce の REST API は インスタンスごとのベース URLAPI バージョン が組み合わさった形でアクセスします。
- ベース URL 例https://yourInstance.salesforce.com/services/data/v58.0/vXX.X 部分はリリースに合わせて変更)
- 認証方式:OAuth2 の「Authorization Code」フローまたは「Refresh Token」フローを使用し、取得したアクセストークンを Authorization: Bearer <access_token> ヘッダーで送ります。トークンには有効期限とスコープが設定されるため、長期運用ではリフレッシュトークンの管理が必須です。
- 主要エンドポイント/sobjects/ 配下に標準オブジェクト(Opportunity, Contact など)やカスタムオブジェクトが配置されます。

代表的なリクエスト例

メソッド エンドポイント 説明
GET /sobjects/Opportunity/001xx000003DGbYAAW 指定 Opportunity の詳細取得
POST /sobjects/Contact/ 新規 Contact 作成(JSON ボディに必須項目)
PATCH /sobjects/Opportunity/001xx000003DGbYAAW 部分更新(例: StageName の変更)

ハイブリッド連携シナリオとデータマッピング

CRM 間のデータ同期は、営業プロセス全体を俯瞰した上でキー項目と変換ロジックを明文化することが成功の鍵です。ここでは実務で頻出する 3 パターンのシナリオを示し、それぞれに対応したマッピング表作成のポイントを解説します。

代表的連携シナリオ例(案件→商談・コンタクト同期・ステージ更新)

以下の表は「Deal → Opportunity」「Contact 同期」「Stage 双方向更新」の 3 パターンに共通する項目マッピングと変換ロジックをまとめたものです。実装前に必ずビジネス要件と照らし合わせてカスタマイズしてください。

Pipedrive 項目 Salesforce フィールド 変換ロジック
deal.title Opportunity.Name 文字列をそのまま転送
deal.value Amount 数値 → Decimal(18,2) にキャスト
deal.user_id OwnerId ユーザー ID マッピングテーブルで変換(例: Pipedrive の内部ユーザ ↔︎ Salesforce の User.Id)
person.email Contact.Email 同一メールアドレスで Upsert(存在すれば更新、なければ作成)
deal.stage_id Opportunity.StageName ステージコード表(Pipedrive → Salesforce 名称)に基づきマッピング

シナリオの流れ(簡易フローチャート)

  1. Deal 作成トリガー(Pipedrive)→ 2. キー項目(deal.id)で外部 ID を検索 → 3. 存在しなければ Opportunity 新規作成、既存なら PATCH 更新 → 4. Contact のメールアドレスで同様の Upsert 実行 → 5. ステージ変更時に相互同期

データマッピング表の作成ポイント

マッピング表は「キー」「必須」「変換」の 3 カラムをベースにすると、レビューやテストが円滑になります。特に キー項目の一意性必須項目の事前バリデーション はレコード不整合を防ぐ重要ポイントです。

項目カテゴリ Pipedrive フィールド Salesforce フィールド 変換ロジック
キー deal.id Opportunity.ExternalId__c 文字列そのまま保存、重複チェックは外部 ID で実施
必須 deal.title Name 空文字の場合は「未設定」へ置換
オプション person.phone Phone ハイフン除去・全角→半角変換、国番号が無い場合はデフォルト +81 を付与

実装上のヒント
- スプレッドシートや Confluence にマッピング表を保存し、Git でバージョン管理することで変更履歴と影響範囲を追跡できます。
- 変換ロジックは可能な限り 関数化(例: normalize_phone())してコードベースに組み込むとテストが容易です。


ノーコードツールでの実装手順

ノーコードプラットフォームは開発工数を大幅に削減できますが、設定ミスやレートリミットに注意が必要です。ここでは ZapierMake (Integromat) の具体的な設定フローと留意点を示します。

Zapier 設定フローと注意点

Zapier は「トリガー → アクション」のシンプル構成で素早く PoC が可能です。以下の手順は標準コネクタを使用した場合のベストプラクティスです。

  1. Trigger(Pipedrive)
  2. 「New Deal」または「Updated Deal」を選択し、取得した API トークンで認証します。
  3. Filter(任意)
  4. 条件式 Stage != "Negotiation" などで不要レコードを除外できます。
  5. Action(Salesforce)
  6. 「Create Record」→ オブジェクトは Opportunity を選択。
  7. Field Mapping
  8. Deal の title → Opportunity の NamevalueAmount などを UI 上でドラッグ&ドロップします。

注意すべき点

  • レートリミット:Zapier は 1 分間に最大 100 リクエスト(無料プラン)しか送れません。大量データはバッチ化して時間帯をずらすか、Make に切り替えることが推奨されます。
  • エラーハンドリング:失敗したタスクは「Task History」から手動で再実行する必要があります。重要レコードは Slack 通知やメールアラートと併用し、担当者が即座に対処できる体制を整えてください。
  • データ型の自動変換:Zapier は文字列 → 数値への暗黙的変換を行わないケースがあります。数値項目は事前に「Formatter」ステップでキャストしておくとエラーが減ります。

Make (Integromat) の設定ポイントと制限事項

Make はビジュアルシナリオと高度なルーティングが特徴です。以下は複雑変換を含む典型的なフロー例です。

  1. Trigger(Watch Deals)
  2. Pipedrive コネクタで「New/Updated Deal」をポーリング取得。
  3. Router
  4. stage_id に応じて分岐し、Negotiation ステージのみ次工程へ送ります。
  5. OAuth2 Token モジュール(Salesforce)
  6. 「Refresh Access Token」モジュールでアクセストークンを取得し、変数に保存します。
  7. HTTP Request(Create Opportunity)
  8. POST /services/data/v58.0/sobjects/Opportunity/ に JSON ボディを送信。
  9. Error Handler
  10. ステータス 429(レートリミット)なら 30 秒待機後再試行、他は Slack 通知でエスカレーションします。

制限事項と回避策

  • 無料プランの操作上限:月間 1,000 操作までしか利用できないため、本番環境では必ず有料プランへ移行してください。
  • バルクアップサート:Make の標準モジュールは単一レコード処理が前提です。大量データを扱う場合は Salesforce の「Composite」API を自作 HTTP リクエストで呼び出すか、Bulk API 用のカスタムスクリプトと組み合わせる必要があります。
  • 実行時間制限:1 シナリオあたり最大 30 分までしか走らないため、長時間バッチは複数シナリオに分割してスケジュールする設計が求められます。

自前スクリプトによる API 連携実装例

コードベースでの実装は柔軟性とテスト容易性を提供します。ここでは PythonNode.js のサンプルを示し、認証・取得・登録の流れとエラーハンドリングのポイントを解説します。

Python サンプルコード解説(認証・データ取得・登録)

この例は requestssimple-salesforce を組み合わせ、環境変数からシークレットを取得しつつ、Deal → Opportunity の同期を行います。

ポイント解説
- シークレットは外部ストアに保管し、コード内には決して平文を書かない。
- iter_all_deals は Pipedrive のページングを自動で回すので数千件でも安全に取得可能。
- retry デコレータは 5 回まで指数バックオフで再試行し、永続的な障害は例外として上位へ伝搬します。

Node.js サンプルコード解説(同上)

Node.js 環境では非同期処理がデフォルトになるため、Promise/async‑await を活用した実装例を示します。

ポイント解説
- dotenv と Secrets Manager の併用でローカル開発と本番環境のシークレット管理を統一。
- retry 関数は指数バックオフ+ジッターを実装し、レートリミットや 5xx 系エラーに対して自動再試行します。
- allDeals はジェネレーターで実装したため、メモリ消費が最小限に抑えられ、大規模データでもスムーズに走ります。


認証・トークン管理、エラーハンドリング、運用ベストプラクティス

本章では 認証情報の安全な保管方法障害時の対策 を中心に、長期的に安定した連携基盤を構築するための実装指針をまとめます。

認証フローとアクセストークンの安全な保管方法

項目 推奨保存先 アクセス制御例
Pipedrive API Token AWS Secrets Manager(キー: pipedrive/api-token IAM ロール crm-integrationsecretsmanager:GetSecretValue のみ付与
Salesforce Refresh Token 同上(キー: salesforce/refresh-token 同上、さらに KMS キーで暗号化しローテーションを有効化
クライアントシークレット等 HashiCorp Vault も可 ポリシーで「read only」権限のみ付与

実装ヒント
- Pythonboto3.client('secretsmanager').get_secret_value(SecretId=...)
- Node.jsnew AWS.SecretsManager().getSecretValue({ SecretId })

取得したシークレットは プロセスのメモリ上だけに保持し、ログや例外メッセージに出力しないよう徹底します。定期的なローテーション(90 日ごと)を自動化すれば、漏洩リスクを最小限に抑えられます。

エラーハンドリングと再試行ロジック、ログ出力手法

障害は ステータスコードで分類 し、以下の方針で対処します。
- 5xx 系 / 429(レートリミット) → 指数バックオフ+ジャitter で最大 5 回まで再試行。
- 4xx 系(認証エラー・バリデーションエラー) → 即時通知と手動対応が必要なため、例外として上位へ伝搬。

Python での再試行ユーティリティ(抜粋)

  • 構造化ログは JSON 形式で出力し、CloudWatch Logs Insights や Datadog のクエリで容易にフィルタリングできるようにします。
  • 通知は失敗レコード数が閾値を超えた場合に SNS → Slack/Teams に流すと、運用担当者の即応が可能です。

監視・メンテナンスポイント(レートリミット、データ整合性チェック)

監視項目 実装手段 アラート条件
Pipedrive API 呼び出し数 CloudWatch カスタムメトリクス pipedrive.api.calls(Lambda が呼び出すたびにインクリメント) 1 分間の呼び出しが 90 件 超えたら SNS 通知
Salesforce API 使用量 Salesforce の「API Usage」レポートを 5 分ごとに取得し CloudWatch にプッシュ 24h あたり 95% 超過時に PagerDuty 発報
Deal ↔︎ Opportunity 整合性 Nightly バッチで ExternalId__c が双方に存在するか照合 不一致率が 0.5 % を超えると Slack に警告
トークン有効期限 Secrets Manager のシークレット更新日時を監視し、残存日数 < 7 日でリフレッシュ通知 -

メンテナンスのベストプラクティス
- トークンローテーションは自動化(Lambda → Secrets Manager 更新)し、古いトークンは即座に無効化。
- スキーマ変更(例: カスタム項目追加)は Git 管理されたマッピング表の差分テストを CI パイプラインで走らせることで、本番デプロイ前に破壊的影響を検出できます。


導入支援とチェックリストのご案内

本稿で提示したハイブリッド連携手法は、ノーコードツールで素早く PoC を立ち上げた後、スクリプト化して本番運用に移行する流れが推奨されます。以下のチェックリストを順に実施すれば、抜け漏れなく安全かつ拡張性の高い連携基盤が構築できます。

  1. 認証情報の安全な保管
  2. Secrets Manager / Vault に API トークン・Refresh Token を格納。
  3. IAM ポリシーで最小権限を付与し、ローテーションスケジュールを設定。

  4. データマッピング表の作成とレビュー

  5. キー項目(Deal ID ↔︎ Opportunity ExternalId)・必須項目・変換ロジックを 3 カラムで整理。
  6. ビジネスステークホルダーと合意形成し、Git リポジトリでバージョン管理。

  7. ノーコードツールで PoC 実施

  8. Zapier または Make で「Deal → Opportunity」フローを作成。
  9. レートリミット・エラーハンドリングの挙動を検証し、必要に応じてフィルタやバッファ処理を追加。

  10. 自前スクリプトで本番バッチ構築

  11. Python または Node.js のサンプルをベースに、再試行・ロギング・監視コードを組み込む。
  12. CI/CD パイプラインで単体テスト・統合テスト(Mock API)を走らせる。

  13. エラーハンドリング・再試行ロジック実装

  14. 指数バックオフ+ジャitter を共通ユーティリティ化。
  15. 失敗レコードは構造化ログに残し、Slack/PagerDuty で自動通知。

  16. 監視・アラート基盤の設定

  17. API 使用量・レートリミット・データ整合性を CloudWatch / Stackdriver にメトリクス化。
  18. 閾値超過時は SNS → Slack/Teams へ通知し、オンコール体制と連携。

  19. 定期的なレビューと改善

  20. 月次で API 使用レポートを確認し、プラン変更やバルク処理の導入可否を評価。
  21. 新規カスタム項目追加時はマッピング表・テストケースを更新し、デプロイ前にリハーサル実施。

このフローに沿って進めれば、Pipedrive と Salesforce の双方向同期が安全かつスケーラブルに実現します。導入段階で不明点や独自要件(例:多言語項目・通貨換算ロジック)が出てきた場合は、専門コンサルタントやシステムインテグレーターへの相談をご検討ください。

スポンサードリンク

お得なお知らせ

スポンサードリンク
タイプ別にすぐ選べる

2026年、ビジネス競争力を上げる2ルート

"組織を動かす"立場と"個人スキルを伸ばす"立場では必要な打ち手が違います。自分の役割で選んでください。

▷ 部門・全社でAIリテラシー研修を入れたい管理職・人事・経営層

【Kindle本】イノベーションOps 組織を動かすDX&AI導入プロセスのすべて

▷ 個人のビジネススキル・思考法を"本から"底上げしたい実務担当者

Kindle Unlimited 30日無料|ビジネス書読み放題▶

※積極的な自己学習が成長への近道です

▶ 耳で学ぶビジネススキルなら オーディオブックAudible 。日経BP・東洋経済系の話題作も対象です。


-Pipedrive