Skip to main content
GET
Get contract addresses

Response

OK

Contract addresses and chain settings for this environment. Every address is a 0x-prefixed 20-byte hex string.

chainId
integer
required

EVM chain id of the network the contracts are deployed on — 99999 on the ADI testnet.

Example:

99999

rpcUrl
string
required

Public JSON-RPC URL for read-only on-chain calls.

Example:

"https://rpc.ab.testnet.adifoundation.ai/"

vaultFactory
string
required

VaultFactory — vaultOf(wallet) returns a wallet's vault address. The platform calls deployVault for you.

usdc
string
required

USDC collateral token (ERC-20). On testnet this is mUSDC, which exposes a public mint(address,uint256).

wrappedCollateral
string | null
required

Optional WrappedCollateral helper. null when the environment has none, as on the current testnet.

ctfExchange
string
required

Exchange for binary markets — the verifyingContract of the EIP-712 domain you sign binary-market orders against.

ctfExchangeNegRisk
string
required

Exchange for neg-risk markets — the verifyingContract for neg-risk orders. Not the same address as ctfExchange.

negRiskAdapter
string
required

NegRiskAdapter — multi-outcome (neg-risk) support on top of ConditionalTokens. See NegRiskAdapter.

conditionalTokens
string
required

ConditionalTokens — the ERC-1155 contract that holds outcome tokens.

depositLimitRegistry
string
required

DepositLimitRegistry address as configured for this environment. It can be the same address as depositLimitRegistryProxy, as on the current testnet; send your calls to depositLimitRegistryProxy.

depositLimitRegistryProxy
string
required

DepositLimitRegistry transparent proxy — the address to call from clients.

oracle
string
required

Oracle for binary markets. Disputes on a binary market are filed here with challengeOutcome(conditionId).

negRiskOracle
string | null
required

Oracle for neg-risk markets. Disputes on a neg-risk group are filed here with challengeOutcome(negRiskMarketId), not on oracle. null when the environment has no neg-risk oracle.

multicallExecutor
string
required

Executor contract for gasless deposits. Name it as the spender of the USDC EIP-2612 Permit you sign for POST /api/deposits/relay — not the account that pays the gas. The relay rebuilds the permit with this spender, so a permit signed for any other spender is refused as permit_signer_mismatch.

usdcEip712
object
required

name and version of the USDC contract's EIP-712 domain. Use exactly these values when you build the Permit for a gasless deposit; any other values recover a different signer and the relay answers permit_signer_mismatch.

ccipBridge
object | null
required

Cross-chain withdrawal bridge (Chainlink CCIP). null when the environment has no bridge configured — cross-chain withdrawals are then unavailable.

generatedAt
string<date-time>
required

ISO-8601 — when this response was generated. Not a deploy timestamp: compare the addresses between reads to detect a redeploy.