ID検索
指定したノードと紐づくノードが持つIDを取得します。 条件を指定した場合、指定した条件のものに絞り込みができます。
POST /v1/{CUSTOMER_ID}/_search
リクエストヘッダ
検索結果にsecure:trueの属性を持つIDを含める場合、認証が必要になります。 認証を含めなかった場合、secure:trueのIDは除外されます。
コンテンツタイプ
- Content-Type: application/json
リクエストボディ
{
"match": {
"from": {
"schema": string,
"key": {
"type": string,
"id": string
},
"where": {
"type": string,
"id": string
},
"exclude": boolean
},
"step": enum,
"having": {
"type": string
}
},
"limit": integer
}
キー名 | タイプ | 必須 | 説明 |
---|---|---|---|
match | OBJECT | ◯ | 検索対象の条件。 |
match.from | OBJECT | ◯ | 検索対象の起点となるノードの条件。 |
match.from.schema | STRING | 検索対象の起点となるノードが所属しているスキーマ。 | |
match.from.key | OBJECT | 検索対象の起点となるノードを特定するためのIDタイプとIDの組み合わせ。 | |
match.from.key.type | STRING | 検索対象の起点となるノードを特定するためのIDタイプ。スキーマのIDタイプと一致する必要があります。 | |
match.from.key.id | STRING | 検索対象の起点となるノードを特定するためのID。 | |
match.from.where | OBJECT | 検索対象の起点となるノードを検索する条件。ノードに含まれるIDを指定する形で対象ノードを検索できます。 | |
match.from.where.type | STRING | 検索条件となるIDのタイプ。 | |
match.from.where.id | STRING | 検索条件となるID。 | |
match.from.exclude | BOOLEAN | 検索結果から起点となるノードを除外するかの指定。trueにすると、起点となるノード自身を検索結果から除外します。デフォルトはfalse。 | |
match.step | ENUM[STRING] | 検索対象となる範囲の指定。ONE にすると起点となるノードと直接紐づくノードのみになり、 ALL にすると起点となるノードと紐付く全てのノードを含めます。 |
|
match.having | OBJECT | 絞り込み条件。 | |
match.having.type | STRING | 絞り込むIDタイプ。IDタイプを指定すると、検索結果をそのIDタイプのものに絞り込みます。 | |
limit | INTEGER | 検索結果の取得数。検索結果の数を指定します。デフォルトは10000件。 |
Warning
match.from.schema
+ match.from.key
か、 match.from.where
のどちらかを必ず指定する必要があります。
リクエストサンプル
curl -X POST -H "Authorization: Bearer {AUTH_TOKEN}" -H "Content-type: application/json" https://{HOST_NAME}/v1/{CUSTOMER_ID}/_search \
-d '{"match":{"from":{"schema":"member_app","key":{"type":"member_id","id":"user_001"},"where":{"type":"popinfo_id","id":"33333333-3333-3333-3333-333333333333"},"exclude":false},"step":"ALL"},"limit":10}'
レスポンスサンプル
検索結果は以下の更新日時をもとに昇順で表示されます。
- ノードが持つID: IDの更新日時
- ノード: 紐付けの更新日時
- 紐付け、紐付け更新、紐付け更新または作成でのみ更新されます。ノードが持つIDに対する操作や、ノードのキーの再設定では更新されません。
なお、同一更新日時の場合順不同で表示されます。
紐付け状況が上記の場合、以下で返却されます。
なお、user_001
と66666666-6666-6666-6666-666666666666
は同じ紐付け更新日時を参照しているため、この2つに関しては順不同となります。
HTTP/1.1 200
{
"results": [
{
"id": "11111111-1111-1111-1111-111111111111",
"type": "popinfo_id"
},
{
"id": "22222222-2222-2222-2222-222222222222",
"type": "popinfo_id"
},
{
"id": "33333333-3333-3333-3333-333333333333",
"type": "popinfo_id"
},
{
"id": "44444444-4444-4444-4444-444444444444",
"type": "popinfo_id"
},
{
"id": "55555555-5555-5555-5555-555555555555",
"type": "popinfo_id"
},
{
"id": "user_001",
"type": "member_id"
},
{
"id": "66666666-6666-6666-6666-666666666666",
"type": "popinfo_id"
},
{
"id": "77777777-7777-7777-7777-777777777777",
"type": "popinfo_id"
},
{
"id": "88888888-8888-8888-8888-888888888888",
"type": "popinfo_id"
},
],
"total": 9
}