Configuration

GET /api/v2/configuration/groups

List configuration groups

Retrieves all configuration groups with pagination and optional keyword filtering

Query Parameters:
  • keyword (string) – Filter groups by keyword

  • page (integer) – Page number (default: 1)

  • page_size (integer) – Page size (default: 50, max: 100)

Status Codes:
GET /api/v2/configuration/list

List configurations

Retrieves configurations with advanced filtering and pagination. Search terms are matched against transformed configuration names and descriptions.

Query Parameters:
  • name (string) – Exact configuration name

  • category (string) – Filter by category

  • group (string) – Filter by group

  • subgroup (string) – Filter by subgroup

  • keyword (string) – Search keyword (searches in name, description, and display text)

  • clusterid (string) – Filter by cluster ID

  • page (integer) – Page number (default: 1)

  • page_size (integer) – Page size (default: 50, max: 100)

  • listall (boolean) – List all configurations (default: true)

Status Codes:
GET /api/v2/configuration/status

Health check

Returns the health status of the Configuration Manager API service

Status Codes:
  • 200 OK – Service is healthy and operational

PUT /api/v2/configuration/update

Update configuration value

Updates a configuration value and logs the change to audit history

Request JSON Object:
  • accountid (string)

  • clusterid (string)

  • domainid (string)

  • imagestoreuuid (string)

  • name (string) – (required)

  • storageid (string)

  • value (string) – (required)

  • zoneid (string)

Status Codes:
GET /configuration/smtp

Get the SMTP relay configuration

Returns the persisted SMTP settings so the admin UI can pre-populate its form. Password is never returned — has_password reports whether one has been set. When no config has been saved yet, configured=false and every string field is empty.

Status Codes:
Response JSON Object:
  • configured (boolean)

  • encryption (string)

  • from_address (string)

  • has_password (boolean)

  • host (string)

  • port (integer)

  • username (string)

POST /configuration/smtp

Save the SMTP relay configuration

Persists the six SMTP settings (host, port, username, password, from_address, encryption) into public.smtp_config as a singleton row (ID=1). Validates the payload with mail.Config.ValidateStrict before writing — a rejected payload never touches storage.

Request JSON Object:
  • encryption (string) – “none” | “starttls” | “ssl”; empty defaults to STARTTLS

  • from_address (string) – (required)

  • host (string) – (required)

  • password (string)

  • port (integer) – (required)

  • username (string)

Status Codes:
POST /configuration/smtp/test

Test the SMTP relay connection

Overlays the request body on the persisted SMTP config, validates, and dials the relay. When send_probe=true a single test message is delivered to probe_recipient (or to the from_address if that is empty). Returns success=true on clean handshake, or {success:false, error:…} with the offending stage described.

Request JSON Object:
  • encryption (string)

  • from_address (string)

  • host (string)

  • password (string)

  • port (integer)

  • probe_recipient (string) – empty defaults to self-loop

  • send_probe (boolean)

  • username (string)

Status Codes: