Skip to content
bucker

API reference

digest

2 operations. Shapes are sketches of the declared schemas, bounded in depth — the authoritative document is linked from the index.

GET/digest/resubscribe

No declared credential scheme

Reachable without a Bucker session token. The undo for the line above, authenticated by a signed token of its OWN purpose that this server minted minutes earlier and never put in an email; the durable way back in is the authenticated PUT /me/digest.

Parameters

Parameters for GET /digest/resubscribe
NameInTypeNotes
tokenrequiredquerystringmin length 1

Response 200

{
  optedOut: false
  message: string
}

Response 400 · `bad_request` — the path, query or body failed validation. `details` carries the Zod issues, one per offending field.

{
  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 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 501

{
  error: string
  message: string
}

Request

curl https://api.bucker.io/digest/resubscribe

GET/digest/unsubscribe

No declared credential scheme

Reachable without a Bucker session token. Signed token in the email footer; an unsubscribe link that asks for a login is a spam complaint.

Parameters

Parameters for GET /digest/unsubscribe
NameInTypeNotes
tokenrequiredquerystringmin length 1

Response 200

{
  optedOut: true
  message: string
  resubscribeUrl: string
  resubscribeExpiresInSeconds: integer
}

Response 400 · `bad_request` — the path, query or body failed validation. `details` carries the Zod issues, one per offending field.

{
  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 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 501

{
  error: string
  message: string
}

Request

curl https://api.bucker.io/digest/unsubscribe