openapi: 3.1.0 info: title: Workday Payroll Input Deductions Pay Runs API description: API for submitting and managing payroll input data within the Workday platform, including one-time payments, payroll adjustments, supplemental earnings, and batch input submissions. version: v1 contact: name: Workday Support url: https://www.workday.com/en-us/company/customer-support.html email: support@workday.com termsOfService: https://www.workday.com/en-us/legal.html servers: - url: https://api.workday.com/payroll-input/v1 description: Workday Payroll Input Production - url: https://{tenant}.workday.com/api/payroll-input/v1 description: Workday Payroll Input Tenant-Specific variables: tenant: description: Workday tenant identifier default: your-tenant security: - bearerAuth: [] tags: - name: Pay Runs description: Manage payroll processing runs and their lifecycle paths: /payRuns: get: operationId: listPayRuns summary: Workday Payroll List Pay Runs description: Retrieve a collection of payroll runs, optionally filtered by status, pay group, or date range. tags: - Pay Runs parameters: - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - name: payGroupId in: query description: Filter by pay group identifier schema: type: string example: pg_weekly_usd - name: status in: query description: Filter by pay run status schema: type: string enum: - Draft - InProgress - Completed - Cancelled example: Draft - name: fromDate in: query description: Filter pay runs starting from this date schema: type: string format: date example: '2026-04-30' - name: toDate in: query description: Filter pay runs up to this date schema: type: string format: date example: '2026-04-30' responses: '200': description: Collection of pay runs content: application/json: schema: $ref: '#/components/schemas/PayRunCollection' examples: ListPayRuns200Example: summary: Default listPayRuns 200 response x-microcks-default: true value: data: - id: pr_20260430_weekly_001 descriptor: Weekly USD Pay Group payGroup: id: pg_weekly_usd descriptor: Weekly USD Pay Group payPeriod: startDate: '2026-04-30' endDate: '2026-04-30' status: Draft runCategory: Regular paymentDate: '2026-04-30' totalGrossPay: 245830.5 totalNetPay: 178452.3 totalDeductions: 38210.8 totalTaxes: 29167.4 workerCount: 87 currency: USD createdOn: '2026-04-30T16:45:00Z' completedOn: '2026-04-30T16:45:00Z' total: 52 '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createPayRun summary: Workday Payroll Create a Pay Run description: Initiate a new payroll run for a specified pay group and pay period. tags: - Pay Runs requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreatePayRunRequest' examples: CreatePayRunRequestExample: summary: Default createPayRun request x-microcks-default: true value: payGroupId: pg_weekly_usd payPeriod: startDate: '2026-04-30' endDate: '2026-04-30' runCategory: Regular paymentDate: '2026-04-30' responses: '201': description: Pay run created content: application/json: schema: $ref: '#/components/schemas/PayRun' examples: CreatePayRun201Example: summary: Default createPayRun 201 response x-microcks-default: true value: id: pr_20260430_weekly_001 descriptor: Weekly USD Pay Group payGroup: id: pg_weekly_usd descriptor: Weekly USD Pay Group payPeriod: startDate: '2026-04-30' endDate: '2026-04-30' status: Draft runCategory: Regular paymentDate: '2026-04-30' totalGrossPay: 245830.5 totalNetPay: 178452.3 totalDeductions: 38210.8 totalTaxes: 29167.4 workerCount: 87 currency: USD createdOn: '2026-04-30T16:45:00Z' completedOn: '2026-04-30T16:45:00Z' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK /payRuns/{payRunId}: get: operationId: getPayRun summary: Workday Payroll Get a Pay Run description: Retrieve details of a specific payroll run by its identifier. tags: - Pay Runs parameters: - $ref: '#/components/parameters/payRunId' responses: '200': description: Pay run details content: application/json: schema: $ref: '#/components/schemas/PayRun' examples: GetPayRun200Example: summary: Default getPayRun 200 response x-microcks-default: true value: id: pr_20260430_weekly_001 descriptor: Weekly USD Pay Group payGroup: id: pg_weekly_usd descriptor: Weekly USD Pay Group payPeriod: startDate: '2026-04-30' endDate: '2026-04-30' status: Draft runCategory: Regular paymentDate: '2026-04-30' totalGrossPay: 245830.5 totalNetPay: 178452.3 totalDeductions: 38210.8 totalTaxes: 29167.4 workerCount: 87 currency: USD createdOn: '2026-04-30T16:45:00Z' completedOn: '2026-04-30T16:45:00Z' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK patch: operationId: updatePayRun summary: Workday Payroll Update a Pay Run description: Update the status or properties of an existing pay run. tags: - Pay Runs parameters: - $ref: '#/components/parameters/payRunId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdatePayRunRequest' examples: UpdatePayRunRequestExample: summary: Default updatePayRun request x-microcks-default: true value: status: Draft paymentDate: '2026-04-30' responses: '200': description: Pay run updated content: application/json: schema: $ref: '#/components/schemas/PayRun' examples: UpdatePayRun200Example: summary: Default updatePayRun 200 response x-microcks-default: true value: id: pr_20260430_weekly_001 descriptor: Weekly USD Pay Group payGroup: id: pg_weekly_usd descriptor: Weekly USD Pay Group payPeriod: startDate: '2026-04-30' endDate: '2026-04-30' status: Draft runCategory: Regular paymentDate: '2026-04-30' totalGrossPay: 245830.5 totalNetPay: 178452.3 totalDeductions: 38210.8 totalTaxes: 29167.4 workerCount: 87 currency: USD createdOn: '2026-04-30T16:45:00Z' completedOn: '2026-04-30T16:45:00Z' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /payRuns/{payRunId}/complete: post: operationId: completePayRun summary: Workday Payroll Complete a Pay Run description: Mark a pay run as completed, finalizing all payroll calculations and preparing payments for distribution. tags: - Pay Runs parameters: - $ref: '#/components/parameters/payRunId' responses: '200': description: Pay run completed content: application/json: schema: $ref: '#/components/schemas/PayRun' examples: CompletePayRun200Example: summary: Default completePayRun 200 response x-microcks-default: true value: id: pr_20260430_weekly_001 descriptor: Weekly USD Pay Group payGroup: id: pg_weekly_usd descriptor: Weekly USD Pay Group payPeriod: startDate: '2026-04-30' endDate: '2026-04-30' status: Draft runCategory: Regular paymentDate: '2026-04-30' totalGrossPay: 245830.5 totalNetPay: 178452.3 totalDeductions: 38210.8 totalTaxes: 29167.4 workerCount: 87 currency: USD createdOn: '2026-04-30T16:45:00Z' completedOn: '2026-04-30T16:45:00Z' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: responses: Unauthorized: description: Authentication required or token expired content: application/json: schema: $ref: '#/components/schemas/Error' examples: UnauthorizedExample: summary: Default Unauthorized response x-microcks-default: true value: error: INVALID_REQUEST message: Validation failed for the provided fields. details: - field: amount message: Validation failed for the provided fields. BadRequest: description: Invalid request parameters content: application/json: schema: $ref: '#/components/schemas/Error' examples: BadRequestExample: summary: Default BadRequest response x-microcks-default: true value: error: INVALID_REQUEST message: Validation failed for the provided fields. details: - field: amount message: Validation failed for the provided fields. NotFound: description: Resource not found content: application/json: schema: $ref: '#/components/schemas/Error' examples: NotFoundExample: summary: Default NotFound response x-microcks-default: true value: error: INVALID_REQUEST message: Validation failed for the provided fields. details: - field: amount message: Validation failed for the provided fields. schemas: PayPeriod: type: object properties: startDate: type: string format: date description: Start date of the pay period example: '2026-04-30' endDate: type: string format: date description: End date of the pay period example: '2026-04-30' PayGroupRef: type: object properties: id: type: string description: Pay group identifier example: pg_weekly_usd descriptor: type: string description: Pay group display name example: Weekly USD Pay Group CreatePayRunRequest: type: object required: - payGroupId - payPeriod properties: payGroupId: type: string description: Identifier of the pay group for this run example: pg_weekly_usd payPeriod: $ref: '#/components/schemas/PayPeriod' runCategory: type: string enum: - Regular - OffCycle - OnDemand default: Regular description: Category of the pay run example: Regular paymentDate: type: string format: date description: Desired payment date example: '2026-04-30' PayRunCollection: type: object properties: data: type: array items: $ref: '#/components/schemas/PayRun' total: type: integer description: Total number of pay runs matching the query example: 52 Error: type: object properties: error: type: string description: Error code example: INVALID_REQUEST message: type: string description: Human-readable error message example: Validation failed for the provided fields. details: type: array items: type: object properties: field: type: string message: type: string description: Detailed error information UpdatePayRunRequest: type: object properties: status: type: string enum: - Draft - Cancelled description: Updated status for the pay run example: Draft paymentDate: type: string format: date description: Updated payment date example: '2026-04-30' PayRun: type: object properties: id: type: string description: Unique identifier for the pay run example: pr_20260430_weekly_001 descriptor: type: string description: Human-readable name of the pay run example: Weekly USD Pay Group payGroup: $ref: '#/components/schemas/PayGroupRef' payPeriod: $ref: '#/components/schemas/PayPeriod' status: type: string enum: - Draft - InProgress - Completed - Cancelled description: Current status of the pay run example: Draft runCategory: type: string enum: - Regular - OffCycle - OnDemand description: Category of the pay run example: Regular paymentDate: type: string format: date description: Date payments will be distributed example: '2026-04-30' totalGrossPay: type: number format: double description: Total gross pay for the pay run example: 245830.5 totalNetPay: type: number format: double description: Total net pay for the pay run example: 178452.3 totalDeductions: type: number format: double description: Total deductions for the pay run example: 38210.8 totalTaxes: type: number format: double description: Total tax withholdings for the pay run example: 29167.4 workerCount: type: integer description: Number of workers included in the pay run example: 87 currency: type: string description: ISO 4217 currency code example: USD createdOn: type: string format: date-time description: When the pay run was created example: '2026-04-30T16:45:00Z' completedOn: type: string format: date-time description: When the pay run was completed example: '2026-04-30T16:45:00Z' parameters: payRunId: name: payRunId in: path required: true description: Unique identifier for the pay run schema: type: string example: pr_20260430_weekly_001 offset: name: offset in: query description: Number of results to skip for pagination schema: type: integer minimum: 0 default: 0 example: 0 limit: name: limit in: query description: Maximum number of results to return schema: type: integer minimum: 1 maximum: 100 default: 20 example: 20 securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: OAuth 2.0 bearer token obtained through Workday authentication. externalDocs: description: Workday Payroll Input API Documentation url: https://community.workday.com/sites/default/files/file-hosting/productionapi/index.html