Developers
You send the transaction; we never do. Every drawing is authorised by a signature bound to your address, the loan and our fee settle inside your transaction, and if the strategy does not profit the whole thing reverts and we earn nothing. The reference below is public — read it all before you apply.
1. Ask the desk for an authorisation. Send your parameters — asset, amount, the actions your strategy will run. We return a signature, a nonce, a deadline and the fee rate, having already checked your facility so a request that would breach your terms is refused rather than signed and reverted at your expense.
2. Send the transaction yourself. Call execute() on
the Executor with those parameters and the signature. The contract rebuilds the digest from
msg.sender and verifies it.
3. It settles or it reverts. The loan is drawn, your actions run, the loan and its premium are repaid, our share of the surplus transfers, and your remainder follows — all in one transaction. No invoicing and nothing to trust.
Returns a signed EIP-712 authorisation: signature, digest,
nonce, deadline, feeBps, and the pool to draw from.
Pass an idempotencyKey and a retry returns the same authorisation rather than
consuming another.
What you may draw and at what rate: volume drawn month-to-date, outstanding authorisations, your limit, the band you are in, and the volume remaining to the next one.
Whether the desk can sign right now. Reports the signer's on-chain status and how current the
draw index is. It reports ok:false when it cannot sign rather than failing
at the moment you need it.
curl -X POST https://desk-api.atomicexchange.cloud/v1/desk/authorize \
-H "Authorization: Bearer $ATOMIC_DESK_KEY" \
-H "content-type: application/json" \
-d '{
"asset": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "1000000000",
"minProfit": "0",
"pool": "0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",
"actions": [ { "target": "0x…", "approve": "0x…", "approveAmount": "0",
"value": "0", "data": "0x…" } ],
"sweepTokens": [],
"idempotencyKey": "your-own-id"
}'
1. feeBps is not constant. Your rate is stamped
from the volume you have drawn month-to-date and improves as you cross each threshold, so two
authorisations for identical parameters a week apart can carry different rates. Never cache
or hardcode it — use the value returned with each authorisation. Reproducing the digest
yourself with a remembered rate produces a different digest and fails on chain, after you have
paid gas.
2. A fixed minProfit is not a fixed threshold. It
is tested against profit net of our fee, so the gross a trade must produce to clear it
is minProfit / (1 − rate). At the opening tier that is 1.67×; at the top tier
1.11×. The same trade can revert early in a month and settle later in it. Derive
minProfit from the feeBps in the authorisation, not from a constant.
3. Do not reconcile a single transaction against the headline rate. A month that ends in the top band did not pay that rate on every transaction — it climbed through the lower bands to get there. The tier it reached becomes the opening rate of the next month, for one month, and nothing is credited or paid at a month end. Reconcile against the month, not the transaction.
Source verified. Two flash sources, at 5 bps and 4 bps, so a drawing takes the cheaper one. Same ownerless, immutable design.
Read the chain before you read the address. This is the Executor on Polygon. The identical address on Ethereum mainnet is a different contract — the AtomicFlashReceiver. Same deployer, same nonce, two chains. There is a single flash source here.
Source verified. No owner, no pause, no upgrade path and no rescue function — read it rather than take our word for it.
Independently audited, source verified, and free — this contract charges nothing. Used for self-liquidation and refinancing.
Keys are not self-serve, and that is deliberate rather than gatekeeping. Every key carries an underwritten facility — a monthly limit, a maximum notional per transaction, and a fee tier — because issuing flash capacity to an unassessed counterparty is not something that can be automated responsibly.
Request access below. We reply within 1–2 business days. There is no fee to apply and no minimum to be quoted a drawing; the $1M monthly minimum applies only to holding a reserved facility.