def make_error(errors):
    """
    Creates a JSON response with the provided errors. The status
    is determined by the highest code in the provided list of errors.
    The response object is returned to the caller
    :errors a single error or list of errors
    """

    error_list = []
    if type(errors) is not list:
        errors = [errors]
    for error in errors:
        error_list.append(error.to_dict())

    status = max(error.status for error in errors)
    response = { "meta": { 'status': status }, "errors": error_list }
    return response