openapi: 3.1.0 info: title: Workday Extend Workday Custom Objects App Configurations Orchestration Executions 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: Orchestration Executions description: Operations for triggering orchestration runs, monitoring execution status, and retrieving execution results. paths: /orchestrations/{orchestrationId}/executions: get: operationId: listOrchestrationExecutions summary: Workday Extend List orchestration executions description: Returns a collection of execution records for the specified orchestration, including completed, running, and failed executions. tags: - Orchestration Executions parameters: - $ref: '#/components/parameters/orchestrationId' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/offset' - name: status in: query description: Filter by execution status schema: type: string enum: - running - completed - failed - cancelled responses: '200': description: Successful response with execution records content: application/json: schema: type: object properties: total: type: integer data: type: array items: $ref: '#/components/schemas/OrchestrationExecution' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' post: operationId: launchOrchestration summary: Workday Extend Launch an orchestration execution description: Triggers a new execution of the specified orchestration. Supports passing input parameters that are mapped to the orchestration's defined inputs. This endpoint can be called from external systems to remotely trigger orchestration workflows. tags: - Orchestration Executions parameters: - $ref: '#/components/parameters/orchestrationId' requestBody: required: false content: application/json: schema: $ref: '#/components/schemas/OrchestrationLaunch' responses: '202': description: Orchestration execution initiated successfully content: application/json: schema: $ref: '#/components/schemas/OrchestrationExecution' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' /orchestrations/{orchestrationId}/executions/{executionId}: get: operationId: getOrchestrationExecution summary: Workday Extend Retrieve an orchestration execution description: Returns the details of a specific orchestration execution including its status, step results, input and output data, and timing information. tags: - Orchestration Executions parameters: - $ref: '#/components/parameters/orchestrationId' - $ref: '#/components/parameters/executionId' responses: '200': description: Successful response with execution details content: application/json: schema: $ref: '#/components/schemas/OrchestrationExecution' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' /orchestrations/{orchestrationId}/executions/{executionId}/cancel: post: operationId: cancelOrchestrationExecution summary: Workday Extend Cancel an orchestration execution description: Cancels a running orchestration execution. Steps that are currently in progress may complete before cancellation takes effect. tags: - Orchestration Executions parameters: - $ref: '#/components/parameters/orchestrationId' - $ref: '#/components/parameters/executionId' responses: '200': description: Execution cancellation initiated content: application/json: schema: $ref: '#/components/schemas/OrchestrationExecution' '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' parameters: offset: name: offset in: query description: Number of results to skip for pagination schema: type: integer default: 0 executionId: name: executionId in: path required: true description: The unique identifier of the orchestration execution schema: type: string orchestrationId: name: orchestrationId in: path required: true description: The unique identifier of the orchestration schema: type: string limit: name: limit in: query description: Maximum number of results to return schema: type: integer default: 20 maximum: 100 schemas: 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 OrchestrationLaunch: type: object properties: input: type: object additionalProperties: true description: Input parameters to pass to the orchestration. The keys must match the orchestration's defined input parameter names. ErrorResponse: type: object properties: error: type: string description: Error code identifying the type of error message: type: string description: Human-readable error message OrchestrationExecution: type: object properties: id: type: string description: Unique identifier for the execution orchestration: $ref: '#/components/schemas/ResourceReference' status: type: string enum: - running - completed - failed - cancelled description: Current status of the execution triggeredBy: type: string enum: - api - event - schedule - business_process - manual description: How the execution was triggered input: type: object additionalProperties: true description: Input parameters provided to the execution output: type: object additionalProperties: true description: Output data produced by the execution startedOn: type: string format: date-time description: Timestamp when the execution started completedOn: type: string format: date-time description: Timestamp when the execution completed durationMs: type: integer description: Execution duration in milliseconds stepsCompleted: type: integer description: Number of steps completed in this execution stepsTotal: type: integer description: Total number of steps in this execution errorMessage: type: string description: Error message if the execution failed href: type: string format: uri 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/