Skip to main content
Version: 1.0

Flow Management API

This API is used to manage flow definitions such as authentication and registration flows.

Flows are defined using a node-based graph representation where each node represents a specific action or interaction in the flow. Nodes are connected through explicit references (actions, onSuccess, onFailure) to define the flow logic.

Flow Types​

  • AUTHENTICATION: User login flows
  • REGISTRATION: User registration/signup flows

Node Types​

  • START: Initial node indicating the starting point of the flow. Must be present in all flows.
  • PROMPT: Interactive UI node that displays components and collects user input. Contains optional UI metadata for rendering (verbose mode).
  • TASK_EXECUTION: Background executor node that performs server-side operations (authentication, authorization, provisioning, etc.). Uses onSuccess/onFailure for navigation. Can optionally have inputs for executors that need user input references.
  • END: Terminal node indicating the end of the flow.

Representation Modes​

  • Verbose Mode: Includes full UI metadata (components, layouts, labels) for visual flow composer and runtime rendering
  • Non-Verbose Mode: Contains only logical flow structure without UI metadata

Internationalization​

User-facing text (labels, placeholders, hints, button text, etc.) can be:

  • i18n keys: Use the format {{ t(namespace:key) }} (e.g., {{ t(signin:heading.label) }})
  • Plain text: Any string without the {{ t() }} wrapper is treated as literal text

The frontend resolves i18n keys from language-specific resource bundles based on the namespace and key structure.

Authentication​

Security Scheme Type:

oauth2

OAuth Flow (authorizationCode):

Scopes:

  • system: Access to system management APIs

License

Apache 2.0

© 2026 Thunder. All rights reserved.
Terms & ConditionsPrivacy Policy