HTTP API reference
Minimal catalog derived from app/api route handlers. For request/response schemas, read the source or Open your deployment in an API client against https://shynvo.app.
Health
Liveness for load balancers; no auth.
- GET
/api/healthJSON ok, service name, and uptime seconds.
- HEAD
/api/healthSame as GET without body.
Incidents
- GET
/api/incidents/{id}/exportDownload incident as Markdown (authenticated Supabase user).
Auth: Session cookie
- GET
/api/incidents/{id}/evidenceDownload incident evidence pack JSON (timeline, dry-run, audit-linked events).
Auth: Session cookie
- GET
/api/incidents/{id}/reviewDownload post-incident review Markdown (narrative, timeline, execution evidence, audit snapshot).
Auth: Session cookie
- POST
/api/incidents/{id}/rca/runGenerate and persist an incident RCA hypothesis with confidence and evidence references.
Auth: Session cookie
- GET
/api/incidents/{id}/rca/latestFetch latest persisted RCA run for an incident.
Auth: Session cookie
- GET
/api/services/{id}/sloFetch service SLO profile plus latest error budget windows (7d/30d).
Auth: Session cookie
- GET
/api/overview/error-budget-summaryFetch SLO error budget overview across services (critical/warning burn and average used budget).
Auth: Session cookie
Integrations
- POST
/api/integrations/alertsCreate or dedupe incident from monitoring (Bearer alert ingest token).
Auth: Bearer ingest token
Paid-gated per deployment; validates token server-side. Supports normalized Shynvo payload, Datadog, Prometheus/Grafana Alertmanager, PagerDuty, and New Relic payloads (vendor-specific dedupe keys). Optional HMAC signature check via SHYNVO_ALERT_WEBHOOK_SIGNING_SECRET.
- GET
/api/connectors/statusProbe configured reasoning/automation connector URLs.
Auth: Session cookie when Supabase auth is enabled
- POST
/api/integrations/slack/approvalsReceive signed Slack action payloads and decide pending approvals.
Auth: Slack request signature (X-Slack-Signature)
- POST
/api/approvals/policy-suggestions/promotePromote a decision-intelligence policy suggestion into policy review and log audit evidence.
Auth: Session cookie (or session mode fallback)
- GET
/api/governance/policy-blocks/summaryReturn policy-block analytics summary for current user (window=7d|30d, includes prior-window delta and reason distribution).
Auth: Session cookie
Automations
- POST
/api/automations/dry-runRun playbook dry-run; may persist and append audit when configured.
Auth: Session cookie
- POST
/api/automations/executeRecord guarded execution after successful dry-run with approval note and rollback plan.
Auth: Session cookie
- POST
/api/automations/remediateRun guarded remediation with dry-run freshness and accepted policy checks.
Auth: Session cookie
- GET
/api/services/dependency-graphFetch service dependency graph (nodes and directed edges).
Auth: Session cookie
Copilot
- POST
/api/copilot/chatStreaming or JSON chat completion.
Auth: Session cookie
- GET
/api/copilot/threadsList conversation threads.
Auth: Session cookie
- POST
/api/copilot/threadsCreate thread.
Auth: Session cookie
- GET
/api/copilot/threads/{id}/messagesList messages in a thread.
Auth: Session cookie
- POST
/api/copilot/threads/{id}/messagesAppend user message and run assistant turn.
Auth: Session cookie
User-scoped keys
- GET
/api/user/api-keysList API keys (metadata).
Auth: Session cookie
- POST
/api/user/api-keysCreate API key (returns plaintext once).
Auth: Session cookie
- DELETE
/api/user/api-keys/{id}Revoke key.
Auth: Session cookie
- GET
/api/user/alert-ingest-tokensList alert ingest tokens.
Auth: Session cookie
- POST
/api/user/alert-ingest-tokensCreate ingest token (returns secret once).
Auth: Session cookie
- DELETE
/api/user/alert-ingest-tokens/{id}Revoke ingest token.
Auth: Session cookie
Connector proxies
Forward to SHYNVO_REASONING_API_URL and SHYNVO_ROBOT_API_URL when set.
- GET|POST|PUT|PATCH|DELETE
/api/reasoning/*Proxy to reasoning backend.
Auth: Session cookie
- GET|POST|PUT|PATCH|DELETE
/api/robot/*Proxy to automation robot backend.
Auth: Session cookie
Audit
- GET
/api/audit/exportDownload all audit_log rows for the signed-in user as CSV (optional window=24h|7d|30d|all).
Auth: Session cookie
- GET
/api/audit/slack-events/exportDownload Slack delivery audit rows as CSV (optional window=24h|7d|30d|all).
Auth: Session cookie
Billing
- POST
/api/webhooks/lemonsqueezyLemon Squeezy subscription webhook.
Auth: Webhook signature (Lemon)
OpenAPI sketch
Partial YAML for tooling; paths are abbreviated — expand in-repo before publishing a full spec.
openapi: 3.0.3
info:
title: Shynvo API
version: "0.1.0"
servers:
- url: https://shynvo.app
paths:
/api/health:
get:
summary: Liveness and uptime
/api/integrations/alerts:
post:
summary: Alert ingest (Bearer token)
/api/automations/dry-run:
post:
summary: Playbook dry-run
/api/copilot/chat:
post:
summary: Copilot chat
/api/user/api-keys:
get:
summary: List API keys
post:
summary: Create API key