Skip to content

Settings API Documentation

System settings management endpoints for configuring Octeth application settings and testing email delivery configurations.

Test Email Sending Configuration

POST /api.php

API Usage Notes

  • Authentication required: Admin API Key
  • Legacy endpoint access via /api.php only (no v1 REST alias configured)

Request Body Parameters:

ParameterTypeRequiredDescription
CommandStringYesAPI command: settings.emailsendingtest
SessionIDStringNoSession ID obtained from login
APIKeyStringNoAdmin API key for authentication
SendMethodStringNoEmail sending method: SMTP, LocalMTA, PHPMail, PowerMTA, or SaveToDisk
SendMethodSMTPHostStringNoSMTP server hostname (required for SMTP method)
SendMethodSMTPPortIntegerNoSMTP server port (required for SMTP method)
SendMethodSMTPSecureStringNoSMTP encryption: ssl, tls, or empty string
SendMethodSMTPAuthStringNoSMTP authentication enabled: true or false
SendMethodSMTPUsernameStringNoSMTP username (required if auth is enabled)
SendMethodSMTPPasswordStringNoSMTP password (required if auth is enabled)
SendMethodSMTPTimeoutIntegerNoSMTP connection timeout in seconds
SendMethodLocalMTAPathStringNoLocal MTA path (required for LocalMTA method)
SendMethodPowerMTADirStringNoPowerMTA directory path (required for PowerMTA method)
SendMethodSaveToDiskDirStringNoSave to disk directory path (required for SaveToDisk method)
MailEngineStringNoMail engine: phpmailer or swiftmailer
bash
curl -X POST https://example.com/api.php \
  -H "Content-Type: application/json" \
  -d '{
    "Command": "settings.emailsendingtest",
    "SessionID": "your-admin-session-id",
    "SendMethod": "SMTP",
    "SendMethodSMTPHost": "smtp.example.com",
    "SendMethodSMTPPort": 587,
    "SendMethodSMTPSecure": "tls",
    "SendMethodSMTPAuth": "true",
    "SendMethodSMTPUsername": "smtp-user@example.com",
    "SendMethodSMTPPassword": "smtp-password",
    "SendMethodSMTPTimeout": 30,
    "MailEngine": "phpmailer"
  }'
json
{
  "Success": true,
  "ErrorCode": 0
}
json
{
  "Success": false,
  "ErrorCode": 1,
  "EmailSettingsErrorMessage": "SMTP connect() failed"
}
txt
0: Success
1: Email sending test failed (check EmailSettingsErrorMessage for details)
2: Invalid enum value (SendMethod, SendMethodSMTPSecure, SendMethodSMTPAuth, or MailEngine)
NOT AVAILABLE IN DEMO MODE: Endpoint disabled in demo mode

Update System Settings

POST /api.php

API Usage Notes

  • Authentication required: Admin API Key
  • Legacy endpoint access via /api.php only (no v1 REST alias configured)

Request Body Parameters:

All parameters are optional. Only provide the settings you want to update.

ParameterTypeRequiredDescription
CommandStringYesAPI command: settings.update
SessionIDStringNoSession ID obtained from login
APIKeyStringNoAdmin API key for authentication
SystemEmailFromNameStringNoDefault sender name for system emails
SystemEmailFromEmailStringNoDefault sender email address (email validation)
SystemEmailReplyToNameStringNoDefault reply-to name
SystemEmailReplyToEmailStringNoDefault reply-to email address (email validation)
AlertRecipientEmailStringNoEmail address for system alerts (email validation)
ReportAbuseEmailStringNoEmail address for abuse reports (email validation)
XComplaintsToStringNoX-Complaints-To header value (email or @%sender_domain%)
MediaUploadMethodStringNoMedia upload method: file, database, or s3
MediaUploadStatusStringNoMedia upload status
MediaLibraryAllowedFileTypesStringNoAllowed file types for media library
S3EnabledStringNoEnable S3 storage: true or false
S3AccessIDStringNoAWS S3 access key ID
S3SecretKeyStringNoAWS S3 secret access key
S3BucketStringNoAWS S3 bucket name
S3MediaLibraryPathStringNoS3 path for media library
S3URLStringNoS3 bucket URL
LoadBalanceStatusStringNoEnable load balancing: true or false
LoadBalanceEmailsIntegerNoNumber of emails for load balancing
LoadBalanceSleepIntegerNoSleep interval for load balancing
PMEUsageTypeStringNoPreviewMyEmail usage type: Admin or User
PMEDefaultAccountStringNoDefault PreviewMyEmail account
PMEDefaultAPIKeyStringNoPreviewMyEmail API key
UserSignupEnabledStringNoEnable user signup: true or false
UserSignupFieldsStringNoUser signup form fields
UserSignupReputationStringNoUser signup reputation: Trusted or Untrusted
UserSignupLanguageStringNoDefault language for new users
DefaultLanguageStringNoSystem default language
UserSignupGroupIDIntegerNoDefault user group ID for signups
UserSignupGroupIDsStringNoMultiple user group IDs for signups
DefaultThemeIDIntegerNoDefault theme ID
PaymentCurrencyStringNoPayment currency code
PaymentTaxPercentNumberNoTax percentage for payments
PaymentReceiptEmailSubjectStringNoPayment receipt email subject
PaymentReceiptEmailMessageStringNoPayment receipt email message
AdminCaptchaStringNoEnable admin captcha: true or false
UserCaptchaStringNoEnable user captcha: true or false
EnabledPluginsStringNoComma-separated list of enabled plugins
SendMethodStringNoEmail sending method: SMTP, LocalMTA, PHPMail, PowerMTA, or SaveToDisk
SendMethodLocalMTAPathStringNoLocal MTA path
SendMethodPowerMTAVMTAStringNoPowerMTA VMTA name
SendMethodPowerMTADirStringNoPowerMTA directory path
SendMethodSaveToDiskDirStringNoSave to disk directory path
SendMethodSMTPHostStringNoSMTP server hostname
SendMethodSMTPPortIntegerNoSMTP server port
SendMethodSMTPSecureStringNoSMTP encryption: ssl, tls, or empty string
SendMethodSMTPAuthStringNoSMTP authentication: true or false
SendMethodSMTPUsernameStringNoSMTP username
SendMethodSMTPPasswordStringNoSMTP password
SendMethodSMTPTimeoutIntegerNoSMTP timeout in seconds
SendMethodSMTPDebugStringNoSMTP debug mode
SendMethodSMTPKeepAliveStringNoSMTP keep-alive setting
SendMethodSMTPMsgConnIntegerNoSMTP messages per connection
ImportMaxFilesizeIntegerNoMaximum file size for imports (bytes)
AttachmentMaxFilesizeIntegerNoMaximum attachment file size (bytes)
MediaMaxFilesizeIntegerNoMaximum media file size (bytes)
XMailerStringNoX-Mailer header value
MailEngineStringNoMail engine: phpmailer or swiftmailer
GoogleAnalyticsSourceStringNoGoogle Analytics source parameter
GoogleAnalyticsMediumStringNoGoogle Analytics medium parameter
ForwardToFriendHeaderStringNoForward-to-friend email header
ForwardToFriendFooterStringNoForward-to-friend email footer
ReportAbuseFriendHeaderStringNoReport abuse email header
ReportAbuseFriendFooterStringNoReport abuse email footer
UserSignupHeaderStringNoUser signup email header
UserSignupFooterStringNoUser signup email footer
ProductNameStringNoProduct name for branding
DefaultSubscriberAreaLogoutURLStringNoSubscriber area logout redirect URL
POP3BounceStatusStringNoEnable POP3 bounce processing: Enabled or Disabled
POP3BounceHostStringNoPOP3 bounce server hostname
POP3BouncePortIntegerNoPOP3 bounce server port
POP3BounceUsernameStringNoPOP3 bounce username
POP3BouncePasswordStringNoPOP3 bounce password
POP3BounceSSLStringNoPOP3 bounce SSL: Yes or No
POP3FBLStatusStringNoEnable POP3 FBL processing: Enabled or Disabled
POP3FBLHostStringNoPOP3 FBL server hostname
POP3FBLPortIntegerNoPOP3 FBL server port
POP3FBLUsernameStringNoPOP3 FBL username
POP3FBLPasswordStringNoPOP3 FBL password
POP3FBLSSLStringNoPOP3 FBL SSL: Yes or No
POP3RequestsStatusStringNoEnable POP3 request processing: Enabled or Disabled
POP3RequestsHostStringNoPOP3 requests server hostname
POP3RequestsPortIntegerNoPOP3 requests server port
POP3RequestsUsernameStringNoPOP3 requests username
POP3RequestsPasswordStringNoPOP3 requests password
POP3RequestsSSLStringNoPOP3 requests SSL: Yes or No
SendBounceNotificationEmailStringNoEmail address for bounce notifications
RebrandedProductLogoStringNoCustom product logo
RebrandedProductLogoTypeStringNoProduct logo type
PayPalExpressStatusStringNoPayPal Express status: Enabled or Disabled
PayPalExpressBusinessNameStringNoPayPal business name
PayPalExpressPurchaseDescriptionStringNoPayPal purchase description
PayPalExpressCurrencyStringNoPayPal currency code
DisplayTriggerSendEngineLinkStringNoDisplay send engine link: Yes or No
DefaultOptinEmailSubjectStringNoDefault opt-in confirmation email subject
DefaultOptinEmailBodyStringNoDefault opt-in confirmation email body (must include %Link:Confirm%)
UserareaFooterStringNoUser area footer content
ForbiddenFromAddressesStringNoForbidden sender email addresses
RunCronInUserAreaStringNoRun cron in user area: true or false
CentralizedSenderDomainStringNoCentralized sender domain
PaymentCreditsGatewayURLStringNoPayment credits gateway URL
AdminAllowedIPStringNoAllowed IP addresses for admin access
RateLimitExceedSlackWebhookURLStringNoSlack webhook for rate limit alerts
RateLimitExceedNotificationIntervalIntegerNoRate limit notification interval
DisableUserPasswordResetStringNoDisable user password reset: true or false
DisplayOriginalLogoStringNoDisplay original logo: Yes or No
FBLIncomingEmailAddressStringNoFBL incoming email address
UnsubscribeIncomingEmailAddressStringNoUnsubscribe incoming email address
BounceForwardToStringNoBounce forward-to email address
ThresholdSoftBounceDetectionIntegerNoSoft bounce detection threshold
BounceCatchAllDomainStringNoBounce catch-all domain
bash
curl -X POST https://example.com/api.php \
  -H "Content-Type: application/json" \
  -d '{
    "Command": "settings.update",
    "SessionID": "your-admin-session-id",
    "SystemEmailFromName": "My Company",
    "SystemEmailFromEmail": "noreply@mycompany.com",
    "SendMethod": "SMTP",
    "SendMethodSMTPHost": "smtp.example.com",
    "SendMethodSMTPPort": 587,
    "SendMethodSMTPSecure": "tls",
    "SendMethodSMTPAuth": "true",
    "SendMethodSMTPUsername": "smtp-user@example.com",
    "SendMethodSMTPPassword": "smtp-password",
    "UserSignupEnabled": "true",
    "AdminCaptcha": "true"
  }'
json
{
  "Success": true,
  "ErrorCode": 0
}
json
{
  "Success": false,
  "ErrorCode": 1
}
txt
0: Success
1: Invalid email address
2: Invalid enum value (MediaUploadMethod, S3Enabled, LoadBalanceStatus, PMEUsageType, UserSignupEnabled, UserSignupReputation, AdminCaptcha, UserCaptcha, SendMethod, SendMethodSMTPSecure, SendMethodSMTPAuth, MailEngine, or RunCronInUserArea)
3: PreviewMyEmail API connection error
6: POP3/IMAP connection failed (check EmailSettingsErrorMessage for details)
7: Default opt-in email body missing required %Link:Confirm% tag
NOT AVAILABLE IN DEMO MODE: Endpoint disabled in demo mode

Any questions? Contact us.