所有接口路径前缀都是 ,需要将路径中的短名字换成实际的值,比如 /openapi/company/50b55/app/6a814/

获取应用下的所有资源,用于外部系统控制爱速搭的权限分配。

地址:GET /openapi/company/{组织短名字}/app/{应用短名字}/resources

返回示例:

获取应用下的角色列表

地址:GET /openapi/company/{组织短名字}/app/{应用短名字}/role

返回示例:

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. "items": [
  6. {
  7. "name": "应用管理员", // 角色名称,角色名称在一个应用内不可重名
  8. "id": "pezEbloLAB", // 角色唯一 id
  9. "description": "系统自动创建,应用级别角色,只在应用「nw」中可见。", // 描述新
  10. "scope": "app", // 这是应用级别
  11. "isBultin": true, // 是否是默认创建的
  12. "editable": true, // 是否可编辑
  13. "deleteable": true // 是否可删除
  14. }
  15. ]
  16. }
  17. }

创建应用内角色

地址:Post /openapi/company/{组织短名字}/app/{应用短名字}/role

提交内容:{"name": "角色名"}

删除角色

需要将角色 id 放到 url 中

地址:Get /openapi/company/{组织短名字}/app/{应用短名字}/role/{角色 id}/member

返回示例:

往角色中添加用户

地址:Post /openapi/company/{组织短名字}/app/{应用短名字}/role/{角色 id}/member/user

提交内容:{"email": "xxx@yyy.com"}

往角色中添加角色

地址:Post /openapi/company/{组织短名字}/app/{应用短名字}/role/{角色 id}/member/role

提交内容:{"role": " 角色 ID"}

获取应用下有哪些 ACL 配置项

用于告知第三方爱速搭中有哪些可以配置的权限,比如页面可以配置「可见」、「可写」、「可删」这三项。

返回示例:

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": [
  5. {
  6. "name": "page",
  7. "options": [
  8. {
  9. "name": "read",
  10. "label": "可见"
  11. },
  12. {
  13. "name": "write",
  14. "label": "可写"
  15. },
  16. {
  17. "name": "delete",
  18. "label": "可删"
  19. }
  20. ]
  21. },
  22. {
  23. "name": "dataModel",
  24. "options": [
  25. {
  26. "name": "read",
  27. "label": "可见"
  28. },
  29. {
  30. "name": "write",
  31. "label": "可写"
  32. },
  33. {
  34. "name": "delete",
  35. "label": "可删"
  36. }
  37. ]
  38. },
  39. {
  40. "name": "dataSource",
  41. "options": [
  42. {
  43. "name": "read",
  44. "label": "可见"
  45. },
  46. {
  47. "name": "write",
  48. "label": "可写"
  49. },
  50. {
  51. "name": "delete",
  52. "label": "可删"
  53. }
  54. ]
  55. },
  56. {
  57. "name": "component",
  58. "options": [
  59. {
  60. "name": "read",
  61. },
  62. {
  63. "name": "write",
  64. },
  65. {
  66. "name": "delete",
  67. "label": "可删"
  68. }
  69. ]
  70. },
  71. {
  72. "name": "APICenter",
  73. "options": [
  74. {
  75. "name": "read",
  76. "label": "可见"
  77. },
  78. {
  79. "name": "write",
  80. "label": "可写"
  81. },
  82. {
  83. "name": "delete",
  84. "label": "可删"
  85. },
  86. {
  87. "name": "call",
  88. "label": "调用"
  89. }
  90. ]
  91. },
  92. {
  93. "name": "APICenterGroup",
  94. "options": [
  95. {
  96. "name": "read",
  97. "label": "可见"
  98. },
  99. {
  100. "name": "write",
  101. "label": "可写"
  102. },
  103. {
  104. "name": "delete",
  105. "label": "可删"
  106. }
  107. ]
  108. },
  109. {
  110. "name": "role",
  111. "options": [
  112. {
  113. "name": "write",
  114. "label": "可写"
  115. },
  116. {
  117. "name": "delete",
  118. "label": "可删"
  119. }
  120. ]
  121. }
  122. ]
  123. }

地址:Post /openapi/company/{组织短名字}/app/{应用短名字}/role/{角色 id}/acl/role

提交内容示例,提交内容是数组,可以同时设置多个资源的权限:

获取某个应用可配置的权限点

地址: Get /openapi/company/{组织短名字}/app/{应用短名字}/acl

返回参数格式如下:

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. "app": {
  6. "key": "877f21d1cc5a",
  7. "name": "XXX应用",
  8. "subResources": [
  9. {
  10. "label": "应用访问",
  11. "value": "read"
  12. },
  13. {
  14. "label": "应用管理",
  15. "value": "edit"
  16. },
  17. {
  18. "label": "数据管理",
  19. "value": "dataManage"
  20. }
  21. ]
  22. },
  23. "page": {
  24. "name": "页面",
  25. "items": [
  26. {
  27. "id": "k1Jw8ME8Gq",
  28. "name": "页面名",
  29. {
  30. "label": "可打印",
  31. },
  32. {
  33. "label": "可导出",
  34. "value": "export"
  35. },
  36. {
  37. "label": "xxx接口可调用",
  38. "value": "api.muEb9u9DdpbaGiFMhWqdjm.call"
  39. }
  40. ],
  41. "children": [
  42. // 页面本身是树形结构的,所以用 tree 的格式返回
  43. ]
  44. }
  45. ]
  46. },
  47. "dataModel": {
  48. "name": "数据模型",
  49. "items": [
  50. {
  51. "id": "M9QEWvywp8",
  52. "name": "数据模型名"
  53. }
  54. ]
  55. },
  56. "dataSource": {
  57. "name": "数据源",
  58. "items": [
  59. {
  60. "id": "k1Jw8ME8Gq",
  61. "name": "数据源名"
  62. }
  63. ]
  64. },
  65. "component": {
  66. "name": "自定义组件",
  67. "items": [
  68. {
  69. "id": "LM6wPMEJdb",
  70. "name": "自定义组件名"
  71. }
  72. ]
  73. },
  74. "APICenter": {
  75. "name": "API",
  76. "items": [
  77. {
  78. "id": "pezEbloLAB",
  79. "name": "api名"
  80. }
  81. ]
  82. },
  83. "APICenterGroup": {
  84. "name": "API 分组",
  85. "items": [
  86. {
  87. "id": "grOwVRwNXG",
  88. "name": "分组名"
  89. }
  90. ]
  91. },
  92. "role": {
  93. "name": "角色",
  94. "items": [
  95. {
  96. "id": "pezEbloLAB",
  97. "name": "应用管理员"
  98. }
  99. ]
  100. }
  101. }
  102. }

获取某个应用运行态权限值

地址: Get /openapi/company/{组织短名字}/app/{应用短名字}/acl/runtime

返回参数格式如下:

获取用户在某个应用中的角色

地址: Get /openapi/company/{组织短名字}/app/{应用短名字}/role/member/{用户ID}/roles

  1. {
  2. "status": 0,
  3. "msg": "",
  4. "data": {
  5. "companyId": "k1Jw8ME8Gq",
  6. "appId": "7dAE5Ko59n",
  7. "userId": "k1Jw8ME8Gq",
  8. "roles": [
  9. {
  10. "roleId": "lKVZOnEBdk", // 角色ID
  11. "roleName": "MyApp-管理员" // 角色名称
  12. },
  13. {
  14. "roleId": "dl6EgeojP1",
  15. "roleName": "MyApp-用户"
  16. }
  17. ]
  18. }