new-contact-hygiene-workflow
HubSpotのワークフローを構築して、新規コンタクト作成時に自動的に情報を充実させ、ステージングします。ライフサイクルステージの設定、関連する企業から会社名と業界情報のコピー、完全性に基づいた分岐処理を行います。API制限のため、HubSpot UIで手動構築する必要があります。
description の原文を見る
Build a HubSpot workflow that auto-enriches and stages new contacts upon creation. Sets lifecycle stage, copies company name and industry from associated company, and branches on completeness. Must be built manually in the HubSpot UI due to API limitations.
SKILL.md 本文
新規コンタクト衛生管理ワークフロー
作成時にすべての新規コンタクトを自動的にエンリッチメントするワークフローを構築します。これにより、コンタクトが人的操作を受ける前に、ライフサイクルステージ、企業名、業界を含めてデータベースに登録されることを保証します。
APIでは完全に自動化できない理由
HubSpot APIの3つの制限により、完全な自動化は不可能です:
- 「不明」分岐条件 はプログラム的にはサポートされていません — Workflows APIはプロパティが一度も設定されていないかどうかを確認する分岐を作成できません。
- 関連付けられたオブジェクトからコピー アクション(例:関連付けられた企業から企業名をコピー)はAPI経由では利用できません。
- Workflows API v4はベータ版 で不安定です — 本番ワークフローはこれに依存すべきではありません。
このワークフローを構築するには3つのオプションがあり、以下で説明します。
ワークフロー構築:3つのオプション
オプション1:手動UI構築
下の「実行」セクションのステップバイステップ指示に従ってください。これが最も信頼性の高い方法であり、すべてのトリガー、分岐、アクションを完全に制御できます。
オプション2:HubSpot Breeze AI
HubSpotの組み込みBreeze AIは、自然言語プロンプトからワークフロースケルトンを生成できます。オートメーション > ワークフロー > ワークフロー作成 > 「やりたいことを説明する」 に移動し、以下のプロンプトを貼り付けてください:
Create a contact-based workflow that triggers when a contact is created. It should:
1. Set the lifecycle stage to "Lead" if it is empty
2. Copy the company name from the associated company to the contact's Company property
3. Copy the industry from the associated company to the contact's Industry property
4. Wait a short delay (3-10 minutes, recommended: 5)
5. Check if the contact's Company property is still empty — if yes, send an internal notification to the admin saying the contact has no company association
重要な警告:Breezeのトリガーの制限。 Breezeは フィルターベースのトリガー(AND ロジック) ではなく イベントベースのトリガー(OR ロジック) を作成します。Breezeがワークフローを作成した後、UI内でトリガー/登録条件を手動で検証して修正する 必須 です。Breezeはワークフロースケルトン(アクション、分岐、遅延)を作成するために最適です — トリガー条件はほぼ常に手動で修正が必要です。
このワークフロー向けのBreezeの追加制限:
- Breeze は「不明」分岐条件を作成できません -- これらは手動で追加する必要があります
- Breeze は「関連付けられたオブジェクトからプロパティをコピー」アクションを作成できません -- これらは手動で追加する必要があります
- Breeze は再登録ルールを構成できません
これらの制限を考えると、Breezeはこの特定のワークフローにとって最小限の価値しか提供しません。手動構築(オプション1)をお勧めします。
オプション3:Claude Anthropic Chrome拡張機能
Claude Anthropic Chrome拡張機能により、ClaudeがHubSpotワークフロービルダーのUIを直接見て操作できるようになります。自然言語でワークフロー論理を説明でき、ClaudeがUIをクリックしてそれを構築します。複雑なワークフローに対してはBreezeよりも正確であることが多いです。なぜなら、Claudeが各ステップを視覚的に検証でき、「不明」分岐条件やBreezeが処理できない関連付けからのコピーアクションを含めることができるからです。
このアプローチを使用するには:
- Chrome でHubSpotワークフロービルダーを開きます(オートメーション > ワークフロー > ワークフロー作成)
- Claude Chrome拡張機能をアクティブ化します
- このスキルの設計図と指示を使用してワークフローを説明します
高速モードに関する注: Claude Codeの高速モードを使用してワークフロー作成を高速化する場合、 課金モデルに注意してください:Haikuの使用はサブスクリプションに含まれていますが、高速モードのOpusは 追加クレジットを消費します。ワークフロー構築タスク(UI集約的で多くのインタラクションが必要な場合がある)の場合、 速度のトレードオフがクレジットコストに見合う価値があるかどうかを検討してください。
前提条件
- HubSpot Marketing Professional以上のプラン
- HubSpotでのワークフロー作成権限
- 企業関連付けエンリッチメント完了(既存コンタクトについては最初に
/enrich-company-nameと/enrich-industryを実行してください)
ワークフロー設計
TRIGGER: Contact create date is known
(fires for every new contact)
│
▼
┌─────────────────────────┐
│ Set lifecycle stage │
│ = "Lead" (if empty) │
└────────────┬────────────┘
│
▼
┌─────────────────────────┐
│ Copy company name from │
│ associated company │
└────────────┬────────────┘
│
▼
┌─────────────────────────┐
│ Copy industry from │
│ associated company │
└────────────┬────────────┘
│
▼
┌─────────────────────────┐
│ Delay: short wait │
│ (3-10 min, rec: 5) │
└────────────┬────────────┘
│
▼
┌─────────────────────────┐
│ IF/THEN BRANCH: │
│ Company name is unknown? │
├──────────┬──────────────┘
│ YES │ NO
│ │
▼ ▼
Retry Continue
copy (enriched)
+ notify
admin
ステップバイステップ構築手順
ステージ1:実行前 — 前提条件の確認
- 既存データについて企業エンリッチメントプロセスが実行されていることを確認します。
- HubSpot > オートメーション > ワークフロー > ワークフロー作成 を開きます。
- 「コンタクトベース」ワークフローを選択し、ゼロから始めます。
ステージ2:実行 — ワークフローを構築する
-
登録トリガーを設定します:
- プロパティ:「作成日」> 「既知」
- これにより、すべての新規コンタクトが自動的に登録されます。
-
アクション「プロパティ値を設定」を追加します
- プロパティ:「ライフサイクルステージ」
- 値:「Lead」
- 条件:ライフサイクルステージが不明な場合のみ(このステップの前にif/then分岐を使用するか、ご利用のプランで「空の場合のみ」オプションが利用可能な場合はそれに依存します)。
-
アクション「プロパティをコピー」を追加します
- ソース:関連付けられた企業 > 「企業名」
- ターゲット:コンタクト > 「企業」プロパティ
-
アクション「プロパティをコピー」を追加します
- ソース:関連付けられた企業 > 「業界」
- ターゲット:コンタクト > 「業界」プロパティ
-
遅延を追加:短い遅延(3~10分、推奨:5分)
- 目的:企業関連付けの同期を許可する(特にフォーム送信またはコンタクト作成と関連付けを別々に行う統合の場合)。ご使用の統合が通常関連付けを作成する速度に基づいて期間を調整してください。
-
if/then分岐を追加します:
- 条件:コンタクト「企業」プロパティが不明である
- YES分岐:CRM管理者への内部通知を追加 — 「新規コンタクト {firstname} {lastname} ({email}) はエンリッチメント試行後、企業関連付けがありません。」
- NO分岐:それ以上のアクションは不要です(コンタクトはエンリッチメントされます)。
-
設定を確認します:
- 再登録:OFF(各コンタクトはこれを1回だけ通過する必要があります)
- 登録解除:不要
- タイムゾーン:適用なし(遅延を超える時間ベースのアクションなし)
-
ワークフローをオンにします。
ステージ3:実行後 — 検証
- テストコンタクトを手動で作成します。以下を確認してください:
- ライフサイクルステージが「Lead」に設定されている
- 企業名が関連付けられた企業からコピーされている
- 業界が関連付けられた企業からコピーされている
- 企業関連付けのないテストコンタクトを作成します。以下を確認してください:
- 設定された遅延後に管理者通知が送信される
- ワークフロー履歴で最初の24時間内のエラーをチェックします。
ステージ4:ロールバック
- HubSpot > オートメーション > ワークフロー でワークフローをオフにします。
- 既にエンリッチメントされたコンタクトは値を保持します — 取り消す必要のある破壊的な変更はありません。
- ライフサイクルステージが誤って設定された場合は、Search APIを使用して、ワークフロー有効化日以降に作成されたコンタクトを見つけて、必要に応じてリセットしてください。
エッジケース
- インポート経由で作成されたコンタクト: これらはトリガーを発火させます。インポートが企業名/業界を含む場合、コピーアクションは関連付けられた企業の値で上書きします。リストフィルターを使用してインポート対象のコンタクトを除外することを検討してください。
- 企業関連付けのないコンタクト: コピーアクションは無視されます。分岐が通知を処理します。
- 複数の関連付けられた企業: HubSpotはプライマリ関連付けられた企業からのみコピーします。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- TomGranot
- ライセンス
- MIT
- 最終更新
- 2026/3/26
Source: https://github.com/TomGranot/hubspot-admin-skills / ライセンス: MIT