The following documentation is related only to the Transposit Developer Platform. Mission Control handles user configuration differently than if you are only developing on the Developer Platform.
On the User Configuration page, you can specify how users will interact with your app.
Your application is protected by sign-in. You can restrict sign-in to specific Google GSuite domains and users, or Slack workspaces.
Choose whether users authenticate through Google or Slack when signing in to your app. Choose carefully: you can change your sign-in provider later, but all user data will be deleted.
You can view and administer registered users in Users > Registered Users. You can delete users, remove authorizations, or add user settings as necessary.
Each data connection in your application can either reference a production key that you have provided or expect signed-in users to provide their own key. Check the appropriate boxes under Require users to authenticate with these data connections. For the rest, navigate to Deploy > Production Keys and click Add key.
For applications requiring user-specific configuration, you can define a user settings schema at Users > User Configuration > User settings schema. Settings marked with Show on user settings page
will be displayed on the app's user settings page, along with any required data connector authentication.
Below are examples of how you might use different types of inputs:
Settings can be hidden from the user by unchecking Show on user settings page
. Some example use cases for hidden settings are: programmatically storing the user's Slack username from their credential, or having a hidden setting to mark certain users as power users (and using the Registered Users interface to manually toggle the setting).
Your development environment interface for these settings, identical to what your users will see, is found under Code > Development > Auth & user settings.
Visit the JavaScript operation documentation for info on programmatically accessing user settings.
Use an options
type to limit the user's input to a set of options. The selected operation will return an array of objects, each with properties displayName
and value
. The set of options can be static — a list of colors mapped to hex codes, for example. They can also be dynamic — generating a list of the user's Slack channels mapped to channel IDs, for example. In the dynamic case, you can check (in JavaScript) if the user is authenticated by calling api.isAuthed("<data connection>")
and throwing an error if they are not.
User Setting Options
templateoptions
If your application requires more customization than the automatically-generated user settings page provides, you can select Use a custom page template (advanced)
.
With a custom page template, you can supply HTML and JavaScript in Code > Page template to invoke operations and display results. This can be a great starting point for prototyping application UI.
For even more control, it is possible to host your app's frontend with a third party and use Transposit as a backend. Apps can interface with Transposit via the JavaScript SDK or by directly invoking HTTP endpoints.