For the complete documentation index, see llms.txt. This page is also available as Markdown.

HTTP API

e6 Ingestion Engine exposes an HTTP API for managing pipelines, connections, and jobs programmatically.

Base URL

http://<controller-host>:8000/api/v1

All endpoints below are relative to this base URL.

Authentication

Include the API token in the Authorization header:

curl -H "Authorization: Bearer <token>" http://localhost:8000/api/v1/pipelines

Response Format

All responses are JSON. Errors return:

{
  "error": "descriptive error message"
}

List endpoints use cursor-based pagination:

{
  "data": [...],
  "has_more": true
}

Pass ?starting_after=<last_id>&limit=10 to paginate.


Pipelines

Create Pipeline

Creates a pipeline and starts it immediately.

Request:

Field
Type
Required
Description

name

string

yes

Pipeline name

query

string

yes

SQL query defining the pipeline

parallelism

integer

yes

Number of parallel subtasks

checkpoint_interval_micros

integer

no

Checkpoint interval in microseconds (default: 30s)

Response: Pipeline object


Create Preview Pipeline

Creates a short-lived pipeline (60s TTL) for testing queries interactively.

Request:

Field
Type
Required
Description

query

string

yes

SQL query to preview

enable_sinks

boolean

no

Whether to write to real sinks (default: false)

Response: Pipeline object


List Pipelines

Query Parameters:

Parameter
Type
Description

starting_after

string

Cursor for pagination

limit

integer

Items per page (default: 10)

Response:


Get Pipeline

Response: Pipeline object


Update Pipeline

Updates pipeline configuration. Only provided fields are changed.

Request:

Field
Type
Description

parallelism

integer

New parallelism (triggers rescaling)

checkpoint_interval_micros

integer

New checkpoint interval

stop

string

Stop mode: "none", "graceful", "immediate", "checkpoint", "force"

Response: Pipeline object


Restart Pipeline

Restarts a stopped or failed pipeline.

Request:

Field
Type
Description

force

boolean

Skip taking a final checkpoint before restart (default: false)

Response: Pipeline object


Delete Pipeline

Deletes a pipeline. The pipeline must be in a terminal state (Stopped, Finished, or Failed).

Response: 200 OK


Validate Query

Validates a SQL query without creating a pipeline. Returns the execution graph or validation errors.

Request:

Response:


Jobs

A job represents a single execution of a pipeline. Each time a pipeline starts or restarts, a new job is created.

List Jobs

Returns all jobs across all pipelines.

Returns jobs for a specific pipeline.

Response:


Get Job Errors

Returns error and warning messages for a job.

Query Parameters:

Parameter
Type
Description

starting_after

string

Cursor for pagination

limit

integer

Items per page

Response:


Get Job Checkpoints

Returns all checkpoints for a job.

Response:


Get Checkpoint Details

Returns per-operator checkpoint details for a specific epoch.

Response:


Get Job Metrics

Returns per-operator metrics for a running job.


Get Job Output (SSE)

Streams pipeline output in real-time via Server-Sent Events. Only available for pipelines with a preview sink.

Response: text/event-stream

Each event contains:


Connection Profiles

A connection profile stores reusable connection credentials (e.g., Kafka bootstrap servers, authentication).

Create Connection Profile

Request:

Response: ConnectionProfile object

Typed endpoints are also available for specific connectors:


List Connection Profiles

Response:


Get Connection Profile


Delete Connection Profile

Fails if the profile is referenced by any connection tables.


Test Connection Profile

Tests connectivity with the provided configuration.

Request: Same as create.

Response:


Autocomplete

Returns available values for the connection (e.g., Kafka topic names).

Response:


Connection Tables

A connection table defines a specific source or sink - binding a connector, connection profile, schema, and table-specific configuration together.

Create Connection Table

Request:

Typed endpoints are also available:

Response: ConnectionTable object


List Connection Tables

Query Parameters:

Parameter
Type
Description

starting_after

string

Cursor for pagination

limit

integer

Items per page


Get Connection Table


Delete Connection Table


Test Connection Table

Tests reading from a source with the provided configuration. Returns results as a Server-Sent Events stream.


Validate Schema

Validates a schema definition.



Connectors

List Available Connectors

Returns metadata about all available connectors.

Response:


Health

Ping

Returns "Pong" - used for health checks. No authentication required.

Last updated

Was this helpful?