https://smpdoc.shanon.co.jp/ja/cooperation/openapi/chapter004/
API/連携
APIの設定方法や機能についてセクションに分けて表示しております。1つのセクションで絞って記事を探したい場合は、右メニューのセクションで絞り込みから確認できます。
-
APIを利用
-
FAQOPENAPIにおけるFAQは、次のとおりです。SMPのテンプレート変数($FORM)との違いは何ですか?$FORMはSMPテンプレート内の決まった場所に決まった項目しか出せませんが、OPENAPIのデータは外部のWEBサイトの任意の場所にデータを表示できます。ただし、$FROMはログインしているリードに対応した動的なデータを出せるのに対し、OPENAPIはJavascriptに絞り込み条件(例えば、id=$FORM{visitorData.Id}等)を与える必要があります。SMPのドメイン名を変更したら何か問題が起きますか?参照しているWEBサイト内のscriptタグ内のURLのドメイン部分を変更する必要があります。データは最新ですか?SMP本体のデータを定期的に同期しているものなので、15分から長いものだと半日程度古いデータがあります。最新データを取得する方法はありますか?最新(リアルタイム)データを取得する場合は、SMPAPIをご利用ください。SMPが停止メンテナンス中でもデータを参照することはできますか?データ参照はできますが、データ同期は一時的に停止します。ただし、停止メンテナンスがデータベースメンテナンスを含む場合、データ参照、データ同期は利用できません。CDNを使用した管理はできますか?できません。
FAQ
-
OPENAPIの設定利用開始まで公開内容の確認申請登録内容の確認アクティベート(利用開始)利用開始までOPENAPIの利用したい旨を弊社担当者までご依頼ください。おおよそ3~5営業日でOPENAPIをアクティベートします。但し、お申込みが混み合っている場合は、アクティベートまでお時間がかかる場合がございます。予めご了解下さい。アクティベートまでのステップは、次のとおりです。公開内容の確認申請登録内容の確認アクティベート(利用開始)ステップの詳細については、以降をご参照ください。公開内容の確認各リソースデータの公開にあたり、次の表を確認させていただく必要があります。確認項目必須内容公開するリソースおよび項目必須公開するリソースおよび項目について確認させていたいただきます。データの公開範囲必須公開するリソースの公開範囲を全公開または認証ありの公開か選択してください。IPアドレス制限の有無任意IPアドレスによって呼び出し制限をかける場合は、そのIPアドレス(複数指定可)マーケティングプラットフォーム外のドメインから利用するか(外部サイトからのAPIコール)任意利用する場合、そのドメイン名(複数指定可)申請利用リソース、項目および、その他設定内容を決定後、弊社担当者までOPENAPIの利用したい旨をご依頼ください。お客様からいただいた内容をもとに、弊社OPENAPI導入担当者が登録作業を実施します。登録内容の確認弊社OPENAPI導入担当者からOPENAPI公開内容を確認させていただきます。公開内容に問題なければ、その旨をお伝えください。アクティベート(利用開始)公開内容に問題がなければ、弊社OPENAPI導入担当者がアクティベート作業を行い、利用開始となります。実際に利用開始できるまでに数日かかることがあります。https://smpdoc.shanon.co.jp/ja/cooperation/openapi/chapter003/
OPENAPIの設定
-
OPENAPIの機能APIコールパラメータ利用可能なデータと公開範囲各データのフォーマットと項目データの同期時間についてJavaScriptSDKAPIコールOPENAPIのAPIコールは、以下の形式でHTTPGETリクエストを実行してください。https://{domainname}/{path}?{parameter}各項目の詳細は、次の通りです。凡例内容{domainname}お客様のドメイン名(例:sample.smartseminar.jp)です。{path}APIへのアクセスURLパス(例:cp/api/resource/visitor)です。{parameter}各リソースのデータを絞り込むためのパラメータ(例:search_key1=Id&search_value1=30&search_operator1=eq)です。パラメータの詳細は、次の「パラメータ」をご参照ください。例:APIコールのHTTPリクエストサンプルパラメータ使用できるキーについて各リソースのJSONに出力される項目はすべて検索キーとソートキーとして使用できます。多階層に渡るネストされたキーは「.」(ピリオド)で結合して指定してください。検索条件指定パラメータ検索条件指定パラメータの詳細は、次のとおりです。パラメータ名内容search_key{cid}検索条件のキーを指定します。sk{cid}と略記可能です。search_operator{cid}検索条件の比較演算子を指定します。so{cid}と略記可能です。search_value{cid}検索条件の値を指定します。sv{cid}と略記可能です。_orkeysOR検索に指定するキーを指定します。{検索キー}={検索値}sk1={検索キー}&sv1={検索値}&so1=eqと同じです。検索条件の比較演算子として指定可能な文字列と意味は以下の通りです。文字列型項目(日付・日時以外)指定文字列意味eq検索条件の値に指定した文字列に完全一致する。ne検索条件の値に指定した文字列に完全一致しない。like検索条件の値に指定した文字列に部分一致する。文字列型項目(日付・日時)指定文字列意味eq検索条件の値に指定した日時・日付と等しい。ne検索条件の値に指定した日時・日付と等しくない。lt検索条件の値に指定した日時・日付より前。lte検索条件の値に指定した日時・日付より前、あるいは等しい。gt検索条件の値に指定した日時・日付より後。gt検索条件の値に指定した日時・日付より後、あるいは等しい。数値型項目指定文字列意味eq検索条件の値に指定した数値と等しい。ne検索条件の値に指定した数値と等しくない。lt検索条件の値に指定した数値より小さい。lte検索条件の値に指定した数値より小さい、あるいは等しい。gt検索条件の値に指定した数値より大きい。gt検索条件の値に指定した数値より大きい、あるいは等しい。配列型項目についてチェックボックスなどの配列型の項目については、文字列型項目、数値型項目ともに、eq,neのみ利用できます。lt,lte,gt,gte,likeには非対応です。並び替え・件数・オフセットの指定並び替え・件数・オフセットの指定の詳細は、次のとおりです。パラメータ名内容limit取得する件数を指定します。order並び順に使用する検索キーを指定します。direction並び順の昇順・降順を指定します。ascあるいはdescを指定可能です。その他特殊なパラメータその他特殊なパラメータについては、次のとおりです。パラメータ名内容callbackJSONP形式での取得を指定するためのパラメータです。_method長い検索条件を使用する際に、HTTPPOSTで送るために使用します。サンプル例1:プライマリーキーを指定してデータをひとつだけ取得する例2:リードID(=Id)が1例3:リードID(=Id)が10以下例4:リードID(=Id)が10以上かつ、20未満例5:リードID(=Id)が10もしくは20例6:名前1(=Name1)がABCを含む例7:名前1(=Name1)がABCで始まる例8:名前1(=Name1)がABCで終わる例9:多階層の検索キーを指定する次のように深い階層にある「C」を指定して検索しますレスポンスボディJsonサンプル[{A:{B:{C:2}}}]例10:JSONPで取得するレスポンスボディJsonサンプルTestFunction([{A:{B:{C:1}}}])利用可能なデータと公開範囲各リソースの設定は、利用用途など確認の上、シャノン担当者側で公開処理を行う必要があります。利用可能なデータと初期設定でのリソース名は、次のとおりです。データ名リソース名(デフォルト値)リード情報visitor申込情報visitor/applicationキャンペーン申込情報visitor/application/seminarサブキャンペーン申込情報visitor/application/session申込フロー情報seminar/flowキャンペーン情報seminarキャンペーン担当者割り当て情報admin/assignment/seminarキャンペーン来場履歴情報visitor/attendanceキャンペーン会場来場履歴情報visitor/attendance/seminarサブキャンペーン情報seminar/sessionサブキャンペーン来場履歴情報visitor/attendance/session講演者情報speaker管理者情報adminメール情報visitor/mail一斉メール配信情報mailsenderメールテンプレート情報mailtemplateアンケート情報visitor/enqueteアンケートテンプレート情報enquetetemplateアンケート項目情報enquetetemplate/questionアンケート履歴情報enquetehistory活動履歴情報visitor/activity資料情報document資料ダウンロード履歴情報visitor/documentdownloadクリックカウントURL情報clickcounturlクリックカウント履歴情報visitor/clickcountWebトラッキング履歴情報visitor/trackingaccesslogWebトラッキングセッション履歴情報visitor/trackingsessionWebトラッキングURL情報trackingurl割引情報seminar/discount割引履歴情報visitor/discounthistory検索条件情報searchconditionリード基本項目設定情報(個別キャンペーン)visitorsettingリード基本項目設定情報(全キャンペーン)visitorsetting_allキャンペーン項目設定情報seminaritemsettingサブキャンペーン項目設定情報sessionitemsetting講演者項目設定情報speakersetting一括登録情報bulkapi公開範囲について「認証あり(ユーザデータ限定)」または「認証なし」が選択可能です。認証あり(認証チェックのみ): リードまたは管理者としてログインしている場合のみデータを取得できます。認証あり(ユーザーデータ限定): リードまたは管理者としてログインしている場合のみデータを表示でき、表示されるデータはログインしているユーザー自身のものに限定されます。項目はすべて表示されます。認証なし: 安全が確認されている指定されたリストの項目が誰に対しても表示できる状態です。リソース名についてリソース名には、半角英数字、アンダースコア(_)、スラッシュ(/)を用いた任意の文字を設定可能です。リソース名の設定についてはシャノン担当者までご相談ください。各データのフォーマットと項目各データのフォーマットと項目については、次のとおりです。各データの表示項目名は、対応するマーケティングプラットフォームAPIの項目名と一致しています。OPENAPIの表示項目は、マーケティングプラットフォームAPI同様、その項目に値がある場合のみ表示されるので、データによってフォーマットが変化する点にご注意ください。実際のデータフォーマットについては、シャノン担当者より開示される実際のURLの呼び出しをもって確認してください。サンプル:リード(visitor)次のデータフォーマットと項目のサンプルをご参照ください(括弧内はリソース名です)。レスポンスボディJsonサンプル{Division:システムグループ,UserId:18,RegistrationType:{RegistrationTypeName:本登録,RegistrationTypeId:1},DateRegist:2006-04-24T19:13:43+09:00,Attribute173:18,Email:sample@shanon.co.jp,Position:サブマネージャ,EmailSendErrorCount:0,Prefecture:{PrefectureName:東京都,PrefectureId:10},InspectionType:{InspectionTypeName:OK,InspectionTypeId:1},SubEmailSendErrorCount:0,SubEmailValid:{SubEmailValidId:1,SubEmailValidName:有効},Membership:{MembershipName:使用する,MembershipId:1},Address1:港区XXXXX,DateUpdate:2014-09-01T17:11:39+09:00,Zip1:999,Name1:サンプル姓,CompanyName:Sample株式会社,EmailValid:{EmailValidId:1,EmailValidName:有効},EmailValidDateUpdate:2013-11-19T15:18:42+09:00,CompanyNameKa:サンプルテクノロジー,Name2:サンプル名,Attribute172:754,Id:15,PermissionType:{PermissionTypeName:希望する,PermissionTypeId:1},Language:{LanguageName:日本語,LanguageId:1},Attribute1List:{Attribute1:{Attribute1Name:同意する,Attribute1Id:1}},UnsubscribeStatus:0,Zip2:0099,Country:{CountryName:,CountryId:1},Tel:03-1234-9999,LoginId:abcd},データの同期時間についてOPENAPIは、SMPのデータを一定時間おきに同期しています。そのため、SMPのデータを更新してからOPENAPIデータに反映されるようになるまで、しばらく時間がかかることがあります。補足リアルタイムなデータ取得、通知やデモには向かないことに留意してください。また、次の表は、あくまで目安であり記載されている時間での同期を保証するものではないことにご注意ください。同期間隔と同期時間の目安は、次のとおりです。データ項目追加、更新データ同期間隔(差分同期)※1削除データ同期間隔(全同期)※2全同期の目安時間※3リード(属性情報)15分おき12時間おき400,000件キャンペーン申込情報15分おきなし100,000件サブキャンペーン申込情報15分おきなし100,000件割引コード15分おき12時間おき300,000件アンケートアンケート情報:15分おきアンケート情報:12時間おき250,000件活動履歴15分おき12時間おき200,000件キャンペーン来場15分おき12時間おき1,000件サブキャンペーン来場15分おき12時間おき7,000件資料ダウンロード資料情報:15分おき資料情報:12時間おき100件メール送信履歴一斉メール配信:15分おき一斉メール配信:12時間おき1,200,000件トラッキングアクセスログ:15分アクセスログ:なし1,200,000件クリックカウント履歴URL情報:15分おきURL情報:なし50,000件管理者(メール通知に利用)なし1時間おき100件キャンペーン担当者(メール通知に利用)なし1時間おき100件※1)初回は全データを同期、それ以降は変更のあったものだけを更新する(差分同期)、その実行間隔です。例えば、リードだと、初回は400,000件同期しますが、以降は15分おきに変更のあったリードを数件のみ更新するといった処理です。※2)削除データやトラッキングセッションのような差分更新できないデータは初回と同様の全データ同期を行う必要があり、その実行間隔です。リードの場合、削除データは12時間ごとに同期されます。※3)全データ同期にかかる目安の時間です。申込などの総数が多い、またはSMPのレスポンスが遅いデータには長時間かかる場合があります。通常は差分更新なので、毎回この時間がかかるわけではありません。注意・データ同期はシステムの込み具合によっては想定より遅れることがあります。・データ同期を任意のタイミング、間隔に設定することはできません。JavaScriptSDKOPENAPIを簡単にJavaScriptから呼べるようにするために、JavaScriptの関数からなる開発ツール=SDKが用意されています。利用者はこのSDKを使うことで、データの取得やエラーハンドリングを容易に行うことができます。注意当SDKは、OPENAPIの利用利便性や品質にのみ責任を負うものであり、利用者の使い方の不備によるデータの予期せぬ公開などには責任を負いません。SDKの読込み次のスクリプトタグをHTMLのhead部分に貼り付けます。注意点として、JQueryの読込み後に、SDKが読込まれるようにしてください。SDKの関数呼出しwindowオブジェクトに生成されるCPGadgetObjctからSDKの各関数を呼出します。window.CPGadgetObject.関数名(パラメータ);各SDK関数とその用途データ取得関数getData関数検索条件をJSON形式で指定し、引数で指定したcallback関数に取得したデータを返します。getDataWithJSONP関数検索条件をJSON形式で指定し、引数で指定したcallback関数に取得したデータを返します。パラメータ名内容サンプル第一引数:resource取得対象のリソース名visitor第二引数:wheres検索条件を指定したJSON{VisitorId:“1”}第三引数:callbackデータ取得完了時にコールバックされる関数。function(err,result){…}<サンプル>window.CPGadgetObject.getData(resource_name,where,function(err,result){if(err){console.log(err);}else{for(vari=0;Iresult.length;i++){…}}});データ取得関数のデータ絞り込みパラメータについて(第二引数:wheres)データ取得関数で使用する第二引数・検索条件のパラメータについては、通常のHTTPGETリクエストと同様です。パラメータの項を参照してください。認証関数マーケティングプラットフォームのユーザ認証状態の確認・認証を行います。checkLoginMP関数マーケティングプラットフォームのユーザ認証済みか確認します。checkLoginMPAdmin関数マーケティングプラットフォームのユーザ認証を管理者としてクリアしているか確認します。checkLoginMPVisitor関数マーケティングプラットフォームのユーザ認証を申込者としてクリアしているか確認します。パラメータ名内容サンプル第一引数:callbackデータ取得完了時にコールバックされる関数ですfunction(err,result){…}認証済みの時の戻り値以下のデータがコールバック関数の第二引数に返却されます。{“status”:“ok”,“UserDataId”:“1”,“UserId”:“1”,“UserTypeId”:“1”}認証していない時の戻り値以下のデータがコールバック関数の第二引数に返却されます。{“status”:“ng”}エラー時の戻り値コールバック関数の第一引数に何らかの内容が返却されます。<サンプル>window.CPGadgetObject.checkLoginMP(function(err,result){if(err){console.log(err);}else{…}});バックグラウンド認証関数doLoginBackgroundMP関数ユーザからは見えないバックグラウンド(隠しiframe)にてマーケティングプラットフォーム認証を行います。すでにマーケティングプラットフォームにログインしていない場合は認証に失敗します。doLoginBackgroundMPAdmin関数ユーザからは見えないバックグラウンド(隠しiframe)にて管理者としてマーケティングプラットフォーム認証を行います。doLoginBackgroundMPVisitor関数ユーザからは見えないバックグラウンド(隠しiframe)にて申込者としてマーケティングプラットフォーム認証を行います。パラメータ名内容サンプル第一引数:callbackデータ取得完了時にコールバックされる関数ですfunction(err,result){…}成功時の戻り値callback関数の第二引数に、checkLoginMPの結果が返却されます。失敗時の戻り値callback関数の第一引数に、何らかの内容が返却されます。<サンプル>window.CPGadgetObject.js_sender_url=“https://任意ドメイン/js_sender.html”;注意・バックグラウンド認証関数は、bodyタグの中に記述してください。ポップアップ認証関数doLoginPopupMP関数ポップアップウインドウにてマーケティングプラットフォーム認証を行います。MP認証がされていない場合はポップアップウインドウ中にマーケティングプラットフォームのログイン画面を表示します。また認証完了時に第一引数のURLをポップアップウインドウ中に表示します。doLoginPopupAdmin関数ポップアップウインドウにて管理者としてマーケティングプラットフォーム認証を行います。doLoginPopupVisitor関数ポップアップウインドウにて申込者としてマーケティングプラットフォーム認証を行います。パラメータ名内容サンプル第一引数:return_path認証完了時に表示するURLhttps://任意ドメイン/auth_complete.html第二引数:optionsポップアップウィンドウの表示制御用の引数{width:640,height:480,left:100,right:100,title:“LogintoMP”}<サンプル>window.CPGadgetObject.doLoginPopup(“https://任意ドメイン/auth_complete.html”,{width:640,height:480});画面遷移認証関数doLoginTransitionMP関数画面を遷移してマーケティングプラットフォーム認証を行います。マーケティングプラットフォーム認証がされていない場合はMPのログイン画面を表示します。また、認証完了時に呼出し時のページに戻ってきます。doLoginTransitionMPAdmin関数画面を遷移をして管理者としてマーケティングプラットフォーム認証を行います。doLobinTransitionMPVisitor関数画面を遷移して申込者としてマーケティングプラットフォーム認証を行います。<サンプル>window.CPGadgetObjectdoLoginTransitionMP();https://smpdoc.shanon.co.jp/ja/cooperation/openapi/chapter002/
OPENAPIの機能
-
OPENAPIの概要OPENAPIは、SHANONMARKETINGPLATFORM(以降、SMP)のデータをWEBサイトにJavaScriptとして手軽に公開できる軽量なAPIです。例えば、企業サイトへのイベントカレンダーの設置、展示会の出展者一覧の作成や来場者情報のグラフ化などが、HTMLとJavaScriptだけで構築することができます。※本ドキュメントを参照するにあたり、『SHANONMARKETINGPLATFORMAPI開発者ガイド』も合わせてご覧ください。OPENAPIの特徴SHANONMARKETINGPLATFORMAPIとOPENAPIの関係性についてOPENAPIの特徴OPENAPIにおける4つの特徴は、次のとおりです。高速なAPIデータをキャッシュし、独立したサーバーでリクエストを処理することで、高速なレスポンスを実現します。データはリアルタイムではなく、一定時間おきに更新されます。手軽な導入APIを直接参照する以外に、それらを簡易的に呼び出せるJavaScriptSDKを用意しています。SDKの関数をWEBページでコールするだけで簡単にデータを表示できます。セキュアな環境サーバー側でキャンペーンやリードといった各データごとに認証の有無の設定、アクセス元のIPアドレスの制限、出力するデータの絞り込みなどを設定できます。これにより、APIを使う側が特に意識しなくてもセキュアな情報提供が実現できます(これらの設定はシャノン担当者による作業が必要です)。優れた汎用性出力形式はJSONであるので、他のグラフツールや集計ツールとも相性のよい汎用性を持っています。注意OPENAPIはSMPデータをオープンデータとして公開する機能を持つため、公開データにリード情報のような個人データを含む場合、取り扱いについては十分注意してください。特定の個人に関する情報をオープンにする際、ログインしている本人にのみ公開する認証の設定または、IP制限を設けるなどの措置をとるようにしてください。SHANONMARKETINGPLATFORMAPIとOPENAPIの関係性についてSHANONMARKETINGPLATFORMAPI(以降、SMPAPI)とOPENAPIには仕様や用途に違いがみられます。違いについては、次のとおりです。比較項目SMPAPIOPENAPI同時リクエスト数1(並列コール不可)500程度まで可能(SDKの認証関数は2まで可能)パフォーマンス1秒以下〜10秒以上(データの種類や保存件数に依存)全データほぼ1秒以下データの完全性リアルタイム(マスターデータを提供)キャッシュデータ(一定時間おきに同期しているので古いものあり)可能なデータ操作登録、参照、更新、削除参照のみ認証APIキーによる認証認証なしか、SMPログインユーザによる認証ありかを選択可能アクセス制限IPアドレス制限可能IPアドレス制限可能操作可能なデータマーケティングプラットフォームに登録されているほぼ全データマーケティングプラットフォームに登録されているものから一部除いたものレスポンスフォーマットXMLJSONデータの絞り込みやソートパラメータで指定可能だが、指定できる項目に制限ありパラメータで全項目指定可能リードデータの選定不可(パラメータで指定する)可能(ログインしたリードのデータのみ表示可能)JavaScriptからの呼び出し不可可能(SDKあり)マーケティングプラットフォーム停止メンテナンス時の挙動データ参照、登録ともに不可データ参照は可能(但し、ネットワークメンテナンスやデータベースメンテナンス時を除く)想定用途外部連携システムとのサーバー間のデータ操作WEBサイトへのデータ表示https://smpdoc.shanon.co.jp/ja/cooperation/openapi/chapter001/
OPENAPIの概要
-
APISHANONMARKETINGPLATFORMAPIは、XMLメッセージの送受信によりSHANONMARKETINGPLATFORM(以降、SMP)への申込やリード情報の登録・参照などを可能にします。これによりSMPと連携するアプリケーションを開発することが可能になります。詳細は、「マーケティングプラットフォームAPI開発者ガイド」ページをご参照ください。また、その他のAPI関連資料をまとめたファイル群は、「API関連資料をまとめたファイル群」ファイルをダウンロードしてください(LZH形式)。API説明資料、SMPデータ構造(ER図)、サンプルコード(Java,Python,PHP,Perl,node.js)が入っています。https://smpdoc.shanon.co.jp/ja/cooperation/api/
API
-
-
ID 連携を利用
-
注意・制限事項ID連携機能の全般的な注意事項会員連携モードの注意・制限事項フォーム初期値連携モードの注意・制限事項ID連携機能の全般的な注意事項ログインID、ログインパスワードは連携できません。秘密鍵は32バイトの半角文字となります。アンケートは連携に対応していません。2つの異なる外部会員サイトから1つのSMPに連携する場合、システム設定は共通となります。外部会員サイトごとに変更することはできません。重複チェックは最低でも1項目は指定する必要があります。また、重複チェックの項目はリード基本情報の追加項目である必要があります。外部会員サイトをログアウトしても、SMPからは自動ログアウトはされません。外部会員サイトのログアウト時に、同時に{SMPドメイン名}/public/logoutを呼び出す必要があります。会員連携モードの注意・制限事項リードの秘密の質問は利用できません。連携するサイトからSMPへのボタンやリンクをクリックするアクションのみでデータ登録されます。そのため、想定よりも多いリードデータが登録されるケースがあります。(「会員連携モード特有の機能」のページをご参照ください。)上記に関連して、サイトのユーザーにとって、意図せず個人情報が登録される場合があります。現在の貴社のプライバシーポリシーに合致しているかどうか、必ずご確認ください。トラッキングを取得する場合、外部会員サイトとSMPのドメインをあるドメインのサブドメインとする必要があります。また、トラッキングは、cam3.jsのみ利用できます。(システム設定の「トラッキングタグ出力バージョン」を「3」と設定してください。)■トラッキング取得できるドメイン例サイト名ドメイン名外部会員サイトドメイン名test1.example.comSMPドメイン名test2.example.com上記構成の場合は、トラッキング利用ドメインを「example.com」としてください。■トラッキング取得できないドメイン例サイト名ドメイン名外部会員サイトドメイン名www.example.comSMPドメイン名test.smktg.jpフォーム初期値連携モードの注意・制限事項リードがログイン中には連携できません。サブキャンペーンの申込には使用できません。カートは利用できないため、カートを使用しない設定をする必要があります。連携先キャンペーンで、割り当てている申込フローの編集画面を開き、「カート(選択内容確認)画面」を「使用しない」に設定してください。https://smpdoc.shanon.co.jp/ja/visitor/other/chapter003/chapter007/
注意・制限事項
-
会員連携モード特有の機能データ登録タイミングについて連携時に項目を編集可・編集不可にする外部会員サイトのユニークキーをベースとしたデータ統合SMPが発行するID・パスワードの扱いについてデータ登録タイミングについて会員連携モードでは、ユーザが外部会員サイトからSMPへのリンクやボタンをクリックした時点で、キャンペーン申込を完了していなくてもリード(全キャンペーンモードで表示されるリード)として登録されます。ご注意ください。連携時に項目を編集可・編集不可にするリードの基本項目設定で、項目ごとに「パラメータ連携時」の編集可・編集不可を選択できます。デフォルトは「編集不可」となっています。この選択肢は、会員連携モード利用時に影響があります。2回目以降の連携で外部会員サイト側のデータが変更されていると、下記のように動作します。パラメータ連携時編集可能の項目:上書きしません。パラメータ連携時編集不可の項目:上書きします。※考え方:編集不可の項目は、外部のサイトをそのままマスターとして参照し、上書きする。編集可の項目は、SMPのデータを尊重し、上書きしない。外部会員サイトでマスターデータとなっている項目など、SMP上で上書きしたくない項目の上書きを防ぐことができます。=ただし、SMPのマイページの「登録個人情報の確認・変更」からその項目を編集することはできます。外部会員サイトのユニークキーをベースとしたデータ統合外部会員サイトでのユニークキーをシステム設定の「外部パラメータ重複フィールド」に指定することで、SMP側ではそのキーをベースに重複をチェックします。重複データがSMP側に存在した場合は、新規登録をせずに既存の会員の申込として扱います。これにより、重複データを防ぐことができます。外部会員サイトのキー(外部パラメータ重複フィールド)には複数の項目を指定することができます。※ただし、フォーム初期値連携モードでは重複チェックを行いません。ご注意ください。SMPが発行するID・パスワードの扱いについて会員連携モードを利用したSMPへのログインに際して、SMPで内部的に発行されるログインIDおよびログインパスワードは使用しません。本機能では、秘密鍵をベースとしたAESによる暗号化、およびSHA256による改ざんチェックを実施します。これにより外部会員サイトで既にログインされていれば、ログインID、ログインパスワードを利用しなくても安全にSMPにログインできます。なお、SMPのマイページを利用する場合、ログインIDおよびログインパスワードの変更機能を利用しないよう、テンプレートを設定する必要があります。https://smpdoc.shanon.co.jp/ja/visitor/other/chapter003/chapter006/
会員連携モード特有の機能
-
暗号化仕様ID連携機能では、AESによる個人情報の暗号化と、SHA256による改ざんチェックを行います。外部会員サイトとSMPとでデータを連携するためには、下記の仕様と流れに従って暗号化と改ざんチェックをする必要があります。暗号化の流れ改ざんチェック方法アルゴリズム暗号化モードパディング方式AESCBCPKCS5Padding/PKCS7Padding暗号化の流れ暗号化の流れは、次のとおりです。平文の各パラメータを、それぞれ16進数の文字列に変換します1.で変換した文字列を、AESで暗号化します2.で暗号化した文字列を16進数の文字列へ変換します3.で変換した文字列を、SMPのシステム設定の「外部パラメータフィールド一覧」で指定した順に、SMPにPOSTで送ります改ざんチェック方法改ざんチェックの流れは、次のとおりです。AESで暗号化した際の秘密鍵と、暗号化の流れ3.で変換した文字列をすべて連結しますこの時の順番は、秘密鍵を先頭、変換した文字列はSMPのシステム設定の「外部パラメータフィールド一覧」で指定した通りにします有効期限パラメータを指定する場合は、他のパラメータと同様に暗号化・16進数への変換をした後、一番最後に連結します1.(有効期限パラメータを指定する場合は2.)で連結した文字列を、SHA256でハッシュ化します3.で得られたハッシュ値をSMPに送りますhttps://smpdoc.shanon.co.jp/ja/visitor/other/chapter003/chapter005/006/
暗号化仕様
-
POST先のURL以下の形のURLに、POSTでパラメータを送ってください。{SMPドメイン名}/public/login?page=auth&return_path=${連携するURL}連携するURLは、「連携可能なURL」のページをご参照の上で入れてください。以下に具体例を2つ示します。例1:キャンペーン詳細画面へ連携する場合POST先URLは下記になります。例2:申込フォーム画面に連携する場合POST先URLは下記になります。https://smpdoc.shanon.co.jp/ja/visitor/other/chapter003/chapter005/005/
POST先のURL
-
パラメータのPOST方法ここではパラメータのPOST方法について、例を示します。下記のパラメータを渡したい場合名前(漢字):姓:シャノン名前(漢字):名:太郎名前(カナ):姓:シャノン名前(カナ):名:タロウ会社名:テストカンパニーここで、システム設定の「外部パラメータフィールド一覧」でname1:name2:name1_ka:name2_ka:company_nameと指定されているとします。下記がPOSTする際の例です(各パラメータの値を暗号化しています)。https://smpdoc.shanon.co.jp/ja/visitor/other/chapter003/chapter005/004/
パラメータのPOST方法
-
-
管理者多要素認証を利用
-
ステップ6:システム設定を有効化するシステム設定一覧画面([設定][システム設定一覧])で多要素認証設定を変更します。設定方法は、次の通りです。システム設定一覧画面([設定][システム設定一覧])に遷移し、[編集]ボタンをクリックします[多要素認証(管理者)]を「認証アプリ」に設定します[登録]ボタンをクリックします有効化の確認をします詳細は「多要素認証の利用手順」ページをご参照ください注意多要素認証を有効化した場合、その直後から有効化を行った本人も含む全管理者のログインセッションが非同期で強制的に切断されます。(APIも含む)運用中は設定の変更はしないでください。https://smpdoc.shanon.co.jp/ja/cooperation/mfa/chapter002/chapter001/chapter006/
ステップ6:システム設定を有効化する
-
ステップ5:サンドボックスを利用して動作確認をする多要素認証を有効化する前にサンドボックスで動作確認することを推奨します。詳細は「サンドボックス機能を利用する」ページをご参照ください。https://smpdoc.shanon.co.jp/ja/cooperation/mfa/chapter002/chapter001/chapter005/
ステップ5:サンドボックスを利用して動作確認をする
-
多要素認証を無効化する多要素認証を無効化し、ログインID/パスワードのみの認証方法に変更する手順について説明します。多要素認証を無効化する手順は次の通りです。システム設定一覧画面([設定][システム設定一覧])に遷移し、[編集]ボタンをクリックします[多要素認証設定(管理者)]の値を「無効」に設定します[登録]ボタンをクリックします注意多要素認証を無効化した場合、全管理者の多要素認証設定情報が削除され未設定状態となります。再度有効化する場合、多要素認証の設定を行う必要があります。https://smpdoc.shanon.co.jp/ja/cooperation/mfa/chapter002/chapter002/
多要素認証を無効化する
-
ステップ4:多要素認証設定画面を追加するシステムで利用するテンプレートを変更している場合、以下のテンプレートの更新が必要です。テンプレート変更については、「テンプレート変更を利用する」のぺージもあわせてご参照ください。テンプレートパステンプレート名説明system/admin/login/mfa_totp.html多要素認証案内画面、認証コード入力画面テンプレートの更新手順は以下の通りです。全キャンペーンモードで[WEB][テンプレート変更]に遷移します。現在システムに反映されているテンプレート(履歴の最上位に位置しているテンプレート)をダウンロード・解凍します。[デフォルトダウンロード(system.zip)]ボタンをクリックし、デフォルトのテンプレートをダウンロード・解凍します。次のファイルをコピーします。system/admin/login/mfa_totp.html2でダウンロードした現在適用されているテンプレートのsystem/admin/login/を開き、3でコピーしたファイルをペーストします。テンプレートが登録された時期によっては既にmfa_totp.htmlファイルが存在している場合がありますが、そのまま上書きしてください。更新したテンプレートをzip形式で圧縮し、[WEB][テンプレート変更][新規登録]からテンプレートを登録します。https://smpdoc.shanon.co.jp/ja/cooperation/mfa/chapter002/chapter001/chapter004/
ステップ4:多要素認証設定画面を追加する
-
ステップ3:多要素認証有効期間を設定するシステム設定一覧画面([設定][システム設定一覧])で多要素認証の有効期間の設定を変更することができます。詳細は「システム設定を管理する」、「設定によるログイン動作について」ページをご参照ください。設定名説明初期値設定値多要素認証の有効期間(管理者)多要素認証の有効時間を設定できます。1時間15分30分1時間2時間4時間12時間1日7日14日30日ログインセッション有効期間(管理者)ログインセッションの時間を設定できます。1時間15分30分1時間2時間4時間12時間1日7日14日https://smpdoc.shanon.co.jp/ja/cooperation/mfa/chapter002/chapter001/chapter003/
ステップ3:多要素認証有効期間を設定する
-
-
決済連携の設定
-
制限事項とFAQ制限事項クレジットカード決済処理について以下の制限事項があります。ご注意ください。支払方法は一括のみとなります。決済は常にリアルタイムで行われ、バッチ処理には対応しておりません。「与信のみ」という決済処理方法を指定した場合、下記いずれかの方法で決済処理を実施する必要があります。決済会社の管理サイト上で決済する。決済会社の管理サイト上で決済(売上)または、キャンセルした場合、申込詳細画面の「クレジット決済ステータス」は更新されません(与信のままとなります)。申込一覧画面から対象となる申込を選択し、[一括決済]ボタンをクリックする。SMPの管理画面から決済をキャンセルすることはできません。決済会社の管理サイト上でキャンセルしてください。なお、キャンセルした場合も申込詳細画面の「クレジット決済ステータス」は更新されません。必要であれば、申込詳細の「取引結果」「支払メモ」を編集してください。FAQクレジット決済には対応していますかはい。事前に決済会社と契約して管理アカウントを作成することで、作成するキャンペーンの申込にクレジット決済機能を追加できます。分割払いには対応していますか支払は一括のみの対応となります。「使用するカード会社」はどのように選べばよいですか使用する決済会社によって異なります。本マニュアル「リードが使用する決済方法の設定(担当者向け)」をご参照ください。与信とは何ですか与信とはクレジットカードの持ち主を審査し、利用の可否を判断することを指します。申込フォームの支払方法でクレジットカード決済が表示されませんシステム設定画面([設定][システム設定一覧])より「使用する支払方法」項目で「クレジットカード決済」にチェックを入れて保存してください。詳しくは、本マニュアル「リードが使用する決済方法の設定(担当者向け)」をご参照ください。クレジット決済で申込を行うと、エラー「カード番号と有効期限をもう一度お確かめください」が表示されます次のいずれかの可能性があります。入力したカード番号、有効期限にお間違いがないか再度ご確認ください。システム設定画面([設定][システム設定一覧])より外部接続先一覧に入力している情報が間違っている可能性があります。URLは間違いやすいのでご注意ください。コンビニ決済の申込に対応する払込票を確認したいですコンビニ決済の払込票は、申込一覧画面([リード][申込一覧])より「表示項目設定」から表示させます。システム設定項目に「コンビニ決済の支払い期限」「コンビニ決済の支払い期限(申込日からの日数)」の2種類の支払い期限がありますが、どちらが優先されますか申込日に近い方の期限が優先されます。決済の状況はどこで確認できますか決済状態は、SMP上ではご確認いただけません。ご契約の決済会社の管理画面でご確認ください。SMPが提携している決済会社はどこですかクレジットカード決済に関してはベリトランス株式会社と、GMOペイメントゲートウェイ株式会社、コンビニ・ペイジー決済についてはベリトランス株式会社がご利用いただけます。クレジット決済の手数料はいくらですか決済手数料につきましては、各決済会社へご確認ください。申込後に入金が行われましたが、SMPに反映されません決済の状況は自動では反映されません。「入金済み」「未入金」などの入金ステータスを示す入金フラグ機能でリードごとに手動で管理していただけます。入金フラグの変更方法は、「入金フラグを変更する」ページをご参照ください。決済状況の確認は各決済会社の管理サイトをご参照ください。決済の内容を変更・取消したいですSMP上では決済内容の変更・取消はできません。各決済会社の管理サイト・サポートへお問い合せください。決済画面で利用可能な$FORMってありますか決済情報入力画面で使用する$FORM変数は、次の通りです。FORM変数名変数内容変数値$FORM{gmo_js}token取得JavaScriptのHTMLタグSMPシステム設定外部接続設定GMOPayment用拡張設定項目で設定した値$FORM{select_card}カード決済会社識別子0:GMO2:VeriTrans4G$FORM{credit_no_pass}サーバー非通過の設定値0:通過する1:通過しない$FORM{token_api_key}TokenAPIKeySMPシステム設定外部接続設定VeriTrans4G用TokenAPIKeyで設定した値$FORM{host_url}サービスURL1SMPシステム設定外部接続設定VeriTrans4G用サービスURL1で設定した値複数人申込時の決済は可能ですか?はい、可能です。https://smpdoc.shanon.co.jp/ja/apply/charge/chapter004/004/
制限事項とFAQ
-
銀行振込・ゆうちょ振替の設定方法銀行振込・ゆうちょ振替につきましては、外部サービスと連携しておりません。そのため、申込後の入金状態に応じて、SMP管理画面を操作して入金状態を更新、キャンセルします。設定方法と入金状態の変更方法については、次のとおりです。システム設定画面([設定][システム設定一覧])に遷移しますまたは、銀行振込・ゆうちょ振替を利用するキャンペーン設定画面(個別キャンペーン管理モードにログイン[キャンペーン][キャンペーン設定])に遷移します次のように設定します項目名設定値使用する支払方法最低限、下記いずれかの項目にチェックが入っているか確認してください。✓銀行振込✓ゆうちょ振替使用する支払方法(日本語以外)日本語以外の言語を利用する場合、最低限、下記いずれかの項目にチェックが入っているか確認してください。✓銀行振込✓ゆうちょ振替申込後入金状態に応じて、入金状態を更新します入金状態の変更方法は、「入金フラグを変更する」ページをご参照ください。https://smpdoc.shanon.co.jp/ja/apply/charge/chapter004/003/
銀行振込・ゆうちょ振替の設定方法
-
コンビニ決済の設定方法コンビニ決済連携を利用し場合の設定方法は、次のとおりです。利用の流れ詳細(外部接続先)設定(管理者向け)システム設定、外部接続設定の設定テスト環境の手配コンビニ受付番号、払込票URLのテンプレート設定利用の流れコンビニ決済連携を利用してキャンペーンへの申込をした場合、以下のような流れで決済処理が行われます。注意SMP上では決済の結果確認をすることができず、通知もされません。決済状況は、決済会社の管理サイト上で確認する必要があります。決済状況を確認後、SMP上で各申込の入金状況を表す入金フラグを変更してください。入金フラグの変更方法は、「入金フラグを変更する」をご参照ください。詳細(外部接続先)設定(管理者向け)SMPでのクレジットカードやコンビニなどの決済に関する項目は、システム設定画面([設定][システム設定一覧])より設定します。※設定変更の際は、営業担当者にお問い合わせください。コンビニ・ペイジー決済の詳細設定の流れコンビニ・ペイジー決済を利用する場合は、システム設定画面([設定][システム設定一覧])より以下の項目を設定します。ご利用の際は、営業担当者にお問い合わせください(コンビニ・ペイジー決済はベリトランスのみ対応しております)。使用する支払方法コンビニ決済の支払い期限(申込日からの日数)外部接続先一覧各項目の詳細については、下の表をご参照ください。項目名説明設定値設定の可否使用する支払方法申込の支払方法を指定します。チェックボックスで選択◯コンビニ決済の支払い期限コンビニ決済の場合の支払期限を日付指定で設定します。システム設定からは設定できません。キャンペーン単位で設定します。本項目を設定する場合は、個別キャンペーンにログインし、「キャンペーン」の左側メニュー「外部接続設定」画面で設定してください。YYYY-MM-DDの形式で設定×コンビニ決済の支払い期限(申込日からの日数)コンビニ決済の場合の支払期限を申込日からの日数で設定します。半角数字で設定◯使用する支払方法(日本語以外)日本語以外の言語が設定された場合に使用する支払方法を選択します。チェックボックスで選択◯使用する支払方法のデフォルト既定の支払方法を設定します。「使用する支払方法(日本語以外)」の選択肢に対応した番号(1~8)を半角数字で設定◯使用する支払方法(日本語以外)のデフォルト既定の支払方法を設定します。(日本語以外の場合)「使用する支払方法(日本語以外)」の選択肢に対応した番号(1~8)を半角数字で設定◯確認画面でのクレジットカード番号表示確認画面でクレジットカード番号をすべて表示するか一部表示するかを選択します。1:一部はアスタリスク2:すべてアスタリスク◯申込情報の入金フラグの選択肢数入金フラグの選択肢の数を設定します。半角数字で設定×申込情報編集での金額変更申込後の支払金額を変更できるようにするかどうかを選択します。0:無効×外部接続先一覧提携してる決済サービスプロバイダーのアカウント(ID・PW)、URLを記入することで、使用可能となります。◯システム設定、外部接続設定の設定システム設定項目名設定値使用する支払方法下記項目のいずれかにチェックが入っているか確認してください。✓コンビニ決済(セブンイレブン)✓コンビニ決済(ローソン・セイコーマート・ミニストップ)✓コンビニ決済(ファミリーマート)✓コンビニ決済(サークルKサンクス・デイリーヤマザキ等、その他)使用する支払方法(日本語以外)下記項目のいずれかにチェックが入っているか確認してください。✓コンビニ決済(セブンイレブン)✓コンビニ決済(ローソン・セイコーマート・ミニストップ)✓コンビニ決済(ファミリーマート)✓コンビニ決済(サークルKサンクス・デイリーヤマザキ等、その他)使用する支払方法のデフォルト下記いずれかが設定されているか確認してください。1:クレジットカード決済2:銀行振込4:無料5:ペイジー決済(Pay-Easy)6:コンビニ決済(セブンイレブン)7:コンビニ決済(ローソン・セイコーマート・ミニストップ)8:コンビニ決済(ファミリーマート)9:コンビニ決済(サークルKサンクス・デイリーヤマザキ等、その他)使用する支払方法(日本語以外)のデフォルト下記いずれかが設定されているか確認してください。1:クレジットカード決済2:銀行振込4:無料5:ペイジー決済(Pay-Easy)6:コンビニ決済(セブンイレブン)7:コンビニ決済(ローソン・セイコーマート・ミニストップ)8:コンビニ決済(ファミリーマート)9:コンビニ決済(サークルKサンクス・デイリーヤマザキ等、その他)コンビニ決済の支払い期限(申込日からの日数)コンビニ決済の支払期限日数を設定してください。実際の支払い期限は「コンビニ決済の支払い期限」(設定されている場合)と「コンビニ決済の支払い期限(申込日からの日数)」の設定を比較し、より申込時点から近い方を採用します。外部接続設定システム設定編集画面を開き、外部接続先設定「VeriTransBuySmartCVS」を下記のように編集してください。項目名設定値有効/無効有効ログインIDVeritrans2G管理画面お客様情報シークレット(コンビニ/ペイジー決済用)ログインパスワードVeritrans2G管理画面お客様情報マーチャント鍵(コンビニ/ペイジー決済用)サービスURL1サービスURL2(空白)サービスURL3(空白)TokenAPIKey(空白)拡張設定項目(空白)メモ(空白)テスト環境の手配テスト環境の手配は、「テスト環境の手配」ページご参考に手配してください。コンビニ受付番号、払込票URLのテンプレート設定コンビニ受付番号、払込票URLの出力コンビニ決済で申込んだ場合、リードは店頭での支払の際にコンビニ受付番号または下図のような払込票が必要です。補足・コンビニ受付番号または払込票URLは申込完了後にリードに表示する必要があります。・コンビニ受付番号と払込票URLは、申込一覧画面からコンビニ受付番号、払込票URLを登録することで、申込一覧の項目としてSMP上に表示することができます(リードに表示されるわけではありませんのでご注意ください)。コンビニ受付番号と払込票URLをリードに表示するには、以下2つの方法のいずれかを行ってください。請求書のテンプレート(system/seminar_base/bill/plain.html)に下記$FORM変数を追記することで画面に表示する。コンビニ受付番号:$FORM{Transaction.receipt_no}払込票URL:$FORM{Transaction.payment_form_url}メール設定画面([メール][メール設定])から申込完了時のメールテンプレートの差込み項目としてコンビニ受付番号、払込票URLを指定することで送信メールに表示する。キャンペーンフローの作成(未公開)キャンペーン、またはサブキャンペーンを「準備中」で作成します「支払方法」を含むフローをキャンペーンに割り当てますキャンペーン一覧画面から作成したキャンペーンの[管理開始]をクリックして個別キャンペーンにログインしますフロー画面([キャンペーン][フロー])より、最下行の[編集]リンクをクリックして、フロー画面を設定しますフロー編集画面より、決済と関連するのは、以下の項目です。カート(選択内容確認)画面キャンペーン/サブキャンペーン複数人申込キャンペーンコード追加申込時の選択内容復元方法追加申込時の請求金額の変更許可合計ゼロ円の場合の支払方法/請求先キャンペーン代理申込対象キャンペーン詳細画面から対象キャンペーンに代理申込します。代理申し込みするキャンペーンの個別キャンペーン管理にログインしますキャンペーン詳細画面の[来場側詳細WEBページ(代理登録利用可)]リンクをクリックしてフロー画面に遷移します[申込]ボタンをクリックして代理申し込みを完了させますキャンペーン公開対象キャンペーンステータスを「公開」に更新します。https://smpdoc.shanon.co.jp/ja/apply/charge/chapter004/002/
コンビニ決済の設定方法
-
クレジットカード決済の設定方法クレジットカード決済の設定方法と決済の流れ、また、決済ブロバイダーとの連携方法について説明します。クレジットカード決済の流れ決済サービスプロバイダーについて決済サービスプロバイダー連携方法決済関連用語クレジットカード決済の流れSMP上でクレジットカードカードの与信・決済をどの画面で実施するのか下記3つから選択できます。システム設定画面([設定][システム設定一覧])で次を指定してください。項目選択肢クレジットカード決済会社・0:GMOPayment・2:VeriTrans4Gクレジットカードの与信・決済方法・0:与信と決済(確認画面にて与信・決済を実施)・1:与信と決済(支払方法画面にて与信、確認画面にて決済を実施)・2:与信のみ(確認画面にて与信を実施)注意運用中は設定の変更はしないでください。申込フローで申込みます各申込画面での決済の流れは、次のとおりです。クレジットカードの与信・決済方法申込フロー(支払方法画面)申込フロー(確認画面)申込フロー(完了画面)0:与信と決済(確認画面にて与信・決済を実施)与信・決済引き落とし1:与信と決済(支払方法画面にて与信、確認画面にて決済を実施)与信決済引き落とし2:与信のみ(確認画面にて与信を実施)与信決済会社管理サイト上で別途決済処理の後SMP上で与信と決済を実施する場合の流れSMPキャンペーン申込時に与信・決済を実行し、決済状態の確認を決済サービス管理画面で実施する方式です。設定方法は、システム設定画面([設定][システム設定一覧])より、「クレジットカードの与信・決済方法」項目で次を選択した場合の決済フローです。0:与信と決済(確認画面にて与信・決済を実施)1:与信と決済(支払方法画面にて与信、確認画面にて決済を実施)SMP上で与信のみ実施する場合の流れSMPキャンペーン申込時に与信のみを実行し、決済状態の確認を決済サービス管理画面で実施する方式です。設定方法は、システム設定画面([設定][システム設定一覧])より、「クレジットカードの与信・決済方法」項目で次にを選択した場合の決済フローです。2:与信のみ(確認画面にて与信を実施)決済サービスプロバイダーについて有料キャンペーンの決済にクレジットカード決済やコンビニ・ペイジー決済をご利用いただくには、事前に下記の決済サービスをご契約いただく必要があります。ベリトランス株式会社の「VeriTransBuySmartCVS(Veritrans2G)/VeriTrans4Gクレジットカード」GMPペイメントゲートウェイ株式会社の「GMOPGマルチペイメントサービス」注意各サービスの契約には数週間から1ヶ月かかることがございますので、ご注意ください。各決済サービスプロバイダーと連携する方法は、以降をご参照ください。決済サービスプロバイダー連携方法決済連携を行うのに必ず必要な設定となります。連携方法は、次のとおりです。決済サービスプロバイダーと契約します次の2種類のいずれかと契約ができます。・VeriTrans4Gの契約・GMOPGマルチペイメントサービスの契約VeriTrans4Gの契約VeriTrans4Gの契約をします。VeriTrans4Gの契約につきましては、ベリトランス営業担当者にお問い合わせください。通常はVeriTrans4Gを契約するまでに、1ヶ月を要しますのでご注意ください。GMOPGマルチペイメントサービスの契約GMOPGマルチペイメントサービスの契約をします。GMOPGマルチペイメントサービスの契約につきましては、GMOペイメントゲートウェイ営業担当者にお問い合わせください。通常はGMOPGマルチペイメントサービスを契約するまでに、1ヶ月を要しますのでご注意ください。テスト環境を手配します次の2種類のいずれかのテスト環境を利用することができます。・VeriTrans4Gのテスト環境を手配・GMOPGマルチペイメントサービスのテスト環境を手配VeriTrans4Gのテスト環境を手配ベリトランスの下記ページからVeritrans4Gのテスト環境(MAP)を申し込んでください。申込後の手順は次の通りです。申込完了後に受信したメールの案内に従って、「VeriTrans4G テスト利用プログラムサポートページ」にログインします[プログラム・資料ダウンロード]をクリックします「テスト用資料・ツール」欄の「テスト利用情報通知書」の[ダウンロード]をクリックしますMAPログイン画面のURL、マーチャントID、管理者パスワードが確認できます「管理者用」でログインします画面左下の「API設定情報はこちら」をクリックし、「API設定情報」画面に遷移します「API設定情報」画面から「[MDK]マーチャントCCID」「[MDK]マーチャント認証鍵」「[Token]TokenApiKey」を取得しますGMOPGマルチペイメントサービスのテスト環境を手配下記ページからテスト環境を申し込んでください。登録完了時に、メールで管理画面のショップURL、ショップログインユーザーID、パスワードなど管理画面の情報が送られますので、ショップログインユーザーID、パスワードでログインしてください。※サイト管理画面の情報ではなく、ショップ管理画面の情報でログインしてください。システム設定を設定します次に従って、システム設定を設定してください。項目名設定値使用する支払方法最低限、下記項目にチェックが入っているか確認してください。✓クレジットカード決済使用するカード会社利用するカード会社してください。VISAカードジャックスカードディーシーカードセントラルファイナンスダイナースクラブ日本信販UFJカードライフユーシーカードポケットカードイオンクレジットサービスマスターカードユニーカードアメリカンエキスプレスオリエントコーポレーションジェーシービー国内信販三井住友カードジーシーカードバンクカードサービス使用する支払方法(日本語以外)最低限、下記項目にチェックが入っているか確認してください。✓クレジットカード決済使用する支払方法のデフォルト下記いずれかが設定されているか確認してください。1:クレジットカード決済2:銀行振込4:無料5:ペイジー決済(Pay-Easy)6:コンビニ決済(セブンイレブン)7:コンビニ決済(ローソン・セイコーマート・ミニストップ)8:コンビニ決済(ファミリーマート)9:コンビニ決済(サークルKサンクス・デイリーヤマザキ等、その他)使用する支払方法(日本語以外)のデフォルト下記いずれかが設定されているか確認してください。1:クレジットカード決済2:銀行振込4:無料5:ペイジー決済(Pay-Easy)6:コンビニ決済(セブンイレブン)7:コンビニ決済(ローソン・セイコーマート・ミニストップ)8:コンビニ決済(ファミリーマート)9:コンビニ決済(サークルKサンクス・デイリーヤマザキ等、その他)確認画面でのクレジットカード番号表示下記いずれかを設定してください。1:一部はアスタリスク2:すべてアスタリスククレジットカード情報のサーバ通過下記設定してください。1:通過しない外部接続設定を設定します次に従って、外部接続設定を設定してください。項目名VeriTrans4G設定値GMOPGマルチペイメントサービス設定値有効/無効有効有効ログインIDマーチャントCCIDPGマルチペイメントサービス検証環境のショップIDログインパスワードVeritrans4G管理画面API設定情報[MDK]マーチャント認証鍵PGマルチペイメントサービス検証環境のショップパスワードサービスURL1サービスURL2サービスURL3(空白)管理画面API設定情報[Token]TokenApiKeyPGマルチペイメントサービス検証環境のショップID拡張設定項目test-paynow/v2(テスト環境)メモ(空白)(空白)キャンペーンフローを作成しますキャンペーン、またはサブキャンペーンを「準備中」で作成します「支払方法」を含むフローをキャンペーンに割り当てますキャンペーン一覧画面から作成したキャンペーンの[管理開始]リンクをクリックして、個別キャンペーンにログインしますフロー画面([キャンペーン][フロー])より、最下行の[編集]リンクをクリックして、フロー画面を設定します決済と関連するのは、以下の項目です。カート(選択内容確認)画面キャンペーン/サブキャンペーン複数人申込キャンペーンコード追加申込時の選択内容復元方法追加申込時の請求金額の変更許可合計ゼロ円の場合の支払方法/請求先代理申込でテスト環境で決済連携設定を確認します手配したテスト環境で、対象キャンペーンに代理申込して、決済連携の設定が正しくされていることを確認します。個別キャンペーン管理モードにログインしますキャンペーン詳細画面([キャンペーン][一覧])より、[来場側詳細WEBページ(代理登録利用可)]をクリックします申込画面の[申込]ボタンをクリックし、申込を進めます支払い画面でテスト用のクレジットカード番号を入力します次のいれずれかのテスト用クレジットカードを利用します。・VeriTrans4Gのテスト用クレジットカード・GMOPGマルチペイメントサービスのテスト用クレジットカードVeriTrans4Gのテスト用クレジットカードテスト用のクレジットカード番号は、次をご参照ください。カード会社カード番号有効期限セキュリティコードVISA4111-1111-1111-1111任意任意Master5555-5555-5555-4444任意任意JCB3528-0000-0000-0007任意任意JCB3528-0000-0000-0015任意任意JCB3528-0000-0000-0023任意任意GMOPGマルチペイメントサービスのテスト用クレジットカードテスト用のクレジットカード番号は、次をご参照ください。カード会社カード番号有効期限セキュリティコードVISA4111-1111-1111-1111任意任意代理申込の結果を確認しますSMP管理画面での確認SMPでは取引結果や、リードごとの入金状態を表す入金フラグを変更できます。また、決済の状態やクレジットカード情報の参照、キャンセル処理、与信のみSMPで実行した場合の決済処理は、ご契約の決済会社の管理サイト上で行います。項目名確認内容取引ID「SS-${14桁の数字}-${12桁の数字}」であること。取引結果「◯」であること。取引日付YYYY-MM-DDhh:mi:ss形式の日時であること。クレジット決済ステータス「決済」または、「与信」であること。VeriTrans4G、または、GMOPGマルチペイメントサービスの管理画面で決済状況を確認します・VeriTrans4Gの管理画面で結果を確認・GMOPGマルチペイメントサービスの管理画面で結果を確認ベリトランス4Gの管理画面で結果を確認ベリトランス4Gの管理画面にログインし、「取引検索」画面から該当取引IDの決済が検索できることを確認します。検索時は下記のように検索条件を指定してください。項目内容決済項目「クレジットカード」にチェックを入れる取引日時「指定なし」を選択する取引IDSMPの取引IDを設定するテスト取引「除外する」のチェックを外すGMOPGマルチペイメントサービスの管理画面で結果を確認GMOPGマルチペイメントサービスの管理画面にログインし、「都度決済」「詳細検索」画面から該当取引IDの決済が検索できることを確認します。検索時は下記のように検索条件を指定してください。項目内容オーダーIDSMPの取引IDを設定する処理日時処理を実行した日時を設定する外部接続先一覧の設定を本番に変更しますシステム設定編集画面を開き、外部接続先設定を下記のように編集してください。項目名Veritrans4G設定値GMOPGマルチペイメントサービス設定値有効/無効有効有効ログインIDマーチャントCCIDPGマルチペイメントサービス本番環境のショップIDログインパスワードVeritrans4G管理画面API設定情報[MDK]マーチャント認証鍵PGマルチペイメントサービス本番環境のショップパスワードサービスURL1サービスURL2サービスURL3(空白)管理画面API設定情報[Token]TokenApiKeyPGマルチペイメントサービス本番環境のショップID拡張設定項目paynow/v2メモ(空白)(空白)※管理画面のURL、マーチャントIDなどのログイン情報が不明な場合は、ベリトランス社担当営業にお問い合わせください。代理申込でキャンペーンに確認画面まで申込みして決済フローの確認をします対象キャンペーン詳細画面から確認画面まで代理申込します。個別キャンペーン管理モードにログインしますキャンペーン詳細画面([キャンペーン][一覧])より、[来場側詳細WEBページ(代理登録利用可)]をクリックします申込画面の[申込]ボタンをクリックし、申込を進めます実際に存在するクレジットカード番号を入力します[管理者ページに戻る]リンクをクリックしますキャンペーン申込確認画面まで遷移したことを確認し、管理画面に戻ります。注意「登録する」をクリックすると、実際に決済されますので注意してください。クリックした場合は、ベリトランス管理画面にログインし、決済をキャンセルしてください。キャンペーンを公開します対象キャンペーンステータスを「公開」に更新します。決済関連用語クレジットカード決済に関連する用語は、次のとおりです。用語説明与信クレジットカードで決済処理を行う際に、購入金額でカードが利用可能かを確認し、その利用枠が他のショッピングなどには利用されないように確保する処理を意味します。「オーソリ」ともいいます。決済商品やサービスの購入を完了するための「支払い」を意味します。決済サービスプロバイダー(PSP)クレジットカードを含む多様な決済手段をオンラインサービスを通して提供する企業を意味します。SMPと連携している決済サービスプロバイダーは、ベリトランス社・GMOペイメントゲートウェイ社になります。https://smpdoc.shanon.co.jp/ja/apply/charge/chapter004/001/
クレジットカード決済の設定方法
-
はい、対応しております。
シャノン指定の決済サービスとの連携となります。お客様側で決済サービスとの契約が必要となります。
費用詳細につきましては、シャノン営業またはカスタマーサポートまでお問合せください。
■製品・サービスに関するお問い合わせ- お電話からのお問合わせ
TEL:0120-955-008
■カスタマーサポートのお問い合せ先- WEBフォームからのお問合わせ
https://support.shanon.co.jp/hc/ja/requests/new - メールからのお問合わせ
Mail: support@shanon.co.jp - お電話からのお問合わせ
TEL:050-3196-1091
(営業時間:10:00-18:00 土・日・祝祭日を除く)
クレジット決済/コンビニ決済/ペイジー決済の対応
- お電話からのお問合わせ
-
-
SMP for Salesforceを利用
-
補足事項バージョンアップについてバージョンごとの留意事項バージョンアップについてSMPforSalesforceについて、機能不具合の修正や機能改善を実施してアプリケーションのバージョンが上がった場合、インストール済みの組織のバージョンは強制的にアップデートされます。なんらかの理由で最新版になっていないアプリケーションを手動でアップデートする場合は、バージョンアップ手順をご参照ください。バージョンごとの留意事項バージョン1.22アップデートアップデート概要1.22より、SMP連携オブジェクトに「キャンペーン申込キャンセル」が追加されました。SFDCからSMPへの連携によって、SMPの申込をキャンセルすることが可能となります。具体的な利用方法は、SMPオブジェクトリファレンスのキャンペーン申込キャンセルをご参照ください。アップデート時の追加手順1.22より前のバージョンからアップデートした場合、キャンペーン申込キャンセルを利用するためには以下の追加手順が必要です。[設定]の[作成][オブジェクト]からカスタムオブジェクトの一覧を表示し、「オブジェクトマッピング」の詳細に進みます「カスタム項目&リレーション」欄の「SMP更新方法」をクリックして詳細へ進み、「値」欄に「DELETE」を新規追加しますオブジェクトマッピングの詳細へ戻り、「カスタム項目&リレーション」欄の「SMP連携オブジェクト名」をクリックして詳細へ進み、「値」欄に「キャンペーン申込キャンセル」を新規追加します「SMP連携オブジェクト名」の詳細に戻り、「項目の連携関係」欄の「SMP更新方法」の編集をクリックします項目の連携関係の編集で、「SMP連携オブジェクト名」の「キャンペーン申込キャンセル」に対して「SMP更新方法」の「DELETE」を選択し、保存します。上記設定により、オブジェクトマッピングでキャンペーン申込キャンセルを指定し、SMP更新方法にDELETEを指定できるようになります。バージョン1.23.1アップデートアップデート概要1.23.1にて、オブジェクトマッピングに項目「SMP取得件数」が追加されました。この値を調節することにより、SMPから1回で取得したデータサイズが大きすぎる場合にエラーになる現象を回避することができます。また、以前のバージョンでは上記データサイズ制限によってエラーになった場合に延々とSMPへのリクエストを繰り返していましたが、本バージョンより実行エラーで停止するようになりました。アップデート時の追加手順1.23.1より前のバージョンからアップデートした場合、この項目を利用するためにはオブジェクトマッピング画面のレイアウトを編集する必要があります。アプリケーションのバージョンアップを実施後、追加で下記の操作を行います。オブジェクトマッピングの詳細画面にて、「Force.comクイックアクセスメニュー」の「レイアウトを編集する」をクリックします画面上部の項目リストから「SMP取得件数」が選択できることを確認します。「SMP取得件数」をドラッグし、図の位置にドロップします上部の「保存」をクリックしてレイアウトを保存すると、オブジェクトマッピングの編集・詳細画面にて「SMP取得件数」を更新・閲覧できるようになります。バージョン1.23.2アップデートアップデート概要SOQLで利用可能な組み込みの変数「次回実行日時」NextRunDateTimeを利用できるようになりました。SFDCから取得するデータの範囲をより細かく制御できます。具体的には、SFDCから連携するデータを2回の連携ジョブで重複して取得しないようにすることができるようになります。変数「次回実行日時」の用途たとえば、ある連携ジョブで「最終更新日時が前回実行日時以降」という条件だけでSFDCデータの取得を行っていた場合、対象データには取得実行時までのものが含まれます。前回実行日時はそのジョブが終わると、その連携ジョブの開始した日時が入るので、前回の連携実行中に更新されたデータは、前回の連携と次回の連携の両方で対象データとして取得される可能性があります。これは、複数の連携ジョブや複数のオブジェクトマッピングを実行しているなど1度の連携ジョブの実行に時間がかかる場合に起きやすく、キャンペーン申込キャンセルなど繰り返し実行するとエラーになるような連携を実行している場合に問題となる場合があります。キャンペーン申込キャンセルを連携しているケースで例示すると、以下のようなイメージです。01:00-ジョブ<1回目>開始01:00-オブジェクトマッピング1(何かの連携)を開始01:02-申込キャンセル連携の対象レコードAを更新01:03-オブジェクトマッピング2(申込キャンセル)を開始 <前回実行日時>から現在までの更新を取得 レコードAを連携(キャンセル実行)→OK01:05-ジョブ<1回目>終了02:00-ジョブ<2回目>開始 オブジェクトマッピング1を開始02:03-オブジェクトマッピング2(申込キャンセル)を開始 前回実行日時=01:00から現在までの更新を取得 再びレコードAを連携(キャンセル実行)→キャンセル済みなのでエラー(NG)02:03-ジョブ<2回目>終了この問題を回避するために、次回実行日時の変数を利用して、「最終更新日時が前回実行日時以降、かつ、最終更新実行日時が次回実行日時以前」という条件を設定します。SOQL実行時、その時点で「次回実行日時」にはまだ現在実行中の連携ジョブが開始した日時が入っています(連携ジョブが正常完了すると、リスケジュールされて「次回の」日時に更新されます)そのため、データの取得範囲を「次回実行日時」以前とすることで、次回の連携ジョブ実行時には前回の取得範囲のデータが再度入らないようにすることができます。たとえば、以下のようなSOQLを指定します。SELECTId,SMP_ID__c,SMPApplicationStatus__cFROMCampaignMemberWHERESMP_ID__c!=nullANDSMPApplicationStatus__c='キャンセル'ANDLastModifiedDate:LastRunDateTimeANDLastModifiedDate=:NextRunDateTimeバージョン1.32アップデートアップデート概要連携ログの保存方法の改善SMPforSalesforceの連携ログの保存方法を変更しました。従来、連携ログは連携ジョブごとにファイル形式で分割・保存していましたが、Salesforceのレポート機能を利用して閲覧・出力する方式に変更します。連携ジョブ1回の処理量が多い場合でも、ログをひとつのExcelファイルとしてダウンロードできます。連携ログの出力内容の改善連携エラーになった連携元データの主キーを追加出力するように改善しました。エラー対象データを特定しやすくすることで、運用・導入時のトラブルシュートの負担を軽減します。停止した可能性のある連携ジョブを検知する機能を追加実行中のまま長時間経過した連携ジョブや、実行予定時刻を過ぎても実行開始していない連携ジョブを検知する機能を追加しました。Saleforceの基盤や想定外の障害等によって、連携ジョブの自動実行が停止してしまった可能性がある場合にメール送信します。既存データの判別に利用する項目(更新キー)を複数指定可能に連携先にデータがすでに存在するかどうかを判断するための更新キーに利用する項目を複数指定できるようにしました。たとえば、リード情報であればEmail+姓+名+会社名など複数の項目を利用して、連携先に既に該当するデータが存在するか判定することができます。一部フィルタ処理の不具合改善連携元データが空白の場合に処理をスキップすべき一部のフィルタ処理がエラーになる問題を改善しました。アップデート時の追加手順*連携ログ参照のために必要な設定連携ログの参照方法変更に伴い、追加の設定が必要です。カスタムオブジェクト「SMP_ログ」の設定変更[設定]→左上のクイック検索より「オブジェクト」で検索、カスタムオブジェクト設定へオブジェクト「SMP_ログ」を開き、「レポートで使用する」にチェックがついていることを確認します「レポートで使用する」にチェックがついていない場合、編集画面を開いて「レポートを許可」にチェックを入れて保存します連携ジョブの画面レイアウトを変更して「ログレポート」を表示連携ジョブの詳細画面にて、「レイアウトを編集する」(または「Force.comクイックアクセスメニュー」の「レイアウトを編集する」)をクリックします画面上部の項目リストから「ログレポート」が選択できることを確認します。「ログレポート」をドラッグし、図の位置にドロップします上部の「保存」をクリックしてレイアウトを保存すると、オブジェクトマッピングの編集・詳細画面にて「SMP取得件数」を更新・閲覧できるようになります。レイアウトを変更しても、項目「ログレポート」が表示されない場合、項目の参照権限が設定されていない可能性がありますレポートIDの設定セットアップ手順の連携ログレポートのレポートID設定を参照して、レポートIDをカスタム設定に登録してください。停止した連携ジョブ検知のための設定セットアップ手順の連携ジョブの停止検知機能のための設定を参照して設定を行ってください。(既に別途、検知のためのワークフロー等を導入済みであれば設定は不要です)バージョン1.34アップデートアップデート概要トークン取得エラー対応のためにリトライを追加タイムアウトを10秒から120秒へ延長https://smpdoc.shanon.co.jp/ja/cooperation/apex2/chapter009/
補足事項
-
FAQ・トラブルシュート機能・仕様について連携実行時のトラブルシュート機能・仕様についてアプリケーションをインストールするSFDC組織のエディションに制限はありますか?本アプリケーションはSFDCのワークフローやトリガー等の機能を利用するため、Enterpriseエディション以上でのみご利用可能です。SFDC上でSMPのリード、キャンペーンに相当するオブジェクトをカスタムオブジェクトで設定することはできますか?はい、任意のカスタムオブジェクトを連携対象とすることが可能です。ただし、キャンペーンメンバーのようなリレーションを実現するためには、同様の参照関係を設定する必要があります。また、キャンペーンメンバーを利用する場合と同様、一時オブジェクトおよびSFDC→SFDC連携を利用して、参照関係を更新するよう設定を工夫する必要があります。連携ジョブが重複実行されることはありますか?スケジュールされたタイミングでの自動実行の場合、基本的に同時並列実行されません。連携ジョブの間で実行順の指定はユニーク制約がかかります。また、同一連携ジョブの実行中は「実行中フラグ」が立ち、同時実行しないようになっています。ただし、手動実行した場合は他の連携ジョブと同時実行される可能性があります。手動実行する場合、実行中の連携ジョブにご注意ください。一度失敗した連携ジョブを途中から実行することはできますか?途中で止まった連携ジョブを再開することはできません。また、ジョブが実行中のまま停止してしまった場合などは、トラブルシュートの連携ジョブが実行中のまま停止してしまった場合をご参照ください。連携ジョブのコピーはできますか?SFDC標準機能によるオブジェクト単位のコピーが可能です。別環境への移行等については、SFDC提供のデータローダで可能です。詳しくは、データのエクスポート・インポートの項をご参照ください。アプリケーションのインストールに伴い、顧客SFDC環境のカスタムタブを消費しますか?いいえ、消費しません。アプリケーション用のカスタムタブは実際に追加されますが、これらはインストールした組織のカスタムタブ数にはカウントされませんSMPに接続できない場合、リトライする機能はありますか?SMPに対するAPIコールは、3回までリトライされます。3回実行してSMPに接続できない場合は、異常終了します。連携用SFDCユーザーを変更することは可能ですか?可能です。SMPforSalesforceをインストールした後、連携ジョブを最初に作成・保存すると、[設定]の[スケジュール済みジョブ]に「SMP_SFDC_API_JOB」という名前のジョブが作成されます。このスケジュール済みジョブが保存されていることで、連携処理を定期実行するようになっています。このジョブの「登録実行者」には連携ジョブを作成した管理者が設定されており、連携処理の定期実行はこの管理者による操作として処理されます。連携処理を実行する管理者を変更するためには、このスケジュール済みジョブの「登録実行者」を変更する必要があります。連携ジョブを新規作成したタイミングでこのスケジュール済みジョブが存在しなければ自動作成されます。スケジュール済みジョブは1件だけ必要で、既に同名のジョブが存在する場合は何もしません。既存のスケジュール済みジョブを削除し、新しい管理者で連携ジョブを一度新規作成することで、新たな管理者を登録実行者としたスケジュール済みジョブを作成し直すことができます。変更手順は以下を参考ください。実行中の連携ジョブがないことを確認し、作成済みのすべての連携ジョブの有効フラグを外します[設定]→[ジョブ]→[スケジュール済みのジョブ]からジョブ名「SMP_SFDC_API_JOB」のジョブを削除しますスケジュールが削除されている間は、連携ジョブの定期実行が停止します新たに登録実行者とする管理者で、[連携ジョブ]の「新規」ボタンから連携ジョブを作成、必須項目に適当な値を入力してダミーの連携ジョブを保存しますこの連携ジョブは有効である(有効フラグにチェックを入れる)必要はありません。配下にオブジェクトマッピングなどを追加する必要もありません新たな管理者は、SMPforSalesforceに対する全権限と、連携対象データの操作権限がある標準ライセンスユーザーである必要がありますChatterユーザーなど、機能制限のある無料アカウントは利用できませんスケジュール済みのジョブに「SMP_SFDC_API_JOB」のジョブが再作成されていることを確認します上で作成した連携ジョブは、スケジュール済みジョブが作成された後に削除してもかまいません上の手順1で有効フラグを外した連携ジョブの有効フラグを元に戻します連携の定期実行を停止することはできますか?上記回答にある[スケジュール済みジョブ]の「SMP_SFDC_API_JOB」という名前のジョブを削除すると、定期的な自動実行は停止します。自動実行を再開する場合は、上記手順にあるように、連携実行者とする管理者ユーザーによって何らかの連携ジョブを新規登録してください。SFDCのAPIコールはどの程度消費しますか。その他、SFDCのガバナ制限に関連して注意すべき点はありますか?SMPforSalesforceでは、連携処理時のSFDCに対するデータ取得・更新はApexコードを通じてSFDC内で実行されるため、SFDC側のAPIコールは原則、消費しません。ちなみにSMPに対しては、SMPからのデータ取得時は100件ごとに1APIコール(単純なリード情報のみの場合。複数のオブジェクトを参照するリソースの場合、その数分コールします。たとえば、「キャンペーン申込」であればリード+キャンペーン+申込+申込フローなどの参照先それぞれのAPIメソッドが実行されます)、SMPへのデータ登録・更新時は1件ごとに存在チェックと登録・更新処理でそれぞれ1APIコール(1件あたり最低2コール)が、最低限発生するAPIコール数の目安となります。また、APIコール以外のApexガバナ制限についても、処理を分割するなど、原則として制限にかからないような作りになっております。処理件数が多い場合、トータルの実行時間は長くなりますが、単位時間あたりのリソース消費量は一定量に抑えているイメージです。処理性能については、パフォーマンスについてをご参照ください。さらにまた、SFDCで保持できるデータ量は契約によって異なります。連携するデータはもちろん、連携ログデータによっても容量を消費しますので、ログの保存期間の設定などにご注意ください。SMPforSalesforceを利用しているSFDC環境のSandboxを作成した場合、どのような影響がありますか?SMPforSalesforceでは、SMP接続設定というカスタム設定で接続先のSMP情報を保持しています。また、スケジュール済みジョブに設定があることで連携処理が定期実行されます。つまり、これらの情報も含めてSandboxを作成した場合、Sandbox環境から連携先に設定しているSMPへの連携が実行される可能性があります。Sandbox環境から意図しない連携が実行されてしまうのを確実に防ぐためには、Sandbox作成時はこれらの情報をコピーしないようにするか、Sandbox作成後にSMP接続設定を削除、または編集して有効チェックを外すか別の接続先に変更してください。また、作成した環境で連携を利用しない場合は、保存されている連携ジョブの有効フラグを外すか、または連携ジョブを削除ください。自動実行を停止する場合は、「スケジュール済みジョブ」の「SMP_SFDC_API_JOB」を削除してください。なお、SalesforceにおけるSandbox作成時の挙動や、コピー対象となるデータ等の正確な情報につきましては、恐れ入りますがSalesforceへご確認ください。ジョブの実行時間の長さによって、次回のジョブ実行の時間が遅くなることはありますか?ジョブの実行時間が繰り返しタイミングの時間内に収まっている場合、実行時間が遅くなる(後ろにずれる)ことはありません。たとえば、繰り返しタイミングを6時間と設定していてジョブ実行に平均3時間かかる場合、以下のようになります。(1回目)00:00開始→03:00終了(2回目)06:00開始→09:00終了(3回目)12:00開始→18:00終了一方、ジョブ実行が繰り返しタイミングに設定している時間よりも長くなってしまった場合は、次回の実行をスキップします。たとえば、繰り返しタイミングを3時間と設定していてジョブ実行に4時間かかる場合、以下のようになります。(1回目)00:00開始→04:00終了(2回目)03:00開始→(1回目が終わっていない=実行中のためスキップ)(3回目)06:00開始→10:00終了「キャンペーン申込」と「サブキャンペーン申込」、「キャンペーン申込」と「キャンペーン申込アンケート」、あるいは、「キャンペーン申込アンケート」と「アンケート履歴」の違いは?「キャンペーン申込」は、キャンペーン型のキャンペーンに対する申込情報を取得するためのオブジェクトです。一方、「サブキャンペーン申込」は、サブキャンペーン型のキャンペーンに対する申込情報を取得します。よって、取得したい申込情報のキャンペーンの型に応じてどちらを利用するか決めます。そもそもサブキャンペーン型キャンペーンを利用していない場合、「サブキャンペーン申込(アンケート)」は不要です。「(サブ)キャンペーン申込アンケート」は、「(サブ)キャンペーン申込」の内容に申込時のアンケート回答内容が追加されたものです。つまり、「(サブ)キャンペーン申込」の上位互換なので、「(サブ)キャンペーン申込」が取得可能な情報はすべて取得可能ですが、申込時のアンケート回答情報を取得する必要がない場合は、「(サブ)キャンペーン申込」を利用するとよいでしょう。「アンケート履歴」は、キャンペーンへの申込情報は取得せず、アンケート回答履歴を取得します。事後アンケート(キャンペーン申込者が回答可能なアンケート)の回答も取得できます。申込に関係なく、アンケート回答情報のみを取得したい場合は、こちらを利用します。連携実行時のトラブルシュートSMPへのAPI接続に失敗するケース1:SMP接続設定のURLのフォーマットが間違っている(プロトコル部(が入力されていない等)SMP接続設定で指定するURLはhttps://から始まるフォーマットで記述する必要があります。例:エラー例[2015-10-13T17:30:43.444JST]ERROR[JOB-ID:a0928000004dCimAAE]0300設定情報の取得に失敗しました。トークンケース2:リモートサイト設定を追加していない接続対象となるSMPのドメインは、SFDCの設定「セキュリティコントロール」にある「リモートサイト設定」に登録されている必要があります。エラー例[2015-10-20T16:26:46.250JST]FATAL[JOB-ID:a09280000045bqKAAQ]0300設定情報の取得に失敗しました。トークン[SMPAbRequest]Line:1102【System.CalloutException】Unauthorizedendpoint,pleasecheckSetup-Security-Remotesitesettings.endpoint=[2015-10-20T16:26:46.252JST]FATAL[JOB-ID:a09280000045bqKAAQ]0003ケース3:APIリクエストがIP制限にひっかかっている連携に使用するSMPのAPIキーはSFDC環境のIPアドレスからのリクエストを許可されている必要があるため、SMPforSalesforce専用に発行されたAPIキーを利用してください。SMPforSalesforceのために発行されたAPIキーを接続設定に指定しても下記のようなエラーが連携ログに出力される場合、サポートまでお問い合わせください。また、SMPのシステム設定でIP制限をドメイン全体に適用している場合は、SFDC環境のIPアドレスをその許可対象にも含める必要があります。ホワイトリスト登録が必要なSalesforceのIPアドレスとドメイン(Salesforceヘルプサイト)を参照し、「SalesforceのIP範囲」に記載されたIPアドレス範囲を「IP制限」の設定値に含めてください。(IP制限の設定を誤ると、管理画面も含め対象SMPにどこからもアクセスできなくなる可能性もあるため、設定変更は慎重に行ってください)エラー例ERROR[JOB-ID:a026F00000tZ0fZQAS]1012GET:/services/rest/visitorに1件失敗しました。403Forbiddenケース4:SMPがメンテナンス停止中SMP環境が停止メンテナンスを実施中の場合、連携実行できません。サービス再開後に再度お試しください。エラー例[2015-12-26T02:00:52.998JST]ERROR[JOB-ID:a0828000007EEUEAA4]1012GET:/services/rest/visitorに1件失敗しました。システムメンテナンスのお知らせ連携設定に起因するエラーや問題存在しないSFDCオブジェクトまたは項目をマッピングに指定している連携ジョブ実行時、項目マッピングに指定されているオブジェクトおよび項目が、実際に設定が存在するかチェックがかかります。存在しない場合は、エラーとなります。指定した項目のAPI参照名を確認し、実際の項目名に修正するか、カスタム項目を設定してください。エラー例[2015-10-20T16:23:47.332JST]FATAL[JOB-ID:a09280000045bqKAAQ]0003[SMPAbRequest]Line:220【SMPCOOP.SMPCheckObject.ExistObjectException】オブジェクトまたは項目が存在しません。オブジェクト[Lead]フィールド[SMP_ID__c]オブジェクトまたは項目が存在しません。オブジェクト[Lead]フィールド[SMP_ID__c](SMPCOOP)存在しないSMPの項目をAPIパラメータや項目マッピングに指定しているSMPに対して存在しない項目を条件に指定したAPIリクエストを実行すると、APIエラーが発生します。特に、追加項目のIDがその環境に存在するものかなど、APIパラメータや項目マッピングの指定に間違いがないかご確認ください。エラー例ERROR[JOB-ID:a026F00000tZ0fYQAS]1012GET:/services/rest/seminarに1件失敗しました。3000ReceiverServerError読み取り専用のSFDC項目を連携先の更新対象に指定している項目が存在していても、読み取り専用に設定されている項目は連携時に更新できません。書き込み可能な項目を指定してください。たとえば、各オブジェクトのid項目はシステムによる自動採番でユーザーによる書き込みができないため、項目マッピングによって書き込み先に指定することはできません。エラー例FATAL[JOB-ID:a2w5F000004VQnAQAW]0003[SMPAbRequest]Line:152【SMPCOOP.SMPCheckObject.AccessException】編集権限が無いオブジェクトまたは項目が存在します。オブジェクト[contact]フィールド[id]権限チェック中にエラーが発生しました。オブジェクト[contact]フィールド[id](SMPCOOP)必須入力の項目に空白値で登録しようとしている入力が必須の項目は、連携時に必ず値が入力されるようにします。エラー例[2015-10-20T16:42:38.592JST]ERROR[JOB-ID:a09280000045bqKAAQ]1102SFDC:leadのINSERTに失敗しました。Database.SaveResult[getErrors=(Database.Error[getFields=(Company);getMessage=値を入力してください:[Company];getStatusCode=REQUIRED_FIELD_MISSING;]);getId=null;isSuccess=false;][2015-10-20T16:42:38.596JST]INFO[JOB-ID:a09280000045bqKAAQ]1101SFDC:leadのINSERTに0件成功、1件失敗しました。SFDCからのデータ取得にSOQLを記述していて、select対象に含めていない項目をマッピング設定してしまったSOQLを記述する場合、項目マッピングに指定する項目はすべてselect句の対象に含める必要があります。エラー例(1)[2015-10-24T04:52:01.507JST]ERROR[JOB-ID:a09280000057015AAA]2100フィルター処理エラー。レコード=Lead:{Id=00Q28000002kL0EEAU,LastName=鈴木,Company=シャノンテスト社,SMP_ID__c=5}[SMP]Line:75【SMPCOOP.Filter.FilterException】SObjectrowwasretrievedviaSOQLwithoutqueryingtherequestedfield:Lead.FirstName(SMPCOOP)[2015-10-24T04:52:01.508JST]FATAL[JOB-ID:a09280000057015AAA]0003[SMPAbRequest]Line:1664【SMPCOOP.SMP.SMPException】SObjectrowwasretrievedviaSOQLwithoutqueryingtherequestedfield:Lead.FirstName(SMPCOOP)エラー例(2)[2016-05-02T01:05:00.371JST]INFO[JOB-ID:a0828000007EEUBAA4]0000SOQL.query:SELECTId,SessionTitle__c,Lead__c,Campaign__c,SMP_ID__c,SMP_VS_ID__cFROMSubCampaignApplicationEnquete__cWHERELead__c!=nullANDCampaign__c!=nullANDVisitorId__c=:var1ANDSessionId__c=:var3ORDERBYidLIMIT1[2016-05-02T01:05:00.443JST]FATAL[JOB-ID:a0828000007EEUBAA4]0003[SMPAbRequest]Line:811【System.NullPointerException】Attempttode-referenceanullobject(SMPCOOP)SMP項目の指定にプレフィックスが付いていないか、間違っている項目マッピングや、更新キーにSMPの項目を指定する場合、APIメソッド名をプレフィックスに含めた形式(Visitor.Name1など)で正確に指定する必要があります。(参考:項目表記フォーマット)エラー例[2015-11-19T17:22:02.424JST]INFO[JOB-ID:a09280000057HXEAA2]1000ジョブ:L1:リード新規(SFDC→SMP)を開始します。[2015-11-19T17:22:07.538JST]INFO[JOB-ID:a09280000057HXEAA2]0000SOQL.query:SELECTId,SMP_ID__c,Email,FirstName,LastName,CompanyFROMLeadWHERELastModifiedById!='005280000018AFK'ANDIsConverted=FALSEORDERBYidLIMIT1[2015-11-19T17:22:07.565JST]FATAL[JOB-ID:a09280000057HXEAA2]0003[SMPAbRequest]Line:784【System.NullPointerException】Argumentcannotbenull.(SMPCOOP)変数の格納対象に、連携元ではなく連携先の項目を指定している変数に格納可能な項目は、連携元で、かつ、項目マッピングに指定されているものです。エラー例[2015-11-19T18:38:32.636JST]ERROR[JOB-ID:a09280000057HXEAA2]2000変数処理中にエラーが発生しました。オブジェクトID=a0D280000016qX8EAI[SettingUtils]Line:669【System.SObjectException】InvalidfieldVisitor.IdforLead(SMPCOOP)更新キーに一致するレコードがあるにも関わらず、新規レコードとして連携してしまう原因(1)項目名の記述が間違っているか、項目マッピングが設定されていない可能性があります。更新キーに対して検索する連携元の項目は項目マッピングから参照するので、更新キーに指定する項目は、必ず項目マッピングもあわせて設定してください。原因(2)SFDCには、入力値の先頭末尾の空白を自動的に削除して登録する仕様があります。そのため、たとえばSMPリードとSFDC取引先の間で、会社名・取引先名を更新キーに指定しているような場合、SMPで先頭または末尾に空白を含む会社名でデータを登録すると、更新キーによる存在チェック時は空白を含む値でチェックしますが、実際に連携によってSFDCに登録される会社名からは空白が自動削除されるので、更新キーに一致することなく連携のたびにSFDCに新規レコードが作成されます。一部のSMPデータのみが、更新のたびにSFDCで新規作成されるような場合は、こちらの可能性についても(SMPのデータに空白が含まれていないか)ご確認ください。連携処理に時間がかかるケース1:SOQL変数を利用して取得条件を指定している場合たとえば、SMPから取得したデータ項目を変数に格納し、続くオブジェクトマッピングでSFDCからの取得条件のSOQLにその変数を利用しているような場合があるとします。たとえば、以下のようなSOQLを設定しているとします。SELECTId,Email,dup_key__cFROMLeadWHEREEmail=:var1ANDIsConverted=FALSEここで、変数:var1には、直前のオブジェクトマッピングで取得したSMPリードのメールアドレスがされているものとします。実際に取得したSMPリードが存在した場合はその件数で該当するLeadだけを取得します。しかし、取得した件数がゼロ件だった場合、:var1の中身は空になるので、Emailが空欄のリードをすべて取得することになり、存在するデータ量によっては大幅に時間がかかる可能性があります。これを防ぐために、SOQLの条件に変数を利用する場合は、以下のように空欄でないデータを対象とするように条件を指定します。SELECTId,Email,dup_key__cFROMLeadWHEREEmail=:var1ANDEmail!=nullANDIsConverted=FALSEこれにより、実際に該当するデータ量に応じた処理時間になることが期待できます。当然、実際に該当件数が多い場合は、相応の実行時間となります。環境に起因する問題エラー通知メールが送信されないメール送信のアクセス制御によって、メール送信ができない場合があります。特に、Sandbox環境の場合、デフォルトでメール送信は「システムメールのみ」に制限されているので、SFDCのメール管理設定をご確認ください。参考ヘルプサイト)連携ジョブが実行中のまま停止してしまった場合連携実行中に予期しないエラー(SFDC自体の障害や負荷、SMPからの想定外のレスポンス等)によって、連携ジョブが実行中のまま停止してしまう場合があります。具体的には、連携ジョブの「実行中」フラグにチェックがついたまま、(連携対象のデータ量に比較して)長時間処理状況が進捗しない状態を指します。以下の観点で、連携ジョブが実際停止してしまっていることを確認し、調査に必要なデータを収集します。「実行中」のままになっている連携ジョブを確認する連携処理が完了すると「実行中」フラグはOFFになり、次回実行日時が更新されます。もし、実行中のチェックがついたまま、実行日時を大きく超過している場合「SMP_ログ」タブのレコードを確認し、保存します・連携ジョブが実際に実行されている場合、処理が進捗するにつれて「SMP_ログ」のデータが増えていきます。連携処理が完了すれば、このデータは連携ジョブごとのログ・ファイルに保存され、SMP_ログからはデータが自動的に削除されます。・連携ジョブが中断してしまった場合、「SMP_ログ」にデータが残ったままになっている場合があります。このデータはログ保存期間の設定によって、指定日数を超えると自動的に削除されてしまうため、もしここにデータが残っている場合は、画面キャプチャやデータローダー等を利用して内容を保存します。あるいは、SMP接続設定タブからログ保存期間の日数をより大きい値に変更し、自動削除されるまでの期間を延ばします。・ここのデータが増え続けている場合、連携処理は継続しています。単純に連携対象が多い場合、この状態は正常ですが、連携対象が多くないにも関わらずこの状態が長時間継続する場合は、想定外のエラー等により処理がループしている可能性があります。(以下のApexジョブから停止させる必要がある可能性があります)SFDCの[設定]にて、[Apexジョブ]および[ApexFlexキュー]の状態を確認します・SFDCのジョブ実行機構そのものに問題があった場合、Apexジョブのキュー状況が正常でない可能性があります。・Apexジョブに処理中のままのものが残っていたり、同じ内容のキューが繰り返し登録され続けているような場合、対象のApexジョブを「中止」させる必要があります。・ジョブを中止させる場合、以下の手順を参考ください。[設定][ジョブ][スケジュール済みジョブ]から、ジョブ名が「SMP_SFDC_API_JOB」のジョブを削除します連携設定用管理者で、ダミーの連携ジョブをひとつ新規作成します(これにより、スケジュール済みジョブが再設定されます)「Apexジョブ」にスタックしているSMPforSalesforceのジョブを上から順にすべて「中止」します「ApexFlexキュー」が、ジョブの中止によってクリアされていることを確認しますこれらの情報から問題の原因が判明する場合は、その対応を行い、下記の復旧手順を実施します。原因が分からない場合、上で収集した情報を含め、サポートまでお問い合わせください。停止した連携の復旧手順連携ジョブが停止してしまった場合、以下の手順で復旧します。再実行してよい連携ジョブのみ「有効」フラグにチェックがついた状態にします(=再実行させない連携ジョブの有効フラグを外す)基本的には、途中停止してしまったジョブとそれ以降に実行されるはずだった連携ジョブのみ、有効な状態にします。すべてのジョブの「実行中」フラグのチェックを外します「SMP接続設定一覧」タブから連携ジョブバッチ実行を押下し手動実行しますジョブが完了したら「有効」フラグを元に戻しますすべてのジョブの「前回実行日時」を「次回実行日時」と同じにしますすべてのジョブの「次回実行時間」を、次回自動実行されるべき未来の日時(時刻は00分)に変更しますhttps://smpdoc.shanon.co.jp/ja/cooperation/apex2/chapter008/
FAQ
-
重要な制限事項機能面における制限事項ご利用にあたっての注意事項パフォーマンスについて機能面における制限事項削除データは連携しません連携元のレコードを削除した場合でも、自動的に連携先のデータを削除することはありません。手動で連携先のデータを削除する必要があります。リードデータを手動マージした場合も同様に、連携先でも同様にマージや削除を行う必要があります。SMPの来場取り消しは連携しませんSMPにおける来場の取り消しは来場データの削除に相当するため、連携によって反映させることができません。一度「来場済み」として連携された来場履歴を取り消した場合は、手動でSFDCから削除等行う必要があります。連携設定後に追加された項目は連携対象に含まれません連携設定後に追加・変更されたSMPまたはSFDCの追加項目、カスタム項目を連携対象に含める場合は、項目マッピングを追加する必要があります。項目のタイプ別の注意事項SMPにおけるファイル型、画像型の項目は連携サポート対象外ですSMPにおける数値型項目では10進数で表記するには大きい数や小さい数が指数表現として出力される場合がありますが、通常表記に変換するフィルターはありませんご利用にあたっての注意事項SFDCリードが取引先責任者に昇格(商談化)する際の注意事項一般的にSFDCでは、リードは「取引の開始」処理によって、取引先および取引先責任者に昇格します。昇格後、リード情報は取引先または取引先責任者に引き継がれ、元のリードは参照できなくなります。SFDCにおけるリードと取引先責任者は別オブジェクトであるため、それぞれに対応したオブジェクトマッピングを設定する必要があります。また、連携のために追加した項目は、昇格時に引き継がれるようにする必要がある場合があります。たとえば、リードにカスタム項目として「SMP_ID」を設定してSMP上のリードIDを保持している場合、取引先責任者にも同様のカスタム項目を設定し、昇格時にSMP_IDを引き継いで、引き続き取引先責任者とSMPリードが連携されるようにすることなどが可能です。同じオブジェクトを双方向で連携する場合の注意事項同じオブジェクト間の連携(たとえばSMPリード⇔SFDCリード)を双方向に設定した場合、連携による更新が、次回バッチで再度更新として認識されてしまうため、一度更新対象となったレコードが、バッチ処理のたびに延々更新される状態になってしまいます。たとえば、リード情報を相互に更新している場合、SMPでの更新がSFDCに反映され、次回バッチではそのSFDCの更新がSMPに反映され、さらに次回のバッチではそのSMPの更新がSFDCに反映され、、、といったように、常に差分ありとして認識されるようになります。対策として、SFDCでのデータ取得時の条件に、「最終更新者が連携設定したシステム管理者でない」ことを追加することで防止することが可能です。詳しくは、「データ連携チュートリアル」の項をご参照ください。パフォーマンスについてSMPへの登録・更新パフォーマンスはSMPのAPI性能に依存します。一方、SFDCへの登録・更新処理はApexコードの実行によるSFDCのプラットフォーム内の処理性能に依存します。一般的に言って、Apexコードによる内部処理よりも、APIによる処理のほうが時間がかかります。連携オブジェクトの種類に依りますが、SMPに登録・更新する場合は、1時間あたり数百件程度連携できます。オブジェクトマッピング単位での処理性能の目安はおおよそ、以下のとおりです。連携方向1時間あたりの処理件数目安SMP→SFDCリード連携でおよそ50,000件/時間SFDC→SMPリード連携でおよそ600件/時間SFDC→SFDCリード参照関係の更新でおよそ1,000件/時間注意処理性能は対象環境の状態やレコード内容によって変化します。あくまで参考値としてご理解ください。また、Force.comプラットフォーム上で動作する仕組みであるため、SFDCのガバナ制限による制約を受けます。アプリケーションの処理においては、原則、制約の範囲でおさまるように実装していますが、たとえば連携対象に極端にデータサイズの大きいものが含まれる場合など、制限によってエラーとなる可能性があります。https://smpdoc.shanon.co.jp/ja/cooperation/apex2/chapter007/
重要な制限事項
-
SMP連携オブジェクトリファレンスSMP連携オブジェクトごとにAPIの仕様について記述します。連携オブジェクトによって、連携元として利用する場合に必須となる項目マッピングが存在します。SMPからデータ取得する場合のSMP連携オブジェクトごとのAPI仕様SMPへのデータ登録・更新・削除場合のSMP連携オブジェクトごとのAPI仕様SMPからデータ取得する場合のSMP連携オブジェクトごとのAPI仕様SMPからデータ取得する場合のSMP連携オブジェクトごとのAPI仕様です。実際に利用されるSMPAPIと必須となる項目マッピングは、次のとおりです。リードキャンペーンサブキャンペーンキャンペーン申込サブキャンペーン申込キャンペーン申込アンケートサブキャンペーン申込アンケートキャンペーン来場サブキャンペーン来場メール履歴クリックカウント履歴アンケート履歴活動履歴資料ダウンロード履歴Webトラッキング履歴Webトラッキングセッション履歴割引履歴1.リードデータ取得時に利用されるSMPAPIメソッドvisitor.getデータ取得時に必要な項目マッピング特にありません2.キャンペーンデータ取得時に利用されるSMPAPIメソッドseminar.getデータ取得時に必要な項目マッピング特にありません3.サブキャンペーンデータ取得時に利用されるSMPAPIメソッドseminar.getSessionデータ取得時に必要な項目マッピング特にありません4.キャンペーン申込注意・「キャンペーン申込」オブジェクトではサブキャンペーンへの申込情報は取得できません。サブキャンペーン申込情報を取得する場合は、キャンペーン申込とは別に「サブキャンペーン申込」オブジェクトを利用してオブジェクトマッピングを設定してください。・「キャンペーン申込」オブジェクトでは申込に伴うアンケート回答情報は取得できません。アンケート回答情報も取得する必要がある場合は、「キャンペーン申込アンケート」オブジェクトを利用してください。データ取得時に利用されるSMPAPIメソッドvisitor.getApplicationSeminarvisitor.getApplicationvisitor.getseminar.getFlowseminar.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getApplicationSeminarSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplicationSeminar.TransactionIdList外部IDSMP項目が選択リストリードIDVisitorApplicationSeminar.VisitorId任意--なし--visitor.getApplicationSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplication.Id任意--なし--申込フローIDVisitorApplication.ApplicationFlow任意SMP項目が選択リストvisitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--seminar.getFlowSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込フローIDSeminarFlow.Id任意--なし--キャンペーンIDSeminarFlow.Seminar任意SMP項目が選択リストseminar.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性キャンペーンIDSeminar.Id任意--なし--5.サブキャンペーン申込データ取得時に利用されるSMPAPIメソッドvisitor.getApplicationSessionvisitor.getApplicationvisitor.getseminar.getFlowseminar.getseminar.getSessionデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getApplicationSessionSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplicationSession.TransactionIdList外部IDSMP項目が選択リストリードIDVisitorApplicationSession.VisitorId任意--なし--サブキャンペーンIDVisitorApplicationSession.session任意SMP項目が選択リストvisitor.getApplicationSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplication.Id任意--なし--申込フローIDVisitorApplication.ApplicationFlow任意SMP項目が選択リストvisitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--seminar.getFlowSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込フローIDSeminarFlow.Id任意--なし--キャンペーンIDSeminarFlow.Seminar任意SMP項目が選択リストseminar.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性キャンペーンIDSeminar.Id任意--なし--seminar.getSessionSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性サブキャンペーンIDSeminarSession.Id任意--なし--6.キャンペーン申込アンケート注意「キャンペーン申込アンケート」オブジェクトではサブキャンペーンへの申込情報は取得できません。サブキャンペーン申込情報を取得する場合は、キャンペーン申込アンケートとは別に「サブキャンペーン申込アンケート」オブジェクトを利用してオブジェクトマッピングを設定してください。データ取得時に利用されるSMPAPIメソッドvisitor.getApplicationSeminarvisitor.getApplicationvisitor.getseminar.getFlowseminar.getvisitor.getEnqueteenquetehistory.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getApplicationSeminarSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplicationSeminar.TransactionIdList外部IDSMP項目が選択リストリードIDVisitorApplicationSeminar.VisitorId任意--なし--visitor.getApplicationSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplication.Id任意--なし--申込フローIDVisitorApplication.ApplicationFlow任意SMP項目が選択リストアンケート回答情報ID*VisitorApplication.EnqueteDataId任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--seminar.getFlowSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込フローIDSeminarFlow.Id任意--なし--キャンペーンIDSeminarFlow.Seminar任意SMP項目が選択リストseminar.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性キャンペーンIDSeminar.Id任意--なし--visitor.getEnqueteSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性アンケート回答情報ID*VisitorEnquete.DataId任意--なし--アンケート履歴ID*VisitorEnquete.HistoryId任意--なし--enquetehistory.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性アンケート履歴ID*Enquetehistory.Id任意--なし--補足アンケート回答を持たない申込情報を取得した場合は、値が存在しません。7.サブキャンペーン申込アンケートデータ取得時に利用されるSMPAPIメソッドvisitor.getApplicationSessionvisitor.getApplicationvisitor.getseminar.getFlowseminar.getseminar.getSessionvisitor.getEnqueteenquetehistory.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getApplicationSessionSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplicationSession.TransactionIdList外部IDSMP項目が選択リストリードIDVisitorApplicationSession.VisitorId任意--なし--サブキャンペーンIDVisitorApplicationSession.session任意SMP項目が選択リストvisitor.getApplicationSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplication.Id任意--なし--申込フローIDVisitorApplication.ApplicationFlow任意SMP項目が選択リストアンケート回答情報ID*VisitorApplication.EnqueteDataId任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--seminar.getFlowSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込フローIDSeminarFlow.Id任意--なし--キャンペーンIDSeminarFlow.Seminar任意SMP項目が選択リストseminar.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性キャンペーンIDSeminar.Id任意--なし--seminar.getSessionSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性サブキャンペーンIDSeminarSession.Id任意--なし--visitor.getEnqueteSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性アンケート回答情報ID*VisitorEnquete.DataId任意--なし--アンケート履歴ID*VisitorEnquete.HistoryId任意--なし--enquetehistory.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性+アンケート履歴ID*Enquetehistory.Id任意--なし--補足アンケート回答を持たない申込情報を取得した場合は、値が存在しません。8.キャンペーン来場データ取得時に利用されるSMPAPIメソッドvisitor.getAttendanceSeminarseminar.getvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getAttendanceSeminarSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性+来場履歴IDVisitorAttendanceSeminar.Id外部ID--なし--キャンペーンIDVisitorAttendanceSeminar.Seminar任意SMP項目が選択リストリードIDVisitorAttendanceSeminar.VisitorId任意--なし--seminar.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性キャンペーンIDSeminar.Id任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--9.サブキャンペーン来場データ取得時に利用されるSMPAPIメソッドvisitor.getAttendanceSessionseminar.getSessionseminar.getvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getAttendanceSessionSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性来場履歴IDVisitorAttendanceSession.Id外部ID--なし--サブキャンペーンIDVisitorAttendanceSession.Session任意SMP項目が選択リストリードIDVisitorAttendanceSession.VisitorId任意--なし--seminar.getSessionSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性サブキャンペーンIDSeminarSession.Id任意--なし--キャンペーンIDSeminarSession.Seminar任意SMP項目が選択リストseminar.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性キャンペーンIDSeminar.Id任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--10.メール履歴データ取得時に利用されるSMPAPIメソッドvisitor.getMailvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getMailSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性メール情報IDVisitorMail.Id外部ID--なし--リードIDVisitorMail.VisitorId任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--11.クリックカウント履歴データ取得時に利用されるSMPAPIメソッドvisitor.getClickcountclickcounturl.getvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getClickcountSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性クリックカウント履歴IDVisitorClickcount.Id外部ID--なし--クリックカウントURLIDVisitorClickcount.ClickCountUrlId任意--なし--リードIDVisitorClickcount.VisitorId任意--なし--clickcounturl.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性クリックカウントURLIDClickcounturl.Id任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--12.アンケート履歴データ取得時に利用されるSMPAPIメソッドvisitor.getEnqueteenquetehistory.getvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getEnqueteSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性アンケート履歴ID-リードIDVisitorEnquete.Id外部ID--なし--アンケート履歴IDVisitorEnquete.HistoryId任意--なし--リードIDVisitorEnquete.VisitorId任意--なし--enquetehistory.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性アンケート履歴IDEnquetehistory.Id任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--13.活動履歴データ取得時に利用されるSMPAPIメソッドvisitor.getActivityvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getActivitySMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性活動履歴IDVisitorActivity.Id外部ID--なし--リードIDVisitorActivity.VisitorId任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--14.資料ダウンロード履歴データ取得時に利用されるSMPAPIメソッドvisitor.getDocumentdownloaddocument.getvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getDocumentdownloadSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性資料ダウンロード履歴IDVisitorDocumentdownload.Id外部ID--なし--資料IDVisitorDocumentdownload.DocumentId任意--なし--リードIDVisitorDocumentdownload.VisitorId任意--なし--document.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性資料IDDocument.Id任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--15.Webトラッキング履歴データ取得時に利用されるSMPAPIメソッドvisitor.getTrackingaccesslogvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getTrackingaccesslogSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性アクセス履歴IDVisitorTrackingaccesslog.Id外部ID--なし--リードIDVisitorTrackingaccesslog.VisitorId任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--16.Webトラッキングセッション履歴データ取得時に利用されるSMPAPIメソッドvisitor.getTrackingsessionvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getTrackingsessionSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性トラッキングセッション履歴IDVisitorTrackingsession.Id外部ID--なし--リードIDVisitorTrackingsession.VisitorId任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--17.割引履歴データ取得時に利用されるSMPAPIメソッドvisitor.getDiscounthistoryseminar.getDiscountvisitor.getApplicationvisitor.getデータ取得時に必要な項目マッピング最低限、設定すべき項目マッピングは、次のとおりです。visitor.getDiscounthistorySMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性割引履歴IDVisitorDiscounthistory.Id外部ID--なし--申込履歴IDVisitorDiscounthistory.ApplicationId任意--なし--割引IDVisitorDiscounthistory.DiscountId任意--なし--seminar.getDiscountSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性割引IDSeminarDiscount.Id任意--なし--visitor.getApplicationSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性申込IDVisitorApplication.Id任意--なし--リードIDVisitorApplication.VisitorId任意--なし--visitor.getSMP項目名SMP項目または連携先SFDC項目SFDC項目SMP項目の属性リードIDVisitor.Id任意--なし--SMPへのデータ登録・更新・削除場合のSMP連携オブジェクトごとのAPI仕様SMPへのデータ連携は、「SMPオブジェクト名とAPIの対応表」ページに記載されているAPIメソッドの実行によって実現します。連携可能な項目については、APIマニュアルにて対応するメソッドを参照しつつ、連携設定を行ってください。以下では、一部の特殊仕様を持つメソッドについて説明します。キャンペーン申込SMPへのキャンペーン申込を実行するためには、SMPのキャンペーン申込API(application.post)に必要なパラメータと項目をリクエストするように連携設定を行う必要があります。以下のパラメータおよび項目が必須です。申込フローID(APIパラメータapplication_flow_id)キャンペーンID(SsDataId)申込数(NumberOfApplication)また、キャンペーン申込APIは、ひとつのメソッドの中で複数のエレメント(VisitorData,Transaction,etc)を指定する特殊な仕様になっています。そのため、項目マッピングでも項目名の部分をApplication.Transaction_SsDataIdのように、アンダースコアを区切り文字として_を表記します。さらに、キャンペーン申込APIは登録成功すると申込IDとリードIDの2つをレスポンスします。これらを格納するために、「SMPAPIレスポンスで格納する要素」「SMPAPIレスポンスを格納するSFDC項目」をカンマ区切りで複数指定することができます。キャンペーン申込の連携設定例連携元のSFDCオブジェクトに、以下のAPI名の項目が作成されているとして、最低限の設定例を下記に例示します。SMP_ID__c(申込IDを格納するための項目)SMP_V_ID__c(リードIDを格納するための項目)SMP_Flow_ID__c(SMP申込フローIDを保持している項目)SMP_Seminar_ID__c(SMPキャンペーンIDを保持している項目)オブジェクトマッピングの「SFDC→SMP」部分の設定例は以下のようになります。申込ID、リードIDをそれぞれレスポンスから格納するようにしています。項目名設定値SMP更新キーApplication.IdSMP更新方法POSTSMPAPIレスポンスで格納する要素Id,VisitorIdSMPAPIレスポンスを格納するSFDC項目SMP_ID__c,SMP_V_ID__cAPIパラメータは以下のように設定します。SMP_Flow_ID__cを括弧で括っている点に注意してください。APIパラメータキーAPIパラメータ内容検索オペレータ前回実行日・条件日時を指定application_flow_id(SMP_Flow_ID__c)eq--なし--ignore_itemcheck1eq--なし--項目マッピングは以下のように設定します。TransactionエレメントのCartListに指定する項目について、「SMP項目の属性」として「SMP項目がカート一覧」を指定している点に注意してください。SMP項目または連携先SFDC項目SFDC項目SMP項目の属性Application.IdSMP_ID__c--なし--Application.Transaction_SsDataIdSMP_Seminar_ID__cSMP項目がカート一覧Application.Transaction_NumberOfApplicationSMP_Seminar_ID__cSMP項目がカート一覧また、申込数を1で固定するため、上で設定した項目マッピング「Application.Transaction_NumberOfApplication」に対して、以下のフィルターを設定します。フィルター種類フィルター式実行順序固定値の代入[1]1オブジェクトマッピングの設定画面の例は以下のようになります。キャンペーン申込の注意・制限事項申込時の、登録時言語の指定はサポートされていませんその他、キャンペーン申込APIの仕様・制限事項について、「キャンペーン申込・会員登録API」もご参照ください。キャンペーン申込キャンセルSMPへのキャンペーン申込を実行するためには、SMPのキャンペーン申込API(application.delete)に必要なパラメータと項目をリクエストするように連携設定を行う必要があります。以下のパラメータおよび項目が必須です。申込ID(APIパラメータによってキャンセル対象の申込のIDを指定します)キャンペーン申込キャンセルの連携設定例連携元のSFDCオブジェクトに、以下のAPI名の項目が作成されているとして、最低限の設定例を下記に例示します。SMP_ID__c(申込IDを格納するための項目)オブジェクトマッピングの「SFDC→SMP」部分の設定例は以下のようになります。項目名設定値SMP更新キーApplication.IdSMP更新方法DELETESMPAPIレスポンスで格納する要素Application.IdSMPAPIレスポンスを格納するSFDC項目SMP_ID__cAPIパラメータは以下のように設定します。SMP_ID__cを括弧で括っている点に注意してください。APIパラメータキーAPIパラメータ内容検索オペレータ前回実行日・条件日時を指定id(SMP_ID__c)eq--なし--項目マッピングは以下のように設定します。SMP項目または連携先SFDC項目SFDC項目SMP項目の属性Application.IdSMP_ID__c--なし--キャンペーン申込キャンセルの注意・制限事項キャンセル実行時はSMPAPIレスポンスから格納できる情報はありませんそのため、「SMPAPIレスポンスで格納する要素」「SMPAPIレスポンスを格納するSFDC項目」への入力は擬似設定であり、実効性はありませんその他、キャンペーン申込APIの仕様・制限事項について、「申込キャンセルAPI」もご参照ください。https://smpdoc.shanon.co.jp/ja/cooperation/apex2/chapter006/
SMP連携オブジェクトリファレンス
-
機能リファレンス機能ごとの項目や操作の詳細について記載します。連携ジョブオブジェクトマッピング項目マッピングAPIパラメータ変数定義フィルターテーブル変換連携ジョブ実行結果(SMP_ログ)とエラー通知設定データのエクスポート・インポートフィルターを利用した項目連携のTips連携ジョブ新規作成新しく連携ジョブを作成する場合は、[連携ジョブ]タブから[新規]をクリックします以下の項目を入力し、[保存]をクリックして設定を保存します項目入力内容ジョブ名連携ジョブを表現する、適当な名前を入力します。連携ジョブID連携ジョブを識別するためのIDを入力します。(半角英数字で入力します)繰り返しタイミング連携ジョブのバッチ処理実行間隔を指定します。起動時刻繰り返しタイミングを「毎日」よりも広く指定した場合、バッチ処理の実行時間を指定します。00:00~23:00の毎時0分を指定可能です。条件「前回実行日時から実行」または「条件時間から実行」を選択します。条件時間「条件」にて「条件時間から実行」を指定した場合、その条件となる日時を指定します。前回実行日時この連携ジョブの、直前に実行された日時がバッチ処理実行時に自動的にセットされます。次回実行日時この連携ジョブの、次に実行される日時がバッチ処理実行時に自動的にセットされます。エラー時制御連携するデータでエラーが発生した場合に処理を継続するかどうかを指定します。「続行」または「停止」を選択します。エラー通知先連携ジョブでエラーが発生した場合に通知するメールアドレスを入力します。(半角英数字で入力します)実行順序連携ジョブの中での実行順序を指定します。バッチ実行のタイミングで、数字の若いジョブから順次実行します。(半角数字で入力します)有効連携ジョブを実際に動作させる場合は、チェックをつけます。ここにチェックがついていない連携ジョブは、設定されていても実行をスキップします。ジョブ実行中この連携ジョブが実行中の場合、自動的にチェックがつきます。基本的に、手動で設定する必要はありません。説明この連携ジョブについての任意の説明文やメモを入力します。ログレポートこの連携ジョブの直近の連携ログを表示するためのリンクです。(参照のみ)設定済み連携ジョブの操作設定した連携ジョブの内容を確認する場合は、[連携ジョブ]タブから任意のビューを選択し、[Go!]ボタンをクリックします設定済みの連携ジョブの一覧が表示されるので、確認したい連携ジョブのジョブ名をクリックして詳細を確認します連携ジョブを編集・削除する場合は、一覧または詳細から[編集]または[削除]をクリックしますオブジェクトマッピングオブジェクトマッピングの種類と考え方オブジェクトマッピングは、選択する「連携方向」の種類によって動作および設定すべき項目が異なります。連携方向説明・用途SMP→SFDCSMPのデータをSFDCへ連携します。SFDC→SMPSFDCのデータをSMPへ連携します。SFDC→SFDCSFDCのデータをSFDC内で移動します。SMPから連携したデータがSFDC側のオブジェクト間でリレーションを持つ場合、リレーション更新のために利用します。その他、中間テーブル(一時オブジェクト)を経由してSFDCへデータ連携する場合に使います。SFDCレコード削除SFDC内の特定のオブジェクトのデータを一括削除します。中間テーブル(一時オブジェクト)を利用した場合、ジョブごとでその一時データを削除(クリア)するために利用する想定です。オブジェクトマッピングの新規作成オブジェクトマッピングを作成する連携ジョブの詳細を表示します[新規オブジェクトマッピング]をクリックします以下の項目を入力し、[保存]をクリックして設定を保存します■連携方向によらず、常に設定が必要な項目項目入力内容オブジェクトマッピング名オブジェクトマッピングの任意の名前を入力しますオブジェクトマッピングIDオブジェクトマッピングに対するユニークなIDを指定します。設定データのエクスポート・インポート時に使用します。(半角英数字で入力します)実行順序このオブジェクトマッピングの、属する連携ジョブの中での実行順序を指定します。(半角数字で入力します)有効オブジェクトマッピングを実際に動作させる場合は、チェックをつけます。ここにチェックがついていないオブジェクトマッピングは、設定されていても実行をスキップします。連携方向データ連携の向き、またはマッピング処理の種別を以下から選択しますNULLでの上書きデータの更新時、取得した項目の値がNULLの場合に、既存のデータを上書きする(空白にする)か保持するかどうかを選択します■連携方向で[SMP→SFDC]を選択した場合に設定する項目項目入力内容SMP連携オブジェクト名データ連携元となるSMPのオブジェクトを選択しますSFDCオブジェクト取得したデータを登録するSFDCオブジェクトのAPI参照名を入力します(例:LeadやCampaign、SomeCustomObj__c等)SFDC更新キーSFDC側のオブジェクトで、SMPのIDを保持するカラムを指定します。この項目を利用して、対象データを新規登録するか更新するかが判定されます。カンマ区切りで複数の項目を更新キーに指定できます(例:名前とEmailが両方一致したものを更新対象とする場合、Name,Email)SFDCAPIレスポンスで格納する要素SMPへ書き戻すSFDC上のID項目を指定しますSMP取得件数SMPから取得するデータを1APIコールあたり何件データを取得するかを指定します。1から100の整数を入力します補足SMP取得件数についてSMPから1回のAPIコールで取得するデータサイズが大きすぎる場合、SFDCのメモリ制限によってレスポンスを格納できず、SMPへのデータ取得リクエストを実行し続けてしまう現象が確認されています。メールの履歴やキャンペーン情報など、多くのテキスト情報を含む可能性があるデータを連携対象とする場合、一度に取得する件数を抑えることでこの問題を回避します。「SMP取得件数」を入力せずに新規オブジェクトマッピングを作成した際、SMP連携オブジェクト名が「キャンペーン」「メール履歴」の場合は「10」が、それ以外の場合は「100」が自動的に設定されます。また、空白に設定更新した場合も、100件ずつデータ取得します。■連携方向で[SFDC→SMP]を選択した場合に設定する項目項目入力内容SMP連携オブジェクト名SFDCから取得したデータの連携先となるSMPのオブジェクトを選択します。選択できるリソースは、SMPへの登録更新が可能なものに限られますSFDCオブジェクトデータ連携元となるSFDCオブジェクトのAPI参照名を入力します(例:LeadやCampaign、SomeCustomObj__c等)SMP更新キーSMP側のオブジェクトで、SFDCのIDを保持するカラムを指定します。この項目を利用して、対象データを新規登録するか更新するかが判定されます。(例:Visitor.IdやSeminar.Title等)カンマ区切りで複数の項目を更新キーに指定できます(例:姓+名+Emailがすべて一致したものを更新対象とする場合、Visitor.Name1,Visitor.Name2,Visitor.Email)SMPAPIレスポンスで格納する要素SFDCへ書き戻すSMP上のID項目を指定します(例:IdやAttribute3等)注1:オブジェクト名のプレフィックス(たとえばSeminar.など)を指定せず、項目名(Idなど)のみを指定してください注2:連携対象のSMPオブジェクトがリードの場合、この設定に関わらず、常にリードIDが格納されます(リードの場合、レスポンス内容からリードIDを取得可能なため)注3:この設定を誤り、実際には存在しない項目などを指定した場合、エラーにはならず、「SMPAPIレスポンスを格納するSFDC項目」に指定したSFDC項目を空白で上書きしてしまうため、ご注意くださいSMPAPIレスポンスを格納するSFDC項目SMP上のIDを格納するSFDCの項目を指定します(例:NameやSomeCustomAttribute__c等)SMP更新方法SMPのデータを更新する方法を指定します。PUT(更新のみ)、POST(新規登録のみ)、PUT/POST(更新または新規登録)のいずれかを指定しますデータ取得基準連携元となるSFDCオブジェクトのレコードを取得する範囲を、登録日または更新日を指定します。連携ジョブの「条件」は、ここで指定した基準に対して適用されます。SFDC取得SOQLデータ取得基準以外の条件を利用してデータ取得する場合は、こちらに取得のための具体的なSOQLを記述します。■連携方向で[SFDC→SFDC]を選択した場合に設定する項目項目入力内容データ取得基準連携元となるSFDCオブジェクトのレコードを取得する範囲の基準に、登録日または更新日を指定します連携元SFDCオブジェクトデータ連携元となるSFDCオブジェクトのAPI参照名を入力します(例:LeadやCampaign、SomeCustomObj__c等)連携先SFDCオブジェクトデータ連携先となるSFDCオブジェクトのAPI参照名を入力します(例:LeadやCampaign、SomeCustomObj__c等)連携元更新キー連携元となるオブジェクトでのIDを保持するカラムを指定します。この項目を利用して、対象データを新規登録するか更新するかが判定されます(複数項目は指定できません)連携先更新キー連携元の更新キーに対応する値を保持する、連携先オブジェクトでの項目を指定します(複数項目は指定できません)更新方法連携先SFDCオブジェクトに対する更新方法についてINSERT/UPDATE/UPSERTのいずれかを指定します。データ取得基準連携元となるSFDCオブジェクトのレコードを取得する範囲を、登録日または更新日を指定します。連携ジョブの「条件」は、ここで指定した基準に対して適用されます。SFDC取得SOQLデータ取得基準以外の条件を利用してデータ取得する場合は、こちらに取得のための具体的なSOQLを記述します。■連携方向で[SFDCレコード削除]を選択した場合に設定する項目項目入力内容SFDCオブジェクト削除対象とするオブジェクトを指定します(例:LeadやCampaign、SomeCustomObj__c等)補足「オブジェクトマッピング」タブから「新規」をクリックして作成することも可能です。その場合、連携ジョブ欄には既存の連携ジョブを選択して入力する必要があります。SFDC取得SOQLについて連携方向に[SFDC→SMP]または[SFDC→SFDC]を指定した場合、取得対象データを詳細に定義するためにSOQLを記述することができます。SOQLを記述した場合、データ取得基準などは無視され、記述されたSOQLを発行することでSFDCのデータを取得します。連携対象とするSFDC項目(項目マッピングで連携元として指定する SFDC項目)は、抽出対象項目としてSOQLのSELECT句に明記する必要がありますたとえば、リードの姓、名を連携する場合:「SELECTLastName,FirstNameFROMLead」注意・項目マッピングを後から追加した場合、SELECT句の更新も忘れないよう、ご注意ください。・一般的なSQLで全項目を取得する構文「SELECT*FROM~」は、SOQLの仕様により使えません。SOQL文中では、変数を利用することができます。詳細は、変数の設定方法については、変数の項をご参照ください前回連携処理以降の差分を連携対象としたい場合は、変数を利用して取得条件をWHERE句に明記する必要があります。たとえば、リードの最終更新日が前回実行日時以降のものを対象とする場合:「~WHERELastModifiedDate:LastRunDateTime」のように指定します。チュートリアルの章もご参照ください。SOQL自体の仕様詳細については、SFDCのドキュメントをご参照ください設定済みオブジェクトマッピングの操作設定したオブジェクトマッピングの内容を確認する場合は、対象のオブジェクトマッピングを設定した連携ジョブの詳細から、[オブジェクトマッピング名]列のリンクをクリックしますオブジェクトマッピングの設定を編集・削除する場合は、[編集]または[削除]をクリックします項目マッピング設定済みのオブジェクトマッピングに対して、項目ごとのマッピングを設定します。オブジェクトマッピングで指定するSMP連携オブジェクトの種類によっては、必ず設定する必要がある項目マッピングが存在します。詳細は「7.SMP連携オブジェクトリファレンス」をご参照ください。更新キーに指定した項目については必ず項目マッピングを指定する必要があります。指定しないと、常に新規レコードとして連携します。SMP項目には必ず「Visitor」「Seminar」「VisitorApplicationSeminar」など、項目が所属するAPIメソッド名をプレフィックスとして記述する必要があります。(参考:項目表記フォーマット)このプレフィックスは実際のAPIコールにも使用される場合があり、記述に誤りがあるとAPIコール自体が失敗するので、正確な文字列を入力するようご注意ください。新規作成項目マッピングを設定する連携ジョブの詳細を表示します項目マッピングを設定するオブジェクトマッピングの詳細を表示します[新規項目マッピング]をクリックします以下の項目を入力し、[保存]をクリックして設定を保存しますSMP項目または連携先SFDC項目:SMP→SFDCまたはSFDC→SMPの場合、SMPの項目名を入力します(例:Visitor.Name1,Visitor.Attribute1,Seminar.Title,etc)SFDC→SFDCの場合、連携先となるSFDCオブジェクトの項目名を入力します(例:SMP_ID__c)SFDC項目:SFDC→SMPまたはSFDC→SFDCの場合、連携元となるSFDCオブジェクトの項目名を入力しますSMP→SFDCの場合、連携先となるSFDCオブジェクトの項目名を入力します項目ID:この設定をユニークに識別するIDを半角英数字で入力しますSMP項目:SMP側に指定した項目が選択肢型または複数選択肢型の場合、指定します設定済み項目マッピングの操作設定した項目マッピングの内容を確認する場合は、対象のマッピングを設定したオブジェクトマッピングの詳細から、[No]列のリンクをクリックします項目マッピングの設定を編集・削除する場合は、[編集]または[削除]をクリックしますAPIパラメータSMPへのAPIリクエストに対してパラメータによる条件付けを行うことができます。SMPからのデータ取得(GET)時SMPから取得する連携対象データを絞り込む検索条件を指定するために利用します。検索条件の値の指定には、以下のいずれかを指定します。「APIパラメータ内容」に具体的な検索条件値を入力し、検索オペレータを指定「前回実行時・条件日時を指定」をチェック(APIパラメータ内容は空欄に)この場合、自動的に前回実行時などが検索値に指定されるようになりますパラメータ名には、たとえば「Visitor.DateUpdate」(システム更新日時)、「Visitor.DateRegist」(システム登録日時)など日時系の項目を指定する必要があります検索オペレータには、gt(「>」)を指定します注意同じ項目に対する条件をOR条件として指定することはできません。(NG例:Visitor.Attribute1=bbb&Visitor.Attribute1=ccc)指定した連携オブジェクトが複数のAPIメソッドを参照するタイプである場合、検索条件は主軸となるAPIメソッドに対してのみ付加されます。たとえば、「キャンペーン申込」オブジェクトの場合、「visitor.getApplicationSeminar」に対するAPIパラメータとなります。主軸となるAPIメソッドは、「3-4-1.SMPからデータ取得するための連携オブジェクト」または「7.SMP連携オブジェクトリファレンス」をご参照ください。また、APIパラメータには複数の条件を指定可能です。これらの条件は、すべて「かつ」(AND条件)で連結されます。例:Visitor.Attribute1=aaa&Visitor.Attribute2=xxx&Visitor.Attribute3=pppSMPへのデータ登録(POST/PUT)時SMPへのPOSTまたはPUT時にAPIメソッドにURLパラメータを指定するために利用します。たとえば、SMP連携オブジェクトに「リード」を指定した場合、visitor.postまたはvisitor.putがコールされるので、URLパラメータとして「ignore_itemcheck=1」(必須チェック・型チェックを無視する)を指定することなどが可能です。注意SMPへのデータ登録用に指定したAPIパラメータ設定時、「検索オペレータ」「前回実行時・条件日時を指定」の指定は無視されます。APIパラメータの設定追加設定対象となる連携ジョブの詳細を表示しますAPIパラメータを設定するオブジェクトマッピングの詳細を表示しますAPIパラメータの一覧から、[新規APIパラメータ]をクリックします以下の項目を入力し、[保存]をクリックして設定を保存しますGET(SMPが連携元)の場合APIパラメータ名:検索する項目名を入力します(例:Visitor.Attribute5やVisitor.DateUpdate等)APIパラメータ内容:検索値を入力します(例:30)または、「前回実行時・条件日時を指定」をチェックして、空欄にします検索オペレータ:検索オペレータの種類を選択しますPOST(SMPが連携先)の場合APIパラメータ名:指定するパラメータ名を入力します(例:application_flow_master_idやtype、is_update、ignore_itemcheck等)APIパラメータ内容:パラメータに対する値を入力します(例:235や1等)変数定義取得したデータを同一連携ジョブ内の後続オブジェクトマッピングで利用することができます。たとえば、あるマッピングでリードのリストを取得した場合、それらのIDのリストを変数に格納し、続くオブジェクトマッピングで取得する対象データの検索条件に使用する、といったことが可能です。変数には、連携元から取得したデータのみ指定可能です(連携先の項目は指定できません)変数に指定する項目は、項目マッピングにも定義されている必要があります(下記注意参照)定義した変数のスコープは連携ジョブです。一度格納した変数は、連携ジョブ内で共有されます。連携ジョブ内のオブジェクトマッピングがすべて実行されるとクリアされます。また、以下のシステム変数は、変数定義を追加することなく利用可能です。変数名変数内容LastRunDateTime対象の連携ジョブの、前回実行日時が格納されていますNextRunDateTime対象の連携ジョブの、次回実行日時が格納されていますConditionDateTime対象の連携ジョブに設定されている条件時間の日時が格納されています変数定義の追加変数定義を設定する連携ジョブの詳細を表示します変数定義を設定するオブジェクトマッピングの詳細を表示します[新規変数定義]をクリックします以下の項目を入力し、[保存]をクリックして設定を保存します変数名:var1~var32から選択します(連携ジョブ内で重複して指定しないようにご注意ください)変数内容:マッピングで取得した内容から、格納する値を持つ項目名を入力します(例:Visitor.Id)説明:変数の取得内容や目的を記述します注意変数定義に格納する値は、項目マッピングにて取得対象として指定されている必要があります。たとえば、SMPから取得したVisitor.Idを格納する場合、対象となるオブジェクトマッピングに、「SMP項目または連携先SFDC項目」にVisitor.Idを指定した項目マッピングを追加する必要があります。定義した変数の利用APIパラメータで利用する場合APIパラメータの設定時、APIパラメータ内容欄にて、変数名をで括って記述しますたとえば、var5にリードのIDリストが格納されており、それを条件にSMPから取得するリードを絞り込む場合、以下のようにしますAPIパラメータ名:Visitor.IdAPIパラメータ内容:検索オペレータ:eq実際は、以下のような条件がvisitor.getのPOST内容に追加されますsearch_key1=Id&search_operator1=eq&search_value1=12345&search_key1=Id&search_operator1=eq&search_value1=23456&search_key1=Id&search_operator1=eq&search_value1=34567(以下略)SOQL記述で利用する場合オブジェクトマッピングのSFDC取得SOQL欄にて、変数名に:をつけて記述しますたとえば、var16にキャンペーン名リストが格納されており、それを条件に取得するCampaignデータを絞り込む場合、以下のようにWHERE句を記述しますSELECTName,Description,ActualCost,SMPCOOP__SMP_ID__c,SMPCOOP__ApplicationType__cFROMCampaignWHEREName=:var16実行時のSOQLのWHERE句は、以下のように展開されますWHERE(Name=’キャンペーン名1’orName=’キャンペーン名2’or…(以下略))フィルター項目マッピングに対して定義済みのフィルタールールを適用することで、連携するデータ内容を加工することができます。具体的な設定例については、下の「フィルターを利用した項目連携のTips」をご参照ください。利用可能なフィルター一覧利用可能なフィルターは以下のとおりです。カテゴリフィルタ処理内容フィルター式の記述方法連携元が空文字(NULL)でフィルタを実行した場合の期待値文字列小文字→大文字変換半角英小文字を半角英大文字に変換する。-空文字として本フィルターを処理する。文字列大文字→小文字変換半角英大文字を半角英小文字に変換する。-空文字として本フィルターを処理する。文字列半角→全角変換半角英数記号(。「」、・.゚)を全角に変換する。-空文字として本フィルターを処理する。文字列全角→半角変換全角英数記号(。「」、・゛゜.)を半角に変換する。-空文字として本フィルターを処理する。文字列空白除去半角スペースを除去する。-空文字として本フィルターを処理する。文字列文字列の切り出し文字列から指定個所を切り出す。(Java等のプログラミング言語でいうsubstring関数と同様)[開始位置][終了位置]例:abcdeという文字列があった場合、[0][4]を指定するとabcd、[1][3]を指定するとbcを切り出す※1[開始位置]文字列の長さの場合、空文字※2[終了位置]文字列の長さの場合、[開始位置]以降の文字列スキップして、次のフィルターを処理する。文字列文字列の埋め込み該当の項目と指定項目(複数)の間に指定文字を埋め込む[埋め込み文字][項目名1][項目名2]…空文字として本フィルターを処理する。文字列文字列のパディング指定方向に指定文字列をパディングする。[パディング文字列][桁数※1][方向※2]※10の場合はパディング文字列をひとつだけ追加※2方向はRの場合は右パディング。右以外の場合は左パディング空文字として本フィルターを処理する。例:[0][8][L]の場合、「00000000」になる文字列正規表現での変換正規表現に一致する箇所を全て置換する。[正規表現][置換後文字列]空文字として本フィルターを処理する。文字列固定値の代入フィールドの値を固定値に代入する。[代入する値]空文字として本フィルターを処理する。(固定値を代入する。)日付時刻指定された形式の日付フォーマットに変換日付型を指定された文字列フォーマットに変換する。[文字列フォーマット]スキップして、次のフィルターを処理する。数値加算該当の項目と指定項目を加算する。[指定項目名]スキップして、次のフィルターを処理する。数値減算該当の項目から指定項目を減算する。[指定項目名]スキップして、次のフィルターを処理する。数値乗算該当の項目から指定項目を乗算する。[指定項目名]スキップして、次のフィルターを処理する。数値剰余算該当の項目から指定項目を余りを求める。[指定項目名]スキップして、次のフィルターを処理する。数値数値の範囲チェック最小値と最大値の範囲内に収まっているか判定する。[最小値][最大値]スキップして、次のフィルターを処理する。数値切り上げ小数点以下を切り上げる。-スキップして、次のフィルターを処理する。数値切り捨て小数点以下を切り捨てる。-スキップして、次のフィルターを処理する。数値四捨五入指定した桁数以下の小数点を四捨五入する。[桁数]スキップして、次のフィルターを処理する。数値指定された形式の数値フォーマットに変換文字列を指定数字フォーマットに変更する。[数字フォーマット]INTEGER、DOUBLE、LONG、DECIMAL※INTEGERとLONGは整数のみスキップして、次のフィルターを処理する。日付時刻現在時刻を設定現在時刻を設定する。(システム時刻:JST)空文字として本フィルターを処理する。(現在時刻を設定する。)日付時刻日時の計算指定時刻の値だけ加算する。[年][月][日][時][分][秒]例:[0][1][0][0][0][1]2015/11/1000:00:00↓2015/12/1000:00:01スキップして、次のフィルターを処理する。フィルターの適用フィルターを設定する項目マッピングを含む連携ジョブの詳細を表示しますフィルターを設定する項目マッピングを含むオブジェクトマッピングの詳細を表示しますフィルターを設定する項目マッピングの詳細を表示します[新規フィルター]をクリックします以下の項目を入力し、[保存]をクリックして設定を保存しますフィルターID:任意の識別子を入力しますフィルター種類:適用するフィルターの種類を選択しますフィルター式:変換方法の指定が必要なフィルターについてはフィルター式を記述します。「6-6-1.利用可能なフィルター一覧」をご参照ください実行順序:対象の項目マッピング内での、フィルターの実行順序を指定しますテーブル変換項目マッピングに任意の変換テーブルによるルールを定義することで、特定の値を別の値に変換してデータ連携させることができます。たとえば、連携元では項目「都道府県」に格納されているものを、連携先では「エリア」のような項目に格納する場合、以下のようなテーブル変換定義をしておくことで、「東京都」→「関東」といった変換を連携時に適用することができます。変換前変換後東京都関東千葉県関東埼玉県関東大阪府関西京都府関西福岡県九州補足・テーブル変換が適用されるのは、連携元の値が「変換前」に指定された文字列に完全一致する場合のみです。・テーブル変換設定に一致する定義がない場合、連携元の値をそのまま連携します。テーブル変換の定義を追加変換テーブルを設定する項目マッピングを含む連携ジョブの詳細を表示します変換テーブルを設定する項目マッピングを含むオブジェクトマッピングの詳細を表示します変換テーブルを設定する項目マッピングの詳細を表示します[新規テーブル変換]をクリックします以下の項目を入力し、[保存]をクリックして設定を保存しますテーブル変換ID:任意の識別子を入力します変換前:連携元として想定する値を入力します変換後:変換した結果、連携先に格納する値を入力します変換テーブルの行数分だけ、4.~5.を繰り返します連携ジョブ実行結果(SMP_ログ)とエラー通知SMP_ログとエラー通知メール連携ジョブ実行中のログはSMP_ログに保存されます。連携ジョブの詳細画面の「ログレポート」リンクから、対象のジョブの直前の実行結果ログを確認し、Excelにエクスポートして参照することができます。また、対象期間を変更することで過去の実行結果を参照できます。ログデータは、ログ保存期間に設定された日数を経過すると、自動的に削除されます。また、連携ジョブ実行時にエラーが発生した場合、連携ジョブの[エラー通知先]に設定したメールアドレスにエラーが送信されます。エラー通知メールに対象の連携ジョブ名および詳細リンクが表示されるので、SFDCにログインしてログファイルの内容を確認します。送信されるエラー通知メールの例以下の連携ジョブの処理中にエラーが発生しました。詳細リンクからログファイルの内容ご確認いただき、必要な対応をお願いいたします。====連携ジョブ名:C1:キャンペーン連携(SMP-SFDC)詳細リンク:作成者:テスト管理者最終更新者:テスト管理者所有者メール:test+appex2-ac-test5@example.comエラー時制御:停止エラー通知先:test+appex2-ac-test5-c1error@example.com実行順序:5繰り返しタイミング:1時間起動時刻:指定しない前回実行日時:2015/12/260:00次回実行時間:2015/12/263:00====ご不明な点がございましたら、組織のシステム管理者にお問い合わせください。よろしくお願い申し上げます。エラー通知メールのテンプレートは、[設定]→[コミュニケーションテンプレート]→[メールテンプレート]に「エラー情報送信メール」という名称で保存されています。件名や本文など、一部の内容は変更することができます。エラー通知メールの送信者(From欄)は、ジョブの実行者となります。こちらは変更できません。エラー通知メールは、連携ジョブのエラー通知先に設定したメールアドレスに加えて、ジョブ実行者のメールアドレスにも送信されます。これは、連携ジョブの設定自体が取得できない場合のためであり、宛先から外すことはできません設定データのエクスポート・インポート連携ジョブなどの設定データのエクスポート・インポートには、SFDCが提供するデータローダを利用します。データローダの詳細は、SFDCの提供するドキュメントをご参照ください。データローダ(SFDCヘルプサイト)フィルターを利用した項目連携のTips複数の項目を結合する連携元では分離している項目を結合して、連携先のひとつの項目に入力することができます。たとえば、郵便番号の3桁部分と4桁部分を結合して連携したり、「姓」と「名」を結合して「氏名」欄に連携したりするケースがあります。ここでは、SMPの「郵便番号1」(Zip1)と「郵便番号2」(Zip2)をハイフンつなぎで結合してSFDCリードの郵便番号(PostalCode)に連携するケースを例に、設定方法を説明します。項目マッピングで、「SMP項目または連携先SFDC項目」「SFDC項目」が以下のペアとなるレコードを追加しますVisitor.Zip1/PostalCodeVisitor.Zip2/PostalCode上の2つの項目マッピングにそれぞれ、フィルター設定を追加しますフィルターの種類:文字列の埋め込みフィルター式:[-][Visitor.Zip1][Visitor.Zip2]実行順序:1注意フィルターは、結合する項目すべて(上の例ではZip1、Zip2の両方)の項目マッピングに設定するようにしてください。片方だけしか設定していない場合、連携時のどちらの項目マッピングが処理されるかによって、フィルターが適用されたりされなかったりします。フィルターに設定している「実行順序」は項目マッピングの中で複数のフィルターを設定した場合の実行順序を決めるものであり、項目マッピングがどの順序で処理されるかは制御できません。SFDCの日時項目をSMPに連携するSFDCの日付/日時項目をSMPの日時項目に連携する場合、フィルタを利用してフォーマットを変換する必要があります。「SMP項目または連携先SFDC項目」にSMPの日時型の項目、「SFDC項目」に日時型の項目を指定した項目マッピングを作成します上の項目マッピングに、フィルター設定を追加しますフィルターの種類:指定された形式の日付フォーマットに変換フィルター式:[yyyy-MM-dd’T’HH:mm:ss'+09:00']実行順序:1注意上記の例は、SFDC/SMPのタイムゾーン設定が日本標準時(JST)であることを前提としています。SMPのリード詳細画面のURLをSFDCへ連携するフィルター「文字列のパディング」を利用すると、連携する値に固定文字列を付加することができます。これを利用して、連携するSMPリードのIDにURL文字列を追加して、SMPリード詳細画面のURLを作成・連携することができます。たとえば、チュートリアルの章にあるSMPリードをSFDCリードに連携するオブジェクトマッピングにて、連携元にSMPリードID(Visitor.Id等)を指定した項目マッピングに対して、以下のフィルター設定を追加します。フィルター種類:文字列のパディングフィルター式:[][0][L]これにより、連携先SFDC項目にはたとえば、リードID33のデータを連携した場合、「」といった文字列が登録されます。(末尾に33がついている)実際にこのリンクをクリックすると、対象のSMPに管理者としてログイン済みであればそのままリード詳細画面が表示されます。未ログインの場合は管理者ログイン画面が表示され、ログインした後にリード詳細画面が表示されます。なお、連携先のSFDC項目にはURL型のカスタム項目を利用すると自動的にリンク表示になるため便利ですが、その場合、255文字以内の入力制限がつくため、ご注意ください。(文字数を超えるデータを連携しようとした場合、登録エラーになります)SFDCの郵便番号をSMPへ連携するSFDCで保持している郵便番号(例:123-0001)から3桁部分と4桁部分を分割・取り出して、それぞれSMPの郵便番号1と郵便番号2に連携します。たとえば、SFDCの取引先責任者の郵送先住所の郵便番号MailingPostalCodeを、SMPのリード項目Visitor.Zip1、Visitor.Zip2に連携するとします。まず、3桁部分の項目マッピング(MailingPostalCode→Visitor.Zip1)を作成し、そこにフィルターを2種類追加します。ひとつめのフィルターフィルター種類:正規表現による変換フィルター式:[-][]実行順序:1ふたつめのフィルターフィルター種類:文字列の切り出しフィルター式:[0][3]実行順序:2同様に4桁部分の項目マッピング(MailingPostalCode→Visitor.Zip2)も作成し、フィルター2種類を追加します。ひとつめのフィルターフィルター種類:正規表現による変換フィルター式:[-][]実行順序:1ふたつめのフィルターフィルター種類:文字列の切り出しフィルター式:[3][7]実行順序:2ひとつの項目マッピングの中で2つのフィルターを続けて通すことで、正規表現による変換でハイフンを除去した後、文字列の切り出しで左からゼロ番目~3番目の範囲(3桁部分の場合)、あるいは3番目から7番目の範囲(4桁部分の場合)を取り出す、という処理を施すことになります。ただし、この方法はSFDCで登録されている元の郵便番号が、ハイフン部分を除いた結果7桁の数字となることを前提としています。(ハイフンはあってもなくても問題ありません)桁数が一致していないと、ずれた範囲を取り出してしまうことになるのでご注意ください。キャンペーンの開始時間をSFDCへ連携するたとえば、SMPのキャンペーン開始日から、日付部分などを除いて時間だけをSFDCのテキスト項目(ここでは仮にStartDateTimeText__cとします)に連携したいとします。この場合も、正規表現のよる置換を利用することで実現可能です。元のSMP日時は「2018-05-18T16:00:00+09:00」といった文字列になるので、そこから不要部分を削除することで時・分だけが取り出せます。項目マッピング(Seminar.StartDay→StartDateTimeText__c)を作成し、以下の2種類のフィルターを追加します。ひとつめのフィルター(年月日部分を削除する)フィルター種類:正規表現による変換フィルター式:[\d{4}-\d{2}-\d{2}T][]実行順序:1ふたつめのフィルター(秒とタイムゾーン部分を削除する)フィルター種類:正規表現による変換フィルター式:[:\d{2}\+09:00][]実行順序:2https://smpdoc.shanon.co.jp/ja/cooperation/apex2/chapter005/
機能リファレンス
-
-
SSO、シングルサインオンを利用
-
管理者シングルサインオンSHANONMARKETINGPLATFORM(以降、SMP)の管理画面のユーザー認証において、シングルサインオンを可能とすることができます。詳細は、「管理者シングルサインオン機能ユーザーマニュアル」ファイルをダウンロードしてご参照ください。https://smpdoc.shanon.co.jp/ja/cooperation/sso/
管理者シングルオンサイン
-
FAQ、エラーメッセージ、注意・制限事項SSOでのログイン時にエラーが出る場合注意・制限事項SSOでのログイン時にエラーが出る場合下記エラーメッセージ一覧をご覧ください。エラーメッセージ種別メッセージ対処方法は?全般不正な処理が行われましたSMPの一般的なログインエラーです。複数タブでの同時ログイン等を避けてください。OIDC/OAuth2client_id,client_secretが正しく設定されていません。連携先に設定されているクライアントID、クライアントシークレットがクライアント詳細画面に表示される値と一致しているかご確認ください。OIDC/OAuth2redirect_uriが正しく設定されていません連携先に設定されているリダイレクトURIがクライアント詳細画面に表示される値と一致しているかご確認ください。OIDC/OAuth2response_typeが正しく設定されていません連携先の設定が、認可コードフローになっていない可能性があります。連携先のRP/OAuth2Clientがインプリシットフロー等に設定されていないか、ご確認ください。OIDC/OAuth2scopeが正しく設定されていません連携先に設定されているスコープがクライアント詳細画面に表示される値と一致しているかご確認ください。OIDC/OAuth2codechallengemethodの値はplainかS256を指定してください。連携先のcode_challenge_methodが、plainまたはS256に設定されているかご確認ください。OIDC/OAuth2付与された認可グラントが不正です。PKCEでcode_challengeを利用した検証に、失敗した場合に表示されます。確認可能であれば、連携先のPKCEの設定や、実装をご確認ください。このエラーについて、弊社側では解決が難しい場合があります。SAMLログインエラー連携先のSPの識別子が、クライアント詳細画面に表示される値と一致しているかご確認ください。連携先のサービスを起点とするSP-initiatedSSOで、ID・パスワードの入力まで3分以上経過した場合にも表示されます。また連携先のURLで発生したエラーについては一旦、連携先の仕様・マニュアル等のご確認をお願いします。注意・制限事項SSO/IdP機能には以下の制限があります。必ずご一読の上、ご利用ください。種別制限事項全般SSO/IdP機能のご利用に際しては、事前にシャノンに利用申込をする必要があります。設定の有効化については、担当営業へご連絡ください。全般SSO/IdP機能のご利用に際しては、リード・管理者の数を対象として利用料金の請求が発生します。管理者の数については、シャノンの管理者・システム管理者を除く数が、対象となります。全般SSO/IdP機能はOIDC/OAuth2/SAMLにのみ対応しています。その他のプロトコルには対応していません。全般連携先での対応方式によっては、上記プロトコルでも機能が利用できない場合があります。例:OIDC/OAuth2のインプリシットフローなど全般お客様が作成された証明書を利用することはできません。SMPが発行する証明書のみ利用できます。クライアント登録・証明書更新時に、SMPが発行する証明書の有効期限は2年です。全般証明書の有効期限が切れた場合、連携先にログインできなくなる可能性があります。証明書の有効期限は、クライアント詳細画面に表示されますので、期限についてはお客様の方での管理をお願いします。サンドボックスサンドボックス先にクライアントの情報はコピーされません。変数国名([%country_master_id%])、都道府県([%prefecture_master_id%])、資料送付・各種情報案内を希望しますか([%permission_type_master_id%])の項目は文字列ではなくidを返却します。idと文言の関連付けについては、SMPの国名一覧、都道府県IDと都道府県名の対応表にあるidをご確認ください。変数リードのラジオボタン型追加項目([%VisitorData.attributeXX%])、チェックボックス型追加項目([%VisitorData.attributeXX%])、プルダウン型追加項目([%VisitorData.attributeXX%])については、文字列ではなくidを返却します。文字列とidの関連付けについては、連携先でidと値を再度関連付けるなどの運用をお願いします。変数SAMLかつ管理者の場合、利用できる変数は[%email%]、[%name1%]、[%name2%]、[%name3%]、[%memo%]、[%company_name%][%user_master_id%](管理者シングルサインオン機能有効時)[%saml_login_name_id%]のみです。変数SSO/IdP機能の変数としてメールテンプレートの差し込み項目や、$FORMなどを利用することはできません。クライアント登録・編集画面のUI上で表示されるものと、マニュアルに記載のあるもののみ利用できます。OIDC/OAuth2認可コードフローにのみ対応しています。インプリシットフロー等には対応していません。また認可/認証エンドポイント(/public/sso/login)への、POSTでのリクエストはサポート外の動作となります。GETでリクエストしてください。OIDC/OAuth2PKCEのcode_challenge_methodには、plainとS256のみ利用できます。plainの利用は非推奨です。PKCEの仕様についてはRFC7636をご確認ください。OIDC管理者での連携の場合、OIDC標準クレーム群を編集することはできません。OIDCOIDC標準クレームの「sub」を編集することはできません。常に以下の内容で設定されます。・リードの場合:visitor|(リードID)・管理者の場合:admin|(管理者ID)OIDC各種エンドポイント情報を提供する、Configurationエンドポイントは利用できません。そのためConfigurationエンドポイントが必須のRelyingPartyはサポート対象外となります。OIDCトークンをrevokeするエンドポイントは利用できません。OIDC/SAMLシングルログアウトは利用できません。OAuth2「OAuth2」を選択した場合、リード情報を取得する変数を利用することはできません。SAMLSP-InitiatedSSO:Redirect/POSTBindingsと、IdP-InitiatedSSO:POSTBindingのみをサポートしています。ArtifactBinding等には対応していません。またPOSTでのSAMLRequestは、サポート対象外となります。GETでリクエストしてください。SAMLSPの識別子は重複できません。SAMLクライアントにSPメタデータの登録はできません。SAML署名付きSAMLRequestには対応していません。SAMLIdPからのSAMLResponseの署名には、RSA-SHA256署名が常に利用されます。SAMLSignatureのDigestValueのダイジェストアルゴリズムには、SHA384が常に利用されます。その他OIDC/OAuth2/SAML自体の技術的な仕様については、OpenIDファウンデーションやOASISなど、外部のサイトをご確認ください。https://smpdoc.shanon.co.jp/ja/cooperation/ssoidp/chapter008/
FAQ、エラーメッセージ、注意・制限事項
-
SMPをSAMLIdentityProvider(IdP)として利用するこのページでは、SSO/IdP機能のSAMLのクライアントでの操作・設定について記載しています。SAML全般に関する説明については、管理者シングルサインオンにも記載がありますので、ご確認ください。SAML自体の技術的な仕様については、OASISをご確認ください。本機能はSAML2.0で定義される、SP-InitiatedSSO:Redirect/POSTBindingsと、IdP-InitiatedSSO:POSTBindingのみをサポートしています。連携したいアプリが連携可能かどうか制限事項を事前にご確認ください。利用方法の概要1.クライアント登録を開く2.SAMLのクライアントへの登録内容を確認し入力する3.IdPメタデータをダウンロードする4.連携先のSPに設定を登録する5.シングルサインオンする各項目の説明SAMLでの制限事項利用方法の概要連携先にSMPと連携するユーザーを作成します設定>SSO/IdPに遷移し、「新規登録」ボタンを押します「プロトコル」のSAML/OIDC/OAuth2の中から、「SAML」を選択します連携したいクライアント(SP)の情報を確認し、入力します登録後、IdPメタデータをダウンロードします連携したいクライアント(SP)に、IdPの情報を登録します連携先を起点(SP-initiatedSSO)、あるいはSMPを起点(IdP-initiatedSSO)として、連携したログインが実施できます注意上記の手順のうち1と5については、連携先によって設定が異なるため、連携先のマニュアルをご確認ください。1.クライアント登録を開く設定>SSO/IdPに遷移します「新規登録」ボタンをクリックします「プロトコル」のSAML/OIDC/OAuth2の中から、「SAML」を選択します連携先のSPの識別子、SPエンドポイントURL、NameID形式、NameIDの値、AttributeのName属性、AttributeのFriendlyName属性、Attributeの値を確認し登録します。これらのデータはSPメタデータやマニュアルに記載されていますので、連携先をご確認ください。NameIDの値、Attributeの値には変数を用いて、リード・管理者の情報を連携先に渡すことができます。変数の詳細についてはクライアントを管理するをご確認ください。2.SAMLのクライアントへの登録内容を確認し入力するクライアントへの具体的な入力値については、基本的には連携先のマニュアルや、SPメタデータに記載があります。SAMLのSPメタデータを構成する主な要素と、関連付けられるクライアント登録画面の項目について説明します。ここではクライアントへの登録内容の確認方法の例として、AWSのSAMLSPメタデータを挙げます。2.1SPの識別子上記リンクにあるSPメタデータの場合、SPの識別子は、EntityDescriptorタグのentityIDの値「urn:amazon:webservices」を登録します。この値について、連携先のマニュアルでは「EntityID」などの表記になっている場合があります。2.2SPエンドポイントURLSPエンドポイントURLは、AssertionConsumerServiceタグのLocationの値「」を登録します。この値について、連携先のマニュアルでは「ACSURL」、「ログインURL」などの表記になっている場合があります。2.3NameID形式NameID形式は、下記、NameIDFormatタグの値の中から1つを選択します。(例:「urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified」)一般的には、「urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified」または、「urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress」が用いられることが多いです。urn:oasis:names:tc:SAML:2.0:nameid-format:transienturn:oasis:names:tc:SAML:2.0:nameid-format:persistenturn:oasis:names:tc:SAML:1.1:nameid-format:emailAddressurn:oasis:names:tc:SAML:1.1:nameid-format:unspecifiedurn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectNameurn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedNameurn:oasis:names:tc:SAML:2.0:nameid-format:kerberosurn:oasis:names:tc:SAML:2.0:nameid-format:entityこの値について、連携先のマニュアルでは「nameid-format」、「NameIDの形式」などの表記になっている場合があります。2.4NameIDの値NameIDの値は、連携先やその設定により内容が変わります。例えば、SAMLSPのユーザーとメールアドレスで連携したい場合は、NameID形式に「urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress」または「urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified」を選択します。「NameIDの値」に「[%email%]」を設定すると、SMP(IdP)のリード/管理者のメールアドレスとSAMLSPのユーザーのメールアドレスを連携します。[%email%]などの変数の詳細については、クライアントを管理するをご確認ください。2.5AttributeのName属性、AttributeのFriendlyName属性AttributeのName属性、AttributeのFriendlyName属性は、それぞれ、下記RequestedAttributeタグのNameの値(例:「urn:oid:1.3.6.1.4.1.5923.1.1.1.1」)FriendlyNameの値(例:「eduPersonAffiliation」)を登録することができます。またRequestedAttributeタグのNameの値、FriendlyName値を、SAMLSPで利用することができます。下記のようにRequestedAttributeタグのisRequiredが「true」となっているものは、連携時に必須となりますのでご注意ください。2.6Attributeの値Attributeの値については、連携先のマニュアル、仕様をご確認ください。例としてAWSであれば、arn:aws:iam::1111111111111:role/sample-smp-assumerole,arn:aws:iam::1111111111111:saml-provider/sample-smp-providerといった特定の形式でIAMロールのarnを指定するなど、連携先サービス固有の値が入ります。3.IdPメタデータをダウンロードする管理者で連携する場合は「管理者メタデータ」を、リードで連携する場合は「リードメタデータ」を、それぞれクリックしてIdPメタデータをダウンロードしてください。連携先でx509証明書をテキスト形式や、PEM形式で設定する必要がある場合、ダウンロードしたIdPメタデータのxmlファイルを開き、ds:X509Certificateタグ内のX509証明書をコピー&ペーストしてください。xxxxxxxxxx例えば、SAMLSPでX509証明書をPEM形式で登録する場合、上記ds:X509Certificateタグ内の内容を下記のように「BEGINCERTIFICATE」「ENDCERTIFICATE」で括って保存します。-----BEGINCERTIFICATE-----xxxxxxxxxx-----ENDCERTIFICATE-----4.連携先のSPに設定を登録する事前に連携先に同じ識別子を持つユーザーを作成してください。4.1リードの場合こちらに記載するのは、IdPメタデータの読み込みに対応していない連携先への設定例です。連携先がIdPメタデータに対応している場合、「リードメタデータ」でダウンロードしたIdPメタデータを登録してください。No機能名クライアント名1IdPのEntityIDSMPの/samlidpを登録してください。例:ドメイン名がdemo-manual.shanon.co.jpであれば、「」になります。またIdPメタデータ内にも、のような形式で記載されていますので、こちらからも確認できます。2IdPのSSOエンドポイントURLSMPの/public/sso/login/adminを登録してください。例:ドメイン名がdemo-manual.shanon.co.jpであれば、「」になります。3x509証明書連携先でx509証明書をテキスト形式や、PEM形式で設定する必要がある場合、メタデータのダウンロード後xmlファイルを開き、xxxxxxxxxxの該当するx509証明書の箇所をコピー&ペーストし、連携先で利用できる形式に加工してください。4nameid-formatSSO/IdP機能のクライアントで登録したものと、同じものを選択してください。5ユーザー照合SSO/IdP機能の「NameIDの値」に一致する設定を選択してください。例として[%email%]を入力した場合、連携先にリード/管理者のメールアドレスを識別子として渡します。この場合は「Eメール」を連携先でもユーザー照合の識別子として、選択してください。[%email%]などのIdPでの変数の設定の詳細については、クライアントを管理するをご確認ください。6シングルサインオンのバインディングRedirectを選択してください。POSTでの動作は試験的なものであるため、サポート対象外となります。7SAMLRequestへの署名未対応のため、「署名しない」を選択してください。4.2管理者の場合こちらに記載するのは、IdPメタデータの読み込みに対応していない連携先への設定例です。連携先がIdPメタデータに対応している場合、「管理者メタデータ」でダウンロードしたIdPメタデータを登録してください。No項目名説明1IdPのEntityIDSMPの/samlidpを登録してください。例:ドメイン名がdemo-manual.shanon.co.jpであれば、「」になります。またIdPメタデータ内にも、のような形式で記載されていますので、こちらからも確認できます。2IdPのSSOエンドポイントURLSMPの/public/sso/login/adminを登録してください。例:ドメイン名がdemo-manual.shanon.co.jpであれば、「」になります。3x509証明書連携先でx509証明書をテキスト形式や、PEM形式で設定する必要がある場合、メタデータのダウンロード後xmlファイルを開き、xxxxxxxxxxの該当するx509証明書の箇所をコピー&ペーストし、連携先で利用できる形式に加工してください。4nameid-formatSSO/IdP機能のクライアントで登録したものと、同じものを選択してください。5ユーザー照合SSO/IdP機能の「NameIDの値」に一致する設定を選択してください。例として[%email%]を入力した場合、連携先にリード/管理者のメールアドレスを識別子として渡します。この場合は「Eメール」を連携先でもユーザー照合の識別子として、選択してください。[%email%]などのIdPでの変数の設定の詳細については、クライアントを管理するをご確認ください。6シングルサインオンのバインディングRedirectを選択してください。POSTは、サポート対象外です。7SAMLRequestへの署名「署名しない」を選択してください。入力した画面の例としては、このようになります。この画像ではあくまでサンプルとして、管理者シングルサインオン機能の画面を表示しています。お客様の連携したいアプリにより、設定、名称、UIなど異なる可能性がありますので、連携先のマニュアルをご確認ください。5.シングルサインオンするここまでの設定が正常にできた場合、連携によるシングルサインオンが可能となります。5.1IdP-initiatedSSOリードの場合5.1.1クライアント詳細を開き「リードIdP-initiatedSSO時のパス」をコピーします5.1.2コピーしたパスへのリンクを作成します例として、下記のようにコピーしたパスへ遷移するHTML要素を作成します例:連携先へログイン5.1.3system.zipや、$FORMの出力に上記のHTML要素を埋め込みますWEBテンプレート変更を開きます「デフォルトダウンロード」ボタンを押して、system.zipを解凍しますマイページのトップページに該当する、/system/mypage/top/plain.htmlを開きます開いたファイル内に、5.1.2で作成したHTML要素を埋め込みます変更後、systemフォルダを再度zip形式で圧縮しますWEBテンプレート変更から、「新規登録」ボタンをクリックし、登録します連携先に遷移し、SMPのリードでログインした状態であることを確認してください。テンプレートの変更方法の詳細については、テンプレート変更を利用するのマニュアルをご確認ください。またマイページの詳細については、マイページのマニュアルをご確認ください。注意マイページ以外でもテンプレートに5.1.2の「連携先へログイン」リンクを設定することができます。ただし、リードでログインしていない場合、5.1.2の「連携先へログイン」リンクをクリックしても、連携先にSSOできません。5.1.4リードでログイン後、リンクをクリックします5.2IdP-initiatedSSO管理者の場合5.2.1登録したクライアントの詳細画面に遷移します5.2.2「管理者としてシングルサインオン」ボタンをクリックします。+連携先に遷移し、SMPの管理者でログインした状態であることを確認してください。+5.3RelayState連携先がRelayStateパラメータに対応していれば、ログイン後に遷移するURLを指定する場合、下記のようにRelayStateパラメータを付与することで、ログイン後に指定したURLに遷移することができます。/public/sso/samlidp/auth?service_id=[:id]&RelayState=[:遷移先のURL]注意点設定に失敗、あるいは連携先が対応していない場合、ここまでの手順でログインできない場合があります。連携先にログインできない等のトラブルについては、FAQ、エラーメッセージ、注意・制限事項をご確認ください。各項目の説明No機能名クライアント名1クライアント名クライアントの名前です。SSOの動作には影響しません。2プロトコルSAMLで利用する場合、「SAML」を選択してください。3SPの識別子SAMLでの連携先固有のIDです。入力する値については、連携先のマニュアルやSPメタデータなどをご確認ください。4SPエンドポイントURLSAML2.0で定義されるAssertionConsumerServiceURLです。連携先でSAMLResponseを受け取るURLになります。値については、連携先のマニュアルやSPメタデータなどをご確認ください。4NameID形式SAML2.0で定義されるNameIDFormatです。利用可能な値については、連携先のマニュアルやSPメタデータなどをご確認ください。5NameIDの値SAML2.0で定義されるNameIDの値です。[%email%]などの変数が利用できます。変数の詳細については、クライアントを管理するをご確認ください。例として、NameIDの値を[%email%]に設定し、Emailが「manual@sample.shanon.co.jp」のリードで連携先へのログインを実施するとmanual@sample.shanon.co.jp(略)このような形式でSAMLResponse内に出力されます。6RelayStateSAML2.0で定義されるRelayStateです。RelayStateパラメータは、連携先へのログイン後、更に特定のURLに遷移する場合のパス指定などに用いられます。この入力値は、パラメータとしてRelayStateを渡されなかった場合のデフォルト値になります。例:AWSにSSOする設定を入れて、RelayStateにAmazonS3でホスティングしたURLを指定すると、SMPにログイン>AWSに特定のロールでログイン>お客様が構築されたS3のパスに遷移、となります。7AttributeのName属性SAML2.0で定義されるAttributeStatementのName属性です。連携先で定義可能な、追加項目として動作します。入力する値については連携先のマニュアルや、SPメタデータをご確認ください。例:AWSであればName=で、IAMロールが入ることを指定するなど連携先サービス固有の名前が入ります。8AttributeのFriendlyName属性SAML2.0で定義されるAttributeStatementのFriendlyName属性です。連携先で定義可能な、追加項目として動作します。入力する値については連携先のマニュアルや、SPメタデータをご確認ください。例:AWSであればFriendlyName=RoleEntitlementで、IAMロールが入ることを指定するなど連携先サービス固有の略称が入ります。9Attributeの値SAML2.0で定義されるAttributeStatementの値です。連携先で定義可能な、追加項目として動作します。[%email%]などの変数が利用できます。変数の詳細については、クライアントを管理するをご確認ください。入力する値については連携先のマニュアル、仕様をご確認ください。SAMLでの制限事項「制限事項」をご確認ください。https://smpdoc.shanon.co.jp/ja/cooperation/ssoidp/chapter006/
SMPをSAMLIdentityProvider(IdP)として利用する
-
SMPをOAuth2.0AuthorizationServerとして利用するこのページでは、SSO/IdP機能のOAuth2のクライアントでの操作・設定について記載しています。OAuth2.0AuthorizationServer自体の、技術的な仕様についてはRFC6749をご確認ください。また本機能はRFC6749で定義される、AuthorizationCodeFlowのみをサポートしています。AuthorizationCodeFlow以外のフローには対応していないため、連携したいアプリが連携可能かどうか制限事項を事前にご確認ください。利用方法の概要1.クライアント登録を開く2.連携したいクライアント(OAuth2Client)の情報を確認し入力する3.クライアントID、クライアントシークレットを控える4.連携したいクライアント(OAuth2Client)にAuthorizationServerの情報を登録する各項目の説明OAuth2.0での制限事項利用方法の概要連携先にSMPと連携するユーザーを作成します設定>SSO/IdPに遷移し、「新規登録」ボタンを押します「プロトコル」のSAML/OIDC/OAuth2の中から、「OAuth2」を選択します連携したいクライアント(OAuth2Client)の情報を確認し、入力します登録後、クライアントIDなどを控えます連携したいクライアント(OAuth2Client)に、AuthorizationServerの情報を登録します連携したログインが実施できます注意上記の手順のうち1と5については、連携先によって設定が異なるため、連携先のマニュアルをご確認ください。1.クライアント登録を開く設定>SSO/IdPに遷移します「新規登録」ボタンをクリックします「プロトコル」のSAML/OIDC/OAuth2の中から、「OAuth2」を選択します2.連携したいクライアント(OAuth2Client)の情報を確認し入力するクライアント登録での具体的な入力値について、連携先の仕様・設定をご確認の上、リダイレクトURI・クライアントタイプをご入力ください。リダイレクトURIは連携先のOAuth2Clientが出力するものと、完全一致する必要があります。前方一致・後方一致等では利用できません。3.クライアントID、クライアントシークレットを控える登録したクライアントの詳細画面を開きます「クライアントID」の値を控えますクライアントタイプが「コンフィデンシャル」であれば、「クライアントシークレット」の値も控えてください注意クライアントシークレットの値を、公開することは基本的にお控えください。またセキュリティについて留意の上、管理をお願いします。4.連携したいクライアント(OAuth2Client)にAuthorizationServerの情報を登録する*連携したいクライアント(OAuth2Client)に、連携可能なユーザーを事前に作成してください。また項目名の表記は連携先によって異なるため、連携先の仕様をご確認の上、設定してください。No項目名説明1発行者IssuerClaimに相当する項目にSMPのドメイン名を入力してください。例:ドメイン名がdemo-manual.shanon.co.jpであれば、「」になります。2連携先からのリクエストメソッドGETを選択してください。3クライアントIDSSO/IdP機能のクライアント詳細にある、「クライアントID」を入力してください。4クライアントシークレットSSO/IdP機能のクライアント詳細にある、「クライアントシークレット」を入力してください。クライアントタイプが「パブリック」に設定されている場合は不要です。5承認スコープ「publicwrite」を入力してください。6認可エンドポイントリードの場合は、SMPの/public/sso/login/visitorを登録してください。管理者の場合は、SMPの/public/sso/login/adminとなります。例:ドメイン名がdemo-manual.shanon.co.jpで、リードを対象にするのであれば、「」になります。7Tokenエンドポイントリードの場合は、SMPの/public/sso/token/visitorを登録してください。管理者の場合は、SMPの/public/sso/token/adminとなります。例:ドメイン名がdemo-manual.shanon.co.jpで、リードを対象にするのであれば、「」になります。8JWKsエンドポイントリードの場合は、SMPの/public/sso/key/visitorを登録してください。管理者の場合は、SMPの/public/sso/key/adminとなります。例:ドメイン名がdemo-manual.shanon.co.jpで、リードを対象にするのであれば、「」になります。9code_challenge_methodplainとS256のみ利用できます。plainの利用は非推奨です。PKCEの仕様についてはRFC7636をご確認ください。注意点設定に失敗、あるいは連携先が対応していない場合、ここまでの手順でログインできない場合があります。連携先にログインできない等のトラブルについては、FAQ、エラーメッセージ、注意・制限事項をご確認ください。各項目の説明No項目名説明1クライアント名クライアントの名前です。SSOの動作には影響しません。2プロトコルOAuth2.0AuthorizationFrameworkで利用する場合、「OAuth2」を選択してください。3リダイレクトURIAuthorizationServerのredirect_uriです。詳細はOpenIDファウンデーションをご確認ください。連携先のマニュアル・仕様等を確認して、OAuth2.0Clientから出力されるredirect_uriと完全一致する文字列を入力してください。4クライアントタイプAuthorizationServerのクライアントタイプです。詳細はRFC6749をご確認ください。「パブリック」「コンフィデンシャル」のどちらかを選択してください。「パブリック」の場合、OAuth2.0Clientへのクライアントシークレットの登録は不要です。5スコープ詳細・削除画面でのみ表示されます。publicwriteのみです。6証明書の有効期限詳細・削除画面でのみ表示されます。詳細はクライアントを管理するをご確認ください。OAuth2.0での制限事項「制限事項」をご確認ください。https://smpdoc.shanon.co.jp/ja/cooperation/ssoidp/chapter005/
SMPをOAuth2.0AuthorizationServerとして利用する
-
SMPをOpenIDProviderとして利用するこのページでは、SSO/IdP機能のOIDCのクライアントでの操作・設定について記載しています。OpenIDConnect自体の技術的な仕様については、OpenIDファウンデーションのように、外部のページをご確認ください。また本機能はOpenIDConnect1.0で定義される、AuthorizationCodeFlowのみをサポートしています。AuthorizationCodeFlow以外のフローには対応していないため、連携したいアプリが連携可能かどうか制限事項を事前にご確認ください。利用方法の概要1.クライアント登録を開く2.連携したいクライアント(RP)の情報を確認し入力する3.クライアントID、クライアントシークレットを控える4.連携したいクライアント(RP)にIdPの情報を登録する各項目の説明OpenIDConnectでの制限事項利用方法の概要連携先にSMPと連携するユーザーを作成します設定>SSO/IdPに遷移し、「新規登録」ボタンを押します「プロトコル」のSAML/OIDC/OAuth2の中から、「OIDC」を選択します連携したいクライアント(RP)の情報を確認し、入力します登録後、クライアントIDなどを控えます連携したいクライアント(RP)に、IdPの情報を登録します連携したログインが実施できます注意上記の手順のうち1と5については、連携先によって設定が異なるため、連携先のマニュアルをご確認ください。1.クライアント登録を開く設定>SSO/IdPに遷移します「新規登録」ボタンをクリックします「プロトコル」のSAML/OIDC/OAuth2の中から、「OIDC」を選択します2.連携したいクライアント(RP)の情報を確認し入力するクライアントへの具体的な入力値については、基本的には連携先のマニュアル等に記載されています。例として、AmazonCognitoであればリダイレクトURIに入る値は、となります。連携先の仕様・設定をご確認の上、リダイレクトURI・クライアントタイプ・OIDC標準クレーム群をご入力ください。3.クライアントID、クライアントシークレットを控える登録したクライアントの詳細画面を開きます「クライアントID」の値を控えますクライアントタイプが「コンフィデンシャル」であれば、「クライアントシークレット」の値も控えてください注意クライアントシークレットの値を、公開することは基本的にお控えください。またセキュリティについて留意の上、管理をお願いします。4.連携したいクライアント(RP)にIdPの情報を登録する連携したいクライアント(RP)に、連携可能なユーザーを事前に作成してください。また項目名の表記は連携先によって異なるため、連携先の仕様をご確認の上、設定してください。No項目名説明1発行者IssuerClaimに相当する項目にSMPのドメイン名を入力してください。例:ドメイン名がdemo-manual.shanon.co.jpであれば、「」になります。2連携先からのリクエストメソッドGETを選択してください。3クライアントIDSSO/IdP機能のクライアント詳細にある、「クライアントID」を入力してください。4クライアントシークレットSSO/IdP機能のクライアント詳細にある、「クライアントシークレット」を入力してください。クライアントタイプが「パブリック」に設定されている場合は不要です。5承認スコープ「openid」を入力してください。6認証エンドポイントリードの場合は、SMPの/public/sso/login/visitorを登録してください。管理者の場合は、SMPの/public/sso/login/adminとなります。例:ドメイン名がdemo-manual.shanon.co.jpで、リードを対象にするのであれば、「」になります。7Tokenエンドポイントリードの場合は、SMPの/public/sso/token/visitorを登録してください。管理者の場合は、SMPの/public/sso/token/adminとなります。例:ドメイン名がdemo-manual.shanon.co.jpで、リードを対象にするのであれば、「」になります。8UserInfoエンドポイントリードの場合は、SMPの/public/sso/userinfo/visitorを登録してください。管理者の場合は、SMPの/public/sso/userinfo/adminとなります。例:ドメイン名がdemo-manual.shanon.co.jpで、リードを対象にするのであれば、「」になります。9JWKsエンドポイントリードの場合は、SMPの/public/sso/key/visitorを登録してください。管理者の場合は、SMPの/public/sso/key/adminとなります。例:ドメイン名がdemo-manual.shanon.co.jpで、リードを対象にするのであれば、「」になります。10code_challenge_methodPKCEを利用する場合、code_challenge_methodには、plainとS256のみ利用できます。plainの利用は非推奨です。PKCEの仕様についてはRFC7636をご確認ください。SSO/IdP機能ではOpenIDConnect1.0で定義されるProviderMetadataには対応していないため、Configurationエンドポイントを設定して、自動的にその他エンドポイント等を検出する機能は利用できません。注意点設定に失敗、あるいは連携先が対応していない場合、ここまでの手順でログインできない場合があります。連携先にログインできない等のトラブルについては、FAQ、エラーメッセージ、注意・制限事項をご確認ください。各項目の説明No項目名説明1クライアント名クライアントの名前です。SSOの動作には影響しません。2プロトコルOpenIDConnectで利用する場合、「OIDC」を選択してください。3リダイレクトURIOpenIDConnect1.0のredirect_uriです。詳細はOpenIDConnectの仕様をご確認ください。連携先のマニュアル・仕様等を確認して、RPから出力されるredirect_uriと完全一致する文字列を入力してください。4クライアントタイプOpenIDProviderのクライアントタイプです。詳細はRFC6749をご確認ください。「パブリック」「コンフィデンシャル」のどちらかを選択してください。「パブリック」の場合、連携先(RP)へのクライアントシークレットの登録は不要です。5スコープ詳細・削除画面でのみ表示されます。openidのみです。6証明書の有効期限詳細・削除画面でのみ表示されます。詳細はクライアントを管理するをご確認ください。7OIDC標準クレーム群OpenIDConnect1.0で定義される、ユーザー情報を渡すためのクレーム群です。フルネーム(profile:name)、国名(address:country)などのOIDC標準クレーム群項目には、[%email%]形式の変数で、リードの情報を利用できます。この変数についての詳細は「クライアントを管理する」ページをご確認ください。クライアント登録・編集画面から設定したものに、ログインしたリードの情報が反映され、{sub:visitor|221,name:マニュアルサンプル,given_name:サンプル,family_name:マニュアル,preferred_username:マニュアルサンプルリード,email:manual@smp-sample.co.jp}/public/sso/userinfo/visitorのUserInfoエンドポイントから、上記のようなJSON形式で返ります。詳細はOpenIDConnectの公式など、外部サイトをご確認ください。管理者の場合は決まった値を取り、クライアント登録画面での設定が反映されないのでご注意ください。また識別子のsubには常に以下の内容で設定されます。・リードの場合:visitor|(リードID)・管理者の場合:admin|(管理者ID)8フルネーム(profile:name)フルネームにあたる項目です。[%name1%][%name3%][%name2%]のように、名・ミドルネーム・姓をつなげたフルネームが入るように変数を組み合わせたり、リード追加項目で「ニックネーム」を作成するなど、好みの形式で変数を設定してください。9名(profile:given_name)名前にあたる項目です。[%name2%]のように、名字が入るように変数を組み合わせたり、リード追加項目で「名」を作成するなど、好みの形式で変数を設定してください。10姓(profile:family_name)名字、姓にあたる項目です。[%name1%]のように名字、姓が入るように変数を組み合わせたり、リード追加項目で「姓」を作成するなど、好みの形式で変数を設定してください。11ミドルネーム(profile:middle_name)ミドルネームあたる項目です。[%name3%]のように、ミドルネームに当たるものが入るように変数を組み合わせたり、リード追加項目で「ミドルネーム」を作成するなど、好みの形式で変数を設定してください。12ニックネーム(profile:nickname)ニックネームにあたる項目です。[%name1%]さんのように変数と文字列を組み合わせたり、リード追加項目で「ニックネーム」を作成するなど、好みの形式で変数を設定してください。13好みのユーザー名(profile:preferred_username)好みのユーザー名にあたる項目です。[%company_name%][%name1%]様のように、変数を組み合わせたり、リード追加項目で「好みのユーザー名」を作成するなど、好みの形式で変数を設定してください。14プロフィールページのURL(profile:profile)プロフィールページのURLにあたる項目です。リード追加項目で「プロフィールページのURL」を作成するなど、好みの形式で変数を設定してください。15プロフィール画像のURL(profile:picture)プロフィール画像のURLにあたる項目です。リード追加項目で「プロフィール画像のURL」を作成するなど、好みの形式で変数を設定してください。16Webサイト・ブログのURL(profile:website)Webサイト・ブログのURLにあたる項目です。リード追加項目で「Webサイト・ブログのURL」を作成するなど、好みの形式で変数を設定してください。17性別(profile:gender)性別にあたる項目です。リード追加項目で「性別」を作成するなど、好みの形式で変数を設定してください。18生年月日(profile:birthdate)生年月日にあたる項目です。リード追加項目で「生年月日」を作成するなど、好みの形式で変数を設定してください。19タイムゾーン(profile:zoneinfo)タイムゾーンにあたる項目です。リード追加項目で「タイムゾーン」を作成するなど、好みの形式で変数を設定してください。20ロケール(profile:locale)ロケールにあたる項目です。リード追加項目で「ロケール」を作成するなど、好みの形式で変数を設定してください。21プロフィール最終更新日(profile:updated_at)プロフィール最終更新日にあたる項目です。リード追加項目で「プロフィール最終更新日」を作成するなど、好みの形式で変数を設定してください。(リードの「システム更新日時」はSSO/IdP機能の変数に未対応です。)22メールアドレス(email:email)メールアドレスにあたる項目です。[%email%]、[%email2%]のようにリードのメールアドレスを変数で利用する、あるいはリード追加項目で「Email3」を作成するなど、好みの形式で変数を設定してください。23メールアドレスが検証済み(email:email_verified)メールアドレスが有効かどうか、にあたる項目です。リード追加項目で「メールアドレスが有効」を作成するなど、好みの形式で変数を設定してください。(E-mailアドレスの有効フラグはSSO/IdPの変数に未対応です。)24電話番号(phone:phone_number)電話番号にあたる項目です。[%tel%]、[%tel2%]のように、電話番号、電話番号2の変数を利用する、あるいはリード追加項目で「電話番号」を作成するなど、好みの形式で変数を設定してください。25電話番号が検証済み(phone:phone_number_verified)電話番号が有効かどうか、にあたる項目です。リード追加項目で「電話番号が有効」を作成するなど、好みの形式で変数を設定してください。26フル住所(address:formatted)都道府県や市町村区、すべてが含まれる住所にあたる項目です。例:東京都港区三田3-13-16三田43MTビル[%address1%]、[%address2%]等の住所に関する項目を組み合わせたり、リード追加項目で「フル住所」を作成するなど、好みの形式で変数を設定してください。27番地、号室(address:street_address)番地、号室にあたる項目です。[%address2%]、[%address3%]のように町村番地、ビル・マンション名の変数を組み合わせたり、リード追加項目で「番地、号室」を作成するなど、好みの形式で変数を設定してください。28市町村区(address:locality)市町村区にあたる項目です。[%address1%]のように市区郡の変数を利用したり、リード追加項目で「市町村区」を作成するなど、好みの形式で変数を設定してください。29都道府県(address:region)都道府県にあたる項目です。リード追加項目で「都道府県」を作成するなど、好みの形式で変数を設定してください。(都道府県[%prefecture_master_id%]の変数はidを返却します)30郵便番号(address:postal_code)郵便番号にあたる項目です。[%zip1%]、[%zip2%]、[%zip3%]好みの形式で変数を設定してください。31国名(address:country)国名にあたる項目です。リード追加項目で「国名」を作成するなど、好みの形式で変数を設定してください。(国名[%country_master_id%]の変数はSMPの国名一覧にある、idを返却します)OIDC標準クレーム群で利用可能な変数については、クライアント登録・編集画面でも確認が可能です。これらの項目・値を連携先へ渡したあとは、お客様の好みに合わせてご利用ください。なお管理者の場合は自動的に下記の値で処理されます。No項目名既定値8フルネーム(profile:name)[%name1%][%name3%][%name2%]9名(profile:given_name)[%name2%]10姓(profile:family_name)[%name1%]11ミドルネーム(profile:middle_name)[%name3%]22メールアドレス(email:email)[%email%]24電話番号(phone:phone_number)[%tel%]変数についての詳細は「クライアントを管理する」ページをご確認ください。OpenIDConnectでの制限事項「制限事項」をご確認ください。https://smpdoc.shanon.co.jp/ja/cooperation/ssoidp/chapter004/
SMPをOpenIDProviderとして利用する
-
-
DataSpiderCloud SMP アダプターを利用
-
補足マッピングアイコンのチェックボックス連携手順SFDCからのチェックボックス連携手順マッピングアイコンのチェックボックス連携手順チェックボックス(複数選択)項目を連携する場合、SODのマッピングアイコン内のSMP項目を次のように補正してください。チェックボックス連携手順概要マッピングアイコンでSMPのチェックボックスの値を連携する手順は、次のとおりです。【前提】SMPのリードの追加項目に下記のようにチェックボックスを定義します。また、チェックボックスの物理項目名は「Attribute3」と定義します。WSDLファイルを読み込んだ直後は、次の状態となります。最終的にはSODを用いてAttribute3Listの部分を編集し下記のように設定する必要があります。チェックボックスの要素数(Nと定義)分、Attribute3[N]を作成します。チェックボックス要素作成手順は、以降で説明します。チェックボックス要素作成手順チェックボックス要素の追加項目(ここではAttribute3)を選択後、右クリックし、コピーを選択しますAttribute3Listを選択後、右クリックし、貼り付けを選択します2.を「チェックボックスの要素数-1」回繰り返し、チェックボックスの要素数分、Attribute3を作成しますAttribute3を右クリックし、「編集」をクリックします「インデックス」に「1」を入力し「完了」をクリックしますAttribute3が、Attribute3[1]となります4.5.を「チェックボックスの要素数-1」回分繰り返します。ただし、5.の「インデックス」の値は、「2」「3」…「N」と順に設定してくださいSODアダプターに格納する値Attribute3[1]から順にチェックボックスにチェックがついた項目をアダプターに格納します。チェックボックスにチェックがついていない項目数分、Attribute3[N]のAttribute3IdとAttribute3Nameが空文字となります。例1:選択肢2のみにチェックが入っている場合物理項目名アダプターに格納する値Attribute3[1]Attribute3Id2Attribute3Name選択肢2Attribute3[2]Attribute3Id(空文字)Attribute3Name(空文字)Attribute3[3]Attribute3Id(空文字)Attribute3Name(空文字)例2:選択肢1と選択肢3にチェックが入っている場合物理項目名アダプターに格納する値Attribute3[1]Attribute3Id1Attribute3Name選択肢1Attribute3[2]Attribute3Id3Attribute3Name選択肢3Attribute3[3]Attribute3Id(空文字)Attribute3Name(空文字)例3:選択肢1、選択肢2、選択肢3全てにチェックが入っている場合物理項目名アダプターに格納する値Attribute3[1]Attribute3Id1Attribute3Name選択肢1Attribute3[2]Attribute3Id2Attribute3Name選択肢2Attribute3[3]Attribute3Id3Attribute3Name選択肢3SFDCからのチェックボックス連携手順SFDCからSMPにSFDCのチェックボックスの値を登録する場合、SFDC側は選択肢の値を「;」で連結したものが入力値となります。一方、SMPは、チェックボックスの値をリスト形式で保持するため、SODでmappingする場合、下記のようにSFDCの入力値を変換してSMPに紐づける必要があります。<連携手順>文字列の後ろに「;」を追加します例:「選択肢の値A;選択肢の値B;選択肢の値C」⇒「選択肢の値A;選択肢の値B;選択肢の値C;」手順1で生成した文字列を「;」で区切った前の要素を「Attribute3Name」に紐づけます「;」の後ろの要素を入力値とし、再帰的に選択肢数分繰り返します。例:「選択肢の値A;選択肢の値B;選択肢の値C;」※1⇒「選択肢の値A」「;」で区切った後ろの値の文字列(※1)を「;」で区切り、前の要素を「Attribute3Name」に紐づけます。「選択肢の値B;選択肢の値C;」⇒「選択肢の値B」最後の要素のみ「;」で区切った前の要素を「Attribute3Name」に紐づけますhttps://smpdoc.shanon.co.jp/ja/cooperation/sod/chapter009/
補足
-
FAQSMPに接続できない場合、リトライする機能はありますか?トークン切れに伴うリトライ機能があります。トークン切れ以外の原因でSMPに接続できない場合は、異常終了します。SMP参照・更新時にエラーとなった場合、ログにどのような情報を出力しますか?(必須チェック・形式チェックでエラー)ログにSsApiExceptionを出力します。ログ出力例1原因:[[jp.co.shanon.modules.adapter.smartseminar.util.SsApiException...”また、INFOレベルで必須チェック、形式チェックエラーを出力します。ログ出力例2|INFO|ERROR_MESSAGE(String)=Seminar.ss_target_type:必ず入力してください注意application.postは、必須チェックや形式チェックでエラーとなった場合、上記ログを出力しません。ログ出力例3com.appresso.ds.script.runtime.ComponentFailedException:[APPLICATION_POST(アプリケーション/SmartSeminar3/申込)]の処理に失敗しました。原因:[java.lang.NullPointerException]チェックボックス項目の選択肢を追加した場合、マッピング情報を再定義する必要がありますか?はい。SMPのリード、キャンペーンにチェックボックスの選択肢を追加した場合、マッピングを定義しなおす必要があります。「一斉メール配信情報登録API」にて「送信ユーザー指定」した場合に、リード情報取得APIで取得したリード情報IDのリストを設定することはできますか?できません。「検索条件指定」を使用してください。接続するとエラーになります。どうすればいいですか?エラーメッセージ説明リソースの必須項目が設定されていませんSMPアダプターの設定項目漏れがないか確認してください。トークンを取得できませんでした担当者にお問い合わせください。接続テスト失敗担当者にお問い合わせください。リードの項目が追加になりました。どのようにすればいいですか?次の手順でmappingアイコンに追加した項目を追加してください。リード以外の項目追加に関しても同様の方法で対応することができます。マッピングアイコンの「VisitorData」を右クリックします「追加」→「子要素」を選択します要素名に追加する物理名(例:Attribute123List)を追加します選択肢「AttributeNList」を追加した場合は、「AttributeNList」の下に「AttributeNId」または「AttributeNName」を同様の要領で追加します。対応するデータを「データフロー」で連結しますSMPがエラーになったときはどうすればいいですか?「SHANONMARKETINGPLATFORMAPI開発者ガイド」ページをご参照ください。https://smpdoc.shanon.co.jp/ja/cooperation/sod/chapter008/
FAQ
-
制限事項URLパラメータについては「SHANONMARKETINGPLATFORMAPI開発者ガイド」ページよりご参照ください。アイコンURL部パラメータ使用の可・不可更新(PUT)URL部パラメータ使用不可使用不可であるURLパラメータの例:visitor.putのupsert、update_key、ignore_itemcheck等新規作成(POST)URL部パラメータ使用不可使用不可であるURLパラメータの例:visitor.postのignore_itemcheck、admin.postのsend_mail等新規作成/更新(UPSERT)URL部パラメータ使用不可使用不可であるURLパラメータの例:visitor.putのignore_itemcheck等申込(application.post)下記URL部パラメータ使用可・application_flow_id・lang・is_update・application_step_id・action申込キャンセル(application.delete)URL部パラメータ使用可使用可能であるURLパラメータの例:donot_send_mail一括登録情報API一括登録情報API全般に対応しておりません。https://smpdoc.shanon.co.jp/ja/cooperation/sod/chapter007/
制限事項
-
値設定時のデータ型各データ型は、「SHANONMARKETINGPLATFORMAPI開発者ガイド」に準ずる物とします。記述フォーマットは、次のとおりです。データ型定義設定例base64Binaryバイナリをbase64でエンコードした文字列「SHANONMARKETINGPLATFORMAPI開発者ガイド」の「ファイル情報登録API」ページをご参照ください。DoubleType-1e15~1e15までの数値-12345.67,0.0002,+2345.678,-1e7dateTime[-]CCYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm]2014-10-02T08:55:00+09:00float32ビットのfloat123.456,+1234.456,-1.2344e56,-.45E-6,INF,-INF,NaNint-2147483648~2147483647の整数-234,0,+012,234nonNegativeInteger[+]?[0-9]+(0以上の整数)0,+12,0123,234string文字列abcd,あいうえお,1.漢字https://smpdoc.shanon.co.jp/ja/cooperation/sod/chapter006/
値設定時のデータ型
-
エラー情報の変数設定API、参照・更新時のエラー情報を変数に設定する方法は、次のとおりです。SMPAPIアダプターのアイコンをtrycatchで囲みますcatch句内にvariable(変数代入)アイコンを作成しますスクリプト変数に必要なエラー変数を定義します(具体的な変数名は、次の表をご参照ください)3.で作成した変数とSMPAPIアダプターのアイコンのコンポーネント変数のリンクを付与します作成したフローを実行するとログにエラー情報を出力します詳細は、次のとおりです。変数名定義出力例message_codeSMPレスポンスのSubCodeタグの値0000:その他エラーmessage_levelSMPアダプターのメッセージレベルE:エラーmessage_categorySMPレスポンスのValueタグの値OTHER:その他エラーerror_messageSMPレスポンスのエラーメッセージname1_ka:必ず入力してくださいerror_typeSMPアダプターの例外クラスjp.co.shanon.modules.adapter.smartseminar.util.SsApiExceptionerror_traceSMPアダプターのstacktracejp.co.shanon.modules.adapter.smartseminar.util.SsApiException:Element'{}Email2':Thiselementisnotexpected.error_codeSMPのエラーコードAPI開発者ガイドの「共通エラーコード一覧」をご参照くださいerror_categorySMPのエラーカテゴリーSender:APIリクエスト送信側のエラーhttps://smpdoc.shanon.co.jp/ja/cooperation/sod/chapter005/
エラー情報の変数設定
-