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

# Bulk orders

> User's perp and spot bulk-order status updates, including placed and rejected submissions. The nested bulk order carries `asset_type`; spot rows use the same DTO shape with prices and sizes normalized by the spot market's quote/base decimals.



## AsyncAPI

````yaml api-reference/asyncapi.json bulkOrders
id: bulkOrders
title: Bulk orders
description: >-
  User's perp and spot bulk-order status updates, including placed and rejected
  submissions. The nested bulk order carries `asset_type`; spot rows use the
  same DTO shape with prices and sizes normalized by the spot market's
  quote/base decimals.
servers:
  - id: testnet
    protocol: wss
    host: api.testnet.aptoslabs.com/decibel/ws
    bindings: []
    variables: []
address: bulk_orders:{userAddr}
parameters:
  - id: userAddr
    jsonSchema:
      type: string
      description: User wallet address (Aptos address format, e.g. 0x123...)
    description: User wallet address (Aptos address format, e.g. 0x123...)
    type: string
    required: true
    deprecated: false
bindings: []
operations:
  - &ref_1
    id: receivebulkOrders
    title: Receivebulk orders
    description: >-
      Receive updates for user's perp and spot bulk-order status updates,
      including placed and rejected submissions. the nested bulk order carries
      `asset_type`; spot rows use the same dto shape with prices and sizes
      normalized by the spot market's quote/base decimals.
    type: receive
    messages:
      - &ref_2
        id: BulkOrdersMessage
        payload:
          - name: BulkOrdersMessage
            description: >-
              User's perp and spot bulk-order status updates, including placed
              and rejected submissions. The nested bulk order carries
              `asset_type`; spot rows use the same DTO shape with prices and
              sizes normalized by the spot market's quote/base decimals.
            type: object
            properties:
              - name: bulk_order
                type: object
                required: true
                properties:
                  - name: bulk_order
                    type: object
                    required: true
                    properties:
                      - name: ask_prices
                        type: array
                        required: true
                        properties:
                          - name: item
                            type: number
                            required: false
                      - name: ask_sizes
                        type: array
                        required: true
                        properties:
                          - name: item
                            type: number
                            required: false
                      - name: asset_type
                        type: string
                        description: >-
                          Discriminator carried on DTOs that can mix perp and
                          spot rows (markets,

                          orders, trades, bulk orders, bulk order fills, and
                          WebSocket payloads).

                          Also accepted as a query parameter on REST endpoints
                          that can filter to one

                          product.


                          Wire format is lowercase (`"perp"` / `"spot"`) and
                          accepted

                          case-insensitively on the request side via
                          [`impl_case_insensitive_deserialize`].
                        enumValues:
                          - perp
                          - spot
                        required: true
                      - name: bid_prices
                        type: array
                        required: true
                        properties:
                          - name: item
                            type: number
                            required: false
                      - name: bid_sizes
                        type: array
                        required: true
                        properties:
                          - name: item
                            type: number
                            required: false
                      - name: cancellation_reason
                        type: string
                        required: true
                      - name: cancelled_ask_prices
                        type: array
                        required: true
                        properties:
                          - name: item
                            type: number
                            required: false
                      - name: cancelled_ask_sizes
                        type: array
                        required: true
                        properties:
                          - name: item
                            type: number
                            required: false
                      - name: cancelled_bid_prices
                        type: array
                        required: true
                        properties:
                          - name: item
                            type: number
                            required: false
                      - name: cancelled_bid_sizes
                        type: array
                        required: true
                        properties:
                          - name: item
                            type: number
                            required: false
                      - name: event_uid
                        type: string
                        description: >-
                          128-bit unsigned integer represented as a string
                          (event unique identifier)
                        required: true
                      - name: market
                        type: string
                        required: true
                      - name: previous_seq_num
                        type: &ref_0
                          - integer
                          - 'null'
                        required: false
                      - name: sequence_number
                        type: integer
                        required: true
                      - name: transaction_unix_ms
                        type: integer
                        required: true
                      - name: transaction_version
                        type: integer
                        required: true
                      - name: user
                        type: string
                        required: true
                  - name: details
                    type: string
                    required: true
                  - name: status
                    type: string
                    required: true
              - name: topic
                type: string
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          required:
            - topic
            - bulk_order
          properties:
            bulk_order:
              type: object
              required:
                - status
                - details
                - bulk_order
              properties:
                bulk_order:
                  type: object
                  required:
                    - asset_type
                    - market
                    - user
                    - sequence_number
                    - bid_prices
                    - bid_sizes
                    - ask_prices
                    - ask_sizes
                    - cancelled_bid_prices
                    - cancelled_bid_sizes
                    - cancelled_ask_prices
                    - cancelled_ask_sizes
                    - cancellation_reason
                    - transaction_version
                    - transaction_unix_ms
                    - event_uid
                  properties:
                    ask_prices:
                      type: array
                      items:
                        type: number
                        format: double
                        x-parser-schema-id: <anonymous-schema-143>
                      example:
                        - 101
                        - 102
                        - 103
                      x-parser-schema-id: <anonymous-schema-142>
                    ask_sizes:
                      type: array
                      items:
                        type: number
                        format: double
                        x-parser-schema-id: <anonymous-schema-145>
                      example:
                        - 1
                        - 2
                        - 3
                      x-parser-schema-id: <anonymous-schema-144>
                    asset_type:
                      type: string
                      description: >-
                        Discriminator carried on DTOs that can mix perp and spot
                        rows (markets,

                        orders, trades, bulk orders, bulk order fills, and
                        WebSocket payloads).

                        Also accepted as a query parameter on REST endpoints
                        that can filter to one

                        product.


                        Wire format is lowercase (`"perp"` / `"spot"`) and
                        accepted

                        case-insensitively on the request side via
                        [`impl_case_insensitive_deserialize`].
                      enum:
                        - perp
                        - spot
                      x-parser-schema-id: AssetType
                    bid_prices:
                      type: array
                      items:
                        type: number
                        format: double
                        x-parser-schema-id: <anonymous-schema-147>
                      example:
                        - 99
                        - 98
                        - 97
                      x-parser-schema-id: <anonymous-schema-146>
                    bid_sizes:
                      type: array
                      items:
                        type: number
                        format: double
                        x-parser-schema-id: <anonymous-schema-149>
                      example:
                        - 1
                        - 2
                        - 3
                      x-parser-schema-id: <anonymous-schema-148>
                    cancellation_reason:
                      type: string
                      x-parser-schema-id: <anonymous-schema-150>
                    cancelled_ask_prices:
                      type: array
                      items:
                        type: number
                        format: double
                        x-parser-schema-id: <anonymous-schema-152>
                      example: []
                      x-parser-schema-id: <anonymous-schema-151>
                    cancelled_ask_sizes:
                      type: array
                      items:
                        type: number
                        format: double
                        x-parser-schema-id: <anonymous-schema-154>
                      example: []
                      x-parser-schema-id: <anonymous-schema-153>
                    cancelled_bid_prices:
                      type: array
                      items:
                        type: number
                        format: double
                        x-parser-schema-id: <anonymous-schema-156>
                      example:
                        - 100
                      x-parser-schema-id: <anonymous-schema-155>
                    cancelled_bid_sizes:
                      type: array
                      items:
                        type: number
                        format: double
                        x-parser-schema-id: <anonymous-schema-158>
                      example:
                        - 1
                      x-parser-schema-id: <anonymous-schema-157>
                    event_uid:
                      type: string
                      description: >-
                        128-bit unsigned integer represented as a string (event
                        unique identifier)
                      pattern: ^[0-9]+$
                      x-parser-schema-id: u128
                    market:
                      type: string
                      example: 0xmarket123...
                      x-parser-schema-id: <anonymous-schema-159>
                    previous_seq_num:
                      type: *ref_0
                      format: int64
                      example: 12344
                      minimum: 0
                      x-parser-schema-id: <anonymous-schema-160>
                    sequence_number:
                      type: integer
                      format: int64
                      example: 12345
                      minimum: 0
                      x-parser-schema-id: <anonymous-schema-161>
                    transaction_unix_ms:
                      type: integer
                      format: int64
                      example: 1730841600000
                      x-parser-schema-id: <anonymous-schema-162>
                    transaction_version:
                      type: integer
                      format: int64
                      example: 12345
                      minimum: 0
                      x-parser-schema-id: <anonymous-schema-163>
                    user:
                      type: string
                      example: 0x123...
                      x-parser-schema-id: <anonymous-schema-164>
                  x-parser-schema-id: BulkOrderDto
                details:
                  type: string
                  x-parser-schema-id: <anonymous-schema-165>
                status:
                  type: string
                  x-parser-schema-id: <anonymous-schema-166>
              x-parser-schema-id: BulkOrderStatusResponse
            topic:
              type: string
              x-parser-schema-id: <anonymous-schema-167>
          x-parser-schema-id: BulkOrdersResponse
        title: Bulk orders message
        description: >-
          User's perp and spot bulk-order status updates, including placed and
          rejected submissions. The nested bulk order carries `asset_type`; spot
          rows use the same DTO shape with prices and sizes normalized by the
          spot market's quote/base decimals.
        example: |-
          {
            "topic": "bulk_orders:0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
            "bulk_order": {
              "status": "Placed",
              "details": "",
              "bulk_order": {
                "asset_type": "perp",
                "market": "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890",
                "user": "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
                "sequence_number": 100,
                "previous_seq_num": 99,
                "bid_prices": [
                  50000,
                  49900
                ],
                "bid_sizes": [
                  1,
                  2
                ],
                "ask_prices": [
                  50100,
                  50200
                ],
                "ask_sizes": [
                  1.5,
                  2.5
                ],
                "cancelled_bid_prices": [],
                "cancelled_bid_sizes": [],
                "cancelled_ask_prices": [],
                "cancelled_ask_sizes": [],
                "cancellation_reason": "",
                "transaction_version": 12345678,
                "transaction_unix_ms": 1699564800000,
                "event_uid": 1.2345678901234568e+35
              }
            }
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: BulkOrdersMessage
          - id: x-parser-message-name
            value: BulkOrdersMessage
    bindings: []
    extensions:
      - id: x-parser-unique-object-id
        value: bulkOrders
sendOperations:
  - *ref_1
receiveOperations: []
sendMessages:
  - *ref_2
receiveMessages: []
extensions:
  - id: x-parser-unique-object-id
    value: bulkOrders
securitySchemes: []

````