openapi: 3.1.0 info: title: Workday Absence Management Absence Types Benefit Elections API description: Absence Management API for managing leave balances, time-off requests, leaves of absence, and eligible absence types for workers. version: v1 contact: name: Workday Support email: support@workday.com url: https://www.workday.com/en-us/customer-service/support.html license: name: Proprietary url: https://www.workday.com/en-us/legal.html servers: - url: https://wd2-impl-services1.workday.com/ccx/api/absenceManagement/v1/{tenant} description: Workday REST API Server variables: tenant: default: tenant_name description: The Workday tenant identifier security: - OAuth2: - r_absence - w_absence tags: - name: Benefit Elections description: Endpoints for managing benefit elections. paths: /workers/{ID}/benefitElections: get: operationId: getBenefitElections summary: Get Benefit Elections description: Returns current benefit elections for a worker. tags: - Benefit Elections parameters: - $ref: '#/components/parameters/ID' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' responses: '200': description: Successful response containing benefit elections. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/BenefitElection' total: type: integer examples: Getbenefitelections200Example: summary: Default getBenefitElections 200 response x-microcks-default: true value: data: - id: abc123 descriptor: example_value electionStatus: example_value coverageBeginDate: '2026-01-15' coverageEndDate: '2026-01-15' employeeCost: 42.5 employerCost: 42.5 dependents: - {} beneficiaries: - {} total: 10 '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' x-microcks-operation: delay: 0 dispatcher: FALLBACK /workers/{ID}/changeBenefits: post: operationId: changeBenefits summary: Change Benefits description: Initiates a benefit change event for a worker. tags: - Benefit Elections parameters: - $ref: '#/components/parameters/ID' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/BenefitChangeRequest' examples: ChangebenefitsRequestExample: summary: Default changeBenefits request x-microcks-default: true value: benefitEventType: id: abc123 descriptor: example_value href: https://www.example.com eventDate: '2026-01-15' reason: id: abc123 descriptor: example_value href: https://www.example.com responses: '201': description: Benefit change initiated successfully. content: application/json: schema: type: object properties: id: type: string descriptor: type: string examples: Changebenefits201Example: summary: Default changeBenefits 201 response x-microcks-default: true value: id: abc123 descriptor: example_value '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: parameters: offset: name: offset in: query required: false description: The zero-based index of the first object in a response collection. schema: type: integer default: 0 limit: name: limit in: query required: false description: The maximum number of objects in a single response. schema: type: integer default: 20 maximum: 100 ID: name: ID in: path required: true description: The Workday ID of the worker. schema: type: string responses: Unauthorized: description: Authentication credentials were missing or invalid. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' NotFound: description: The requested resource was not found. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' BadRequest: description: The request was invalid or malformed. content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' schemas: ErrorResponse: type: object properties: error: type: string example: example_value errors: type: array items: type: object properties: error: type: string field: type: string example: [] ResourceReference: type: object properties: id: type: string example: abc123 descriptor: type: string example: example_value href: type: string format: uri example: https://www.example.com BenefitElection: type: object properties: id: type: string example: abc123 descriptor: type: string example: example_value benefitPlan: $ref: '#/components/schemas/ResourceReference' coverageLevel: $ref: '#/components/schemas/ResourceReference' electionStatus: type: string description: The status of the election (e.g., Elected, Waived). example: example_value coverageBeginDate: type: string format: date example: '2026-01-15' coverageEndDate: type: string format: date example: '2026-01-15' employeeCost: type: number format: double example: 42.5 employerCost: type: number format: double example: 42.5 currency: $ref: '#/components/schemas/ResourceReference' dependents: type: array items: $ref: '#/components/schemas/ResourceReference' example: [] beneficiaries: type: array items: $ref: '#/components/schemas/ResourceReference' example: [] BenefitChangeRequest: type: object properties: benefitEventType: $ref: '#/components/schemas/ResourceReference' eventDate: type: string format: date example: '2026-01-15' reason: $ref: '#/components/schemas/ResourceReference' required: - benefitEventType - eventDate securitySchemes: OAuth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://wd2-impl-services1.workday.com/ccx/oauth2/{tenant}/authorize tokenUrl: https://wd2-impl-services1.workday.com/ccx/oauth2/{tenant}/token scopes: r_absence: Read absence data w_absence: Write absence data