Celonis Machine Learning Workbench API
Manage ML notebooks, jobs, executions and schedules in the Celonis Machine Learning Workbench.
Manage ML notebooks, jobs, executions and schedules in the Celonis Machine Learning Workbench.
openapi: 3.1.0
info:
title: Celonis Machine Learning Workbench APIs
description: >-
Documentation for the external Machine Learning APIs. These APIs allow you
to trigger executions, manage resources, and more. To access the APIs, a
Bearer API Key and a team-specific AppKey must be passed in the header.
version: v1.0
servers:
- description: Default Server URL
url: /
security:
- authorization: []
tags:
- name: Notebook
description: The Notebook API is used to create, read, update, and delete notebooks.
- name: Schedule
description: The Schedule API is used to create, read, update, and delete schedules.
- name: Notebook Resources
description: >-
The Notebook Resources API configures notebook resource such as CPU,
memory, storage, and gpu.
- name: Notebook Execution
description: >-
The Notebook Executions API is used to trigger, stop, and track notebook
executions.
- name: Job Execution
description: The Job Execution API is used to trigger, stop, and track job executions.
- name: Job Execution Group
description: The Job Execution Group API retrieves job execution groups.
paths:
/api/scheduling/{id}:
get:
tags:
- Schedule
summary: Get a schedule
operationId: findOne
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/SchedulingTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
put:
tags:
- Schedule
summary: Update a schedule
operationId: update
parameters:
- name: id
in: path
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SchedulingTransport'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/SchedulingTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
delete:
tags:
- Schedule
summary: Delete a schedule
operationId: delete
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/scheduling/{id}/change-status:
put:
tags:
- Schedule
summary: Enable or Disable a schedule
operationId: changeStatus
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: status
in: query
required: true
schema:
type: boolean
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/SchedulingTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}:
get:
tags:
- Notebook
summary: Get an app
operationId: findOne_1
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
put:
tags:
- Notebook
summary: Update an app
operationId: update_1
parameters:
- name: id
in: path
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotebookTransport'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
delete:
tags:
- Notebook
summary: Delete an app
operationId: delete_1
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/upgrade:
put:
tags:
- Notebook
summary: Upgrade app to the latest version
operationId: upgrade
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/resources:
get:
tags:
- Notebook Resources
summary: Get Notebook Resources
operationId: getResources
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookResourcesTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
put:
tags:
- Notebook Resources
summary: Update Notebook Resources
operationId: updateResources
parameters:
- name: id
in: path
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotebookResourcesTransport'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookResourcesTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/probe:
put:
tags:
- Notebook
summary: Check if an app is running
operationId: activeProbe
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/move:
put:
tags:
- Notebook
summary: Move an app from one workspace to another
operationId: moveToWorkspace
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: workspaceId
in: query
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/app-key:
get:
tags:
- Notebook
summary: Get the application key of the app
operationId: getApplicationKey
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/ApplicationKeyTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
put:
tags:
- Notebook
summary: Set an application key to the app
operationId: setApplicationKey
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: appKey
in: query
required: true
schema:
type: string
responses:
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/executions/{id}/stop:
put:
tags:
- Notebook Execution
summary: Stop a running execution
operationId: stop
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/scheduling:
get:
tags:
- Schedule
summary: List all schedules
operationId: findAll
parameters:
- name: notebookId
in: query
required: false
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/SchedulingTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
post:
tags:
- Schedule
summary: Create a schedule
operationId: create
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SchedulingTransport'
required: true
responses:
'201':
description: Created
content:
'*/*':
schema:
$ref: '#/components/schemas/SchedulingTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/scheduling/{id}/run:
post:
tags:
- Schedule
summary: Run a schedule
operationId: runSchedule
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks:
get:
tags:
- Notebook
summary: List all notebooks
operationId: findAll_1
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/NotebookTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
post:
tags:
- Notebook
summary: Create an app
operationId: create_1
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotebookTransport'
required: true
responses:
'201':
description: Created
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/stop:
post:
tags:
- Notebook
summary: Stop an app
operationId: stop_1
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/start:
post:
tags:
- Notebook
summary: Start an app
operationId: start
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/open:
post:
tags:
- Notebook
summary: Open an app
operationId: open
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/jobs/{jobId}/executions:
get:
tags:
- Job Execution
summary: Get all executions
operationId: getExecutions
parameters:
- name: jobId
in: path
required: true
schema:
type: string
- name: pageIndex
in: query
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
- name: limit
in: query
required: false
schema:
type: integer
format: int32
default: 1
minimum: 1
- name: startedOrder
in: query
required: false
schema:
type: string
default: DESC
- name: executionSources
in: query
required: false
schema:
type: array
default:
- DATA_MODEL_RELOAD
- KNOWLEDGE_MODEL
- API
- SKILL_UPDATE
items:
type: string
enum:
- API
- KNOWLEDGE_MODEL
- DATA_MODEL_RELOAD
- SKILL_UPDATE
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/PageJobExecutionTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
post:
tags:
- Job Execution
summary: Trigger an execution
operationId: execute
parameters:
- name: jobId
in: path
required: true
schema:
type: string
requestBody:
description: input
content:
application/json:
schema:
$ref: '#/components/schemas/JsonNode'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/JobExecution'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/jobs/{jobId}/application-key:
post:
tags:
- Job Execution
summary: Update job application key
operationId: updateApplicationKey
parameters:
- name: jobId
in: path
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationKeyTransport'
required: true
responses:
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/jobs/executions/{id}/stop:
post:
tags:
- Job Execution
summary: Stop a running execution
operationId: stop_2
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/jobs/executions/{id}/logs:
get:
tags:
- Job Execution
summary: Get job execution logs
operationId: getLogs
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: logLevels
in: query
required: false
schema:
type: array
default:
- INFO
- DEBUG
- WARNING
- ERROR
items:
type: string
enum:
- DEBUG
- INFO
- WARNING
- ERROR
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/JobExecutionLogTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/executions:
post:
tags:
- Notebook Execution
summary: Trigger an execution
operationId: execute_1
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/NotebookExecutionTransport'
required: true
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookExecutionTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/scheduling/{id}/executions:
get:
tags:
- Schedule
summary: List all executions of a schedule
operationId: findAllExecutions
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: pageIndex
in: query
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
- name: limit
in: query
required: false
schema:
type: integer
format: int32
default: 1
minimum: 1
- name: startedOrder
in: query
required: false
schema:
type: string
default: DESC
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/PageNotebookExecutionTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/versions/latest:
get:
tags:
- Notebook
summary: >-
Get a list of all versions newer than the Notebook id version provided
in the parameter
operationId: getAllNewVersions
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/NotebookVersionTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/llm/access-info:
get:
tags:
- Notebook
summary: Get app's access information for LLM use case
operationId: getAccessInformationLLM
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookAccessInformationTransport'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
$ref: '#/components/schemas/ExceptionReference'
/api/notebooks/{id}/content:
get:
tags:
- Notebook
summary: Get a list of all the files inside the app
operationId: getContents
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: path
in: query
required: false
schema:
type: string
default: ''
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/NotebookTreeItem'
'204':
description: No Content
'400':
description: Bad Request
content:
'*/*':
schema:
$ref: '#/components/schemas/FrontendHandledBackendError'
'403':
description: Forbidden
'500':
description: Internal Server Error
content:
'*/*':
schema:
# --- truncated at 32 KB (59 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/celonis/refs/heads/main/openapi/celonis-mlwb-openapi.yaml