#author("2018-10-09T06:46:55+09:00","","")
[[FrontPage]]

&size(24){データAPI/食品文字列検索++};

* API情報 [#q6190828]

|~名称|食品文字列検索++|
|~APIバージョン|2|
|~認証タイプ|なし|
|~URL|https://(APIサーバー名)/services/api2/(アクセスコード)/search/slot4/json/検索語1 検索語2 ... 検索語N/ &br;https://(APIサーバー名)/services/api2/(アクセスコード)/search/slot4/json/検索語1 検索語2 ... 検索語N/開始位置/表示個数/|
|~Method|GET|
|~データ更新頻度目安|4週間|

* 概要 [#jfe13a2c]

[[食品文字列検索>データAPI/食品文字列検索+]] を実施し、弊社独自のルール(上位4番手までに可能性が高いものを位置づける)に従い順番を並べ替える。

※通常は[[食品文字列検索>データAPI/食品文字列検索+]]をご利用下さい。(食品文字列検索++より[[食品文字列検索>データAPI/食品文字列検索+]]の方が高速です)


* アクセス手順 [#ya59d11f]

** クエリー [#l9016c71]

https://(APIサーバー名)/services/api2/(アクセスコード)/search/slot4/json/(検索文字列)/ &br;
(検索文字列) で検索した結果を返却する。

https://(APIサーバー名)/services/api2/(アクセスコード)/search/slot4/json/(検索文字列)/(開始位置)/(表示個数)/ &br;
(検索文字列) で検索した結果のうち、0から始まるインデックスの(開始位置)番目から、(表示個数)個のアイテムを返却する。

検索文字列がマルチバイトの場合は、文字コードをUTF-8としURLエンコードを施したものとする。


** 検索文字列ルール [#u55567aa]

- 英字・数字は半角を用いる(全角英数字は使用されない)
- カナは全角を用いる(半角カナは使用されない)
- 英文字は大文字を用いる(英小文字は使用されない)
- 次の半角記号は用いない
 <>?_,./\;:][+*}{`~=^-)('%$#"!&
- 次の全角記号、全角機種依存文字は用いない
 〇○◇□△▽☆●◆■▲▼★◎◯♂♀〒()
 〔〕[]{}〈〉《》「」『』【】‘’“”
 →←↑↓⇒⇔…‥、。,.・:;?!゛゜´
 `¨^ヽヾゝゞ〃°′″¥$¢£%‰℃Å+
 -±×÷=≒≠≦≧<>≪≫∞∽∝∴∵∈∋
 ⊆⊇⊂⊃∪∩∧∨¬∀∃∠⊥⌒∂∇≡√∫∬
 ─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫
 ┻╋┠┯┨┷┿┝┰┥┸╂#&*@§※〓♯
 ♭♪†‡¶仝~ ̄_―‐∥|/\
 №㏍℡㊤㊥㊦㊧㊨㈱㈲㈹㍾㍽㍼㍻㍉㎜㎝㎞㎎
 ㎏㏄㍉㌔㌢㍍㌘㌧㌃㌶㍑㍗㌍㌦㌣㌫㍊㌻①②
 ③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳ⅠⅡ
 ⅢⅣⅤⅥⅦⅧⅨⅩ

** 入力される検索文字列の取り扱い [#xe17b367]

検索文字列は、半角スペース(" ")で区切られた複数の語によって構成される。&br;
入力された各検索語は、先頭から全角6文字相当(半角12文字相当)までが採用され、それ以降の部分は切り捨てて使用される。

** クエリー例 [#ea78dac9]

 https://(APIサーバー名)/services/api2/(アクセスコード)/search/slot4/json/%E3%83%A9%E3%83%BC%E3%83%A1%E3%83%B3%20%E5%A1%A9/

** レスポンス [#b7e56e30]

レスポンスコードは200を返し、レスポンスはjson形式である。レスポンスされる食品数の最大値は 500 である。
検索結果が存在しない場合は長さ0の配列が返される。クエリー書式誤り等の場合はレスポンスコード404が返される。

 {
   foods :[
     {
       "name" : 食品名,
       "yomi" : 食品名読み,
       "objectid" : オブジェクトID,
       "unit" : 分量,
       "stuff_e" : エネルギー,
       "stuff_p" : たんぱく質,
       "stuff_f" : 脂質,
       "stuff_c" : 炭水化物,
       "categorytree" : [
         第1階層カテゴリー名,
         第2階層カテゴリー名,
         第3階層カテゴリー名
       ],
       "subsubattr" : {
         "gaishoku" : 外食フラグ 0 or 1,
         "kakou" : 加工食品フラグ 0 or 1,
         "takeout" : テイクアウトフラグ 0 or 1,
       },
       "shopname" : メーカー名
     },
     {
       (食品データ)
     },
     :
   ]
 }

** レスポンス例 [#i994a280]

#html{{
<pre class="brush:xml;">
{
  &quot;foods&quot;:[
    {
      &quot;name&quot;:&quot;\u30aa\u30fc\u30eb\u30a2\u30ba\u30ad(1\u679a)(\u6771\u30cf\u30c8)&quot;,
      &quot;yomi&quot;:&quot;\u304a\u30fc\u308b\u3042\u305a\u304d\u3044\u3061\u307e\u3044\u3068\u3046\u306f\u3068&quot;,
      &quot;objectid&quot;:&quot;FOd6e9f772488019ac014f6f5b&quot;,
      &quot;unit&quot;:8,
      &quot;stuff_e&quot;:29,
      &quot;stuff_p&quot;:0.5,
      &quot;stuff_f&quot;:0.6,
      &quot;stuff_c&quot;:5.5,
      &quot;categorytree&quot;:[
        &quot;\u305d\u306e\u4ed6&quot;,
        &quot;\u83d3\u5b50\u985e&quot;,
        &quot;\u30af\u30c3\u30ad\u30fc\u30fb\u30d3\u30b9\u30b1\u30c3\u30c8\u30fb\u30d1\u30a4&quot;
      ],
      &quot;shopsubattr&quot;:{
        &quot;gaishoku&quot;:0,
        &quot;kakou&quot;:1,
        &quot;takeout&quot;:0
      },
      &quot;shopname&quot;:&quot;\u6771\u30cf\u30c8&quot;
    },
    {
      &quot;name&quot;:&quot;\u30aa\u30fc\u30eb\u30a2\u30c3\u30d7\u30eb(1\u679a)(\u6771\u30cf\u30c8)&quot;,
      &quot;yomi&quot;:&quot;\u304a\u30fc\u308b\u3042\u3063\u3077\u308b \u3044\u3061\u307e\u3044 \u3068\u3046\u306f\u3068&quot;,
      &quot;objectid&quot;:&quot;FOe30783f5474d2d7228624ecc&quot;,
      &quot;unit&quot;:7.6,
      &quot;stuff_e&quot;:29,
      &quot;stuff_p&quot;:0.3,
      &quot;stuff_f&quot;:0.6,
      &quot;stuff_c&quot;:5.5,
      &quot;categorytree&quot;:[
        &quot;\u305d\u306e\u4ed6&quot;,
        &quot;\u83d3\u5b50\u985e&quot;,
        &quot;\u30af\u30c3\u30ad\u30fc\u30fb\u30d3\u30b9\u30b1\u30c3\u30c8\u30fb\u30d1\u30a4&quot;
      ],
      &quot;shopsubattr&quot;:{
        &quot;gaishoku&quot;:0,
        &quot;kakou&quot;:1,
        &quot;takeout&quot;:0
      },
      &quot;shopname&quot;:&quot;\u6771\u30cf\u30c8&quot;
    }
  ]
}</pre>
}}

* 考慮事項 [#wa8c2055]

本APIの返却するデータは、クライアント側で適切にキャッシュ等を行い、アクセス量を低減させることで更に効率化されると考えられる。

* バージョン [#o0becc47]

このドキュメントのバージョン情報
|Version|1|
|Revision|1|
|Editor|IMD|

トップ   差分 履歴 リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS