[[FrontPage]]
&size(24){ユーザーAPI/栄養充足率の取得};
* API情報 [#q6190828]
|~名称|栄養充足率の取得|
|~APIバージョン|1|
|~認証タイプ|ユーザー認証|
|~URL|https://(APIサーバー名)/services/api/(アクセスコード)/|
|~Method|POST|
|~データ形式|application/x-www-form-urlencoded|
* 概要 [#jfe13a2c]
単一日の栄養充足率を取得する
* パラメーター [#ya59d11f]
|引数名|値|型|必須|内容|h
|v|1(固定)|int定数|必須|バージョン番号&br;現在は1|
|c|Bu(固定)|string定数|必須|コマンド&br;Bu = ユーザー認証付きBBAPIを呼び出す|
|Category|XST(固定)|string定数|必須|オペレーションカテゴリー&br;XST = エクストラサービス|
|Operation|cal(固定)|string定数|必須|オペレーション&br;cal = CALLオペレーション|
|AppKey|アプリケーションキー|string|必須|アプリケーションキーペアのアプリケーションキー|
|UserAuth|ユーザー認証タイプ|string|必須|userhashbb|
|uid|モバイルダイエットID|string|uidまたはloginidのいずれか必須|ユーザーのモバイルダイエットID|
|loginid|ログインID|string|uidまたはloginidのいずれか必須|ユーザーのログインID|
|password|パスワードハッシュ値|hash|必須|sha1(アプリケーションシークレット+パスワード) の値|
|StructData|クエリーデータ|xml|必須|サービス要求データ|
|Format|json,yaml,xml|string定数|任意|出力フォーマット指定&br;省略時json(またはアプリケーションキー毎に指定のフォーマット)|
|Charset|UTF-8,SJIS,EUC-JP|string定数|任意|出力文字コード指定・省略時UTF8&br;出力フォーマットjson,xml時は常にUTF-8|
認証パラメーターAppKey,UserAuth,uid,passwordについては、[[API認証>API認証#authtype_user]]を参照~
出力指定パラメーターFormat,Charsetについては、[[出力フォーマット]]を参照~
* サービス要求データXML [#d1118dc6]
** データ定義XML構成 [#sbcdc85d]
CallServiceタグ: ルートノード
ServiceNameタグ: サービス指定子 UserMealAnalyzeDay1固定 [必須]
Paramタグ: 入力パラメータ [任意]
modeタグ: 動作モード [任意] getdesc:サービス定義記述のみを返却
dateタグ: 指定日 [任意] 省略時はアクセスした日付
** XML例 [#g9ecbe25]
#html{{
<pre class="brush:xml;">
}}
#htmlinsert(samxml_mobadaiapi_callextra_UserMealAnalyzeDay1.xml)
#html{{
</pre>
}}
* 返値 [#e86e04c1]
|変数名|型|内容|h
|api_result|boolean|API実行結果&br;true:成功 false:失敗|
|struct|array|結果データの配列|
結果データの配列
|変数名|型|内容|h
|stuffid|string|栄養素ID|
|stuffname|string|栄養素名|
|unitname|string|単位|
|border|float|標準量|
|value|float|摂取量|
|perc|float|充足率|
** JSONの例 [#a81f6668]
#html{{
<pre class="brush:xml;">
{
"api_result":true,
"api_rescode":1,
"struct":[
{
"stuffid":"stuff_e",
"stuffname":"\u30ab\u30ed\u30ea\u30fc",
"unitname":"kcal",
"border":1716,
"value":2135.1778,
"perc":124},
{
"stuffid":"stuff_p",
"stuffname":"\u86cb\u767d\u8cea",
"unitname":"g",
"border":50,
"value":78.4558,
"perc":157},
// ... 中略 ...
{
"stuffid":"iodine",
"stuffname":"\u30e8\u30a6\u7d20",
"unitname":"\u03bcg",
"border":95,
"value":17.512,
"perc":18},
{
"stuffid":"selen",
"stuffname":"\u30bb\u30ec\u30f3",
"unitname":"\u03bcg",
"border":25,
"value":114.02,
"perc":456}
]
}
</pre>
}}
** XMLの例 [#a81f6668]
#html{{
<pre class="brush:xml;">
<?xml version="1.0" encoding="UTF-8"?>
<response>
<api_result>1</api_result>
<api_rescode>1</api_rescode>
<struct>
<item>
<stuffid>stuff_e</stuffid>
<stuffname>カロリー</stuffname>
<unitname>kcal</unitname>
<border>1716</border>
<value>2135.1778</value>
<perc>124</perc>
</item>
<item>
<stuffid>stuff_p</stuffid>
<stuffname>蛋白質</stuffname>
<unitname>g</unitname>
<border>50</border>
<value>78.4558</value>
<perc>157</perc>
</item>
<item>
<stuffid>stuff_fac1</stuffid>
<stuffname>飽和脂肪酸</stuffname>
<unitname>g</unitname>
<border>5.75</border>
<value>14.9984</value>
<perc>261</perc>
</item>
// ... 中略 ...
<item>
<stuffid>iodine</stuffid>
<stuffname>ヨウ素</stuffname>
<unitname>μg</unitname>
<border>95</border>
<value>17.512</value>
<perc>18</perc>
</item>
<item>
<stuffid>selen</stuffid>
<stuffname>セレン</stuffname>
<unitname>μg</unitname>
<border>25</border>
<value>114.02</value>
<perc>456</perc>
</item>
</struct>
</response>
</pre>
}}
* サンプル [#z5db7844]
PHPサンプル [[サンプル/PHP/ユーザーAPI/栄養充足率の取得]] &br;
* バージョン [#o0becc47]
このドキュメントのバージョン情報
|Version|1|
|Revision|1|
|Editor|west|