Celonis Machine Learning Workbench API

Manage ML notebooks, jobs, executions and schedules in the Celonis Machine Learning Workbench.

OpenAPI Specification

celonis-mlwb-openapi.yaml Raw ↑
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