UKG · Arazzo Workflow

UKG Pro HCM New Hire Org Placement

Version 1.0.0

Validate org references then submit a department transfer for an employee.

1 workflow 1 source API 1 provider
View Spec View on GitHub Human Capital ManagementHCMWorkforce ManagementHRPayrollTime and AttendanceBenefitsSchedulingArazzoWorkflows

Provider

ukg

Workflows

new-hire-org-placement
Validate department and location references, then submit a transfer.
Confirms the employee, checks the requested department and location exist in the org directories, and submits a Department Transfer personnel change request.
4 steps inputs: effectiveDate, employeeId, newDepartmentId, reason outputs: requestId, status
1
validateEmployee
getEmployee
Confirm the employee exists before placing them in the organization.
2
listDepartments
listDepartments
Retrieve the department directory so the target department can be confirmed to exist before the transfer is submitted.
3
listLocations
listLocations
Retrieve the location directory so the work location context is available when placing the employee.
4
submitPlacement
createPersonnelChangeRequest
Submit a Department Transfer personnel change request that moves the employee into the confirmed department.

Source API Descriptions

Arazzo Workflow Specification

ukg-new-hire-org-placement-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: UKG Pro HCM New Hire Org Placement
  summary: Validate org references then submit a department transfer for an employee.
  description: >-
    Places an employee into the correct department and location in the UKG Pro
    HCM API. The workflow confirms the employee exists, validates the target
    department and location against the organization directories, and then
    submits a department transfer personnel change request referencing the
    confirmed department. The submission response carries a processing status the
    flow surfaces. 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: ukgProHcmApi
  url: ../openapi/ukg-pro-hcm-openapi.yml
  type: openapi
workflows:
- workflowId: new-hire-org-placement
  summary: Validate department and location references, then submit a transfer.
  description: >-
    Confirms the employee, checks the requested department and location exist in
    the org directories, and submits a Department Transfer personnel change
    request.
  inputs:
    type: object
    required:
    - employeeId
    - newDepartmentId
    - effectiveDate
    properties:
      employeeId:
        type: string
        description: The employee to place (e.g. EMP001).
      newDepartmentId:
        type: string
        description: The target department identifier (e.g. DEPT-HR).
      effectiveDate:
        type: string
        description: The effective date of the placement (YYYY-MM-DD).
      reason:
        type: string
        description: The reason for the placement (e.g. New Hire Onboarding).
  steps:
  - stepId: validateEmployee
    description: >-
      Confirm the employee exists before placing them in the organization.
    operationId: getEmployee
    parameters:
    - name: employeeId
      in: path
      value: $inputs.employeeId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      currentDepartmentId: $response.body#/departmentId
      currentLocationId: $response.body#/locationId
  - stepId: listDepartments
    description: >-
      Retrieve the department directory so the target department can be confirmed
      to exist before the transfer is submitted.
    operationId: listDepartments
    parameters:
    - name: per_page
      in: query
      value: 100
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstDepartmentId: $response.body#/0/departmentId
      firstDepartmentName: $response.body#/0/departmentName
  - stepId: listLocations
    description: >-
      Retrieve the location directory so the work location context is available
      when placing the employee.
    operationId: listLocations
    parameters:
    - name: per_page
      in: query
      value: 100
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstLocationId: $response.body#/0/locationId
      firstLocationName: $response.body#/0/locationName
  - stepId: submitPlacement
    description: >-
      Submit a Department Transfer personnel change request that moves the
      employee into the confirmed department.
    operationId: createPersonnelChangeRequest
    requestBody:
      contentType: application/json
      payload:
        employeeId: $inputs.employeeId
        actionType: Department Transfer
        effectiveDate: $inputs.effectiveDate
        reason: $inputs.reason
        newDepartmentId: $inputs.newDepartmentId
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      requestId: $response.body#/requestId
      status: $response.body#/status
  outputs:
    requestId: $steps.submitPlacement.outputs.requestId
    status: $steps.submitPlacement.outputs.status