レコードの範囲の取得

レコードの範囲を取得するには、HTTP GET メソッドを使用してデータベース名、レイアウト、および開始レコードとレコード数を指定する追加情報を records API エンドポイントで指定します。オプションでレコードのソート順を指定できます。ポータル情報を指定して返される関連レコードの数を制限することもできます。

HTTP メソッド

GET

URL

形式 1 (最大で最初の 100 のレコードを返す):
/fmi/data/version/databases/database-name/layouts/layout-name/records

形式 2 (レコードの範囲を返す):
/fmi/data/version/databases/database-name/layouts/layout-name/records?_offset=starting-record&_limit=number-of-records

形式 3 (ソートされたレコードの範囲を返す):
/fmi/data/version/databases/database-name/layouts/layout-name/records?_offset=starting-record&_limit=number-of-records&_sort=[{ "fieldName": "field-name", "sortOrder": "sort-order" }, { ... }]

形式 4 (関連レコードの範囲が制限されたレコードの範囲を含む):
/fmi/data/version/databases/database-name/layouts/layout-name/records?_offset=starting-record&_limit=number-of-records&portal=["portal-name1", "portal-name2", ...]&_offset.portal-name1=starting-record&_limit.portal-name1=number-of-records

version – リクエストされた FileMaker Data API のバージョン。v1v2、または vLatest のいずれかを使用できます。

  • バージョン 1 (v1) - 返されるポータルデータの構造は指定されたレイアウトの表示形式 (フォーム形式または表形式) に基づきます。

    • フォーム形式 - すべての関連レコードを返します

    • 表形式 - 最初の関連レコードを返します

      メモ  表示設定を変更すると返される値のポータルデータ構造が変化します。

  • バージョン 2 (v2) - 返されるポータルデータの構造はフォーム形式に基づきます。

  • 最新バージョン (vLatest) - 動作は API の最新バージョンに基づきます。

database-name – 共有データベースの名前

layout-name – レコード取得のためのコンテキストとして使用するレイアウトの名前

_offset の場合、starting-record はレコードの範囲内で最初のレコードのレコード番号です。

_limit の場合、number-of-records で返されるレコードの最大数を指定します。

_sort の指定では、情報を JSON 形式で指定する必要があります。field-name はレコードのソート基準として使用するフィールドの名前です。複数のフィールド名を指定することができます。sort-order には、ascend または descend キーワードを指定するか、あるいは値一覧の名前を指定します。

portal キーワードについて:

portal-name-n は関連レコードが含まれているポータルです。FileMaker Pro のインスペクタに表示されるオブジェクト名か、関連テーブル名のいずれかをポータル名にすることができます。複数のポータル名を指定することができます。

URL の portal 部分はオプションです。レイアウトに複数のポータルが含まれている場合は、パフォーマンスを向上させるためにポータル名を指定することができます。portal 部分を省略した場合、呼び出しによってレイアウト上のすべてのポータルにあるすべての関連レコードが返されます。

_offset.portal-name-n の場合、starting-record は関連レコードの範囲内で最初のポータルレコードのレコード番号です。

_limit.portal-name-n の場合、返される関連レコードの最大数を number-of-records で指定します。

異なるレイアウトのコンテキストにある応答データが必要な場合は、URL 内の layout.response 引数を使用します。

URL に script.prerequestscript.presort、および script 引数を含めることで、FileMaker スクリプトをこのリクエストの一部として実行することができます。「FileMaker スクリプトの実行」を参照してください。

HTTP ヘッダ

Authorization: Bearer session-tokensession-token はデータベースセッションに固有の X-FM-Data-Access-Token の値です。

引数 なし
応答

JSON 形式のレコードデータおよびエラーコード 0 を表示するメッセージ配列。

コピー
{
  "response": {
    "data": [
       ... 
    ]
  },
  "messages": [{"code":"0","message":"OK"}]
}

エラー応答」を参照してください。

メモ 

  • オプションの引数を使用して除外リクエスト、ソート順、開始レコード (オフセット)、レコード数 (制限)、および返される関連レコード数を制限するためのポータルを指定できます。オフセット、制限、およびソートの引数はレイアウトテーブルのレコードでは機能しますが、非関連ポータルレコードでは機能しません。関連セットで表示するレコードと行の数を制限するには、offset.portal-name および limit.portal-name 引数を指定します。

  • オフセット値と制限値を省略した場合、デフォルトのオフセット値 1 とレコードのデフォルトの制限値 100 が使用されます: _offset=1&_limit=100

  • ソート順のキーワードを省略した場合、デフォルトは ascend になります。たとえば、&_sort=[{ "fieldName": "recordId" }] は次のように処理されます: &_sort=[{ "fieldName": "recordId", "sortOrder": "ascend" }]

  • ポータル行のオフセット値と制限値を省略した場合、デフォルトのオフセット値 1 とポータルレコードのデフォルトの制限値 50 が使用されます。FileMaker Pro のインスペクタに表示されるオブジェクト名か、関連テーブル名のいずれかをポータル名にすることができます。