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

# TWAP stop and trigger levels of one spot token

> Where running TWAP flow switches off and waiting TWAP flow switches on, from the latest node state snapshot (refreshed every few minutes; meta.snapshot_id): one row per price level, kind and side. kind=stop: running TWAPs that stop once the price reaches px (a buy from below, a sell from above; HL announced it will pause them there instead and resume when the price comes back). kind=trigger: TWAPs waiting to start once the price moves above / below px (a waiting TWAP's stop applies once it has started). Each row sums the TWAPs' remaining size and their average size per minute (remaining size over the remaining scheduled time; a waiting TWAP: its size over its duration). Aggregated, no wallets. Highest price first; meta.levels counts every level and meta.truncated is true when more than 500 exist. Levels are per spot pair of the token (px and notional in that pair's quote). meta adds the unconditional TWAP flow as for markets.

Pricing: base + per row + node reads. Scope: `analytics:read`.



## OpenAPI

````yaml /data-api/openapi.json get /v1/spot/{token}/twap-levels
openapi: 3.1.0
info:
  title: Hyperdash Data API
  version: v1
  description: >-
    Hyperliquid data from Hyperdash's own nodes. Every response reports the
    credits it cost.
servers:
  - url: https://data.hyperdash.com
security: []
tags:
  - name: Accounts
  - name: Async jobs
  - name: Builders
  - name: Cohorts
  - name: HIP-3 DEXs
  - name: Leaderboards
  - name: Lending
  - name: Liquidations
  - name: Markets
  - name: Network
  - name: Outcomes
  - name: Positions
  - name: Snapshots
  - name: Spot
  - name: Staking
  - name: Traders
paths:
  /v1/spot/{token}/twap-levels:
    get:
      tags:
        - Spot
      summary: TWAP stop and trigger levels of one spot token
      description: >-
        Where running TWAP flow switches off and waiting TWAP flow switches on,
        from the latest node state snapshot (refreshed every few minutes;
        meta.snapshot_id): one row per price level, kind and side. kind=stop:
        running TWAPs that stop once the price reaches px (a buy from below, a
        sell from above; HL announced it will pause them there instead and
        resume when the price comes back). kind=trigger: TWAPs waiting to start
        once the price moves above / below px (a waiting TWAP's stop applies
        once it has started). Each row sums the TWAPs' remaining size and their
        average size per minute (remaining size over the remaining scheduled
        time; a waiting TWAP: its size over its duration). Aggregated, no
        wallets. Highest price first; meta.levels counts every level and
        meta.truncated is true when more than 500 exist. Levels are per spot
        pair of the token (px and notional in that pair's quote). meta adds the
        unconditional TWAP flow as for markets.


        Pricing: base + per row + node reads. Scope: `analytics:read`.
      operationId: getSpotTwapLevels
      parameters:
        - name: token
          in: path
          required: true
          description: Spot token name, e.g. HYPE, PURR.
          schema:
            type: string
            pattern: ^(?![Aa][Ll][Ll]$)[A-Za-z0-9]{1,20}$
        - name: X-Max-Credits
          in: header
          required: false
          description: Refuse (free) if the request could cost more.
          schema:
            type: integer
        - name: X-Credit-Price-Version
          in: header
          required: false
          description: Expected price version; 409 price_changed if it differs.
          schema:
            type: integer
      responses:
        '200':
          description: OK
          headers:
            X-Credits-Charged:
              schema:
                type: integer
            X-Credit-Price-Version:
              schema:
                type: integer
            X-Request-Id:
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                  - has_more
                  - next_cursor
                  - meta
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        px:
                          type: string
                          description: >-
                            Price level (decimal string; may carry extra
                            trailing zeros)
                        kind:
                          type: string
                          description: >-
                            stop (flow switches off here) or trigger (flow
                            switches on here)
                        side:
                          type: string
                          description: buy or sell
                        when:
                          type: string
                          description: >-
                            above or below: the TWAPs act once the price moves
                            above / below px
                        pair:
                          type:
                            - string
                            - 'null'
                          description: Spot pair, e.g. HYPE/USDC (px in its quote)
                        twaps:
                          type: integer
                          description: TWAPs at this level
                        remaining_sz:
                          type: string
                          description: >-
                            Size they still have to trade (base) (decimal
                            string; may carry extra trailing zeros)
                        remaining_notional:
                          type: string
                          description: >-
                            remaining_sz × px (quote) (decimal string; may carry
                            extra trailing zeros)
                        flow_sz_per_min:
                          type: string
                          description: >-
                            Average size per minute they trade (base) (decimal
                            string; may carry extra trailing zeros)
                  has_more:
                    type: boolean
                  next_cursor:
                    type:
                      - string
                      - 'null'
                  meta:
                    type: object
        '400':
          description: Invalid parameter
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '401':
          description: Invalid, expired or revoked key
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '403':
          description: Scope, plan, history or credit limit
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '409':
          description: Price version changed
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '429':
          description: Rate limited (Retry-After)
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
        '503':
          description: Backend at capacity (Retry-After)
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
      security:
        - bearer: []
      x-codeSamples:
        - lang: curl
          source: >-
            curl -H 'Authorization: Bearer $HD_KEY'
            'https://data.hyperdash.com/v1/spot/HYPE/twap-levels'
components:
  schemas:
    Problem:
      type: object
      required:
        - type
        - title
        - status
        - code
        - request_id
      properties:
        type:
          type: string
        title:
          type: string
        status:
          type: integer
        code:
          type: string
        detail:
          type: string
        hint:
          type: string
        request_id:
          type: string
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: hdk_sk_live_v1_… or hdk_sk_test_v1_…

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.