Workday Studio Human Resources API

Web service operations for managing employee data, worker records, organizational structures, and HR transactions.

OpenAPI Specification

workday-studio-human-resources-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Workday Studio Integration Absence Management Human Resources API
  description: API for building and deploying custom integrations using Workday Studio, an Eclipse-based IDE that provides a graphical development environment with drag-and-drop reusable components for creating sophisticated integrations with flow control, data transformation, error handling, and scripting. Enables programmatic management of integration systems, events, assemblies, and launch parameters within the Workday platform.
  version: v1
  contact:
    name: Workday API Support
    email: api-support@workday.com
    url: https://community.workday.com
  license:
    name: Proprietary
    url: https://www.workday.com/en-us/legal/site-terms.html
  termsOfService: https://www.workday.com/en-us/legal.html
servers:
- url: https://{baseUrl}/ccx/service/{tenant}
  description: Workday Integration Services Server
  variables:
    baseUrl:
      default: wd2-impl-services1.workday.com
      description: The Workday data center hostname
    tenant:
      default: tenant
      description: The Workday tenant name
security:
- OAuth2:
  - r:integrations
  - w:integrations
tags:
- name: Human Resources
  description: Web service operations for managing employee data, worker records, organizational structures, and HR transactions.
paths:
  /Human_Resources:
    get:
      operationId: getHumanResourcesService
      summary: Workday Studio Retrieve Human Resources Service Metadata
      description: Returns metadata about the Human Resources web service including available operations, supported versions, and WSDL location.
      tags:
      - Human Resources
      responses:
        '200':
          description: Service metadata for Human Resources
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceMetadata'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /Human_Resources/Get_Workers:
    post:
      operationId: getWorkers
      summary: Workday Studio Retrieve Workers
      description: Returns a collection of worker records including employees and contingent workers. Supports filtering by worker type, organization, date ranges, and various worker attributes.
      tags:
      - Human Resources
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetWorkersRequest'
      responses:
        '200':
          description: Successful response with worker data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkersResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
  /Human_Resources/Get_Organizations:
    post:
      operationId: getOrganizations
      summary: Workday Studio Retrieve Organizations
      description: Returns a collection of organization records including supervisory organizations, cost centers, company structures, and custom organization types.
      tags:
      - Human Resources
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetOrganizationsRequest'
      responses:
        '200':
          description: Successful response with organization data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationsResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
components:
  schemas:
    GetOrganizationsRequest:
      type: object
      properties:
        requestCriteria:
          $ref: '#/components/schemas/RequestCriteria'
        organizationType:
          type: string
          description: Filter by organization type
    ResourceReference:
      type: object
      properties:
        id:
          type: string
          description: The Workday ID of the referenced resource
        descriptor:
          type: string
          description: The display name of the referenced resource
        href:
          type: string
          format: uri
          description: The API URL to retrieve the full resource
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: A high-level error message
        errors:
          type: array
          items:
            type: object
            properties:
              error:
                type: string
              field:
                type: string
              message:
                type: string
    OrganizationsResponse:
      type: object
      properties:
        total:
          type: integer
        data:
          type: array
          items:
            $ref: '#/components/schemas/Organization'
    GetWorkersRequest:
      type: object
      properties:
        requestCriteria:
          $ref: '#/components/schemas/RequestCriteria'
        workerReferenceIDs:
          type: array
          description: Specific worker IDs to retrieve
          items:
            type: string
        organizationReference:
          $ref: '#/components/schemas/ResourceReference'
    Organization:
      type: object
      properties:
        id:
          type: string
          description: The Workday ID of the organization
        descriptor:
          type: string
          description: The display name of the organization
        organizationType:
          type: string
          description: The type of organization
        organizationCode:
          type: string
          description: The organization reference code
        isActive:
          type: boolean
          description: Whether the organization is currently active
        manager:
          $ref: '#/components/schemas/ResourceReference'
        superior:
          $ref: '#/components/schemas/ResourceReference'
    WorkersResponse:
      type: object
      properties:
        total:
          type: integer
          description: Total number of workers matching the criteria
        data:
          type: array
          items:
            $ref: '#/components/schemas/Worker'
    ServiceMetadata:
      type: object
      description: Metadata about a Workday web service including its operations and supported versions.
      properties:
        serviceName:
          type: string
          description: The name of the web service
        version:
          type: string
          description: The current version of the web service
        wsdlUrl:
          type: string
          format: uri
          description: The URL to the WSDL definition for the service
        operations:
          type: array
          description: The list of operations available in the service
          items:
            type: object
            properties:
              operationName:
                type: string
                description: The name of the operation
              description:
                type: string
                description: A description of the operation
    RequestCriteria:
      type: object
      description: Common request criteria for filtering web service results
      properties:
        effectiveDate:
          type: string
          format: date
          description: The effective date for the request
        fromDate:
          type: string
          format: date
          description: The start date for date range filtering
        toDate:
          type: string
          format: date
          description: The end date for date range filtering
        pageSize:
          type: integer
          description: The number of records to return per page
          default: 100
          maximum: 999
        page:
          type: integer
          description: The page number to return
          default: 1
    Worker:
      type: object
      properties:
        id:
          type: string
          description: The Workday ID of the worker
        descriptor:
          type: string
          description: The display name of the worker
        workerID:
          type: string
          description: The employee or contingent worker ID
        workerType:
          type: string
          description: The type of worker
          enum:
          - Employee
          - Contingent_Worker
        businessTitle:
          type: string
          description: The worker's current business title
        primaryWorkEmail:
          type: string
          format: email
          description: The worker's primary work email address
        hireDate:
          type: string
          format: date
          description: The date the worker was hired
        supervisoryOrganization:
          $ref: '#/components/schemas/ResourceReference'
        location:
          $ref: '#/components/schemas/ResourceReference'
  responses:
    Forbidden:
      description: Insufficient permissions
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    BadRequest:
      description: Invalid request parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://{baseUrl}/authorize
          tokenUrl: https://{baseUrl}/oauth2/{tenant}/token
          refreshUrl: https://{baseUrl}/oauth2/{tenant}/token
          scopes:
            r:integrations: Read integration data
            w:integrations: Write integration data
externalDocs:
  description: Workday Studio Integration Documentation
  url: https://doc.workday.com/reader/wsiU0cnNjCc_k7shLNxLEA/HdIduH8HQGat1qdv1nXNVQ