メインコンテンツまでスキップ

REST API 変更履歴

@pocket の REST API の変更履歴です。
既存の連携に影響する可能性がある変更を、提供日ごとに記載しています。

2026年8月17日 リリース分​

レコード一覧API(GET /api/apps/{appsId}/records)の query パラメータによる抽出結果を修正しました。
これまでと同じクエリでも、取得できるレコードが変わる場合があります。

抽出結果が変わる主な条件​

1. テキストフィールドの !=​

動作
変更前指定した文字列を「含まない」データを抽出します。
変更後指定した値と「完全一致しない」データを抽出します。

部分一致の否定を行う場合は、not like "%値%" のようにワイルドカードを指定してください。

2. 明細フィールドの否定検索​

動作
変更前指定条件に一致する明細が1件でも存在する場合、レコード全体を対象外にします。
変更後指定条件に一致しない明細が1件以上存在すれば、レコードを抽出対象にします。

変更後は、画面のフィルタによる抽出と同じ判定になります。

3. 添付ファイル名の否定検索​

対象となる演算子: != / not like / not ilike

動作
変更前指定条件に一致する添付ファイルがなければ対象になります。添付ファイルが1件もないレコードも対象になる場合があります。
変更後指定条件に一致する添付ファイルがなければ対象になります。添付ファイルが1件もないレコードは、否定検索の対象外になります。

4. 存在しない選択肢名​

動作
変更前存在しない選択肢名が指定されるとエラーになります。
変更後存在しない選択肢名は無視され、存在する選択肢だけで絞り込みます。有効な選択肢が1つもない場合は、その項目による絞り込みを行いません。

絞り込みが行われないことで、想定より多くのレコードが返る可能性があります。

5. 存在しない利用者コード・組織コード​

動作
変更前存在しないコードは、該当データがない条件として扱われ、基本的に0件になります。
変更後存在しないコードは無視され、存在するコードだけで絞り込みます。有効なコードが1つもない場合は、その項目による絞り込みを行いません。

絞り込みが行われないことで、想定より多くのレコードが返る可能性があります。

6. 選択肢に空文字を指定した場合​

動作
変更前空文字を「未選択」の指定として扱います。
変更後空文字を「未選択」の指定として扱わず、選択肢名の一つとして検索します。空文字を名称とする選択肢があれば、その選択肢で絞り込みます。該当する選択肢がなければ、その項目による絞り込みは行いません。

未選択のデータを抽出する場合は、is null を使用してください。

7. 否定条件と未入力データ​

一部の否定条件で、未入力データの扱いが変更されます。
変更後は、次のような条件で未入力データも抽出対象になる場合があります。

フィールド演算子
選択系フィールド!=
数字フィールドnot in
数字、日付、日時フィールドなどnot between
期間系フィールド!=

未入力データを抽出対象から除外する場合は、is not null を組み合わせてください。

8. 日時フィールドと相対日付関数​

日時フィールドに相対日付関数を = で指定した場合の判定を、日付・日時を直接指定した場合と同じ扱いに統一しました。

TODAY() など、日付を返す関数:

動作
変更前求めた日付の一日分を抽出します。
変更後求めた日付の 00:00 との一致として検索します。

NOW():

動作
変更前現在日時が属する日の一日分を抽出します。
変更後関数を実行した時点の日時との一致として検索します。
  • この変更は = で指定した場合が対象です。
  • NOW() を基準にしたオフセット指定は、現在日時を基準に処理されます。
  • 日時に対して1日分のデータを抽出したい場合には、丸め関数を使用してください。
DATE_TRUNC(field-1, 'day') = "2026-07-30"

使用できなくなる条件​

時間・時間期間フィールドの相対日付関数​

時間・時間期間フィールドで使用できる相対日付関数は NOW() だけとなり、その他の関数はエラーとなります。

DATE_PART​

関数を使用できるフィールドや指定値のチェックが厳しくなります。

  • 日付、日時、時刻系以外のフィールドには使用できません。
  • 時刻系では hour、minute、second 以外を指定できません。