Skip to content

Integrations

Flow Engineering

Manage engineering requirements and traceability

Flow Engineering connects requirements, systems, tests, and their relationships. Use the Flow block to search current project data, read values and history, manage discussions, and propose changes on a working branch.

Connect an account

In Flow, open Settings → API & MCP, generate a personal API key, and copy it. Create a connection from the block's Flow Account field with:

  • API key: The complete key, including its brd_ prefix.
  • API URL: The URL from Flow's API settings. The default is https://backend.branch.flowengineering.com. The /customer-api suffix opens the API documentation and is removed from requests.
  • Workspace identifier: The final segment of the MCP URL. For https://backend.branch.flowengineering.com/mcp/your-workspace, enter your-workspace.

The key uses its owner's current Flow permissions. It does not grant additional project access or bypass read-only roles. Revoke or replace it in Flow when needed. This integration uses the current customer API, not the older refresh-token API under api.flowengineering.com/rest/v1.

Work with project data

Select a project, then use Get Data Model to discover its categories and field keys. Requirements and tests are entities in those categories; names and custom fields can vary by project. Use the returned IDs rather than display names.

Search Entities returns up to 100 compact matches by name, field value, or exact Flow/Human ID. Use Get Entities to read their full values and relationships. Search reflects the selected branch and may have incomplete text results while Flow's index warms.

List Entities reads one page. Pass nextPageStart as Cursor and continue while moreAvailable is true, including after an empty page. Filter Entities and Get Entity History instead return nextCursor; continue until it is null. No operation automatically downloads every page.

Make changes

Omitting Branch reads or writes Base (master). Use Create Branch and select its returned ID to prepare changes separately. Flow's project permissions and branch protections still apply; the integration does not request the admin bypass option.

Create Entities and Set Values accept up to 100 entries per request. Each batch is atomic, but separate requests are separate transactions. Creates and other mutations are not automatically retried. After a timeout, read back the affected data before repeating a write.

To reply to a discussion, pass the original comment ID as Entity ID, even when replying to a later reply. Use the same branch for the original thread and its replies. Resolve a thread by updating the original comment.

See Flow's API conventions for branch and pagination behavior, and its API reference for supported field values and filters.

Use the block

Read and update Flow Engineering projects, requirements, tests, and other entities through its customer API. Search current project data, inspect categories and relationships, manage comments, and make controlled changes on a working branch using your connected account permissions.

Actions

Flow List Projects

List projects accessible to the connected Flow user. The API returns up to the requested limit without a continuation cursor.

Inputs and outputs

Input

ParameterTypeRequiredDescription
limitnumberNoMaximum results in this page

Output

ParameterTypeDescription
projectsarrayList Projects result

Flow Get Project

Read a Flow project by its UUID.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects

Output

ParameterTypeDescription
projectjsonGet Project result

Flow Get Data Model

Read the project categories and field definitions before interpreting values or writing custom fields.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects

Output

ParameterTypeDescription
categoriesarrayGet Data Model result

Flow List Branches

List the Flow project branches and their review and protection state.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects

Output

ParameterTypeDescription
branchesarrayList Branches result

Flow Create Branch

Create a working branch before modifying requirements, tests, or other project entities.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchNamestringNoName of the new branch
parentIdstringNoParent branch ID; omit for Base
descriptionstringNoDescription of the new branch
isVariantbooleanNoCreate a variant branch

Output

ParameterTypeDescription
idstringCreated branch ID
numbernumberAssigned branch number

Flow Search Entities

Search live Flow entities by name, supported field values, or exact Flow/Human ID. Returns at most 100 compact matches; fetch entities for full values. Text results may be unavailable while the provider index warms.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchIdstringNoBranch ID; omit or use master for Base
entityTypestringNoRestrict to this category ID from Get Data Model
querystringYesSearch names and supported field values, or an exact Flow/Human ID; at most 1024 characters
limitnumberNoMaximum results in this page

Output

ParameterTypeDescription
matchesarraySearch Entities result

Flow List Entities

Read one page of live Flow entities. Continue with nextPageStart while moreAvailable is true, including after an empty page.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchIdstringNoBranch ID; omit or use master for Base
entityTypestringNoRestrict to this category ID from Get Data Model
cursorstringNoOpaque continuation cursor from the previous page
limitnumberNoMaximum results in this page

Output

ParameterTypeDescription
entitiesarrayEntity states on this page
nextPageStartstringOpaque cursor for the next page
moreAvailablebooleanContinue even after empty pages while true

Flow Get Entities

Read the full values, relationships, and timestamps of up to 100 Flow entities in one project and branch.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchIdstringNoBranch ID; omit or use master for Base
entityIdsstringYesComma-separated entity IDs; up to 100 per read

Output

ParameterTypeDescription
entitiesarrayGet Entities result

Flow Create Entity

Create an entity in a category on the selected branch. Branch protection and the connected user permissions remain enforced.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchIdstringNoBranch ID; omit or use master for Base
entityTypestringYesCategory ID returned by Get Data Model
namestringYesEntity name

Output

ParameterTypeDescription
entityjsonCreate Entity result

Flow Create Entities

Create 1–100 entities atomically on a single branch. A timed-out request may already have committed; inspect the branch before retrying.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchIdstringNoBranch ID; omit or use master for Base
entitiesjsonYesArray of 1–100 entities: [{entityType, name, id?}]. IDs may be omitted for server generation

Output

ParameterTypeDescription
entitiesarrayCreate Entities result

Flow Set Value

Set one field on a Flow entity using a key from the data model and a JSON value of the documented field type.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID returned by Search Entities or List Entities
branchIdstringNoBranch ID; omit or use master for Base
fieldKeystringYesStored field key returned by Get Data Model
valuestringYesJSON-encoded field value matching the data model. Use "text" for a string, 123 for a number, true or false for a boolean, an array or object, or null to clear the field. Use "" for an empty string.

Output

ParameterTypeDescription
entityjsonSet Value result

Flow Set Values

Set 1–100 field values atomically on one branch. Returns each affected entity once in first-touched order.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchIdstringNoBranch ID; omit or use master for Base
updatesjsonYesArray of 1–100 field updates: [{entityId, key, value}]

Output

ParameterTypeDescription
entitiesarraySet Values result

Flow Delete Entity

Delete an entity on the selected branch. Branch protection is enforced.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID returned by Search Entities or List Entities
branchIdstringNoBranch ID; omit or use master for Base

Output

No output fields.

Flow Restore Entity

Restore a deleted entity with its prior fields and links. Restoring a child does not restore its deleted parent.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID returned by Search Entities or List Entities
branchIdstringNoBranch ID; omit or use master for Base

Output

No output fields.

Add a downstream relationship between Flow entities on the selected branch.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID returned by Search Entities or List Entities
branchIdstringNoBranch ID; omit or use master for Base
destinationIdstringYesID of the downstream entity to link or unlink

Output

ParameterTypeDescription
entityjsonAdd Link result

Remove a downstream relationship between Flow entities on the selected branch.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID returned by Search Entities or List Entities
branchIdstringNoBranch ID; omit or use master for Base
destinationIdstringYesID of the downstream entity to link or unlink

Output

ParameterTypeDescription
entityjsonRemove Link result

Flow List Comments

Read direct comment threads for an entity or direct replies to the original comment ID. Keep the same branch when following replies.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID, or the original comment ID when reading or posting thread replies
branchIdstringNoBranch ID; omit or use master for Base
includeResolvedbooleanNoInclude resolved comments

Output

ParameterTypeDescription
commentsarrayList Comments result

Flow Get Comment

Read a comment using its ID and its returned entity_id as the parent path.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID, or the original comment ID when reading or posting thread replies
commentIdstringYesComment ID; entityId must be the comment's returned entity_id

Output

ParameterTypeDescription
commentjsonGet Comment result

Flow Create Comment

Start a thread on an entity or reply using the original comment ID as entityId. Set the branch explicitly; replies do not inherit it.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID, or the original comment ID when reading or posting thread replies
branchIdstringNoBranch ID; omit or use master for Base
textstringYesPlain-text comment body

Output

ParameterTypeDescription
commentjsonCreate Comment result

Flow Update Comment

Edit comment text or resolve/reopen its thread. Use the original comment to change the thread status.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID, or the original comment ID when reading or posting thread replies
commentIdstringYesComment ID; entityId must be the comment's returned entity_id
textstringNoReplacement plain-text comment body
resolvedbooleanNoResolve the thread with true or reopen it with false

Output

ParameterTypeDescription
commentjsonUpdate Comment result

Flow Delete Comment

Delete a comment authored by the connected user.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
entityIdstringYesEntity ID, or the original comment ID when reading or posting thread replies
commentIdstringYesComment ID; entityId must be the comment's returned entity_id

Output

No output fields.

Flow Filter Entities

Read one page of IDs matching typed field conditions and AND/OR groups. Continue until nextCursor is null, including after empty pages; results reflect current state.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchIdstringNoBranch ID; omit or use master for Base
filterjsonYesFilter object: {kind:"type",operation:"overlaps",values:[categoryId]}, {kind:"field",category_id,field_key,operation:"contains",value}, or {kind:"group",operator:"and"|"or",conditions:[...]}. Use data-model IDs and field-compatible operators; at most 50 nodes and 5 group levels
cursorstringNoOpaque continuation cursor from the previous page
limitnumberNoMaximum results in this page
timezonestringNoIANA timezone for date filters; defaults to UTC

Output

ParameterTypeDescription
entityIdsarrayMatching entity IDs; fetch entities to read values
nextCursorstringContinue until null, even after an empty page

Flow Get Entity History

Read a page of change history for up to 500 entities. Keep project, branch, and entity IDs fixed while paging; restart if a rebase expires the cursor.

Inputs and outputs

Input

ParameterTypeRequiredDescription
projectIdstringYesProject UUID returned by List Projects
branchIdstringNoBranch ID; omit or use master for Base
entityIdsstringYesComma-separated entity IDs; up to 500 per history page
cursorstringNoOpaque continuation cursor from the previous page
limitnumberNoMaximum results in this page

Output

ParameterTypeDescription
entriesarrayEntity change history page
nextCursorstringContinue until null
Was this helpful?
Suggest an edit