def clone_workspace(from_namespace, from_workspace, to_namespace, to_workspace,<EOL>authorizationDomain="<STR_LIT>"):
if authorizationDomain:<EOL><INDENT>if isinstance(authorizationDomain, string_types):<EOL><INDENT>authDomain = [{"<STR_LIT>": authorizationDomain}]<EOL><DEDENT>else:<EOL><INDENT>authDomain = [{"<STR_LIT>": authDomain} for authDomain in authorizationDomain]<EOL><DEDENT><DEDENT>else:<EOL><INDENT>authDomain = []<EOL><DEDENT>body = {<EOL>"<STR_LIT>": to_namespace,<EOL>"<STR_LIT:name>": to_workspace,<EOL>"<STR_LIT>": dict(),<EOL>"<STR_LIT>": authDomain,<EOL>}<EOL>uri = "<STR_LIT>".format(from_namespace, from_workspace)<EOL>return __post(uri, json=body)<EOL>
Clone a FireCloud workspace.

    A clone is a shallow copy of a FireCloud workspace, enabling
    easy sharing of data, such as TCGA data, without duplication.

    Args:
        from_namespace (str):  project (namespace) to which source workspace belongs
        from_workspace (str): Source workspace's name
        to_namespace (str):  project to which target workspace belongs
        to_workspace (str): Target workspace's name
        authorizationDomain: (str) required authorization domains

    Swagger:
        https://api.firecloud.org/#!/Workspaces/cloneWorkspace