System API

Documentation for the System API, providing endpoints for managing system-level functionalities.

GET /system/status

Retrieves the current status of the system.

Request

No request body is required.

Parameters

None.

Response

Returns a JSON object with system status information.


{
  "status": "operational",
  "uptime": "15 days, 4 hours, 30 minutes",
  "load_average": [0.75, 0.80, 0.85],
  "memory_usage_percent": 45.2,
  "disk_usage_percent": 60.1
}
            
POST /system/config

Updates the system configuration. This operation may require administrative privileges.

Request

The request body should be a JSON object containing the configuration parameters to update.

Parameters

Name Type Required Description
log_level string No The new logging level (e.g., "debug", "info", "warn", "error").
max_connections integer No The maximum number of concurrent connections allowed.
timeout_seconds integer No The default request timeout in seconds.

Request Body Example


{
  "log_level": "info",
  "max_connections": 500
}
            

Response

Returns a confirmation message upon successful update.


{
  "message": "System configuration updated successfully.",
  "updated_fields": ["log_level", "max_connections"]
}
            

Returns an error if validation fails or if the user lacks permissions.


{
  "error": "Invalid configuration value for log_level."
}
            
GET /system/logs

Retrieves system logs. Supports filtering and pagination.

Request

Optional query parameters can be used to filter and paginate logs.

Parameters

Name Type Required Description
level string No Filter logs by level (e.g., "error", "warn", "info").
since timestamp No Filter logs generated after this timestamp (ISO 8601 format).
limit integer No Maximum number of log entries to return. Defaults to 50.
offset integer No Number of log entries to skip for pagination. Defaults to 0.

Query Example

GET /system/logs?level=error&since=2023-10-27T10:00:00Z&limit=20

Response

Returns a JSON array of log entries.


[
  {
    "timestamp": "2023-10-27T11:15:30Z",
    "level": "error",
    "message": "Database connection failed: Timeout expired.",
    "source": "database_module"
  },
  {
    "timestamp": "2023-10-27T11:16:05Z",
    "level": "warn",
    "message": "High CPU usage detected.",
    "source": "system_monitor"
  }
]