{ "opencollection": "1.0.0", "info": { "name": "Tesser Accounts Treasury API", "version": "v1" }, "request": { "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "items": [ { "info": { "name": "Treasury", "type": "folder" }, "items": [ { "info": { "name": "Get treasury activity feed (deposits, withdrawals + rebalances)", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/activity", "params": [ { "name": "page", "value": "", "type": "query" }, { "name": "limit", "value": "", "type": "query" }, { "name": "account_id", "value": "", "type": "query" }, { "name": "completed_only", "value": "", "type": "query" }, { "name": "types", "value": "", "type": "query", "description": "Filter by activity type" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Get treasury activity feed (deposits, withdrawals + rebalances)" }, { "info": { "name": "Get treasury balances", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/balances", "params": [ { "name": "currency", "value": "", "type": "query", "description": "Filter by currency. Comma-separated for multiple values. Example: USDC,USDT" }, { "name": "managed", "value": "", "type": "query", "description": "Filter by managed status. 'true' for managed accounts only, 'false' for non-managed only, omit for all accounts." } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Get treasury balances grouped by currency. Each currency includes: available balance from managed accounts, pending review payment amounts, and rejected payment amounts. Optionally filter by specific currencies." }, { "info": { "name": "Get deposits", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/deposits", "params": [ { "name": "ids", "value": "", "type": "query", "description": "Filter by deposit IDs (comma-separated UUIDs)" }, { "name": "to_account_id", "value": "", "type": "query", "description": "Filter by destination account ID (desired.to.account_id)." }, { "name": "page", "value": "", "type": "query", "description": "Page number for pagination (1-based)" }, { "name": "limit", "value": "", "type": "query", "description": "Number of items per page (default: 20)" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Retrieve a paginated list of all deposits for the workspace." }, { "info": { "name": "Create deposit", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/v1/treasury/deposits", "body": { "type": "json", "data": "{}" }, "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Create a deposit payment and get deposit instructions." }, { "info": { "name": "Get deposit by ID", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/deposits/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "Deposit ID" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Retrieve a deposit payment by its unique identifier." }, { "info": { "name": "Get deposit instructions by id", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/deposits/:id/instructions", "params": [ { "name": "id", "value": "", "type": "path", "description": "Deposit ID" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Get deposit instructions for an existing deposit.\n\n" }, { "info": { "name": "Simulate deposit in sandbox", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/v1/treasury/deposits/:id/simulate", "params": [ { "name": "id", "value": "", "type": "path", "description": "Deposit ID" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Simulate a wire deposit by triggering Circle's mock wire API. Only available in sandbox environments." }, { "info": { "name": "Get rebalances", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/rebalances", "params": [ { "name": "page", "value": "", "type": "query", "description": "Page number for pagination (1-based)" }, { "name": "limit", "value": "", "type": "query", "description": "Number of items per page (default: 20)" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Retrieve a paginated list of all rebalances for the workspace." }, { "info": { "name": "Create rebalance", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/v1/treasury/rebalances", "body": { "type": "json", "data": "{}" }, "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Create an internal rebalance between managed accounts.\n\n**Validation rules:**\n- `desired.from.network` / `desired.to.network` are required for wallet accounts and disallowed for ledger accounts." }, { "info": { "name": "Get rebalance by ID", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/rebalances/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "Rebalance ID" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Retrieve a rebalance by its unique identifier." }, { "info": { "name": "Sign rebalance step", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/v1/treasury/rebalances/:id/steps/:stepId/sign", "params": [ { "name": "id", "value": "", "type": "path", "description": "Rebalance ID" }, { "name": "stepId", "value": "", "type": "path", "description": "Rebalance step ID" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Submit a signature for a self-custodial wallet-to-wallet rebalance step. Webhook updates will be sent as the signature is validated and submitted onchain." }, { "info": { "name": "Get withdrawals", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/withdrawals", "params": [ { "name": "page", "value": "", "type": "query", "description": "Page number for pagination (1-based)" }, { "name": "limit", "value": "", "type": "query", "description": "Number of items per page (default: 20)" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Retrieve a paginated list of all withdrawals for the workspace." }, { "info": { "name": "Create withdrawal", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/v1/treasury/withdrawals", "body": { "type": "json", "data": "{}" }, "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Create a withdrawal from a managed account or self-custodial wallet to an external bank account.\n\n**Source types:**\n- Circle USDC ledger (path A) — `desired.from.network` omitted.\n- Self-custodial wallet (path B) — `desired.from.network` populated (e.g., `BASE`)." }, { "info": { "name": "Get withdrawal by ID", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/v1/treasury/withdrawals/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "Withdrawal ID" } ], "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Retrieve a withdrawal by its unique identifier." }, { "info": { "name": "Sign withdrawal step", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/v1/treasury/withdrawals/:id/steps/:stepId/sign", "params": [ { "name": "id", "value": "", "type": "path", "description": "Withdrawal ID" }, { "name": "stepId", "value": "", "type": "path", "description": "Withdrawal step ID" } ], "body": { "type": "json", "data": "{}" }, "auth": { "type": "bearer", "token": "{{bearerToken}}" } }, "docs": "Submit a signature for a self-custodial wallet-source withdrawal step. Webhook updates will be sent as the signature is validated and submitted onchain." } ] } ], "bundled": true }