def METHOD_NAME(self, id, **kwargs):  # noqa: E501
    """Get a stack  # noqa: E501
    Returns a stack, by id.  # 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_stack_with_http_info(id, async_req=True)
    >>> result = thread.get()
    :param async_req bool
    :param str id: Unique resource identifier (required)
    :return: Stack
             If the method is called asynchronously,
             returns the request thread.
    """
    all_params = ['id']  # noqa: E501
    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_stack" % key
            )
        params[key] = val
    del params['kwargs']
    # verify the required parameter 'id' is set
    if ('id' not in params or
            params['id'] is None):
        raise ValueError("Missing the required parameter `id` when calling `get_stack`")  # noqa: E501
    collection_formats = {}
    path_params = {}
    if 'id' in params:
        path_params['id'] = params['id']  # noqa: E501
    query_params = []
    header_params = {}
    form_params = []
    local_var_files = {}
    body_params = None
    # HTTP header `Accept`
    header_params['Accept'] = self.api_client.select_header_accept(
        ['application/json'])  # noqa: E501
    # HTTP header `Content-Type`
    header_params['Content-Type'] = self.api_client.select_header_content_type(  # noqa: E501
        ['application/json'])  # noqa: E501
    # Authentication setting
    auth_settings = []  # noqa: E501
    return self.api_client.call_api(
        '/stacks/{id}', 'GET',
        path_params,
        query_params,
        header_params,
        body=body_params,
        post_params=form_params,
        files=local_var_files,
        response_type='Stack',  # noqa: E501
        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)