{"items":[{"type":"link","label":"Infini Fund API","link":"/apis/fund","routeSlug":"/apis/fund","content":{"contentType":"overview","meta":{"name":"Infini Fund API"},"children":[{"nodeType":"container","panels":[{"title":"Download OpenAPI description","titleTranslationKey":"download.description.title","children":[{"kind":"download","label":"fund.json","url":"/_bundle/apis/fund.json?download"},{"kind":"download","label":"fund.yaml","url":"/_bundle/apis/fund.yaml?download"}]},{"title":"Overview","titleTranslationKey":"info.title","children":[]},{"title":"Languages","titleTranslationKey":"languages.title","children":[{"kind":"languages","options":[{"key":"curl","title":"curl","lang":"curl"},{"key":"javascript","title":"JavaScript","lang":"JavaScript"},{"key":"node","title":"Node.js","lang":"Node.js"},{"key":"python","title":"Python","lang":"Python"},{"key":"java","title":"Java","lang":"Java"},{"key":"csharp","title":"C#","lang":"C#"},{"key":"php","title":"PHP","lang":"PHP"},{"key":"go","title":"Go","lang":"Go"},{"key":"ruby","title":"Ruby","lang":"Ruby"},{"key":"r","title":"R","lang":"R"},{"key":"payload","title":"Payload","lang":"Payload"}]}]},{"title":"Servers","titleTranslationKey":"servers.title","children":[{"kind":"servers","servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"mode":"default"}]}],"children":[{"nodeType":"overview-section-wrapper","children":[{"nodeType":"header","level":1,"label":"Infini Fund API (2.0.0)","showPageActions":true},{"nodeType":"overview-section-wrapper","children":[{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Organization fund APIs for swaps, Infini UID transfers, withdrawals, withdrawal fees, and USDT/USDC/USD available balances. All endpoints use the independent "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"/v2/funds"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" prefix."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Requests require Ed25519 v2 authentication. See "},"children":[]},{"$$mdtype":"Node","type":"link","inline":true,"attributes":{"href":"/docs/en/4-authorization"},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Authentication"},"children":[]}]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Online Try it is disabled; sign locally with your private key. Confirm v2 availability for your environment before switching production traffic."},"children":[]}]}]}]}],"sectionId":"/"}],"sectionId":"/"}]}]}},{"type":"group","label":"Fund","link":"/apis/fund/fund","routeSlug":"/apis/fund/fund","items":[{"label":"Swap funds","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/apis/fund/fund/swapfunds","routeSlug":"/apis/fund/fund/swapfunds","metadata":{"seo":{"title":"Swap funds","description":"Exchanges between two different existing USDC, USDT, or USD WALLET accounts owned by the merchant associated with the API key. Requires fund.withdraw permission."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"swapFunds","name":"Swap funds","isWebhook":false,"pointer":"/paths/~1swap/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Swap funds","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Exchanges between two different existing USDC, USDT, or USD WALLET accounts owned by the merchant associated with the API key. Requires "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fund.withdraw"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" permission."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"A USD Cash Account must already exist when either currency is USD. USDC/USDT swaps do not require a USD account. This endpoint does not open accounts."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Executes synchronously at the current applicable exchange rate and FX fee. No quote or rate reservation is required. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" includes the FX fee, charged in the source currency. A positive effective FX fee is rounded up to the smallest source currency unit (USD 0.01; USDC/USDT 0.000001). Explicit zero-rate merchant policies and exempt currency pairs still charge zero. The net amount is converted and truncated to target currency precision (USD: 2 decimals; USDC/USDT: 6)."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"min_output_amount"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is optional, non-negative, and denominated in the target currency. If the net rounded output falls below it, or rounds to zero, the swap is rejected without any debit or credit. Omitting it accepts the execution-time rate."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"request_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is required and must be a UUID. Completed requests are persisted atomically with ledger changes. A retry by the same merchant returns the original output, price, and fee with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"is_duplicate=true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", even after API key rotation. Changing either currency, amount, or minimum under the same ID is rejected. IDs are scoped to this operation and merchant. BW/RW identifiers are not supported. Failed attempts do not reserve a price or persist a completed result."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"Ed25519","scopes":[],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; also send X-API-Key-ID, X-API-Timestamp, X-API-Nonce and Digest. Sign locally; never enter your private key here."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-API-Key-ID","in":"header","schemaId":"schema_0","description":"32-character Base58 credential ID returned after public-key registration.","required":true},{"name":"X-API-Timestamp","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix timestamp in seconds; tolerance is ±300 seconds."},"children":[]}]}]}],"required":true},{"name":"X-API-Nonce","in":"header","schemaId":"schema_0","description":"16 cryptographically random bytes encoded as unpadded Base64URL; fresh on every attempt.","required":true},{"name":"Digest","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"SHA-256= followed by standard padded Base64 of SHA-256 of exact request body bytes. Required even for an empty body; included in the signing string."},"children":[]}]}]}],"required":true},{"name":"Authorization","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", where BASE64_SIGNATURE is the standard padded Base64 signature. See /docs/en/4-authorization for the exact signing string."},"children":[]}]}]}],"required":true}],"pointer":"/paths/~1swap/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/SwapRequest"}},"schemaId":"components/schemas/SwapRequest","pointer":"/paths/~1swap/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/swap","servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"X-API-Key-ID","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Timestamp","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Nonce","in":"header","required":true,"schemaId":"schema_0"},{"name":"Digest","in":"header","required":true,"schemaId":"schema_0"},{"name":"Authorization","in":"header","required":true,"schemaId":"schema_0"}],"cookie":[]},"security":[{"schemes":[{"id":"Ed25519","type":"apiKey","name":"Authorization","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/SwapRequest"}},"responseCodes":["200","401","403"],"pointer":"/swap","href":"fund/swapfunds","openApiOperationId":"swapFunds","summary":"Swap funds"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"schemaId":"components/schemas/SwapRequest","mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/SwapRequest"}},"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Completed swap or a business error in the standard envelope","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_1","exampleIds":["paths/~1swap/post/responses/200/content/application~1json/example"]}},"schemaId":"schema_1","exampleIds":["paths/~1swap/post/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed: invalid/disabled credential, signature, timestamp, nonce or digest."},{"code":"403","description":"Authenticated credential lacks permission or the client IP is not allowed."}],"pointer":"/paths/~1swap/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_1","exampleIds":["paths/~1swap/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_1","exampleIds":["paths/~1swap/post/responses/200/content/application~1json/example"]}}},{"code":"401"},{"code":"403"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/fund/swapfunds"}],"panels":[]}]},"httpPath":"/swap"},{"label":"Withdraw organization funds","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/apis/fund/fund/applyfundwithdrawal","routeSlug":"/apis/fund/fund/applyfundwithdrawal","metadata":{"seo":{"title":"Withdraw organization funds","description":"Creates a withdrawal. Requires fund.withdraw permission."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"applyFundWithdrawal","name":"Withdraw organization funds","isWebhook":false,"pointer":"/paths/~1withdraw/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Withdraw organization funds","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Creates a withdrawal. Requires "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fund.withdraw"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" permission."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"request_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is optional. When supplied, it must be a UUID and acts as the idempotency key. When the same merchant retries with the same "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"request_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", the API returns the previously created withdrawal information with "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"is_duplicate=true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"source_currency"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is optional and defaults to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"token_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". Set it to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"USD"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" to deduct from the organization's USD Cash Account when withdrawing USDT or USDC. Other cross-currency pairs are rejected."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"Ed25519","scopes":[],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; also send X-API-Key-ID, X-API-Timestamp, X-API-Nonce and Digest. Sign locally; never enter your private key here."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-API-Key-ID","in":"header","schemaId":"schema_0","description":"32-character Base58 credential ID returned after public-key registration.","required":true},{"name":"X-API-Timestamp","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix timestamp in seconds; tolerance is ±300 seconds."},"children":[]}]}]}],"required":true},{"name":"X-API-Nonce","in":"header","schemaId":"schema_0","description":"16 cryptographically random bytes encoded as unpadded Base64URL; fresh on every attempt.","required":true},{"name":"Digest","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"SHA-256= followed by standard padded Base64 of SHA-256 of exact request body bytes. Required even for an empty body; included in the signing string."},"children":[]}]}]}],"required":true},{"name":"Authorization","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", where BASE64_SIGNATURE is the standard padded Base64 signature. See /docs/en/4-authorization for the exact signing string."},"children":[]}]}]}],"required":true}],"pointer":"/paths/~1withdraw/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/ApplyWithdrawRequest","exampleIds":["paths/~1withdraw/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/ApplyWithdrawRequest","exampleIds":["paths/~1withdraw/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1withdraw/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/withdraw","servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"X-API-Key-ID","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Timestamp","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Nonce","in":"header","required":true,"schemaId":"schema_0"},{"name":"Digest","in":"header","required":true,"schemaId":"schema_0"},{"name":"Authorization","in":"header","required":true,"schemaId":"schema_0"}],"cookie":[]},"security":[{"schemes":[{"id":"Ed25519","type":"apiKey","name":"Authorization","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/ApplyWithdrawRequest","exampleIds":["paths/~1withdraw/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","400","401","403"],"pointer":"/withdraw","href":"fund/applyfundwithdrawal","openApiOperationId":"applyFundWithdrawal","summary":"Withdraw organization funds"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"schemaId":"components/schemas/ApplyWithdrawRequest","exampleIds":["paths/~1withdraw/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/ApplyWithdrawRequest","exampleIds":["paths/~1withdraw/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Standard response envelope","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_2","exampleIds":["paths/~1withdraw/post/responses/200/content/application~1json/example"]}},"schemaId":"schema_2","exampleIds":["paths/~1withdraw/post/responses/200/content/application~1json/example"]},{"code":"400","description":"Invalid application request","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw/post/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw/post/responses/400/content/application~1json/example"]},{"code":"401","description":"Authentication failed: invalid/disabled credential, signature, timestamp, nonce or digest."},{"code":"403","description":"Authenticated credential lacks permission or the client IP is not allowed."}],"pointer":"/paths/~1withdraw/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_2","exampleIds":["paths/~1withdraw/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_2","exampleIds":["paths/~1withdraw/post/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw/post/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw/post/responses/400/content/application~1json/example"]}}},{"code":"401"},{"code":"403"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/fund/applyfundwithdrawal"}],"panels":[]}]},"httpPath":"/withdraw"},{"label":"Transfer funds to a UID","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/apis/fund/fund/createfundinternaltransfer","routeSlug":"/apis/fund/fund/createfundinternaltransfer","metadata":{"seo":{"title":"Transfer funds to a UID","description":"Transfers funds from the authenticated organization to an Infini UID. Requires fund.withdraw permission."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"createFundInternalTransfer","name":"Transfer funds to a UID","isWebhook":false,"pointer":"/paths/~1internal-transfer/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Transfer funds to a UID","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Transfers funds from the authenticated organization to an Infini UID. Requires "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fund.withdraw"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" permission."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"V1 supports same-currency transfers in USDT, USDC, or USD only. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"source_currency"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is optional and defaults to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"token_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; when supplied, it must equal "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"token_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":". The transfer has no fee, so the amount deducted from the sender equals the amount received by the recipient."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"request_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" is optional. When supplied, it must be a UUID and acts as the idempotency key. A retry by the same organization with an already completed "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"request_id"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" returns "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"status=completed"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"is_duplicate=true"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"Ed25519","scopes":[],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; also send X-API-Key-ID, X-API-Timestamp, X-API-Nonce and Digest. Sign locally; never enter your private key here."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-API-Key-ID","in":"header","schemaId":"schema_0","description":"32-character Base58 credential ID returned after public-key registration.","required":true},{"name":"X-API-Timestamp","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix timestamp in seconds; tolerance is ±300 seconds."},"children":[]}]}]}],"required":true},{"name":"X-API-Nonce","in":"header","schemaId":"schema_0","description":"16 cryptographically random bytes encoded as unpadded Base64URL; fresh on every attempt.","required":true},{"name":"Digest","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"SHA-256= followed by standard padded Base64 of SHA-256 of exact request body bytes. Required even for an empty body; included in the signing string."},"children":[]}]}]}],"required":true},{"name":"Authorization","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", where BASE64_SIGNATURE is the standard padded Base64 signature. See /docs/en/4-authorization for the exact signing string."},"children":[]}]}]}],"required":true}],"pointer":"/paths/~1internal-transfer/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/InternalTransferRequest","exampleIds":["paths/~1internal-transfer/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/InternalTransferRequest","exampleIds":["paths/~1internal-transfer/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1internal-transfer/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/internal-transfer","servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"X-API-Key-ID","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Timestamp","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Nonce","in":"header","required":true,"schemaId":"schema_0"},{"name":"Digest","in":"header","required":true,"schemaId":"schema_0"},{"name":"Authorization","in":"header","required":true,"schemaId":"schema_0"}],"cookie":[]},"security":[{"schemes":[{"id":"Ed25519","type":"apiKey","name":"Authorization","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/InternalTransferRequest","exampleIds":["paths/~1internal-transfer/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","400","401","403"],"pointer":"/internal-transfer","href":"fund/createfundinternaltransfer","openApiOperationId":"createFundInternalTransfer","summary":"Transfer funds to a UID"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"schemaId":"components/schemas/InternalTransferRequest","exampleIds":["paths/~1internal-transfer/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/InternalTransferRequest","exampleIds":["paths/~1internal-transfer/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Standard response envelope","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_3","exampleIds":["paths/~1internal-transfer/post/responses/200/content/application~1json/example"]}},"schemaId":"schema_3","exampleIds":["paths/~1internal-transfer/post/responses/200/content/application~1json/example"]},{"code":"400","description":"Invalid application request","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1internal-transfer/post/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1internal-transfer/post/responses/400/content/application~1json/example"]},{"code":"401","description":"Authentication failed: invalid/disabled credential, signature, timestamp, nonce or digest."},{"code":"403","description":"Authenticated credential lacks permission or the client IP is not allowed."}],"pointer":"/paths/~1internal-transfer/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_3","exampleIds":["paths/~1internal-transfer/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_3","exampleIds":["paths/~1internal-transfer/post/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1internal-transfer/post/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1internal-transfer/post/responses/400/content/application~1json/example"]}}},{"code":"401"},{"code":"403"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/fund/createfundinternaltransfer"}],"panels":[]}]},"httpPath":"/internal-transfer"},{"label":"Get withdrawal status","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/apis/fund/fund/getfundwithdrawalstatus","routeSlug":"/apis/fund/fund/getfundwithdrawalstatus","metadata":{"seo":{"title":"Get withdrawal status","description":"Returns the current withdrawal status for the authenticated merchant. Requires fund.withdraw permission."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getFundWithdrawalStatus","name":"Get withdrawal status","isWebhook":false,"pointer":"/paths/~1withdraw~1status/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get withdrawal status","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns the current withdrawal status for the authenticated merchant. Requires "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fund.withdraw"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" permission."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"Ed25519","scopes":[],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; also send X-API-Key-ID, X-API-Timestamp, X-API-Nonce and Digest. Sign locally; never enter your private key here."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"query","label":"Query","labelTranslationKey":"query","parameters":[{"name":"request_id","in":"query","schemaId":"schema_4","description":"Withdrawal request ID. Must be a UUID.","required":true}],"pointer":"/paths/~1withdraw~1status/get/parameters"},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-API-Key-ID","in":"header","schemaId":"schema_0","description":"32-character Base58 credential ID returned after public-key registration.","required":true},{"name":"X-API-Timestamp","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix timestamp in seconds; tolerance is ±300 seconds."},"children":[]}]}]}],"required":true},{"name":"X-API-Nonce","in":"header","schemaId":"schema_0","description":"16 cryptographically random bytes encoded as unpadded Base64URL; fresh on every attempt.","required":true},{"name":"Digest","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"SHA-256= followed by standard padded Base64 of SHA-256 of exact request body bytes. Required even for an empty body; included in the signing string."},"children":[]}]}]}],"required":true},{"name":"Authorization","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", where BASE64_SIGNATURE is the standard padded Base64 signature. See /docs/en/4-authorization for the exact signing string."},"children":[]}]}]}],"required":true}],"pointer":"/paths/~1withdraw~1status/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/withdraw/status","servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"parameters":{"path":[],"query":[{"name":"request_id","in":"query","required":true,"example":"e94b4e88-36c2-4550-907e-839742cf5fae","schemaId":"components/schemas/WithdrawalStatusRequestId"}],"querystring":[],"header":[{"name":"X-API-Key-ID","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Timestamp","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Nonce","in":"header","required":true,"schemaId":"schema_0"},{"name":"Digest","in":"header","required":true,"schemaId":"schema_0"},{"name":"Authorization","in":"header","required":true,"schemaId":"schema_0"}],"cookie":[]},"security":[{"schemes":[{"id":"Ed25519","type":"apiKey","name":"Authorization","in":"header"}],"scopes":[]}],"responseCodes":["200","400","401","403","404"],"pointer":"/withdraw/status","href":"fund/getfundwithdrawalstatus","openApiOperationId":"getFundWithdrawalStatus","summary":"Get withdrawal status"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Standard response envelope","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_5","exampleIds":["paths/~1withdraw~1status/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_5","exampleIds":["paths/~1withdraw~1status/get/responses/200/content/application~1json/example"]},{"code":"400","description":"Invalid application request","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status/get/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status/get/responses/400/content/application~1json/example"]},{"code":"401","description":"Authentication failed: invalid/disabled credential, signature, timestamp, nonce or digest."},{"code":"403","description":"Authenticated credential lacks permission or the client IP is not allowed."},{"code":"404","description":"Withdrawal request was not found for the authenticated organization","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status/get/responses/404/content/application~1json/example"]}},"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status/get/responses/404/content/application~1json/example"]}],"pointer":"/paths/~1withdraw~1status/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_5","exampleIds":["paths/~1withdraw~1status/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_5","exampleIds":["paths/~1withdraw~1status/get/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status/get/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status/get/responses/400/content/application~1json/example"]}}},{"code":"401"},{"code":"403"},{"code":"404","schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status/get/responses/404/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status/get/responses/404/content/application~1json/example"]}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/fund/getfundwithdrawalstatus"}],"panels":[]}]},"httpPath":"/withdraw/status"},{"label":"List withdrawal statuses","deprecated":false,"httpVerb":"post","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/apis/fund/fund/listfundwithdrawalstatuses","routeSlug":"/apis/fund/fund/listfundwithdrawalstatuses","metadata":{"seo":{"title":"List withdrawal statuses","description":"Returns withdrawals owned by the authenticated merchant whose creation times fall within the inclusive Unix-second range. Requires fund.withdraw permission."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listFundWithdrawalStatuses","name":"List withdrawal statuses","isWebhook":false,"pointer":"/paths/~1withdraw~1status~1batch/post","hasSamples":true},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List withdrawal statuses","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns withdrawals owned by the authenticated merchant whose creation times fall within the inclusive Unix-second range. Requires "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fund.withdraw"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" permission."},"children":[]}]}]},{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Results are ordered by "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"created_at"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" descending. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"page"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" defaults to 1 and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"page_size"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" defaults to 20 with a maximum of 100. A range with no matching withdrawals returns HTTP 200 with an empty "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"withdrawals"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" array. Invalid time ranges or pagination values return HTTP 400."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"Ed25519","scopes":[],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; also send X-API-Key-ID, X-API-Timestamp, X-API-Nonce and Digest. Sign locally; never enter your private key here."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-API-Key-ID","in":"header","schemaId":"schema_0","description":"32-character Base58 credential ID returned after public-key registration.","required":true},{"name":"X-API-Timestamp","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix timestamp in seconds; tolerance is ±300 seconds."},"children":[]}]}]}],"required":true},{"name":"X-API-Nonce","in":"header","schemaId":"schema_0","description":"16 cryptographically random bytes encoded as unpadded Base64URL; fresh on every attempt.","required":true},{"name":"Digest","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"SHA-256= followed by standard padded Base64 of SHA-256 of exact request body bytes. Required even for an empty body; included in the signing string."},"children":[]}]}]}],"required":true},{"name":"Authorization","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", where BASE64_SIGNATURE is the standard padded Base64 signature. See /docs/en/4-authorization for the exact signing string."},"children":[]}]}]}],"required":true}],"pointer":"/paths/~1withdraw~1status~1batch/post/parameters"},{"nodeType":"item-content","variant":"body","label":"Request Body","labelTranslationKey":"body","required":true,"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/ListWithdrawStatusesRequest","exampleIds":["paths/~1withdraw~1status~1batch/post/requestBody/content/application~1json/example"]}},"schemaId":"components/schemas/ListWithdrawStatusesRequest","exampleIds":["paths/~1withdraw~1status~1batch/post/requestBody/content/application~1json/example"],"pointer":"/paths/~1withdraw~1status~1batch/post/requestBody"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"POST","path":"/withdraw/status/batch","servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"X-API-Key-ID","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Timestamp","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Nonce","in":"header","required":true,"schemaId":"schema_0"},{"name":"Digest","in":"header","required":true,"schemaId":"schema_0"},{"name":"Authorization","in":"header","required":true,"schemaId":"schema_0"}],"cookie":[]},"security":[{"schemes":[{"id":"Ed25519","type":"apiKey","name":"Authorization","in":"header"}],"scopes":[]}],"requestBody":{"application/json":{"schemaId":"components/schemas/ListWithdrawStatusesRequest","exampleIds":["paths/~1withdraw~1status~1batch/post/requestBody/content/application~1json/example"]}},"responseCodes":["200","400","401","403","500"],"pointer":"/withdraw/status/batch","href":"fund/listfundwithdrawalstatuses","openApiOperationId":"listFundWithdrawalStatuses","summary":"List withdrawal statuses"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"schemaId":"components/schemas/ListWithdrawStatusesRequest","exampleIds":["paths/~1withdraw~1status~1batch/post/requestBody/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeSchemas":{"application/json":{"schemaId":"components/schemas/ListWithdrawStatusesRequest","exampleIds":["paths/~1withdraw~1status~1batch/post/requestBody/content/application~1json/example"]}},"examples":[{}]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Standard response envelope with paginated withdrawal statuses","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_6","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/200/content/application~1json/example"]}},"schemaId":"schema_6","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/200/content/application~1json/example"]},{"code":"400","description":"Invalid time range or pagination values","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/400/content/application~1json/example"]}},"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/400/content/application~1json/example"]},{"code":"401","description":"Authentication failed: invalid/disabled credential, signature, timestamp, nonce or digest."},{"code":"403","description":"Authenticated credential lacks permission or the client IP is not allowed."},{"code":"500","description":"The withdrawal list could not be processed because of an internal or downstream failure","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/500/content/application~1json/example"]}},"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/500/content/application~1json/example"]}],"pointer":"/paths/~1withdraw~1status~1batch/post/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_6","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_6","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/200/content/application~1json/example"]}}},{"code":"400","schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/400/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/400/content/application~1json/example"]}}},{"code":"401"},{"code":"403"},{"code":"500","schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/500/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"components/schemas/ErrorEnvelope","exampleIds":["paths/~1withdraw~1status~1batch/post/responses/500/content/application~1json/example"]}}}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/fund/listfundwithdrawalstatuses"}],"panels":[]}]},"httpPath":"/withdraw/status/batch"},{"label":"List withdrawal fees","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/apis/fund/fund/listfundwithdrawalfees","routeSlug":"/apis/fund/fund/listfundwithdrawalfees","metadata":{"seo":{"title":"List withdrawal fees","description":"Lists currently enabled public chain and token pairs with their withdrawal fees. Requires fund.withdraw permission."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"listFundWithdrawalFees","name":"List withdrawal fees","isWebhook":false,"pointer":"/paths/~1withdraw~1fees/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"List withdrawal fees","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Lists currently enabled public chain and token pairs with their withdrawal fees. Requires "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fund.withdraw"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" permission."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"Ed25519","scopes":[],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; also send X-API-Key-ID, X-API-Timestamp, X-API-Nonce and Digest. Sign locally; never enter your private key here."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-API-Key-ID","in":"header","schemaId":"schema_0","description":"32-character Base58 credential ID returned after public-key registration.","required":true},{"name":"X-API-Timestamp","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix timestamp in seconds; tolerance is ±300 seconds."},"children":[]}]}]}],"required":true},{"name":"X-API-Nonce","in":"header","schemaId":"schema_0","description":"16 cryptographically random bytes encoded as unpadded Base64URL; fresh on every attempt.","required":true},{"name":"Digest","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"SHA-256= followed by standard padded Base64 of SHA-256 of exact request body bytes. Required even for an empty body; included in the signing string."},"children":[]}]}]}],"required":true},{"name":"Authorization","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", where BASE64_SIGNATURE is the standard padded Base64 signature. See /docs/en/4-authorization for the exact signing string."},"children":[]}]}]}],"required":true}],"pointer":"/paths/~1withdraw~1fees/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/withdraw/fees","servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"X-API-Key-ID","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Timestamp","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Nonce","in":"header","required":true,"schemaId":"schema_0"},{"name":"Digest","in":"header","required":true,"schemaId":"schema_0"},{"name":"Authorization","in":"header","required":true,"schemaId":"schema_0"}],"cookie":[]},"security":[{"schemes":[{"id":"Ed25519","type":"apiKey","name":"Authorization","in":"header"}],"scopes":[]}],"responseCodes":["200","401","403"],"pointer":"/withdraw/fees","href":"fund/listfundwithdrawalfees","openApiOperationId":"listFundWithdrawalFees","summary":"List withdrawal fees"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Standard response envelope","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_7","exampleIds":["paths/~1withdraw~1fees/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_7","exampleIds":["paths/~1withdraw~1fees/get/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed: invalid/disabled credential, signature, timestamp, nonce or digest."},{"code":"403","description":"Authenticated credential lacks permission or the client IP is not allowed."}],"pointer":"/paths/~1withdraw~1fees/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_7","exampleIds":["paths/~1withdraw~1fees/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_7","exampleIds":["paths/~1withdraw~1fees/get/responses/200/content/application~1json/example"]}}},{"code":"401"},{"code":"403"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/fund/listfundwithdrawalfees"}],"panels":[]}]},"httpPath":"/withdraw/fees"},{"label":"Get available balances","deprecated":false,"httpVerb":"get","isAdditionalOperation":false,"isWebhook":false,"type":"link","link":"/apis/fund/fund/getfundavailablebalances","routeSlug":"/apis/fund/fund/getfundavailablebalances","metadata":{"seo":{"title":"Get available balances","description":"Returns only the authenticated merchant's USDT, USDC, and USD Cash AVAILABLE_BALANCE values. Requires fund.withdraw permission. USD is returned as \"0\" when the USD Cash Account is not open."}},"content":{"contentType":"item","itemVariant":"httpItem","meta":{"sourceId":"getFundAvailableBalances","name":"Get available balances","isWebhook":false,"pointer":"/paths/~1balances/get","hasSamples":false},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Get available balances","isWebhook":false,"showPageActions":true}],"panels":[]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Request","labelTranslationKey":"request","deepLinkSuffix":"request"},{"nodeType":"markdoc","content":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Returns only the authenticated merchant's USDT, USDC, and USD Cash "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"AVAILABLE_BALANCE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" values. Requires "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fund.withdraw"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" permission. USD is returned as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"\"0\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" when the USD Cash Account is not open."},"children":[]}]}]}]},{"nodeType":"security","requirements":[{"schemes":[{"name":"Ed25519","scopes":[],"type":"apiKey","in":"header","paramName":"Authorization","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; also send X-API-Key-ID, X-API-Timestamp, X-API-Nonce and Digest. Sign locally; never enter your private key here."},"children":[]}]}]}]}]}]},{"nodeType":"item-content","variant":"headers","label":"Headers","labelTranslationKey":"header","parameters":[{"name":"X-API-Key-ID","in":"header","schemaId":"schema_0","description":"32-character Base58 credential ID returned after public-key registration.","required":true},{"name":"X-API-Timestamp","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Unix timestamp in seconds; tolerance is ±300 seconds."},"children":[]}]}]}],"required":true},{"name":"X-API-Nonce","in":"header","schemaId":"schema_0","description":"16 cryptographically random bytes encoded as unpadded Base64URL; fresh on every attempt.","required":true},{"name":"Digest","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"SHA-256= followed by standard padded Base64 of SHA-256 of exact request body bytes. Required even for an empty body; included in the signing string."},"children":[]}]}]}],"required":true},{"name":"Authorization","in":"header","schemaId":"schema_0","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":", where BASE64_SIGNATURE is the standard padded Base64 signature. See /docs/en/4-authorization for the exact signing string."},"children":[]}]}]}],"required":true}],"pointer":"/paths/~1balances/get/parameters"}],"panels":[{"children":[{"kind":"code-sample","source":{"kind":"code-sample","operationType":"http","method":"GET","path":"/balances","servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"parameters":{"path":[],"query":[],"querystring":[],"header":[{"name":"X-API-Key-ID","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Timestamp","in":"header","required":true,"schemaId":"schema_0"},{"name":"X-API-Nonce","in":"header","required":true,"schemaId":"schema_0"},{"name":"Digest","in":"header","required":true,"schemaId":"schema_0"},{"name":"Authorization","in":"header","required":true,"schemaId":"schema_0"}],"cookie":[]},"security":[{"schemes":[{"id":"Ed25519","type":"apiKey","name":"Authorization","in":"header"}],"scopes":[]}],"responseCodes":["200","401","403"],"pointer":"/balances","href":"fund/getfundavailablebalances","openApiOperationId":"getFundAvailableBalances","summary":"Get available balances"},"isWebhook":false,"hideReplay":false,"servers":[{"url":"/_mock/apis/fund","description":"Mock server","isMockServer":true},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"header","level":4,"label":"Responses","labelTranslationKey":"responses","deepLinkSuffix":"responses"},{"nodeType":"item-content","variant":"responses","responses":[{"code":"200","description":"Standard response envelope","mediaType":"application/json","mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_8","exampleIds":["paths/~1balances/get/responses/200/content/application~1json/example"]}},"schemaId":"schema_8","exampleIds":["paths/~1balances/get/responses/200/content/application~1json/example"]},{"code":"401","description":"Authentication failed: invalid/disabled credential, signature, timestamp, nonce or digest."},{"code":"403","description":"Authenticated credential lacks permission or the client IP is not allowed."}],"pointer":"/paths/~1balances/get/responses"}],"panels":[{"children":[{"kind":"response","responseCodes":[{"code":"200","schemaId":"schema_8","exampleIds":["paths/~1balances/get/responses/200/content/application~1json/example"],"mediaTypes":["application/json"],"mediaTypeContent":{"application/json":{"schemaId":"schema_8","exampleIds":["paths/~1balances/get/responses/200/content/application~1json/example"]}}},{"code":"401"},{"code":"403"}],"examples":[]}]}]},{"nodeType":"container","children":[{"nodeType":"feedback","pageSlug":"/fund/getfundavailablebalances"}],"panels":[]}]},"httpPath":"/balances"}],"content":{"contentType":"group","meta":{"name":"Fund"},"children":[{"nodeType":"container","children":[{"nodeType":"header","level":2,"label":"Fund","showPageActions":true},{"nodeType":"markdoc","content":"Organization fund operations"}],"panels":[{"children":[{"kind":"group-items","title":"Operations","titleTranslationKey":"operations","items":[{"title":"/swap","summary":"Swap funds","prefix":{"name":"post","color":"post"},"badges":[],"link":"/fund/swapfunds","deprecated":false},{"title":"/withdraw","summary":"Withdraw organization funds","prefix":{"name":"post","color":"post"},"badges":[],"link":"/fund/applyfundwithdrawal","deprecated":false},{"title":"/internal-transfer","summary":"Transfer funds to a UID","prefix":{"name":"post","color":"post"},"badges":[],"link":"/fund/createfundinternaltransfer","deprecated":false},{"title":"/withdraw/status","summary":"Get withdrawal status","prefix":{"name":"get","color":"get"},"badges":[],"link":"/fund/getfundwithdrawalstatus","deprecated":false},{"title":"/withdraw/status/batch","summary":"List withdrawal statuses","prefix":{"name":"post","color":"post"},"badges":[],"link":"/fund/listfundwithdrawalstatuses","deprecated":false},{"title":"/withdraw/fees","summary":"List withdrawal fees","prefix":{"name":"get","color":"get"},"badges":[],"link":"/fund/listfundwithdrawalfees","deprecated":false},{"title":"/balances","summary":"Get available balances","prefix":{"name":"get","color":"get"},"badges":[],"link":"/fund/getfundavailablebalances","deprecated":false}]}]}]}]}}],"store":{"schemaStore":{"components/schemas/SwapRequest":{"id":"components/schemas/SwapRequest","kind":"json-schema","title":"SwapRequest","data":{"type":"object","required":["request_id","source_currency","target_currency","amount"],"properties":{"request_id":{"type":"string","format":"uuid","description":"Required UUID idempotency key; reuse on retry with unchanged parameters.","example":"e94b4e88-36c2-4550-907e-839742cf5fae"},"source_currency":{"type":"string","enum":["USDC","USDT","USD"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Source WALLET currency; must differ from target_currency."},"children":[]}]}]}],"example":"USDC"},"target_currency":{"type":"string","enum":["USDC","USDT","USD"],"description":"Target WALLET currency.","example":"USD"},"amount":{"type":"string","description":"Positive total source debit including FX fee. Plain decimal, no exponent; USD allows 2 decimals, USDC/USDT 6. Minor-unit value must fit a signed 64-bit integer.","example":"100"},"min_output_amount":{"type":"string","description":"Optional non-negative minimum net target amount, using target currency precision and the same minor-unit range. Omission accepts the execution-time output. Zero disables the minimum but zero actual output is always rejected.","example":"99"}}}},"components/schemas/SwapResponse":{"id":"components/schemas/SwapResponse","kind":"json-schema","title":"SwapResponse","data":{"type":"object","required":["request_id","output_amount","price","fx_fee","fx_fee_currency","is_duplicate"],"properties":{"request_id":{"type":"string","format":"uuid","description":"Canonical request UUID.","example":"e94b4e88-36c2-4550-907e-839742cf5fae"},"output_amount":{"type":"string","description":"Actual net amount credited to the target WALLET after FX fee and precision truncation.","example":"99.5"},"price":{"type":"string","description":"Executed exchange rate, in target units per one source unit, before deducting FX fee. This is not a guaranteed rate for future requests.","example":"1"},"fx_fee":{"type":"string","description":"FX fee included in the total source debit.","example":"0.5"},"fx_fee_currency":{"type":"string","enum":["USDC","USDT","USD"],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Currency of the FX fee, equal to source_currency."},"children":[]}]}]}],"example":"USDC"},"is_duplicate":{"type":"boolean","description":"True when returning the original completed result without exchanging again.","example":false}}}},"components/schemas/SwapEnvelope":{"id":"components/schemas/SwapEnvelope","kind":"json-schema","title":"SwapEnvelope","data":{"allOf":[{"$ref":"#/components/schemas/StandardEnvelope"},{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/SwapResponse"}}}]}},"components/schemas/StandardEnvelope":{"id":"components/schemas/StandardEnvelope","kind":"json-schema","title":"StandardEnvelope","data":{"type":"object","required":["code","message"],"properties":{"code":{"type":"integer","enum":[0],"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Business code. "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"0"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" means success."},"children":[]}]}]}],"example":0},"message":{"type":"string","description":"Response message.","example":""}}}},"components/schemas/ErrorEnvelope":{"id":"components/schemas/ErrorEnvelope","kind":"json-schema","title":"ErrorEnvelope","data":{"type":"object","required":["code","message","data"],"properties":{"code":{"type":"integer","minimum":1,"description":"Non-zero business error code.","example":30013},"message":{"type":"string","description":"Error details.","example":"request_id must be a UUID"},"data":{"type":"object","nullable":true,"description":"Error responses return null.","example":null}}}},"components/schemas/GatewayError":{"id":"components/schemas/GatewayError","kind":"json-schema","title":"GatewayError","data":{"type":"object","additionalProperties":false,"required":["message"],"properties":{"message":{"type":"string","description":"Gateway validation error.","example":"client request can't be validated"}}}},"components/schemas/WithdrawalStatusRequestId":{"id":"components/schemas/WithdrawalStatusRequestId","kind":"json-schema","title":"WithdrawalStatusRequestId","data":{"type":"string","format":"uuid","description":"Withdrawal request ID.","example":"e94b4e88-36c2-4550-907e-839742cf5fae"}},"components/schemas/ApplyWithdrawRequest":{"id":"components/schemas/ApplyWithdrawRequest","kind":"json-schema","title":"ApplyWithdrawRequest","data":{"type":"object","required":["chain","token_type","amount","wallet_address"],"properties":{"request_id":{"type":"string","format":"uuid","description":"Optional idempotency key. Must be a UUID when supplied.","example":"e94b4e88-36c2-4550-907e-839742cf5fae"},"chain":{"type":"string","description":"Public chain name. Use a currently enabled pair returned by the withdrawal fees endpoint.","example":"ETHEREUM"},"token_type":{"type":"string","description":"Token type. Use a currently enabled pair returned by the withdrawal fees endpoint.","example":"USDT"},"source_currency":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Source account currency. Defaults to token_type. Set to USD to deduct from the organization's USD Cash Account when withdrawing USDT or USDC; other cross-currency pairs are rejected."},"children":[]}]}]}],"example":"USD"},"amount":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Maximum amount deducted from the source account. Digits after the sixth decimal place are truncated without rounding; when source_currency is USD, at most two decimal places are allowed. The resulting amount must be at least 1 and greater than the applicable fees."},"children":[]}]}]}],"example":"10.00"},"wallet_address":{"type":"string","description":"Destination wallet address valid for the selected chain.","example":"0x5f716e5775b18409917e2a2f0762d29d6c385cb0"},"note":{"type":"string","description":"Optional withdrawal note.","example":"Treasury withdrawal"}}}},"components/schemas/ApplyWithdrawResponse":{"id":"components/schemas/ApplyWithdrawResponse","kind":"json-schema","title":"ApplyWithdrawResponse","data":{"type":"object","required":["request_id","status","is_duplicate"],"properties":{"request_id":{"type":"string","format":"uuid","description":"Withdrawal request ID.","example":"e94b4e88-36c2-4550-907e-839742cf5fae"},"status":{"type":"string","description":"Current withdrawal status.","enum":["pending","processing","completed","failed"],"example":"pending"},"is_duplicate":{"type":"boolean","description":"Whether the response refers to an existing request ID.","example":false}}}},"components/schemas/ApplyWithdrawEnvelope":{"id":"components/schemas/ApplyWithdrawEnvelope","kind":"json-schema","title":"ApplyWithdrawEnvelope","data":{"allOf":[{"$ref":"#/components/schemas/StandardEnvelope"},{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/ApplyWithdrawResponse"}}}]}},"components/schemas/InternalTransferRequest":{"id":"components/schemas/InternalTransferRequest","kind":"json-schema","title":"InternalTransferRequest","data":{"type":"object","required":["recipient_uid","token_type","amount"],"properties":{"request_id":{"type":"string","format":"uuid","description":"Optional idempotency key. Must be a UUID when supplied.","example":"4b4436ba-90a1-4f26-940d-97177a7a3400"},"recipient_uid":{"type":"string","description":"Recipient Infini UID. The UID cannot belong to the source organization.","example":"12345678"},"token_type":{"type":"string","description":"Recipient account currency.","enum":["USDT","USDC","USD"],"example":"USDC"},"source_currency":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Source account currency. Defaults to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"token_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; V1 requires the same currency as "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"token_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"enum":["USDT","USDC","USD"],"example":"USDC"},"amount":{"type":"string","description":"Positive amount deducted and received. USDT and USDC support up to six decimal places; USD supports up to two. V1 internal transfers have no fee.","example":"10.25"},"note":{"type":"string","description":"Optional transfer note.","example":"Customer refund"}}}},"components/schemas/InternalTransferResponse":{"id":"components/schemas/InternalTransferResponse","kind":"json-schema","title":"InternalTransferResponse","data":{"type":"object","required":["request_id","status","is_duplicate"],"properties":{"request_id":{"type":"string","format":"uuid","description":"Internal transfer request ID.","example":"4b4436ba-90a1-4f26-940d-97177a7a3400"},"status":{"type":"string","description":"Internal transfer status. V1 completes the ledger transfer synchronously.","enum":["completed"],"example":"completed"},"is_duplicate":{"type":"boolean","description":"Whether the same request ID was already completed for the authenticated organization.","example":false}}}},"components/schemas/InternalTransferEnvelope":{"id":"components/schemas/InternalTransferEnvelope","kind":"json-schema","title":"InternalTransferEnvelope","data":{"allOf":[{"$ref":"#/components/schemas/StandardEnvelope"},{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/InternalTransferResponse"}}}]}},"components/schemas/GetWithdrawStatusResponse":{"id":"components/schemas/GetWithdrawStatusResponse","kind":"json-schema","title":"GetWithdrawStatusResponse","data":{"type":"object","required":["request_id","status","amount","fee","actual_amount","transaction_hash","chain","token_type","source_currency","gas_fee","gas_fee_currency","fx_fee","fx_fee_currency","fee_paid_by"],"properties":{"request_id":{"$ref":"#/components/schemas/WithdrawalStatusRequestId"},"status":{"type":"string","description":"Current withdrawal status.","enum":["pending","processing","completed","failed"],"example":"completed"},"amount":{"type":"string","description":"Total amount deducted from the source account.","example":"11"},"fee":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy Gas fee field. New integrations should use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"gas_fee"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"gas_fee_currency"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"0.1"},"actual_amount":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Actual amount sent on-chain in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"token_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"10.9"},"transaction_hash":{"type":"string","description":"On-chain transaction hash. Empty before submission.","example":"0xabc123"},"chain":{"type":"string","description":"Public chain name.","example":"ETHEREUM"},"token_type":{"type":"string","description":"Token type.","example":"USDT"},"source_currency":{"type":"string","description":"Source account currency.","example":"USD"},"gas_fee":{"type":"string","description":"Customer-facing Gas fee charged for the withdrawal.","example":"0.08"},"gas_fee_currency":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Currency of "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"gas_fee"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"USD"},"fx_fee":{"type":"string","description":"FX fee charged for a cross-currency withdrawal; zero for same-currency withdrawals.","example":"0.02"},"fx_fee_currency":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Currency of "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fx_fee"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"USD"},"fee_paid_by":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fee liability, either "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"PAYER"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"BENEFICIARY"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"enum":["PAYER","BENEFICIARY"],"example":"BENEFICIARY"}}}},"components/schemas/GetWithdrawStatusEnvelope":{"id":"components/schemas/GetWithdrawStatusEnvelope","kind":"json-schema","title":"GetWithdrawStatusEnvelope","data":{"allOf":[{"$ref":"#/components/schemas/StandardEnvelope"},{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/GetWithdrawStatusResponse"}}}]}},"components/schemas/ListWithdrawStatusesRequest":{"id":"components/schemas/ListWithdrawStatusesRequest","kind":"json-schema","title":"ListWithdrawStatusesRequest","data":{"type":"object","required":["start_time","end_time"],"properties":{"start_time":{"type":"integer","format":"int64","minimum":1,"description":"Inclusive withdrawal creation start time, as a Unix timestamp in seconds.","example":1787500000},"end_time":{"type":"integer","format":"int64","minimum":1,"description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Inclusive withdrawal creation end time, as a Unix timestamp in seconds. Must be greater than or equal to "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"start_time"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":1787599999},"page":{"type":"integer","minimum":1,"default":1,"description":"Page number.","example":1},"page_size":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"Number of withdrawals per page.","example":20}}}},"components/schemas/WithdrawalStatusListItem":{"id":"components/schemas/WithdrawalStatusListItem","kind":"json-schema","title":"WithdrawalStatusListItem","data":{"type":"object","required":["request_id","created_at","status"],"properties":{"request_id":{"$ref":"#/components/schemas/WithdrawalStatusRequestId"},"created_at":{"type":"integer","format":"int64","description":"Withdrawal creation time, as a Unix timestamp in seconds.","example":1787564636},"status":{"type":"string","description":"Current withdrawal status.","enum":["pending","processing","completed","failed"],"example":"completed"},"amount":{"type":"string","description":"Total amount deducted from the source account.","example":"11"},"fee":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Legacy Gas fee field. New integrations should use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"gas_fee"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" and "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"gas_fee_currency"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"0.1"},"actual_amount":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Actual amount sent on-chain in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"token_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"10.9"},"transaction_hash":{"type":"string","description":"On-chain transaction hash. Empty before submission.","example":"0xabc123"},"chain":{"type":"string","description":"Public chain name.","example":"ETHEREUM"},"token_type":{"type":"string","description":"Token type sent on-chain.","example":"USDT"},"source_currency":{"type":"string","description":"Source account currency.","example":"USDT"},"gas_fee":{"type":"string","description":"Customer-facing Gas fee charged for the withdrawal.","example":"0.1"},"gas_fee_currency":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Currency of "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"gas_fee"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"USDT"},"fx_fee":{"type":"string","description":"FX fee charged for a cross-currency withdrawal; zero for same-currency withdrawals.","example":"0"},"fx_fee_currency":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Currency of "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"fx_fee"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"USDT"},"fee_paid_by":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Fee liability, either "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"PAYER"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" or "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"BENEFICIARY"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"enum":["PAYER","BENEFICIARY"],"example":"BENEFICIARY"}}}},"components/schemas/ListWithdrawStatusesResponse":{"id":"components/schemas/ListWithdrawStatusesResponse","kind":"json-schema","title":"ListWithdrawStatusesResponse","data":{"type":"object","required":["withdrawals","total","page","page_size","total_pages"],"properties":{"withdrawals":{"type":"array","description":"Matching withdrawal statuses ordered by creation time descending.","items":{"$ref":"#/components/schemas/WithdrawalStatusListItem"}},"total":{"type":"integer","format":"int64","minimum":0,"description":"Total number of withdrawals matching the time range.","example":1},"page":{"type":"integer","minimum":1,"description":"Current page number.","example":1},"page_size":{"type":"integer","minimum":1,"maximum":100,"description":"Number of withdrawals requested per page.","example":20},"total_pages":{"type":"integer","minimum":0,"description":"Total number of pages. Zero when no withdrawals match.","example":1}}}},"components/schemas/ListWithdrawStatusesEnvelope":{"id":"components/schemas/ListWithdrawStatusesEnvelope","kind":"json-schema","title":"ListWithdrawStatusesEnvelope","data":{"allOf":[{"$ref":"#/components/schemas/StandardEnvelope"},{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/ListWithdrawStatusesResponse"}}}]}},"components/schemas/WithdrawFeeItem":{"id":"components/schemas/WithdrawFeeItem","kind":"json-schema","title":"WithdrawFeeItem","data":{"type":"object","required":["chain","token_type","withdraw_fee"],"properties":{"chain":{"type":"string","description":"Public chain name.","example":"ARBITRUM"},"token_type":{"type":"string","description":"Token type.","example":"USDC"},"withdraw_fee":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Withdrawal fee denominated in "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"token_type"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"0.5"}}}},"components/schemas/ListWithdrawFeesResponse":{"id":"components/schemas/ListWithdrawFeesResponse","kind":"json-schema","title":"ListWithdrawFeesResponse","data":{"type":"object","required":["fees"],"properties":{"fees":{"type":"array","description":"Currently enabled public chain and token withdrawal fees.","items":{"$ref":"#/components/schemas/WithdrawFeeItem"}}}}},"components/schemas/ListWithdrawFeesEnvelope":{"id":"components/schemas/ListWithdrawFeesEnvelope","kind":"json-schema","title":"ListWithdrawFeesEnvelope","data":{"allOf":[{"$ref":"#/components/schemas/StandardEnvelope"},{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/ListWithdrawFeesResponse"}}}]}},"components/schemas/GetAvailableBalancesResponse":{"id":"components/schemas/GetAvailableBalancesResponse","kind":"json-schema","title":"GetAvailableBalancesResponse","data":{"type":"object","required":["available_balance_usdt","available_balance_usdc","available_balance_usd"],"properties":{"available_balance_usdt":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"USDT "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"AVAILABLE_BALANCE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"120.50"},"available_balance_usdc":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"USDC "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"AVAILABLE_BALANCE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"."},"children":[]}]}]}],"example":"75.25"},"available_balance_usd":{"type":"string","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"USD Cash "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"AVAILABLE_BALANCE"},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; returns "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"\"0\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":" when the USD Cash Account is not open."},"children":[]}]}]}],"example":"1000.00"}}}},"components/schemas/GetAvailableBalancesEnvelope":{"id":"components/schemas/GetAvailableBalancesEnvelope","kind":"json-schema","title":"GetAvailableBalancesEnvelope","data":{"allOf":[{"$ref":"#/components/schemas/StandardEnvelope"},{"type":"object","required":["data"],"properties":{"data":{"$ref":"#/components/schemas/GetAvailableBalancesResponse"}}}]}},"schema_0":{"kind":"json-schema","data":{"type":"string"},"id":"schema_0"},"schema_1":{"kind":"json-schema","data":{"oneOf":[{"$ref":"#/components/schemas/SwapEnvelope"},{"$ref":"#/components/schemas/ErrorEnvelope"}]},"id":"schema_1"},"schema_2":{"kind":"json-schema","data":{"oneOf":[{"$ref":"#/components/schemas/ApplyWithdrawEnvelope"},{"$ref":"#/components/schemas/ErrorEnvelope"}]},"id":"schema_2"},"schema_3":{"kind":"json-schema","data":{"oneOf":[{"$ref":"#/components/schemas/InternalTransferEnvelope"},{"$ref":"#/components/schemas/ErrorEnvelope"}]},"id":"schema_3"},"schema_4":{"kind":"json-schema","data":{"$ref":"#/components/schemas/WithdrawalStatusRequestId"},"id":"schema_4"},"schema_5":{"kind":"json-schema","data":{"oneOf":[{"$ref":"#/components/schemas/GetWithdrawStatusEnvelope"},{"$ref":"#/components/schemas/ErrorEnvelope"}]},"id":"schema_5"},"schema_6":{"kind":"json-schema","data":{"oneOf":[{"$ref":"#/components/schemas/ListWithdrawStatusesEnvelope"},{"$ref":"#/components/schemas/ErrorEnvelope"}]},"id":"schema_6"},"schema_7":{"kind":"json-schema","data":{"oneOf":[{"$ref":"#/components/schemas/ListWithdrawFeesEnvelope"},{"$ref":"#/components/schemas/ErrorEnvelope"}]},"id":"schema_7"},"schema_8":{"kind":"json-schema","data":{"oneOf":[{"$ref":"#/components/schemas/GetAvailableBalancesEnvelope"},{"$ref":"#/components/schemas/ErrorEnvelope"}]},"id":"schema_8"}},"exampleStore":{"paths/~1swap/post/responses/200/content/application~1json/example":{"value":{"code":0,"message":"","data":{"request_id":"e94b4e88-36c2-4550-907e-839742cf5fae","output_amount":"99.5","price":"1","fx_fee":"0.5","fx_fee_currency":"USDC","is_duplicate":false}},"id":"paths/~1swap/post/responses/200/content/application~1json/example"},"paths/~1withdraw/post/requestBody/content/application~1json/example":{"value":{"request_id":"e94b4e88-36c2-4550-907e-839742cf5fae","chain":"ETHEREUM","token_type":"USDT","source_currency":"USD","amount":"10.00","wallet_address":"0x5f716e5775b18409917e2a2f0762d29d6c385cb0","note":"Treasury withdrawal"},"id":"paths/~1withdraw/post/requestBody/content/application~1json/example"},"paths/~1withdraw/post/responses/200/content/application~1json/example":{"value":{"code":0,"message":"","data":{"request_id":"e94b4e88-36c2-4550-907e-839742cf5fae","status":"pending","is_duplicate":false}},"id":"paths/~1withdraw/post/responses/200/content/application~1json/example"},"paths/~1withdraw/post/responses/400/content/application~1json/example":{"value":{"code":30013,"message":"request_id must be a UUID","data":null},"id":"paths/~1withdraw/post/responses/400/content/application~1json/example"},"paths/~1internal-transfer/post/requestBody/content/application~1json/example":{"value":{"request_id":"4b4436ba-90a1-4f26-940d-97177a7a3400","recipient_uid":"12345678","token_type":"USDC","source_currency":"USDC","amount":"10.25","note":"Customer refund"},"id":"paths/~1internal-transfer/post/requestBody/content/application~1json/example"},"paths/~1internal-transfer/post/responses/200/content/application~1json/example":{"value":{"code":0,"message":"","data":{"request_id":"4b4436ba-90a1-4f26-940d-97177a7a3400","status":"completed","is_duplicate":false}},"id":"paths/~1internal-transfer/post/responses/200/content/application~1json/example"},"paths/~1internal-transfer/post/responses/400/content/application~1json/example":{"value":{"code":30013,"message":"request_id must be a UUID","data":null},"id":"paths/~1internal-transfer/post/responses/400/content/application~1json/example"},"paths/~1withdraw~1status/get/responses/200/content/application~1json/example":{"value":{"code":0,"message":"","data":{"request_id":"e94b4e88-36c2-4550-907e-839742cf5fae","status":"completed","amount":"11","fee":"0.1","actual_amount":"10.9","transaction_hash":"0xabc123","chain":"ETHEREUM","token_type":"USDT","source_currency":"USD","gas_fee":"0.08","gas_fee_currency":"USD","fx_fee":"0.02","fx_fee_currency":"USD","fee_paid_by":"BENEFICIARY"}},"id":"paths/~1withdraw~1status/get/responses/200/content/application~1json/example"},"paths/~1withdraw~1status/get/responses/400/content/application~1json/example":{"value":{"code":30013,"message":"request_id must be a UUID","data":null},"id":"paths/~1withdraw~1status/get/responses/400/content/application~1json/example"},"paths/~1withdraw~1status/get/responses/404/content/application~1json/example":{"value":{"code":404,"message":"Resource does not exist","data":null},"id":"paths/~1withdraw~1status/get/responses/404/content/application~1json/example"},"paths/~1withdraw~1status~1batch/post/requestBody/content/application~1json/example":{"value":{"start_time":1787500000,"end_time":1787599999,"page":1,"page_size":20},"id":"paths/~1withdraw~1status~1batch/post/requestBody/content/application~1json/example"},"paths/~1withdraw~1status~1batch/post/responses/200/content/application~1json/example":{"value":{"code":0,"message":"","data":{"withdrawals":[{"request_id":"e94b4e88-36c2-4550-907e-839742cf5fae","created_at":1787564636,"status":"completed","amount":"11","fee":"0.1","actual_amount":"10.9","transaction_hash":"0xabc123","chain":"ETHEREUM","token_type":"USDT","source_currency":"USDT","gas_fee":"0.1","gas_fee_currency":"USDT","fx_fee":"0","fx_fee_currency":"USDT","fee_paid_by":"BENEFICIARY"}],"total":1,"page":1,"page_size":20,"total_pages":1}},"id":"paths/~1withdraw~1status~1batch/post/responses/200/content/application~1json/example"},"paths/~1withdraw~1status~1batch/post/responses/400/content/application~1json/example":{"value":{"code":30013,"message":"start_time and end_time must define a valid Unix-second range","data":null},"id":"paths/~1withdraw~1status~1batch/post/responses/400/content/application~1json/example"},"paths/~1withdraw~1status~1batch/post/responses/500/content/application~1json/example":{"value":{"code":500,"message":"An error occurred internally","data":null},"id":"paths/~1withdraw~1status~1batch/post/responses/500/content/application~1json/example"},"paths/~1withdraw~1fees/get/responses/200/content/application~1json/example":{"value":{"code":0,"message":"","data":{"fees":[{"chain":"ARBITRUM","token_type":"USDC","withdraw_fee":"0.5"},{"chain":"ETHEREUM","token_type":"USDT","withdraw_fee":"2"}]}},"id":"paths/~1withdraw~1fees/get/responses/200/content/application~1json/example"},"paths/~1balances/get/responses/200/content/application~1json/example":{"value":{"code":0,"message":"","data":{"available_balance_usdt":"120.50","available_balance_usdc":"75.25","available_balance_usd":"1000.00"}},"id":"paths/~1balances/get/responses/200/content/application~1json/example"}},"securitySchemeStore":{"Ed25519":{"id":"Ed25519","type":"apiKey","description":[{"$$mdtype":"Node","type":"paragraph","attributes":{},"children":[{"$$mdtype":"Node","type":"inline","attributes":{},"children":[{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"Use "},"children":[]},{"$$mdtype":"Node","type":"code","inline":true,"attributes":{"content":"Ed25519 signature=\"BASE64_SIGNATURE\""},"children":[]},{"$$mdtype":"Node","type":"text","inline":true,"attributes":{"content":"; also send X-API-Key-ID, X-API-Timestamp, X-API-Nonce and Digest. Sign locally; never enter your private key here."},"children":[]}]}]}],"in":"header","paramName":"Authorization"}},"specVersion":"3.0.0","servers":[{"url":"/_mock/apis/fund","isMockServer":true,"description":"Mock server"},{"url":"https://openapi.infini.money/v2/funds","description":"Production"},{"url":"https://openapi-sandbox.infini.money/v2/funds","description":"Sandbox"}],"specType":"openapi"},"options":{"hideReplay":true,"mockServer":{"url":"/_mock/apis/fund","position":"first","description":"Mock server"},"disableRouter":true,"downloadUrls":[{"url":"/_bundle/apis/fund.json?download"},{"url":"/_bundle/apis/fund.yaml?download"}],"excludeFromSearch":false,"replayFeatures":{"graphql":false},"specType":"openapi","markdocOptions":{"tags":{},"nodes":{},"components":{}},"metadata":{"title":"Infini Fund API","description":"Organization fund APIs for swaps, Infini UID transfers, withdrawals, withdrawal fees, and USDT/USDC/USD available balances. All endpoints use the independent `/v2/funds` prefix.\n\n\n\nRequests require Ed25519 v2 authentication. See [Authentication](/docs/en/4-authorization). Online Try it is disabled; sign locally with your private key. Confirm v2 availability for your environment before switching production traffic."}},"baseSlug":"/apis/fund","routesMapping":{}}