Workday Extend Custom Object Instances API

Operations for creating, reading, updating, and deleting custom object data instances attached to Workday business objects.

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-extend-custom-object-instances-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 email required.

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

OpenAPI Specification

workday-extend-custom-object-instances-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Workday Extend Workday Custom Objects App Configurations Custom Object Instances API
  description: APIs for defining and managing custom objects that extend Workday's data model to meet specific business needs. When new custom objects and business processes are built, a public REST API is automatically created for other developers and processes to use. Supports both single-instance and multi-instance custom objects attached to standard Workday business objects such as workers and organizations.
  version: v1
  contact:
    name: Workday Developer Support
    url: https://support.developer.workday.com/s/
  termsOfService: https://www.workday.com/en-us/legal.html
servers:
- url: https://{baseUrl}/api/customObjects/v1/{tenant}
  description: Workday Custom Objects API Server
  variables:
    baseUrl:
      default: api.workday.com
    tenant:
      default: tenant
security:
- OAuth2:
  - customObjects:manage
tags:
- name: Custom Object Instances
  description: Operations for creating, reading, updating, and deleting custom object data instances attached to Workday business objects.
paths:
  /workers/{workerId}/customObjects/{customObjectName}:
    get:
      operationId: getWorkerCustomObject
      summary: Workday Extend Retrieve custom object data for a worker
      description: Returns the custom object instance data attached to the specified worker. Supports both single-instance and multi-instance custom objects. For multi-instance objects, returns a collection of instances.
      tags:
      - Custom Object Instances
      parameters:
      - $ref: '#/components/parameters/workerId'
      - $ref: '#/components/parameters/customObjectName'
      responses:
        '200':
          description: Successful response with custom object data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomObjectInstance'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateWorkerCustomObject
      summary: Workday Extend Create or update custom object data for a worker
      description: Creates or updates the custom object instance data attached to the specified worker. If the custom object does not exist for the worker, it is created. Otherwise, the existing data is updated with the provided values.
      tags:
      - Custom Object Instances
      parameters:
      - $ref: '#/components/parameters/workerId'
      - $ref: '#/components/parameters/customObjectName'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomObjectData'
      responses:
        '200':
          description: Custom object data successfully updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomObjectInstance'
        '201':
          description: Custom object data successfully created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomObjectInstance'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteWorkerCustomObject
      summary: Workday Extend Delete custom object data for a worker
      description: Deletes the custom object instance data attached to the specified worker.
      tags:
      - Custom Object Instances
      parameters:
      - $ref: '#/components/parameters/workerId'
      - $ref: '#/components/parameters/customObjectName'
      responses:
        '204':
          description: Custom object data successfully deleted
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
  /organizations/{organizationId}/customObjects/{customObjectName}:
    get:
      operationId: getOrganizationCustomObject
      summary: Workday Extend Retrieve custom object data for an organization
      description: Returns the custom object instance data attached to the specified organization. Supports both single-instance and multi-instance custom objects.
      tags:
      - Custom Object Instances
      parameters:
      - $ref: '#/components/parameters/organizationId'
      - $ref: '#/components/parameters/customObjectName'
      responses:
        '200':
          description: Successful response with custom object data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomObjectInstance'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateOrganizationCustomObject
      summary: Workday Extend Create or update custom object data for an organization
      description: Creates or updates the custom object instance data attached to the specified organization.
      tags:
      - Custom Object Instances
      parameters:
      - $ref: '#/components/parameters/organizationId'
      - $ref: '#/components/parameters/customObjectName'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CustomObjectData'
      responses:
        '200':
          description: Custom object data successfully updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomObjectInstance'
        '201':
          description: Custom object data successfully created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomObjectInstance'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  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'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  schemas:
    CustomObjectData:
      type: object
      additionalProperties: true
      description: Custom object field values as key-value pairs. Keys must match the field API names defined in the custom object definition. Values must conform to the field data types.
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Error code identifying the type of error
        message:
          type: string
          description: Human-readable error message
    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 resource URL
    CustomObjectInstance:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the custom object instance
        definition:
          $ref: '#/components/schemas/ResourceReference'
        parentObject:
          $ref: '#/components/schemas/ResourceReference'
        data:
          type: object
          additionalProperties: true
          description: The custom object field values as key-value pairs where keys are field API names and values match the field data types
        createdOn:
          type: string
          format: date-time
          description: Timestamp when the instance was created
        lastModified:
          type: string
          format: date-time
          description: Timestamp when the instance was last modified
        href:
          type: string
          format: uri
  parameters:
    workerId:
      name: workerId
      in: path
      required: true
      description: The unique Workday identifier of the worker
      schema:
        type: string
    customObjectName:
      name: customObjectName
      in: path
      required: true
      description: The name of the custom object type
      schema:
        type: string
    organizationId:
      name: organizationId
      in: path
      required: true
      description: The unique Workday identifier of the organization
      schema:
        type: string
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://{baseUrl}/authorize
          tokenUrl: https://{baseUrl}/oauth2/{tenant}/token
          scopes:
            customObjects:manage: Manage custom object definitions and instances
            customObjects:read: Read custom object data
externalDocs:
  description: Workday Custom Objects Documentation
  url: https://doc.workday.com/extend/custom-objects/