Configuration
Each project in GlassFlow AI Runtime has its own pipeline configuration. You can manage it through the web UI or the control plane API.
Pipeline
The pipeline processes incoming OTLP data before forwarding it to an AI agent. It has three parts:
Filter
An optional expression-based filter that drops records that don’t match. Uses the expr language.
Example expressions:
severityNumber >= 17Only forward ERROR and FATAL logs.
resourceAttributes["service.name"] == "my-service"Only forward logs from a specific service.
severityNumber >= 9 && resourceAttributes["k8s.namespace.name"] == "production"Only forward warnings and above from production.
Transform
Optional field transformations applied to each record after filtering. Each transform extracts or computes a value and adds it to the record.
| Field | Description |
|---|---|
expression | An expr expression evaluated against the record |
output_name | The field name to write the result to |
output_type | The result type: string, int, int64, float64, bool |
Example:
| Expression | Output name | Type |
|---|---|---|
resourceAttributes["service.name"] | service | string |
severityNumber >= 17 | is_error | bool |
Agent endpoint
The URL where the pipeline sends batched, filtered records. Set this to your AI agent’s processing endpoint (e.g. http://my-agent:8000/process).
The pipeline only activates for projects that have an agent endpoint configured. Leave it empty to disable pipeline processing.
The pipeline batches up to 10 records per request. Each batch is sent as a JSON array in the POST body, with X-Project-ID and X-Request-ID headers.
Sinks
Sinks receive enriched output from AI agents (via the NATS output stream) and dispatch it to external destinations.
Webhook
Sends the agent output as an HTTP request:
| Field | Description |
|---|---|
| URL | The webhook endpoint |
| Method | HTTP method (POST, PUT, etc.) |
| Headers | Custom headers (JSON object) |
Slack
Posts the agent output to a Slack channel via an incoming webhook:
| Field | Description |
|---|---|
| Webhook URL | Slack incoming webhook URL |
API keys
Each project has API keys used to authenticate:
- OTLP ingest — your applications include the key in the
X-API-Keyheader when sending telemetry - Agent output — the GlassFlow SDK uses the key to send enriched results back to the receiver
Create and manage keys in the project’s API Keys page.
API reference
All configuration is available via the control plane REST API:
| Endpoint | Method | Description |
|---|---|---|
/api/v1/projects/{id}/pipeline | GET / PUT | Pipeline config (filter, transforms) |
/api/v1/projects/{id}/bridge | GET / PUT | Agent endpoint URL |
/api/v1/projects/{id}/sinks | GET / PUT | Sink configuration |
/api/v1/projects/{id}/keys | GET / POST | API key management |