外部連携の利用
Zohoは、Googleの主要サービス(連絡先、カレンダー、Google AD)やMicrosoftソフトウェア(MS Office、MS Outlookなど)を含む、さまざまな外部サービスアプリケーションの連携サポートを提供しています。ただし、Dropbox、PandaDoc、Google Driveなど、CRMと直接連携できないサービスもあります。このような場合は、コネクターを使用してZohoの外部サービスのサポートを拡張できます。コネクターはOAuth 2.0プロトコルを使用して、この連携をしやすくします。
重要な用語
- クライアント - 外部システムに保存されているデータへのアクセスをリクエストするアプリケーション。Zoho CRMでコネクターを作成する場合、クライアントは外部サービスのアプリケーションとサービスです。
- リソース - クライアントがアクセスしようとしているアプリケーションまたはサービス。この場合、リソースは、連携しようとしている外部サービスのサービス(例:MailChimp)です。
- リクエストトークンのURL - このURLは、リソースサーバーへの承認リクエストの送信に使用されます。リソースサーバーは、このリクエストを承認するようにリソース所有者(ユーザー)に要求してください。
- アクセストークンのURL - リソース所有者によってリクエストが承認されると、サーバーはクライアントにアクセストークンを送信します。このトークンは、クライアントがリソースデータにアクセスするたびに交換する必要があります。
- リフレッシュトークンのURL - 一部のアクセストークンは、限られた期間だけ有効です。アクセストークンの有効期限が切れると、クライアントは、リフレッシュトークンのURLを使用して、リソースから別のアクセストークンを取得する必要があります。
- クライアントID - すべてのクライアントアプリケーションに提供される一意の識別子。このIDは、リソース所有者によって提供されます(例:MailChimp)。
- クライアントシークレット - すべてのクライアントアプリケーションには、シークレットコードがマッピングされています。これは、リソースへの不正アクセスを防止するために行われます。
- リダイレクトURL - データアクセスが承認されると、エンドユーザーがリダイレクトされるURLです。クライアントアプリケーションは、リダイレクトURLを自動的に作成します。
Zohoクライアントの登録
Zoho CRM APIはOAuth2標準で認証されているため、クライアントアプリをZohoで登録する必要があります。アプリを登録するには:
- こちらのページにアクセスしてください。https://accounts.zoho.com/developerconsole
- [クライアントIDの追加]をクリックしてください。
- クライアント名とクライアントのドメインを入力してください。
- リダイレクトURIに"https://deluge.zoho.com/delugeauth/callback"と入力してください。
- [クライアントの種類]には、[Webベース]を選択してください。
- [作成]をクリックしてください。
- これで、クライアントアプリが作成され、表示されるようになります。
- 新しく登録されたアプリのクライアントIDとクライアントシークレットは、[オプション]→[編集]をクリックして確認できます。
(オプションは、右隅にある3つの点のアイコンです)
注:
- [外部連携]タブでネイティブに使用できないアプリの場合は、この手順に従う必要があります。たとえば、外部連携に「独自サービス」を追加する場合は、この手順が必要です。
外部連携の設定
提供されている既存の外部連携を使用して、外部連携を設定したり、最初から外部連携を作成したりできます。
コネクターを作成するには
- [設定] > [開発者向け情報] > [外部連携]に移動してください。
- [+最初の外部連携を作成]をクリックしてください。
- [独自サービス]タブをクリックしてください。
- 外部連携するサービスの名前を指定してください(例:MailChimp)。
- 外部サービスのアプリケーションまたはサービスでサポートされている認証のタイプを選択してください。
- 外部サービスのサーバーに関する次の詳細情報を入力してください。
- クライアントIDとクライアントシークレット。
- リクエストトークンURL:コネクターがリソースサーバー上のデータにアクセスするための認証をリクエストできます。
- アクセストークンURL:承認されると、リクエストトークンとトークンキーがアクセストークンに交換され、コネクターが外部サービスのサーバーから特定の情報を取得できるようになります。
- リフレッシュトークンURL:一部のアプリケーションでは、特定のトークンの有効期間を制限することによって、セキュリティーを強化してください。このような場合は、リフレッシュトークンのURLを指定して、コネクターがアクセスを再認証できるようにする必要があります。
- 外部連携に任意の名前を指定してください。
- 外部連携の[スコープ]を指定してください。各外部連携のスコープは、外部サービスのサービスによって提供されます。提供されるスコープについては、各外部サービスのサービスのヘルプを参照してください。
- [設定して連携]をクリックしてください。
外部連携が設定されると、[サービスの選択]タブで使用できるようになります。
トークンについて
リクエストトークン、アクセストークン、リフレッシュトークンのURLは、Webアプリケーションによって提供されます。これらのURLは、Webアプリケーションの開発者向け情報から取得できます。たとえば、GoogleアプリケーションのURLはここで入手できます。
どのサービスでも、リクエストトークン、アクセストークン、リフレッシュトークンURLには、スコープ、状態、クライアントID 、アクセスタイプなど、複数のパラメーターがあります。これらのパラメーターは、サービスごとに異なる場合があります。ただし、リダイレクトURL、クライアントID、レスポンスタイプの3つのパラメーターはすべてのサービスに共通です。これらのパラメーターはZohoによって処理されます。'スコープ'、'状態'、'アクセスタイプ'などの他の必須パラメーターがある場合、開発者は外部サービスのサービスが指定する形式でそれらを指定する必要があります。
Google APIのサンプル:
https://accounts.google.com/o/oauth2/v2/auth?scope=email%20profile&state=security_token%3D138r5719ru3e1%26url%3Dhttps://oa2cb.example.com/myHome&access_type=offline
外部連携の使用
[サービスの選択]タブには、使用可能な外部連携のリストが表示されます。既存の外部連携を選択するか、[独自サービス]タブから作成した外部連携を選択できます。外部連携は、関数内で呼び出して使用してください。
関数内での外部連携の使用方法を見てみましょう。
- [設定] > [開発者向け情報] > [外部連携]に移動してください。
- [サービスの選択]タブから必要な外部連携を選択してください。
- 外部連携名を指定してください。
- [設定して連携]をクリックしてください。
- 次のページに、外部連携の[リンク名]、[サービス名]、[ステータス]が表示されます。
- また、外部連携を呼び出すための関数で使用されるコードもボックスに表示されます。
- URLは、外部サービスのサービスから取得できます。
- POST、PUT、GET、DELETEの各タイプは、リクエストが実行するアクションのタイプを決定するHTTPメソッドです。
- パラメーターは、APIに存在する動的な値をユーザー固有の値に置き換えるために、関数によって使用されます。たとえば、APIが名前、メールアドレス、連絡先番号などの見込み客の詳細を取得する必要がある場合、これらの値はAPIの動的な値で表されます。この動的な値は、パラメーター関数を使用して、[見込み客の詳細]ページから実際の値に置き換えることができます。この後の例では、この関数について詳しく説明します。
- コード内のConnectionはリンク名です。
上記のコードブロックを使用してURLを呼び出し、外部サービスのアプリをZoho CRMと連携させることができます。URL呼び出しタスクの詳細については、こちらをクリックしてください。
URLの呼び出しは通常、こちらの関数内で実行されます。
外部連携サンプル
シナリオの例を見てみましょう。たとえば、キャンペーンの連絡先、キャンペーンで獲得した見込み客など、MailChimpからキャンペーンに関する詳細を知りたいとします。Zoho CRMには[キャンペーン]タブがありますが、より詳細な情報はMailChimpでのみ使用できます。
これらの情報をすべてMailChimpからCRMに取り込むには、CRMとMailChimpを連携させるコネクターを作成し、必要な条件が満たされたときに、このコネクターを実行する関数を記述する必要があります。
ステップ1:リクエスト、アクセス、リフレッシュトークンの取得
まずMailChimpサーバーからリクエストトークンを取得し、アクセストークン、リフレッシュトークンのURLを取得する必要があります。
- [設定] > [開発者向け情報] > [外部連携]に移動してください。
- [カスタムサービス]タブをクリックしてください。
- サービス名を"MailChimp"と指定してください。
- 認証タイプを"OAuth 2"に設定してください。
- 次の情報を入力してください。
- クライアントID:{your_client_id}
- クライアントシークレット:{your_client_secret}
- 認証URL:https://login.mailchimp.com/oauth2/authorize
- アクセストークンURL:https://login.mailchimp.com/oauth2/token
- リフレッシュトークンURL:https://login.mailchimp.com/oauth2/token
- 外部連携の名前を指定してください。
- MailChimpで指定されたとおりに、外部連携のスコープを指定してください。
- [設定して連携]をクリックしてください。
ステップ2:コネクターの有効化
コネクターを追加したら、使用する前に有効にする必要があります。
- [設定] > [開発者向け情報] > [外部連携]に移動してください。
- "MailChimp"コネクターは、[サービスの選択]タブにあります。
- [MailChimp外部連携]ページで、現在の外部連携の名前を入力してください。
- [設定して連携]をクリックしてください。
- レスポンスにより、カスタム関数で使用できるコードが得られます。
- このコードを使用して、カスタム関数を使用してAPIを呼び出すことができます。
ステップ3:コネクターを呼び出すためのカスタム関数の記述
コネクターが公開され、拡張子に関連付けられると、カスタム関数を使用して呼び出すことができます。次のいずれかの操作を実行できます。
- Zoho CRMからMailChimpへのデータの投稿
- MailChimpからZoho CRMへのデータの取得