Skip to content
Project Hollowâ„¢Docs
Hollow AIHollowScriptAppsPlatformDocs
GuidesAPILanguage
Start hereOverviewAuthenticationConventions
Tasks APIOverviewCreate a taskWebhooksRouting rules
Lumen APIOverviewSend logsSend metricsCreate a monitorList monitorsMonitor status

Lumen API

Lumen API

Lumen

Ship logs, metric data points, and uptime/synthetic monitors programmatically to Lumen.

On this pageSend logsSend metricsCreate monitorList monitorsMonitor status
POST/v1/logs

Batch log ingestion. Submit up to 500 entries per request within a 256 KiB body limit.

curl -X POST https://projecthollow.com/monitoring/ingest/v1/logs \
  -H "Authorization: Bearer hlw_sk_…" \
  -H "Content-Type: application/json" \
  -d '{
    "service": "checkout-api",
    "entries": [
      { "level": "error", "message": "database connection timed out", "ts": "2026-07-31T08:00:00Z" }
    ]
  }'

Returns HTTP 202 Accepted: { "accepted": 1 }

POST/v1/metrics

Batch metric ingestion. Submit up to 1,000 data points per request within a 256 KiB body limit.

curl -X POST https://projecthollow.com/monitoring/ingest/v1/metrics \
  -H "Authorization: Bearer hlw_sk_…" \
  -H "Content-Type: application/json" \
  -d '{
    "service": "checkout-api",
    "points": [
      { "name": "request_latency_ms", "value": 142, "ts": "2026-07-31T08:00:00Z", "tags": { "route": "/checkout" } }
    ]
  }'

Returns HTTP 202 Accepted: { "accepted": 1 }

POST/v1/monitors

Create or update HTTP endpoint or synthetic browser monitors. Supply an Idempotency-Key header to uniquely identify the monitor instance.

curl -X POST https://projecthollow.com/monitoring/ingest/v1/monitors \
  -H "Authorization: Bearer hlw_sk_…" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: checkout-uptime-check" \
  -d '{
    "name": "Checkout API Uptime",
    "type": "http",
    "target": "https://checkout.example.com/health",
    "intervalMinutes": 5
  }'

For synthetic browser monitors ({"type": "browser"}), supply a steps array (up to 20 steps per monitor). Each step specifies kind (click, fill, wait_for, or assert_text), a DOM selector string, optional text value, and optional timeoutMs (default 10,000 ms).

201 Created
Returns { "id": "mon_123" } for new monitors.
200 OK
Returns { "id": "mon_123", "duplicate": true } when updating an existing monitor with matching idempotency key.
GET/v1/monitors

Fetch all active monitors configured for your developer key owner.

{
  "monitors": [
    { "id": "mon_123", "name": "Checkout API Uptime", "type": "http", "target": "https://checkout.example.com/health", "status": "up", "intervalMinutes": 5 }
  ]
}
GET/v1/monitors/{id}/status

Retrieve status details and timestamp for a specific monitor instance.

{ "id": "mon_123", "status": "up", "lastCheckedAt": "2026-07-31T08:00:00Z" }

Project Hollow

Hollow AIAppsPlatform

Documentation

OverviewGetting startedHollow StudioApp reference

Account

Sign inCreate accountEarly access

Legal

PrivacyTermsContact
© 2026 Project Hollow