List roles
Returns the company’s roles, including permissions for each role.
Each role includes a name, profile, description, linked user count, and claim groups.
curl -X GET "https://api-sandbox.contasimples.com/users/v1/roles" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"
import requests
import json
url = "https://api-sandbox.contasimples.com/users/v1/roles"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://api-sandbox.contasimples.com/users/v1/roles", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api-sandbox.contasimples.com/users/v1/roles", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api-sandbox.contasimples.com/users/v1/roles')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
response = http.request(request)
puts response.body
{
"data": [
{
"id": "uuid-role-1234",
"name": "Accountant",
"profile": "ACCOUNTANT",
"description": "Role with access to financial reports",
"recommendation": "Recommended for accounting professionals",
"users": 100,
"createdAt": "2025-06-15T10:30:00.000Z",
"updatedAt": "2025-07-01T14:00:00.000Z",
"deletedAt": "2025-08-01T12:00:00.000Z",
"claims": [
{
"id": "uuid-group-1234",
"name": "Transfers",
"permissions": [
{
"id": "uuid-claim-1234",
"slug": "consultar_dados_cartoes",
"name": "View card data"
}
]
}
]
}
]
}
{
"error": "Bad Request",
"message": "The request contains invalid parameters or malformed data",
"code": 400,
"details": [
{
"field": "email",
"message": "Invalid email format"
}
]
}
{
"error": "Unauthorized",
"message": "Authentication required. Please provide a valid API token",
"code": 401
}
{
"error": "Not Found",
"message": "The requested resource was not found",
"code": 404
}
{
"error": "Internal Server Error",
"message": "An unexpected error occurred on the server",
"code": 500,
"requestId": "req_1234567890"
}
/users/v1/roles
Bearer token from OAuth 2.0 client credentials. Format: Bearer {token}
Bearer {token}Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token. Bearer token from OAuth 2.0 client credentials. Format: Bearer {token}
Responses
List of roles.
Role ID.
Role display name.
Role profile type.
CUSTOM_PROFILEDEVELOPERCARD_USERCARD_MANAGERRESPONSIBLEMAINACCOUNTANTRole description.
Note on who should use the role.
Users assigned to the role.
When the role was created.
When the role was last updated.
When the role was removed.
Claim groups assigned to the role.
Claim group ID.
Claim group name.
Permissions in the group.
Permission (claim) ID.
Permission slug.
Permission display name.
Invalid request. Check parameters, body, format, or business rules.
Unauthorized. Token missing, invalid, or expired.
Resource not found. Check IDs, paths, and permissions.
Internal server error. Retry with exponential backoff.
Last updated today
Built with Documentation.AI