How it works
Four pictures cover the whole runtime: where Junctree sits, what a run looks like, how configuration is resolved per tenant, and how versions move to production.
1 · Where Junctree fits
Junctree sits between your application and the third-party APIs you depend on. Instead of spreading vendor SDKs, credentials, and retry logic across your codebase, your app makes one typed call and Junctree handles the rest. Webhooks and schedules can drive the same junctions.
2 · The anatomy of a run
A run starts when your app calls /api/v1/execute, a webhook arrives, or a
schedule fires. The runtime resolves the junction, picks the version that is live, and
checks the caller is allowed. Then it runs the trigger's steps in order — each step's
output flows into the next, and configuration and secrets are injected automatically, so
the caller never handles a credential.
3 · Multi-tenant cascade
The same junction can behave differently per tenant without being forked. At execution time the runtime walks the principal lineage from the platform root down to the caller, merging configuration and decrypting secrets as it goes. Lower tiers override higher ones, so a sub-account's setting beats its organization's, which beats the platform default.
4 · Versions & lifecycle
Every junction has many immutable versions, but only one is published at a time. A version
is editable while it is a draft; promoting it to testing freezes
it for staging, and promoting to published makes it live. Promotion is atomic
and the previous published version is retired automatically — so rolling forward or back
never leaves an in-between state.
Ready to call one? Head to the quickstart.