General settings is the instance-level control surface of Callaba Engine. This is where you inspect the current application state, switch HTTP and HTTPS delivery modes, apply SSL certificates, persist custom settings, and move configuration between environments.
Unlike transport modules, these endpoints change how the engine itself behaves. In practice they matter when a new instance is going live, when a domain or certificate has to be corrected safely, or when one environment should inherit a known-good baseline from another.
The most useful preset families here are domain and delivery setup, certificate update, custom-settings write, and environment migration through export or import.
{
"http_modes": [
{ "mode": "HTTPS" },
{ "mode": "HTTP" }
],
"cdn_domain_name": "cdn.example.com",
"streaming_domain_name": "stream.example.com"
}
{
"ssl_type": "SSL_TYPE_CUSTOM",
"ssl_domain_name": "stream.example.com",
"certificate": "-----BEGIN CERTIFICATE-----...",
"private_key": "-----BEGIN PRIVATE KEY-----..."
}
{
"custom_settings": {
"showBrandName": false,
"useCustomLogo": true
}
}
Use getAppInfo first, then updateHTTPConfig and, if needed, updateSSLCertificate to move from a raw instance into a domain-backed deployment the team can trust.
Use updateCustomSettings when the instance should expose different product-level defaults, branding behavior, or feature behavior that operators should feel consistently across the product.
Use exportDb and importDb when a staging or backup environment should inherit a known-good subset of application settings without rebuilding everything by hand.
Loads the current instance-level configuration and status snapshot.
This is the natural first call for a management client because it tells the team what kind of instance they are actually operating before they change domains, certificates, timing, or imported settings.
curl --request POST \--url http://localhost/api/application/getAppInfo \--header 'x-access-token: <your_api_token>' \--header 'Content-Type: application/json' \--data '{}'
Instance identity fields returned for the current application.
Current engine version and deployment flavor.
Current HTTP and domain configuration returned by the engine.
Persisted custom application settings.
Successful responses expose success: true.
{"app_version": "8.2.p.NDI.pre-aws","stack_version": "8.2","node_app": "NODE_APP_SELF_HOSTED","name": "All-in-one. SaaS","login": "admin","token": "<jwt_token>","custom_settings": {"showBrandName": false,"useCustomLogo": true},"http_modes": [{"mode": "HTTPS"},{"mode": "HTTP"}],"cdn_domain_name": "cdn.example.com","streaming_domain_name": "stream.example.com","success": true}
Updates HTTP and HTTPS delivery settings for the instance.
Use this when the instance needs the right public-facing domains and delivery modes before traffic is sent to real users or encoders.
List of enabled delivery modes. Real product values include HTTP and HTTPS.
Domain used for CDN-style delivery references.
Domain used for stream-facing URLs.
curl --request POST \--url http://localhost/api/application/updateHTTPConfig \--header 'x-access-token: <your_api_token>' \--header 'Content-Type: application/json' \--data '{"http_modes": [{"mode": "HTTPS"},{"mode": "HTTP"}],"cdn_domain_name": "cdn.example.com","streaming_domain_name": "stream.example.com"}'
The backend confirms that the HTTP configuration update was accepted.
{"success": true}
Updates the SSL certificate configuration of the instance.
Use this when the engine should switch to a custom certificate, Let's Encrypt flow, or another supported SSL policy so the live domain is safe to expose to real viewers and integrations.
SSL policy to apply. Real product values include custom, self-signed, and Let's Encrypt flows.
Domain name that the certificate configuration should protect.
PEM certificate body when the selected SSL mode requires a custom certificate.
Matching PEM private key when the selected SSL mode requires one.
curl --request POST \--url http://localhost/api/application/updateSSLCertificate \--header 'x-access-token: <your_api_token>' \--header 'Content-Type: application/json' \--data '{"ssl_type": "SSL_TYPE_CUSTOM","ssl_domain_name": "stream.example.com","certificate": "-----BEGIN CERTIFICATE-----...","private_key": "-----BEGIN PRIVATE KEY-----..."}'
The backend confirms whether the SSL update completed successfully.
{"success": true,"result": true}
Persists custom application settings.
Use this when the instance should consistently present different branding, defaults, or product behavior to operators and viewers instead of relying on one-off manual tweaks.
Object of persisted instance-level feature flags and UI behavior settings.
curl --request POST \--url http://localhost/api/application/updateCustomSettings \--header 'x-access-token: <your_api_token>' \--header 'Content-Type: application/json' \--data '{"custom_settings": {"showBrandName": false,"useCustomLogo": true}}'
The backend confirms that the custom settings write finished successfully.
{"success": true}
Imports previously exported application settings from a saved dump file.
Use this when another Callaba environment should inherit a known-good configuration state without recreating it field by field.
Path to the previously exported dump that should be imported.
curl --request POST \--url http://localhost/api/application/importDb \--header 'x-access-token: <your_api_token>' \--header 'Content-Type: application/json' \--data '{"file_path": "uploads/callaba-dump.gz"}'
Import confirmation together with the target application version returned by the engine.
{"success": true,"app_version": "8.2"}
Exports a selected set of module settings into a reusable dump artifact.
This is the companion to importDb and is useful for migration, backup, or handoff between environments.
List of module identifiers that should be included in the exported dump.
curl --request POST \--url http://localhost/api/application/exportDb \--header 'x-access-token: <your_api_token>' \--header 'Content-Type: application/json' \--data '{"modules": ["MODULE_SRT_SERVERS","MODULE_SRT_ROUTERS","MODULE_RTMP_SERVERS","MODULE_RESTREAM","MODULE_VOD"]}'
Path to the exported dump plus a success-shaped confirmation.
{"success": true,"result": "uploads/callaba-dump.gz"}
Updates the NTP server used by the instance.
Use this when environment policy or timing accuracy requires a specific time source and the team wants the instance clock to stay predictable across recordings, schedules, and event timing.
NTP hostname that the instance should use as its time source.
curl --request POST \--url http://localhost/api/application/updateNTPConfiguration \--header 'x-access-token: <your_api_token>' \--header 'Content-Type: application/json' \--data '{"ntp_server": "time.apple.com"}'
The backend confirms that the NTP configuration update was accepted.
{"success": true}