sales-integration について
sales-integrationは、営業ツール間の連携を計画・実装するためのスキルです。CRMや営業支援、マーケティングツールを扱うチーム向けに、連携方式、トリガー、アクション、データ同期、エラー処理を扱い、まず標準連携を確認します。
主な機能
- 01標準連携・自動化・カスタムAPIを比較
- 02トリガーと後続アクションを設計
- 03フィールド対応とデータ所有者を計画
- 04重複・競合・再試行に対応
- 05プラットフォームのWebhookとAPI情報を参照
活用シーン
- 01メール返信をCRMに同期して営業担当に通知
- 02会議予約後に連絡先と営業段階を更新
- 03CRMの状態変更に応じて営業シーケンスへ登録
- 04複数の営業ツール間で活動記録を同期
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sales-skills/ sales --skill sales-integrationインストール後、Claude Code で/sales-integrationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/integrations.mdlearnings.mdplatforms.md詳細
営業ツールを連携する
ユーザーが営業ツール間の連携を設計・実装できるよう支援します。適切な連携方法の選定から、トリガーとアクションの設計、フィールドのマッピング、エラー処理まで対応します。このスキルでは、Webhook、Zapier/Make、ネイティブ連携、カスタム API パイプラインを扱います。
Step 1 — コンテキストを収集する
references/learnings.md が存在する場合は、蓄積された知見を確認するために、まず読み込んでください。
ユーザーに質問します。
-
何を連携しますか?
- ソースツール(イベントが発生する場所):Mailshake、Apollo、Salesloft、Smartlead、Lemlist、Yesware、Groove.cm、Mixmax、Reply.io、Woodpecker、Hunter.io、Seismic、Tomba、Prospeo、Seamless.AI、SafetyMails、Closum、Omnisend、Mailchimp、SendGrid、Postmark、Customer.io、Mailgun、Klaviyo、ActiveCampaign、Outscraper、Enrich.so、Minelead、Lobstr.io、GetProspect、Skrapp、OpenWeb Ninja、Anymail Finder、ZeroBounce、Snov.io、LeadMagic、ZoomInfo、Clearbit、RB2B、6sense、Brevo、Braze、Iterable、GetResponse、SendPulse、Clay、HubSpot、Salesforce、Qwilr、RudderStack、Boomi、Workato、Celigo、SnapLogic、Jitterbit、Tray、Informatica、TIBCO、その他
- 接続先ツール(アクションを実行する場所):Salesforce、HubSpot、Slack、Pipedrive、その他
- 片方向ですか、双方向ですか?
-
連携を実行するトリガーは何ですか?
- A)メールの返信を受信
- B)新しいリードを取得
- C)ミーティングを予約
- D)商談ステージが変更
- E)コンタクトを作成/更新
- F)シーケンス/ケイデンスが完了
- G)フォームを送信
- H)カスタムイベント — 内容を説明してください
-
トリガーされたときに何を実行しますか?
- A)レコードを作成(コンタクト、タスク、商談、アクティビティ)
- B)レコードを更新(フィールドの変更、ステージの変更、担当者の変更)
- C)通知を送信(Slack、メール、SMS)
- D)シーケンス/ケイデンスに登録
- E)複数のアクション — 内容を説明してください
-
技術的な知識レベルはどの程度ですか?
- A)ノーコード — Zapier、Make、ネイティブ連携のみ
- B)ローコード — 基本的な API 呼び出しに対応でき、ドキュメントに沿って作業できる
- C)コード — API と Webhook を使ったカスタム連携を構築できる
-
現在のスタックを教えてください。(使用中の営業/マーケティング/CRM ツールをすべて列挙してください)
ユーザーの依頼にこのコンテキストの大部分がすでに含まれている場合は、該当するステップに直接進んでください。 妥当な前提を明示したうえで、可能な範囲で最善の回答を最初に提示し、最後に最も重要な確認質問を1~2個だけ尋ねてください。コンテキストをすべて集めるまで回答を保留しないでください。
Step 2 — 連携アーキテクチャ
複雑さと技術要件に基づいて、適切な連携方法を選択します。
判断基準表
| 方法 | 最適な用途 | 必要な技術スキル | 費用 | 信頼性 |
|---|---|---|---|---|
| ネイティブ連携 | CRM 同期、組み込みコネクター | 不要 | 無料(標準搭載) | 高 |
| Zapier / Make | 複数ステップのワークフロー、ノーコード | 低 | $20-100/mo | 高 |
| Webhook + ハンドラー | リアルタイムイベント、カスタムロジック | 中 | 無料~低額 | 中~高 |
| カスタム API パイプライン | 複雑な変換、大量処理 | 高 | 変動 | 実装による |
ネイティブ連携 — 必ず最初に確認する
カスタム構築に着手する前に、ネイティブ連携が存在するか確認してください。
対応するすべてのツールを対象とした、240以上のネイティブ連携の完全な一覧表については、references/integrations.md を参照してください。
ルール:ネイティブ連携でユースケースに対応できる場合は、それを使用してください。ネイティブ連携では、認証、再試行、エラー処理が自動で行われます。カスタム連携を選ぶのは、ネイティブ連携が特定のトリガーまたはアクションに対応していない場合に限ってください。
Step 3 — 一般的な連携パターン
リード/返信 → CRM レコード+通知
トリガー:Mailshake/Apollo/Salesloftで返信を受信 アクション:
- CRMに連絡先を作成または更新します
- 連絡先レコードにアクティビティ/タスクを作成します
- 担当者にSlack通知を送信します
実装方法:
- Zapier:トリガー = Mailshakeの「返信を受信」 → アクション = Salesforceの「タスクを作成」+Slackの「メッセージを送信」
- Webhook:Mailshakeのプッシュイベント(返信) → お客様のエンドポイント → Salesforce API+Slack API
- ネイティブ:Mailshake-Salesforce連携(返信をアクティビティとして自動同期)
ミーティング予約 → CRM+シーケンスからの除外
トリガー:ミーティングを予約(Calendly、Chili Piper、またはCRMのスケジューラー) アクション:
- CRMで連絡先のステータス/ステージを更新します
- アクティブなシーケンス/ケイデンスから削除します
- 商談/オポチュニティを作成します
- AEに通知します
CRMのステータス変更 → シーケンス登録
トリガー:CRMでリードのステータスが「MQL」に変更される アクション:
- アウトバウンドシーケンス(Apollo、Salesloft、Mailshake)に連絡先を登録します
- ルーティングルールに基づいて適切な担当者に割り当てます
実装方法:
- Zapier/Make(ノーコード):HubSpotの「ライフサイクルステージ変更」トリガー → Apolloの「連絡先をシーケンスに追加」アクション。最も簡単に設定でき、認証も自動で処理されます。
- CRM Webhook+カスタムAPI(ローコード):HubSpotのワークフローがWebhookをトリガー → お客様のエンドポイントがApolloの
POST /contacts/add_to_emailer_campaignを呼び出します。フィールドマッピング、エラー処理、条件ロジックをより細かく制御できます。 - ネイティブCRMワークフロー(対応している場合):CRMとエンゲージメントツールの連携には、登録トリガーをネイティブでサポートするものがあります。カスタムの仕組みを構築する前に、Settings > Integrationsを確認してください。
シーケンス登録時のエラー処理:
- 連絡先の重複:作成前に、エンゲージメントツールに連絡先がすでに存在するか確認します。「検索または作成」ロジックを使用してください。
- 登録済み:連絡先が別のシーケンスでアクティブな場合、APIが登録を拒否することがあります。適切に処理してください(ログに記録、スキップ、または後で処理するためにキューに追加)。
- シーケンスの容量/登録上限:シーケンスには登録件数の上限や、1日の追加件数上限が設けられている場合があります。APIレスポンスで上限エラーを監視し、上限を超えた分を処理するための再試行キューを実装してください。
- 再適格化:以前に不適格と判断されたリードが再びMQLになった場合、再登録するかスキップするかを決めてください(同じ連絡先への過剰な連絡を防止します)。
商談ステージの変更 → 関係者への通知
トリガー:CRMで商談が「提案書送付済み」または「交渉中」に移行 アクション:
- Slackで関係者に通知します
- 担当者のフォローアップタスクを作成します
- Qwilrで提案書の作成をトリガーします(
/sales-qwilr-automationを参照)
複数ツール間のアクティビティ同期
トリガー:エンゲージメントツールにアクティビティが記録される(メール送信、通話、ミーティング開催) アクション:アクティビティを完了済みタスク/アクティビティとしてCRMに同期します
主な考慮事項:
- 同期の方向(一方向か双方向か)を定義します
- ツール間のフィールドをマッピングします(Salesloftの「通話」 → Salesforceのタイプが「通話」の「タスク」)
- 重複を処理します(作成前にアクティビティがすでに存在するか確認します)
ステップ4 — プラットフォームのWebhookリファレンス
プラットフォーム固有のWebhook設定、API連携、ネイティブコネクターの詳細については、references/platforms.md を参照してください。
ステップ5 — データ同期のベストプラクティス
信頼できる唯一の情報源を定義する
双方向同期を構築する前に、各フィールドの信頼できる唯一の情報源とするツールを決めてください。
| データの種類 | 一般的な信頼できる唯一の情報源 | 理由 |
|---|---|---|
| 連絡先情報(氏名、メールアドレス、電話番号) | CRM(Salesforce/HubSpot) | CRMが正規のレコードです |
| アクティビティデータ(メール、通話) | エンゲージメントツール(Apollo/Salesloft/Mailshake) | アクティビティはエンゲージメントツールで発生します |
| 商談/オポチュニティ | CRM | 売上データはCRMに保存されます |
| リードスコア | MAPまたはCRM | スコアリングロジックはMAP/CRMで実行されます |
| シーケンスのステータス | エンゲージメントツール | シーケンスの状態はエンゲージメントツールで管理されます |
競合の解決
- 最終書き込み優先:シンプルですが危険です。後から行われた更新が、先の更新を上書きします。
- 信頼できる情報源を優先:指定された情報源が、常に同期先を上書きします。
- フィールド単位のルール:フィールドごとに異なるルールを適用します(例:電話番号は CRM、メールのステータスはエンゲージメントツールを優先)。
- 手動レビュー:競合を人間によるレビュー用にフラグ付けします(重要なフィールドに対して最も安全です)。
重複排除
- 照合キー:メールアドレス(主キー)、会社のドメイン+名前(副キー)
- 重複排除のタイミング:レコード作成前、同期中、定期的なメンテナンス時
- ツール:CRM 標準の重複排除機能(Salesforce Duplicate Rules、HubSpot dedup tool)、またはサードパーティ製ツール(Dedupely、RingLead)
エラー処理
- 再試行ロジック:API 呼び出しが失敗した場合に指数バックオフを実装します(1s、2s、4s、8s)。
- デッドレターキュー:失敗したイベントを保存し、手動レビューや再実行に備えます。
- アラート:同期エラーがしきい値を超えた場合に、Slack/メールで通知します。
- モニタリング:同期の成功率、レイテンシー、エラーの種類を週ごとに追跡します。
注意点
-
まず標準の連携機能を確認してください。 ツールが標準で処理できることに対して、Zapier のワークフローを構築しないでください。標準の連携機能はより信頼性が高く、エッジケースにも適切に対応し、追加費用もかかりません。独自の連携を構築する前に、両方のツールで「Settings > Integrations」を確認してください。
-
API のレート制限を守ってください。 すべてのツールにはレート制限があります。Mailshake(100/min)、Apollo(有料プランで約 200/min)、Salesforce(変動)、HubSpot(Free/Starter では 100 requests/10s、Pro/Enterprise では 190/10s、マーケットプレイスの OAuth アプリはインストール済みアカウントごとに 110/10s。さらに、1 日あたりの上限は Free/Starter で 250K、Pro で 625K、Enterprise で 1M)などです。レート制限を無視した大量同期は、スロットリングやブロックの原因になります。必ずバッチ処理とバックオフを実装してください。
-
双方向同期の前に、信頼できる情報源を定義してください。 フィールド単位の明確な所有権がない双方向同期では、データのピンポン(A が B を更新し、B が A を更新するループ)が発生します。双方向に同期するすべてのフィールドについて、競合時にどのツールを優先するかを文書化してください。
-
自己改善:ここに記載されていないことを見つけた場合は、今日の日付を付けて
references/learnings.mdに追記してください。
特定のプラットフォームスキルを推奨する前に
このスキルは、多数のプラットフォームにまたがる戦略領域を扱います。特定のプラットフォームスキル(## Related skills に記載されている /sales-{platform}、例:/sales-mailshake、/sales-klaviyo、/sales-apollo)をユーザーに案内する前に、そのプラットフォームスキルの実際の SKILL.md を読んでください。## Related skills にある 1 行の説明は候補を 特定する のには十分ですが、そのスキルを 確定 したり、効果的に呼び出すプロンプトを作成したりするには不十分です。
読み方:
~/.claude/skills/{skill-name}/SKILL.mdがローカルに存在する場合は、それをReadします。sales-*スキルの場合は、このリポジトリから直接WebFetchします:https://raw.githubusercontent.com/sales-skills/sales/main/skills/{skill-name}/SKILL.md— 例として、sales-mailshake の場合はhttps://raw.githubusercontent.com/sales-skills/sales/main/skills/sales-mailshake/SKILL.mdです。sales-*以外のスキル(サードパーティ製)の場合は、インストール済みであれば~/.claude/skills/sales-do/references/skill-sources.mdで{org}/{repo}を調べ、同じリポジトリ内のskills/{skill-name}/SKILL.mdのパスから取得します。
読み終えたら、 SKILL.md の具体的な内容(対象範囲、サブフロー、argument-hint の形式、「次の場合は使用しないでください」という否定的なトリガーなど)に基づいて推奨してください。生成する呼び出しは、プラットフォームスキルの argument-hint に合わせてください。プラットフォームスキルがユーザーの状況に合わない場合は、別のスキルに切り替えるか、適切でないスキルを推奨するのではなく、この場で直接質問に対応してください。
関連スキル
/sales-hubspot— HubSpot プラットフォームのヘルプ(2,000 以上のマーケットプレイスアプリ、API、Data Hub 同期、ウェブフック)/sales-qwilr-automation— Qwilr の CRM 連携、API、ウェブフック/sales-mailshake— Mailshake プラットフォームのヘルプ(API、ウェブフック)/sales-apollo— Apollo プラットフォームのヘルプ(CRM 同期、API)/sales-smartlead— Smartlead プラットフォームのヘルプ(API、ウェブフック)/sales-lemlist— Lemlist プラットフォームのヘルプ(API、ウェブフック)/sales-salesloft— Salesloft プラットフォームのヘルプ(連携)/sales-groove— Groove.cm プラットフォームのヘルプ(GrooveSell ウェブフック、Zapier)/sales-yesware— Yesware プラットフォームのヘルプ(Salesforce ネイティブ対応、API なし)/sales-mixmax— Mixmax プラットフォームのヘルプ(ルールエンジン、連携)/sales-reply— Reply.io プラットフォームのヘルプ(ウェブフック、連携)/sales-woodpecker— Woodpecker プラットフォームのヘルプ(API、ウェブフック)/sales-deliverability— 送信ツール連携のためのメール配信到達性/sales-seismic— Seismic プラットフォームのヘルプ(連携、LiveSend)/sales-hunter— Hunter.io(API、CRM 連携、ウェブフック、MCP)/sales-customerio— Customer.io(API、Data Pipelines、ウェブフック)/sales-mailgun— Mailgun(REST API、受信ルーティング、ウェブフック)/sales-klaviyo— Klaviyo(350 以上の連携、フローウェブフック、Shopify)/sales-activecampaign— ActiveCampaign(900 以上の連携、ウェブフック)/sales-sendgrid— SendGrid(Email API、Event Webhooks、Inbound Parse)/sales-postmark— Postmark(トランザクション API、Message Streams、ウェブフック)/sales-iterable— Iterable(Smart Ingest、システムウェブフック、REST API)/sales-braze— Braze(Currents、CDI、170 以上の Alloys、REST API)/sales-brevo— Brevo(メール/SMS/WhatsApp、トランザクション API、ウェブフック)/sales-clearbit— Clearbit(エンリッチメント API、Reveal、ウェブフック)/sales-rb2b— RB2B(訪問者 ID、Identity Resolution API)/sales-6sense— 6sense(インテント、スコアリング、Salesforce/HubSpot/API)/sales-clay— Clay(ウォーターフォール型エンリッチメント、CRM 同期、ウェブフック)/sales-leadmagic— LeadMagic(REST API、MCP、Clay/Zapier/Make/n8n)/sales-zoominfo— ZoomInfo(SalesOS、MarketingOS、OperationsOS)/sales-blueconic— BlueConic CDP — 顧客データのインポート/エクスポートに対応する 100 以上の接続/sales-treasuredata— Treasure Data CDP — 400 以上のコネクター、エンタープライズ向けデータ統合とオーディエンス活用/sales-mulesoft— MuleSoft プラットフォームのヘルプ — エンタープライズ iPaaS、API 主導の接続、450 以上のコネクター/sales-boomi— Boomi プラットフォームのヘルプ — エンタープライズ iPaaS、1,000 以上のコネクター、API 管理、Data Hub MDM/sales-workato— Workato プラットフォームのヘルプ — エンタープライズ iPaaS、1,200 以上のコネクター、レシピの自動化、API 管理、MCP Gateway/sales-celigo— Celigo プラットフォームのヘルプ — ミッドマーケット向け iPaaS、1,000 以上のコネクター、AI エラー管理、NetSuite への深い対応/sales-snaplogic— SnapLogic プラットフォームのヘルプ — エンタープライズ iPaaS、1,000 以上の Snaps、AgentCreator AI エージェント、API Management 3.0/sales-jitterbit— Jitterbit プラットフォームのヘルプ — Harmony iPaaS、400 以上のコネクター、API Manager、App Builder、EDI、ハイブリッドエージェント/sales-tray— Tray.ai プラットフォームのヘルプ — エンタープライズ iPaaS、700 以上のコネクター、Merlin Agent Builder、Tray Embedded、GraphQL API、Connector Development Kit/sales-informatica— Informatica IDMC プラットフォームのヘルプ — エンタープライズ iPaaS とデータ管理、CDI/CAI、API Center、MDM、Data Catalog、IPU 料金体系、REST API v2/v3/sales-tibco— TIBCO Cloud Integration プラットフォームのヘルプ — Scribe(Connect)、Flogo(Develop)、BusinessWorks(Integrate)、Live Apps(Automate)、ハイブリッドエージェント、Cloud API Management を備えたエンタープライズ iPaaS/sales-data-hygiene— CRM データの品質管理とエンリッチメントの自動化/sales-do— ルーター — あらゆる営業目標に適したスキルを特定します
例
例 1:Mailshake の返信 → Salesforce + Slack
ユーザーの発言:「Mailshake のキャンペーンに誰かが返信したら、Salesforce にタスクを作成して Slack に通知を受け取りたいです。」 スキルの動作:
- Mailshake と Salesforce のネイティブ連携で対応できるか確認します(アクティビティの同期は可能です)
- Salesforce にはネイティブ連携、Slack 通知には Zapier を推奨します
- Zapier のワークフローを提示します:Mailshake の「Reply」トリガー → Slack の「Send Message」アクション
- Salesforce のアクティビティのフィールドマッピングを設定します 結果:ネイティブ連携による返信からタスクへの同期と、Zapier による Slack 通知
例 2:Salesloft のアクティビティ → HubSpot
ユーザーの発言:「マーケティングチームが営業の接点を確認できるよう、Salesloft のすべてのアクティビティを HubSpot に同期したいです。」 スキルの動作:
- ネイティブ連携を確認します(Salesloft と HubSpot の連携が存在します)
- ネイティブ連携の設定とフィールドマッピングを案内します
- 同期方向を定義します(Salesloft → HubSpot、アクティビティは一方向)
- 重複排除と競合解決に対処します 結果:同期方向とフィールドマッピングが明確なネイティブ連携の設定
例 3:HubSpot の MQL → Apollo のシーケンス
ユーザーの発言:「HubSpot でリードのステータスが MQL になったら、Apollo のシーケンスに自動登録したいです。」 スキルの動作:
- トリガーを設計します:ライフサイクルステージが MQL の場合に実行する HubSpot ワークフロー
- Zapier を推奨します(HubSpot のトリガー → Apollo の「Add Contact to Sequence」アクション)
- HubSpot から Apollo の連絡先フィールドへのフィールドマッピングを提示します
- エラー処理を追加します(連絡先がすでに Apollo に存在する場合や、シーケンスが満員の場合の処理) 結果:フィールドマッピングとエラー処理を備えた、MQL をトリガーとする登録
トラブルシューティング
同期によって重複が作成される
症状:同じ連絡先が同期先のツールに複数回表示される 原因:重複排除ロジックが不足しており、既存のレコードとの照合ではなく、新しいレコードが作成されています 解決策:作成前に照合/重複排除のステップを追加します。メールアドレス(主キー)で照合します。CRM のネイティブな重複排除ルールを使用します。Zapier では「Create」ではなく「Find or Create」アクションを使用します。
イベントが実行されない
症状:Webhook またはトリガーが想定どおりに実行されない 原因:Webhook URL の設定ミス、イベントタイプの誤り、またはツールによる Webhook 配信の失敗 解決策:ソースツールで Webhook のログを確認します。Webhook のデバッグツール(webhook.site または RequestBin)を使ってテストします。イベントタイプが完全に一致していることを確認します。エラー後に Webhook が無効化されていないか確認します。
大量の同期でレート制限エラーが発生する
症状:429 エラー、同期の遅延、またはイベントの欠落 原因:短時間に API リクエストを送りすぎています 解決策:バッチ処理を実装します(API が対応している場合は、複数のレコードを 1 回のリクエストにまとめます)。429 応答に対して指数バックオフを追加します。同期頻度を下げます(リアルタイムではなく 5 分ごと)。利用可能な場合は一括 API エンドポイントを使用します。