To use the Role API, it's necessary to generate an access token.
Role
Add
POST
https://<<platform-server>>/ds-api/roles/{role}
Create a New Role
Path Parameters
Request Body
Response
{
"status": "Role name <<role>> created successfully"
}
The JSON array structure should adhere to the following format:
"access": [
{
"filters": [
{"tag": "tag_name", "value": "tag_value"},
{"tag": "another_tag", "value": "another_value"},
...
]
}
]
// Example:
// Establish a role-based access that exclusively applies to instances
// categorized as "production"
// AND situated within the "London" datacenter.
"access": [
{
"filters":
[
{"tag": "environment", "value": "production"},
{"tag": "datacenter", "value": "london"}
]
}
]
// Example:
// Establish a role-based access that encompasses instances
// categorized as either "development" OR "uat"
"access": [
{
"filters":
[
{ "tag": "environment", "value": "development" }
]
},
{
"filters":
[
{ "tag": "environment", "value": "uat" }
]
},
]
Display
GET
https://<<platform-server>>/ds-api/roles/{role}
Display Role Attributes
Path Parameters
Response
{
"name": "myRole",
"access": [
{
"filters": [
{
"tag": "pg_instance",
"value": "51.15.233.24@agentLess6"
}
]
},
{
"filters": [
{
"tag": "pg_instance",
"value": "51.158.104.206@agentLess11"
}
]
}
]
}
Assigned Users
GET
https://<<platform-server>>/ds-api/roles/{role}/users
Display the users assigned to a specific role
Path Parameters
Response
[
{
"id": 70,
"login": "username",
"email": "userName@myCompany.com",
"profile": "data admin",
"privilege": "admin",
"role": "myRole",
"live_360": 1
}
]
Replace
PUT
https://<<platform-server>>/ds-api/roles/{role}
Replace existing role
Path Parameters
Request Body
Response
{
"status": "Role name <<role>> updated successfully"
}
DELETE
https://<<platform-server>>/ds-api/roles/{role}
Delete Role
Path Parameters
Response
{
"status": "Role name <<role>> deleted successfully"
}
Roles
Display
GET
https://<<platform-server>>/ds-api/roles
Display All Roles
Response
[
{
"name": "myRole",
"access": [
{
"filters": [
{
"tag": "pg_instance",
"value": "51.15.233.24@agentLess6"
}
]
},
{
"filters": [
{
"tag": "pg_instance",
"value": "51.158.104.206@agentLess11"
}
]
}
]
},
{
"name": "testrole",
"access": [
{
"filters": [
{
"tag": "pg_version",
"value": "11.8"
},
{
"tag": "pg_instance",
"value": "51.15.233.24@agentLess6"
}
]
}
]
}
]