Documentation
Everything is plain HTTP. If your client can hold a request open, it can consume NebulaAPI.
Authentication
Pass your token in the X-Auth-Token header. Tokens are scoped
per project and can be rotated without downtime.
X-Auth-Token: 9f4c1a7e2b6d8035
Opening a stream
POST /api/v3/rt/stream HTTP/1.1
Host: nebulaapi.org
X-Auth-Token: 9f4c1a7e2b6d8035
Content-Type: application/octet-stream
<request frames>
The response is chunked and flushes immediately. Sequence numbers are carried
in the page query parameter so a dropped connection can be resumed.
Diagnostics
| Path | Returns |
|---|---|
| /api/v3/diag/ok | Liveness, 12 bytes |
| /api/v3/diag/echo | Request as seen by the origin |
| /api/v3/diag/drip | One line per second, for flush testing |
Rate limits
| Header | Meaning |
|---|---|
| X-RateLimit-Limit | Requests allowed in the window |
| X-RateLimit-Remaining | Requests left |
| X-RateLimit-Reset | Seconds until the window rolls |
Errors
Errors are JSON with an error field and the matching HTTP status.
A 429 always includes Retry-After.