Kubeflow Pipelines Experiments API

Group runs and recurring jobs into experiments

OpenAPI Specification

kubeflow-pipelines-experiments-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Kubeflow Pipelines REST Experiments API
  description: REST API for the Kubeflow Pipelines platform (v2beta1). Provides programmatic access to manage experiments, pipelines, pipeline versions, runs, and recurring jobs on a Kubeflow Pipelines deployment. Authentication is handled by the Kubeflow distribution and is typically a bearer token or session cookie passed in request headers.
  version: 2beta1
  contact:
    name: Kubeflow Pipelines
    url: https://www.kubeflow.org/docs/components/pipelines/
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
- url: https://{host}/pipeline
  description: Kubeflow Pipelines deployment (replace {host} with your cluster hostname)
  variables:
    host:
      default: kubeflow.example.com
      description: Hostname of the Kubeflow deployment
security:
- bearerAuth: []
tags:
- name: Experiments
  description: Group runs and recurring jobs into experiments
paths:
  /apis/v2beta1/experiments:
    get:
      tags:
      - Experiments
      operationId: listExperiments
      summary: List experiments
      parameters:
      - in: query
        name: namespace
        schema:
          type: string
      - in: query
        name: page_size
        schema:
          type: integer
      - in: query
        name: page_token
        schema:
          type: string
      - in: query
        name: sort_by
        schema:
          type: string
      - in: query
        name: filter
        schema:
          type: string
      responses:
        '200':
          description: List of experiments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListExperimentsResponse'
    post:
      tags:
      - Experiments
      operationId: createExperiment
      summary: Create a new experiment
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Experiment'
      responses:
        '200':
          description: Experiment created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Experiment'
  /apis/v2beta1/experiments/{experiment_id}:
    get:
      tags:
      - Experiments
      operationId: getExperiment
      summary: Get experiment by ID
      parameters:
      - in: path
        name: experiment_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Experiment
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Experiment'
    delete:
      tags:
      - Experiments
      operationId: deleteExperiment
      summary: Delete experiment
      parameters:
      - in: path
        name: experiment_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Deleted
components:
  schemas:
    Experiment:
      type: object
      properties:
        experiment_id:
          type: string
          readOnly: true
        display_name:
          type: string
        description:
          type: string
        created_at:
          type: string
          format: date-time
          readOnly: true
        namespace:
          type: string
        storage_state:
          type: string
          enum:
          - AVAILABLE
          - ARCHIVED
    ListExperimentsResponse:
      type: object
      properties:
        experiments:
          type: array
          items:
            $ref: '#/components/schemas/Experiment'
        total_size:
          type: integer
        next_page_token:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token issued by your Kubeflow distribution's identity provider. Some deployments use a session cookie instead.