NILTO DeveloperAPIをより柔軟に活用できるよう、機能を追加しました。
内容をお知らせいたします。
複数のキーワードをOR条件で検索
containsフィルターを利用してのキーワード検索時、複数のキーワード指定はAND条件のみ対応していましたが、新たにOR条件での指定に対応しました。
利用方法
NILTO DeveloperAPI のキーワード検索は以下指定方法で利用できます。
クエリパラメータ | 検索対象のフィールド |
|---|---|
contains | すべてのテキストフィールド(1行テキスト/複数行テキスト/フレキシブルテキスト)を横断的に検索し、 指定した値が含まれるコンテンツを取得 |
{field_luid}[contains] | 指定したフィールドのみを対象に、値が含まれるコンテンツを取得 |
OR条件の指定は、両方のキーワード検索に対応します。
AND検索
複数キーワードのAND検索は、従来どおりカンマ( , )区切りで指定します。
例1. コンテンツ内のいずれかのテキストフィールドに「Astro」と「ヘッドレスCMS」の両方を含むコンテンツを一覧で取得
/v1/contents?contains=Astro,ヘッドレスCMS例2. コンテンツ内のarticleフィールドに「Astro」と「ヘッドレスCMS」の両方を含むコンテンツを一覧で取得
/v1/contents?article[contains]=Astro,ヘッドレスCMSOR検索
複数キーワードのOR検索は、パイプ( | )記号にて指定します。
例3. コンテンツ内のいずれかのテキストフィールドに「iOS」または「Android」のいずれかを含むコンテンツを一覧で取得
/v1/contents?contains=iOS|Android例4. コンテンツ内のarticleフィールドに「iOS」または「Android」のいずれかを含むコンテンツを一覧で取得
/v1/contents?article[contains]=iOS|Android注意事項
AND条件とOR条件の同時指定
1つのパラメータ内で、AND条件( , )とOR条件( | )を混在させることはできません。
混在した場合、指定の条件は無効として扱われます。
無効になる例
/v1/contents?contains=ヘッドレスCMS,iOS|AndroidOR条件(パイプ | )を利用する際のURLエンコードについて
OR条件で使用するパイプ記号( | )は、URLの標準仕様において「URLセーフではない文字」に分類されます。そのため、APIリクエストを送信する際は、必ず %7C にURLエンコードされた状態で送信されるようにしてください。
エンコードされずに生の | が送信された場合、NILTOのサーバーに到達する前の通信経路で「不正なリクエスト」として遮断され、通信エラーとなる可能性があります。
フロントエンド開発者の方へ
現代の一般的なHTTPクライアントライブラリやAPI(axios や URLSearchParams など)を使用してパラメータをオブジェクト形式で渡す場合、自動的に安全なURLエンコードが行われます。
意図せぬエラーを防ぐため、手動でのURL文字列の結合(例: "/api?contains=" + "A|B")は避け、標準のライブラリ機能を活用してリクエストを構築してください。
安全な実装例(JavaScript)
// 推奨:自動で ?tags[contains]=iPhone%7CAndroid にエンコードされます
const params = new URLSearchParams({
"tags[contains]": "iPhone|Android"
});
fetch(`https://cms-api.nilto.com/v1/contents?${params.toString()}`);今後のリリース予定
今後のアップデートでは下記機能のリリースを予定しています。
- FT: テンプレート要素
- 監査ログで画面閲覧を記録
詳しくはロードマップをご確認ください。
開発状況によって予告なくロードマップ内容が変更される可能性があります。
ご意見・ご要望をお寄せください
ご意見・ご要望がありましたら、NILTOのお問い合わせページまたは公式Xアカウントへお気軽にご連絡ください。
これからもNILTOをよろしくお願いいたします。