Workday Benefits Programs API

Provides the ability to import benefits program cards into Workday.

Operations 1

POST /programs Creates a single benefit program instance #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/workday-benefits:workday-benefits-programs-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

workday-benefits-programs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: benefitPartner Programs API
  description: 'The benefitPartner service enables third-party benefit providers to import benefit programs into Workday. Benefit programs can be announcements or other messages the customer wants the software partner to import into Workday. The program can include a title, description, links, and an image and appears as a card on the worker''s home screen.


    Example: A wellness week event, Benefits and Pay Hub announcement, or hosted meeting for speaker with a financial or insurance advisor.'
  version: v1
  x-workday-internal-source: xo
  x-workday-internal-routing: Public
  x-workday-internal-protected-usage-enabled: false
  x-workday-internal-service-container-id: 0216b21ecae410002b4146a0410b0001
servers:
- url: https://<tenantHostname>/benefitPartner/v1
tags:
- name: Programs
  description: Provides the ability to import benefits program cards into Workday.
paths:
  /programs:
    post:
      tags:
      - Programs
      summary: Creates a single benefit program instance
      description: 'Creates a single benefit program instance with the specified data.


        In the request body, specify at least these required fields: url, startDate, endDate, description, title, urlAlias, and programPartner


        Secured By Domain: Manage: Benefit Program Software Partner


        Scope: Benefits


        Contains attachment(s)'
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/benefitProgramsView_0216b21ecae410002d4cc96bee440000'
            x-workday-multipart-root-part-name: jsonData
        x-workday-multipart-root-part-name: jsonData
      responses:
        '201':
          description: Resource created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/benefitProgramsView_0216b21ecae410002d4cc96bee440000'
        '400':
          description: "Invalid request. (https://community.workday.com/rest/error-messages)\n| Severity | Error Code | Validation Message |\n --- | --- | --- |\n| Critical | A1586 | End Date can't be before the Start Date. |\n| Critical | A1587 | Some of the required fields are missing : [fields] |\n| Critical | A1588 | URL Address must start with \"http://\" or \"https://\" |\n| Critical | A1624 | You don't have access to the web service. Request access from your Workday customer. |\n| Critical | A1625 | This image file type is unsupported. Use 1 of the following file types: JPG, JPEG, PNG, BMP or TIFF. |\n| Critical | A1626 | Use an image file with a size 5 MB or less. |\n| Critical | A1627 | Description: 120 character maximum. |\n| Critical | A1655 | Specify an image description in the Alternative Text field for workers that use assistive technology. Character limit: 60. |\n| Critical | A1655 | Title: 60 character maximum. |\n| Critical | A1656 | URL Alias: 24 character maximum. |\n| Critical | A1848 | Specify either the Wellbeing Interest or Wellbeing Category for the Benefit Programs, but not both. |"
          content: {}
        '401':
          description: 'Unauthorized: Missing or invalid credentials. (https://community.workday.com/rest/error-messages)'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VALIDATION_ERROR_MODEL_REFERENCE'
        '403':
          description: User has insufficient permissions. (https://community.workday.com/rest/error-messages)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VALIDATION_ERROR_MODEL_REFERENCE'
        '404':
          description: Resource not found. (https://community.workday.com/rest/error-messages)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VALIDATION_ERROR_MODEL_REFERENCE'
        default:
          description: An error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ERROR_MODEL_REFERENCE'
      x-workday-internal-try-enabled: 'false'
      x-workday-operation-id: 0216b21ecae410002d526247b5a50000
      x-workday-secured-by-domains:
      - 'Manage: Benefit Program Software Partner'
      operationId: postPrograms
      x-operation-id-source: derived
components:
  schemas:
    benefitProgramImageData_1fb0576459ce100013ab27700b0e0000:
      allOf:
      - type: object
        properties:
          alternativeText:
            type: string
            description: Specify a description of the image in the Alternative Text field for users of assistive technology.
            example: Lorem ipsum dolor sit amet, cum choro singulis consectetuer ut, ubique iisque contentiones ex duo. Quo lorem etiam eu.
            x-workday-type: Text
          file:
            type: string
            description: Base64 encoded data
            format: binary
            x-workday-type: File
          fileLength:
            type: integer
            description: length of the file
            format: int32
            example: 99999999999
            x-workday-type: Numeric
          fileName:
            maxLength: 255
            type: string
            description: Name of the file
            example: image.png
            x-workday-type: Text
          contentType:
            $ref: '#/components/schemas/contentType_1fb0576459ce100013ab2834e1a50000'
          id:
            type: string
            description: The id for Attachment Representation (Blobitory)
    programPartner_cc61b1e2830310000c6b33d908470000:
      description: The name of the software partner implementing the benefit program on behalf of the customer. To get the program partner ID, use the Benefit Provider Report in Workday.
      allOf:
      - $ref: '#/components/schemas/INSTANCE_MODEL_REFERENCE'
      - type: object
    image_0216b21ecae410002d4cca0591140004:
      description: 'The image for the benefit program card.   Supported file types: jpeg, png, bmp, and tiff.  Size maximum: 5 MB.  Width and height limits: w 528 X h 276 pixels.'
      allOf:
      - $ref: '#/components/schemas/benefitProgramImageData_1fb0576459ce100013ab27700b0e0000'
      - type: object
    contentType_1fb0576459ce100013ab2834e1a50000:
      description: Image content Type
      allOf:
      - $ref: '#/components/schemas/INSTANCE_MODEL_REFERENCE'
      - type: object
    VALIDATION_ERROR_MODEL_REFERENCE:
      allOf:
      - required:
        - error
        type: object
        properties:
          error:
            type: string
            description: A description of the error
          errors:
            type: array
            description: An array of validation errors
            items:
              $ref: '#/components/schemas/ERROR_MODEL_REFERENCE'
    INSTANCE_MODEL_REFERENCE:
      required:
      - id
      type: object
      properties:
        id:
          pattern: ^(([0-9a-f]{32})|(\S+=\S+))$
          type: string
          description: Workday Id or Reference Id of the instance.
        descriptor:
          type: string
          description: The display name of the instance
          readOnly: true
        href:
          type: string
          description: A link to the instance
          readOnly: true
    ERROR_MODEL_REFERENCE:
      required:
      - error
      type: object
      properties:
        error:
          type: string
          description: A description of the error
        code:
          type: string
          description: The code that corresponds to the error message. Use the error code to drive programmatic error-handling behavior. Don't use error message strings for this purpose because they are subject to change
        field:
          type: string
          description: The field related to the error
        path:
          type: string
          description: The path of the field related to the error
        severity:
          type: string
          description: Severity of the validation (e.g. Critical, Warning).
        internalMessage:
          type: string
          description: Internal message providing additional context for the validation (e.g. representation content validation details).
    benefitProgramsView_0216b21ecae410002d4cc96bee440000:
      allOf:
      - type: object
        properties:
          wellbeingInterest:
            $ref: '#/components/schemas/wellbeingInterest_385dba18341910000a58c69aa2730000'
          programPartner:
            $ref: '#/components/schemas/programPartner_cc61b1e2830310000c6b33d908470000'
          description:
            type: string
            description: 'The text description of the benefit program that the employee sees on the program card.  Charater limit: 375 or less.'
            example: New Benefit Program for Aetna PPO customers
            x-workday-type: Text
          adminNotes:
            type: string
            description: Descriptive text from the benefit program partner to Workday administrators about the benefit program.
            example: Enable this program for salaried group that are eligible for Medical Aetna PPO
            x-workday-type: Text
          image:
            $ref: '#/components/schemas/image_0216b21ecae410002d4cca0591140004'
          endDate:
            type: string
            description: The date when the benefit program ends. Must be after the start date.
            format: date
            x-workday-type: Date
          title:
            type: string
            description: 'The title of the benefit program card.   Character limit: 40 or less.'
            example: Aetna PPO Perks
            x-workday-type: Text
          startDate:
            type: string
            description: The date when the benefit program begins. Must be before the end date.
            format: date
            x-workday-type: Date
          urlAlias:
            type: string
            description: A text string that masks the URL to simplify the URL, making it shorter and easier to use.
            example: Aetna.com
            x-workday-type: Text
          url:
            type: string
            description: A external or internal web link to the benefit program that must begin with http or https.
            example: https://www.Aetna.com
            x-workday-type: Text
          id:
            type: string
            description: The id for Benefit Program
    wellbeingInterest_385dba18341910000a58c69aa2730000:
      description: The Wellbeing Interest implementing the Benefit Program on behalf of the customer.
      allOf:
      - $ref: '#/components/schemas/INSTANCE_MODEL_REFERENCE'
      - type: object
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: https://<tenantAuthorizationHostname>
          scopes: {}