制限事項
パラメータの上限と、ベータ初期に固定されている値。
リクエスト全体
| 項目 | 制限 | 超過時 |
|---|---|---|
| ボディサイズ | 4KB (4,096 バイト) 以下 | 413 / content_too_large |
Content-Type | application/json のみ | 415 / unsupported_media_type |
| トップレベルパラメータ | 仕様に定義されたもののみ | 400 (汎用) |
パラメータの上限
JSON のキーは短縮名のみです (括弧内は正式名)。正式名をキーにすると許可リスト外の
400 になります。
| パラメータ | 制限 | 超過時のコード |
|---|---|---|
q (query) | 正規化後 1〜500 文字 (ルーン数) | too_short / too_long |
o (offset) | 0〜999 | out_of_range |
l (limit) | 1〜100 (既定 10) | out_of_range |
o + l | 1000 以下 | range_exceeded |
fld (fields) | 最大 10 件 | too_many_items |
flt.exh (exclude_holders) | 最大 10 件 | too_many_items |
q は前後空白の除去と連続空白の単一化で正規化されます。文字数の判定は正規化後の
値に対して行うため、送った文字列の長さと一致しない場合があります。正規化の結果は
レスポンスの nq で確認できます。
値の関係
| 条件 | 違反時のコード |
|---|---|
flt.si < flt.un | invalid_range |
ベータ初期に固定されている値
以下のパラメータは受け付けますが、指定できる値が限られます。それ以外を指定すると
unsupported_value になります。srt の値も短縮名で、正式名 (relevance など) は
受け付けません。
| パラメータ | 指定できる値 | 本来の用途 |
|---|---|---|
srt (sort) | rel / pa / pd | 並び順の指定 |
st (search_type) | text | 検索方式の指定 |
spc (spell_correction) | off | スペル補正の有効化 |
fld の扱い
fld (fields) は他のパラメータと挙動が異なります。
- 未指定のときは全カタログ項目を返す
- 未対応の項目は エラーにせず黙って破棄する
- 破棄の結果、採用された項目が 0 件になったときだけ
no_available_fieldsで拒否する
ベータ初期に指定できるのは b (body) / pub (published_at) / src.name (source.name) /
t (title) です。要素も短縮名のみで、正式名は未対応として破棄されます。
src.name のようなドット区切りの項目は、レスポンスでは "src": {"name": ...} と
ネストした Object になります。
データ上に存在しない項目は、キーを保持したまま値が null になります。キーの有無で
判定せず、値の null を見てください。