cabalspy-xyz Transactions API

Live trade feed, time windows, counts and volume.

Operations 4

GET /transactions/latest Latest transactions #
GET /transactions/timerange Transactions in a time window #
GET /transactions/count Transaction count #
GET /transactions/volume Transaction volume #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cabalspy-xyz:cabalspy-xyz-transactions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cabalspy-xyz-transactions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: CabalSpy Transactions API
  version: 1.0.0
  description: 'REST API for CabalSpy on-chain labeled wallet data: tracked KOL, Smart Money and Whale wallets on Solana, BNB Chain, Base, Ethereum and Robinhood Chain (blockchain values: solana, bnb, base, eth, rh), with wallet profiles, leaderboards, PnL, token holders and transactions, bundle detection (Solana only), live signals and analytics.


    Wallet type availability per chain: Solana has kol, smart, whale. BNB, Base and Robinhood Chain have kol, smart. ETH has kol.


    Authentication: every request needs an API key, passed either as the api_key query parameter or as an Authorization Bearer header (the two are equivalent). Get a free key at https://apidashboard.cabalspy.xyz/.


    Credits: a REST request costs 10 credits on every plan. The free tier includes 10,000 credits per month; credits reset on the first of every month.


    Rate limits: requests per second by plan are 5 (Free), 20 (Starter), 50 (Pro) and 100 (Business). Exceeding the limit returns 429 rate_limited; wait and retry.


    Responses share an envelope: success, data, meta (request_id, cached, cache_age_seconds, version, timestamp) and, on some endpoints, pagination.


    Real-time data is available separately over WebSocket at wss://stream.cabalspy.xyz (not described by this document; 1 credit per event received).'
  termsOfService: https://www.cabalspy.xyz/terms/
  contact:
    name: CabalSpy
    email: contact@cabalspy.xyz
servers:
- url: https://api.cabalspy.xyz/v1
security:
- ApiKeyQuery: []
- BearerAuth: []
tags:
- name: Transactions
  description: Live trade feed, time windows, counts and volume.
paths:
  /transactions/latest:
    get:
      operationId: getLatestTransactions
      summary: Latest transactions
      description: The most recent transactions of tracked wallets for a chain and wallet type, newest first, each with trader profile and position after the trade. Optionally filter to a single token with mint, which adds a token block. Costs 10 credits per request.
      tags:
      - Transactions
      externalDocs:
        url: https://docs.cabalspy.xyz/latest
      parameters:
      - name: blockchain
        in: query
        required: true
        description: Chain. One of solana, bnb, base, eth.
        schema:
          type: string
          enum:
          - solana
          - bnb
          - base
          - eth
          - rh
      - name: type
        in: query
        required: true
        description: Wallet category kol, smart or whale. Availability per chain. Solana has kol, smart, whale. BNB, Base and Robinhood Chain have kol, smart. ETH has kol.
        schema:
          type: string
          enum:
          - kol
          - smart
          - whale
      - name: mint
        in: query
        required: false
        description: Optional token mint to filter the feed to a single token. Adds a token block.
        schema:
          type: string
      - name: limit
        in: query
        required: false
        description: Maximum number of transactions to return.
        schema:
          type: integer
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    description: True on success.
                  data:
                    type: object
                    properties:
                      blockchain:
                        type: string
                      type:
                        type: string
                      mode:
                        type: string
                        description: latest.
                      currency:
                        type: string
                      count:
                        type: integer
                        description: Number of transactions returned.
                      token:
                        type: object
                        additionalProperties: true
                        description: Only present when mint is passed. Token block with mint, token_name, blockchain, currency, token_supply, token_decimals.
                      transactions:
                        type: array
                        description: Transactions, newest first.
                        items:
                          $ref: '#/components/schemas/FeedTransaction'
                      pagination:
                        $ref: '#/components/schemas/Pagination'
                    additionalProperties: true
                  pagination:
                    $ref: '#/components/schemas/Pagination'
                  meta:
                    $ref: '#/components/schemas/Meta'
                additionalProperties: true
              example:
                success: true
                data:
                  blockchain: solana
                  type: kol
                  mode: latest
                  currency: SOL
                  count: 1
                  transactions:
                  - tx_signature: 5xr8abc...
                    mint: 3Pkrq4MmLvDXyn1fa3sz5MekKRkZkc1iLDcz5AzWpump
                    token_name: invisibull
                    token_supply: 1000000000
                    token_decimals: 6
                    transaction_type: buy
                    value: 1.66
                    value_usd: 137.44
                    currency: SOL
                    token_amount: 22113972.03
                    price_per_token: 7.5e-08
                    price_per_token_usd: 6.2e-06
                    created_at: '2026-07-04 16:25:34'
                    profile:
                      name: Maze
                      image_url: https://cabalspy.xyz/images/7j7AA3HZR2zEjwAQEKPFh2qucLY4fqZpB9iodf39w8xW.png
                      twitter: https://x.com/MazeCCC
                      telegram: ''
                      blockchain: solana
                      currency: SOL
                      type: kol
                    holdings_after:
                      token_amount: 22113972.03
                      token_amount_peak: 22113972.03
                      supply_pct: 2.211397
                      supply_pct_peak: 2.211397
                      bag_pct: 100.0
                      still_holding: true
                pagination:
                  limit: 50
                  total: 1
                  has_more: false
                  next_cursor: null
                meta:
                  request_id: req_5162c7cf7f87
                  cached: false
                  cache_age_seconds: 0
                  version: 1.0.0
                  timestamp: '2026-07-06T11:01:57Z'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/RateLimited'
  /transactions/timerange:
    get:
      operationId: getTransactionsTimerange
      summary: Transactions in a time window
      description: Transactions of tracked wallets within a recent time window, newest first. The window is seconds plus minutes, summed; the maximum is 60 minutes, larger requests are capped and a warning is added. Costs 10 credits per request.
      tags:
      - Transactions
      externalDocs:
        url: https://docs.cabalspy.xyz/timerange
      parameters:
      - name: blockchain
        in: query
        required: true
        description: Chain. One of solana, bnb, base, eth.
        schema:
          type: string
          enum:
          - solana
          - bnb
          - base
          - eth
          - rh
      - name: type
        in: query
        required: true
        description: Wallet category kol, smart or whale.
        schema:
          type: string
          enum:
          - kol
          - smart
          - whale
      - name: seconds
        in: query
        required: false
        description: Seconds to look back. Combined with minutes.
        schema:
          type: integer
      - name: minutes
        in: query
        required: false
        description: Minutes to look back. Combined with seconds. Maximum total window is 60 minutes.
        schema:
          type: integer
      - name: mint
        in: query
        required: false
        description: Optional token mint to filter the window to a single token. Adds a token block.
        schema:
          type: string
      - name: limit
        in: query
        required: false
        description: Maximum number of transactions to return.
        schema:
          type: integer
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    description: True on success.
                  data:
                    type: object
                    properties:
                      blockchain:
                        type: string
                      type:
                        type: string
                      mode:
                        type: string
                        description: timerange.
                      currency:
                        type: string
                      time_window_seconds:
                        type: integer
                        description: The effective window in seconds, after capping.
                      count:
                        type: integer
                        description: Number of transactions in the window.
                      token:
                        type: object
                        additionalProperties: true
                        description: Only present when mint is passed. Token block with mint, token_name, blockchain, currency, token_supply, token_decimals.
                      transactions:
                        type: array
                        description: Same transaction shape as the Latest endpoint.
                        items:
                          $ref: '#/components/schemas/FeedTransaction'
                      warnings:
                        type: array
                        items: {}
                        description: Present only if the requested window exceeded the 60 minute maximum and was capped.
                      pagination:
                        $ref: '#/components/schemas/Pagination'
                    additionalProperties: true
                  pagination:
                    $ref: '#/components/schemas/Pagination'
                  meta:
                    $ref: '#/components/schemas/Meta'
                additionalProperties: true
              example:
                success: true
                data:
                  blockchain: solana
                  type: kol
                  mode: timerange
                  currency: SOL
                  time_window_seconds: 300
                  count: 1
                  transactions:
                  - tx_signature: 5xr8abc...
                    mint: 3Pkrq4MmLvDXyn1fa3sz5MekKRkZkc1iLDcz5AzWpump
                    token_name: invisibull
                    token_supply: 1000000000
                    token_decimals: 6
                    transaction_type: buy
                    value: 1.66
                    value_usd: 137.44
                    currency: SOL
                    token_amount: 22113972.03
                    price_per_token: 7.5e-08
                    price_per_token_usd: 6.2e-06
                    created_at: '2026-07-04 16:25:34'
                    profile:
                      name: Maze
                      image_url: https://cabalspy.xyz/images/7j7AA3HZR2zEjwAQEKPFh2qucLY4fqZpB9iodf39w8xW.png
                      twitter: https://x.com/MazeCCC
                      telegram: ''
                      blockchain: solana
                      currency: SOL
                      type: kol
                    holdings_after:
                      token_amount: 22113972.03
                      token_amount_peak: 22113972.03
                      supply_pct: 2.211397
                      supply_pct_peak: 2.211397
                      bag_pct: 100.0
                      still_holding: true
                pagination:
                  limit: 50
                  total: 1
                  has_more: false
                  next_cursor: null
                meta:
                  request_id: req_5162c7cf7f87
                  cached: false
                  cache_age_seconds: 0
                  version: 1.0.0
                  timestamp: '2026-07-06T11:01:57Z'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/RateLimited'
  /transactions/count:
    get:
      operationId: getTransactionCount
      summary: Transaction count
      description: Count how many transactions tracked wallets made within a time window (seconds, minutes and hours summed, up to 24 hours), optionally for a single token. Without a window you get the full available window. Costs 10 credits per request.
      tags:
      - Transactions
      externalDocs:
        url: https://docs.cabalspy.xyz/count
      parameters:
      - name: blockchain
        in: query
        required: true
        description: Chain. One of solana, bnb, base, eth.
        schema:
          type: string
          enum:
          - solana
          - bnb
          - base
          - eth
          - rh
      - name: type
        in: query
        required: true
        description: Wallet category kol, smart or whale.
        schema:
          type: string
          enum:
          - kol
          - smart
          - whale
      - name: seconds
        in: query
        required: false
        description: Seconds to look back. Combined with minutes and hours.
        schema:
          type: integer
      - name: minutes
        in: query
        required: false
        description: Minutes to look back.
        schema:
          type: integer
      - name: hours
        in: query
        required: false
        description: Hours to look back. Maximum total window is 24 hours.
        schema:
          type: integer
      - name: mint
        in: query
        required: false
        description: Optional token mint to count only that token transactions.
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    description: True on success.
                  data:
                    type: object
                    properties:
                      blockchain:
                        type: string
                      type:
                        type: string
                      mode:
                        type: string
                        description: count.
                      count:
                        type: integer
                        description: Number of transactions in the window.
                      time_window_seconds:
                        type: integer
                        description: The effective window in seconds, after capping.
                      mint:
                        type: string
                        description: Present only when a mint filter was passed.
                      warnings:
                        type: array
                        items: {}
                        description: Present only if the requested window exceeded the 24 hour maximum and was capped.
                    additionalProperties: true
                  meta:
                    $ref: '#/components/schemas/Meta'
                additionalProperties: true
              example:
                success: true
                data:
                  blockchain: solana
                  type: kol
                  mode: count
                  count: 128
                  time_window_seconds: 3600
                meta:
                  request_id: req_5162c7cf7f87
                  cached: false
                  cache_age_seconds: 0
                  version: 1.0.0
                  timestamp: '2026-07-06T11:01:57Z'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/RateLimited'
  /transactions/volume:
    get:
      operationId: getTransactionVolume
      summary: Transaction volume
      description: Total trading volume of tracked wallets within a time window (seconds, minutes and hours summed, up to 24 hours), in native currency and USD, optionally for a single token. Costs 10 credits per request.
      tags:
      - Transactions
      externalDocs:
        url: https://docs.cabalspy.xyz/volume
      parameters:
      - name: blockchain
        in: query
        required: true
        description: Chain. One of solana, bnb, base, eth.
        schema:
          type: string
          enum:
          - solana
          - bnb
          - base
          - eth
          - rh
      - name: type
        in: query
        required: true
        description: Wallet category kol, smart or whale.
        schema:
          type: string
          enum:
          - kol
          - smart
          - whale
      - name: seconds
        in: query
        required: false
        description: Seconds to look back. Combined with minutes and hours.
        schema:
          type: integer
      - name: minutes
        in: query
        required: false
        description: Minutes to look back.
        schema:
          type: integer
      - name: hours
        in: query
        required: false
        description: Hours to look back. Maximum total window is 24 hours.
        schema:
          type: integer
      - name: mint
        in: query
        required: false
        description: Optional token mint to measure only that token volume.
        schema:
          type: string
      responses:
        '200':
          description: Successful response.
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    description: True on success.
                  data:
                    type: object
                    properties:
                      blockchain:
                        type: string
                      type:
                        type: string
                      mode:
                        type: string
                        description: volume.
                      volume:
                        type: number
                        description: Total traded volume in the window (native currency).
                      volume_usd:
                        type:
                        - number
                        - 'null'
                        description: Total traded volume in USD, or null if no USD value could be derived.
                      currency:
                        type: string
                      time_window_seconds:
                        type: integer
                        description: The effective window in seconds, after capping.
                      mint:
                        type: string
                        description: Present only when a mint filter was passed.
                      warnings:
                        type: array
                        items: {}
                        description: Present only if the requested window exceeded the 24 hour maximum and was capped.
                    additionalProperties: true
                  meta:
                    $ref: '#/components/schemas/Meta'
                additionalProperties: true
              example:
                success: true
                data:
                  blockchain: solana
                  type: kol
                  mode: volume
                  volume: 842.5
                  volume_usd: 69388.6
                  currency: SOL
                  time_window_seconds: 3600
                meta:
                  request_id: req_5162c7cf7f87
                  cached: false
                  cache_age_seconds: 0
                  version: 1.0.0
                  timestamp: '2026-07-06T11:01:57Z'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  schemas:
    FeedTransaction:
      type: object
      description: A single buy or sell of a tracked wallet.
      properties:
        tx_signature:
          type: string
          description: Transaction signature.
        mint:
          type: string
          description: Token mint.
        token_name:
          type: string
          description: Token name or symbol.
        token_supply:
          type: number
          description: Total supply.
        token_decimals:
          type: integer
          description: Token decimals.
        transaction_type:
          type: string
          description: buy or sell.
        value:
          type: number
          description: Trade value (native).
        value_usd:
          type:
          - number
          - 'null'
          description: Trade value in USD.
        currency:
          type: string
          description: Native currency.
        token_amount:
          type: number
          description: Number of tokens in the trade.
        price_per_token:
          type: number
          description: Price per token (native).
        price_per_token_usd:
          type:
          - number
          - 'null'
          description: Price per token in USD.
        created_at:
          type: string
          description: Timestamp of the trade.
        profile:
          $ref: '#/components/schemas/Profile'
        holdings_after:
          $ref: '#/components/schemas/HoldingsAfter'
      additionalProperties: true
    Error:
      type: object
      description: Error response. The documentation specifies the HTTP status and an error code (missing_parameter, invalid_parameter, unauthorized, forbidden, not_found, rate_limited) but not the exact body layout, so no fields are asserted here.
      additionalProperties: true
    Meta:
      type: object
      description: Request metadata returned with every response.
      properties:
        request_id:
          type: string
        cached:
          type: boolean
        cache_age_seconds:
          type: integer
        version:
          type: string
        timestamp:
          type: string
      additionalProperties: true
    Profile:
      type: object
      description: Wallet profile.
      properties:
        name:
          type: string
          description: Display name (may be empty).
        image_url:
          type: string
          description: Avatar URL.
        twitter:
          type: string
          description: Twitter or X link.
        telegram:
          type: string
          description: Telegram link.
        blockchain:
          type: string
          description: Chain.
        currency:
          type: string
          description: Native currency.
        type:
          type:
          - string
          - 'null'
          description: Wallet type kol, smart or whale.
      additionalProperties: true
    Pagination:
      type: object
      description: Standard pagination object. Depending on the endpoint it appears inside data or next to data at the top level of the response.
      properties:
        limit:
          type:
          - integer
          - 'null'
          description: Requested page size (null means all).
        total:
          type: integer
          description: Total number of items.
        has_more:
          type: boolean
          description: Whether more pages follow.
        next_cursor:
          type:
          - string
          - 'null'
          description: Cursor for the next page (null means end).
      additionalProperties: true
    HoldingsAfter:
      type: object
      description: Holder position right after a trade.
      properties:
        token_amount:
          type: number
        token_amount_peak:
          type: number
        supply_pct:
          type: number
        supply_pct_peak:
          type: number
        bag_pct:
          type: number
        still_holding:
          type: boolean
      additionalProperties: true
  responses:
    BadRequest:
      description: Bad request. Code missing_parameter (a required parameter is missing) or invalid_parameter (a parameter is missing or has an invalid value, for example a chain and wallet type combination that does not exist such as eth with whale).
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    RateLimited:
      description: Code rate_limited. Rate limit exceeded (the plan's requests-per-second limit), wait and retry.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Forbidden:
      description: Code forbidden. API key invalid or credits exhausted.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Code unauthorized. API key missing.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    ApiKeyQuery:
      type: apiKey
      in: query
      name: api_key
      description: Your API key as the api_key query parameter.
    BearerAuth:
      type: http
      scheme: bearer
      description: Your API key as an Authorization Bearer header.
externalDocs:
  description: CabalSpy API documentation
  url: https://docs.cabalspy.xyz/