For the complete documentation index, see llms.txt. This page is also available as Markdown.

GET /bridge/deposits

List bridge deposits

List bridge deposits.

operationId: fetchBridgeDeposits

Declared server: https://api.testnet.nexus.xyz/v1. See Networks.

Not reachable through CCXT. Nexus-specific asset bridging. CCXT's deposit/withdraw methods model a venue's own custody, not a cross-chain bridge, and mapping them would misdescribe both.

Authentication: agentAuth, hmacAuth.

List bridge deposits

get
/bridge/deposits

List the authenticated account's cross-chain deposits, newest first. Read-only: the watcher creates and advances these records, and this endpoint only reads them.

There is no pre-arrival state. A deposit exists only once the watcher observes an on-chain transfer, so every record carries a tx_hash and log_index (its id is {tx_hash}:{log_index}) and a confirmation count. A fiat-funded payment still in provider checkout is not yet a deposit and does not appear here.

Optional filters narrow by chain, asset and status; an unrecognized filter value simply matches nothing. Deposits are USDC or USDX only in this cut.

The list returns at most the newest 100 deposits and is not yet paginated: there is no cursor or time-window parameter, so an account with more than 100 deposits can only reach older ones by narrowing chain, asset or status. A cursor may be added later; doing so is additive.

Authorizations
X-API-KeystringRequired

HMAC API key authentication. Send three headers:

  • X-API-Key: your key ID (e.g. nx_a1b2c3...)
  • X-Timestamp: current time in unix milliseconds
  • X-Signature: hex(hmac_sha256(secret, timestamp + "\n" + METHOD + "\n" + path + "\n" + query + "\n" + sha256_hex(body)))

Timestamp must be within 30 seconds of server time.

The key is network-scoped; the signature is not. The canonical string above has no network component, so the same signed request is byte-identical on every host. What stops a testnet key from authenticating against mainnet is that the key does not exist in that host's key store — sign only for the host that minted the key, and never replay a signed payload against another network. Presented to the wrong host, a key is refused with the same opaque 401 as an unknown key and must not be retried there. See “API keys are bound to one network” in the API description.

Query parameters
limitinteger · min: 1 · max: 100Optional

Maximum records to return, 1-100. Values above the maximum are clamped to it; a non-integer or zero value is a 400.

Default: 100
chainstringOptional

Filter by source chain, e.g. ethereum.

assetstring · enumOptional

Filter by deposited asset.

Possible values:
statusstring · enumOptional

Filter by deposit status.

Possible values:
Responses
200

Bridge deposits, newest first.

application/json

A cross-chain deposit tracked by the watcher (read model). Because a deposit is created only when the watcher observes an on-chain transfer, tx_hash, log_index and confirmations are always present — there is no pre-arrival record.

idstringRequired

Opaque, stable deposit id: {tx_hash}:{log_index}. This is the watcher's dedup key, which is what makes replays harmless.

account_idstringRequired

0x-prefixed Nexus account being credited.

chainstringRequired

Source chain, e.g. ethereum.

assetstring · enumRequired

Deposited asset. USDT is out of scope in this cut.

Possible values:
amountstringRequired

Arbitrary-precision decimal serialized as a string (lossless). Parse with a decimal type, never a float.

credited_amount_usdxstringRequired

Arbitrary-precision decimal serialized as a string (lossless). Parse with a decimal type, never a float.

fromstringRequired

0x-prefixed sender address the funds left.

tostringRequired

0x-prefixed deposit address the funds arrived at.

tx_hashstringRequired

0x-prefixed source-chain transaction hash. Always present: a deposit exists only once its transfer is observed.

log_indexintegerRequired

Log index of the transfer within tx_hash. Pairs with it to form id.

statusstring · enumRequired

Lifecycle: detected → confirming → credited | failed | reverted. detected is 0 confirmations, confirming is below the required depth, credited is final at the required depth. The two terminal failure states are distinct: failed means the deposit could not be credited; reverted means a reorg took it back. A client distinguishes them on this field, without parsing a reason.

Possible values:
confirmationsintegerRequired

Confirmations observed so far.

required_confirmationsintegerRequired

Confirmations required before crediting.

created_atinteger · int64Required

Unix epoch timestamp in milliseconds.

updated_atinteger · int64Required

Unix epoch timestamp in milliseconds.

credited_atinteger · int64 · nullableOptional

Unix ms when the deposit was credited; null until status is credited.

get/bridge/deposits
GET /v1/bridge/deposits HTTP/1.1
Host: api.testnet.nexus.xyz
X-API-Key: YOUR_API_KEY
Accept: */*
[
  {
    "id": "text",
    "account_id": "text",
    "chain": "text",
    "asset": "USDC",
    "amount": "text",
    "credited_amount_usdx": "text",
    "from": "text",
    "to": "text",
    "tx_hash": "text",
    "log_index": 1,
    "status": "detected",
    "confirmations": 1,
    "required_confirmations": 1,
    "created_at": 1,
    "updated_at": 1,
    "credited_at": 1
  }
]

Test it cannot sign this request. X-Signature is an HMAC computed per call: see Authentication, or use an SDK.


API version 0.9.131

Last updated