Boomi · Arazzo Workflow

Boomi Schedule a Process

Version 1.0.0

Find a process by name, read its current schedule, and update it.

1 workflow 1 source API 1 provider
View Spec View on GitHub AI AgentsAutomationB2BData IntegrationEDIIntegrationsManagementMFTPlatformWorkflowsArazzoWorkflows

Provider

boomi

Workflows

schedule-process
Resolve a process by name, read its schedule, and apply an updated schedule.
Queries for a process by name, reads its current schedule configuration, and updates the schedule to run on the supplied Atom with the supplied schedule parameters.
3 steps inputs: atomId, processName, schedule outputs: processId, scheduleId
1
findProcess
queryProcesses
Query for a process whose name matches the supplied value, returning the first match.
2
readSchedule
getProcessSchedules
Read the current schedule configuration for the matched process before changing it.
3
applySchedule
updateProcessSchedules
Update the process schedule to run on the supplied Atom with the supplied schedule parameters.

Source API Descriptions

Arazzo Workflow Specification

boomi-schedule-process-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Boomi Schedule a Process
  summary: Find a process by name, read its current schedule, and update it.
  description: >-
    Configures unattended execution for a Boomi process. The workflow resolves a
    process by name, reads its existing schedule configuration, and then writes a
    new schedule that binds the process to a chosen Atom. Every step spells out
    its request inline so the scheduling flow can be read and executed without
    opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: platformApi
  url: ../openapi/boomi-platform-rest-api-openapi.yml
  type: openapi
workflows:
- workflowId: schedule-process
  summary: Resolve a process by name, read its schedule, and apply an updated schedule.
  description: >-
    Queries for a process by name, reads its current schedule configuration, and
    updates the schedule to run on the supplied Atom with the supplied schedule
    parameters.
  inputs:
    type: object
    required:
    - processName
    - atomId
    - schedule
    properties:
      processName:
        type: string
        description: The display name of the process to schedule.
      atomId:
        type: string
        description: The ID of the Atom the schedule should run on.
      schedule:
        type: object
        description: Scheduling parameters including frequency and timing.
  steps:
  - stepId: findProcess
    description: >-
      Query for a process whose name matches the supplied value, returning the
      first match.
    operationId: queryProcesses
    requestBody:
      contentType: application/json
      payload:
        QueryFilter:
          expression:
            operator: AND
            nestedExpression:
            - property: name
              operator: EQUALS
              argument:
              - $inputs.processName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      matchedProcessId: $response.body#/result/0/id
  - stepId: readSchedule
    description: >-
      Read the current schedule configuration for the matched process before
      changing it.
    operationId: getProcessSchedules
    parameters:
    - name: id
      in: path
      value: $steps.findProcess.outputs.matchedProcessId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      scheduleId: $response.body#/id
  - stepId: applySchedule
    description: >-
      Update the process schedule to run on the supplied Atom with the supplied
      schedule parameters.
    operationId: updateProcessSchedules
    parameters:
    - name: id
      in: path
      value: $steps.findProcess.outputs.matchedProcessId
    requestBody:
      contentType: application/json
      payload:
        atomId: $inputs.atomId
        processId: $steps.findProcess.outputs.matchedProcessId
        schedule: $inputs.schedule
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      scheduleId: $response.body#/id
      atomId: $response.body#/atomId
  outputs:
    processId: $steps.findProcess.outputs.matchedProcessId
    scheduleId: $steps.applySchedule.outputs.scheduleId