Unified.to · Arazzo Workflow

Unified.to ATS Job Pipeline

Version 1.0.0

Open a new ATS job, retrieve it, then review the applications attached to it.

1 workflow 1 source API 1 provider
View Spec View on GitHub IntegrationsUnified APIArazzoWorkflows

Provider

unified-to

Workflows

ats-job-pipeline
Create a job, fetch it, and list its applications.
Creates an ATS job in OPEN status, retrieves the created job by id, then lists applications filtered to that job id to surface the candidate pipeline.
3 steps inputs: connectionId, description, jobName outputs: firstApplicationId, jobId, jobStatus
1
createJob
createAtsJob
Open a new job requisition in OPEN status with the supplied title and description.
2
getJob
getAtsJob
Read the created job back by id to confirm it is live on the connection.
3
listJobApplications
listAtsApplications
List applications filtered to the new job to review the candidate pipeline.

Source API Descriptions

Arazzo Workflow Specification

unified-to-ats-job-pipeline-workflow.yml Raw ↑
arazzo: 1.0.1
info:
  title: Unified.to ATS Job Pipeline
  summary: Open a new ATS job, retrieve it, then review the applications attached to it.
  description: >-
    A hiring-manager pattern against the Unified.to unified ATS API. The
    workflow opens a new job requisition on a connection, reads it back by id to
    confirm it is live, and then lists the applications filtered to that job so a
    recruiter can review the candidate pipeline. Every step inlines its request —
    including the required connection_id path parameter — so the flow is
    self-describing.
  version: 1.0.0
sourceDescriptions:
- name: atsApi
  url: ../openapi/unified-to-ats-openapi.yaml
  type: openapi
workflows:
- workflowId: ats-job-pipeline
  summary: Create a job, fetch it, and list its applications.
  description: >-
    Creates an ATS job in OPEN status, retrieves the created job by id, then
    lists applications filtered to that job id to surface the candidate pipeline.
  inputs:
    type: object
    required:
    - connectionId
    - jobName
    properties:
      connectionId:
        type: string
        description: The Unified.to connection id for the target ATS.
      jobName:
        type: string
        description: The title of the job requisition to open.
      description:
        type: string
        description: The job description / responsibilities text.
  steps:
  - stepId: createJob
    description: >-
      Open a new job requisition in OPEN status with the supplied title and
      description.
    operationId: createAtsJob
    parameters:
    - name: connection_id
      in: path
      value: $inputs.connectionId
    requestBody:
      contentType: application/json
      payload:
        name: $inputs.jobName
        description: $inputs.description
        status: OPEN
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      jobId: $response.body#/id
  - stepId: getJob
    description: >-
      Read the created job back by id to confirm it is live on the connection.
    operationId: getAtsJob
    parameters:
    - name: connection_id
      in: path
      value: $inputs.connectionId
    - name: id
      in: path
      value: $steps.createJob.outputs.jobId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      jobStatus: $response.body#/status
  - stepId: listJobApplications
    description: >-
      List applications filtered to the new job to review the candidate
      pipeline.
    operationId: listAtsApplications
    parameters:
    - name: connection_id
      in: path
      value: $inputs.connectionId
    - name: job_id
      in: query
      value: $steps.createJob.outputs.jobId
    - name: limit
      in: query
      value: 50
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      firstApplicationId: $response.body#/0/id
  outputs:
    jobId: $steps.createJob.outputs.jobId
    jobStatus: $steps.getJob.outputs.jobStatus
    firstApplicationId: $steps.listJobApplications.outputs.firstApplicationId