eToro · Schema

AgentPortfolioUserTokenItem

Social TradingCopy TradingInvestingMarket DataPortfolio ManagementFintechTradingStocksCryptocurrencyETFs

Properties

Name Type Description
userTokenId string The unique identifier of the user token.
userTokenName string The user-defined name for the user token.
clientId string The OAuth client identifier associated with the user token.
externalApplicationName string The name of the external application registered for this token.
ipsWhitelist array The set of whitelisted IP addresses authorized to use this token.
expiresAt string The expiration date and time of the user token in UTC.
scopeIds array [DEPRECATED — use scopeNames instead] The set of permission scope identifiers granted to this token. Available scopes: 200 = etoro-public:real:read, 201 = etoro-public:demo:read, 202 = etoro-public:re
scopeNames array The set of permission scope names (preferred; replaces the deprecated scopeIds). Provide either scopeNames or scopeIds. Available scopes: etoro-public:real:read, etoro-public:demo:read, etoro-public:r
createdAt string When this user token was created.
View JSON Schema on GitHub

JSON Schema

AgentPortfolioUserTokenItem.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/etoro/refs/heads/main/json-schema/AgentPortfolioUserTokenItem.json",
  "title": "AgentPortfolioUserTokenItem",
  "type": "object",
  "properties": {
    "userTokenId": {
      "type": "string",
      "format": "uuid",
      "description": "The unique identifier of the user token.",
      "example": "f9e8d7c6-b5a4-3210-fedc-ba9876543210"
    },
    "userTokenName": {
      "type": "string",
      "description": "The user-defined name for the user token.",
      "example": "my-trading-token"
    },
    "clientId": {
      "type": "string",
      "format": "uuid",
      "description": "The OAuth client identifier associated with the user token.",
      "example": "c1d2e3f4-a5b6-7890-cdef-123456789abc"
    },
    "externalApplicationName": {
      "type": "string",
      "description": "The name of the external application registered for this token.",
      "example": "Trading Bot v2"
    },
    "ipsWhitelist": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The set of whitelisted IP addresses authorized to use this token.",
      "example": [
        "192.168.1.1"
      ]
    },
    "expiresAt": {
      "type": "string",
      "format": "date-time",
      "description": "The expiration date and time of the user token in UTC.",
      "example": "2026-12-31T23:59:59Z"
    },
    "scopeIds": {
      "type": "array",
      "items": {
        "type": "integer"
      },
      "deprecated": true,
      "description": "[DEPRECATED \u2014 use scopeNames instead] The set of permission scope identifiers granted to this token. Available scopes: 200 = etoro-public:real:read, 201 = etoro-public:demo:read, 202 = etoro-public:real:write, 203 = etoro-public:demo:write.",
      "example": [
        211,
        212
      ]
    },
    "scopeNames": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The set of permission scope names (preferred; replaces the deprecated scopeIds). Provide either scopeNames or scopeIds. Available scopes: etoro-public:real:read, etoro-public:demo:read, etoro-public:real:write, etoro-public:demo:write.",
      "example": [
        "etoro-public:trade.real:read",
        "etoro-public:trade.real:write"
      ]
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "When this user token was created.",
      "example": "2026-03-01T10:30:00Z"
    }
  }
}