Resources

API Operations Hub

One fast workspace for API reference, endpoint diagnostics, and runtime health checks.

Reference10 endpoints
DiagnosticsUnified probe
CoverageHealth + QA

Search and filter control the API catalog below and keep diagnostics focused on the endpoint you care about.

API Reference

GET /api/sitehealth — Site health aggregate

Primary site-health response with aggregate status and diagnostics.

Expected request payload: none (GET without body).

GET /api/sitehealth HTTP/1.1
Host: kettlelogic.com

Expected response payload:

{
  "ok": true,
  "name": "kettlelogic-site",
  "version": "2026.03",
  "uptime_s": 12345,
  "routes": [{"path": "/api", "ok": true}],
  "timestamp": "2026-03-01T16:20:00Z"
}
curl -s http://localhost:8080/api/sitehealth
GET /api/qa/run — Full QA route checks

Runs multi-route smoke checks and returns per-route pass/fail diagnostics.

Expected request payload: none (GET without body).

GET /api/qa/run HTTP/1.1
Host: kettlelogic.com

Expected response payload:

{
  "ok": true,
  "summary": {"total": 7, "passed": 7, "failed": 0},
  "checks": [
    {"route": "/api", "ok": true, "status": 200},
    {"route": "/api/sitehealth", "ok": true, "status": 200}
  ]
}
curl -s http://localhost:8080/api/qa/run
GET /api — Baseline API ping

Fast metadata and uptime check for lightweight probes.

Expected request payload: none (GET without body).

GET /api HTTP/1.1
Host: kettlelogic.com

Expected response payload:

{"ok": true, "service": "kettlelogic", "uptime_s": 12345}
curl -s http://localhost:8080/api
GET /api/labs — Labs payload

Validates lab route wiring and data used by interactive demo experiences.

Expected request payload: none (GET without body).

GET /api/labs HTTP/1.1
Host: kettlelogic.com

Expected response payload:

{
  "ok": true,
  "games": ["kettletris", "backlog", "steamrunner"],
  "featured": "kettletris"
}
curl -s http://localhost:8080/api/labs
GET /api/leaderboard — Team leaderboard

Returns score + ranking payload used by game and competition widgets.

Expected request payload: none (GET without body).

GET /api/leaderboard HTTP/1.1
Host: kettlelogic.com

Expected response payload:

{
  "ok": true,
  "leaders": [
    {"team": "North Ops", "score": 980},
    {"team": "Platform Core", "score": 910}
  ]
}
curl -s http://localhost:8080/api/leaderboard
GET /api/health — Lightweight health

Minimal heartbeat endpoint for low-overhead checks.

Expected request payload: none (GET without body).

GET /api/health HTTP/1.1
Host: kettlelogic.com

Expected response payload:

{"ok": true, "status": "healthy"}
curl -s http://localhost:8080/api/health
GET /api/config — Runtime contact config

Returns public runtime values needed by the contact form (for example the Turnstile site key).

Expected request payload: none (GET without body).

GET /api/config HTTP/1.1
Host: kettlelogic.com

Expected response payload:

{"turnstileSiteKey": "..."}
curl -s http://localhost:8080/api/config
POST /api/contact — Contact intake + delivery

Validates contact requests, verifies Turnstile when configured, and delivers the message through Resend.

Expected request payload:

POST /api/contact HTTP/1.1
Host: kettlelogic.com
Content-Type: application/json

{"name":"Alex","email":"alex@example.com","company":"Northwind","inquiryType":"Strategy session","message":"Need faster release governance."}

Expected response payload:

{"ok": true, "message": "Contact received"}
curl -s -X POST http://localhost:8080/api/contact -H 'Content-Type: application/json' -d '{"name":"Alex","email":"alex@example.com","inquiryType":"Strategy session","message":"Need help."}'
GET /api/metrics — Prometheus metrics

Exports analytics, contact, and scrape counters in Prometheus text format.

Expected request payload: none (GET without body). Use Bearer auth when METRICS_TOKEN is configured.

GET /api/metrics HTTP/1.1
Host: kettlelogic.com
Authorization: Bearer <METRICS_TOKEN>

Expected response payload:

# TYPE kl_site_events_total counter
kl_site_events_total{event="page_view",page="/"} 42
curl -s http://localhost:8080/api/metrics -H 'Authorization: Bearer $METRICS_TOKEN'
GET/POST /api/echo — Request wiring validation

Use GET query echo and POST JSON echo to validate client request payloads quickly.

Expected request payloads:

GET /api/echo?ping=1 HTTP/1.1
Host: kettlelogic.com

POST /api/echo HTTP/1.1
Host: kettlelogic.com
Content-Type: application/json

{"msg":"hello"}

Expected response payloads:

{"ok": true, "query": {"ping": ["1"]}}

{"ok": true, "body": {"msg": "hello"}}
curl -s 'http://localhost:8080/api/echo?ping=1'
curl -s -X POST http://localhost:8080/api/echo -H 'Content-Type: application/json' -d '{"msg":"hello"}'

Diagnostics Console

Choose any endpoint (including /api/sitehealth and /api/qa/run) and run one shared diagnostic control.

-
/api/sitehealth
Waiting
Book a call Response in 1 business day