Workday Recruiting · Arazzo Workflow

Workday Recruiting Close a Requisition and Unpost Its Jobs

Version 1.0.0

Confirm a requisition, unpost its active posting, then close the requisition.

1 workflow 1 source API 1 provider
View Spec View on GitHub HCMHuman ResourcesRecruitingSaaSTalent AcquisitionArazzoWorkflows

Provider

workday-recruiting

Workflows

close-requisition-and-unpost
Unpost a requisition's active posting and close the requisition.
Confirms a requisition, finds and unposts its active job posting, then closes the requisition.
4 steps inputs: closeReason, jobRequisitionId outputs: postingId, requisitionId
1
confirmRequisition
getJobRequisition
Read the job requisition to confirm it exists before unposting and closing it.
2
findActivePosting
listJobPostings
Find the active job posting associated with the requisition so it can be removed from career sites.
3
unpostJob
unpostJob
Remove the active posting from career sites so it is no longer visible to external candidates.
4
closeRequisition
closeJobRequisition
Close the requisition with a documented close reason, preventing new applications.

Source API Descriptions

Arazzo Workflow Specification

workday-recruiting-close-requisition-and-unpost-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Workday Recruiting Close a Requisition and Unpost Its Jobs
  summary: Confirm a requisition, unpost its active posting, then close the requisition.
  description: >-
    Cleanly retires a filled or cancelled hiring need. The workflow reads the
    job requisition to confirm it exists, finds the active job posting tied to
    that requisition, removes that posting from career sites so no new
    applications can arrive, and then closes the requisition with a documented
    reason. 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: workdayRecruitingApi
  url: ../openapi/workday-recruiting-rest-api-openapi.yml
  type: openapi
workflows:
- workflowId: close-requisition-and-unpost
  summary: Unpost a requisition's active posting and close the requisition.
  description: >-
    Confirms a requisition, finds and unposts its active job posting, then
    closes the requisition.
  inputs:
    type: object
    required:
    - jobRequisitionId
    properties:
      jobRequisitionId:
        type: string
        description: Workday ID of the requisition to unpost and close.
      closeReason:
        type: object
        description: Reference to the reason for closing the requisition (id + descriptor).
  steps:
  - stepId: confirmRequisition
    description: >-
      Read the job requisition to confirm it exists before unposting and
      closing it.
    operationId: getJobRequisition
    parameters:
    - name: id
      in: path
      value: $inputs.jobRequisitionId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      requisitionId: $response.body#/id
      status: $response.body#/status
  - stepId: findActivePosting
    description: >-
      Find the active job posting associated with the requisition so it can be
      removed from career sites.
    operationId: listJobPostings
    parameters:
    - name: jobRequisition
      in: query
      value: $inputs.jobRequisitionId
    - name: active
      in: query
      value: true
    - name: limit
      in: query
      value: 1
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      postingId: $response.body#/data/0/id
    onSuccess:
    - name: postingFound
      type: goto
      stepId: unpostJob
      criteria:
      - context: $response.body
        condition: $.data.length > 0
        type: jsonpath
    - name: noActivePosting
      type: goto
      stepId: closeRequisition
      criteria:
      - context: $response.body
        condition: $.data.length == 0
        type: jsonpath
  - stepId: unpostJob
    description: >-
      Remove the active posting from career sites so it is no longer visible to
      external candidates.
    operationId: unpostJob
    parameters:
    - name: id
      in: path
      value: $steps.findActivePosting.outputs.postingId
    successCriteria:
    - condition: $statusCode == 200
  - stepId: closeRequisition
    description: >-
      Close the requisition with a documented close reason, preventing new
      applications.
    operationId: closeJobRequisition
    parameters:
    - name: id
      in: path
      value: $inputs.jobRequisitionId
    requestBody:
      contentType: application/json
      payload:
        closeReason: $inputs.closeReason
    successCriteria:
    - condition: $statusCode == 200
  outputs:
    requisitionId: $steps.confirmRequisition.outputs.requisitionId
    postingId: $steps.findActivePosting.outputs.postingId