def resume(oid, restart_point="continue_next", **kwargs):
    """Continue workflow for given WorkflowObject id (oid).

    Depending on `start_point` it may start from previous, current or
    next task.

    Special custom keyword arguments can be given to the workflow engine
    in order to pass certain variables to the tasks in the workflow execution,
    such as a task-id from BibSched, the current user etc.

    :param oid: id of WorkflowObject to run.
    :type oid: str

    :param start_point: where should the workflow start from? One of:
        * restart_prev: will restart from the previous task
        * continue_next: will continue to the next task
        * restart_task: will restart the current task
    :type start_point: str

    :return: UUID of the workflow engine that ran the workflow.
    """
    from .worker_engine import continue_worker
    return text_type(continue_worker(oid, restart_point, **kwargs).uuid)