Skip to main content

Admin API

The Admin API provides comprehensive administrative functions for system management, user administration, monitoring, and maintenance operations. These endpoints require elevated permissions and are designed for system administrators and operators.

Authentication

All admin endpoints require elevated permissions and authentication:

Rate Limits

User Management

List Users

Retrieve all users in the system. Endpoint: GET /admin/users Query Parameters:
  • status (string): Filter by status (active, inactive, suspended)
  • role (string): Filter by user role
  • created_after (string): Filter users created after timestamp
  • created_before (string): Filter users created before timestamp
  • limit (integer, default: 50, max: 200): Results per page
  • offset (integer, default: 0): Pagination offset
Response:

Create User

Create a new user account. Endpoint: POST /admin/users Request Body:
Parameters:
  • email (string, required): User email address
  • name (string, required): User name
  • password (string, required): User password
  • role (string, required): User role (admin, editor, viewer, agent, user)
  • organization (string, optional): Organization name
  • department (string, optional): Department name
  • permissions (array, optional): User permissions
  • metadata (object, optional): Additional user metadata
Response:

Get User

Retrieve a specific user by ID. Endpoint: GET /admin/users/{id} Response:

Update User

Update an existing user’s information. Endpoint: PUT /admin/users/{id} Request Body:

Delete User

Delete a user account. Endpoint: DELETE /admin/users/{id} Request Body:
Parameters:
  • reason (string, required): Deletion reason
  • transfer_data (boolean, default: false): Transfer user data to another user
  • transfer_to (string, optional): Target user ID for data transfer
Response:

Suspend User

Suspend a user account. Endpoint: POST /admin/users/{id}/suspend Request Body:
Parameters:
  • reason (string, required): Suspension reason
  • duration_hours (integer, optional): Suspension duration
  • notify_user (boolean, default: true): Notify user of suspension

Activate User

Activate a suspended or inactive user. Endpoint: POST /admin/users/{id}/activate Request Body:

User Invitations

Create Invite

Create a user invitation. Endpoint: POST /admin/invites Request Body:
Parameters:
  • email (string, required): Invite email address
  • name (string, required): Invite name
  • role (string, required): User role
  • permissions (array, required): User permissions
  • expires_in_days (integer, default: 7): Invitation expiration
  • send_email (boolean, default: true): Send invitation email
  • metadata (object, optional): Additional metadata
Response:

List Invites

Retrieve all user invitations. Endpoint: GET /admin/invites Query Parameters:
  • status (string): Filter by status (pending, accepted, expired)
  • email (string): Filter by email
  • limit (integer, default: 50, max: 200): Results per page
  • offset (integer, default: 0): Pagination offset

Get Invite

Retrieve a specific invitation by ID. Endpoint: GET /admin/invites/{id}

Accept Invite

Accept a user invitation. Endpoint: POST /admin/invites/{id}/accept Request Body:
Parameters:
  • password (string, required): User password
  • accept_terms (boolean, required): Accept terms of service

Cancel Invite

Cancel a pending invitation. Endpoint: DELETE /admin/invites/{id} Request Body:

System Monitoring

System Health

Get comprehensive system health status. Endpoint: GET /admin/health Response:

System Metrics

Get detailed system performance metrics. Endpoint: GET /admin/metrics Response:

System Logs

Retrieve system logs for debugging and monitoring. Endpoint: GET /admin/logs Query Parameters:
  • level (string): Filter by log level (error, warn, info, debug)
  • service (string): Filter by service (api, database, cache, etc.)
  • start_time (string): Start time filter
  • end_time (string): End time filter
  • limit (integer, default: 100, max: 500): Results per page
  • offset (integer, default: 0): Pagination offset
Response:

Maintenance Operations

System Cleanup

Perform system cleanup operations. Endpoint: POST /admin/cleanup Request Body:
Parameters:
  • operations (array, required): Cleanup operations to perform
  • dry_run (boolean, default: false): Dry run mode (no actual changes)
  • older_than_days (integer, default: 30): Age threshold for cleanup
Response:

System Sync

Perform system synchronization. Endpoint: POST /admin/sync Request Body:
Parameters:
  • components (array, required): Components to sync
  • full_sync (boolean, default: false): Perform full sync
  • force_sync (boolean, default: false): Force sync even if not needed
Response:

System Backup

Create a system backup. Endpoint: POST /admin/backup Request Body:
Parameters:
  • components (array, required): Components to backup
  • include_logs (boolean, default: false): Include system logs
  • compression_enabled (boolean, default: true): Enable compression
  • retention_days (integer, default: 30): Backup retention period
Response:

Error Handling

Common Error Responses

Error Codes

Best Practices

User Management

  1. Principle of Least Privilege: Grant minimal necessary permissions
  2. Regular Audits: Review user permissions regularly
  3. Secure Passwords: Enforce strong password policies
  4. Two-Factor Authentication: Enable 2FA for all users
  5. Session Management: Implement proper session timeouts

System Monitoring

  1. Health Checks: Monitor system health regularly
  2. Performance Metrics: Track performance metrics continuously
  3. Error Tracking: Monitor and track error rates
  4. Resource Usage: Monitor CPU, memory, and disk usage
  5. Alerting: Set up alerts for critical issues

Maintenance Operations

  1. Regular Backups: Perform regular backups
  2. Cleanup Schedules: Schedule regular cleanup operations
  3. Testing: Test maintenance operations in staging
  4. Documentation: Document maintenance procedures
  5. Monitoring: Monitor maintenance operation results

Security

  1. Access Control: Implement strict access controls for admin endpoints
  2. Audit Logging: Enable comprehensive audit logging
  3. Encryption: Encrypt sensitive data at rest and in transit
  4. Network Security: Implement proper network security measures
  5. Regular Updates: Keep systems regularly updated

Performance Optimization

  1. Database Optimization: Optimize database queries
  2. Caching: Implement appropriate caching strategies
  3. Load Balancing: Use load balancing for high availability
  4. Resource Management: Monitor and manage system resources
  5. Scalability: Plan for system scaling