openapi: 3.1.0 info: title: Workday Payroll Input Deductions Tax Elections 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: Tax Elections description: Access and manage worker tax elections (W-4, state forms) paths: /workers/{workerId}/taxElections: get: operationId: listWorkerTaxElections summary: Workday Payroll List Worker Tax Elections description: Retrieve all tax elections for a worker, including federal W-4 data, state withholding elections, and local tax elections. tags: - Tax Elections parameters: - $ref: '#/components/parameters/workerId' responses: '200': description: Collection of tax elections content: application/json: schema: $ref: '#/components/schemas/TaxElectionCollection' examples: ListWorkerTaxElections200Example: summary: Default listWorkerTaxElections 200 response x-microcks-default: true value: data: - id: tel_w100542_w4_2026 formType: W4 jurisdiction: id: tjur_us_federal descriptor: Weekly USD Pay Group filingStatus: example multipleJobs: true dependentsAmount: 2000.0 otherIncome: 0.0 deductions: 0.0 additionalWithholding: 50.0 effectiveDate: '2026-04-30' submittedOn: '2026-04-30T16:45:00Z' status: Active total: 52 '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: createWorkerTaxElection summary: Workday Payroll Create a Worker Tax Election description: Submit a new tax election for a worker, such as a W-4 update or state withholding form change. tags: - Tax Elections parameters: - $ref: '#/components/parameters/workerId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateTaxElectionRequest' examples: CreateWorkerTaxElectionRequestExample: summary: Default createWorkerTaxElection request x-microcks-default: true value: formType: W4 jurisdictionId: tjur_us_federal filingStatus: example multipleJobs: true dependentsAmount: 2000.0 otherIncome: 0.0 deductions: 0.0 additionalWithholding: 50.0 effectiveDate: '2026-04-30' responses: '201': description: Tax election created content: application/json: schema: $ref: '#/components/schemas/TaxElection' examples: CreateWorkerTaxElection201Example: summary: Default createWorkerTaxElection 201 response x-microcks-default: true value: id: tel_w100542_w4_2026 formType: W4 jurisdiction: id: tjur_us_federal descriptor: Weekly USD Pay Group filingStatus: example multipleJobs: true dependentsAmount: 2000.0 otherIncome: 0.0 deductions: 0.0 additionalWithholding: 50.0 effectiveDate: '2026-04-30' submittedOn: '2026-04-30T16:45:00Z' status: Active '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /workers/{workerId}/taxElections/{electionId}: get: operationId: getWorkerTaxElection summary: Workday Payroll Get a Worker Tax Election description: Retrieve details of a specific tax election for a worker. tags: - Tax Elections parameters: - $ref: '#/components/parameters/workerId' - $ref: '#/components/parameters/electionId' responses: '200': description: Tax election details content: application/json: schema: $ref: '#/components/schemas/TaxElection' examples: GetWorkerTaxElection200Example: summary: Default getWorkerTaxElection 200 response x-microcks-default: true value: id: tel_w100542_w4_2026 formType: W4 jurisdiction: id: tjur_us_federal descriptor: Weekly USD Pay Group filingStatus: example multipleJobs: true dependentsAmount: 2000.0 otherIncome: 0.0 deductions: 0.0 additionalWithholding: 50.0 effectiveDate: '2026-04-30' submittedOn: '2026-04-30T16:45:00Z' status: Active '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. 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. 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. schemas: TaxJurisdictionRef: type: object properties: id: type: string description: Jurisdiction identifier example: tjur_us_federal descriptor: type: string description: Jurisdiction display name example: Weekly USD Pay Group TaxElectionCollection: type: object properties: data: type: array items: $ref: '#/components/schemas/TaxElection' total: type: integer description: Total number of tax elections example: 52 CreateTaxElectionRequest: type: object required: - formType - jurisdictionId - filingStatus properties: formType: type: string enum: - W4 - StateWithholding - LocalWithholding description: Type of tax form example: W4 jurisdictionId: type: string description: Tax jurisdiction identifier example: tjur_us_federal filingStatus: type: string description: Filing status example: example multipleJobs: type: boolean description: Multiple jobs indicator example: true dependentsAmount: type: number format: double description: Dependents amount example: 2000.0 otherIncome: type: number format: double description: Other income amount example: 0.0 deductions: type: number format: double description: Deductions amount example: 0.0 additionalWithholding: type: number format: double description: Additional withholding per period example: 50.0 effectiveDate: type: string format: date description: Effective date example: '2026-04-30' TaxElection: type: object properties: id: type: string description: Unique identifier for the tax election example: tel_w100542_w4_2026 formType: type: string enum: - W4 - StateWithholding - LocalWithholding description: Type of tax form example: W4 jurisdiction: $ref: '#/components/schemas/TaxJurisdictionRef' filingStatus: type: string description: Filing status on the form example: example multipleJobs: type: boolean description: Whether the worker has multiple jobs (W-4 Step 2) example: true dependentsAmount: type: number format: double description: Total amount for dependents (W-4 Step 3) example: 2000.0 otherIncome: type: number format: double description: Other income amount (W-4 Step 4a) example: 0.0 deductions: type: number format: double description: Itemized deductions amount (W-4 Step 4b) example: 0.0 additionalWithholding: type: number format: double description: Extra withholding per period (W-4 Step 4c) example: 50.0 effectiveDate: type: string format: date description: Effective date of the election example: '2026-04-30' submittedOn: type: string format: date-time description: When the election was submitted example: '2026-04-30T16:45:00Z' status: type: string enum: - Active - Superseded - Voided description: Current status of the election example: Active 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. parameters: electionId: name: electionId in: path required: true description: Unique identifier for the tax election schema: type: string example: tel_w100542_w4_2026 workerId: name: workerId in: path required: true description: Unique identifier for the worker schema: type: string example: w_100542 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