Skip to main content
GET
Get bridge health
Alpha Preview — Endpoints and response shape may change without notice.
GET /api/2/bridge/health returns the bridge’s current health: whether fills are going out, how long they take, and how loaded the solver is. Use it for a status page, or to pause quoting when the bridge is paused or down. No query parameters. The solver publishes this data every 5 seconds, so two calls within that window return the same snapshot.

Response

State

Fields

  • shedding — the solver leader is saturated by incoming deposits, so cross-chain quotes return 503 (“Bridge temporarily at capacity”) until it recovers, usually within a few minutes. Deposits already made are still filled. Same-chain swaps are not affected.
  • killswitchActive — the treasury killswitch. null when the leader isn’t publishing activity.
  • fills — null when the leader isn’t publishing activity.
    • pending — intents in filling or retrying, created in the last 24 hours.
    • oldestPendingSec — age of the oldest of those, or null when nothing is pending.
    • lastMinute — fills confirmed in the last minute.
    • latencyMs.p50 / latencyMs.p90 — time from deposit detection to fill, over fills confirmed in the last 10 minutes. null when there were none. A retried fill counts its full wait, so a recovery after an incident shows up here.
  • refunds — null when the leader isn’t publishing activity.
    • pending — intents in refunding, created in the last 24 hours.
    • lastMinute — refunds completed in the last minute.
  • pods — every solver replica that reported in the last 30 seconds, leader first.
    • leader — held the leader lease when its snapshot was taken. Only the leader moves funds.
    • cpuCores — CPU used over the last 5 seconds, in cores (1 = one full core).
    • eventLoopUtilization — share of the last 5 seconds the main thread was busy (1 = saturated).
    • rssMB / heapUsedMB — process memory.
    • uptimeSec — process uptime.
    • ageSec — age of the snapshot.
  • updatedAt — epoch ms the leader computed fills and refunds, or null.

Reading it

  • A climbing fills.pending with a growing oldestPendingSec while fills.lastMinute drops means fills are stalling, even if state is still operational.
  • degraded because of a saturated leader often clears within seconds. Treat it as a signal to watch, not an outage.
  • Status for a single intent is at /2/bridge/status/{id}.

Response

200 - application/json

Bridge health.

data
object
required