eToro · Schema

Comment

A comment (or reply) on a post, wrapped with interaction data

Social TradingCopy TradingInvestingMarket DataPortfolio ManagementFintechTradingStocksCryptocurrencyETFs

Properties

Name Type Description
entity object Core comment data
repliesCount integer Number of direct replies to this comment
replies array Inline reply preview. Each entry has the same shape as Comment; nested `replies` arrays are not populated at this level.
emotionsData object Aggregated emotions (likes) on an entity
requesterContext object Requester's relationship state with the comment
View JSON Schema on GitHub

JSON Schema

Comment.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/etoro/refs/heads/main/json-schema/Comment.json",
  "title": "Comment",
  "type": "object",
  "description": "A comment (or reply) on a post, wrapped with interaction data",
  "properties": {
    "entity": {
      "type": "object",
      "description": "Core comment data",
      "properties": {
        "id": {
          "type": "string",
          "description": "Comment ID",
          "example": "7c9e6679-7425-40de-944b-e07fc1f90ae7"
        },
        "owner": {
          "$ref": "#/components/schemas/User"
        },
        "obsoleteId": {
          "type": "string",
          "description": "Legacy numeric comment ID",
          "example": "98765"
        },
        "created": {
          "type": "string",
          "format": "date-time",
          "description": "Creation timestamp",
          "example": "2025-01-15T10:30:00Z"
        },
        "updated": {
          "type": "string",
          "format": "date-time",
          "nullable": true,
          "description": "Last-edited timestamp",
          "example": "2025-01-15T11:00:00Z"
        },
        "message": {
          "type": "object",
          "description": "Post/comment text content",
          "properties": {
            "text": {
              "type": "string",
              "description": "Text content",
              "example": "Excited about $TSLA earnings next week!"
            },
            "languageCode": {
              "type": "string",
              "description": "BCP-47 language code",
              "example": "en"
            }
          }
        },
        "attachments": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/Attachment"
          }
        },
        "mentions": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "user": {
                "$ref": "#/components/schemas/User"
              },
              "isDirect": {
                "type": "boolean",
                "description": "Direct @-mention",
                "example": true
              }
            }
          }
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "market": {
                "$ref": "#/components/schemas/Market"
              }
            }
          }
        },
        "isSpam": {
          "type": "boolean",
          "description": "True when classified as spam",
          "example": false
        },
        "editStatus": {
          "type": "string",
          "enum": [
            "None",
            "Edited",
            "Moderated"
          ],
          "description": "Edit lifecycle status",
          "example": "None"
        },
        "parent": {
          "type": "object",
          "description": "Parent entity reference",
          "properties": {
            "id": {
              "type": "string",
              "description": "Parent entity ID",
              "example": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
            },
            "obsoleteId": {
              "type": "string",
              "description": "Legacy parent ID",
              "example": "12345"
            },
            "type": {
              "type": "string",
              "enum": [
                "Unknown",
                "Post",
                "Comment",
                "Reply"
              ],
              "description": "Parent entity type",
              "example": "Post"
            }
          }
        }
      }
    },
    "repliesCount": {
      "type": "integer",
      "description": "Number of direct replies to this comment",
      "example": 2
    },
    "replies": {
      "type": "array",
      "description": "Inline reply preview. Each entry has the same shape as Comment; nested `replies` arrays are not populated at this level.",
      "items": {
        "$ref": "#/components/schemas/Comment"
      }
    },
    "emotionsData": {
      "type": "object",
      "description": "Aggregated emotions (likes) on an entity",
      "properties": {
        "like": {
          "type": "object",
          "properties": {
            "paging": {
              "type": "object",
              "description": "Pagination cursor info",
              "properties": {
                "totalCount": {
                  "type": "integer",
                  "description": "Total number of items",
                  "example": 42
                },
                "offsetEntityId": {
                  "type": "string",
                  "description": "Opaque cursor for next page",
                  "example": "b2c3d4e5-f6a7-4890-bcde-f23456789012"
                },
                "next": {
                  "type": "string",
                  "description": "URL to next page",
                  "example": "/api/v1/reactions/3fa85f64-5717-4562-b3fc-2c963f66afa6/emotions?offset=10&take=10"
                }
              }
            },
            "emotions": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/Emotion"
              }
            }
          }
        }
      }
    },
    "requesterContext": {
      "type": "object",
      "description": "Requester's relationship state with the comment",
      "properties": {
        "isOwner": {
          "type": "boolean",
          "description": "Requester is the comment owner",
          "example": false
        },
        "isFlaggingAsSpam": {
          "type": "boolean",
          "description": "Requester flagged this as spam",
          "example": false
        },
        "isSubscribed": {
          "type": "boolean",
          "description": "Requester is subscribed to notifications",
          "example": false
        },
        "isLiking": {
          "type": "boolean",
          "description": "Requester has liked this comment",
          "example": false
        },
        "isSaved": {
          "type": "boolean",
          "description": "Requester has saved this comment",
          "example": false
        },
        "isPinned": {
          "type": "boolean",
          "description": "Comment is pinned",
          "example": false
        },
        "isRequesterBlocking": {
          "type": "boolean",
          "description": "Requester is blocking the comment owner",
          "example": false
        },
        "isInteractionRestricted": {
          "type": "boolean",
          "description": "Owner has blocked the requester",
          "example": false
        }
      }
    }
  }
}