Appearance
API Endpoints Reference
This document provides a comprehensive reference of all available API endpoints organized by category.
Authentication Endpoints
User Authentication
POST /v2/authentication/token
- Authenticate with user credentials
- Returns JWT token for authenticated requests
- Headers:
x-access-key,x-secret-key
POST /v2/authentication/token/refresh
- Refresh an expired JWT token
- Headers:
x-access-key,x-secret-key
GET /v2/authentication/jwt-public-key
- Retrieve the public key for JWT validation
POST /v2/authentication/device-token
- Generate a device token for device-to-server communication
- Headers:
x-access-key,x-secret-key
Access Key Management
GET /v2/access-keys
- List all access keys for your organization
- Query params:
take,skip
POST /v2/access-keys
- Create a new access key
- Body:
{ "description": "string" }
PUT /v2/access-keys/{access_key}
- Update an access key
- Body:
{ "enabled": boolean }
DELETE /v2/access-keys/{access_key}
- Revoke an access key
Secret Key Management
GET /v2/secret-keys
- List all secret keys
- Query params:
take,skip
POST /v2/secret-keys
- Generate a new secret key
- Body:
{ "description": "string" }
DELETE /v2/secret-keys/{secret_key}
- Revoke a secret key
Fleet Management Endpoints
Devices
GET /v2/devices
- List all devices
- Query params:
take,skip,search
POST /v2/devices
- Create a new device
- Body: device configuration
GET /v2/devices/{id}
- Retrieve a specific device
PUT /v2/devices/{id}
- Update device configuration
- Body: partial device configuration
DELETE /v2/devices/{id}
- Remove a device from fleet
POST /v2/devices/{id}/sync
- Force device synchronization
- Returns immediately, sync happens asynchronously
POST /v2/devices/{id}/lock
- Lock a device remotely
- Returns: lock confirmation
POST /v2/devices/{id}/unlock
- Unlock a device remotely
- Returns: unlock confirmation
Device Applications
GET /v2/devices/{id}/applications
- List installed applications on a device
- Query params:
take,skip,search
GET /v2/devices/{id}/applications/{deviceApplicationId}
- Get details of a specific installed application
Device Messages
GET /v2/devices/{id}/messages
- Retrieve messages sent to a device
- Query params:
take,skip
POST /v2/devices/{id}/messages
- Send a message to a device
- Body:
{ "title": "string", "body": "string", "priority": "high|normal|low" }
Device Status
GET /v2/devices/{id}/status-events
- Get status event history for a device
- Query params:
take,skip
GET /v2/device-status-events
- List all device status events across fleet
- Query params:
take,skip,deviceId,type
Device URLs
GET /v2/devices/{id}/blocked-urls
- Get list of blocked URLs on a device
- Query params:
take,skip
Notification Templates
GET /v2/devices/notification-templates
- List notification templates
- Query params:
take,skip
POST /v2/devices/notification-templates
- Create a new notification template
- Body: template configuration
GET /v2/devices/notification-templates/{deviceNotificationTemplateId}
- Get a specific notification template
PUT /v2/devices/notification-templates/{deviceNotificationTemplateId}
- Update a notification template
DELETE /v2/devices/notification-templates/{deviceNotificationTemplateId}
- Delete a notification template
Device Group Management Endpoints
Device Groups
GET /v2/device-groups
- List all device groups
- Query params:
take,skip,search
POST /v2/device-groups
- Create a new device group
- Body:
{ "name": "string", "description": "string" }
GET /v2/device-groups/{id}
- Get device group details
PUT /v2/device-groups/{id}
- Update device group
- Body:
{ "name": "string", "description": "string" }
DELETE /v2/device-groups/{id}
- Delete a device group
Device Group Devices
GET /v2/device-groups/{id}/devices
- List devices in a group
- Query params:
take,skip
POST /v2/device-groups/{id}/devices
- Add devices to a group
- Body:
{ "deviceIds": ["id1", "id2"] }
DELETE /v2/device-groups/{id}/devices
- Remove devices from a group
- Body:
{ "deviceIds": ["id1", "id2"] }
Device Group Configuration
GET /v2/device-groups/{id}/agent-configuration
- Get agent configuration for the group
PUT /v2/device-groups/{id}/agent-configuration
- Set agent configuration for the group
- Body:
{ "configurationId": "string" }
Device Group Enrollment
GET /v2/device-groups/{id}/enrollment-code
- Get or generate enrollment code
- Returns:
{ "code": "string", "expiresAt": "ISO8601", "maxUses": number }
POST /v2/device-groups/{id}/enrollment-code
- Create a new enrollment code
- Body:
{ "expiresIn": number, "maxUses": number }
DELETE /v2/device-groups/{id}/enrollment-code
- Revoke enrollment code
Device Group Messages
POST /v2/device-groups/{id}/messages
- Send message to all devices in group
- Body:
{ "title": "string", "body": "string", "priority": "high|normal|low" }
Device Group Hierarchies
GET /v2/device-groups-hierarchies
- Get hierarchical structure of device groups
- Query params:
take,skip
Enrollment Endpoints
Enrollment Certificates
POST /v2/enrollments/certificates
- Upload an enrollment certificate
- Body: certificate data
Device Couplings
POST /v2/enrollments/couplings
- Pre-register a device for zero-touch enrollment
- Body:
{ "deviceGroupId": "string", "serialNumber": "string", "deviceType": "android|ios" }
Statistics Endpoints
Instant Statistics
GET /v2/statistics
- Get current fleet statistics
- Returns: device counts, application counts, threat statistics
Statistics History
GET /v2/statistics/history
- Get historical statistics data
- Query params:
take,skip,startDate,endDate,ascending
Applications Management Endpoints
Applications
GET /v2/applications
- List applications in your catalog
- Query params:
take,skip,search
POST /v2/applications
- Add application to catalog
- Body: application details
GET /v2/applications/{id}
- Get application details
GET /v2/applications/{id}/devices
- List devices with a specific application installed
Application Binaries
GET /v2/application-binaries
- List application binaries
- Query params:
take,skip
POST /v2/application-binaries
- Upload application binary for analysis
- Body: multipart/form-data with binary file
GET /v2/application-binaries/{id}
- Get binary details
On-Device Applications
GET /v2/applications/on-device
- Get applications currently installed on devices
- Query params:
take,skip,deviceId
Application Packages
GET /v2/applications/packages
- List application packages
- Query params:
take,skip
Application Reports Endpoints
GET /v2/application-reports/{id}
- Get application analysis report
GET /v2/application-reports/{id}/accesses
- Get data access information
GET /v2/application-reports/{id}/accesses/{data}/matches
- Get specific data access matches
GET /v2/application-reports/{id}/analyses
- Get analysis details
GET /v2/application-reports/{id}/communications
- Get communication patterns
GET /v2/application-reports/{id}/components
- Get application components
GET /v2/application-reports/{id}/features
- Get application features
GET /v2/application-reports/{id}/features/{name}/matches
- Get feature usage matches
GET /v2/application-reports/{id}/leaks
- Get potential data leaks
GET /v2/application-reports/{id}/libraries
- Get third-party libraries
GET /v2/application-reports/{id}/permission-requests
- Get permission requests
GET /v2/application-reports/{id}/vulnerabilities
- Get detected vulnerabilities
Centralized Applications Store
POST /v2/applications-catalog/upload
- Upload application for analysis
- Content-Type: multipart/form-data
POST /v2/applications-catalog/search
- Search applications in database
- Body: search parameters
GET /v2/applications-catalog/uploaded-packages
- List uploaded packages
- Query params:
take,skip
GET /v2/applications-catalog/search/{id}/applications-packages
- Get packages for search result
GET /v2/applications-catalog/application-packages/{id}/applications
- List applications in package
- Query params:
take,skip,isUploaded,searchInVersion
GET /v2/applications-catalog/analyses/{id}/report
- Download analysis report
Policies Management Endpoints
Detection Policies
GET /v2/detection-policies
- List detection policies
- Query params:
take,skip
POST /v2/detection-policies
- Create detection policy
- Body: policy configuration
GET /v2/detection-policies/{id}
- Get policy details
PUT /v2/detection-policies/{id}
- Update policy
DELETE /v2/detection-policies/{id}
- Delete policy
Response Policies
GET /v2/response-policies
- List response policies
- Query params:
take,skip
POST /v2/response-policies
- Create response policy
- Body: policy configuration
GET /v2/response-policies/{id}
- Get policy details
PUT /v2/response-policies/{id}
- Update policy
DELETE /v2/response-policies/{id}
- Delete policy
Response Policy Rulesets
GET /v2/response-policies/{id}/rulesets
- List rulesets for policy
- Query params:
take,skip
POST /v2/response-policies/{id}/rulesets
- Create ruleset
- Body: ruleset configuration
GET /v2/response-policies/{id}/rulesets/{rulesetId}
- Get ruleset details
PUT /v2/response-policies/{id}/rulesets/{rulesetId}
- Update ruleset
DELETE /v2/response-policies/{id}/rulesets/{rulesetId}
- Delete ruleset
Ruleset Assignments
GET /v2/response-policies/{id}/rulesets/{rulesetId}/assignments
- List assignments for ruleset
- Query params:
take,skip
POST /v2/response-policies/{id}/rulesets/{rulesetId}/assignments
- Create assignment
- Body: assignment configuration
GET /v2/response-policies/{id}/rulesets/{rulesetId}/assignments/{rulesetAssignmentId}
- Get assignment details
DELETE /v2/response-policies/{id}/rulesets/{rulesetId}/assignments/{rulesetAssignmentId}
- Delete assignment
Device Rules
GET /v2/response-policies/{id}/rulesets/{rulesetId}/device-rules
- List device rules
- Query params:
take,skip
POST /v2/response-policies/{id}/rulesets/{rulesetId}/device-rules
- Create device rule
- Body: rule configuration
GET /v2/response-policies/{id}/rulesets/{rulesetId}/device-rules/{deviceRuleId}
- Get rule details
PUT /v2/response-policies/{id}/rulesets/{rulesetId}/device-rules/{deviceRuleId}
- Update rule
DELETE /v2/response-policies/{id}/rulesets/{rulesetId}/device-rules/{deviceRuleId}
- Delete rule
Device Application Rules
GET /v2/response-policies/{id}/rulesets/{rulesetId}/device-application-rules
- List device application rules
- Query params:
take,skip
POST /v2/response-policies/{id}/rulesets/{rulesetId}/device-application-rules
- Create device application rule
- Body: rule configuration
GET /v2/response-policies/{id}/rulesets/{rulesetId}/device-application-rules/{deviceApplicationRuleId}
- Get rule details
PUT /v2/response-policies/{id}/rulesets/{rulesetId}/device-application-rules/{deviceApplicationRuleId}
- Update rule
DELETE /v2/response-policies/{id}/rulesets/{rulesetId}/device-application-rules/{deviceApplicationRuleId}
- Delete rule
Tag Management Endpoints
GET /v2/tags
- List tags
- Query params:
take,skip
POST /v2/tags
- Create tag
- Body:
{ "name": "string", "color": "string" }
GET /v2/tags/{id}
- Get tag details
PUT /v2/tags/{id}
- Update tag
DELETE /v2/tags/{id}
- Delete tag
GET /v2/tags/{id}/devices
- List devices with tag
PUT /v2/tags/{id}/devices
- Add devices to tag
- Body:
{ "deviceIds": ["id1", "id2"] }
DELETE /v2/tags/{id}/devices
- Remove devices from tag
- Body:
{ "deviceIds": ["id1", "id2"] }
GET /v2/tags/{id}/device-rules
- Get tag device rules
- Query params:
take,skip
PUT /v2/tags/device/{deviceId}
- Apply tags to device
- Body:
{ "tagIds": ["id1", "id2"] }
Administration Endpoints
Account Management
GET /v2/account
- Get current user account information
PUT /v2/account
- Update account details
- Body: account configuration
PUT /v2/account/password
- Change account password
- Body:
{ "currentPassword": "string", "newPassword": "string" }
Company Management
GET /v2/company
- Get company information
PUT /v2/company
- Update company information
GET /v2/company/tree
- Get company hierarchy
GET /v2/company/sub-companies
- List sub-companies
POST /v2/company/sub-companies
- Create sub-company
GET /v2/companies
- List all companies (admin only)
POST /v2/companies/{id}/token
- Generate token for company
License Management
GET /v2/company/assignable-commercial-licenses
- List available commercial licenses
GET /v2/company/commercial-license
- Get company commercial license
POST /v2/company/commercial-license
- Create commercial license
PUT /v2/company/commercial-license
- Update commercial license
GET /v2/company/commercial-license/sub-commercial-licenses
- List sub-licenses
GET /v2/company/commercial-license/sub-commercial-licenses/{id}
- Get sub-license details
PUT /v2/company/commercial-license/sub-commercial-licenses/{id}
- Update sub-license
GET /v2/license-checks
- Check license validity
User Management
GET /v2/users
- List users
- Query params:
take,skip,search
POST /v2/users
- Create new user
- Body: user configuration
GET /v2/users/{id}
- Get user details
PUT /v2/users/{id}
- Update user
- Body: partial user configuration
DELETE /v2/users/{id}
- Delete user
PUT /v2/users/{id}/password
- Reset user password
PUT /v2/users/{id}/is-deactivated
- Deactivate/activate user
PUT /v2/users/{id}/roles
- Update user roles
- Body:
{ "roleIds": ["role1", "role2"] }
GET /v2/users/{id}/invitation-links
- Get user invitation links
POST /v2/users/{id}/invitation-links
- Create invitation link for user
PUT /v2/users/{id}/invitation-links/{linkId}
- Update invitation link
Role Management
GET /v2/roles
- List roles
- Query params:
take,skip
POST /v2/roles
- Create role
- Body: role configuration
GET /v2/roles/{id}
- Get role details
PUT /v2/roles/{id}
- Update role
DELETE /v2/roles/{id}
- Delete role
Contacts
GET /v2/company/contacts
- List company contacts
POST /v2/company/contacts
- Add contact
- Body: contact information
DELETE /v2/company/contacts/{id}
- Remove contact
Company Configuration
GET /v2/company/default-agent-configuration
- Get default agent configuration
PUT /v2/company/default-agent-configuration
- Set default agent configuration
GET /v2/company/device-response-strategy
- Get device response strategy
PUT /v2/company/device-response-strategy
- Update device response strategy
GET /v2/company/device-application-response-strategy
- Get device application response strategy
PUT /v2/company/device-application-response-strategy
- Update device application response strategy
Messages
POST /v2/company/messages
- Send message to company
- Body: message configuration
Additional Endpoints
Health & Status
GET /health
- Health check endpoint
GET /ping
- Ping endpoint to verify connectivity
Events
GET /v2/events
- Get events
- Query params:
take,skip,type,deviceId
Correlation
GET /v2/correlation/{detectionPolicyId}/device/{deviceId}
- Get device correlation data
GET /v2/correlation/{detectionPolicyId}/application/{applicationId}
- Get application correlation data
GET /v2/correlation/device-correlation-history
- Get device correlation history
Knowledge Base
GET /v2/categorized-url
- Get categorized URL information
GET /v2/categorized-url-snapshot
- Get URL categorization snapshot
GET /v2/cell-tower
- Get cell tower information
GET /v2/hardwares
- List device hardware information
- Query params:
take,skip
GET /v2/hardwares/{id}
- Get specific hardware details
GET /v2/hardwares/{id}/lastKnownOperatingSystem
- Get last known OS for hardware
GET /v2/operating-systems
- List operating systems
- Query params:
take,skip
POST /v2/operating-systems
- Add operating system
GET /v2/operating-systems/{id}
- Get OS details
PUT /v2/operating-systems/{id}
- Update OS
DELETE /v2/operating-systems/{id}
- Delete OS
URL Bundles
GET /v2/categorized-url-bundles
- List URL bundles
- Query params:
take,skip
POST /v2/categorized-url-bundles
- Create URL bundle
- Body: bundle configuration
GET /v2/categorized-url-bundles/{id}
- Get bundle details
PUT /v2/categorized-url-bundles/{id}
- Update bundle
DELETE /v2/categorized-url-bundles/{id}
- Delete bundle
GET /v2/categorized-url-bundles/{id}/urls
- List URLs in bundle
- Query params:
take,skip
POST /v2/categorized-url-bundles/{id}/urls
- Add URL to bundle
- Body: URL information
DELETE /v2/categorized-url-bundles/{id}/urls/{urlId}
- Remove URL from bundle
GET /v2/categorized-url-bundles/{id}/handled-companies
- List companies handling bundle
POST /v2/categorized-url-bundles/{id}/handled-companies
- Add company to bundle handlers
DELETE /v2/categorized-url-bundles/{id}/handled-companies
- Remove company from bundle handlers
Query Parameters
Common query parameters used across endpoints:
take(number): Number of items to return (default: 50, max: 500)skip(number): Number of items to skip for pagination (default: 0)search(string): Search term for filteringascending(boolean): Sort orderstartDate(string): Start date in YYYY-MM-DD formatendDate(string): End date in YYYY-MM-DD format
Response Format
All successful API responses return JSON with:
json
{
"data": {
/* response data */
},
"status": "success",
"timestamp": "ISO8601 timestamp"
}Error responses:
json
{
"error": "Error message",
"status": "error",
"code": "ERROR_CODE"
}HTTP Status Codes
200- OK201- Created204- No Content400- Bad Request401- Unauthorized403- Forbidden404- Not Found409- Conflict429- Too Many Requests500- Internal Server Error
