Gentrace Pipelines API
The Pipelines API from Gentrace — 2 operation(s) for pipelines.
The Pipelines API from Gentrace — 2 operation(s) for pipelines.
openapi: 3.1.0
info:
title: Gentrace Datasets Pipelines API
version: 0.1.0
description: API documentation for Gentrace services.
contact:
name: Gentrace
url: https://gentrace.ai
email: support@gentrace.ai
license:
name: MIT
url: https://opensource.org/licenses/MIT
servers:
- url: https://gentrace.ai/api
description: API Endpoint
security:
- bearerAuth: []
tags:
- name: Pipelines
paths:
/v4/pipelines:
get:
summary: List pipelines
description: List pipelines
operationId: listPipelines
tags:
- Pipelines
parameters:
- $ref: '#/components/parameters/SlugQueryParam'
- $ref: '#/components/parameters/FolderIdQueryParam'
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Pipeline'
required:
- data
'400':
description: Client provided an invalid request for the pipeline. Please check the request format and parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestError'
'401':
description: No valid API key provided.
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: The pipeline resource does not exist.
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
'500':
description: Something went wrong on Gentrace's end.
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
post:
summary: Create a pipeline
description: Create a new pipeline
operationId: createPipeline
tags:
- Pipelines
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreatePipeline'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Pipeline'
'400':
description: Client provided an invalid request for the pipeline. Please check the request format and parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestError'
'401':
description: No valid API key provided.
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: The pipeline resource does not exist.
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
'500':
description: Something went wrong on Gentrace's end.
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
/v4/pipelines/{id}:
get:
summary: Get a single pipeline
description: Retrieve the details of a pipeline by ID
operationId: getPipeline
tags:
- Pipelines
parameters:
- $ref: '#/components/parameters/PipelineIdPathParam'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Pipeline'
'400':
description: Client provided an invalid request for the pipeline. Please check the request format and parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestError'
'401':
description: No valid API key provided.
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: The pipeline resource does not exist.
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
'500':
description: Something went wrong on Gentrace's end.
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
post:
summary: Update a pipeline
description: Update the details of a pipeline by ID
operationId: updatePipeline
tags:
- Pipelines
parameters:
- $ref: '#/components/parameters/PipelineIdPathParam'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePipeline'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Pipeline'
'400':
description: Client provided an invalid request for the pipeline. Please check the request format and parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestError'
'401':
description: No valid API key provided.
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: The pipeline resource does not exist.
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
'500':
description: Something went wrong on Gentrace's end.
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
components:
parameters:
FolderIdQueryParam:
in: query
name: folderId
description: The ID of the folder to filter pipelines by
schema:
$ref: '#/components/schemas/FolderIdQuery'
PipelineIdPathParam:
in: path
name: id
description: Pipeline UUID
schema:
$ref: '#/components/schemas/PipelineIdParam'
required: true
SlugQueryParam:
in: query
name: slug
description: Filter pipelines by slug
schema:
$ref: '#/components/schemas/SlugQuery'
schemas:
UnauthorizedError:
type: object
properties:
message:
type: string
description: Authentication error details
example: Invalid or expired API key
required:
- message
PipelineIdParam:
type: string
format: uuid
description: Pipeline UUID
example: 123e4567-e89b-12d3-a456-426614174000
Pipeline:
type: object
properties:
id:
type: string
format: uuid
description: Pipeline UUID
example: 123e4567-e89b-12d3-a456-426614174000
createdAt:
type: string
description: Creation timestamp (ISO 8601)
example: '2025-04-01T00:00:00.000Z'
updatedAt:
type: string
description: Last update timestamp (ISO 8601)
example: '2025-04-01T00:00:00.000Z'
slug:
type: string
pattern: ^[a-z0-9]+(-[a-z0-9]+)*$
minLength: 1
description: Pipeline slug
example: my-awesome-pipeline
displayName:
type:
- string
- 'null'
description: Pipeline display name
example: My Awesome Pipeline
folderId:
type:
- string
- 'null'
format: uuid
description: Folder UUID
example: 6527747a-ba86-441a-aebd-1ad94460bc89
archivedAt:
type:
- string
- 'null'
description: Archive timestamp (ISO 8601)
example: '2025-04-01T00:00:00.000Z'
goldenDatasetId:
type:
- string
- 'null'
format: uuid
description: Golden dataset UUID
example: 6527747a-ba86-441a-aebd-1ad94460bc89
required:
- id
- createdAt
- updatedAt
- slug
- displayName
- folderId
- archivedAt
- goldenDatasetId
UpdatePipeline:
type: object
properties:
displayName:
type:
- string
- 'null'
description: Pipeline display name
example: My Awesome Pipeline
folderId:
type:
- string
- 'null'
format: uuid
description: Folder UUID
example: 6527747a-ba86-441a-aebd-1ad94460bc89
isArchived:
type: boolean
description: Whether the pipeline is archived
example: false
BadRequestError:
type: object
properties:
message:
type: string
description: A description of the validation error
example: 'Invalid parameters: ''name'' field is required'
required:
- message
FolderIdQuery:
type:
- string
- 'null'
format: uuid
description: The ID of the folder to filter pipelines by
example: 123e4567-e89b-12d3-a456-426614174000
CreatePipeline:
type: object
properties:
slug:
type: string
pattern: ^[a-z0-9]+(-[a-z0-9]+)*$
minLength: 1
description: Pipeline slug
example: my-awesome-pipeline
displayName:
type:
- string
- 'null'
description: Pipeline display name
example: My Awesome Pipeline
folderId:
type:
- string
- 'null'
format: uuid
description: Folder UUID
example: 6527747a-ba86-441a-aebd-1ad94460bc89
default: null
required:
- slug
NotFoundError:
type: object
properties:
message:
type: string
description: Resource not found details
example: Resource with ID '123e4567-e89b-12d3-a456-426614174000' not found
required:
- message
InternalServerError:
type: object
properties:
message:
type: string
description: Internal server error details
example: Internal server error occurred while processing the request
required:
- message
SlugQuery:
anyOf:
- type: string
- type: object
properties:
contains:
type: string
search:
type: string
startsWith:
type: string
endsWith:
type: string
in:
type: array
items:
type: string
notIn:
type: array
items:
type: string
mode:
type: string
enum:
- insensitive
- default
additionalProperties: false
description: Filter pipelines by slug
example: my-pipeline
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'Enter Gentrace API key (Format: Authorization: Bearer <token>)'
externalDocs:
url: https://github.com/gentrace/gentrace-openapi
description: Gentrace OpenAPI Github