Skip to main content

API Reference

LogClaw exposes APIs through two access patterns:
  1. Dashboard Proxy — the Next.js Dashboard proxies requests to backend services under /api/<service>/. Use this for browser-based access and when the Dashboard is your entry point.
  2. Direct Service Access — each backend service exposes its own API on its Kubernetes ClusterIP service. Use this for programmatic access from within the cluster.

Service Endpoints

ServiceDashboard ProxyDirect (in-cluster)Port
OTel Collector/api/otel/*logclaw-otel-collector:43184317 (gRPC), 4318 (HTTP)
Bridge/api/bridge/*logclaw-bridge:80808080
OpenSearch/api/opensearch/*logclaw-opensearch:92009200
Ticketing Agent/api/ticketing/*logclaw-ticketing-agent:1808118081
Infrastructure Agent/api/agent/*logclaw-agent:80808080
Airflow/api/airflow/*logclaw-airflow-webserver:80808080
Feast/api/feast/*logclaw-feast:65676567

Authentication

All Dashboard API routes are unauthenticated proxies intended for internal cluster use. Access control is enforced at the Kubernetes NetworkPolicy level — only pods within the tenant namespace can reach backend services. For external access, deploy an ingress controller with authentication (OIDC, mTLS) in front of the Dashboard service.
OpenSearch requests through the Dashboard proxy include Basic Auth headers automatically when OPENSEARCH_USER and OPENSEARCH_PASSWORD environment variables are set.

Common Response Formats

Health Checks

All services implement a standard health check:
{
  "status": "ok"
}

Error Responses

{
  "error": "description of the error",
  "status": 500
}

Proxy Errors

When a backend service is unreachable, the Dashboard returns:
{
  "error": "Service unavailable",
  "status": 502
}