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

# Top 20 Orderbook Levels

> Top 20 bid and ask levels for a trading pair.



## AsyncAPI

````yaml kuru-exchange/asyncapi.yaml depth20
id: depth20
title: Top 20 Orderbook Levels
description: Top 20 bid and ask levels for a trading pair.
servers:
  - id: exchange
    protocol: wss
    host: exchange.kuru.io
    bindings: []
    variables: []
address: '{symbol}@depth20'
parameters:
  - id: symbol
    jsonSchema:
      type: string
      description: Trading pair symbol in lowercase (e.g., `mon_usdc`, `ethusdc`)
      enum:
        - mon_usdc
        - ethusdc
        - btcusdc
    description: Trading pair symbol in lowercase (e.g., `mon_usdc`, `ethusdc`)
    type: string
    required: true
    deprecated: false
bindings: []
operations:
  - &ref_1
    id: receiveDepth20
    title: Receive depth20
    description: Top 20 orderbook depth updates
    type: receive
    messages:
      - &ref_2
        id: depthUpdate
        payload:
          - name: Depth Update
            description: Incremental orderbook update
            type: object
            properties:
              - name: e
                type: string
                description: Event type
                enumValues:
                  - depthUpdate
                required: true
              - name: E
                type: integer
                description: >-
                  Block timestamp in milliseconds (T × 1000), sourced from the
                  Monad block header
                required: true
              - name: T
                type: integer
                description: >-
                  Block timestamp in Unix seconds, sourced from the Monad block
                  header
                required: true
              - name: s
                type: string
                description: Symbol
                required: true
              - name: U
                type: integer
                description: >-
                  Block number (first update ID; equals u since each block is
                  one atomic update)
                required: true
              - name: u
                type: integer
                description: Block number (last update ID; equals U)
                required: true
              - name: b
                type: array
                description: Bid levels to update
                required: true
                properties:
                  - name: item
                    type: array
                    description: >-
                      `[price, quantity]` pair — quantity `"0"` means remove the
                      level
                    required: false
                    properties:
                      - name: item
                        type: string
                        required: false
              - name: a
                type: array
                description: Ask levels to update
                required: true
                properties:
                  - name: item
                    type: array
                    description: >-
                      `[price, quantity]` pair — quantity `"0"` means remove the
                      level
                    required: false
                    properties:
                      - name: item
                        type: string
                        required: false
        headers: []
        jsonPayloadSchema:
          type: object
          required:
            - e
            - E
            - T
            - s
            - U
            - u
            - b
            - a
          properties:
            e:
              type: string
              enum:
                - depthUpdate
              description: Event type
              x-parser-schema-id: <anonymous-schema-12>
            E:
              type: integer
              format: int64
              description: >-
                Block timestamp in milliseconds (T × 1000), sourced from the
                Monad block header
              example: 1711000000000
              x-parser-schema-id: <anonymous-schema-13>
            T:
              type: integer
              format: int64
              description: >-
                Block timestamp in Unix seconds, sourced from the Monad block
                header
              example: 1711000000
              x-parser-schema-id: <anonymous-schema-14>
            s:
              type: string
              description: Symbol
              example: MON_USDC
              x-parser-schema-id: <anonymous-schema-15>
            U:
              type: integer
              format: int64
              description: >-
                Block number (first update ID; equals u since each block is one
                atomic update)
              example: 1234567
              x-parser-schema-id: <anonymous-schema-16>
            u:
              type: integer
              format: int64
              description: Block number (last update ID; equals U)
              example: 1234567
              x-parser-schema-id: <anonymous-schema-17>
            b:
              type: array
              description: Bid levels to update
              items: &ref_0
                type: array
                description: >-
                  `[price, quantity]` pair — quantity `"0"` means remove the
                  level
                items:
                  type: string
                  x-parser-schema-id: <anonymous-schema-19>
                minItems: 2
                maxItems: 2
                example:
                  - '100.50'
                  - '10.5'
                x-parser-schema-id: OrderbookLevel
              x-parser-schema-id: <anonymous-schema-18>
            a:
              type: array
              description: Ask levels to update
              items: *ref_0
              x-parser-schema-id: <anonymous-schema-20>
          x-parser-schema-id: DepthUpdate
        title: Depth Update
        description: Incremental orderbook update
        example: |-
          {
            "e": "depthUpdate",
            "E": 1711000000000,
            "T": 1711000000,
            "s": "MON_USDC",
            "U": 1234567,
            "u": 1234567,
            "b": [
              [
                "100.50",
                "10.5"
              ],
              [
                "100.49",
                "5.0"
              ]
            ],
            "a": [
              [
                "100.51",
                "8.2"
              ],
              [
                "100.52",
                "12.0"
              ]
            ]
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: depthUpdate
    bindings: []
    extensions:
      - id: x-parser-unique-object-id
        value: depth20
sendOperations:
  - *ref_1
receiveOperations: []
sendMessages:
  - *ref_2
receiveMessages: []
extensions:
  - id: x-parser-unique-object-id
    value: depth20
securitySchemes: []

````