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

# Trades

> Subscribe to trades for specific token mints or wallet signers. Signer subscriptions also receive any perp events emitted by that wallet.



## AsyncAPI

````yaml asyncapi-spec/websockets.yaml trades
id: trades
title: Trades
description: >-
  Subscribe to trades for specific token mints or wallet signers. Signer
  subscriptions also receive any perp events emitted by that wallet.
servers:
  - id: production
    protocol: wss
    host: ws.raze.bot
    bindings: []
    variables: []
address: /ws/sol
parameters: []
bindings:
  - protocol: ws
    version: 0.1.0
    value:
      query:
        type: object
        properties:
          apiKey:
            type: string
            description: API key for authentication (format sk_xxx)
        required:
          - apiKey
    schemaProperties:
      - name: query
        type: object
        required: false
        properties:
          - name: apiKey
            type: string
            description: API key for authentication (format sk_xxx)
            required: true
operations:
  - &ref_1
    id: subscribeTrades
    title: Subscribe to trades
    description: Subscribe to trades for specific mints or signers
    type: receive
    messages:
      - &ref_6
        id: subscribeMessage
        payload:
          - name: Subscribe to Trades
            description: Subscribe to trades for mints or signers
            type: object
            properties:
              - name: action
                type: string
                enumValues:
                  - subscribe
                required: true
              - name: mints
                type: array
                description: Array of token mint addresses
                required: false
                properties:
                  - name: item
                    type: string
                    required: false
              - name: tokenMint
                type: string
                description: Single token mint address (alias for mints with one entry)
                required: false
              - name: signers
                type: array
                description: Array of wallet signer addresses
                required: false
                properties:
                  - name: item
                    type: string
                    required: false
              - name: signer
                type: string
                description: >-
                  Single wallet signer address (alias for signers with one
                  entry)
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          description: Subscribe to trades for specific mints or signers
          properties:
            action:
              type: string
              enum:
                - subscribe
              x-parser-schema-id: <anonymous-schema-125>
            mints:
              type: array
              items:
                type: string
                x-parser-schema-id: <anonymous-schema-127>
              description: Array of token mint addresses
              x-parser-schema-id: <anonymous-schema-126>
            tokenMint:
              type: string
              description: Single token mint address (alias for mints with one entry)
              x-parser-schema-id: <anonymous-schema-128>
            signers:
              type: array
              items:
                type: string
                x-parser-schema-id: <anonymous-schema-130>
              description: Array of wallet signer addresses
              x-parser-schema-id: <anonymous-schema-129>
            signer:
              type: string
              description: Single wallet signer address (alias for signers with one entry)
              x-parser-schema-id: <anonymous-schema-131>
          required:
            - action
          x-parser-schema-id: TradeSubscribeMessage
        title: Subscribe to Trades
        description: Subscribe to trades for mints or signers
        example: |-
          {
            "action": "<string>",
            "mints": {
              "item": "<string>"
            },
            "tokenMint": "<string>",
            "signers": {
              "item": "<string>"
            },
            "signer": "<string>"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: subscribeMessage
    bindings: []
    extensions: &ref_0
      - id: x-parser-unique-object-id
        value: trades
  - &ref_2
    id: unsubscribeTrades
    title: Unsubscribe from trades
    description: Unsubscribe from trades
    type: receive
    messages:
      - &ref_7
        id: unsubscribeMessage
        payload:
          - name: Unsubscribe from Trades
            description: Unsubscribe from trades
            type: object
            properties:
              - name: action
                type: string
                enumValues:
                  - unsubscribe
                required: true
              - name: mints
                type: array
                required: false
                properties:
                  - name: item
                    type: string
                    required: false
              - name: tokenMint
                type: string
                description: Single token mint address (alias for mints with one entry)
                required: false
              - name: signers
                type: array
                required: false
                properties:
                  - name: item
                    type: string
                    required: false
              - name: signer
                type: string
                description: >-
                  Single wallet signer address (alias for signers with one
                  entry)
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          description: Unsubscribe from trades
          properties:
            action:
              type: string
              enum:
                - unsubscribe
              x-parser-schema-id: <anonymous-schema-132>
            mints:
              type: array
              items:
                type: string
                x-parser-schema-id: <anonymous-schema-134>
              x-parser-schema-id: <anonymous-schema-133>
            tokenMint:
              type: string
              description: Single token mint address (alias for mints with one entry)
              x-parser-schema-id: <anonymous-schema-135>
            signers:
              type: array
              items:
                type: string
                x-parser-schema-id: <anonymous-schema-137>
              x-parser-schema-id: <anonymous-schema-136>
            signer:
              type: string
              description: Single wallet signer address (alias for signers with one entry)
              x-parser-schema-id: <anonymous-schema-138>
          required:
            - action
          x-parser-schema-id: TradeUnsubscribeMessage
        title: Unsubscribe from Trades
        description: Unsubscribe from trades
        example: |-
          {
            "action": "<string>",
            "mints": {
              "item": "<string>"
            },
            "tokenMint": "<string>",
            "signers": {
              "item": "<string>"
            },
            "signer": "<string>"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: unsubscribeMessage
    bindings: []
    extensions: *ref_0
  - &ref_3
    id: receiveTrades
    title: Receive trade events
    description: Receive real-time Solana trade data
    type: send
    messages:
      - &ref_8
        id: tradeMessage
        payload:
          - name: Trade Event
            description: Real-time trade event data
            type: object
            properties:
              - name: type
                type: string
                enumValues:
                  - trade
                required: false
              - name: data
                type: object
                required: false
                properties:
                  - name: type
                    type: string
                    enumValues:
                      - BUY
                      - SELL
                    required: false
                  - name: signer
                    type: string
                    description: Wallet address
                    required: false
                  - name: mint
                    type: string
                    description: Token mint address
                    required: false
                  - name: pool
                    type: string
                    description: Pool address the trade executed against.
                    required: false
                  - name: programId
                    type: string
                    description: On-chain program (DEX) that executed the swap.
                    required: false
                  - name: fee
                    type: number
                    description: Transaction fee in SOL
                    required: false
                  - name: solAmount
                    type: number
                    description: >-
                      Trade size in SOL units. Always SOL-normalised
                      (USDC-quoted pools are converted via the SOL/USD hook).
                    required: false
                  - name: tokenAmount
                    type: number
                    required: false
                  - name: avgPrice
                    type: number
                    required: false
                  - name: slot
                    type: integer
                    required: false
                  - name: proTrade
                    type: boolean
                    required: false
                  - name: signature
                    type: string
                    required: false
                  - name: isBundle
                    type: boolean
                    required: false
                  - name: isSniper
                    type: boolean
                    required: false
                  - name: quoteMint
                    type: string
                    description: >-
                      Native quote mint of the pool (USDC mint for USDC-quoted,
                      wSOL for SOL-quoted).
                    required: false
                  - name: quoteSymbol
                    type: string
                    description: 'Human-readable quote symbol: SOL, USDC, USDT, USD1.'
                    required: false
                  - name: quoteAmount
                    type: number
                    description: >-
                      Quote-side UI amount the user actually paid/received (NOT
                      SOL-normalised).
                    required: false
                  - name: quoteDecimals
                    type: integer
                    description: Quote mint decimals (6 for USDC/USDT/USD1, 9 for SOL).
                    required: false
                  - name: usdAmount
                    type: number
                    description: Notional USD value of the trade.
                    required: false
                  - name: priceUsd
                    type: number
                    description: Per-token USD price.
                    required: false
                  - name: venue
                    type: string
                    description: >-
                      Venue label: PumpFun, PumpSwap, RaydiumV4, RaydiumCPMM,
                      RaydiumLaunchpad, MeteoraDammV2, MeteoraDBC, Jupiter, etc.
                    required: false
                  - name: source
                    type: string
                    description: >-
                      Origin of the event: `yellowstone` (Yellowstone gRPC tx)
                      or `shred` (jito-shred sim).
                    required: false
                  - name: baseReserves
                    type: number
                    description: Base-side (token) reserves UI amount AFTER the swap.
                    required: false
                  - name: quoteReserves
                    type: number
                    description: Quote-side reserves UI amount AFTER the swap.
                    required: false
                  - name: liquidityUsd
                    type: number
                    description: >-
                      Pool liquidity in USD (= 2 × quoteReserves × quote USD
                      price).
                    required: false
              - name: timestamp
                type: string
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          description: Real-time trade event data
          properties:
            type:
              type: string
              enum:
                - trade
              x-parser-schema-id: <anonymous-schema-25>
            data:
              type: object
              properties:
                type:
                  type: string
                  enum:
                    - BUY
                    - SELL
                  x-parser-schema-id: <anonymous-schema-27>
                signer:
                  type: string
                  description: Wallet address
                  x-parser-schema-id: <anonymous-schema-28>
                mint:
                  type: string
                  description: Token mint address
                  x-parser-schema-id: <anonymous-schema-29>
                pool:
                  type: string
                  nullable: true
                  description: Pool address the trade executed against.
                  x-parser-schema-id: <anonymous-schema-30>
                programId:
                  type: string
                  nullable: true
                  description: On-chain program (DEX) that executed the swap.
                  x-parser-schema-id: <anonymous-schema-31>
                fee:
                  type: number
                  description: Transaction fee in SOL
                  x-parser-schema-id: <anonymous-schema-32>
                solAmount:
                  type: number
                  description: >-
                    Trade size in SOL units. Always SOL-normalised (USDC-quoted
                    pools are converted via the SOL/USD hook).
                  x-parser-schema-id: <anonymous-schema-33>
                tokenAmount:
                  type: number
                  x-parser-schema-id: <anonymous-schema-34>
                avgPrice:
                  type: number
                  x-parser-schema-id: <anonymous-schema-35>
                slot:
                  type: integer
                  x-parser-schema-id: <anonymous-schema-36>
                proTrade:
                  type: boolean
                  x-parser-schema-id: <anonymous-schema-37>
                signature:
                  type: string
                  x-parser-schema-id: <anonymous-schema-38>
                isBundle:
                  type: boolean
                  x-parser-schema-id: <anonymous-schema-39>
                isSniper:
                  type: boolean
                  x-parser-schema-id: <anonymous-schema-40>
                quoteMint:
                  type: string
                  nullable: true
                  description: >-
                    Native quote mint of the pool (USDC mint for USDC-quoted,
                    wSOL for SOL-quoted).
                  x-parser-schema-id: <anonymous-schema-41>
                quoteSymbol:
                  type: string
                  nullable: true
                  description: 'Human-readable quote symbol: SOL, USDC, USDT, USD1.'
                  x-parser-schema-id: <anonymous-schema-42>
                quoteAmount:
                  type: number
                  nullable: true
                  description: >-
                    Quote-side UI amount the user actually paid/received (NOT
                    SOL-normalised).
                  x-parser-schema-id: <anonymous-schema-43>
                quoteDecimals:
                  type: integer
                  nullable: true
                  description: Quote mint decimals (6 for USDC/USDT/USD1, 9 for SOL).
                  x-parser-schema-id: <anonymous-schema-44>
                usdAmount:
                  type: number
                  nullable: true
                  description: Notional USD value of the trade.
                  x-parser-schema-id: <anonymous-schema-45>
                priceUsd:
                  type: number
                  nullable: true
                  description: Per-token USD price.
                  x-parser-schema-id: <anonymous-schema-46>
                venue:
                  type: string
                  nullable: true
                  description: >-
                    Venue label: PumpFun, PumpSwap, RaydiumV4, RaydiumCPMM,
                    RaydiumLaunchpad, MeteoraDammV2, MeteoraDBC, Jupiter, etc.
                  x-parser-schema-id: <anonymous-schema-47>
                source:
                  type: string
                  nullable: true
                  description: >-
                    Origin of the event: `yellowstone` (Yellowstone gRPC tx) or
                    `shred` (jito-shred sim).
                  x-parser-schema-id: <anonymous-schema-48>
                baseReserves:
                  type: number
                  nullable: true
                  description: Base-side (token) reserves UI amount AFTER the swap.
                  x-parser-schema-id: <anonymous-schema-49>
                quoteReserves:
                  type: number
                  nullable: true
                  description: Quote-side reserves UI amount AFTER the swap.
                  x-parser-schema-id: <anonymous-schema-50>
                liquidityUsd:
                  type: number
                  nullable: true
                  description: >-
                    Pool liquidity in USD (= 2 × quoteReserves × quote USD
                    price).
                  x-parser-schema-id: <anonymous-schema-51>
              x-parser-schema-id: <anonymous-schema-26>
            timestamp:
              type: string
              format: date-time
              x-parser-schema-id: <anonymous-schema-52>
          x-parser-schema-id: TradeMessage
        title: Trade Event
        description: Real-time trade event data
        example: |-
          {
            "type": "<string>",
            "data": {
              "type": "<string>",
              "signer": "<string>",
              "mint": "<string>",
              "pool": "<string>",
              "programId": "<string>",
              "fee": 123,
              "solAmount": 123,
              "tokenAmount": 123,
              "avgPrice": 123,
              "slot": 123,
              "proTrade": true,
              "signature": "<string>",
              "isBundle": true,
              "isSniper": true,
              "quoteMint": "<string>",
              "quoteSymbol": "<string>",
              "quoteAmount": 123,
              "quoteDecimals": 123,
              "usdAmount": 123,
              "priceUsd": 123,
              "venue": "<string>",
              "source": "<string>",
              "baseReserves": 123,
              "quoteReserves": 123,
              "liquidityUsd": 123
            },
            "timestamp": "<string>"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: tradeMessage
    bindings: []
    extensions: *ref_0
  - &ref_4
    id: receiveMintSubscriptionConfirmed
    title: Mint subscription confirmation
    description: Server acknowledges a `mints` subscribe with a typed confirmation frame.
    type: send
    messages:
      - &ref_9
        id: mintSubscriptionConfirmedMessage
        payload:
          - name: Mint Subscription Confirmed
            type: object
            properties:
              - name: type
                type: string
                enumValues:
                  - subscription_confirmed
                required: false
              - name: mints
                type: array
                required: false
                properties:
                  - name: item
                    type: string
                    required: false
              - name: total_subscriptions
                type: integer
                required: false
              - name: timestamp
                type: string
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          properties:
            type:
              type: string
              enum:
                - subscription_confirmed
              x-parser-schema-id: <anonymous-schema-139>
            mints:
              type: array
              items:
                type: string
                x-parser-schema-id: <anonymous-schema-141>
              x-parser-schema-id: <anonymous-schema-140>
            total_subscriptions:
              type: integer
              x-parser-schema-id: <anonymous-schema-142>
            timestamp:
              type: string
              format: date-time
              x-parser-schema-id: <anonymous-schema-143>
          x-parser-schema-id: MintSubscriptionConfirmedMessage
        title: Mint Subscription Confirmed
        example: |-
          {
            "type": "<string>",
            "mints": {
              "item": "<string>"
            },
            "total_subscriptions": 123,
            "timestamp": "<string>"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: mintSubscriptionConfirmedMessage
    bindings: []
    extensions: *ref_0
  - &ref_5
    id: receiveSignerSubscriptionConfirmed
    title: Signer subscription confirmation
    description: Server acknowledges a `signers` subscribe with a typed confirmation frame.
    type: send
    messages:
      - &ref_10
        id: signerSubscriptionConfirmedMessage
        payload:
          - name: Signer Subscription Confirmed
            type: object
            properties:
              - name: type
                type: string
                enumValues:
                  - signer_subscription_confirmed
                required: false
              - name: signers
                type: array
                required: false
                properties:
                  - name: item
                    type: string
                    required: false
              - name: total_signer_subscriptions
                type: integer
                required: false
              - name: timestamp
                type: string
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          properties:
            type:
              type: string
              enum:
                - signer_subscription_confirmed
              x-parser-schema-id: <anonymous-schema-144>
            signers:
              type: array
              items:
                type: string
                x-parser-schema-id: <anonymous-schema-146>
              x-parser-schema-id: <anonymous-schema-145>
            total_signer_subscriptions:
              type: integer
              x-parser-schema-id: <anonymous-schema-147>
            timestamp:
              type: string
              format: date-time
              x-parser-schema-id: <anonymous-schema-148>
          x-parser-schema-id: SignerSubscriptionConfirmedMessage
        title: Signer Subscription Confirmed
        example: |-
          {
            "type": "<string>",
            "signers": {
              "item": "<string>"
            },
            "total_signer_subscriptions": 123,
            "timestamp": "<string>"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: signerSubscriptionConfirmedMessage
    bindings: []
    extensions: *ref_0
sendOperations:
  - *ref_1
  - *ref_2
receiveOperations:
  - *ref_3
  - *ref_4
  - *ref_5
sendMessages:
  - *ref_6
  - *ref_7
receiveMessages:
  - *ref_8
  - *ref_9
  - *ref_10
extensions:
  - id: x-parser-unique-object-id
    value: trades
securitySchemes:
  - id: ApiKeyAuth
    name: apiKey
    type: httpApiKey
    description: API key passed as query parameter (format sk_xxx)
    in: query
    extensions: []

````