Security, Users & Audit
Content security permissions, user account management, granular user data deletion, and audit history.
Security, Users & Audit
Overview
The Security, Users & Audit APIs provide administrative endpoints for managing content security permissions, user accounts and data, and reviewing audit history.
Base Routes
| Route Prefix | Description |
|---|---|
/admin/security | Content security settings and user account management |
/admin/user | User data deletion and cleanup operations |
/admin/audit | Content audit history |
Content Security
Update Security Settings
POST /admin/security/{id}/update
Request body: SecurityModel { securityGroups, securityUsers, inheritSecurity }
Response: IdModel
Replaces the security configuration for a content item. Security groups and users control who can access the content. The inheritSecurity flag determines whether the item inherits permissions from its parent in the content hierarchy.
User Account Management
List All Users
GET /admin/security/user
Response: ListResultModel<AdminUserModel>
Retrieves all users registered in the identity provider. To retrieve all users including those not in the identity provider, use the Search API instead.
Get User by ID
GET /admin/security/user/{id}
Response: AdminUserModel
Returns the full user profile including security groups, system roles, personal folder, and home folder assignments.
Get User by Email
GET /admin/security/user/by-email/{email}
Response: AdminUserModel
Looks up a user by their email address and returns the full profile.
Create or Update User
POST /admin/security/user
Request body: AdminUserModel
Response: AdminUserModel
PUT /admin/security/user/{id}
Request body: AdminUserModel
Response: AdminUserModel
Both endpoints create a new user if one does not exist, or update an existing user. The POST and PUT variants are functionally equivalent.
Delete User (Security Controller)
DELETE /admin/security/user/{id}
Response: IdModel
Permanently removes a user from the identity provider and the system.
User Data Management
The User Data Management API provides granular control over deleting specific categories of user-generated data. All endpoints accept an optional userId parameter; if omitted, the operation targets the current user's data.
Delete User and All Data
DELETE /admin/user/{userId}
Response: 200 OK
Permanently deletes a user account and all associated data.
Delete User Data Only
DELETE /admin/user/userData/{userId?}
Response: 200 OK
Deletes all user-generated data (video tracking, content attributes, saved searches, content groups, favorites, likes, etc.) while preserving the user account. Requires administrator privileges.
Granular Data Deletion
| Endpoint | Method | Description |
|---|---|---|
/admin/user/userVideoTracking/delete | POST | Delete video tracking records (body: UserVideoTrackingModel) |
/admin/user/userContentSecurity/delete | POST | Delete content security records (body: UserContentSecurityModel) |
/admin/user/savedSearch/{userId?} | DELETE | Delete all saved searches |
/admin/user/userSession/{userId?} | DELETE | Delete all user sessions |
/admin/user/contentGroup/{userId?} | DELETE | Delete all content groups |
/admin/user/userContentAttribute/{userId?} | DELETE | Delete all content attributes |
/admin/user/favorite/{userId?} | DELETE | Delete all favorites |
/admin/user/like/{userId?} | DELETE | Delete all likes |
/admin/user/dislike/{userId?} | DELETE | Delete all dislikes |
/admin/user/shares/{userId?} | DELETE | Delete all shares |
Video Tracking Deletion
The video tracking deletion endpoint supports flexible filtering by combining criteria:
POST /admin/user/userVideoTracking/delete
Request body: UserVideoTrackingModel { userId, assetId, contentId }
- userId only: Deletes all video tracking for the user
- assetId only: Deletes all tracking for the asset
- contentId only: Deletes all tracking for the content item
- Combined: Filters can be combined to target specific records
Content Security Deletion
POST /admin/user/userContentSecurity/delete
Request body: UserContentSecurityModel { userId, contentId, contentDefinitionId }
Supports the same flexible filtering approach as video tracking deletion.
Audit History
GET /admin/audit/{contentId}
Response: List<HistoryEntityResponseModel>
Retrieves the chronological list of audit events for a content item. Each entry includes the action performed, who performed it, and when it occurred. This endpoint does not require authorization.
Common Error Responses
| Status Code | Description |
|---|---|
| 400 | Bad Request - Missing or invalid parameters |
| 401 | Unauthorized - Missing or invalid Bearer token |
| 404 | Not Found - User or resource not found |
