APIにアクセス元の国や都道府県を追加する

オリジナル処理にあるSmartyの定数としてAPIのリクエスト元のユーザーの地理情報が取得できます。

アクセス元として利用できるコード

{$smarty.const.GEO_COUNTRY_CODE} ISO 3166-2に基づく国のコード。日本の場合はJPになります。
{$smarty.const.GEO_REGION} ISO 3166-2に基づくの区分コード。日本の場合は都道府県などの番号が入ります。例)東京都:13
{$smarty.const.GEO_CONN_SPEED} broadband, cable, dialup, mobileなどの接続環境のコードが入ります。

profileを返すAPIに地理情報を追加する

1. オリジナル処理に以下のコードを記述します

{assign_array var=processed_json values=""}
{assign var=processed_json value=$json}
{assign var=processed_json.geo_country_code value=$smarty.const.GEO_COUNTRY_CODE}
{assign var=processed_json.geo_region value=$smarty.const.GEO_REGION}
{assign var=processed_json.geo_conn_speed value=$smarty.const.GEO_CONN_SPEED}

$jsonは下記でセットすると、APIのPostProcessでの利用できるAPIの出力結果です。
$processed_jsonは、PostProcessでの変換後の出力結果を投入できます。

2. APIのPostProcessに上記のオリジナル処理をセット

3. API出力に例えば、以下のようにAPIのリクスト元の地理データが追加されます

{"name1":"加藤",
"name2":"ケンタ",
"member_id":96,
"group_ids":{"1":"管理者","110":"一般会員"},
"shash":"ca64ddf281bc0168626c2706fde81126",
"expiresAt":1628260083,
"geo_country_code":"JP",
"geo_region":"13",
"geo_conn_speed":"broadband"
}

注意

これらの地理データはIPアドレスベースで分類されていますが、正確性を保証するものではありません。あくまでも目安としてご利用ください。