curl --request GET \
--url 'https://YOURSITE.konstant.ly/openapi/v1/roles' \
--header 'X-API-KEY: 1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv'
import requests
from typing import List, Dict
def get_roles(api_key: str) -> List[Dict[str, str]]:
url = "https://YOURSITE.konstant.ly/openapi/v1/roles"
headers = {"X-API-KEY": api_key}
response = requests.get(url, headers=headers)
response.raise_for_status()
return response.json()['roles']
# Example usage
try:
roles = get_roles("1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv")
print("Available Roles:")
for role in roles:
print(f"- {role['name']} (alias: {role['alias']})")
except Exception as e:
print(f"Error fetching roles: {str(e)}")
const axios = require('axios');
async function getRoles(apiKey) {
try {
const response = await axios.get(
'https://YOURSITE.konstant.ly/openapi/v1/roles',
{
headers: {
'X-API-KEY': apiKey
}
}
);
return response.data.roles;
} catch (error) {
console.error('Error fetching roles:', error.message);
throw error;
}
}
// Example usage
getRoles('1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv')
.then(roles => {
console.log('Available Roles:');
roles.forEach(role => {
console.log(`- ${role.name} (alias: ${role.alias})`);
});
})
.catch(error => console.error('Error:', error.message));
<?php
function getRoles($apiKey) {
$url = "https://YOURSITE.konstant.ly/openapi/v1/roles";
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"X-API-KEY: {$apiKey}"
]
]);
$response = curl_exec($ch);
if (curl_errno($ch)) {
throw new Exception(curl_error($ch));
}
curl_close($ch);
$data = json_decode($response, true);
return $data['roles'];
}
// Example usage
try {
$roles = getRoles("1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv");
echo "Available Roles:\n";
foreach ($roles as $role) {
echo "- {$role['name']} (alias: {$role['alias']})\n";
}
} catch (Exception $e) {
echo "Error: " . $e->getMessage() . "\n";
}
?>
{
"roles": [
{
"alias": "administrator",
"name": "Administrator"
},
{
"alias": "manager",
"name": "Manager"
},
{
"alias": "expert",
"name": "Expert"
},
{
"alias": "learner",
"name": "Learner"
},
{
"alias": "1",
"name": "Custom Role Title"
}
]
}
Roles
Get Roles
Get a list of roles
GET
/
roles
curl --request GET \
--url 'https://YOURSITE.konstant.ly/openapi/v1/roles' \
--header 'X-API-KEY: 1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv'
import requests
from typing import List, Dict
def get_roles(api_key: str) -> List[Dict[str, str]]:
url = "https://YOURSITE.konstant.ly/openapi/v1/roles"
headers = {"X-API-KEY": api_key}
response = requests.get(url, headers=headers)
response.raise_for_status()
return response.json()['roles']
# Example usage
try:
roles = get_roles("1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv")
print("Available Roles:")
for role in roles:
print(f"- {role['name']} (alias: {role['alias']})")
except Exception as e:
print(f"Error fetching roles: {str(e)}")
const axios = require('axios');
async function getRoles(apiKey) {
try {
const response = await axios.get(
'https://YOURSITE.konstant.ly/openapi/v1/roles',
{
headers: {
'X-API-KEY': apiKey
}
}
);
return response.data.roles;
} catch (error) {
console.error('Error fetching roles:', error.message);
throw error;
}
}
// Example usage
getRoles('1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv')
.then(roles => {
console.log('Available Roles:');
roles.forEach(role => {
console.log(`- ${role.name} (alias: ${role.alias})`);
});
})
.catch(error => console.error('Error:', error.message));
<?php
function getRoles($apiKey) {
$url = "https://YOURSITE.konstant.ly/openapi/v1/roles";
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"X-API-KEY: {$apiKey}"
]
]);
$response = curl_exec($ch);
if (curl_errno($ch)) {
throw new Exception(curl_error($ch));
}
curl_close($ch);
$data = json_decode($response, true);
return $data['roles'];
}
// Example usage
try {
$roles = getRoles("1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv");
echo "Available Roles:\n";
foreach ($roles as $role) {
echo "- {$role['name']} (alias: {$role['alias']})\n";
}
} catch (Exception $e) {
echo "Error: " . $e->getMessage() . "\n";
}
?>
{
"roles": [
{
"alias": "administrator",
"name": "Administrator"
},
{
"alias": "manager",
"name": "Manager"
},
{
"alias": "expert",
"name": "Expert"
},
{
"alias": "learner",
"name": "Learner"
},
{
"alias": "1",
"name": "Custom Role Title"
}
]
}
Retrieve a list of all available roles in the system. Roles define user permissions and access levels within your platform.
Request Headers
API Key. Go to your Konstantly site > Settings > API and copy the value from there.
Response
Role Types
- Built-in Roles:
administrator: Full system accessmanager: Can manage users and contentexpert: Can create and assess contentlearner: Basic access to assigned content
- Custom Roles:
- Identified by numeric alias
- Have custom display names
- Permissions configured in web interface
Usage Notes
- Role Assignment:
- Roles are required when creating users
- Users can only have one role
- Role changes require user re-authentication
- Best Practices:
- Audit role assignments regularly
- Use least-privilege principle
- Document custom role configurations
curl --request GET \
--url 'https://YOURSITE.konstant.ly/openapi/v1/roles' \
--header 'X-API-KEY: 1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv'
import requests
from typing import List, Dict
def get_roles(api_key: str) -> List[Dict[str, str]]:
url = "https://YOURSITE.konstant.ly/openapi/v1/roles"
headers = {"X-API-KEY": api_key}
response = requests.get(url, headers=headers)
response.raise_for_status()
return response.json()['roles']
# Example usage
try:
roles = get_roles("1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv")
print("Available Roles:")
for role in roles:
print(f"- {role['name']} (alias: {role['alias']})")
except Exception as e:
print(f"Error fetching roles: {str(e)}")
const axios = require('axios');
async function getRoles(apiKey) {
try {
const response = await axios.get(
'https://YOURSITE.konstant.ly/openapi/v1/roles',
{
headers: {
'X-API-KEY': apiKey
}
}
);
return response.data.roles;
} catch (error) {
console.error('Error fetching roles:', error.message);
throw error;
}
}
// Example usage
getRoles('1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv')
.then(roles => {
console.log('Available Roles:');
roles.forEach(role => {
console.log(`- ${role.name} (alias: ${role.alias})`);
});
})
.catch(error => console.error('Error:', error.message));
<?php
function getRoles($apiKey) {
$url = "https://YOURSITE.konstant.ly/openapi/v1/roles";
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"X-API-KEY: {$apiKey}"
]
]);
$response = curl_exec($ch);
if (curl_errno($ch)) {
throw new Exception(curl_error($ch));
}
curl_close($ch);
$data = json_decode($response, true);
return $data['roles'];
}
// Example usage
try {
$roles = getRoles("1qaz2wsx3edc4rfv1qaz2wsx3edc4rfv");
echo "Available Roles:\n";
foreach ($roles as $role) {
echo "- {$role['name']} (alias: {$role['alias']})\n";
}
} catch (Exception $e) {
echo "Error: " . $e->getMessage() . "\n";
}
?>
{
"roles": [
{
"alias": "administrator",
"name": "Administrator"
},
{
"alias": "manager",
"name": "Manager"
},
{
"alias": "expert",
"name": "Expert"
},
{
"alias": "learner",
"name": "Learner"
},
{
"alias": "1",
"name": "Custom Role Title"
}
]
}
Was this page helpful?
⌘I