---
title: "GET /v2/social/activity/events"
method: GET
path: "/v2/social/activity/events"
tags: ["Social Activity"]
---

# GET /v2/social/activity/events

`GET /v2/social/activity/events`

## Request

- Base URL: `https://api.arbital.xyz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.arbital.xyz/v2/social/activity/events`
- Auth: HTTP bearer

Returns durable, newest-first Top Wallet trade activity by default. To page theses for the current Arbital Trending membership, set kind=thesis_published and asset_scope=trending together. Cursors are exclusive and bound to their filters; Trending-thesis cursors are also bound to the current canonical membership.

## Query parameters

- `cursor` string
- `limit` integer
- `source` 'fomo' | 'pump'
- `side` 'buy' | 'sell'
- `kind` 'trade_executed' | 'thesis_published'
- `asset_scope` 'trending'

## Response `200`

A bounded page of durable trade activity or explicitly requested Trending thesis history

- SocialActivityEventPage
  - `items` SocialActivityEventRevision[], required
    - `event` union, required: The same normalized event delivered by Social Activity WebSocket v1. Trade prices describe the fill, independently of assetRef.priceUsd.
      - SocialActivityTradeEvent: Normalized observed trade, with request-time execution pricing on trade. Stored ingestion payloads remain unchanged.
        - `eventKind` 'trade_executed', required
        - `trade` union, required
          - object
            - `amount` string, required
            - `amountAtomic` string, required
            - `amountDecimals` integer, required
            - `nativeAmount` string, required
            - `nativeSymbol` 'SOL' | 'USDC', required
            - `side` 'buy' | 'sell', required
            - `transactionSignature` string, required
            - `usdNotional` string, nullable, required
            - `executionPriceUsd` string, nullable, required: Historical USD consideration divided by the exact quantity of this token in this fill. Decimal string rounded half up to at most 18 fractional digits. Null when unavailable; never substituted with a current quote, portfolio average entry, or zero. Does not add network fees.
            - `executionPriceUnavailableReason` 'missing_usd_value' | 'invalid_usd_value' | 'invalid_token_amount' | 'price_out_of_range' | 'historical_swap_unavailable' | 'historical_swap_not_found' | 'historical_swap_ambiguous' | 'historical_lookup_incomplete' | 'historical_lookup_limited' | 'unsupported_trade' | 'null', nullable, required: Null when the execution price is available; otherwise the reason it could not be determined. Treat unavailable values as unknown, without a current-price fallback.
            - `walletAddress` string, required
            - `receipt` union: Immutable historical display receipt. Pending values are finalized once; never current price, balance, settlement or lifecycle authority. Optional during rollout. Entry is null for buys; USDC sells finalize immediately with available Entry or missing_purchase_history.
              - …
          - object
            - `amount` string, required
            - `amountAtomic` string, required
            - `amountDecimals` integer, required
            - `nativeAmount` string, required
            - `nativeSymbol` 'SOL' | 'USDC', required
            - `side` 'buy' | 'sell', required
            - `transactionSignature` string, required
            - `usdNotional` string, nullable, required
            - `executionPriceUsd` string, nullable, required: Historical USD consideration divided by the exact quantity of this token in this fill. Decimal string rounded half up to at most 18 fractional digits. Null when unavailable; never substituted with a current quote, portfolio average entry, or zero. Does not add network fees.
            - `executionPriceUnavailableReason` 'missing_usd_value' | 'invalid_usd_value' | 'invalid_token_amount' | 'price_out_of_range' | 'historical_swap_unavailable' | 'historical_swap_not_found' | 'historical_swap_ambiguous' | 'historical_lookup_incomplete' | 'historical_lookup_limited' | 'unsupported_trade' | 'null', nullable, required: Null when the execution price is available; otherwise the reason it could not be determined. Treat unavailable values as unknown, without a current-price fallback.
            - `walletAddress` string, required
            - `receipt` union: Immutable historical display receipt. Pending values are finalized once; never current price, balance, settlement or lifecycle authority. Optional during rollout. Entry is null for buys; USDC sells finalize immediately with available Entry or missing_purchase_history.
              - …
        - `assetRef` ExternalTraderActivityAsset
          - `address` string, required
          - `change24hPct` string, nullable, required
          - `chainId` string, required
          - `imageUrl` string, nullable, required
          - `marketCapUsd` string, nullable, required
          - `marketObservedAtMs` string, nullable, required
          - `name` string, nullable, required
          - `priceUsd` string, nullable, required
          - `quoteState` 'quotable' | 'unavailable' | 'unknown', required
          - `quoteUnavailableReason` string, nullable, required
          - `symbol` string, nullable, required
        - `execution` union
          - object
            - `chainId` 'solana:mainnet-beta', required
            - `finality` 'confirmed', required
            - `route` 'same_chain', required
            - `slot` string, required
            - `venue` 'dflow' | 'jupiter' | 'pump' | 'pump_amm', required
          - object: Historical Relay trade recorded before on-chain matching, identified by its Relay request ID.
            - `destinationChainId` string, required
            - `destinationTransaction` string, required
            - `finality` 'confirmed' | 'finalized', required
            - `originChainId` string, required
            - `originTransaction` string, required
            - `relayRequestId` string, required
            - `route` 'cross_chain', required
            - `venue` 'relay', required
          - object: Relay order matched on chain, identified by its Relay order ID.
            - `destinationChainId` string, required
            - `destinationTransaction` string, required
            - `finality` 'confirmed' | 'finalized', required
            - `orderId` string, required
            - `originChainId` string, required
            - `originTransaction` string, required
            - `route` 'cross_chain', required
            - `venue` 'relay', required
      - object
        - `eventKind` 'thesis_published', required
    - `eventId` string, required
    - `providerObservation` SocialProviderObservation: Optional indexer-owned provider observations for external social thesis display. Null fields are missing, invalid, or unavailable; omission of the entire observation means unavailable or unsupported. Financial values are historical provider reports, never live holdings, verified P&L, portfolio/quote authority, or lifecycle results. No new provider acquisition or backend content storage is implied.
      - `kind` 'provider_reported', required
      - `provider` string, required
      - `observedAtMs` string, required: Indexer record last-seen time in Unix milliseconds. This does not establish freshness of economic values or of any individual field.
      - `fieldObservedAtMs` object, required: Original per-field observation clocks in Unix milliseconds, keyed by upstream snake_case field names (segments for structured content). Only populated fields with valid clocks no later than the record last-seen time are included. An absent clock means unknown field freshness; never substitute observedAtMs.
        - `author_name` string
        - `author_is_dev` string
        - `author_avatar_url` string
        - `token_image_url` string
        - `segments` string
        - `holdings_usd` string
        - `author_trade_usd` string
        - `provider_token_amount` string
        - `provider_pnl_usd` string
        - `provider_realized_pnl_usd` string
        - `provider_unrealized_pnl_usd` string
        - `provider_percentage_realized_pnl` string
        - `provider_percentage_unrealized_pnl` string
        - `provider_closed_at_ms` string
        - `author_wallet_address` string
        - `author_x_username` string
        - `author_is_verified` string
        - `token_name` string
      - `authorName` string, nullable, required
      - `authorIsDev` boolean, nullable, required
      - `authorAvatarUrl` string, nullable, required
      - `tokenImageUrl` string, nullable, required
      - `segments` object[], nullable, required: Normalized provider segment objects, limited to 64 KiB of serialized JSON. Treat all values as untrusted text/data; never execute or render them as HTML.
      - `holdingsUsd` string, nullable, required
      - `authorTradeUsd` string, nullable, required
      - `tokenAmount` string, nullable, required
      - `pnlUsd` string, nullable, required
      - `realizedPnlUsd` string, nullable, required
      - `unrealizedPnlUsd` string, nullable, required
      - `percentageRealizedPnl` string, nullable, required
      - `percentageUnrealizedPnl` string, nullable, required
      - `closedAtMs` string, nullable, required
      - `authorWalletAddress` string, nullable, required: Provider-reported display text only. Does not establish author ownership, current wallet association, identity, or trading authority.
      - `authorXUsername` string, nullable, required
      - `authorIsVerified` boolean, nullable, required
      - `tokenName` string, nullable, required
    - `operation` 'upsert', required
    - `revision` integer, required
    - `sequence` string, required
  - `next_cursor` string, nullable, required

## Other responses

- `400`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `401`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `408`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `413`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `429`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `503`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.

---

[API](https://skmtc.dev/arbital/apis/arbital-api.md) - [All operations](https://skmtc.dev/arbital/apis/arbital-api/llms.txt) - [OpenAPI document](https://skmtc.dev/arbital/apis/arbital-api/revisions/bb0185edf43a?raw)
