> ## Documentation Index
> Fetch the complete documentation index at: https://docs.clicker.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Token Comments



## OpenAPI

````yaml GET /v1/tokens/{chain}/{contractAddress}/comments
openapi: 3.0.0
info:
  version: 1.0.0
  title: Daylight.xyz API
  description: >-
    Welcome to the Daylight API! API endpoints require a Daylight partner API
    key passed in the HTTP Authorization header.
servers:
  - url: https://api.clicker.xyz
security:
  - {}
  - bearerAuth: []
paths:
  /v1/tokens/{chain}/{contractAddress}/comments:
    get:
      tags:
        - Social - Feed, Profiles and Discovery
      summary: >-
        Return all comments, sorted by most recent first, for a particular
        contract and chain pair
      parameters:
        - schema:
            type: string
            enum:
              - ethereum
              - optimism
              - polygon
              - arbitrum
              - zora
              - base
              - zero
              - solana
              - hyperliquid
          required: true
          name: chain
          in: path
        - schema:
            type: string
            default: '0x5180db8f5c931aae63c74266b211f580155ecac8'
            description: The contract / token address.
          required: true
          name: contractAddress
          in: path
        - schema:
            type: number
            description: The total number of records to respond with. Defaults to 50.
          required: false
          name: limit
          in: query
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PerContractCommentFeedItem'
        '400':
          description: >-
            The request payload or query string parameter you passed was not
            valid
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
        '404':
          description: The item you requested could not be found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
components:
  schemas:
    PerContractCommentFeedItem:
      type: object
      properties:
        itemId:
          type: string
        actor:
          type: object
          properties:
            type:
              type: string
              enum:
                - user
            address:
              type: string
            name:
              type: string
              description: >-
                The name of the feed actor. Use this field for maximum forward
                compatibility.
            images:
              type: object
              properties:
                raw:
                  type: string
                  nullable: true
                  description: The full-sized image
                xs:
                  type: string
                  nullable: true
                  description: 75x75
                sm:
                  type: string
                  nullable: true
                  description: 300x300
              required:
                - raw
                - xs
                - sm
              description: >-
                An image of the feed actor. Use this field for maximum forward
                compatibility.
            profile:
              type: object
              properties:
                id:
                  type: string
                name:
                  type: string
                images:
                  type: object
                  properties:
                    raw:
                      type: string
                      nullable: true
                      description: The full-sized image
                    xs:
                      type: string
                      nullable: true
                      description: 75x75
                    sm:
                      type: string
                      nullable: true
                      description: 300x300
                  required:
                    - raw
                    - xs
                    - sm
                  description: URLs for different size squares.
                addresses:
                  type: array
                  items:
                    type: string
                externalId:
                  type: string
                metadata:
                  type: object
                  properties:
                    farcasterUsername:
                      type: string
                      nullable: true
                    farcasterId:
                      type: number
                      nullable: true
                    lensHandle:
                      type: string
                      nullable: true
                    ensName:
                      type: string
                      nullable: true
                    twitterHandle:
                      type: string
                      nullable: true
                    debankName:
                      type: string
                      nullable: true
                    hlName:
                      type: string
                      nullable: true
                    commentCount30d:
                      type: number
                      nullable: true
                    pnl30d:
                      type: number
                      nullable: true
                    winRate30d:
                      type: number
                      nullable: true
                    tradeCount30d:
                      type: number
                      nullable: true
                    roiPercent30d:
                      type: number
                      nullable: true
                    pnl7d:
                      type: number
                      nullable: true
                    winRate7d:
                      type: number
                      nullable: true
                    tradeCount7d:
                      type: number
                      nullable: true
                    roiPercent7d:
                      type: number
                      nullable: true
                    medianHoldingTimeMinutes:
                      type: number
                      nullable: true
                  required:
                    - farcasterUsername
                    - farcasterId
                    - lensHandle
                    - ensName
                    - twitterHandle
                    - debankName
                    - hlName
                    - commentCount30d
                    - pnl30d
                    - winRate30d
                    - tradeCount30d
                    - roiPercent30d
                    - pnl7d
                    - winRate7d
                    - tradeCount7d
                    - roiPercent7d
                    - medianHoldingTimeMinutes
                isNSFW:
                  anyOf:
                    - type: boolean
                      enum:
                        - false
                    - type: object
                      properties:
                        nsfwImage:
                          type: boolean
                        nsfwText:
                          type: boolean
                      required:
                        - nsfwImage
                        - nsfwText
                  description: >-
                    `false` when the profile is clean. Otherwise an object with
                    `nsfwImage` and `nsfwText` booleans indicating which axes
                    the scanner flagged. Clients decide whether to render,
                    censor, or hide the underlying content.
              required:
                - id
                - name
                - images
                - addresses
                - metadata
                - isNSFW
              description: >-
                Profile of the user (including additional known addresses and
                extra metadata). Use this field to tailor your UI specifically.
          required:
            - type
            - address
            - name
            - images
            - profile
          description: The actor that completed an action to create a feed item.
        timestamp:
          type: number
        comment:
          type: object
          properties:
            uid:
              type: string
              description: Unique identifier for the comment
            transactionHash:
              type: string
              description: The transaction hash associated with the swap
            chain:
              type: string
              enum:
                - ethereum
                - optimism
                - polygon
                - arbitrum
                - zora
                - base
                - zero
                - solana
                - hyperliquid
            tokenAddress:
              type: string
              description: The token address associated with the swap
            commentText:
              type: string
              description: The comment text
            signerAddress:
              type: string
              description: The Ethereum address of the comment author
            timestamp:
              type: number
              description: Unix timestamp of when the comment was created
            isAppUserComment:
              type: boolean
              description: Whether the comment was created by a user of this partner's app
            metrics:
              type: object
              properties:
                copyCount:
                  type: number
                  description: The number of times the comment has been copied
                copyVolume:
                  type: string
                  description: The volume of the comment in USD
                likeCount:
                  type: number
                  description: The number of likes on this comment
                isLikedByUser:
                  type: boolean
                  description: Whether the requesting user has liked this comment
              required:
                - copyCount
                - copyVolume
                - likeCount
                - isLikedByUser
            replies:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                    description: Unique identifier for the reply
                  text:
                    type: string
                    description: The reply text
                  author:
                    type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - user
                      address:
                        type: string
                      name:
                        type: string
                        description: >-
                          The name of the feed actor. Use this field for maximum
                          forward compatibility.
                      images:
                        type: object
                        properties:
                          raw:
                            type: string
                            nullable: true
                            description: The full-sized image
                          xs:
                            type: string
                            nullable: true
                            description: 75x75
                          sm:
                            type: string
                            nullable: true
                            description: 300x300
                        required:
                          - raw
                          - xs
                          - sm
                        description: >-
                          An image of the feed actor. Use this field for maximum
                          forward compatibility.
                      profile:
                        type: object
                        properties:
                          id:
                            type: string
                          name:
                            type: string
                          images:
                            type: object
                            properties:
                              raw:
                                type: string
                                nullable: true
                                description: The full-sized image
                              xs:
                                type: string
                                nullable: true
                                description: 75x75
                              sm:
                                type: string
                                nullable: true
                                description: 300x300
                            required:
                              - raw
                              - xs
                              - sm
                            description: URLs for different size squares.
                          addresses:
                            type: array
                            items:
                              type: string
                          externalId:
                            type: string
                          metadata:
                            type: object
                            properties:
                              farcasterUsername:
                                type: string
                                nullable: true
                              farcasterId:
                                type: number
                                nullable: true
                              lensHandle:
                                type: string
                                nullable: true
                              ensName:
                                type: string
                                nullable: true
                              twitterHandle:
                                type: string
                                nullable: true
                              debankName:
                                type: string
                                nullable: true
                              hlName:
                                type: string
                                nullable: true
                              commentCount30d:
                                type: number
                                nullable: true
                              pnl30d:
                                type: number
                                nullable: true
                              winRate30d:
                                type: number
                                nullable: true
                              tradeCount30d:
                                type: number
                                nullable: true
                              roiPercent30d:
                                type: number
                                nullable: true
                              pnl7d:
                                type: number
                                nullable: true
                              winRate7d:
                                type: number
                                nullable: true
                              tradeCount7d:
                                type: number
                                nullable: true
                              roiPercent7d:
                                type: number
                                nullable: true
                              medianHoldingTimeMinutes:
                                type: number
                                nullable: true
                            required:
                              - farcasterUsername
                              - farcasterId
                              - lensHandle
                              - ensName
                              - twitterHandle
                              - debankName
                              - hlName
                              - commentCount30d
                              - pnl30d
                              - winRate30d
                              - tradeCount30d
                              - roiPercent30d
                              - pnl7d
                              - winRate7d
                              - tradeCount7d
                              - roiPercent7d
                              - medianHoldingTimeMinutes
                          isNSFW:
                            anyOf:
                              - type: boolean
                                enum:
                                  - false
                              - type: object
                                properties:
                                  nsfwImage:
                                    type: boolean
                                  nsfwText:
                                    type: boolean
                                required:
                                  - nsfwImage
                                  - nsfwText
                            description: >-
                              `false` when the profile is clean. Otherwise an
                              object with `nsfwImage` and `nsfwText` booleans
                              indicating which axes the scanner flagged. Clients
                              decide whether to render, censor, or hide the
                              underlying content.
                        required:
                          - id
                          - name
                          - images
                          - addresses
                          - metadata
                          - isNSFW
                        description: >-
                          Profile of the user (including additional known
                          addresses and extra metadata). Use this field to
                          tailor your UI specifically.
                    required:
                      - type
                      - address
                      - name
                      - images
                      - profile
                    description: The actor that completed an action to create a feed item.
                  timestamp:
                    type: number
                    description: Unix timestamp of when the reply was created
                  likeCount:
                    type: number
                    description: The number of likes on this reply
                  isLikedByUser:
                    type: boolean
                    description: Whether the requesting user has liked this reply
                required:
                  - id
                  - text
                  - author
                  - timestamp
                  - likeCount
                  - isLikedByUser
              description: >-
                Replies to this comment, only included when fetching a single
                position
          required:
            - uid
            - transactionHash
            - chain
            - tokenAddress
            - commentText
            - timestamp
            - isAppUserComment
            - metrics
        trade:
          type: object
          properties:
            tokenAmount:
              type: number
              description: The amount of tokens traded. Negative for sells.
            usdCost:
              type: number
              description: The USD cost traded for all tokens. Negative for sells.
            marketCap:
              type: number
              nullable: true
              description: The market cap of the token at the time of this trade
            timestamp:
              type: number
            transactionHash:
              type: string
            direction:
              type: string
              enum:
                - buy
                - sell
            classification:
              type: string
              nullable: true
              enum:
                - spot
                - perp
                - send
                - receive
              description: >-
                High-level trade classification: 'spot' for spot trades, 'perp'
                for perpetual futures, 'send' for outgoing transfers, 'receive'
                for airdrops/incoming transfers. Null for legacy trades.
            intent:
              type: string
              enum:
                - enter
                - exit
              description: >-
                Whether this trade is entering or exiting a position. For spot
                trades, 'enter' = buy and 'exit' = sell. For perps, direction
                depends on position type (e.g., opening a short is 'enter' even
                though the trade side is 'sell').
            perpPositionType:
              type: string
              nullable: true
              enum:
                - long
                - short
              description: >-
                For perps positions, whether this is a 'long' or 'short'
                position. Null for spot trades.
            perpLeverage:
              type: number
              nullable: true
              description: >-
                For perps positions, the leverage multiplier (e.g., 5 for 5x
                leverage). Null for spot trades.
          required:
            - tokenAmount
            - usdCost
            - marketCap
            - timestamp
            - transactionHash
            - direction
            - classification
            - intent
            - perpPositionType
            - perpLeverage
        positionDetails:
          type: object
          nullable: true
          properties:
            perpPositionType:
              type: string
              nullable: true
              enum:
                - long
                - short
              description: >-
                For perp positions, whether this is a 'long' or 'short'
                position. Null for spot positions.
            perpLeverage:
              type: number
              nullable: true
              description: >-
                For perp positions, the leverage multiplier (e.g., 5 for 5x
                leverage). Null for spot positions.
            positionAmount:
              type: number
              description: >-
                Current token balance held. A value >= 0.0001 indicates an open
                position; < 0.0001 indicates closed. For perps, this is the
                un-leveraged amount.
            positionAmountWithLeverage:
              type: number
              description: >-
                For leveraged perp positions, the position amount multiplied by
                leverage (capital at risk). Only present for hyperliquid.
            positionStats:
              type: object
              properties:
                boughtUSD:
                  type: number
                  description: >-
                    Total USD spent buying this token (all-time). For perps,
                    this is the un-leveraged amount.
                boughtUSDWithLeverage:
                  type: number
                  description: >-
                    For leveraged perp positions, total USD spent multiplied by
                    leverage. Only present for hyperliquid.
                soldUSD:
                  type: number
                  description: >-
                    Total USD received from selling this token (all-time). For
                    perps, this is the un-leveraged amount.
                soldUSDWithLeverage:
                  type: number
                  description: >-
                    For leveraged perp positions, total USD received multiplied
                    by leverage. Only present for hyperliquid.
                realizedGainsUSD:
                  type: number
                  description: >-
                    Realized profit/loss in USD (sold value minus cost basis of
                    sold tokens)
                holdingsCostBasisUSD:
                  type: number
                  description: >-
                    USD cost basis of tokens currently held (for unrealized P&L
                    calculation). For perps, this is the un-leveraged amount.
                holdingsCostBasisUSDWithLeverage:
                  type: number
                  description: >-
                    For leveraged perp positions, cost basis of held tokens
                    multiplied by leverage. Only present for hyperliquid.
                receivedCostBasisUSD:
                  type: number
                  description: >-
                    Total USD value of tokens received via airdrops/transfers
                    (all-time)
                holdingReceivedCostBasisUSD:
                  type: number
                  description: USD cost basis of currently held received tokens
                isOpen:
                  type: boolean
                  description: Whether this position is currently open
                unavailable:
                  type: boolean
                  enum:
                    - true
                  description: True when position metrics could not be computed
              required:
                - boughtUSD
                - soldUSD
                - realizedGainsUSD
                - holdingsCostBasisUSD
                - receivedCostBasisUSD
                - holdingReceivedCostBasisUSD
                - isOpen
              description: Aggregated trading statistics for this position
          required:
            - perpPositionType
            - perpLeverage
            - positionAmount
            - positionStats
        token:
          type: object
          properties:
            chain:
              type: string
              enum:
                - ethereum
                - optimism
                - polygon
                - arbitrum
                - zora
                - base
                - zero
                - solana
                - hyperliquid
            symbol:
              type: string
            name:
              type: string
            address:
              type: string
            commentCount:
              type: number
              description: The total number of comments for this token
          required:
            - chain
            - symbol
            - name
            - address
            - commentCount
      required:
        - itemId
        - actor
        - timestamp
        - comment
        - trade
        - positionDetails
        - token
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````