curl --location 'https://your-cloud-id.threataware.com/public-api/v1/settings/usermanagement/users?limit=10' \
--header 'Accept: application/json' \
--header 'X-ThreatAware-ApiKey: your-api-key-here'
import requests
API_KEY = "your-api-key-here"
CLOUD_ID = "sandbox"
BASE_URL = f"https://{CLOUD_ID}.threataware.com/public-api/v1"
headers = {
"Accept": "application/json",
"X-ThreatAware-ApiKey": API_KEY
}
response = requests.get(
f"{BASE_URL}/settings/usermanagement/users",
headers=headers,
params={"limit": 10}
)
users = response.json()
print(f"Retrieved {len(users['data'])} portal users")
# Example: Find users without MFA
no_mfa = [u for u in users['data'] if u['mfastatus'] != 'enabled']
print(f"Users without MFA: {len(no_mfa)}")
const axios = require('axios');
const API_KEY = 'your-api-key-here';
const CLOUD_ID = 'sandbox';
const BASE_URL = `https://${CLOUD_ID}.threataware.com/public-api/v1`;
axios.get(`${BASE_URL}/settings/usermanagement/users`, {
headers: {
'Accept': 'application/json',
'X-ThreatAware-ApiKey': API_KEY
},
params: { limit: 10 }
})
.then(response => {
console.log(`Retrieved ${response.data.data.length} portal users`);
});
$ApiKey = "your-api-key-here"
$CloudId = "sandbox"
$BaseUrl = "https://$CloudId.threataware.com/public-api/v1"
$Headers = @{
"Accept" = "application/json"
"X-ThreatAware-ApiKey" = $ApiKey
}
$Response = Invoke-RestMethod `
-Uri "$BaseUrl/settings/usermanagement/users?limit=10" `
-Headers $Headers `
-Method Get
Write-Host "Retrieved $($Response.data.Count) portal users"
{
"offset": 0,
"limit": 1,
"total": 10,
"data": [
{
"username": "sara.harris@company.com",
"name": "Sara",
"surname": "Harris",
"roleid": "analyst",
"mfastatus": "enabled",
"enabled": true,
"ssostatus": "enabled",
"currentteams": [
{
"id": "e0dc1b5d-61ef-4b6f-9603-2e19f0f69ab4",
"name": "Asset Governance"
},
{
"id": "d1ae6609-2bbc-480c-a484-4b271f54e2ba",
"name": "IT Service Desk"
},
{
"id": "a84d8017-8705-4c6d-ae73-ea2b87dc9c9c",
"name": "SecOps"
},
{
"id": "f726d4d6-c9be-4d45-b5ec-2a9b70a8589f",
"name": "Data Compliance"
}
]
}
],
"success": true,
"statusCode": 200,
"message": "Successfully retrieved users."
}
Settings & Management
Get Portal Users
Retrieve data for all users registered on the ThreatAware platform
GET
/
public-api
/
v1
/
settings
/
usermanagement
/
users
curl --location 'https://your-cloud-id.threataware.com/public-api/v1/settings/usermanagement/users?limit=10' \
--header 'Accept: application/json' \
--header 'X-ThreatAware-ApiKey: your-api-key-here'
import requests
API_KEY = "your-api-key-here"
CLOUD_ID = "sandbox"
BASE_URL = f"https://{CLOUD_ID}.threataware.com/public-api/v1"
headers = {
"Accept": "application/json",
"X-ThreatAware-ApiKey": API_KEY
}
response = requests.get(
f"{BASE_URL}/settings/usermanagement/users",
headers=headers,
params={"limit": 10}
)
users = response.json()
print(f"Retrieved {len(users['data'])} portal users")
# Example: Find users without MFA
no_mfa = [u for u in users['data'] if u['mfastatus'] != 'enabled']
print(f"Users without MFA: {len(no_mfa)}")
const axios = require('axios');
const API_KEY = 'your-api-key-here';
const CLOUD_ID = 'sandbox';
const BASE_URL = `https://${CLOUD_ID}.threataware.com/public-api/v1`;
axios.get(`${BASE_URL}/settings/usermanagement/users`, {
headers: {
'Accept': 'application/json',
'X-ThreatAware-ApiKey': API_KEY
},
params: { limit: 10 }
})
.then(response => {
console.log(`Retrieved ${response.data.data.length} portal users`);
});
$ApiKey = "your-api-key-here"
$CloudId = "sandbox"
$BaseUrl = "https://$CloudId.threataware.com/public-api/v1"
$Headers = @{
"Accept" = "application/json"
"X-ThreatAware-ApiKey" = $ApiKey
}
$Response = Invoke-RestMethod `
-Uri "$BaseUrl/settings/usermanagement/users?limit=10" `
-Headers $Headers `
-Method Get
Write-Host "Retrieved $($Response.data.Count) portal users"
{
"offset": 0,
"limit": 1,
"total": 10,
"data": [
{
"username": "sara.harris@company.com",
"name": "Sara",
"surname": "Harris",
"roleid": "analyst",
"mfastatus": "enabled",
"enabled": true,
"ssostatus": "enabled",
"currentteams": [
{
"id": "e0dc1b5d-61ef-4b6f-9603-2e19f0f69ab4",
"name": "Asset Governance"
},
{
"id": "d1ae6609-2bbc-480c-a484-4b271f54e2ba",
"name": "IT Service Desk"
},
{
"id": "a84d8017-8705-4c6d-ae73-ea2b87dc9c9c",
"name": "SecOps"
},
{
"id": "f726d4d6-c9be-4d45-b5ec-2a9b70a8589f",
"name": "Data Compliance"
}
]
}
],
"success": true,
"statusCode": 200,
"message": "Successfully retrieved users."
}
Overview
The Portal Users endpoint provides access to user accounts that have been created within the ThreatAware platform itself (not to be confused with the/users endpoint which returns user data from integrated directory services).
Difference from
/users endpoint:/users- Returns user data from Active Directory, Azure AD, etc. (directory services)/settings/usermanagement/users- Returns ThreatAware portal user accounts
Parameters
number
default:"0"
Set the start position of the data returned by the API
number
default:"0"
Limit each request by the provided number. Leave blank or as 0 to return all data available
Authentication
string
required
Your ThreatAware API key
string
default:"application/json"
Response format
Response
number
The starting position of this result set
number
The number of results returned
number
Total number of portal users
boolean
Whether the request was successful
number
HTTP status code
string
Status message
array
Show Portal User Object
Show Portal User Object
string
Email address / username
string
First name
string
Last name
string
Role identifier (e.g.,
superAdmin, analyst, viewer)string
MFA status:
enabled or disabledboolean
Whether the user account is active
string
SSO status:
enabled or disabledcurl --location 'https://your-cloud-id.threataware.com/public-api/v1/settings/usermanagement/users?limit=10' \
--header 'Accept: application/json' \
--header 'X-ThreatAware-ApiKey: your-api-key-here'
import requests
API_KEY = "your-api-key-here"
CLOUD_ID = "sandbox"
BASE_URL = f"https://{CLOUD_ID}.threataware.com/public-api/v1"
headers = {
"Accept": "application/json",
"X-ThreatAware-ApiKey": API_KEY
}
response = requests.get(
f"{BASE_URL}/settings/usermanagement/users",
headers=headers,
params={"limit": 10}
)
users = response.json()
print(f"Retrieved {len(users['data'])} portal users")
# Example: Find users without MFA
no_mfa = [u for u in users['data'] if u['mfastatus'] != 'enabled']
print(f"Users without MFA: {len(no_mfa)}")
const axios = require('axios');
const API_KEY = 'your-api-key-here';
const CLOUD_ID = 'sandbox';
const BASE_URL = `https://${CLOUD_ID}.threataware.com/public-api/v1`;
axios.get(`${BASE_URL}/settings/usermanagement/users`, {
headers: {
'Accept': 'application/json',
'X-ThreatAware-ApiKey': API_KEY
},
params: { limit: 10 }
})
.then(response => {
console.log(`Retrieved ${response.data.data.length} portal users`);
});
$ApiKey = "your-api-key-here"
$CloudId = "sandbox"
$BaseUrl = "https://$CloudId.threataware.com/public-api/v1"
$Headers = @{
"Accept" = "application/json"
"X-ThreatAware-ApiKey" = $ApiKey
}
$Response = Invoke-RestMethod `
-Uri "$BaseUrl/settings/usermanagement/users?limit=10" `
-Headers $Headers `
-Method Get
Write-Host "Retrieved $($Response.data.Count) portal users"
{
"offset": 0,
"limit": 1,
"total": 10,
"data": [
{
"username": "sara.harris@company.com",
"name": "Sara",
"surname": "Harris",
"roleid": "analyst",
"mfastatus": "enabled",
"enabled": true,
"ssostatus": "enabled",
"currentteams": [
{
"id": "e0dc1b5d-61ef-4b6f-9603-2e19f0f69ab4",
"name": "Asset Governance"
},
{
"id": "d1ae6609-2bbc-480c-a484-4b271f54e2ba",
"name": "IT Service Desk"
},
{
"id": "a84d8017-8705-4c6d-ae73-ea2b87dc9c9c",
"name": "SecOps"
},
{
"id": "f726d4d6-c9be-4d45-b5ec-2a9b70a8589f",
"name": "Data Compliance"
}
]
}
],
"success": true,
"statusCode": 200,
"message": "Successfully retrieved users."
}
Use Cases
User Access Auditing
Track who has access to the ThreatAware portal and their permissions
MFA Compliance
Identify portal users without MFA enabled
Team Membership
Export user-to-team mappings for access reviews
SSO Adoption
Monitor SSO enablement across portal users
Related Endpoints
Get Roles
Retrieve role definitions and permissions
Get Teams
Retrieve team definitions and members