meta
Liveness, readiness, metrics and edition metadata. 3 operations. Shapes are sketches of the declared schemas, bounded in depth — the authoritative document is linked from the index.
GET/edition
Edition, cloud-only features, and withheld capabilities
No declared credential scheme
Reachable without a Bucker session token. Which edition this deployment is, and which cloud-only features are off. A client must know before it can render anything.
Response 200
{
edition: "ce" | "cloud"
features: {
id: string
name: string
enabled: boolean
reason: string | null
docs: string
}[]
withheld: {
id: string
name: string
enabled: boolean
reason: string | null
enableWith: string
}[]
}Response 429 · `rate_limited` or `quota_exceeded` — over a ceiling. `Retry-After` says when to come back, and `x-ratelimit-limit` / `-remaining` / `-reset` describe the bucket.
{
error: {
code: "bad_request" | "conflict" | "forbidden" | "internal_error" | "mfa_required" | "not_found" | "payload_too_large" | "quota_exceeded" | … 6 more
message: string
details?: unknown
requestId?: string
}
}Response 500 · `internal_error` — an unhandled failure on this side. The message is always generic; `requestId` is the part worth quoting.
{
error: {
code: "bad_request" | "conflict" | "forbidden" | "internal_error" | "mfa_required" | "not_found" | "payload_too_large" | "quota_exceeded" | … 6 more
message: string
details?: unknown
requestId?: string
}
}Request
curl https://api.bucker.io/editionGET/health
Liveness probe
No declared credential scheme
Reachable without a Bucker session token. Liveness. Answers without touching anything, by design.
Response 200
{
status: "ok"
service: "bucker-api"
}Response 429 · `rate_limited` or `quota_exceeded` — over a ceiling. `Retry-After` says when to come back, and `x-ratelimit-limit` / `-remaining` / `-reset` describe the bucket.
{
error: {
code: "bad_request" | "conflict" | "forbidden" | "internal_error" | "mfa_required" | "not_found" | "payload_too_large" | "quota_exceeded" | … 6 more
message: string
details?: unknown
requestId?: string
}
}Response 500 · `internal_error` — an unhandled failure on this side. The message is always generic; `requestId` is the part worth quoting.
{
error: {
code: "bad_request" | "conflict" | "forbidden" | "internal_error" | "mfa_required" | "not_found" | "payload_too_large" | "quota_exceeded" | … 6 more
message: string
details?: unknown
requestId?: string
}
}Request
curl https://api.bucker.io/healthGET/ready
Readiness probe
No declared credential scheme
Reachable without a Bucker session token. Readiness, and the Fly http check target. A probe that needed a credential could not be a probe.
Response 200
{
status: "ready"
service: "bucker-api"
database: "ok"
latencyMs: integer
}Response 429 · `rate_limited` or `quota_exceeded` — over a ceiling. `Retry-After` says when to come back, and `x-ratelimit-limit` / `-remaining` / `-reset` describe the bucket.
{
error: {
code: "bad_request" | "conflict" | "forbidden" | "internal_error" | "mfa_required" | "not_found" | "payload_too_large" | "quota_exceeded" | … 6 more
message: string
details?: unknown
requestId?: string
}
}Response 500 · `internal_error` — an unhandled failure on this side. The message is always generic; `requestId` is the part worth quoting.
{
error: {
code: "bad_request" | "conflict" | "forbidden" | "internal_error" | "mfa_required" | "not_found" | "payload_too_large" | "quota_exceeded" | … 6 more
message: string
details?: unknown
requestId?: string
}
}Response 503
{
error: {
code: string
message: string
requestId: string
}
}Request
curl https://api.bucker.io/ready