eToro · Schema
CreateAgentPortfolioV2Request
Social TradingCopy TradingInvestingMarket DataPortfolio ManagementFintechTradingStocksCryptocurrencyETFs
Properties
| Name | Type | Description |
|---|---|---|
| investmentAmountInUsd | number | The amount in USD deducted from the CALLER's account balance to copy-trade this agent-portfolio. This is NOT the agent-portfolio's own balance — the agent-portfolio receives a separate fixed virtual b |
| agentPortfolioName | string | A unique display name for the agent-portfolio (6-10 characters). |
| agentPortfolioDescription | string | An optional description of the agent-portfolio's purpose or strategy. |
| userTokenName | string | A human-readable name for the user token provisioned with the agent-portfolio. |
| scopeNames | array | The set of permission scope names to grant to the provisioned user token. Available scopes: etoro-public:trade.real:read, etoro-public:trade.real:write, etoro-public:trade.demo:read, etoro-public:trad |
| ipsWhitelist | array | An optional set of IPv4 addresses allowed to use the provisioned user token. |
| expiresAt | string | An optional expiration date and time (UTC) for the provisioned user token. |
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://raw.githubusercontent.com/api-evangelist/etoro/refs/heads/main/json-schema/CreateAgentPortfolioV2Request.json",
"title": "CreateAgentPortfolioV2Request",
"type": "object",
"properties": {
"investmentAmountInUsd": {
"type": "number",
"description": "The amount in USD deducted from the CALLER's account balance to copy-trade this agent-portfolio. This is NOT the agent-portfolio's own balance \u2014 the agent-portfolio receives a separate fixed virtual balance (returned as agentPortfolioVirtualBalance). Positions are mirrored proportionally: e.g. $2,000 with a $10,000 virtual balance = 20% position sizing.",
"example": 2000
},
"agentPortfolioName": {
"type": "string",
"description": "A unique display name for the agent-portfolio (6-10 characters).",
"example": "MyPort1"
},
"agentPortfolioDescription": {
"type": "string",
"description": "An optional description of the agent-portfolio's purpose or strategy.",
"example": "My trading portfolio"
},
"userTokenName": {
"type": "string",
"description": "A human-readable name for the user token provisioned with the agent-portfolio.",
"example": "my-trading-token"
},
"scopeNames": {
"type": "array",
"items": {
"type": "string"
},
"description": "The set of permission scope names to grant to the provisioned user token. Available scopes: etoro-public:trade.real:read, etoro-public:trade.real:write, etoro-public:trade.demo:read, etoro-public:trade.demo:write.",
"example": [
"etoro-public:trade.real:read",
"etoro-public:trade.real:write"
]
},
"ipsWhitelist": {
"type": "array",
"items": {
"type": "string"
},
"description": "An optional set of IPv4 addresses allowed to use the provisioned user token.",
"example": [
"192.168.1.1"
]
},
"expiresAt": {
"type": "string",
"format": "date-time",
"description": "An optional expiration date and time (UTC) for the provisioned user token.",
"example": "2026-12-31T23:59:59Z"
}
},
"required": [
"investmentAmountInUsd",
"agentPortfolioName",
"userTokenName",
"scopeNames"
]
}