{"openapi":"3.1.0","info":{"title":"FiatDock","version":"0.1.0","description":"Non-custodial USDC on/off-ramp for AI agents (x402 + Transak). COMPLIANCE (binding): 18+ only; service area Portugal + Transak-supported EU/EEA countries (NOT the UK or restricted countries); own-account rule — the sending wallet and the receiving bank account must belong to the same person (the agent's owner), no third-party funds, no aggregation, no P2P transfers. Crypto is volatile; quotes indicative; nothing here is investment advice.","termsOfService":"https://fiatdock.com/terms.html"},"servers":[{"url":"https://fiatdock.com"}],"paths":{"/v1/quote":{"get":{"operationId":"getQuote","parameters":[{"name":"side","in":"query","schema":{"type":"string","enum":["SELL","BUY"],"default":"SELL"}},{"name":"cryptoAmount","in":"query","schema":{"type":"number"},"description":"required for SELL"},{"name":"fiatAmount","in":"query","schema":{"type":"number"},"description":"required for BUY (or cryptoAmount)"},{"name":"fiatCurrency","in":"query","schema":{"type":"string","default":"EUR"}},{"name":"network","in":"query","schema":{"type":"string","default":"base"}},{"name":"paymentMethod","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"rate, youSend, youReceive, totalFee, feeBreakdown (X-Cache: HIT|MISS — 10s cache)"},"400":{"description":"missing amounts (hint included)"}}}},"/v1/offramp/session":{"post":{"operationId":"createOfframpSession","description":"Sell the agent's USDC to fiat in the OWNER'S OWN bank account (own-account rule: same person owns the sending wallet and the receiving bank account; no third-party funds, no aggregation, no P2P).","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["cryptoAmount"],"properties":{"cryptoAmount":{"type":"number"},"fiatCurrency":{"type":"string"},"network":{"type":"string"},"email":{"type":"string"},"customerId":{"type":"string"},"callbackUrl":{"type":"string","description":"public https URL POSTed on each status change, HMAC-signed"},"ref":{"type":"string","description":"optional referral code (1-64 chars: letters, digits, _ or -)"}}}}}},"responses":{"200":{"description":"checkoutUrl + partnerOrderId (+ customerKey / callbackSecret, each shown once)"},"402":{"description":"x402 Payment Required: pay $0.05 USDC on base-sepolia, then retry with X-PAYMENT header"}}}},"/v1/onramp/session":{"post":{"operationId":"createOnrampSession","description":"Buy USDC with the owner's OWN fiat, delivered to the agent's wallet (own-account rule applies; wallet address is locked).","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["fiatAmount","walletAddress"],"properties":{"fiatAmount":{"type":"number"},"walletAddress":{"type":"string"},"fiatCurrency":{"type":"string"},"network":{"type":"string"},"email":{"type":"string"},"customerId":{"type":"string"},"callbackUrl":{"type":"string","description":"public https URL POSTed on each status change, HMAC-signed"},"ref":{"type":"string","description":"optional referral code (1-64 chars: letters, digits, _ or -)"}}}}}},"responses":{"200":{"description":"checkoutUrl + partnerOrderId (+ customerKey / callbackSecret, each shown once)"},"402":{"description":"x402 Payment Required: pay $0.05 USDC on base-sepolia, then retry with X-PAYMENT header"}}}},"/v1/orders/{partnerOrderId}":{"get":{"operationId":"getOrderStatus","parameters":[{"name":"partnerOrderId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"order status"},"404":{"description":"no webhook yet"}}}},"/v1/customers/{customerId}/orders":{"get":{"operationId":"listCustomerOrders","parameters":[{"name":"customerId","in":"path","required":true,"schema":{"type":"string"}},{"name":"X-Customer-Key","in":"header","required":true,"schema":{"type":"string"},"description":"Returned once as customerKey in the first session response with this customerId"}],"responses":{"200":{"description":"orders for this customer"},"401":{"description":"invalid or missing X-Customer-Key"}}}}}}