Skip to content

Register Your App

Get your client ID from the Flowsta Developer Dashboard.

Whether you're building a web app with OAuth or a desktop Holochain app with identity linking, you need a registered app and a client ID.

Step 1: Create a Developer Account

  1. Go to dev.flowsta.com
  2. Sign up or log in with your Flowsta account

Step 2: Create an Application

  1. Click Create New App
  2. Enter your app's details:
    • App Name — Shown to users during OAuth consent or Vault approval
    • App Description — Brief description of your app
    • Application Type — Web App, Desktop App, or Holochain App

Step 3: Configure Your App

Configuration differs based on your integration path.

For Web Apps (OAuth)

Redirect URIs

Add the URLs where users are redirected after authentication:

http://localhost:3000/auth/callback    (development)
https://yourapp.com/auth/callback       (production)

TIP

Add both development and production URIs. You can add multiple redirect URIs.

Select Scopes

Choose which user data your app needs:

ScopeDataNotes
openidUser ID (sub)Auto-included
display_nameDisplay name
usernameUsername
emailEmail addressRequires explicit user permission
profile_pictureProfile picture URL
didW3C Decentralized Identifier
public_keyHolochain agent public key

For Holochain Apps (Identity Linking)

Holochain apps don't need redirect URIs, but they do select scopes. Scopes control which profile fields Flowsta Vault exposes to your app via its local IPC server (GET /status on port 27777). The user sees the selected scopes listed in the Vault approval dialog before they approve.

Select Scopes

ScopeWhat your app receives via /status
openidBasic identity — auto-included, not shown to the user
diddid — the user's decentralized identifier
public_keyagent_pub_key — the Vault's Holochain agent key
holochainRequired for the agent-linking ceremony
display_namedisplay_name — the user's display name
usernameusername — the user's @username
profile_pictureprofile_picture — avatar URL

Select only the scopes your app actually uses. Fields for unselected scopes are returned as null from /status, even if the user has that data in their Vault.

The app name and selected scopes are what users see in the Vault approval dialog:

"Your App Name" wants to link your Flowsta identity

This app will be able to access:
✓ Decentralized ID (DID)
✓ Public key
✓ Holochain identity
✓ Display name

[Deny]  [Allow]

Branding (Optional)

  • Logo URL — Shown on the OAuth consent screen or Vault approval dialog
  • Privacy Policy URL — Link to your privacy policy
  • Terms of Service URL — Link to your terms

Step 4: Copy Your Client ID

Your client ID looks like: flowsta_app_abc123def456...

Use this in your SDK configuration:

Web App:

typescript
const auth = new FlowstaAuth({
  clientId: 'flowsta_app_abc123def456',
  redirectUri: 'https://yourapp.com/auth/callback'
});

Holochain App:

typescript
const result = await linkFlowstaIdentity({
  appName: 'YourApp',
  clientId: 'flowsta_app_abc123def456',
  localAgentPubKey: myAgentKey,
});

No Client Secret

Flowsta uses PKCE for web apps and IPC for desktop apps — no client secret needed for either path.

Next Steps

Documentation licensed under CC BY-SA 4.0.