Critical Moments Docs
Quick StartHomepageAccount
  • Documentation Home
  • What is Critical Moments?
  • Quick Start
  • Concepts Overview
  • Remote Control / Service
    • Host Config on Github Pages
  • Config File Structure
  • Demo App
  • Homepage & Account
  • 📚Guides
    • Mobile App Toolbox: 13 Features Most Apps Need
    • Reduce App Churn with Notifications
    • Improve your App Store Rating
    • Feature Flags Guide
  • ⏰Notifications
    • Intro to Notifications
    • Notifications Spec
    • Smart Delivery
    • Badges
  • 🎯Conditional Targeting
    • Intro to Conditions
    • Built-in Properties
    • Custom Properties
    • Syntax and Operators
    • Conditional Guides
      • Working with Dates
      • Locations and Weather
      • Event and Property History
  • 🎪Events
    • Event Overview
    • Recommended Events
    • Built-In Events
  • 💬Actions / In App Messaging
    • Actions Overview
    • Modals
      • Modal Content Sections
      • Modal Buttons
      • Modal Images
    • Banners
    • Alerts
    • App Reviews
    • Open Link
    • Custom Actions
    • Conditional Actions
    • Triggers
  • 🎨Themes
    • Theme Overview
    • Built In Themes
  • ⛳Feature Flags
    • Feature Flag Guide
    • Conditional Feature Flags
    • Named Conditions Config
  • 🔑Trustless SaaS
  • 👋Support
  • 👩‍💻SDK API Reference
Powered by GitBook
On this page
  • Who Hosts the Remote Config?
  • How to Host Your Config / Remote Updates
  • Trustless SaaS

Was this helpful?

Remote Control / Service

Remotely control your app's behaviour without App Store updates

Last updated 1 month ago

Was this helpful?

The behaviour of the Critical Moments SDK is controlled by a powerful , which can be remotely updated from a server without app updates. Changing the SDK config unlocks a powerful set of features:

  • Update the conditional targeting to optimize your revenue engine (eg: Subscription prompts)

  • Update your user journey conditional targeting and messaging to improve user activation

  • Update your app review prompt conditional targeting

  • Push new user messaging for unexpected issues and announcements. Examples: outages, announcements, or legal compliance (new privacy policy, or EU data regulations)

  • Updating which feature flags are on/off, including rolling out AB test segments, rolling back bugs, and targeting feature flags based on live-device conditions.

Who Hosts the Remote Config?

You do! You can host our config anywhere your company hosts files on the web.

Other feature flag and remote-messaging tools require learning new dashboards, adding new access controls, creating new review processes, and sometimes even hosting/monitoring new services. Critical Moments allows you to use your existing tools (Git, Github, your webserver, etc)!

We offer a guide for quickly setting up , which should work for companies at any scale.

Trustless: Security and SLA

Since you host the config file yourself, Critical Moments can't push updates to your config without your permission/consent.

Further: an outage of our service can't impact your users.

How to Host Your Config / Remote Updates

Considerations if you want to use a host other than Github

If you want to use another host for your config, here are some best practices to consider:

  • Choose a hosting provider that has robust access controls, to control who on your team can update this config. Since this config can push messaging to all your users, you want to keep this secure and limit updates to trusted team members.

  • If using a custom domain name, use one you own, keep secure, and intend to keep owning for the lifetime of your application.

  • Choose a hosting provider which supports the is best, and will reduce the amount of network traffic from your app. Almost all major hosts support this, including Github Pages, Amazon S3, Google GCP Cloud Storage, and Microsoft Azure.

  • Choose hosting provider you already use, and is familiar to your dev/ops team

Be sure to test everything works as desired before deploying a new config to your production host. Remember: if deploying to a config to a URL used by older app releases, ensure to not break them with new configs.

Trustless: Access Control

Each company has different ways of securing their services and granting employees access.

By self-hosting the config file, you can use your existing access control systems to match the way you already work, and comply with your internal security requirements.

Trustless SaaS

Critical Moments is built as what we call "Trustless SaaS": software designed to be remotely controlled from services, without needing to trust a 3rd party service provider for correctness, security, or uptime SLAs.

Once you pick a URL, update your code to point to it (in your app delegate's call to setReleaseConfigUrl, see the guide). This must be done before you release to the app store.

config file
free hosting using Github Pages
ETag header
Quick Start
Learn more about Trustless SaaS ->