Workday · Arazzo Workflow

Workday Explore Supervisory Organization

Version 1.0.0

Search supervisory organizations, load the first match's detail, and list its workers.

1 workflow 1 source API 1 provider
View Spec View on GitHub Cloud ComputingEnterprise SoftwareFinancial ManagementHCMSaaSArazzoWorkflows

Provider

workday

Workflows

explore-supervisory-org
Search supervisory orgs, load the first match, then list workers.
Searches supervisory organizations by name, then branches: if an organization matched it loads its detail and lists the worker directory, otherwise it ends.
3 steps inputs: authorization, search outputs: matchedOrgId, orgDescriptor, workers
1
searchOrgs
getSupervisoryOrganizations
Search supervisory organizations by name.
2
getOrgDetail
getSupervisoryOrganizationById
Load the detail record for the first matched organization.
3
listWorkers
getWorkers
List the worker directory, used to enumerate members of the organization.

Source API Descriptions

Arazzo Workflow Specification

workday-explore-supervisory-org-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Workday Explore Supervisory Organization
  summary: Search supervisory organizations, load the first match's detail, and list its workers.
  description: >-
    An organization discovery flow. It searches supervisory organizations by
    name and branches on whether a match was found: when at least one matches it
    loads the organization detail and then lists the workers in the directory,
    and when nothing matches it ends. Every step spells out its request inline
    so the flow can be read and executed without opening the underlying OpenAPI
    description.
  version: 1.0.0
sourceDescriptions:
- name: hcmApi
  url: ../openapi/hcm.yml
  type: openapi
workflows:
- workflowId: explore-supervisory-org
  summary: Search supervisory orgs, load the first match, then list workers.
  description: >-
    Searches supervisory organizations by name, then branches: if an
    organization matched it loads its detail and lists the worker directory,
    otherwise it ends.
  inputs:
    type: object
    required:
    - authorization
    - search
    properties:
      authorization:
        type: string
        description: OAuth2 bearer token, e.g. "Bearer eyJ...".
      search:
        type: string
        description: The name to search supervisory organizations by.
  steps:
  - stepId: searchOrgs
    description: Search supervisory organizations by name.
    operationId: getSupervisoryOrganizations
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: search
      in: query
      value: $inputs.search
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      matchedOrgId: $response.body#/data/0/id
    onSuccess:
    - name: orgFound
      type: goto
      stepId: getOrgDetail
      criteria:
      - context: $response.body
        condition: $.data.length > 0
        type: jsonpath
    - name: noOrg
      type: end
      criteria:
      - context: $response.body
        condition: $.data.length == 0
        type: jsonpath
  - stepId: getOrgDetail
    description: Load the detail record for the first matched organization.
    operationId: getSupervisoryOrganizationById
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: ID
      in: path
      value: $steps.searchOrgs.outputs.matchedOrgId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      orgDescriptor: $response.body#/descriptor
  - stepId: listWorkers
    description: List the worker directory, used to enumerate members of the organization.
    operationId: getWorkers
    parameters:
    - name: Authorization
      in: header
      value: $inputs.authorization
    - name: limit
      in: query
      value: 100
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      workers: $response.body#/data
      total: $response.body#/total
  outputs:
    matchedOrgId: $steps.searchOrgs.outputs.matchedOrgId
    orgDescriptor: $steps.getOrgDetail.outputs.orgDescriptor
    workers: $steps.listWorkers.outputs.workers