# eToro API Docs ## Docs - [SKILL.md](https://api-portal.etoro.com/ai-agents/etoro-skill.md): Agent Skill for accessing the eToro API - [Create Agent Portfolio](https://api-portal.etoro.com/api-reference/agent-portfolios/create-agent-portfolio.md): [DEPRECATED — use POST /api/v2/agent-portfolios (scope names) instead] Creates a new agent-portfolio — a dedicated user account that receives its own fixed virtual balance (returned in agentPortfolioVirtualBalance). IMPORTANT: investmentAmountInUsd is the amount deducted from YOUR (the caller's) acc… - [Create Agent Portfolio (v2)](https://api-portal.etoro.com/api-reference/agent-portfolios/create-agent-portfolio-v2.md): Creates a new agent-portfolio using scope names. Scopes are specified by name (scopeNames); scope ids are not supported in v2. IMPORTANT: investmentAmountInUsd is the amount deducted from YOUR (the caller's) account balance to copy-trade this agent-portfolio — it is NOT the agent-portfolio's own bal… - [Create User Token](https://api-portal.etoro.com/api-reference/agent-portfolios/create-user-token.md): [DEPRECATED — use POST /api/v2/agent-portfolios/{agentPortfolioId}/user-tokens (scope names) instead] Creates a new user token for the specified agent-portfolio. - [Create User Token (v2)](https://api-portal.etoro.com/api-reference/agent-portfolios/create-user-token-v2.md): Creates a new user token for the specified agent-portfolio using scope names. Scopes are specified by name (scopeNames); scope ids are not supported in v2. - [Delete Agent Portfolio](https://api-portal.etoro.com/api-reference/agent-portfolios/delete-agent-portfolio.md): Permanently removes a agent-portfolio by revoking all user tokens, stopping the copy mirror, and deleting from storage. - [Delete User Token](https://api-portal.etoro.com/api-reference/agent-portfolios/delete-user-token.md): Permanently revokes the specified user token from a agent-portfolio. - [Get Agent Portfolios](https://api-portal.etoro.com/api-reference/agent-portfolios/get-agent-portfolios.md): Retrieves all agent-portfolios belonging to the authenticated user. - [Get Allowed Scopes (v2)](https://api-portal.etoro.com/api-reference/agent-portfolios/get-allowed-scopes-v2.md): Returns the permission scope names that may be assigned to agent-portfolio user tokens. - [Update User Token](https://api-portal.etoro.com/api-reference/agent-portfolios/update-user-token.md): [DEPRECATED — use PATCH /api/v2/agent-portfolios/{agentPortfolioId}/user-tokens/{userTokenId} (scope names) instead] Updates the settings of an existing user token for a agent-portfolio. At least one field must be provided. - [Update User Token (v2)](https://api-portal.etoro.com/api-reference/agent-portfolios/update-user-token-v2.md): Updates the settings of an existing user token using scope names. At least one field must be provided. Scopes are specified by name (scopeNames); scope ids are not supported in v2. - [Discover instruments](https://api-portal.etoro.com/api-reference/asset-explorer/discover-instruments.md): Retrieve a paginated list of instruments with optional sorting, field projection, and arbitrary field filters. Filters are applied by adding any of the supported field names as a query parameter (e.g. `exchangeName=NASDAQ`). Suffixing a field name with `Min` or `Max` applies a greater-than or less-t… - [Get an instrument by symbol](https://api-portal.etoro.com/api-reference/asset-explorer/get-an-instrument-by-symbol.md): Retrieve a single instrument by its trading symbol. Use the `fields` query parameter to project a subset of `Instrument` fields. - [Get an instrument by symbol using a field shortener](https://api-portal.etoro.com/api-reference/asset-explorer/get-an-instrument-by-symbol-using-a-field-shortener.md): Retrieve a single instrument by its trading symbol, restricted to the field set defined by the given shortener preset. The `fields` query parameter can further narrow the projection to a subset of the shortener's fields. - [Upload a media attachment](https://api-portal.etoro.com/api-reference/attachments/upload-a-media-attachment.md): Two-step media upload: clients first upload a file here to receive an Attachment object, then pass its url in a POST /feeds/post or POST /reactions/.../comment payload. Accepts multipart/form-data with a binary file field. Supported formats: JPEG and PNG. Maximum file size: 8 MB (8,388,608 bytes). T… - [Get aggregated balances](https://api-portal.etoro.com/api-reference/balances/get-aggregated-balances.md): Returns aggregated balances across all account types for the authenticated user. Optionally filter by account type or specify the display currency for totals. - [Get balance for a specific account](https://api-portal.etoro.com/api-reference/balances/get-balance-for-a-specific-account.md): Returns the balance for a specific account identified by type and account ID for the authenticated user. - [Get balances by account type](https://api-portal.etoro.com/api-reference/balances/get-balances-by-account-type.md): Returns balances for a specific account type for the authenticated user. Optionally filter by account IDs. - [Get historical balance snapshots](https://api-portal.etoro.com/api-reference/balances/get-historical-balance-snapshots.md): Returns end-of-day balance snapshots across all account types for the authenticated user. History is available for the last 12 months. The maximum date range per request is 365 days. - [Get historical balances by account type](https://api-portal.etoro.com/api-reference/balances/get-historical-balances-by-account-type.md): Returns end-of-day balance snapshots for a specific account type for the authenticated user. History is available for the last 12 months. The maximum date range per request is 365 days. - [Get historical balances for a specific account](https://api-portal.etoro.com/api-reference/balances/get-historical-balances-for-a-specific-account.md): Returns end-of-day balance snapshots for a specific account identified by type and account ID for the authenticated user. History is available for the last 12 months. The maximum date range per request is 365 days. - [Create a cash account](https://api-portal.etoro.com/api-reference/cash-accounts/create-a-cash-account.md): Initiates the creation of a cash account. The user must be eligible (IbanEligible or CardAndIbanEligible). Returns 202 Accepted with a requestReferenceId for polling status. - [Get cash account by id](https://api-portal.etoro.com/api-reference/cash-accounts/get-cash-account-by-id.md): Returns a single cash account. The response body is identical in shape to one element of `accounts` from GET /api/v1/money/accounts/cash (CashAccount). Path accountId must match CashAccount.id for that element. - [Get cash account creation eligibility](https://api-portal.etoro.com/api-reference/cash-accounts/get-cash-account-creation-eligibility.md): Returns the user's eligibility to create a cash account, along with prerequisites (T&C), contact info, and basic user info needed for account creation. - [Get cash account creation status](https://api-portal.etoro.com/api-reference/cash-accounts/get-cash-account-creation-status.md): Polls the creation status of a previously submitted cash account creation request. Returns the account details when status is Success. - [Get user cash accounts](https://api-portal.etoro.com/api-reference/cash-accounts/get-user-cash-accounts.md): Returns the eligibility of a user to create a cash account, and lists the existing cash accounts including the related bank account details and the cards related to each account. The user is identified from the OAuth token. - [List cash account transactions (paginated)](https://api-portal.etoro.com/api-reference/cash-accounts/list-cash-account-transactions-paginated.md): Returns a cursor-paginated list of transactions for the given cash account. Use pageSize and pageToken for pagination; nextPageToken is null when there is no next page. - [Get club dashboard data](https://api-portal.etoro.com/api-reference/clubs/get-club-dashboard-data.md): Retrieves club dashboard data for the authenticated user, including tier information, benefits, account manager details, offers, downgrade risk, and webinars. - [Create a comment on a post](https://api-portal.etoro.com/api-reference/comments-and-replies/create-a-comment-on-a-post.md): Creates a new comment on a specific discussion post. Comments can include text, mentions, tags, and attachments. - [Create a reply](https://api-portal.etoro.com/api-reference/comments-and-replies/create-a-reply.md): Creates a reply nested under an existing comment. Replies are 1-level deep — replying to a reply attaches to the same parent comment with an inline @mention to the reply author. Increments parent comment's repliesCount and the post's totalCommentsAndReplies. - [List comments on a post](https://api-portal.etoro.com/api-reference/comments-and-replies/list-comments-on-a-post.md): Returns a paginated list of top-level comments on a post. Soft-deleted comments are included with isDeleted=true and blanked content so reply trees remain navigable. Authentication is optional — unauthenticated requests omit requesterContext. - [List replies on a comment](https://api-portal.etoro.com/api-reference/comments-and-replies/list-replies-on-a-comment.md): Returns a paginated list of replies nested under a specific comment. Authentication is optional. - [Soft-delete a comment](https://api-portal.etoro.com/api-reference/comments-and-replies/soft-delete-a-comment.md): Soft-deletes the authenticated user's own comment. Sets isDeleted=true and blanks message text and attachments. Replies are preserved and the parent post's totalCommentsAndReplies is decremented only by the deleted node. - [Soft-delete a reply](https://api-portal.etoro.com/api-reference/comments-and-replies/soft-delete-a-reply.md): Soft-deletes the authenticated user's own reply. - [Update a comment](https://api-portal.etoro.com/api-reference/comments-and-replies/update-a-comment.md): Edits the authenticated user's own comment in-place. Sets editStatus to Edited. Emotion counts, repliesCount, and created are preserved. Owner is derived from the auth token. - [Update a reply](https://api-portal.etoro.com/api-reference/comments-and-replies/update-a-reply.md): Edits the authenticated user's own reply in-place. Same semantics as updating a comment. - [Create a comment on a post](https://api-portal.etoro.com/api-reference/comments/create-a-comment-on-a-post.md): Creates a new comment on a specific discussion post. Comments can include text, mentions, tags, and attachments. - [Cancels a Market-if-touched order that has not yet been executed.](https://api-portal.etoro.com/api-reference/deprecated/cancels-a-market-if-touched-order-that-has-not-yet-been-executed.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Cancels a Market-if-touched order that has not yet been executed.](https://api-portal.etoro.com/api-reference/deprecated/cancels-a-market-if-touched-order-that-has-not-yet-been-executed-1.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Cancels a market order for open before it is executed.](https://api-portal.etoro.com/api-reference/deprecated/cancels-a-market-order-for-open-before-it-is-executed.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Cancels a market order for open before it is executed.](https://api-portal.etoro.com/api-reference/deprecated/cancels-a-market-order-for-open-before-it-is-executed-1.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Check trading permissions, limits, and available leverage for one or more instruments](https://api-portal.etoro.com/api-reference/deprecated/check-trading-permissions-limits-and-available-leverage-for-one-or-more-instruments.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Check trading permissions, limits, and available leverage for one or more instruments](https://api-portal.etoro.com/api-reference/deprecated/check-trading-permissions-limits-and-available-leverage-for-one-or-more-instruments-1.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Create a market order to open a position by specifying the amount of cash you would like to use in the trade.](https://api-portal.etoro.com/api-reference/deprecated/create-a-market-order-to-open-a-position-by-specifying-the-amount-of-cash-you-would-like-to-use-in-the-trade.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Create a market order to open a position by specifying the amount of cash you would like to use in the trade.](https://api-portal.etoro.com/api-reference/deprecated/create-a-market-order-to-open-a-position-by-specifying-the-amount-of-cash-you-would-like-to-use-in-the-trade-1.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Get Order Information and Position Details for Demo Account](https://api-portal.etoro.com/api-reference/deprecated/get-order-information-and-position-details-for-demo-account.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Get Order Information and Position Details for Real Account](https://api-portal.etoro.com/api-reference/deprecated/get-order-information-and-position-details-for-real-account.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Places a Market-if-touched order (similar to Limit order) to open a position when a threshold price is reached.](https://api-portal.etoro.com/api-reference/deprecated/places-a-market-if-touched-order-similar-to-limit-order-to-open-a-position-when-a-threshold-price-is-reached.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Places a Market-if-touched order (similar to Limit order) to open a position when a threshold price is reached.](https://api-portal.etoro.com/api-reference/deprecated/places-a-market-if-touched-order-similar-to-limit-order-to-open-a-position-when-a-threshold-price-is-reached-1.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Places a Market Order to open a position by specifying the number of units you would like to trade.](https://api-portal.etoro.com/api-reference/deprecated/places-a-market-order-to-open-a-position-by-specifying-the-number-of-units-you-would-like-to-trade.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Places a Market Order to open a position by specifying the number of units you would like to trade.](https://api-portal.etoro.com/api-reference/deprecated/places-a-market-order-to-open-a-position-by-specifying-the-number-of-units-you-would-like-to-trade-1.md): Deprecated: This endpoint is no longer present in the current eToro Public API Swagger. Prefer the current replacement endpoints where available. - [Create a new discussion post](https://api-portal.etoro.com/api-reference/feeds/create-a-new-discussion-post.md): Creates a new discussion post in the feed system. This endpoint allows users to create posts that can be associated with instruments, users, or general discussions. - [Get following feed](https://api-portal.etoro.com/api-reference/feeds/get-following-feed.md): Returns a chronological feed of posts from users the authenticated user follows. Requires authentication. - [Get instrument feed posts](https://api-portal.etoro.com/api-reference/feeds/get-instrument-feed-posts.md): Retrieves feed posts associated with a specific financial instrument. The feed includes discussions, analyses, and other content related to the instrument. - [Get instrument feed posts](https://api-portal.etoro.com/api-reference/feeds/get-instrument-feed-posts-1.md): Retrieves feed posts associated with a specific financial instrument. The feed includes discussions, analyses, and other content related to the instrument. - [Get news feed](https://api-portal.etoro.com/api-reference/feeds/get-news-feed.md): Returns a ranked news feed for the authenticated user. Ranking method is resolved via A/B experiment and a configurable default. - [Get personalised For You feed](https://api-portal.etoro.com/api-reference/feeds/get-personalised-for-you-feed.md): Returns a personalised feed for the authenticated user ranked by followed users, followed instruments, prior engagement, and freshness. Ranking method is resolved via A/B experiment (Optimizely) and per-user overrides. Requires authentication — this feed is intrinsically personal. - [Get saved feed](https://api-portal.etoro.com/api-reference/feeds/get-saved-feed.md): Returns a list of posts the authenticated user has bookmarked. Only the requesting user can see their own saved feed. Requires authentication. - [Get user feed posts](https://api-portal.etoro.com/api-reference/feeds/get-user-feed-posts.md): Retrieves feed posts associated with a specific user. The feed includes the user's discussions, analyses, and other content they have posted. - [Get user feed posts](https://api-portal.etoro.com/api-reference/feeds/get-user-feed-posts-1.md): Retrieves feed posts associated with a specific user. The feed includes the user's discussions, analyses, and other content they have posted. - [Get user pinned feed posts](https://api-portal.etoro.com/api-reference/feeds/get-user-pinned-feed-posts.md): Retrieves the posts that the specified user has pinned to the top of their profile feed. The pinned feed surfaces highlighted content the user has explicitly chosen to feature, ordered by pin time. - [Get authenticated user profile](https://api-portal.etoro.com/api-reference/identity/get-authenticated-user-profile.md): Returns the profile of the currently authenticated user, including account identifiers (GCID, real and demo CIDs), profile fields from Scope Data API (username, name, player level, gender, language, date of birth, LEI), and the OAuth scopes granted to the current access token. - [Like a comment](https://api-portal.etoro.com/api-reference/likes/like-a-comment.md): Toggles a Like emotion on the specified comment for the authenticated user. emotionType defaults to Like (the only supported emotion type). The call is idempotent — liking an already-liked entity succeeds silently. - [Like a post](https://api-portal.etoro.com/api-reference/likes/like-a-post.md): Toggles a Like emotion on the specified post for the authenticated user. emotionType defaults to Like (the only supported emotion type). The call is idempotent — liking an already-liked entity succeeds silently. - [Like a reply](https://api-portal.etoro.com/api-reference/likes/like-a-reply.md): Toggles a Like emotion on the specified reply for the authenticated user. emotionType defaults to Like (the only supported emotion type). The call is idempotent — liking an already-liked entity succeeds silently. - [Unlike a comment](https://api-portal.etoro.com/api-reference/likes/unlike-a-comment.md): Removes the authenticated user's Like from the specified comment. emotionType defaults to Like (the only supported emotion type). The call is idempotent — unliking an entity with no active like succeeds silently. - [Unlike a post](https://api-portal.etoro.com/api-reference/likes/unlike-a-post.md): Removes the authenticated user's Like from the specified post. emotionType defaults to Like (the only supported emotion type). The call is idempotent — unliking an entity with no active like succeeds silently. - [Unlike a reply](https://api-portal.etoro.com/api-reference/likes/unlike-a-reply.md): Removes the authenticated user's Like from the specified reply. emotionType defaults to Like (the only supported emotion type). The call is idempotent — unliking an entity with no active like succeeds silently. - [Fetch available instrument types (asset classes) such as stocks, ETFs, commodities, etc.](https://api-portal.etoro.com/api-reference/market-data/fetch-available-instrument-types-asset-classes-such-as-stocks-etfs-commodities-etc.md) - [Get historical candles data for an instrument](https://api-portal.etoro.com/api-reference/market-data/get-historical-candles-data-for-an-instrument.md): Retrieves historical price data in OHLCV (Open, High, Low, Close, Volume) format for a specified instrument. The data is organized into time-based candles of various intervals, from one minute to one week. - [Get historical closing prices for all instruments](https://api-portal.etoro.com/api-reference/market-data/get-historical-closing-prices-for-all-instruments.md) - [Gets data on available stocks industries](https://api-portal.etoro.com/api-reference/market-data/gets-data-on-available-stocks-industries.md) - [Retrieve current market rates and pricing information for specified instruments](https://api-portal.etoro.com/api-reference/market-data/retrieve-current-market-rates-and-pricing-information-for-specified-instruments.md): Provides real-time market data including bid/ask prices, conversion rates, and execution prices for specified financial instruments. Essential for price discovery and trade execution decisions. - [Retrieves a list of exchanges supported by the platform along with basic descriptive data.](https://api-portal.etoro.com/api-reference/market-data/retrieves-a-list-of-exchanges-supported-by-the-platform-along-with-basic-descriptive-data.md) - [Retrieves metadata for specified instruments, including display names, exchange IDs, and classification.](https://api-portal.etoro.com/api-reference/market-data/retrieves-metadata-for-specified-instruments-including-display-names-exchange-ids-and-classification.md) - [Search for Instruments](https://api-portal.etoro.com/api-reference/market-data/search-for-instruments.md): Retrieve a list of instruments based on various search criteria. Each field in the response can be utilized as a filter or projection. - [Get in-app notifications](https://api-portal.etoro.com/api-reference/notifications/get-in-app-notifications.md): Retrieves all in-app notifications for the authenticated user. Rate limit: 1 request per second. - [Mark all notifications as read](https://api-portal.etoro.com/api-reference/notifications/mark-all-notifications-as-read.md): Marks all notifications as read for the authenticated user. Rate limit: 20 requests per minute. - [Get copiers public info](https://api-portal.etoro.com/api-reference/pi-data/get-copiers-public-info.md) - [Create a new discussion post](https://api-portal.etoro.com/api-reference/posts/create-a-new-discussion-post.md): Creates a new discussion post in the feed system. This endpoint allows users to create posts that can be associated with instruments, users, or general discussions. - [Create a poll post](https://api-portal.etoro.com/api-reference/posts/create-a-poll-post.md): Creates a new poll post. The poll must include a title and at least 2 options. Once created the poll is immutable — options and title cannot be changed. The post itself can still be deleted. - [Follow a post](https://api-portal.etoro.com/api-reference/posts/follow-a-post.md): Subscribes the authenticated user to push notifications when the post receives new comments or replies. Drives requesterContext.isFollowing on subsequent reads. Idempotent — following an already-followed post succeeds silently. This endpoint takes no request body. - [Get a single post by ID](https://api-portal.etoro.com/api-reference/posts/get-a-single-post-by-id.md): Retrieves a single discussion post by its ID, including comments preview, emotions data, and requester context. Authentication is optional — unauthenticated requests receive the post without personalised requester context. - [List shares of a post](https://api-portal.etoro.com/api-reference/posts/list-shares-of-a-post.md): Returns a paginated list of shares of the specified post, including both plain reshares and quote shares. Authentication is optional. - [Pin a post to the user's profile](https://api-portal.etoro.com/api-reference/posts/pin-a-post-to-the-users-profile.md): Pins the specified post to the authenticated user's profile so it appears at the top of their feed. Users can pin only their own posts. The call is idempotent — pinning an already-pinned post succeeds silently. - [Remove a vote from a poll option](https://api-portal.etoro.com/api-reference/posts/remove-a-vote-from-a-poll-option.md): Removes the authenticated user's vote from a specific poll option. - [Save a post](https://api-portal.etoro.com/api-reference/posts/save-a-post.md): Bookmarks a post for the authenticated user. Idempotent — saving an already-saved post succeeds silently. The save is private and visible only to the saving user. This endpoint takes no request body. - [Share a post](https://api-portal.etoro.com/api-reference/posts/share-a-post.md): Creates a share post that references an existing post. Two variants are supported: - [Soft-delete a post](https://api-portal.etoro.com/api-reference/posts/soft-delete-a-post.md): Soft-deletes the authenticated user's own post. Sets isDeleted=true and blanks message text and attachments. Child comments and like/comment counters are preserved. The post is removed from all feed listings. - [Unfollow a post](https://api-portal.etoro.com/api-reference/posts/unfollow-a-post.md): Unsubscribes the authenticated user from notifications on this post. Idempotent — unfollowing a post that was never followed succeeds silently. - [Unpin a post from the user's profile](https://api-portal.etoro.com/api-reference/posts/unpin-a-post-from-the-users-profile.md): Removes the authenticated user's pin from the specified post. The call is idempotent — unpinning a post that is not currently pinned succeeds silently. - [Unsave a post](https://api-portal.etoro.com/api-reference/posts/unsave-a-post.md): Removes a post from the authenticated user's saved bookmarks. Idempotent — unsaving a post that was never saved succeeds silently. - [Update an existing post](https://api-portal.etoro.com/api-reference/posts/update-an-existing-post.md): Updates the authenticated user's own post in-place. The owner field is derived from the authentication token and must not be supplied in the request body. Editable fields: message, tags, mentions, attachments. - [Vote on a poll option](https://api-portal.etoro.com/api-reference/posts/vote-on-a-poll-option.md): Casts the authenticated user's vote on a specific poll option. Each user can vote only once per poll. Poll owners cannot vote on their own poll. - [Create a price alert](https://api-portal.etoro.com/api-reference/price-alerts/create-a-price-alert.md): Creates a new price alert for the authenticated user. The alert will fire when the market bid price reaches the target price. Provide a symbol to identify the instrument. - [Delete a price alert](https://api-portal.etoro.com/api-reference/price-alerts/delete-a-price-alert.md): Permanently deletes a price alert owned by the authenticated user. - [Get price alerts](https://api-portal.etoro.com/api-reference/price-alerts/get-price-alerts.md): Returns all active price alerts for the authenticated user. - [Update a price alert](https://api-portal.etoro.com/api-reference/price-alerts/update-a-price-alert.md): Updates the target price of an existing price alert. - [Cancels a pending market order for close for the specified order ID.](https://api-portal.etoro.com/api-reference/trading-demo/cancels-a-pending-market-order-for-close-for-the-specified-order-id.md): This endpoint allows traders to cancel a previously placed market order for close before execution. If the order has already been processed, cancellation will not be possible. - [Cancels an order before it is executed](https://api-portal.etoro.com/api-reference/trading-demo/cancels-an-order-before-it-is-executed.md): This endpoint allows traders to cancel an order before execution. If the order has already been processed, cancellation will not be possible. This operation is idempotent when the order is already closed or cancelled. - [Check trading permissions, limits, and available leverage for one or more instruments](https://api-portal.etoro.com/api-reference/trading-demo/check-trading-permissions-limits-and-available-leverage-for-one-or-more-instruments.md): Returns per-instrument trading configuration for the authenticated account - position limits, permitted order types, stop-loss and take-profit boundaries, and available leverage by settlement type and direction. Instruments not found are listed in notFoundInstrumentIds and notFoundSymbols. At least… - [Create an order](https://api-portal.etoro.com/api-reference/trading-demo/create-an-order.md): This endpoint allows traders to place an order. Leverage, stop-loss, and take-profit settings can be applied. Order size must use exactly one of amount, units, or contracts. A unique X-Request-Id header (GUID) is required for idempotency. Currently only orders to open a position are supported. - [Creates a market order to close a position or partially close it by specifying the number of units to deduct.](https://api-portal.etoro.com/api-reference/trading-demo/creates-a-market-order-to-close-a-position-or-partially-close-it-by-specifying-the-number-of-units-to-deduct.md): This endpoint allows traders to close an entire position or a portion of it at the current market rate. If `UnitsToDeduct` is provided, only the specified portion will be closed. If `UnitsToDeduct` is omitted or set to null, the full position will be closed. - [Get a what-if cost breakdown for opening or closing a position](https://api-portal.etoro.com/api-reference/trading-demo/get-a-what-if-cost-breakdown-for-opening-or-closing-a-position.md): Returns the markup, market spread, transaction fee, overnight fee, over-weekend fee, and SDRT that would apply if the supplied order were executed now against the demo account. For `action: open`, exactly one of `symbol` or `instrumentId` must be provided and `leverage` must be at least 1. For `acti… - [Get demo account aggregated portfolio snapshot — account totals, positions aggregated by instrument, and copy trading](https://api-portal.etoro.com/api-reference/trading-demo/get-demo-account-aggregated-portfolio-snapshot-—-account-totals-positions-aggregated-by-instrument-and-copy-trading.md): Returns a complete snapshot of the authenticated user's demo account investment portfolio, organized by asset. The response includes account-level balances and equity, individually held positions grouped by asset, and any copy-trading relationships the user has active. Use the instrumentIds filter t… - [Get Demo Account PnL and Portfolio Details](https://api-portal.etoro.com/api-reference/trading-demo/get-demo-account-pnl-and-portfolio-details.md): Retrieves the demo account's current portfolio, including credit, open positions, orders, mirrors, and PnL details. - [Get Order Information and Position Details for Demo Account](https://api-portal.etoro.com/api-reference/trading-demo/get-order-information-and-position-details-for-demo-account.md): Retrieves comprehensive information about a specific order, including the order status, execution details, and all positions that were opened or closed from this order. This endpoint is essential for tracking order execution and identifying which positions were created as a result of a specific orde… - [List trading history](https://api-portal.etoro.com/api-reference/trading-demo/list-trading-history.md) - [Retrieve comprehensive portfolio information including positions, orders, and account status](https://api-portal.etoro.com/api-reference/trading-demo/retrieve-comprehensive-portfolio-information-including-positions-orders-and-account-status.md): Returns detailed portfolio information including active positions, pending orders, mirror trading details, and account balances. This endpoint provides a complete overview of the user's trading activity and current market exposure. - [Cancels a pending market order for close for the specified order ID.](https://api-portal.etoro.com/api-reference/trading-real/cancels-a-pending-market-order-for-close-for-the-specified-order-id.md): This endpoint allows traders to cancel a previously placed market order for close before execution. If the order has already been processed, cancellation will not be possible. - [Cancels an order before it is executed](https://api-portal.etoro.com/api-reference/trading-real/cancels-an-order-before-it-is-executed.md): This endpoint allows traders to cancel an order before execution. If the order has already been processed, cancellation will not be possible. This operation is idempotent when the order is already closed or cancelled. - [Check trading permissions, limits, and available leverage for one or more instruments](https://api-portal.etoro.com/api-reference/trading-real/check-trading-permissions-limits-and-available-leverage-for-one-or-more-instruments.md): Returns per-instrument trading configuration for the authenticated account - position limits, permitted order types, stop-loss and take-profit boundaries, and available leverage by settlement type and direction. Instruments not found are listed in notFoundInstrumentIds and notFoundSymbols. At least… - [Create an order](https://api-portal.etoro.com/api-reference/trading-real/create-an-order.md): This endpoint allows traders to place an order. Leverage, stop-loss, and take-profit settings can be applied. Order size must use exactly one of amount, units, or contracts. A unique X-Request-Id header (GUID) is required for idempotency. Currently only orders to open a position are supported. - [Creates a market order to close a position or partially close it by specifying the number of units to deduct.](https://api-portal.etoro.com/api-reference/trading-real/creates-a-market-order-to-close-a-position-or-partially-close-it-by-specifying-the-number-of-units-to-deduct.md): This endpoint allows traders to close an entire position or a portion of it at the current market rate. If `UnitsToDeduct` is provided, only the specified portion will be closed. If `UnitsToDeduct` is omitted or set to null, the full position will be closed. - [Get a what-if cost breakdown for opening or closing a position](https://api-portal.etoro.com/api-reference/trading-real/get-a-what-if-cost-breakdown-for-opening-or-closing-a-position.md): Returns the markup, market spread, transaction fee, overnight fee, over-weekend fee, and SDRT that would apply if the supplied order were executed now. For `action: open`, exactly one of `symbol` or `instrumentId` must be provided and `leverage` must be at least 1. For `action: close`, `positionIds`… - [Get aggregated portfolio snapshot — account totals, positions aggregated by instrument, and copy trading](https://api-portal.etoro.com/api-reference/trading-real/get-aggregated-portfolio-snapshot-—-account-totals-positions-aggregated-by-instrument-and-copy-trading.md): Returns a complete snapshot of the authenticated user's investment portfolio, organized by asset. The response includes account-level balances and equity, individually held positions grouped by asset, and any copy-trading relationships the user has active. Use the instrumentIds filter to scope resul… - [Get Order Information and Position Details for Real Account](https://api-portal.etoro.com/api-reference/trading-real/get-order-information-and-position-details-for-real-account.md): Retrieves comprehensive information about a specific order, including the order status, execution details, and all positions that were opened or closed from this order. This endpoint is essential for tracking order execution and identifying which positions were created as a result of a specific orde… - [Get Real Account PnL and Portfolio Details](https://api-portal.etoro.com/api-reference/trading-real/get-real-account-pnl-and-portfolio-details.md): Retrieves the real account's current portfolio, including credit, open positions, orders, mirrors, and PnL details. - [List trading history](https://api-portal.etoro.com/api-reference/trading-real/list-trading-history.md) - [Retrieve comprehensive portfolio information including positions, orders, and account status](https://api-portal.etoro.com/api-reference/trading-real/retrieve-comprehensive-portfolio-information-including-positions-orders-and-account-status.md): Returns detailed portfolio information including active positions, pending orders, mirror trading details, and account balances. This endpoint provides a complete overview of the user's trading activity and current market exposure. - [Comprehensive search and analytics engine for user discovery and analysis](https://api-portal.etoro.com/api-reference/users-info/comprehensive-search-and-analytics-engine-for-user-discovery-and-analysis.md): Powerful search platform that enables advanced user discovery with comprehensive filtering capabilities. Supports complex queries across multiple dimensions including performance metrics, risk profiles, investment patterns, and account characteristics. Ideal for identifying users based on specific t… - [Get the live portfolio of a user](https://api-portal.etoro.com/api-reference/users-info/get-the-live-portfolio-of-a-user.md) - [Get trade info for a specific user](https://api-portal.etoro.com/api-reference/users-info/get-trade-info-for-a-specific-user.md) - [Retrieve comprehensive user profile data and aggregated account information](https://api-portal.etoro.com/api-reference/users-info/retrieve-comprehensive-user-profile-data-and-aggregated-account-information.md): Returns detailed user profile information including account status, verification levels, biographical data, and associated metadata. This endpoint aggregates essential user information from multiple sources to provide a complete user profile overview. - [Retrieve detailed historical performance metrics and analytics for a specified user](https://api-portal.etoro.com/api-reference/users-info/retrieve-detailed-historical-performance-metrics-and-analytics-for-a-specified-user.md): Returns comprehensive historical monthly and yearly performance data including gain percentages, risk-adjusted returns, and detailed trading statistics. This endpoint provides both aggregated and time-series performance metrics. - [Retrieve granular performance data for specific time periods](https://api-portal.etoro.com/api-reference/users-info/retrieve-granular-performance-data-for-specific-time-periods.md): Provides detailed performance analytics including daily gains, cumulative returns, and period-specific metrics within a specified date range. Supports various time-based analyses and performance reporting requirements. - [Get asset allocation history](https://api-portal.etoro.com/api-reference/users-stats/get-asset-allocation-history.md): Returns a daily asset-allocation breakdown for a publicly visible portfolio. Data is only available for investors who have not opted out — opted-out portfolios return 403 for third-party callers. Callers must authenticate with their own token. Use period OR minDate+maxDate (mutually exclusive). All… - [Get current copier count and AUM tier for a public portfolio](https://api-portal.etoro.com/api-reference/users-stats/get-current-copier-count-and-aum-tier-for-a-public-portfolio.md): Returns the investor's live copier count and assets-under-management tier for a public username. Requires `etoro-public:user-info:read`. - [Get investor gain time-series](https://api-portal.etoro.com/api-reference/users-stats/get-investor-gain-time-series.md): Returns a gain time-series scoped by date range, count, or a combination of one date and a count. Gain values are decimal fractions: 0.06 = 6%, -0.03 = -3%. - [Get market exposure history](https://api-portal.etoro.com/api-reference/users-stats/get-market-exposure-history.md): Returns daily directional exposure breakdown per instrument for a publicly visible portfolio. Data is only available for investors who have not opted out - opted-out portfolios return 403 for third-party callers. Callers must authenticate with their own token. Use period OR minDate+maxDate (mutually… - [Add items to watchlist](https://api-portal.etoro.com/api-reference/watchlists/add-items-to-watchlist.md): Adds new items to an existing watchlist. - [Change watchlist rank](https://api-portal.etoro.com/api-reference/watchlists/change-watchlist-rank.md): Updates the display rank of a watchlist. - [Create a new watchlist](https://api-portal.etoro.com/api-reference/watchlists/create-a-new-watchlist.md): Creates a new watchlist for the authenticated user with the specified name and type. - [Create default watchlist with selected items](https://api-portal.etoro.com/api-reference/watchlists/create-default-watchlist-with-selected-items.md): Creates a default watchlist populated with the specified items. - [Create watchlist and set as default](https://api-portal.etoro.com/api-reference/watchlists/create-watchlist-and-set-as-default.md): Creates a new watchlist and immediately sets it as the user's default watchlist. - [Delete watchlist](https://api-portal.etoro.com/api-reference/watchlists/delete-watchlist.md): Removes a watchlist and all its items. - [Get curated lists](https://api-portal.etoro.com/api-reference/watchlists/get-curated-lists.md): Retrieves curated investment lists available to the authenticated user. - [Get default watchlist items](https://api-portal.etoro.com/api-reference/watchlists/get-default-watchlist-items.md): Retrieves items from user's default watchlists with optional pagination. - [Get market recommendations](https://api-portal.etoro.com/api-reference/watchlists/get-market-recommendations.md): Retrieves personalized market recommendations for the authenticated user. - [Get single public watchlist](https://api-portal.etoro.com/api-reference/watchlists/get-single-public-watchlist.md): Retrieves a specific public watchlist from a user. - [Get single watchlist](https://api-portal.etoro.com/api-reference/watchlists/get-single-watchlist.md): Retrieves a specific watchlist with its items using pagination. - [Get user watchlists](https://api-portal.etoro.com/api-reference/watchlists/get-user-watchlists.md): Retrieves all watchlists for the authenticated user with optional pagination and built-in watchlist management. - [Get user's public watchlists](https://api-portal.etoro.com/api-reference/watchlists/get-users-public-watchlists.md): Retrieves all public watchlists for a specific user. - [Remove items from watchlist](https://api-portal.etoro.com/api-reference/watchlists/remove-items-from-watchlist.md): Removes specified items from a watchlist. - [Rename watchlist](https://api-portal.etoro.com/api-reference/watchlists/rename-watchlist.md): Updates the name of an existing watchlist. - [Set a specific watchlist as user's default](https://api-portal.etoro.com/api-reference/watchlists/set-a-specific-watchlist-as-users-default.md): Sets the specified watchlist as the user's default watchlist. - [Update items in watchlist](https://api-portal.etoro.com/api-reference/watchlists/update-items-in-watchlist.md): Updates existing items in a watchlist (rank, etc.). - [Authentication](https://api-portal.etoro.com/api-reference/websocket/authentication.md): Authentication of the eToro WebSocket API - [Example code](https://api-portal.etoro.com/api-reference/websocket/example-code.md): Example code for the eToro WebSocket API - [Overview](https://api-portal.etoro.com/api-reference/websocket/overview.md): Overview of the eToro WebSocket API - [Topics](https://api-portal.etoro.com/api-reference/websocket/topics.md): Topics for the eToro WebSocket API - [Authentication](https://api-portal.etoro.com/getting-started/authentication.md): How to authenticate to the eToro API - [Rate Limits](https://api-portal.etoro.com/getting-started/rate-limits.md): Understand the rate limits applied to the eToro Public API to ensure smooth and reliable integration. - [Calculate Available Cash](https://api-portal.etoro.com/guides/calculate-available-cash.md): Learn how to calculate your available cash balance in demo or real accounts. - [Calculate Equity](https://api-portal.etoro.com/guides/calculate-equity.md): Learn how to calculate your equity in demo or real accounts. - [Calculate Profit/Loss](https://api-portal.etoro.com/guides/calculate-profit-loss.md): Learn how to calculate your profit/loss (unrealized PnL) in demo or real accounts. - [Calculate Total Invested](https://api-portal.etoro.com/guides/calculate-total-invested.md): Learn how to calculate your total invested amount in demo or real accounts. - [Find Instrument ID](https://api-portal.etoro.com/guides/get-instrument-id.md): Learn how to resolve a ticker symbol to an eToro Instrument ID. - [Open and close market orders](https://api-portal.etoro.com/guides/market-orders.md): Learn how to programmatically execute trades to enter and exit positions using the eToro API. - [Manage your Watchlists](https://api-portal.etoro.com/guides/watchlists.md): Learn how to create custom watchlists, populate them with assets, and sync your preferences across the eToro ecosystem. - [Introduction](https://api-portal.etoro.com/index.md): Welcome to the eToro Developer Portal - [Antigravity](https://api-portal.etoro.com/vibe-code/antigravity.md): Integrate eToro API documentation into Antigravity IDE - [Base44](https://api-portal.etoro.com/vibe-code/base44.md): Create custom eToro apps using Base44's no-code platform - [Claude Code](https://api-portal.etoro.com/vibe-code/claude-code.md): Integrate eToro API documentation into Claude Code using MCP - [Cursor](https://api-portal.etoro.com/vibe-code/cursor.md): Integrate eToro API documentation into Cursor using MCP - [Windsurf](https://api-portal.etoro.com/vibe-code/windsurf.md): Integrate eToro API documentation into Windsurf IDE ## OpenAPI Specs - [openapi](https://api-portal.etoro.com/api-reference/openapi.json) - [deprecated-openapi](https://api-portal.etoro.com/api-reference/deprecated-openapi.json)