Skip to main content

Settings

The Settings module contains organization-wide configuration, including Cloudonix CPaaS credentials and webhook settings.

Purpose

Use this module to:

  • Connect OPBX to your Cloudonix domain
  • Validate and store API credentials
  • Configure webhook base URLs
  • Generate webhook authentication keys
  • List available outbound trunks
Owner-Only Access

Only users with the Owner role can access and modify Cloudonix settings.

Cloudonix Settings

Cloudonix integration is stored per organization in the cloudonix_settings table. Credentials are encrypted at rest.

Required Fields

FieldDescription
Domain UUIDCloudonix domain UUID
Domain API KeyCloudonix domain API key

Optional Fields

FieldDescription
Webhook Base URLOverride URL for Cloudonix callbacks
No Answer TimeoutDefault ring timeout
Recording FormatPreferred recording format

Webhook URL Resolution

OPBX resolves the effective webhook base URL in this priority order:

  1. OPBX_APPLICATION_WEBHOOK_BASEURL environment variable (production mode)
  2. webhook_base_url saved in Cloudonix settings
  3. APP_URL from .env

The resulting callback endpoints are:

PurposePath
Session updates{base_url}/api/webhooks/cloudonix/session-update
CDR events{base_url}/api/webhooks/cloudonix/cdr
Voice routing{base_url}/api/voice/route

Permissions

ActionOwnerPBX AdminPBX UserReporter
View Cloudonix settingsYesNoNoNo
Update Cloudonix settingsYesNoNoNo
Generate webhook keyYesNoNoNo

UI Workflow

Configure Cloudonix

  1. Navigate to Settings in the sidebar
  2. Enter the Domain UUID
  3. Enter the Domain API Key
  4. Click Validate Credentials
  5. Click Save Cloudonix Settings
  6. Optionally click Generate Webhook API Key

Override Webhook Base URL

  1. Expand Advanced Options
  2. Enter the public HTTPS URL
  3. Save

Key Data Fields

cloudonix_settings Table

ColumnTypeNotes
idbigintPrimary key
organization_idFKOne-to-one with organization
domain_uuidstringCloudonix domain UUID
domain_namestringCloudonix domain name
domain_api_keystringEncrypted at rest
domain_requests_api_keystringEncrypted webhook auth key
webhook_base_urlstring nullableOverride URL
voice_application_idstring nullableCloudonix voice app ID
voice_application_uuidstring nullable
voice_application_namestring nullable
no_answer_timeoutinteger nullable
recording_formatstring nullable
cloudonix_packagestring nullablefree_tier, standard, etc.
MethodEndpointPurpose
GET/v1/settings/cloudonixGet settings (masked keys)
PUT/v1/settings/cloudonixUpdate settings and sync voice app
POST/v1/settings/cloudonix/validateValidate credentials
POST/v1/settings/cloudonix/generate-requests-keyGenerate webhook auth key
GET/v1/settings/cloudonix/outbound-trunksList voice trunks

See the OPBX REST API reference for full schemas.