Skip to content

Fireblocks

Built, not certified Built and tested against recorded and synthetic responses (version 1.0.0, 10 November 2026). Not yet run against the vendor's sandbox or a client environment.

Reads a Fireblocks workspace’s vault accounts, asset balances and transactions, so treasury and reconciliation agents can check custody against the books. It is read-only, and it is built to refuse a key that can move funds. It reads in place, in your deployment; only ids, hashes and counts reach LightHouse.

CollectorFireblocks, version 1.0.0
ReadsFireblocks: Fireblocks API (vault accounts, balances, transactions) (the vendor's documentation)
FamilyFinance
KindCustody
Ways to connectKey pair
Scopes
  • Read: Viewer
Read onlyYes
Vendor's API can move moneyYes
Personal dataFinancial
Hosts it may contactapi.fireblocks.io, eu-api.fireblocks.io, eu2-api.fireblocks.io, sandbox-api.fireblocks.io, {host}
Vendor API versionsREST API v1
Lowest engine version0.46.0
  • Vault accounts and their asset balances: for each vault and asset, the total, available, pending, frozen and locked amounts, each with its asset code. Balances are a snapshot: one record per vault and asset, rewritten only when it changes and removed when the asset disappears.
  • Transactions: read by lastUpdated, oldest first, so a transaction whose status changes after it was read is read again and its record rewritten. Each carries its operation, status and sub-status, amounts (requested, net, amount), network fee, source and destination type and name, hash and dates.
  • The first read goes back history_days (default 90, at most 3,650).

It does not read addresses’ private material, policies, users, or webhooks.

  1. In Fireblocks, make an API user with the Viewer role and upload the CSR of an RSA key pair you made yourself.
  2. In LightHouse, open Setup and admin, Connectors, choose Fireblocks and give the region (us, eu, eu2 or sandbox).
  3. Paste the API key and the RSA private key, and confirm the role is Viewer. Your browser seals it to your deployment; LightHouse never sees it.
  4. Pin the API user to your deployment’s egress addresses in Fireblocks.

The credential is JSON in the variable the source names (AAL_FIREBLOCKS by default): api_key, private_key, region, and view_only_confirmed (yes).

This collector is read-only. It sends GET requests only, and its read-only test proves it on every change. The checks below run first on every pull and in the health check; nothing is read with a key that fails.

  • Refused by the code: an API user that may list API users (GET /v1/management/api_users), which Fireblocks allows only to the Admin and Non-Signing Admin roles. The error is Fireblocks: refused: the credential can administer the workspace (Admin or Non-Signing Admin role); make a view-only one.
  • Not detectable by the code: Fireblocks gives an API key no way to read its own role, so a key that is not an administrator is not shown to be a Viewer. An Editor, Signer or Approver key (which can create transactions or sign) would pass the check above. The collector therefore reads only once you have confirmed the role is Viewer (view_only_confirmed); without it the error is Fireblocks does not state this key's permissions; confirm the key is view-only (view_only_confirmed) before it is read. Make the key a Viewer in Fireblocks: that, not this code, is what stops a key from moving funds.
  • Signing: each request carries a JWT signed here with your private key (RS256; uri, nonce, iat, exp 25 seconds on, sub the key, bodyHash the SHA-256 of the body). The private key never leaves your store.
  • Hosts: only Fireblocks’ own region hosts. A next-page link to any other host is refused (a next page on another host), a redirect is never followed, and plain http is refused.
  • API v1. Vaults are read 200 a page and transactions 200 a page, following Fireblocks’ next-page header.
  • Requests are paced (0.1 s apart) and retried on 429 and 5xx with back-off.
  • Amounts are exact decimals; a number that arrives as a float is refused.
  • region must be one of us, eu, eu2, sandbox.
  • Fireblocks is the system of record: an amount here is as of the last read.
  • Records hold financial data: balances, transaction amounts and the names of vaults and counterparties’ account types. Documents carry the label you give the source (default confidential).
  • Content is read in place, in your deployment. LightHouse receives ids, hashes and counts, never the records, and never opens the credential.
  • Errors carry a status and fixed text, never a provider’s body: a provider’s error can echo a key, an account or a balance.
  • The data is audit-ready for your own agents; nothing here certifies anyone against any regulation.
What you see What it means What to do
Fireblocks: refused: the credential can administer the workspace (Admin or Non-Signing Admin role); make a view-only one The API user is an administrator Make a Viewer API user and reconnect
Fireblocks does not state this key's permissions; confirm the key is view-only (view_only_confirmed) before it is read The role cannot be read, and you have not confirmed it Confirm the role is Viewer
region is one of us, eu, eu2, sandbox The region is not one of those Correct the region
Fireblocks answered HTTP 401 The API key or the signature is wrong Check the key and that the private key matches the CSR
Fireblocks answered HTTP 429 Rate limit Nothing; the collector backs off and continues
Fireblocks: refusing a request to a host that is not the provider's A request named another host Report it; nothing was sent there

Each entry is a run by Atlantic Agentic Labs, newest first. Only a run against the vendor’s sandbox or a client environment certifies a collector; a certification lasts six months, or less if the vendor publishes an API version the collector does not list. See How collectors are certified.

DateCollectorEngineVendor APIMethodExpires
10 November 20261.0.00.46.0REST API v1Fixtures only: built, not certifiedNot applicable

From the collector’s last scan on the default branch. What each line means, and what blocks a release: Security posture.

Last scanned10 November 2026
Critical findings0
High findings0
Medium findings0
Low findings0
Info findings0
Release blockedNo
Network allow-list checkPass
Read-only behavioural testPass
SBOM (CycloneDX)Produced
Dependency licencesPass
Scannersbandit 1.9.4, semgrep 1.181.1, pip-audit 2.10.1, osv-scanner 2.7.0, cyclonedx-py 7.5.0, pip-licenses 5.5.5, gitleaks repository job aal-secrets, hosts_check tools/hosts_check.py, read-only test pytest -m read_only