よく使用される OData クエリー・パラメーター
ASoC API でよく使用される OData パラメーターは以下のとおりです。
- $top
- システムから返されるレコードの数を制限するために使用します。整数を渡すだけで、$top の値が取得され、
$orderbyパラメーターで決まる値を上限としてレコード数が返されます。例えば、スキャンを最初の 5 つだけ返すには、次のように指定します。https://cloud.appscan.com/api/v4/Scans?$top=5 - $filter
- どのレコードを返すかを定義します。このパラメーターに式を指定すると、どのレコードもその式に対して評価されます。式の評価が true であるレコードがすべて返されます。このフィルター・パラメーターは、非常に強力で便利です。例えば、高リスク等級のアプリケーションをすべて返すには、次のように指定します。
https://cloud.appscan.com/api/v4/Apps?$filter=RiskRating+eq+'High' - $select
- どのフィールドを結果に含めるかを定義します。特定のフィールドだけに関心があり、それ以外は含めないようにするときに便利です。例えば、すべてのアプリケーションの名前および作成日は含め、それ以外の情報は含めないようにするには、次のように指定します。
https://cloud.appscan.com/api/v4/Apps?$select=Name,DateCreated - $skip
- スキップするレコードの数を定義します。例えば、最初の 2 つ以外のすべてのポリシーを表示するには、次のように指定します。
https://cloud.appscan.com/api/v4/Policies?$skip=2 - $orderby
- 結果セットの順序を定義します。このパラメーターにフィールドを指定すると、そのフィールド別に編成された結果セットが返されます。SQL クエリーと同じく、降順にも昇順にもできます。そのためには、パラメーターに
descまたはascを追加します。文字列フィールドはアルファベット順になり、数値フィールドは数値順になります。例えば、すべてのスキャンを作成日ごとの降順のリストにして返すには、次のように指定します。https://cloud.appscan.com/api/v4/Scans?$orderby=CreatedAt+desc - $expand
-
取得されたリソースと似た関連リソースを含めるように指定します。関連リソースから選択したプロパティーを展開するためにも使用できます。たとえば、スキャンを作成したユーザーの ID とユーザー名のみを含めるには、次のように指定します。
https://cloud.appscan.com/api/v4/Scans?$expand=CreatedBy($select=Id,UserName) - $apply
- 集約動作はクエリー・オプション
$applyを使用してトリガーされます。これは、連続的に適用されることを表すスラッシュで区切られた一連の集合変換を受け取ります。例えば、各変換の結果は次の変換への入力となります。これは、パス・セグメントにおける結合可能で構成可能なサービス定義の関数の使用と一致しています。例えば、問題があるアプリケーションをそれらの RiskRating に従ってグループ化し、RiskRating ごとにアプリケーションの数を返すには、次のように指定します。https://cloud.appscan.com/api/v4/Scans?$apply=filter(TotalIssues+gt+0)/groupby((RiskRating),aggregate($count+as+N))