def get_entity_group_by_owner_and_name_and_type_using_get_with_http_info(self, owner_type, owner_id, group_type, group_name, **kwargs):
    "Get Entity Group by owner, type and name (getEntityGroupByOwnerAndNameAndType)  # noqa: E501\n\n        Fetch the Entity Group object based on the provided Entity Group Id. Entity group allows you to group multiple entities of the same entity type (Device, Asset, Customer, User, Dashboard, etc). Entity Group always have an owner - particular Tenant or Customer. Each entity may belong to multiple groups simultaneously.Entity Group Info extends Entity Group object and adds 'ownerIds' - a list of owner ids.  Entity group name is unique in the scope of owner and entity type. For example, you can't create two tenant device groups called 'Water meters'. However, you may create device and asset group with the same name. And also you may create groups with the same name for two different customers of the same tenant.   Available for users with 'TENANT_ADMIN' or 'CUSTOMER_USER' authority. Security check is performed to verify that the user has 'READ' permission for specified group.  # noqa: E501\n        This method makes a synchronous HTTP request by default. To make an\n        asynchronous HTTP request, please pass async_req=True\n        >>> thread = api.get_entity_group_by_owner_and_name_and_type_using_get_with_http_info(owner_type, owner_id, group_type, group_name, async_req=True)\n        >>> result = thread.get()\n\n        :param async_req bool\n        :param str owner_type: Tenant or Customer (required)\n        :param str owner_id: A string value representing the Tenant or Customer id (required)\n        :param str group_type: Entity Group type (required)\n        :param str group_name: Entity Group name (required)\n        :return: EntityGroupInfo\n                 If the method is called asynchronously,\n                 returns the request thread.\n        "
    all_params = ['owner_type', 'owner_id', 'group_type', 'group_name']
    all_params.append('async_req')
    all_params.append('_return_http_data_only')
    all_params.append('_preload_content')
    all_params.append('_request_timeout')
    params = locals()
    for (key, val) in six.iteritems(params['kwargs']):
        if (key not in all_params):
            raise TypeError(("Got an unexpected keyword argument '%s' to method get_entity_group_by_owner_and_name_and_type_using_get" % key))
        params[key] = val
    del params['kwargs']
    if (('owner_type' not in params) or (params['owner_type'] is None)):
        raise ValueError('Missing the required parameter `owner_type` when calling `get_entity_group_by_owner_and_name_and_type_using_get`')
    if (('owner_id' not in params) or (params['owner_id'] is None)):
        raise ValueError('Missing the required parameter `owner_id` when calling `get_entity_group_by_owner_and_name_and_type_using_get`')
    if (('group_type' not in params) or (params['group_type'] is None)):
        raise ValueError('Missing the required parameter `group_type` when calling `get_entity_group_by_owner_and_name_and_type_using_get`')
    if (('group_name' not in params) or (params['group_name'] is None)):
        raise ValueError('Missing the required parameter `group_name` when calling `get_entity_group_by_owner_and_name_and_type_using_get`')
    collection_formats = {}
    path_params = {}
    if ('owner_type' in params):
        path_params['ownerType'] = params['owner_type']
    if ('owner_id' in params):
        path_params['ownerId'] = params['owner_id']
    if ('group_type' in params):
        path_params['groupType'] = params['group_type']
    if ('group_name' in params):
        path_params['groupName'] = params['group_name']
    query_params = []
    header_params = {}
    form_params = []
    local_var_files = {}
    body_params = None
    header_params['Accept'] = self.api_client.select_header_accept(['application/json'])
    auth_settings = ['X-Authorization']
    return self.api_client.call_api('/api/entityGroup/{ownerType}/{ownerId}/{groupType}/{groupName}', 'GET', path_params, query_params, header_params, body=body_params, post_params=form_params, files=local_var_files, response_type='EntityGroupInfo', auth_settings=auth_settings, async_req=params.get('async_req'), _return_http_data_only=params.get('_return_http_data_only'), _preload_content=params.get('_preload_content', True), _request_timeout=params.get('_request_timeout'), collection_formats=collection_formats)
Get Entity Group by owner, type and name (getEntityGroupByOwnerAndNameAndType)  # noqa: E501

Fetch the Entity Group object based on the provided Entity Group Id. Entity group allows you to group multiple entities of the same entity type (Device, Asset, Customer, User, Dashboard, etc). Entity Group always have an owner - particular Tenant or Customer. Each entity may belong to multiple groups simultaneously.Entity Group Info extends Entity Group object and adds 'ownerIds' - a list of owner ids.  Entity group name is unique in the scope of owner and entity type. For example, you can't create two tenant device groups called 'Water meters'. However, you may create device and asset group with the same name. And also you may create groups with the same name for two different customers of the same tenant.   Available for users with 'TENANT_ADMIN' or 'CUSTOMER_USER' authority. Security check is performed to verify that the user has 'READ' permission for specified group.  # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
>>> thread = api.get_entity_group_by_owner_and_name_and_type_using_get_with_http_info(owner_type, owner_id, group_type, group_name, async_req=True)
>>> result = thread.get()

:param async_req bool
:param str owner_type: Tenant or Customer (required)
:param str owner_id: A string value representing the Tenant or Customer id (required)
:param str group_type: Entity Group type (required)
:param str group_name: Entity Group name (required)
:return: EntityGroupInfo
         If the method is called asynchronously,
         returns the request thread.
def get_entity_group_by_owner_and_name_and_type_using_get_with_http_info(self, owner_type, owner_id, group_type, group_name, **kwargs):
    "Get Entity Group by owner, type and name (getEntityGroupByOwnerAndNameAndType)  # noqa: E501\n\n        Fetch the Entity Group object based on the provided Entity Group Id. Entity group allows you to group multiple entities of the same entity type (Device, Asset, Customer, User, Dashboard, etc). Entity Group always have an owner - particular Tenant or Customer. Each entity may belong to multiple groups simultaneously.Entity Group Info extends Entity Group object and adds 'ownerIds' - a list of owner ids.  Entity group name is unique in the scope of owner and entity type. For example, you can't create two tenant device groups called 'Water meters'. However, you may create device and asset group with the same name. And also you may create groups with the same name for two different customers of the same tenant.   Available for users with 'TENANT_ADMIN' or 'CUSTOMER_USER' authority. Security check is performed to verify that the user has 'READ' permission for specified group.  # noqa: E501\n        This method makes a synchronous HTTP request by default. To make an\n        asynchronous HTTP request, please pass async_req=True\n        >>> thread = api.get_entity_group_by_owner_and_name_and_type_using_get_with_http_info(owner_type, owner_id, group_type, group_name, async_req=True)\n        >>> result = thread.get()\n\n        :param async_req bool\n        :param str owner_type: Tenant or Customer (required)\n        :param str owner_id: A string value representing the Tenant or Customer id (required)\n        :param str group_type: Entity Group type (required)\n        :param str group_name: Entity Group name (required)\n        :return: EntityGroupInfo\n                 If the method is called asynchronously,\n                 returns the request thread.\n        "
    all_params = ['owner_type', 'owner_id', 'group_type', 'group_name']
    all_params.append('async_req')
    all_params.append('_return_http_data_only')
    all_params.append('_preload_content')
    all_params.append('_request_timeout')
    params = locals()
    for (key, val) in six.iteritems(params['kwargs']):
        if (key not in all_params):
            raise TypeError(("Got an unexpected keyword argument '%s' to method get_entity_group_by_owner_and_name_and_type_using_get" % key))
        params[key] = val
    del params['kwargs']
    if (('owner_type' not in params) or (params['owner_type'] is None)):
        raise ValueError('Missing the required parameter `owner_type` when calling `get_entity_group_by_owner_and_name_and_type_using_get`')
    if (('owner_id' not in params) or (params['owner_id'] is None)):
        raise ValueError('Missing the required parameter `owner_id` when calling `get_entity_group_by_owner_and_name_and_type_using_get`')
    if (('group_type' not in params) or (params['group_type'] is None)):
        raise ValueError('Missing the required parameter `group_type` when calling `get_entity_group_by_owner_and_name_and_type_using_get`')
    if (('group_name' not in params) or (params['group_name'] is None)):
        raise ValueError('Missing the required parameter `group_name` when calling `get_entity_group_by_owner_and_name_and_type_using_get`')
    collection_formats = {}
    path_params = {}
    if ('owner_type' in params):
        path_params['ownerType'] = params['owner_type']
    if ('owner_id' in params):
        path_params['ownerId'] = params['owner_id']
    if ('group_type' in params):
        path_params['groupType'] = params['group_type']
    if ('group_name' in params):
        path_params['groupName'] = params['group_name']
    query_params = []
    header_params = {}
    form_params = []
    local_var_files = {}
    body_params = None
    header_params['Accept'] = self.api_client.select_header_accept(['application/json'])
    auth_settings = ['X-Authorization']
    return self.api_client.call_api('/api/entityGroup/{ownerType}/{ownerId}/{groupType}/{groupName}', 'GET', path_params, query_params, header_params, body=body_params, post_params=form_params, files=local_var_files, response_type='EntityGroupInfo', auth_settings=auth_settings, async_req=params.get('async_req'), _return_http_data_only=params.get('_return_http_data_only'), _preload_content=params.get('_preload_content', True), _request_timeout=params.get('_request_timeout'), collection_formats=collection_formats)