Reference for public pool data and private account endpoints, including authentication, response shapes, and route status from the OpenAPI contract.
Connection
Public API routes can be called without credentials. Private API routes require an API key generated in the user settings area of the dashboard. Keep keys server-side and rotate them if exposed.
Production base URLhttps://api.icemining.ca/api/v1
Private API headerAuthorization: Bearer {api_key}
Send the generated key as a bearer token on every private API request.
Reference
GET /coin/{coin_id}
Live
Current public snapshot filtered by coin.
Access
Public API
Authentication
None
State
Live
Responses
200Current public snapshot filtered by coin.PublicCoinSnapshotV1
404Coin not found.ApiProblem
503Public snapshot unavailable or stale.ApiProblem
Reference
GET /coin/{coin_id}/blocks
Live
Public block data for a coin.
Access
Public API
Authentication
None
State
Live
Responses
200Public block data for a coin.PublicPoolSnapshotV1
503Public snapshot unavailable or stale.ApiProblem
Reference
GET /coins
Live
Current public coin and pool snapshot.
Access
Public API
Authentication
None
State
Live
Responses
200Current public coin and pool snapshot.PublicPoolSnapshotV1
503Public snapshot unavailable or stale.ApiProblem
Reference
GET /user
Live
Authenticated account summary, derived from a single Workers read (`spec/POOL_API_ACCOUNT_DATA.md` §2.5 / §4 decision 2). Body is the same `WorkerHealthSnapshot` projection served by `/api/v1/user/workers`; clients aggregate the latest bucket for the summary counts.
Access
Private API
Authentication
Bearer API key
State
Live
Responses
200Authenticated account summary, derived from a single Workers read (`spec/POOL_API_ACCOUNT_DATA.md` §2.5 / §4 decision 2). Body is the same `WorkerHealthSnapshot` projection served by `/api/v1/user/workers`; clients aggregate the latest bucket for the summary counts.WorkerHealthSnapshot
401Missing or invalid API key.ApiProblem
429Rate limited — per-IP or per-key budget exceeded (`spec/POOL_API_RATE_LIMIT_ABUSE.md` §4). Includes a `Retry-After` header.ApiProblem
503Resolver or account-data read unavailable; retry later.ApiProblem
Reference
GET /user/hashrate
Live
Authenticated hashrate-history projection for the default last-hour range at 30-second resolution. Body is an ICHRHST1 binary chunk (application/octet-stream), not JSON.
Access
Private API
Authentication
Bearer API key
State
Live
Responses
200Authenticated hashrate-history projection for the default last-hour range at 30-second resolution. Body is an ICHRHST1 binary chunk (application/octet-stream), not JSON.
401Missing or invalid API key.ApiProblem
429Rate limited — per-IP or per-key budget exceeded (`spec/POOL_API_RATE_LIMIT_ABUSE.md` §4). Includes a `Retry-After` header.ApiProblem
503Resolver or account-data read unavailable; retry later.ApiProblem
Reference
GET /user/payments
Live
Per-account balances + recent-payouts projection. Same `AccountPayoutsSnapshot` body as `/api/v1/user/payouts`; the kind discriminant differs so a future split needs no wire change.
Access
Private API
Authentication
Bearer API key
State
Live
Responses
200Per-account balances + recent-payouts projection. Same `AccountPayoutsSnapshot` body as `/api/v1/user/payouts`; the kind discriminant differs so a future split needs no wire change.AccountPayoutsSnapshot
401Missing or invalid API key.ApiProblem
429Rate limited — per-IP or per-key budget exceeded (`spec/POOL_API_RATE_LIMIT_ABUSE.md` §4). Includes a `Retry-After` header.ApiProblem
503Resolver or account-data read unavailable; retry later.ApiProblem
429Rate limited — per-IP or per-key budget exceeded (`spec/POOL_API_RATE_LIMIT_ABUSE.md` §4). Includes a `Retry-After` header.ApiProblem
503Resolver or account-data read unavailable; retry later.ApiProblem
Reference
GET /user/workers
Live
Per-account worker-health projection: a rolling ring of one-minute health buckets (`spec/POOL_API_ACCOUNT_DATA.md` §2.4 status mapping).
Access
Private API
Authentication
Bearer API key
State
Live
Responses
200Per-account worker-health projection: a rolling ring of one-minute health buckets (`spec/POOL_API_ACCOUNT_DATA.md` §2.4 status mapping).WorkerHealthSnapshot
401Missing or invalid API key.ApiProblem
429Rate limited — per-IP or per-key budget exceeded (`spec/POOL_API_RATE_LIMIT_ABUSE.md` §4). Includes a `Retry-After` header.ApiProblem
503Resolver or account-data read unavailable; retry later.ApiProblem