License Keys

License keys

Stood Flows is unlocked by a per-folder licence key. The key gates the Refresh action and any analysis that triggers fresh org reads; it does not gate browsing data you've already pulled. If you have a graph with versioned snapshots on disk, you can keep opening, exploring, and exporting from it indefinitely with or without a valid key.

Admin and Contributor roles

A folder's role is something you choose in its Settings, not something the key decides for you:

Choosing Admin without a valid key doesn't make the buttons disappear. They stay visible and greyed, and the tooltip tells you whether the key is missing, expired, or issued for a different org.

See Sharing and roles for the full picture, and Settings for where keys are entered.

What a key looks like

A key is a short JWT-style token signed with a private Ed25519 key Hway Digital holds. The payload says, in plain English: "this licence covers org X and is valid until Y". The desktop app carries the matching public key embedded in its binary and verifies signatures offline — no network call, no phone-home.

Where the key file lives

One key per folder, stored at:

~/StoodFlows/workspaces/<folderAlias>/license.key

The folder alias is the name you give a workspace when you create it (typically the org alias, e.g. meridian, acme-prod). You can drop the file in place manually or use the in-app entry described below.

Entering a key in the app

Two equivalent paths:

  1. From the folder's Settings: choose the Admin role and paste the key into the licence field that appears.

  2. From the gear icon → Global Settings → Licence: paste the key into the matching folder's row and confirm.

In both cases the app:

  1. Verifies the Ed25519 signature against the embedded public key.

  2. Checks the expiry timestamp.

  3. Checks that the folder's Salesforce Org ID is one the licence covers.

  4. Writes the key to license.key on success, surfaces a red error on failure.

A successful unlock is sticky for that folder until the key expires.

Brand-new folders

A folder that has never been refreshed doesn't know its Org ID yet, so there is nothing to check the licence against. Stood Flows accepts the key and tells you the org will be bound on the first refresh — otherwise you'd need a refresh to validate the key and a valid key to refresh. From the second validation onwards the Org ID check applies normally.

What needs a valid key

Action

Needs a key?

Open a folder, browse existing versions

No

KPI table, Volumes, Complexity, Apex, Licensing, DML, I/O panels on cached data

No

Pull a shared analysis from S3, and push issues back

No

Refresh backbone

Yes

Fetch Apex bodies + dependency tree

Yes

Fetch Event Log Files (DML and I/O analyses' first run on a new period)

Yes

Run a Usage analysis (creator / modifier counts)

Yes

Publish an analysis to S3

Yes

Export / package generation (works from cached data)

No

The rule of thumb: anything that calls sf against the org needs a valid key.

Expiry and renewal

Keys are time-bound. As expiry approaches, the app shows an amber notice in the folder header. Once expired, refreshes are blocked; cached analyses remain readable. Drop a new key into license.key or paste it in Global Settings to extend.

Multiple folders, multiple keys

Each folder has its own key file, and each key covers specific Salesforce orgs. A key issued for one org will not unlock a folder pointed at a different one, whatever you have named the folders locally. If you analyse N orgs, you'll typically have N keys. The cost model is a per-org subscription — when in doubt, ask whoever issued the licence.

Getting a key

Keys are issued by Hway Digital. Contact information and pricing are on https://stoodcrm.com. The short version: send the org you intend to analyse, get back a .key file or a token string.

What the key is not

Published with Nuclino