'Return the raw value of a query string parameter as a string.
Note:
If an HTML form is POSTed to the API using the
*application/x-www-form-urlencoded* media type, Falcon can
automatically parse the parameters from the request body
and merge them into the query string parameters. To enable
this functionality, set
:py:attr:`~.RequestOptions.auto_parse_form_urlencoded` to
``True`` via :any:`API.req_options`.
If a key appears more than once in the form data, one of the
values will be returned as a string, but it is undefined which
one. Use `req.get_param_as_list()` to retrieve all the values.
Note:
Similar to the way multiple keys in form data is handled,
if a query parameter is assigned a comma-separated list of
values (e.g., \'foo=a,b,c\'), only one of those values will be
returned, and it is undefined which one. Use
`req.get_param_as_list()` to retrieve all the values.
Args:
name (str): Parameter name, case-sensitive (e.g., \'sort\').
Keyword Args:
required (bool): Set to ``True`` to raise
``HTTPBadRequest`` instead of returning ``None`` when the
parameter is not found (default ``False``).
store (dict): A ``dict``-like object in which to place
the value of the param, but only if the param is present.
default (any): If the param is not found returns the
given value instead of None
Returns:
str: The value of the param as a string, or ``None`` if param is
not found and is not required.
Raises:
HTTPBadRequest: A required param is missing from the request.'

def get_param(self, name, required=False, store=None, default=None):

    params = self._params
    if (name in params):
        param = params[name]
        if isinstance(param, list):
            param = param[(-1)]
        if (store is not None):
            store[name] = param
        return param
    if (not required):
        return default
    raise errors.HTTPMissingParam(name)
