← Back to API Reference overview

Workflow Steps

Endpoints for managing workflow steps in Linkbreakers. Workflow steps define the behavior of links, such as redirection destinations and data collection flows.

Shortcut: ⌘K

#The Workflow Step object

Models a node in the Linkbreakers workflow canvas, defining what should occur after a scan (redirects, gates, forms) and how it connects to other steps in the visitor journey.

canvasPosition

object

Canvas position for React Flow node positioning

childStepIds

array<string>

Child workflow step IDs (steps that this step can transition to, UUID)

createdAt

string (date-time)

When the workflow step was created

eventAction

string (enum)

The event action type for this workflow step

Allowed values
EVENT_ACTION_UNSPECIFIED

Event action not specified

EVENT_ACTION_CLIENT_REDIRECT

Redirect visitors to a destination URL

EVENT_ACTION_QRCODE_SCAN

Entry step triggered when the QR code is scanned.

EVENT_ACTION_PASSWORD_VERIFY

Require visitors to enter a password before proceeding

EVENT_ACTION_FORM_SUBMIT

Present a data collection form to visitors

EVENT_ACTION_CONTACT_CARD

Generate a vCard (VCF) response with contact information

EVENT_ACTION_MULTI_LINK

Present a multi-link page with multiple buttons for different destinations

EVENT_ACTION_SCAN_RESCAN_CONDITION

Route visitors based on whether it's a first scan or rescan

EVENT_ACTION_COUNTRY_CONDITION

Route visitors based on their country location

EVENT_ACTION_DAY_OF_WEEK_CONDITION

Route visitors based on day of week

EVENT_ACTION_TIME_OF_DAY_CONDITION

Route visitors based on time of day

EVENT_ACTION_DAY_OF_MONTH_CONDITION

Route visitors based on day of month

EVENT_ACTION_SPECIFIC_DATE_CONDITION

Route visitors based on specific calendar dates

id

string

The unique identifier of the workflow step (UUID)

kind

string (enum)

The kind of workflow step (entry, exit, etc.) - read-only, determined by server

Allowed values
KIND_UNSPECIFIED

Workflow step kind not specified

KIND_ENTRY

Entry steps are automatically triggered when a visitor reaches the workflow

KIND_EXIT

Exit steps finalize the workflow (commonly a redirect)

KIND_INTERACTION

Interaction steps require visitor input (forms, passwords, etc.)

KIND_CONDITION

Condition steps evaluate logic and route to different next steps

linkId

string

The link ID this workflow step belongs to (UUID)

parentStepIds

array<string>

Parent workflow step IDs (steps that can transition into this step, UUID)

payload

object

Workflow step payload - uses oneof for type safety based on EventAction

updatedAt

string (date-time)

When the workflow step was last updated

GET/v1/links/{linkId}/workflow-steps/{id}Requires auth

#Get workflow step details

Retrieves information about a specific workflow step.

#Parameters

path parameters

linkId

stringRequiredpath

The ID of the link (UUID)

id

stringRequiredpath

The ID of the workflow step to retrieve (UUID)

#Response

200

Everything worked as expected.

workflowStep

object

Models a node in the Linkbreakers workflow canvas, defining what should occur after a scan (redirects, gates, forms) and how it connects to other steps in the visitor journey.

#Error response

400-599

All endpoints may return an unexpected error payload when a request cannot be processed.

error

objectRequired

Wrapped error response.

POST/v1/links/{linkId}/workflow-stepsRequires auth

#Create a new workflow step

This endpoint allows users to create a new workflow step for a link. Workflow steps define the behavior of links, such as redirection destinations.

#Parameters

path parameters

linkId

stringRequiredpath

The ID of the link to create the workflow step for (UUID)

#Request body

canvasPosition

object

Canvas position for React Flow node positioning

eventAction

string (enum)

The event action type for this workflow step

Allowed values
EVENT_ACTION_UNSPECIFIED

Event action not specified

EVENT_ACTION_CLIENT_REDIRECT

Redirect visitors to a destination URL

EVENT_ACTION_QRCODE_SCAN

Entry step triggered when the QR code is scanned.

EVENT_ACTION_PASSWORD_VERIFY

Require visitors to enter a password before proceeding

EVENT_ACTION_FORM_SUBMIT

Present a data collection form to visitors

EVENT_ACTION_CONTACT_CARD

Generate a vCard (VCF) response with contact information

EVENT_ACTION_MULTI_LINK

Present a multi-link page with multiple buttons for different destinations

EVENT_ACTION_SCAN_RESCAN_CONDITION

Route visitors based on whether it's a first scan or rescan

EVENT_ACTION_COUNTRY_CONDITION

Route visitors based on their country location

EVENT_ACTION_DAY_OF_WEEK_CONDITION

Route visitors based on day of week

EVENT_ACTION_TIME_OF_DAY_CONDITION

Route visitors based on time of day

EVENT_ACTION_DAY_OF_MONTH_CONDITION

Route visitors based on day of month

EVENT_ACTION_SPECIFIC_DATE_CONDITION

Route visitors based on specific calendar dates

id

string

Optional ID for the workflow step (UUID; if not provided, will be generated by backend)

payload

object

Workflow step payload - uses oneof for type safety based on EventAction

#Response

200

Everything worked as expected.

workflowStep

object

Models a node in the Linkbreakers workflow canvas, defining what should occur after a scan (redirects, gates, forms) and how it connects to other steps in the visitor journey.

#Error response

400-599

All endpoints may return an unexpected error payload when a request cannot be processed.

error

objectRequired

Wrapped error response.

POST/v1/links/{linkId}/workflow-steps/{parentStepId}/relationshipsRequires auth

#Add relationship between workflow steps

Creates a parent-child relationship between two workflow steps.

#Parameters

path parameters

linkId

stringRequiredpath

The ID of the link (UUID)

parentStepId

stringRequiredpath

The ID of the parent workflow step (UUID)

#Request body

childStepId

string

The ID of the child workflow step (UUID)

#Response

200

Everything worked as expected.

message

string

Confirmation message

#Error response

400-599

All endpoints may return an unexpected error payload when a request cannot be processed.

error

objectRequired

Wrapped error response.

PATCH/v1/links/{linkId}/workflow-steps/{id}Requires auth

#Update a workflow step

Updates an existing workflow step for a link.

#Parameters

path parameters

linkId

stringRequiredpath

The ID of the link (UUID)

id

stringRequiredpath

The ID of the workflow step to update (UUID)

#Request body

canvasPosition

object

Canvas position for React Flow node positioning

payload

object

Workflow step payload - uses oneof for type safety based on EventAction

#Response

200

Everything worked as expected.

workflowStep

object

Models a node in the Linkbreakers workflow canvas, defining what should occur after a scan (redirects, gates, forms) and how it connects to other steps in the visitor journey.

#Error response

400-599

All endpoints may return an unexpected error payload when a request cannot be processed.

error

objectRequired

Wrapped error response.

DELETE/v1/links/{linkId}/workflow-steps/{id}Requires auth

#Delete a workflow step

Removes a workflow step from the link. This operation cannot be undone.

#Parameters

path parameters

linkId

stringRequiredpath

The ID of the link (UUID)

id

stringRequiredpath

The ID of the workflow step to delete (UUID)

#Response

200

Everything worked as expected.

No structured schema available for this section.

#Error response

400-599

All endpoints may return an unexpected error payload when a request cannot be processed.

error

objectRequired

Wrapped error response.

DELETE/v1/links/{linkId}/workflow-steps/{parentStepId}/relationships/{childStepId}Requires auth

#Remove relationship between workflow steps

Removes a parent-child relationship between two workflow steps.

#Parameters

path parameters

linkId

stringRequiredpath

The ID of the link (UUID)

parentStepId

stringRequiredpath

The ID of the parent workflow step (UUID)

childStepId

stringRequiredpath

The ID of the child workflow step (UUID)

#Response

200

Everything worked as expected.

message

string

Confirmation message

#Error response

400-599

All endpoints may return an unexpected error payload when a request cannot be processed.

error

objectRequired

Wrapped error response.