Skip to main content
Now, that your app is installed and working well, you can launch it from the Cloud dashboard. Just like the install process, the launch process starts in Blnk Cloud. When a user clicks Launch app in Blnk Cloud:
  1. If the app requires it, the user confirms with their account password and 2FA code (same rules as install).
  2. Blnk sends a POST request to your portal generator URL.
  3. Your app checks that the install exists and is active.
  4. Your app creates a short-lived portal session.
  5. Your app returns a portal_url.
  6. Blnk opens that URL inside the dashboard.
How app portals work
See Best practices for the embedding policy, session guidance, and pre-launch checklist.

Handling the portal request

Cloud sends a payload like this to your portal_generator_url:
generate_portal.json
Before returning a portal URL, your app should confirm that:
  • the install exists and is active
  • the instance_id in the request matches the install record
validateInstallForPortal.ts

Create a portal session

Next, your app should create a portal session once the portal request is validated. The session helps your app know:
  • which installation opened the portal
  • which Cloud instance the portal is launched from
  • when the session should expire
We recommend keeping portal sessions short-lived. A 5 to 15 minute expiry is usually enough for launch sessions.
Create a portal URL
After creating the session, return a portal_url to Cloud. The response should look like this:
Expected response
Cloud then uses this URL to open your app inside the dashboard.
The portal URL should only point to your app interface. It should not include API keys, provider secrets, or any sensitive data.

Load the app inside Cloud

When Cloud opens the portal_url, it loads your app inside the dashboard.
Load the app inside Cloud
Your portal pages must allow Blnk to embed them in the dashboard. Set the Content-Security-Policy header described in Best practices. A few rules to keep in mind during this process:
  • Blnk sends a fresh portal request for every launch. Your app should return a fresh portal_url for each request.
  • Keep Cloud API keys on the backend. Do not expose them in the browser.

Test the launch flow

To test app launch:
  1. Install the app in Cloud.
  2. Click Launch app from the app details page.
  3. If the app requires re-authentication, confirm with your password and 2FA code.
  4. Confirm your portal_generator_url receives the launch request.
  5. Confirm your app creates a portal session.
  6. Confirm your app returns a valid portal_url.
  7. Confirm the app opens inside the Cloud dashboard.
  8. Confirm expired sessions can no longer open the portal.
Once this works, users can open your app from Blnk Cloud and work through the Stripe Sync workflow inside the dashboard.

Troubleshooting


Run the example Stripe Sync app

Reference Stripe sync implementation.