The Portfolios endpoints let you create and manage sub-portfolios within your Advanced Trade account and transfer funds between them. The Perpetuals (Intx) section extends this with endpoints for querying perpetuals positions and collateral balances on the Coinbase International Exchange, allocating portfolio funds to sub-portfolios, and enabling or disabling multi-asset collateral.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/tiagosiebler/coinbase-api/llms.txt
Use this file to discover all available pages before exploring further.
getPortfolios
List all portfolios belonging to the current user. Optionally filter by portfolio type.| Auth | Required |
| HTTP | GET /api/v3/brokerage/portfolios |
Filter by type:
"UNDEFINED", "DEFAULT", "CONSUMER", or "INTX".Promise<{ portfolios: AdvTradePortfolio[] }> — each portfolio has uuid, name, type, and deleted flag.
createPortfolio
Create a new portfolio with a given name.| Auth | Required |
| HTTP | POST /api/v3/brokerage/portfolios |
The display name for the new portfolio.
Promise<{ portfolio: AdvTradePortfolio }> — the newly created portfolio record.
movePortfolioFunds
Transfer funds between two portfolios owned by the same user.| Auth | Required |
| HTTP | POST /api/v3/brokerage/portfolios/move_funds |
Amount to transfer. An object with:
value(string) — decimal amount, e.g."100.00"currency(string) — asset currency code, e.g."USD"
UUID of the portfolio to transfer funds from.
UUID of the portfolio to transfer funds into.
Promise<{ source_portfolio_uuid: string; target_portfolio_uuid: string }> — confirms the UUIDs of the two portfolios involved.
getPortfolioBreakdown
Retrieve a detailed breakdown of a portfolio, including spot positions, perpetuals positions, futures positions, and balance summaries.| Auth | Required |
| HTTP | GET /api/v3/brokerage/portfolios/{portfolio_uuid} |
UUID of the portfolio to retrieve.
Express monetary values in this currency, e.g.
"EUR".Promise<{ breakdown: AdvTradePortfolioBreakdown }> — contains the nested portfolio record, portfolio_balances (totals across asset classes), spot_positions, perp_positions, and futures_positions.
deletePortfolio
Permanently delete a portfolio. The portfolio must be empty before it can be deleted.| Auth | Required |
| HTTP | DELETE /api/v3/brokerage/portfolios/{portfolio_uuid} |
UUID of the portfolio to delete.
Promise<any> — an empty response on success.
updatePortfolio
Rename an existing portfolio.| Auth | Required |
| HTTP | PUT /api/v3/brokerage/portfolios/{portfolio_uuid} |
UUID of the portfolio to update.
The new display name for the portfolio.
Promise<{ portfolio: AdvTradePortfolio }> — the updated portfolio record.
Perpetuals Endpoints
The following endpoints interact with the Coinbase International Exchange (Intx) perpetuals platform associated with a portfolio. All Intx endpoints use the/api/v3/brokerage/intx/ path prefix.
allocatePortfolio
Allocate funds from a portfolio to a sub-portfolio on the Intx perpetuals platform for a specific symbol.| Auth | Required |
| HTTP | POST /api/v3/brokerage/intx/allocate |
UUID of the parent portfolio.
The perpetuals symbol to allocate funds to, e.g.
"BTC-PERP-INTX".The amount to allocate as a decimal string, e.g.
"1000.00".The currency of the allocation amount, e.g.
"USD".Promise<any> — an empty response on success.
getPerpetualsPortfolioSummary
Retrieve a summary of your perpetuals portfolio, including collateral, unrealised PnL, and buying power.| Auth | Required |
| HTTP | GET /api/v3/brokerage/intx/portfolio/{portfolio_uuid} |
UUID of the portfolio to summarise.
Promise<AdvTradePerpetualsPortfolio> — contains a portfolios array (each with collateral, margin, PnL, and balance details) and a top-level summary with aggregated unrealized_pnl, buying_power, total_balance, and max_withdrawal_amount.
getPerpetualsPositions
List all open perpetuals positions for a given portfolio.| Auth | Required |
| HTTP | GET /api/v3/brokerage/intx/positions/{portfolio_uuid} |
UUID of the portfolio whose positions to list.
Promise<AdvTradePerpetualsPositionSummary> — contains a positions array (each AdvTradePerpetualsPosition has product_id, net_size, position_side, leverage, unrealized_pnl, mark_price, liquidation_price, etc.) and a summary with aggregated_pnl.
getPerpetualsPosition
Retrieve a single open perpetuals position by portfolio UUID and symbol.| Auth | Required |
| HTTP | GET /api/v3/brokerage/intx/positions/{portfolio_uuid}/{symbol} |
UUID of the portfolio.
The perpetuals symbol, e.g.
"BTC-PERP-INTX".Promise<{ position: AdvTradePerpetualsPosition }> — the full position record.
getPortfoliosBalances
Retrieve asset balances on the Intx platform for a given portfolio.| Auth | Required |
| HTTP | GET /api/v3/brokerage/intx/balances/{portfolio_uuid} |
UUID of the portfolio.
Promise<{ portfolio_balances: AdvTradePortfolioBalance[] }> — each balance record contains the asset metadata (asset_id, asset_name, collateral weight), quantity, hold, collateral_value, and max_withdraw_amount.
updateMultiAssetCollateral
Enable or disable multi-asset collateral for a given perpetuals portfolio.| Auth | Required |
| HTTP | POST /api/v3/brokerage/intx/multi_asset_collateral |
UUID of the portfolio to update. Uses your default portfolio if omitted.
Set to
true to enable multi-asset collateral, false to disable it.Promise<{ multi_asset_collateral_enabled: boolean }> — confirms the new setting.