【Zoho CRM】Sansanの名刺データを取得して見込み客データを更新する

【Zoho CRM】Sansanの名刺データを取得して見込み客データを更新する

引数
  • SansanAPIKey = カスタム値(SansanのAPIキー)
  • leadID =  「見込み客」の「見込み客のID」
  • email = 「見込み客」の「メール」


関数の内容
//認証用ヘッダー
h={ "X-Sansan-Api-Key" : input.SansanAPIKey };
//リクエストURL
//範囲(me|all)
range="all";
//パラメーターのエンコード
encodedEmail=encodeUrl(email);
//リクエスト送信
r = getUrl(u + "?range=" + range + "&email=" + encodedEmail,h,false);
//レスポンスの取得
responseText=r;
responseStatusCode=r.get("statusCode");
info responseText;
//正常に取得できた場合(ステータスコードはレスポンスに含まれていない)
if(responseStatusCode  ==  null)
{
//CRMデータ更新用マップ
m=map();
//複数ある場合も最初のデータのみ取得
d=responseText.executeXPath("/root/data[1]").toXmlList();
//属性情報の取得
lastName = d.toString().executeXPath("/data/lastName/text()");
firstName = d.toString().executeXPath("/data/firstName/text()");
companyName = d.toString().executeXPath("/data/companyName/text()");
departmentName = d.toString().executeXPath("/data/departmentName/text()");
title = d.toString().executeXPath("/data/title/text()");
tel = d.toString().executeXPath("/data/tel/text()");
mobile = d.toString().executeXPath("/data/mobile/text()");
fax = d.toString().executeXPath("/data/fax/text()");
postalCode = d.toString().executeXPath("/data/postalCode/text()");
prefecture = d.toString().executeXPath("/data/prefecture/text()");
city = d.toString().executeXPath("/data/city/text()");
street = d.toString().executeXPath("/data/street/text()");
building = d.toString().executeXPath("/data/building/text()");
url = d.toString().executeXPath("/data/url/text()");
//更新用マップに情報をセット
m.put("Last_Name",lastName);
m.put("First_Name",firstName);
m.put("Company",companyName);
m.put("Title",departmentName + " " + title);
m.put("Phone",tel);
m.put("Mobile",mobile);
m.put("Fax",fax);
m.put("Zip_Code",postalCode);
m.put("State",prefecture);
m.put("City",city);
m.put("Street",street + " " + building);
m.put("Web_site",url);
//CRMデータの更新
updateR = zoho.crm.updateRecord("Leads",leadID,m);
info updateR;
if(updateR.get("message").contains("successfully"))
{
message="更新しました";
}
else
{
message=updateR.get("message");
}
return message;
}
//エラーが発生した場合
else
{
return "Sansanからの情報の取得中にエラーが発生しました、エラーコード:" + responseStatusCode + responseText;
}
※パラメーターの「SansanAPIKey」にはSansanで取得したAPIキーを設定してください。APIキーの取得方法は以下をご参照ください。
※上記のスクリプトは、メールアドレスを検索条件にして名刺情報を検索しています。他の条件で検索する場合は必要に応じて内容を変更してください。

※ワークフローのカスタム関数で設定する場合は「return」を含む行を削除してください。

参考情報



      • Related Articles

      • 【Zoho CRM】カスタム関数の作成

        カスタム関数はエンタープライズプランの機能です。 [設定] > [自動化] > [アクション] > [カスタム関数]に移動してください。 表示された画面で「自分で作成する」をクリックしてください。 カスタム関数の作成画が表示されます。 カスタム関数についての詳細は以下をご参照ください。 https://www.zoho.com/jp/crm/help/automation/custom-functions-programming-dre.html
      • 【Zoho CRM】カスタム関数:1年分の商談の金額を月別に分割して計上する

        サンプルの設定内容は以下です。 タブ 商談 引数 Deal_Name=  商談.商談名 accountID =  商談.取引先のID Closing_Date=  商談.完了予定日 amount =  商談.総額 stage =  商談.ステージ 関数の内容 //登録用のマップ m=map(); //繰り返し処理用のリスト monthIndex={0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; //月あたりの金額 monthlyAmount=(amount  / ...
      • 【Zoho CRM】複数のレコードに対してカスタム関数を実行したい

        Q. データの一覧から、複数のデータを選択してカスタム関数をボタンから実行したいです。 このとき、関数にデータのIDを引数として渡しますが、各データのIDはどう扱うべきでしょうか? A. 複数のデータを選択してカスタム関数を実行する場合、 引数として渡されるデータのIDは、「|||」で 繋ぐ形で 下記のように、一つの文字列で扱われます。 1000000001|||1000000002|||1000000003|||1000000004 ...
      • 【Zoho CRM】Call Intelligence(コール・インテリジェンス)の情報をZoho CRMへ連携する

        概要 「Call Intelligence(以下コール・インテリジェンス)」とZoho CRMを連携させる方法です。Call Intelligence(コール・インテリジェンス)の通話情報をZoho CRMのスケジュール処理で定期的に取り込み、キャンペーン、見込み客/連絡先、商談と関連付けます。 コール・インテリジェンスとは? 楽天コミュニケーションズ株式会社が提供する電話の効果測定ツールです。電話でお問い合わせの受付をする広告施策や広告価値の見える化が可能です。 設定 Zoho ...
      • 【Zoho CRM】商談の項目に自動的に取引先の項目を反映させることはできますか

        Q. 商談の項目に自動的に取引先の項目を反映させることはできますか? A. ルックアップ項目の連動項目で反映可能です。 ...

      Zoho Community

      Zoho ユーザーが集うオンラインフォーラムでは、サービスの使いこなしに関する活発な議論や情報交換が行われています。