Create Central Identity User API
CI_USER_CREATION
property.Create User
The request payload should specify email
, security_provider_type
, and displayName
. The server generates the user ID.
Format
POST /controller/api/rbac/v1/ci-user
Input Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
email
| Request payload | Yes | |
security_provider_type | Request payload | "INTERNAL"
| Yes |
displayName | Request payload | Yes |
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X POST -d '{"email": "user10@domain.com", "security_provider_type": "INTERNAL", "displayName": "user10"}' -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/ci-user Response status code 200 : { "id": 10, "name": "user10@domain.com", "email": "user10@domain.com", "displayName": "user10", "security_provider_type": "INTERNAL" }
Get User by ID
Use this to get full user information, including a summary of affiliated groups and roles, using the userId
in the current account.
Format
GET /controller/api/rbac/v1/users/userId
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/users/4 Response status code 200 : { "id": 4, "name": "user1", "email": "user1@customer1.com", "displayName": "user1", "security_provider_type": "INTERNAL", "roles": [ {"id": 17,"name": "Workflow Executor"}, {"id": 18,"name": "DB Monitoring Administrator"}, {"id": 19,"name": "DB Monitoring User"}, {"id": 20,"name": "Analytics Administrator"}, {"id": 21,"name": "Server Monitoring Administrator"}, {"id": 22,"name": "Server Monitoring User"}, {"id": 13,"name": "Account Administrator"}, {"id": 14,"name": "Administrator"}, {"id": 15,"name": "User"}, {"id": 16,"name": "Dashboard Viewer"} ], "groups": [ {"id": 1,"name": "group_01"} ] }
Get User by Name
Use this to get full user information, including a summary of affiliated groups and roles, using the userName
in the current account.
Format
GET /controller/api/rbac/v1/users/name/name
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/users/name/user1 Response status code 200 : { "id": 4, "name": "user1", "email": "user1@customer1.com", "displayName": "user1", "security_provider_type": "INTERNAL", "roles": [ {"id": 17,"name": "Workflow Executor"}, {"id": 18,"name": "DB Monitoring Administrator"}, {"id": 19,"name": "DB Monitoring User"}, {"id": 20,"name": "Analytics Administrator"}, {"id": 21,"name": "Server Monitoring Administrator"}, {"id": 22,"name": "Server Monitoring User"}, {"id": 13,"name": "Account Administrator"}, {"id": 14,"name": "Administrator"}, {"id": 15,"name": "User"}, {"id": 16,"name": "Dashboard Viewer"} ], "groups": [ {"id": 1,"name": "group_01"} ]
Get All Users
Use this to get a list of all users in the current account. The list includes user summaries, which includes userId
and userName
.
Format
GET /controller/api/rbac/v1/users
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/users Response status code 200 : { "users": [ {"id": 4,"name": "user1"}, {"id": 10,"name": "user10"} ] }
Update User
Use this to update a user by userId
in the current account. Only the user object itself is updated, with the relationship to roles and groups remaining unaffected.
Format
PUT /controller/api/rbac/v1/users/userId
Input Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
id
| Request payload | Yes | |
name
| Request payload | Yes | |
displayName | Request payload | Yes | |
security_provider_type | Request payload | "INTERNAL"
| Yes |
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X PUT -d '{"id": 11,"name": "updated_user9","displayName": "user9","security_provider_type": "INTERNAL"}' -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/users/11 Response status code 200 : { "id": 11, "name": "updated_user9", "displayName": "user9", "security_provider_type": "INTERNAL" }
Delete User
Use this to delete a user by userId
in the current account.
Format
DELETE /controller/api/rbac/v1/users/userId
Example
curl -X DELETE -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/users/11 Response status code 200 :
Create Group
Use this to create a group in the current account. The groupId
is generated by the server.
Format
POST /controller/api/rbac/v1/groups
Input Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
name
| Request payload | Yes | |
description
| Request payload | No | |
security_provider_type | Request payload | "INTERNAL"
| Yes |
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X POST -d '{"name": "group100","description": "new description", "security_provider_type": "INTERNAL"}' -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/groups Response status code 200 : { "id": 2, "name": "group100", "security_provider_type": "INTERNAL", "description": "new description" }
Get Group by ID
Use this to get full group information by groupId
in the current account.
Format
GET /controller/api/rbac/v1/groups/groupId
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/groups/1 Response status code 200 : { "id": 1, "name": "group_03", "security_provider_type": "INTERNAL" "description": "", "roles": [ {"id": 19,"name": "DB Monitoring User"}, {"id": 20,"name": "Analytics Administrator"}, {"id": 21,"name": "Server Monitoring Administrator"}, {"id": 22,"name": "Server Monitoring User"}, {"id": 13,"name": "Account Administrator"}, {"id": 16,"name": "Dashboard Viewer"} ] }
Get Group by Name
Use this to get full group information by groupName
in the current account.
Format
GET /controller/api/rbac/v1/groups/name/name
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/groups/name/group_03 Response status code 200 : { "id": 1, "name": "group_03", "security_provider_type": "INTERNAL" "description": "", "roles": [ {"id": 19,"name": "DB Monitoring User"}, {"id": 20,"name": "Analytics Administrator"}, {"id": 21,"name": "Server Monitoring Administrator"}, {"id": 22,"name": "Server Monitoring User"}, {"id": 13,"name": "Account Administrator"}, {"id": 16,"name": "Dashboard Viewer"} ] }
Get All Groups
Use this to get all groups in the current account. This only returns group summaries, which includes groupId
and groupName
.
Format
GET /controller/api/rbac/v1/groups
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/groups Response status code 200 : { "groups": [ {"id": 1,"name": "group_03"}, {"id": 2,"name": "group100"} ] }
Update Group
Use this to update a group by groupId
in the current account. Only the group itself is updated, while the relationships with users and roles remain unaffected.
Format
PUT /controller/api/rbac/v1/groups/groupId
Input Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
id
| Request payload | Yes | |
name
| Request payload | Yes | |
description
| Request payload | No | |
security_provider_type | Request payload | "INTERNAL"
| Yes |
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X PUT -d '{"id": 1, "name": "group2","description": "new description", "security_provider_type": "INTERNAL"}' -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/groups/1 Response status code 200 : { "id": 1, "name": "group2", "security_provider_type": "INTERNAL", "description": "new description", "roles": [ {"id": 19,"name": "DB Monitoring User"}, {"id": 20,"name": "Analytics Administrator"}, {"id": 21,"name": "Server Monitoring Administrator"}, {"id": 22,"name": "Server Monitoring User"}, {"id": 13,"name": "Account Administrator"}, {"id": 16,"name": "Dashboard Viewer"} ] }
Delete Group
Use this to delete a group by groupId
in the current account.
Format
DELETE /controller/api/rbac/v1/groups/groupId
Example
curl -X DELETE -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/groups/1 Response status code 200 :
Add User to Group
Use this to add a user to a group by userId
and groupId
.
Format
PUT /controller/api/rbac/v1/groups/groupId/users/userId
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X PUT -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/groups/2/users/10 Response status code 200 :
Remove User from Group
Use this to remove a user from a group by userId
and groupId
.
Format
DELETE /controller/api/rbac/v1/groups/groupId/users/userId
Example
curl -X DELETE -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/groups/2/users/10 Response status code 200 :
Create Role
Use this to create a role in the current account. The ID is generated by the server.
Format
POST /controller/api/rbac/v1/roles
Input Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
name
| Request payload | Yes | |
| Request payload | No |
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X POST -d '{"name": "role2","description": "new description"}' -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles Response status code 200 : { "id": 49, "name": "role2", "description": "new description" }
Add Role to User
Use this to add a role to a user by roleId
and userId
.
Format
PUT /controller/api/rbac/v1/roles/roleId/users/userId
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X PUT -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles/50/users/10 Response status code 200 :
Remove Role from User
Use this to remove a role from a user by roleId
and userId
.
Format
DELETE /controller/api/rbac/v1/roles/roleId/users/userId
Example
curl -X DELETE -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles/50/users/10 Response status code 200 :
Add Role to Group
Use this to add a role to a group by roleId
and groupId
.
Format
PUT /controller/api/rbac/v1/roles/roleId/groups/groupId
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X PUT -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles/50/groups/2 Response status code 200 :
Remove Role from Group
Use this to remove a role from a group by roleId
and groupId
.
Format
DELETE /controller/api/rbac/v1/roles/roleId/groups/groupId
Example
curl -X DELETE -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles/50/groups/2 Response status code 200 :
Get Role by ID
Use this to get full role information by roleId
in the current account. This only returns the role object.
Format
GET /controller/api/rbac/v1/roles/roleId
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles/15 Response status code 200 : { "id": 15, "name": "User", "description": "Can view applications and dashboards but not modify their configuration" }
Get Role by Name
Use this to get full role information by roleName
in the current account.
Format
GET /controller/api/rbac/v1/roles/name/name
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles/name/User Response status code 200 : { "id": 15,"name": "User", "description": "Can view applications and dashboards but not modify their configuration" }
Get All Roles
Use this to get all roles in the current account. This only returns role summaries, which includes roleId
and roleName
.
Format
GET /controller/api/rbac/v1/roles
Example
curl -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles Response status code 200 : { "roles": [ {"id": 13,"name": "Account Administrator"}, {"id": 14,"name": "Administrator"}, {"id": 20,"name": "Analytics Administrator"}, {"id": 16,"name": "Dashboard Viewer"}, {"id": 18,"name": "DB Monitoring Administrator"}, {"id": 19,"name": "DB Monitoring User"}, {"id": 21,"name": "Server Monitoring Administrator"}, {"id": 22,"name": "Server Monitoring User"}, {"id": 15,"name": "User"}, {"id": 17,"name": "Workflow Executor"} ] }
Update Role
Use this to update a role by roleId
in the current account. This only updates the role object itself, while leaving the relationship with users and groups unaffected.
Format
PUT /controller/api/rbac/v1/roles/roleId
Input Parameters
Parameter Name | Parameter Type | Value | Mandatory |
---|---|---|---|
id
| Request payload | Yes | |
name
| Request payload | Yes | |
description
| Request payload | No |
Example
curl -H "Content-Type: application/vnd.appd.cntrl+json;v=1" -X PUT -d '{"id": 49, "name": "role1","description": "new description" }' -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles/49 Response status code 200 : { "id": 49, "name": "role1", "description": "new description" }
Delete Role
Use this to delete a role in the current account.
Format
DELETE /controller/api/rbac/v1/roles/roleId
Example
curl -X DELETE -u user1@customer1 http://localhost:8080/controller/api/rbac/v1/roles/49 Response status code 200 :