Manages the workflows, including create, update and delete.
Workflow Management API (0.0.4)
The Workflow Management REST APIs allow the creation of a workflow, and steps within the workflow. Steps, and split step options must be assigned actions that are already defined through the Enrollment Actions API. Please see that API for additional information. For split steps only the action definition is to be provided, but the options require a matching action type, and must be of type split.
To create a new workflow:
- Use
POST /workflowswith required fields:name,description - Optionally specify
allowedIpsanddisAllowedIpsfor network restrictions - The workflow will be created with a status of work in progress
- Use
PATCH /workflows/{workflowId}to update workflow properties
Steps define the user journey within a workflow:
- Start Step: Use
POST /workflows/{workflowId}/stepsto create the initial step - Regular Steps: Create additional steps using
POST /workflows/{workflowId}/steps/{stepId} - Split Steps: Create branching logic using split steps with multiple options
- End Steps: Mark steps as terminating to end the workflow
Each step requires an action definition:
- Query available actions using
GET /workflowActionDefinitions - Assign action by setting
actionDefinitionIdin the step - For split steps, create options using
POST /workflows/{workflowId}/steps/{stepId}/splitOptions - Each split option must have a matching action type
Link steps together to create the workflow flow:
- Set
nextStepIdto connect steps in sequence - Use
POST /workflows/{workflowId}/steps/{stepId}/nextSteps/{detachedStepId}to attach steps - For split steps, each option can lead to different next steps
- RUCKUS One API host for North American region.https://api.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
No request payload{ "paging": { "totalCount": 0, "page": 0, "pageSize": 0, "pageCount": 0 }, "content": [ { … } ] }
Request
Creates a new split option for a split step, defining a branching path in the workflow. A split option represents a conditional branch that users can take based on the evaluation of an enrollment action. The new option is automatically added to the end of the existing options list and will be processed in the order they were created. Each split option requires a unique name within the split step and must reference a valid enrollment action that matches the split step's action type. The operation is asynchronous and returns a request ID for tracking the creation process. Split options enable conditional workflow branching where different user paths can lead to different subsequent steps.
- application/json
- application/vnd.ruckus.v1+json
- RUCKUS One API host for North American region.https://api.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
{ "optionName": "string", "enrollmentActionId": "a76b6dde-7900-4ffb-87fb-676692f788d1", "_links": { "property1": { … }, "property2": { … } } }
{ "requestId": "string", "id": "string" }
Request
Creates a new step that will be executed when a specific split option is selected by the user. This operation allows you to define the workflow path that follows a particular split option. If no step is currently assigned to the option, the new step becomes the immediate next step for that option. If a step already exists for the option, the new step is inserted before the existing step, creating a sequential flow. The operation requires a valid action definition that matches the step type being created. This enables complex branching workflows where different split option choices lead to different sequences of steps. The operation is asynchronous and returns a request ID for tracking the creation process.
- application/json
- application/vnd.ruckus.v1+json
The action definition ID for this step. This is a read only attribute for steps, and will be determined by the provided enrollment action on the create. For split steps this will determine the type of options that can be added to the step.
- RUCKUS One API host for North American region.https://api.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}/nextSteps
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}/nextSteps
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}/nextSteps
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
{ "actionDefinitionId": "0b16f95e-fcc6-4107-a58b-86f2fc764d01", "enrollmentActionId": "a76b6dde-7900-4ffb-87fb-676692f788d1", "_links": { "property1": { … }, "property2": { … } }, "type": "SplitStep_v1_0", "firstSplitOption": { "optionName": "string", "enrollmentActionId": "a76b6dde-7900-4ffb-87fb-676692f788d1", "_links": { … } } }
{ "requestId": "string", "id": "string" }
- RUCKUS One API host for North American region.https://api.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
No request payload{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "optionName": "string", "enrollmentActionId": "a76b6dde-7900-4ffb-87fb-676692f788d1", "actionDefinitionId": "0b16f95e-fcc6-4107-a58b-86f2fc764d01", "actionType": "string", "nextStepId": "142c7a6d-2f1c-4ddc-9f1b-2ef0d2239d82", "status": "VALID", "statusReasons": [ { … } ], "_links": { "property1": { … }, "property2": { … } } }
- RUCKUS One API host for North American region.https://api.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}
- RUCKUS One API host for European region.https://api.eu.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}
- RUCKUS One API host for Asian region.https://api.asia.ruckus.cloud/workflows/{workflowId}/steps/{stepId}/splitOptions/{optionId}
- Payload
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
No request payload{ "requestId": "string", "id": "string" }