Copy Trading API
You can now build copy trading into your own application. The new endpoints let you start copying an investor, add or remove funds from an existing copy, and stop copying — either keeping the copied positions open or closing them out.POST /api/v2/trading/copy— start copying an investor, or adjust the amount allocated to a copy you already havePOST /api/v2/trading/copy/eligibility— dry run the same request first to check whether the copy would be allowed, without changing anythingDELETE /api/v2/trading/copyandPOST /api/v2/trading/copy/close— stop copying, with the option to close or detach the copied positionsGET /api/v2/trading/copy/{referenceId}— copy operations are asynchronous, so poll this with the reference ID you get back to find out how it finished
/api/v2/trading/copy/demo, so you can build and test the whole flow on a demo account before going near real money.Rotate your OAuth client secret
Applications registered through the SSO endpoints can now replace their client secret without re-registering the application:POST /api/v1/sso/applications/{clientId}/client-secret.Order lookup is supported again
GET /api/v1/trading/info/real/orders/{orderId} and its demo counterpart are no longer deprecated. They now return the same modern order-information payload as the v2 lookup, covering the order and its resulting position.If you moved off these endpoints when they were marked deprecated, you can move back — or stay on GET /api/v2/trading/info/orders:lookup, which is unaffected.Crypto withdrawal endpoints withdrawn
The trading-account crypto withdrawal endpoints under/api/v1/money/withdraw/crypto were removed from the API a week after first appearing in the reference. Withdrawals are not currently available through the public API.Money movement and OAuth apps are now documented
These endpoints were already live on the API, but our documentation pipeline had been filtering them out. The reference now publishes the full API surface, so several capabilities became discoverable for the first time:Internal transfers — move money between your own accounts and understand the constraints before you do:POST /api/v1/money/transfers— execute an account-to-account transferGET /api/v1/money/transferable-balance— how much you can actually moveGET /api/v1/money/transfer-eligibility,/transfer-limits,/transfer-fee-configurations— which account pairs are allowed, the limits that apply, and what it costsGET /api/v1/money/transfers/{transferId}and/transfers:lookup— track a transfer after you send it
GET/POST/PUT/DELETE /api/v1/sso/applications, plus GET /api/v1/sso/scopes to see which scopes you can request.Top assets — GET /api/v1/impressions/topassets/user/{gcid} returns the assets a user engages with most.Investor rankings
A full ranking API for discovering and comparing investors, aimed at anyone building leaderboards, screeners, or copy-trading discovery:GET /api/v2/portfolios/rankings— paginated investor rankingsGET /api/v2/portfolios/rankings/presetsand/presets/{type}— ready-made rankings instead of building your own filtersGET /api/v2/portfolios/rankings/tagsand/summary— the available ranking tags, and the ranking universe aggregated by sector or industryGET /api/v2/portfolios/{username}/rankingsandPOST /api/v2/portfolios/rankings/multiple— a single investor’s row, or many at once
Portfolio search
GET /api/v1/portfolios/search searches trader portfolios and Smart Portfolios by free-text query.Close-order details
GET /api/v1/trading/info/real/close-orders/{orderId} (and its demo equivalent) returns the details of a close order and the position it closed, so you can confirm exit prices and realized results without reconciling against your portfolio.Cash accounts pulled back
The cash-account endpoints under/api/v1/money/accounts/cash — creation, eligibility, status, and listing — were removed two weeks after being introduced, along with the generic POST/DELETE /api/v1/sub-accounts pair.Sub-account management continues to work through the /api/v1/sub-accounts/me/accounts and /api/v1/sub-accounts/etoro-trading endpoints introduced the week before.Edit stop-loss and take-profit on open positions
Previously, changing the risk parameters on a live position meant closing and reopening it. Now you can update them in place:PATCH /api/v2/trading/positions/{positionId}(real) andPATCH /api/v2/trading/demo/positions/{positionId}(demo)
Sub-accounts
Run separate accounts under one login, each with its own API credentials — useful for isolating strategies, clients, or environments:GET/POST /api/v1/sub-accounts/me/accounts— list and create sub-accountsGET/POST/PATCH/DELETE /api/v1/sub-accounts/etoro-trading/user-tokens— issue, list, update, and revoke API tokens scoped to a sub-account, withGET .../user-tokens/scopeslisting what you can grantPOST /api/v1/sub-accounts/etoro-trading/money-transfers— move funds between sub-accounts
A more readable API reference
Endpoint summaries across market data, trading, portfolios, and watchlists were rewritten to be short and scannable, so the sidebar and search results tell you what an endpoint does at a glance.New MCP server URL
The eToro MCP server moved tohttps://mcp.public-api.etoro.com. The vibe coding guides and skill install instructions were updated. Update any existing MCP configuration pointing at the old URL.The first-generation social endpoints —
GET /api/v1/feeds/user/{userId}, GET /api/v1/feeds/instrument/{marketId}, POST /api/v1/feeds/post, and POST /api/v1/reactions/{postId}/comment — were deprecated in favor of the Posts and Feeds endpoints released on June 9.The largest release of the period
Roughly 70 endpoints landed at once, opening up several product areas that had no API coverage before.Social
A complete social API, replacing the read-only feed endpoints that came before it. You can now build a full eToro social experience:- Posts — create, edit, and delete posts; pin them to a profile, save them, follow them, and share them
- Polls — create poll posts and cast or withdraw votes
- Comments and replies — full threading, with create, edit, and delete on both levels
- Likes — like and unlike posts, comments, and replies
- Attachments —
POST /api/v1/attachmentsuploads media to attach to a post - Feeds — personalized For You, Following, News, Saved, per-user, per-instrument, and pinned feeds
Balances
A dedicated balances API that answers “how much do I have, and where” without parsing the portfolio response: aggregated balances, balances by account type, balances for a specific account, and historical snapshots of all three under/api/v1/balances.Price alerts
Create, list, update, and delete price alerts programmatically via/api/v1/price-alerts.Smarter trading decisions
POST /api/v2/trading/info/costs— a what-if cost breakdown for opening or closing a position, so you can show users the full cost before they commitPOST /api/v2/trading/info/eligibility— check trading permissions, limits, and available leverage for several instruments at onceGET /api/v1/trading/info/aggregate-portfolio— a portfolio snapshot with positions already aggregated by instrument and copy relationship, instead of a flat position list you have to roll up yourself
Investor statistics
/api/v2/portfolios/{username} gained asset allocation history, market exposure history, investor gain time-series by granularity, and current copier count with AUM tier.Other additions
Club dashboard data (GET /api/v1/clubs) and a v2 of the Agent Portfolios endpoints with a user-tokens/scopes endpoint for discovering grantable scopes.One order endpoint instead of six
Order placement was consolidated into a single unified endpoint. Instead of choosing between separate endpoints for market vs. limit orders and by-amount vs. by-units sizing, you send one request and specify what you want:POST /api/v2/trading/execution/orders— create any order type, on real or demoDELETE /api/v2/trading/execution/orders/{orderId}— cancel before executionGET /api/v2/trading/info/orders:lookup— order information and position details
Also in this release
- In-app notifications —
GET /api/v1/notifications/messagesandPATCHto mark all as read - Trading history —
GET /api/v1/trading/info/trade/demo/historylists historical trades
Docs
Rate limits documented
The rate limits guide explains the quotas that apply to each category of endpoint, how the rolling window works, and how to handle429 responses. Per-endpoint limits also now appear in the description of each operation in the API reference.The authentication guide gained a note clarifying the difference between real and demo environments.Agent Portfolios
Agent Portfolios let you carve out an isolated portfolio and issue scoped API tokens against it — the foundation for letting an AI agent or a third-party strategy trade on your behalf without handing over your whole account:GET/POST/DELETE /api/v1/agent-portfolios— list, create, and delete agent portfoliosPOST/PATCH/DELETE /api/v1/agent-portfolios/{agentPortfolioId}/user-tokens— issue, update, and revoke tokens for a portfolio
Docs
Portfolio calculation guides
Three guides explaining how to derive the numbers users expect to see, from the values the API returns:The available cash guide was also updated to clarify how available cash and equity relate.Accounts
Identify the authenticated user
GET /api/v1/me returns the profile of whoever owns the credentials making the request — a simple way to confirm which account a token belongs to before acting on it.Docs
Available cash guide
Calculate available cash explains how to determine how much a user can actually deploy, including how the USD balance factors in.Docs
eToro skill for AI agents
The eToro skill gives coding agents a packaged understanding of the API — endpoints, auth, and conventions — so they can write working eToro integrations without you pasting documentation into a prompt.Order information and position details
GET /api/v1/trading/info/real/orders/{orderId} and its demo counterpart return an order together with the position it produced, so you can confirm an execution without polling your whole portfolio.Comment on posts
POST /api/v1/reactions/{postId}/comment adds a comment to a post — the first write capability on the social side of the API.