Backpack Account API

Account settings and limits.

Operations 5

GET /api/v1/account Get account #
PATCH /api/v1/account Update account #
GET /api/v1/account/limits/borrow Get max borrow quantity #
GET /api/v1/account/limits/order Get max order quantity #
GET /api/v1/account/limits/withdrawal Get max withdrawal quantity #

Documentation

Specifications

Schemas & Data

Other Resources

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/backpack-account-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

backpack-account-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Backpack Exchange Account API
  description: '# Introduction


    Welcome to the Backpack Exchange API.'
  version: '1.0'
  x-logo:
    url: https://cdn.prod.website-files.com/66830ad123bea7f626bcf58f/68eccb03852237fd98ffad9b_Backpack-Icon-Color.svg
    altText: Backpack Exchange
  contact:
    name: Backpack Exchange Support
    url: https://support.backpack.exchange/
  license:
    name: Proprietary
servers:
- url: https://api.backpack.exchange
tags:
- name: Account
  description: Account settings and limits.
paths:
  /api/v1/account:
    get:
      tags:
      - Account
      summary: Get account
      description: '**Instruction:** `accountQuery`'
      parameters:
      - name: X-API-KEY
        schema:
          type: string
        in: header
        description: API key
        required: true
        deprecated: false
        explode: true
      - name: X-SIGNATURE
        schema:
          type: string
        in: header
        description: Signature of the request
        required: true
        deprecated: false
        explode: true
      - name: X-TIMESTAMP
        schema:
          type: integer
          format: int64
        in: header
        description: Timestamp of the request in milliseconds
        required: true
        deprecated: false
        explode: true
      - name: X-WINDOW
        schema:
          type: integer
          format: uint64
        in: header
        description: Time the request is valid for in milliseconds (default `5000`, maximum `60000`)
        required: false
        deprecated: false
        explode: true
      responses:
        '200':
          description: Success.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/AccountSummary'
        '400':
          description: Bad request.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '500':
          description: Internal server error.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      operationId: get_account
    patch:
      tags:
      - Account
      summary: Update account
      description: 'Update account settings.


        **Instruction:** `accountUpdate`'
      parameters:
      - name: X-API-KEY
        schema:
          type: string
        in: header
        description: API key
        required: true
        deprecated: false
        explode: true
      - name: X-SIGNATURE
        schema:
          type: string
        in: header
        description: Signature of the request
        required: true
        deprecated: false
        explode: true
      - name: X-TIMESTAMP
        schema:
          type: integer
          format: int64
        in: header
        description: Timestamp of the request in milliseconds
        required: true
        deprecated: false
        explode: true
      - name: X-WINDOW
        schema:
          type: integer
          format: uint64
        in: header
        description: Time the request is valid for in milliseconds (default `5000`, maximum `60000`)
        required: false
        deprecated: false
        explode: true
      requestBody:
        content:
          application/json; charset=utf-8:
            schema:
              $ref: '#/components/schemas/UpdateAccountSettingsRequest'
        required: true
      responses:
        '200':
          description: Success.
        '400':
          description: Bad request.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '401':
          description: Unauthorized.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '500':
          description: Internal server error.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '503':
          description: System under maintenance.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      operationId: update_account_settings
  /api/v1/account/limits/borrow:
    get:
      tags:
      - Account
      summary: Get max borrow quantity
      description: 'Retrieves the maxmimum quantity an account can borrow

        for a given asset based on the accounts existing exposure

        and margin requirements


        **Instruction:** `maxBorrowQuantity`'
      parameters:
      - name: X-API-KEY
        schema:
          type: string
        in: header
        description: API key
        required: true
        deprecated: false
        explode: true
      - name: X-SIGNATURE
        schema:
          type: string
        in: header
        description: Signature of the request
        required: true
        deprecated: false
        explode: true
      - name: X-TIMESTAMP
        schema:
          type: integer
          format: int64
        in: header
        description: Timestamp of the request in milliseconds
        required: true
        deprecated: false
        explode: true
      - name: X-WINDOW
        schema:
          type: integer
          format: uint64
        in: header
        description: Time the request is valid for in milliseconds (default `5000`, maximum `60000`)
        required: false
        deprecated: false
        explode: true
      - name: symbol
        schema:
          type: string
        in: query
        description: The asset to borrow.
        required: true
        deprecated: false
        explode: true
      responses:
        '200':
          description: Success.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/MaxBorrowQuantity'
        '400':
          description: Bad request.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '500':
          description: Internal server error.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '503':
          description: Service unavailable.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      operationId: get_max_borrow_quantity
  /api/v1/account/limits/order:
    get:
      tags:
      - Account
      summary: Get max order quantity
      description: 'Retrieves the maxmimum quantity an account can trade

        for a given symbol based on the account''s balances, existing exposure

        and margin requirements.


        **Instruction:** `maxOrderQuantity`'
      parameters:
      - name: X-API-KEY
        schema:
          type: string
        in: header
        description: API key
        required: true
        deprecated: false
        explode: true
      - name: X-SIGNATURE
        schema:
          type: string
        in: header
        description: Signature of the request
        required: true
        deprecated: false
        explode: true
      - name: X-TIMESTAMP
        schema:
          type: integer
          format: int64
        in: header
        description: Timestamp of the request in milliseconds
        required: true
        deprecated: false
        explode: true
      - name: X-WINDOW
        schema:
          type: integer
          format: uint64
        in: header
        description: Time the request is valid for in milliseconds (default `5000`, maximum `60000`)
        required: false
        deprecated: false
        explode: true
      - name: symbol
        schema:
          type: string
        in: query
        description: The market symbol to trade.
        required: true
        deprecated: false
        explode: true
      - name: side
        schema:
          $ref: '#/components/schemas/Side'
        in: query
        description: The side of the order.
        required: true
        deprecated: false
        explode: true
      - name: price
        schema:
          type: string
          format: decimal
        in: query
        description: The limit price of the order. Not included for market orders.
        required: false
        deprecated: false
        explode: true
      - name: reduceOnly
        schema:
          type: boolean
        in: query
        description: Whether the order is reduce only.
        required: false
        deprecated: false
        explode: true
      - name: autoBorrow
        schema:
          type: boolean
        in: query
        description: Whether the order uses auto borrow.
        required: false
        deprecated: false
        explode: true
      - name: autoBorrowRepay
        schema:
          type: boolean
        in: query
        description: Whether the order uses auto borrow repay.
        required: false
        deprecated: false
        explode: true
      - name: autoLendRedeem
        schema:
          type: boolean
        in: query
        description: Whether the order uses auto lend redeem.
        required: false
        deprecated: false
        explode: true
      responses:
        '200':
          description: Success.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/MaxOrderQuantity'
        '400':
          description: Bad request.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '500':
          description: Internal server error.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      operationId: get_max_order_quantity
  /api/v1/account/limits/withdrawal:
    get:
      tags:
      - Account
      summary: Get max withdrawal quantity
      description: 'Retrieves the maxmimum quantity an account can withdraw

        for a given asset based on the accounts existing exposure

        and margin requirements

        The response will include the maximum quantity that can be withdrawn

        and whether the withdrawal is with auto borrow or auto lend redeem

        enabled.


        **Instruction:** `maxWithdrawalQuantity`'
      parameters:
      - name: X-API-KEY
        schema:
          type: string
        in: header
        description: API key
        required: true
        deprecated: false
        explode: true
      - name: X-SIGNATURE
        schema:
          type: string
        in: header
        description: Signature of the request
        required: true
        deprecated: false
        explode: true
      - name: X-TIMESTAMP
        schema:
          type: integer
          format: int64
        in: header
        description: Timestamp of the request in milliseconds
        required: true
        deprecated: false
        explode: true
      - name: X-WINDOW
        schema:
          type: integer
          format: uint64
        in: header
        description: Time the request is valid for in milliseconds (default `5000`, maximum `60000`)
        required: false
        deprecated: false
        explode: true
      - name: symbol
        schema:
          type: string
        in: query
        description: The asset to withdraw.
        required: true
        deprecated: false
        explode: true
      - name: autoBorrow
        schema:
          type: boolean
        in: query
        description: Whether the withdrawal is with auto borrow.
        required: false
        deprecated: false
        explode: true
      - name: autoLendRedeem
        schema:
          type: boolean
        in: query
        description: Whether the withdrawal is with auto lend redeem.
        required: false
        deprecated: false
        explode: true
      responses:
        '200':
          description: Success.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/MaxWithdrawalQuantity'
        '400':
          description: Bad request.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '500':
          description: Internal server error.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      operationId: get_max_withdrawal_quantity
components:
  schemas:
    UpdateAccountSettingsRequest:
      type: object
      title: UpdateAccountSettingsRequest
      properties:
        autoBorrowSettlements:
          type: boolean
          description: 'If true, then tries to borrow during collateral reconciliation.

            Collateral reconciliation is a process in which the system reconciles

            the negative account debt or positive account equity.'
        autoLend:
          type: boolean
          description: Determines if the account should automatically lend.
        autoRepayBorrows:
          type: boolean
          description: 'Determines if the account should automatically repay borrows with

            available balance.'
        leverageLimit:
          type: string
          format: decimal
          description: 'Determines the maximum leverage allowed for the main account or

            subaccount.'
    AccountSummary:
      type: object
      title: AccountSummary
      required:
      - autoBorrowSettlements
      - autoLend
      - autoRealizePnl
      - autoRepayBorrows
      - borrowLimit
      - futuresMakerFee
      - futuresTakerFee
      - leverageLimit
      - limitOrders
      - liquidating
      - positionLimit
      - spotMakerFee
      - spotTakerFee
      - triggerOrders
      properties:
        autoBorrowSettlements:
          type: boolean
          description: If true, then tries to borrow during collateral reconciliation.
        autoLend:
          type: boolean
          description: If true, then tries to automatically lend with available balance.
        autoRealizePnl:
          type: boolean
          description: Determines if the account should have continuous PnL realization.
        autoRepayBorrows:
          type: boolean
          description: 'If true, then tries to automatically repay borrows with available

            balance.'
        borrowLimit:
          type: string
          format: decimal
          description: Borrow limit.
        futuresMakerFee:
          type: string
          format: decimal
          description: Futures maker fee in basis points. Negative if a rebate exists.
        futuresTakerFee:
          type: string
          format: decimal
          description: Futures taker fee in basis points.
        leverageLimit:
          type: string
          format: decimal
          description: Leverage limit of the account.
        limitOrders:
          type: integer
          format: uint64
          description: Number of open limit orders.
        liquidating:
          type: boolean
          description: Whether the account is liquidating.
        positionLimit:
          type: string
          format: decimal
          description: Position limit.
        spotMakerFee:
          type: string
          format: decimal
          description: Spot maker fee in basis points. Negative if a rebate exists.
        spotTakerFee:
          type: string
          format: decimal
          description: Spot taker fee in basis points.
        triggerOrders:
          type: integer
          format: uint64
          description: Number of open trigger orders.
    ApiErrorResponse:
      type: object
      title: ApiErrorResponse
      required:
      - code
      - message
      properties:
        code:
          $ref: '#/components/schemas/ApiErrorCode'
        message:
          type: string
    Side:
      type: string
      enum:
      - Bid
      - Ask
    MaxBorrowQuantity:
      type: object
      title: MaxBorrowQuantity
      required:
      - maxBorrowQuantity
      - symbol
      properties:
        maxBorrowQuantity:
          type: string
          format: decimal
        symbol:
          type: string
    MaxOrderQuantity:
      type: object
      title: MaxOrderQuantity
      required:
      - maxOrderQuantity
      - side
      - symbol
      properties:
        autoBorrow:
          type: boolean
        autoBorrowRepay:
          type: boolean
        autoLendRedeem:
          type: boolean
        maxOrderQuantity:
          type: string
          format: decimal
        price:
          type: string
          format: decimal
        side:
          type: string
        symbol:
          type: string
        reduceOnly:
          type: boolean
    ApiErrorCode:
      type: string
      enum:
      - ACCOUNT_DEACTIVATED
      - ACCOUNT_LIQUIDATING
      - BORROW_LIMIT
      - BORROW_REQUIRES_LEND_REDEEM
      - FORBIDDEN
      - INSUFFICIENT_FUNDS
      - INSUFFICIENT_MARGIN
      - INSUFFICIENT_SUPPLY
      - INVALID_ASSET
      - INVALID_CLIENT_REQUEST
      - INVALID_MARKET
      - INVALID_ORDER
      - INVALID_PRICE
      - INVALID_POSITION_ID
      - INVALID_QUANTITY
      - INVALID_RANGE
      - INVALID_SIGNATURE
      - INVALID_SOURCE
      - INVALID_SYMBOL
      - INVALID_TWO_FACTOR_CODE
      - LEND_LIMIT
      - LEND_REQUIRES_BORROW_REPAY
      - MAINTENANCE
      - MAX_LEVERAGE_REACHED
      - NOT_IMPLEMENTED
      - ORDER_LIMIT
      - POSITION_LIMIT
      - PRECONDITION_FAILED
      - RESOURCE_NOT_FOUND
      - SERVER_ERROR
      - TIMEOUT
      - TOO_EARLY
      - TOO_MANY_REQUESTS
      - TRADING_PAUSED
      - UNAUTHORIZED
    MaxWithdrawalQuantity:
      type: object
      title: MaxWithdrawalQuantity
      required:
      - maxWithdrawalQuantity
      - symbol
      properties:
        autoBorrow:
          type: boolean
        autoLendRedeem:
          type: boolean
        maxWithdrawalQuantity:
          type: string
          format: decimal
        symbol:
          type: string
x-tagGroups:
- name: Public Endpoints
  tags:
  - Assets
  - Borrow Lend Markets
  - Markets
  - System
  - Trades
- name: Authenticated Endpoints
  tags:
  - Account
  - Borrow Lend
  - Capital
  - Order
  - Position
  - RFQ
  - Strategy
- name: Websocket
  tags:
  - Streams