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

# Account attribute updates

> > **Endpoint:** `wss://api.testnet.arcus.xyz/v1/ws` — one socket multiplexes every channel and RPC request. Click **Connect**, then send the example subscribe message below to start receiving data.

Per-account attribute state, discriminated by entry `type`. `type: "leverage"` entries carry effective leverage per market. `type: "feeTier"` entries carry account-level fee tier state. Snapshot returns one leverage entry per market plus, when available, one fee tier entry. Streaming delivers one entry for each changed attribute.




## AsyncAPI

````yaml api-reference/asyncapi.yaml accountAttributeUpdates
id: accountAttributeUpdates
title: Account attribute updates
description: >
  > **Endpoint:** `wss://api.testnet.arcus.xyz/v1/ws` — one socket multiplexes
  every channel and RPC request. Click **Connect**, then send the example
  subscribe message below to start receiving data.


  Per-account attribute state, discriminated by entry `type`. `type: "leverage"`
  entries carry effective leverage per market. `type: "feeTier"` entries carry
  account-level fee tier state. Snapshot returns one leverage entry per market
  plus, when available, one fee tier entry. Streaming delivers one entry for
  each changed attribute.
servers:
  - id: testnet
    protocol: wss
    host: api.testnet.arcus.xyz
    bindings: []
    variables: []
  - id: mainnet
    protocol: wss
    host: api.arcus.xyz
    bindings: []
    variables: []
address: /v1/ws?channel=accountAttributeUpdates
parameters: []
bindings: []
operations:
  - &ref_3
    id: subscribeAccountAttributes
    title: Subscribe account attributes
    type: receive
    messages:
      - &ref_5
        id: subscribe
        contentType: application/json
        payload:
          - name: Subscribe to an account channel
            type: object
            properties:
              - name: type
                type: string
                description: subscribe
                required: true
              - name: channel
                type: string
                enumValues:
                  - account
                  - positions
                  - userFills
                  - orders
                  - funding
                  - accountAttributeUpdates
                required: true
              - name: id
                type: string
                description: Master Ethereum address (0x-prefixed) or core account id.
                required: true
              - name: snapshot
                type: boolean
                description: >-
                  When false, suppress the initial state snapshot on subscribe
                  and stream only live updates (e.g. userFills, orders).
                  Defaults to true.
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          required:
            - type
            - channel
            - id
          properties:
            type:
              type: string
              const: subscribe
              x-parser-schema-id: <anonymous-schema-111>
            channel:
              type: string
              enum:
                - account
                - positions
                - userFills
                - orders
                - funding
                - accountAttributeUpdates
              x-parser-schema-id: <anonymous-schema-112>
            id:
              type: string
              description: Master Ethereum address (0x-prefixed) or core account id.
              example: 0xAbCd...1234
              x-parser-schema-id: <anonymous-schema-113>
            snapshot:
              type: boolean
              description: >-
                When false, suppress the initial state snapshot on subscribe and
                stream only live updates (e.g. userFills, orders). Defaults to
                true.
              default: true
              x-parser-schema-id: <anonymous-schema-114>
          x-parser-schema-id: SubscribeByAddressPayload
        title: Subscribe to an account channel
        example: |-
          {
            "type": "subscribe",
            "channel": "account",
            "id": "0xAbCd...1234"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: subscribe
    bindings: []
    extensions: &ref_2
      - id: x-parser-unique-object-id
        value: accountAttributeUpdates
  - &ref_4
    id: receiveAccountAttributes
    title: Receive account attributes
    type: send
    messages:
      - &ref_6
        id: snapshot
        contentType: application/json
        payload:
          - allOf: &ref_0
              - type: object
                description: Common envelope for all server-pushed channel messages.
                required:
                  - type
                  - channel
                properties:
                  type:
                    type: string
                    enum:
                      - subscribed
                      - channel_data
                    description: >-
                      `subscribed` for the initial snapshot; `channel_data` for
                      updates.
                    x-parser-schema-id: <anonymous-schema-5>
                  channel:
                    type: string
                    description: Channel name.
                    x-parser-schema-id: <anonymous-schema-6>
                  id:
                    type: string
                    description: >-
                      Channel id (market or address). Absent for global
                      channels.
                    x-parser-schema-id: <anonymous-schema-7>
                  contents:
                    type: object
                    additionalProperties: true
                    description: Channel-specific payload. Schema varies by channel.
                    properties: {}
                    x-parser-schema-id: <anonymous-schema-8>
                x-parser-schema-id: ChannelDataEnvelope
              - type: object
                properties:
                  contents:
                    type: object
                    required:
                      - isSnapshot
                      - entries
                    properties:
                      isSnapshot:
                        type: boolean
                        description: >-
                          True for subscribe-time snapshots; false for streaming
                          deltas.
                        x-parser-schema-id: <anonymous-schema-150>
                      entries:
                        type: array
                        items:
                          oneOf:
                            - type: object
                              required:
                                - type
                                - marketId
                                - marketDisplayName
                                - leverage
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - leverage
                                  description: >-
                                    Discriminator for per-market leverage
                                    entries.
                                  x-parser-schema-id: <anonymous-schema-152>
                                marketId:
                                  type: integer
                                  description: >-
                                    Market identifier. BTC-USD is `0` and is
                                    always present.
                                  x-parser-schema-id: <anonymous-schema-153>
                                marketDisplayName:
                                  type: string
                                  example: BTC-USD
                                  x-parser-schema-id: <anonymous-schema-154>
                                leverage:
                                  type: integer
                                  minimum: 1
                                  description: >-
                                    Effective leverage (user override or market
                                    default).
                                  x-parser-schema-id: <anonymous-schema-155>
                              x-parser-schema-id: AccountAttributesLeverageEntry
                            - type: object
                              required:
                                - type
                                - feeTierLevel
                                - makerFeeBps
                                - takerFeeBps
                              properties:
                                type:
                                  type: string
                                  enum:
                                    - feeTier
                                  description: >-
                                    Discriminator for account-level fee tier
                                    entries.
                                  x-parser-schema-id: <anonymous-schema-156>
                                feeTierLevel:
                                  type: integer
                                  minimum: 0
                                  description: >
                                    Tier level index (0=Base, 1=Bronze,
                                    2=Silver, 3=Gold, 4=Platinum, 5=VIP, 6=Max).
                                    Base tier is `0` and is always present.
                                  x-parser-schema-id: <anonymous-schema-157>
                                makerFeeBps:
                                  type: integer
                                  format: int32
                                  description: >-
                                    Maker fee rate in ppm — parts-per-million of
                                    notional (e.g. 200 = 0.02% = 2 bps).
                                  x-parser-schema-id: <anonymous-schema-158>
                                takerFeeBps:
                                  type: integer
                                  format: int32
                                  description: >-
                                    Taker fee rate in ppm — parts-per-million of
                                    notional (e.g. 500 = 0.05% = 5 bps).
                                  x-parser-schema-id: <anonymous-schema-159>
                              x-parser-schema-id: AccountAttributesFeeTierEntry
                          discriminator: type
                          x-parser-schema-id: AccountAttributesEntry
                        x-parser-schema-id: <anonymous-schema-151>
                    x-parser-schema-id: <anonymous-schema-149>
                x-parser-schema-id: <anonymous-schema-148>
            x-parser-schema-id: AccountAttributesUpdatePayload
            name: Account Attributes Snapshot
            description: >-
              One leverage entry per market plus, when available, one fee tier
              entry. Sent once on subscribe.
        headers: []
        jsonPayloadSchema: &ref_1
          allOf: *ref_0
          x-parser-schema-id: AccountAttributesUpdatePayload
        title: Account Attributes Snapshot
        description: >-
          One leverage entry per market plus, when available, one fee tier
          entry. Sent once on subscribe.
        example: '{}'
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: snapshot
      - &ref_7
        id: update
        contentType: application/json
        payload:
          - allOf: *ref_0
            x-parser-schema-id: AccountAttributesUpdatePayload
            name: Account Attributes Update
            description: Single-entry delta keyed by `type`.
        headers: []
        jsonPayloadSchema: *ref_1
        title: Account Attributes Update
        description: Single-entry delta keyed by `type`.
        example: '{}'
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: update
    bindings: []
    extensions: *ref_2
sendOperations:
  - *ref_3
receiveOperations:
  - *ref_4
sendMessages:
  - *ref_5
receiveMessages:
  - *ref_6
  - *ref_7
extensions:
  - id: x-parser-unique-object-id
    value: accountAttributeUpdates
securitySchemes: []

````