Search Model Group API
When you search for a model group, only those model groups to which you have access will be returned. For example, for a match all query, model groups that will be returned are:
- All public model groups in the index
- Private model groups for which you are the owner
- Model groups that share at least one of the
backend_roleswith you
For more information, see Model access control.
Path and HTTP method
POST /_plugins/_ml/model_groups/_search GET /_plugins/_ml/model_groups/_search Example request: Match all
The following request is sent by user1 who has the IT and HR roles:
POST /_plugins/_ml/model_groups/_search { "query": { "match_all": {} }, "size": 1000 } Example response
{ "took": 31, "timed_out": false, "_shards": { "total": 1, "successful": 1, "skipped": 0, "failed": 0 }, "hits": { "total": { "value": 7, "relation": "eq" }, "max_score": 1, "hits": [ { "_index": ".plugins-ml-model-group", "_id": "TRqZfYgBD7s2oEFdvrQj", "_version": 1, "_seq_no": 2, "_primary_term": 1, "_score": 1, "_source": { "backend_roles": [ "HR", "IT" ], "owner": { "backend_roles": [ "HR", "IT" ], "custom_attribute_names": [], "roles": [ "ml_full_access", "own_index", "test_ml" ], "name": "user1", "user_requested_tenant": "__user__" }, "created_time": 1685734407714, "access": "restricted", "latest_version": 0, "last_updated_time": 1685734407714, "name": "model_group_test", "description": "This is an example description" } }, { "_index": ".plugins-ml-model-group", "_id": "URqZfYgBD7s2oEFdyLTm", "_version": 1, "_seq_no": 3, "_primary_term": 1, "_score": 1, "_source": { "backend_roles": [ "IT" ], "owner": { "backend_roles": [ "HR", "IT" ], "custom_attribute_names": [], "roles": [ "ml_full_access", "own_index", "test_ml" ], "name": "user1", "user_requested_tenant": "__user__" }, "created_time": 1685734410470, "access": "restricted", "latest_version": 0, "last_updated_time": 1685734410470, "name": "model_group_test", "description": "This is an example description" } }, ... ] } } Example request: Search for model groups with an owner name
The following request to search for model groups of user is sent by user2 who has the IT backend role:
GET /_plugins/_ml/model_groups/_search { "query": { "bool": { "must": [ { "nested": { "query": { "term": { "owner.name.keyword": { "value": "user1", "boost": 1 } } }, "path": "owner", "ignore_unmapped": false, "score_mode": "none", "boost": 1 } } ] } } } Example response
{ "took": 6, "timed_out": false, "_shards": { "total": 1, "successful": 1, "skipped": 0, "failed": 0 }, "hits": { "total": { "value": 4, "relation": "eq" }, "max_score": 0, "hits": [ { "_index": ".plugins-ml-model-group", "_id": "TRqZfYgBD7s2oEFdvrQj", "_version": 1, "_seq_no": 2, "_primary_term": 1, "_score": 0, "_source": { "backend_roles": [ "HR", "IT" ], "owner": { "backend_roles": [ "HR", "IT" ], "custom_attribute_names": [], "roles": [ "ml_full_access", "own_index", "test_ml" ], "name": "user1", "user_requested_tenant": "__user__" }, "created_time": 1685734407714, "access": "restricted", "latest_version": 0, "last_updated_time": 1685734407714, "name": "model_group_test", "description": "This is an example description" } }, ... ] } } Example request: Search for model groups with a model group ID
GET /_plugins/_ml/model_groups/_search { "query": { "bool": { "must": [ { "terms": { "_id": [ "HyPNK4gBwNxGowI0AtDk" ] } } ] } } } Example response
{ "took": 2, "timed_out": false, "_shards": { "total": 1, "successful": 1, "skipped": 0, "failed": 0 }, "hits": { "total": { "value": 1, "relation": "eq" }, "max_score": 1, "hits": [ { "_index": ".plugins-ml-model-group", "_id": "HyPNK4gBwNxGowI0AtDk", "_version": 3, "_seq_no": 16, "_primary_term": 5, "_score": 1, "_source": { "backend_roles": [ "IT" ], "owner": { "backend_roles": [ "", "HR", "IT" ], "custom_attribute_names": [], "roles": [ "ml_full_access", "own_index", "test-ml" ], "name": "user1", "user_requested_tenant": null }, "created_time": 1684362035938, "latest_version": 2, "last_updated_time": 1684362571300, "name": "model_group_test", "description": "This is an example description" } } ] } }