工作空间管理

本文为您介绍工作空间管理下的API接口。

获取组织下的工作空间列表

  • 接口路径/openapi/v2/workspaceGET

  • 接口描述:获取当前组织下的工作空间列表,支持空间名称的关键字模糊搜索。 自独立部署3.10.2版本开始,增加userId参数,支持按照用户维度,查询组织下用户所属的空间。

  • 输入参数

    参数

    类型

    描述

    是否必选

    keyword

    string

    搜索关键字。

    userId

    string

    指定用户的ID。

    指定后,则查询组织下该用户的所有空间列表信息。

    说明

    独立部署3.10.2版本后,增加userId参数。

    pageNum

    int

    页数。

    默认为1。

    pageSize

    int

    页大小。

    默认为10。

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    object

    返回工作空间列表的分页结果,空间的详细信息列表存放在返回参数Data中。

    • totalNum

    int

    总行数。

    • totalPages

    int

    总页数。

    • pageSize

    int

    请求接口时设置的每页行数。

    • pageNum

    int

    页码。

    • data

    object []

    查询到的空间列表。

    • owner

    string

    工作空间所有者的Quick BI用户ID。

    示例值:de4bc5f9429141cc8091cdd1c15b****

    • gmtModified

    string

    工作空间最新修改时间。

    示例值:2020-11-10 17:51:07

    • allowPublish

    boolean

    作品是否可公开。取值范围:

    • true:公开

    • false:不公开

    示例值:true

    • gmtCreate

    string

    工作空间创建时间。

    示例值:2020-11-10 17:51:07

    • allowShare

    boolean

    作品是否可授权分享。取值范围:

    • true:授权

    • false:不授权

    示例值:true

    • workspaceDesc

    string

    工作空间备注。

    示例值:该空间是测试空间

    • organizationId

    string

    工作空间的所属组织ID。

    示例值:2fe4fbd8-588f-489a-b3e1-e92c7af0****

    • modifyUser

    string

    修改者的Quick BI用户ID。

    示例值:de4bc5f9429141cc8091cdd1c15b****

    • modifyUserAccountName

    string

    修改者的Quick BI账号名。

    示例值:zhangsan

  • 返回参数

    {
        "traceId":"c38ad432-2d4c-****-b1ad-3cdbc47c0b59",
        "code":null,
        "message":null,
        "data":{
            "pageNum":1,
            "pageSize":10,
            "totalPages":96,
            "totalNum":96,
            "data":[
                {
                    "workspaceId":"1cda4345-c6d7-****-b7bf-99c0b92f4d81",
                    "workspaceName":"测试空间",
                    "workspaceDesc":"",
                    "organizationId":"2fe4fbd8-588f-****-b3e1-e92c7af083ea",
                    "owner":"1365162****38860",
                    "ownerAccountName":"xxxx",
                    "createUser":"xxxxxxxx",
                    "createUserAccountName":"a***@example.com",
                    "modifyUser":"13651****3238860",
                    "modifyUserAccountName":"a***@example.com",
                    "gmtCreate":"2019-03-25 17:56:30",
                    "gmtModified":"2019-03-25 17:56:30",
                    "allowShare":true,
                    "allowPublish":true
                }
            ]
        },
        "success":true
    }
  • Java SDK 示例:

    public static void QueryOrganizationWorkspaceList() throws SDKException {
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace")
                .setMethod(HttpMethod.GET);
        // 非必填参数
        // request.addParameter("keyword","");
        // request.addParameter("userId","");
        // request.addParameter("pageNum",1);
        // request.addParameter("pageSize",10);
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

查询指定工作空间下的成员列表

  • 接口路径/openapi/v2/workspace/{workspaceId}/userGET

  • 接口描述:获取当前组织下的指定工作空间的成员列表。

  • 输入参数

    参数

    类型

    描述

    是否必选

    workspaceId

    string

    空间ID, 路径参数。

    keyword

    string

    搜索关键字。

    pageNum

    int

    页数。

    默认为1。

    pageSize

    int

    页大小。

    默认为10。

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    object

    返回工作空间列表的分页结果,空间的详细信息列表存放在返回参数Data中。

    • pageNum

    int

    当前页。

    • pageSize

    int

    总行数。

    • totalPages

    int

    总页数。

    • totalNum

    int

    总行数。

    • data

    object []

    查询到的空间成员列表。

    • userId

    string

    Quick BI用户ID。

    • accountId

    string

    三方账号ID。

    • accountType

    Integer

    账号类型。

    • accountName

    string

    账号名称。

    • nickName

    string

    昵称。

    • email

    string

    邮箱。

    • phone

    string

    手机。

    • role

    object

    空间成员的预置空间角色信息,没有则返回null。

    • roleId

    string

    预置角色ID。取值范围:

    • 25:空间管理员

    • 26:空间开发者

    • 27:空间分析师

    • 30:空间查看者

    • roleCode

    string

    预置角色对应的编码。

    • roleName

    string

    预置角色的名称。

  • 返回参数

    {
        "traceId":"67a7b100-f3b7-****-ba4d-b63322a7d8cc",
        "code":null,
        "message":null,
        "data":{
            "pageNum":1,
            "pageSize":1,
            "totalPages":7,
            "totalNum":7,
            "data":[
                {
                    "userId":"91a****c17b24",
                    "accountId":"1387539****32652",   // 第三方账户ID
                    "accountName":"a***@example.com",     // 账户名称
                    "nickName":null,                  // 昵称
                    "email":null,  
                    "phone":null,
                    "role":{        // 预制空间角色信息
                        "roleId":30,
                        "roleCode":"guest",
                        "roleName":"阅览者"
                    }
                }
            ]
        },
        "success":true
    }
    
  • Java SDK 示例:

    public static void QueryWorkspaceUserList() throws SDKException {
        String workspaceId = "XXX";
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace/" + workspaceId + "/user")
                .setMethod(HttpMethod.GET);
        // 非必填参数
        // request.addParameter("keyword","test_auth");
        // request.addParameter("pageNum",1);
        // request.addParameter("pageSize",10);
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

添加成员到工作空间

  • 接口路径/openapi/v2/workspace/{workspaceId}/userPOST

  • 接口描述:向指定的工作空间添加一个成员。

  • 输入参数:workspaceId为路径参数;其他为JSON串参数,以JSON串格式附属到POST请求的body中。

    参数

    类型

    描述

    是否必选

    workspaceId

    string

    路径参数。

    userId

    string

    用户ID。

    roleId

    int

    空间角色ID,预置角色ID如下:

    • 25:空间管理员

    • 26:空间开发者

    • 27:空间分析师

    • 30:空间查看者

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    object

    返回添加的执行结果

    • success

    int

    添加成功的账号数,默认为1。

    • total

    int

    添加成功的账号数,默认为1。

    • failure

    int

    失败的账号数,默认为0。

    • failureDetail

    Map<String, String>

    失败原因,userId (键)-> 原因(值)。

  • 返回参数

    {
        "traceId":"e64bbf52-84dc-****-9ace-03c006e6f007",
        "code":null,
        "message":null,
        "data":{
            "total":1,  
            "success":1, 
            "failure":null,
            "failureDetail":null
        },
        "success":true
    }
  • Java SDK 示例:

    public static void AddUserToWorkspace() throws SDKException {
        String workspaceId = "XXX";
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace/" + workspaceId + "/user")
                .setMethod(HttpMethod.POST);
        request.addParameter("userId", "XXX");
        request.addParameter("roleId", 30);
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

删除工作空间成员

  • 接口路径/openapi/v2/workspace/{workspaceId}/user/{userId}DELETE

  • 接口描述:从指定空间删除某个用户。如果该用户下存在报表资源,默认转移给空间Owner。

  • 输入参数:路径参数:workspaceId、userId

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    boolean

    是否删除成功。取值范围:

    • true:删除成功

    • false:删除失败

  • 返回参数

    {
        "traceId":"5afac9c1-9ec1-****-a2d1-c83bc897dbea",
        "code":null,
        "message":null,
        "data":true,  # true, 删除成功
        "success":true
    }
  • Java SDK 示例:

    public static void DeleteUserFromWorkspace() throws SDKException {
        String userId = "xxx";
        String worksapceId = "xxx";
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace/" + worksapceId +"/user/" + userId)
                .setMethod(HttpMethod.DELETE);
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

修改工作空间成员角色

  • 接口路径/openapi/v2/workspace/{workspaceId}/user/{userId}/updateRolePUT

  • 接口描述:修改指定工作空间中成员角色信息,已有角色会被覆盖。

  • 输入参数:workspaceId、userId, 路径参数

    (表格中参数以JSON串形式附属到POST请求的body中)

    参数

    类型

    描述

    是否必选

    roleId

    说明

    该参数已过时。

    int

    空间角色ID,预置角色ID如下:

    • 25:空间管理员

    • 26:空间开发者

    • 27:空间分析师

    • 30:空间查看者

    roleIds

    List<Long>

    空间角色ID数组,当传入该参数时,以该参数为准,最多同时支持三个角色。

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    boolean

    是否修改成功。取值范围:

    • true:修改成功

    • false:修改失败

  • 返回参数

    {
        "traceId":"5afac9c1-9ec1-****-a2d1-c83bc897dbea",
        "code":null,
        "message":null,
        "data":true,   # true, 修改成功
        "success":true
    }
  • Java SDK 示例:

    public static void UpdateWorkspaceUserRole() throws SDKException {
        String userId = "xxx";
        String worksapceId = "xxx";
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace/" + worksapceId + "/user/" + userId +"/updateRole")
                .setMethod(HttpMethod.PUT);
        request.addParameter("roleId",25);
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

查询工作空间成员的预置角色信息

  • 接口路径/openapi/v2/workspace/userRoleGET

  • 接口描述:查询用户在空间的预置角色信息。若用户不存在空间中,则返回 null。

  • 起始版本:独立部署3.6

  • 输入参数

    参数

    类型

    描述

    是否必选

    userId

    string

    Quick BI用户ID。

    workspaceId

    string

    空间ID。

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    object

    返回预置角色信息。

    • roleId

    string

    预置角色ID。取值范围:

    • 25:空间管理员

    • 26:空间开发者

    • 27:空间分析师

    • 30:空间查看者

    • roleCode

    string

    预置角色对应的编码。

    • roleName

    string

    预置角色的名称。

  • 返回参数

    {
        "traceId":"5afac9c1-9ec1-****-a2d1-c83bc897dbea",
        "code":null,
        "message":null,
        "data":{                  // 若用户不属于指定的工作空间,data字段返回 null(非 null字符串)
            "roleId":26,          //  空间角色 ID,预置角色ID如下:
                                  // 25:空间管理员
                                  // 26:空间开发者
                                  // 27:空间分析者
                                  // 30:空间查看者
            "roleName":"开发者",   // 空间角色的中文名称
            "roleCode":"role_workspace_dev",  // 空间角色英文描述。
        },
        "success":true
    }
  • Java SDK 示例:

    public static void QueryUserRoleInfoInWorkspace() throws SDKException {
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace/userRole")
                .setMethod(HttpMethod.GET);
        request.addParameter("userId","xxx");
        request.addParameter("worksapceId","xxx");
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

批量添加成员到单个工作空间

  • 接口路径/openapi/v2/workspace/{workspaceId}/batchAddUserPOST

  • 接口描述:批量添加工作空间成员。若接口调用失败(success=false),则不会持久化任何数据。若接口调用成功(success=true),存在添加部分成员成功,部分失败的情况,添加失败的原因参考返回结果。

  • 起始版本: 独立部署3.6

  • 接口入参:workspaceId, 路径参数

    (表格中参数以JSON串形式附属到POST请求的body中)

    参数

    类型

    描述

    是否必选

    userIds

    List<String>

    用户 ID,数组格式。

    roleId

    int

    空间角色ID,预置角色ID如下:

    • 25:空间管理员

    • 26:空间开发者

    • 27:空间分析师

    • 30:空间查看者

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    object

    接口的执行结果。

    • total

    int

    待添加的用户数。

    • success

    int

    添加成功的用户数。

    • failure

    int

    添加失败的用户数。

    • failureDetail

    Map<"userId","errorInfo">

    key为添加失败的用户ID,value为添加失败的报错信息。

  • 返回参数

    {
        "traceId":"e64bbf52-84dc-****-9ace-03c006e6f007",
        "code":null,
        "message":null,
        "data":{
            "total":10,        // 添加总数
            "success":9,       // 添加成功数
            "failure":1,       // 添加失败数
            "failureDetail":{  // 失败的原因,Map结构,keyuserId, value为失败原因。
                "zhongguojiayou444": "AE0150010001: user already in workspace"
            }
        },
        "success":true
    }
  • Java SDK 示例:

    private static void AddWorkspaceUsers() throws SDKException {
        String worksapceId = "xxx";
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace/" + worksapceId + "/batchAddUser")
                .setMethod(HttpMethod.POST);
        request.addParameter("userIds",Lists.newArrayList(UserId2));
        request.addParameter("roleId",30);
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

批量更新工作空间成员的角色

  • 接口路径/openapi/v2/workspace/{workspaceId}/batchUpdateRole PUT

  • 接口描述:批量更新工作空间成员的角色信息。

    若接口调用失败(success=false),则不会持久化任何数据。若接口调用成功(success=true),存在部分成员修改成功,部分修改失败的情况,失败的原因参考返回结果。

  • 起始版本: 独立部署3.6

  • 接口入参:workspaceId, 路径参数

    (表格中参数以JSON串形式附属到POST请求的body中)

    参数

    类型

    描述

    是否必选

    userIds

    List<String>

    用户 ID,数组格式。

    roleId

    int

    空间角色ID,预置角色ID如下:

    • 25:空间管理员

    • 26:空间开发者

    • 27:空间分析师

    • 30:空间查看者

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    object

    接口的执行结果。

    • total

    int

    待添加的用户数。

    • success

    int

    添加成功的用户数。

    • failure

    int

    添加失败的用户数。

    • failureDetail

    Map<"userId,"errorInfo">

    key为添加失败的用户ID,value为添加失败的报错信息。

  • 返回参数

    {
        "traceId":"e64bbf52-84dc-****-9ace-03c006e6f007",
        "code":null,
        "message":null,
        "data":{
            "total":10,        // 添加总数
            "success":9,       // 添加成功数
            "failure":1,       // 添加失败数
            "failureDetail":{  // 失败的原因,Map 结构,key 为 userId, value 为失败原因。
                "zhongguojiayou444": "AE0150010001: user already in workspace"
            }
        },
        "success":true
    }
  • Java SDK 示例:

    private static void UpdateWorkspaceUsersRole() throws SDKException {
        String worksapceId = "xxx";
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace/" + worksapceId + "/batchUpdateRole")
                .setMethod(HttpMethod.PUT);
        request.addParameter("userIds", Lists.newArrayList("xxx"));
        request.addParameter("roleId", 25);
    
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

单个用户,批量添加到多个空间

  • 接口路径/openapi/v2/user/joinWorkspacesPOST

  • 接口描述:单个用户,批量添加到多个空间并指定角色。

  • 起始版本: 独立部署3.8.4

  • 输入参数:(content-type:application/json;charset=UTF-8,参数以JSON对象格式附录在http body中)

    参数

    类型

    描述

    是否必选

    userId

    string

    Quick BI的用户ID。

    workspaceIds

    list

    空间Id。

    list结构。

    roleId

    int

    空间角色ID,预置角色ID如下:

    • 25:空间管理员

    • 26:空间开发者

    • 27:空间分析师

    • 30:空间查看者

  • 输入参数示例:

    {
        "userId":"9bbd2088-****",
        "workspaceIds":["abc", "def"],
        "roleId":25
    }
  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    boolean

    是否执行成功。取值范围:

    • true:执行成功

    • false:执行失败

  • 返回参数

    {
        "traceId":"9bbd2088-6aeb-****-9ef3-082cc5a4f8f3",
        "code":null,
        "message":null,
        "data":true,   // true 执行成功
        "success":true
    }
  • Java SDK 示例:

    private static void AddUserToWorkspaces() throws SDKException {
        HttpRequest request = HttpRequest.build()
            .setUri("/openapi/v2/user/joinWorkspaces")
            .setMethod(HttpMethod.POST);
        List<String> workspaceIds = new LinkedList<>();
        workspaceIds.add("c746bbe3-089a-****-bd8f-e100820e3473");
        workspaceIds.add("be53d958-bb82-****-b0ee-3b9019c26320");
        workspaceIds.add("0c49985c-4b54-****-8277-872343c330bd");
    
        request.addParameter("userId", "0117****0920817266");
        request.addParameter("workspaceIds", workspaceIds);
        request.addParameter("roleId", 25); // 25:空间管理员 26:空间开发者 27:空间分析师 28:空间访客(阅览者)
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

单个用户,批量退出多个空间

  • 接口路径/openapi/v2/user/withdrawWorkspacesPOST

  • 接口描述:单个用户,批量从多个空间退出。默认该用户的Owner的资源,默认转让给空间Onwer,且空间Owner不能删除。

  • 起始版本: 独立部署3.8.4

  • 输入参数:content-type:application/json;charset=UTF-8,参数以JSON对象格式附录在http body

    参数

    类型

    描述

    是否必选

    userId

    string

    Quick BI的用户ID。

    workspaceIds

    list

    空间ID。

    list结构。

  • 输入参数示例:

    {
        "userId":"9bbd2088-****",
        "workspaceIds":["abc", "def"],
        "roleId":25
    }
  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    boolean

    是否执行成功。取值范围:

    • true:执行成功

    • false:执行失败

  • 返回参数

    {
        "traceId":"9bbd2088-6aeb-****-9ef3-082cc5a4f8f3",
        "code":null,
        "message":null,
        "data":true,   // true 执行成功
        "success":true
    }
  • Java SDK示例:

        private static void testBatchWithDrawUserFromWorkspaces() throws SDKException {
            HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/user/withdrawWorkspaces")
                .setMethod(HttpMethod.POST);
            List<String> workspaceIds = new LinkedList<>();
            workspaceIds.add("c746bbe3-089a-****-bd8f-e100820e3473");
            workspaceIds.add("be53d958-bb82-****-b0ee-3b9019c26320");
            workspaceIds.add("0c49985c-4b54-****-8277-872343c330bd");
    
            request.addParameter("userId", "011717****20817266");
            request.addParameter("workspaceIds", workspaceIds);
            String result = client.syncExecute(request);
            System.out.println(result);
        }

获取用户所属空间以及预置空间角色列表

  • 接口路径/openapi/v2/workspace/queryRolesByUserGET

  • 接口描述:根据用户id,获取用户所属的所有空间列表,包括用户预置空间角色信息。

  • 起始版本:独立部署4.0

  • 输入参数

    参数

    类型

    描述

    是否必选

    userId

    String

    用户ID。

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    object []

    所处的空间角色信息列表。

    • workspaceId

    string

    空间ID。

    • workspaceName

    string

    空间名称。

    • roleModel

    object []

    空间角色信息。

    • roleId

    string

    空间角色ID,包括但不限于空间预置角色:

    • 25:空间管理员(预置角色)

    • 26:空间开发者(预置角色)

    • 27:空间分析师(预置角色)

    • 30:空间查看者(预置角色)

    • roleCode

    string

    预置空间角色对应的编码,自定义角色不返回。

    • roleName

    string

    空间角色的名称。

  • 返回参数:

    {
      "traceId":"235c9fa8-d6f5-****-a6d4-38f07b2319ce",
      "code":"0",
      "message":"f441dad7-6878-****-9ad1-84ff92c7d971",
      "success":true,
      "data":[
        {
          "workspaceId":"xxx",    // 空间ID
          "workspaceName":"xxx",  // 空间名称
          "roleModel":{
                           "roleId":26,          //  预置空间角色ID
                                  // 25:空间管理员
                                  // 26:空间开发者
                                  // 27:空间分析者
                                  // 30:空间查看者
                    "roleName":"开发者",   // 空间角色的中文名称
             "roleCode":"role_workspace_dev",  // 空间角色英文描述。   
          }
        }
      ]
    }
  • Java JDK示例:

        public static void  testQueryUserWorkspaceAPI() throws Exception {
            String uri = "/openapi/v2/workspace/queryRolesByUser";
            HttpRequest request = HttpRequest.build()
                .setUri(uri)
                .setMethod(HttpMethod.GET);
            request.addParameter("userId", "137ef0d49c4d42caaxxxx");
            String result = client.syncExecute(request);
            System.out.println(result);
        }

新建工作空间

  • 接口路径/openapi/v2/workspacePOST

  • 接口描述:创建新工作空间。

  • 起始版本: 独立部署4.2

  • 接口参数:content-type:text/json,以JSON格式提交

    参数名称

    类型

    参数描述

    是否必需

    workspaceName

    String

    工作空间名称

    workspaceDesc

    String

    工作空间描述

    useComment

    Boolean

    工作空间创建数据集是否使用表备注,默认:true

    allowShare

    Boolean

    工作空间报表是否允许分享,默认:true

    allowPublish

    Boolean

    工作空间报表是否允许公开,默认:true

    allowViewAll

    Boolean

    是否将空间内的文件夹设置为私密模式,默认true:

    • true:非私密模式

    • false:私密模式

    defaultShareToAll

    Boolean

    作品默认授权工作空间所有人可查看

    onlyAdminCreateDatasource

    Boolean

    数据源仅管理员可创建

  • 返回参数说明(SDK调用时,仅返回data部分)

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    string

    工作空间ID。

  • 返回参数

    {
      "traceId":"235c9fa8-d6f5-****-a6d4-38f07b2319ce",
      "code":"0",
      "message":"f441dad7-6878-****-9ad1-84ff92c7d971",
      "success":true,
      "data":"0c49985c-4b54-****-8277-872343c330bd"
    }
  • JAVA SDK示例

    private static void CreateWorkspace() throws SDKException {
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace")
                .setMethod(HttpMethod.POST);
        request.addParameter("workspaceName", "测试新建空间");
        // 非必填参数
        // request.addParameter("workspaceDesc", "xxx");
        // request.addParameter("useComment", true);
        // request.addParameter("allowShare", true);
        // request.addParameter("allowPublish", true);
        // request.addParameter("allowViewAll", true);
        // request.addParameter("defaultShareToAll", true);
        // request.addParameter("onlyAdminCreateDatasource", true);
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }

删除工作空间

  • 接口路径:/openapi/v2/workspace/{workspaceId}(DELETE)

  • 接口描述:工作空间删除后,工作空间内的资源将无法恢复,请谨慎操作。

  • 起始版本:独立部署4.6.1

  • 接口参数:(content-type:application/x-www-form-urlencoded;charset=UTF-8,参数以表单提交)

    参数名称

    类型

    参数描述

    是否必需

    workspaceId

    String

    工作空间ID

  • 返回参数说明(SDK调用时,仅返回data部分):

    参数

    类型

    描述

    traceId

    string

    请求ID。

    code

    string

    抛错码。取值范围:

    • 0:调用成功

    • AEOE开头的异常码:调用失败

    message

    string

    抛错信息。取值范围:

    • success:调用成功

    • 其他信息:调用失败时的提示

    success

    boolean

    是否请求成功。取值范围:

    • true:请求成功

    • false:请求失败

    data

    boolean

    是否删除成功。取值范围:

    • true:删除成功

    • false:删除失败

  • 返回参数

    {
        "traceId": "b442c4c5-0f97-****-b397-0cf98b2febcd",
        "code": "0",
        "message": "success",
        "data": true,
        "success": true,
        "httpCode": 200,
        "dynamicMessage": null
    }
  • JAVA SDK 示例:

    private static void DeleteWorkspace() throws SDKException {
        String worksapceId = "XXX";
        HttpRequest request = HttpRequest.build()
                .setUri("/openapi/v2/workspace/" + worksapceId)
                .setMethod(HttpMethod.DELETE);
        String result = openApiClient.syncExecute(request);
        System.out.println(result);
    }