開発者向けサポート

CASE.02 レコメンド情報をレコメンドサービスから取得して表示したい

概要

外部のレコメンドサービスを使用している店舗様より、サイトを閲覧しているユーザーに応じたレコメンド情報を、
外部のレコメンドサービスから取得して表示したいというご要望があった際に利用されたAPIについての紹介になります。

利用するAPI

ビューアドオンAPI

カスタマイズ例

APPCASE_08フロー図

ビューアドオンAPIからのリクエストには画面を閲覧しているユーザの会員ID等が含まれています。
こちらの例では、そのような情報を外部のレコメンドサービスに展開し、レコメンド情報を取得することで実現しています。


ビューアドオンAPIについて

ビューアドオンAPI はAppsで編集した値をテンプレートに出力することができるAPIになります。
ビューアドオンAPIからAppsへ送られてくるリクエストには、contextという要素の中にmember_idという名前で会員IDが含まれています。
その他どのような要素が送られてくるかは上記リンクを参照してください。

会員IDと外部のレコメンドサービスの情報が紐づいている場合、送られてきた会員IDを利用してレコメンド情報を取得し、
次のようなレスポンスを返すと画面にレコメンド情報を出力できます。

テンプレートに記述する内容
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:m="http://mayaa.seasar.org" xml:lang="ja" lang="ja" xmlns:sample="eb:SAMPLE_APP_CD/view_common.json">

....

<!-- レコメンド情報を記載する箇所 -->
<p><div>sample:write="RECOM_INFO"</div></p>
ビューアドオンAPIへのレスポンス
{
	"RECOM_INFO": "レコメンド情報"
}
最終的に置換されるHTML
<!-- レコメンド情報を記載する箇所 -->
<p>レコメンド情報</p>

また、ebisumart側で持つ会員ID以外の会員情報がレコメンドサービス側に紐づいていてその情報がほしい場合、
会員IDを利用してデータアクセスAPIの /members/{member_id} を実行することで、会員情報を取得出来ます。

例えば、必要な情報が姓名で会員IDが2の場合、次のようなリクエストによって会員情報を取得できます。

リクエスト
GET members/2.json?select=L_NAME,F_NAME
レスポンス
200 OK

{"L_NAME": "山田","F_NAME": "太郎"}

なお、ビューアドオンAPIの各パラメータは Apps通信ログ を利用することで確認できます。
送られてくるリクエストパラメータは「対象データ」に、返したレスポンスパラメータは「処理結果メッセージ」に記載されます。
利用方法などについては上記ページにて掲載されておりますので、ぜひご確認ください。

ここを見た方は他にもこんなページを見ています。