List positions

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://bump.sh/tie-tech/hub/b2b-api/doc/broker-openapi/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "broker-openapi MCP server": {
    "url": "https://bump.sh/tie-tech/hub/b2b-api/doc/broker-openapi/mcp"
  }
}

Close
GET /trading/accounts/{account_id}/positions

Headers

  • PRE-ACCESS-KEY string Required

    Broker access key identifier.

    Format should match the following pattern: ^[A-Za-z0-9._~-]{1,64}$.

  • PRE-ACCESS-SIGNATURE string Required

    Keyed BLAKE2b-256 signature (hex lowercase, 64 characters).

    Format should match the following pattern: ^[0-9a-f]{64}$.

  • PRE-ACCESS-TIMESTAMP string(date-time) Required

    RFC3339 timestamp with milliseconds (e.g., 2025-10-30T06:00:34.075Z). Must be within clock_skew_tolerance (default 5m) of server time.

Path parameters

  • account_id string Required

    Broker-supplied account identifier; length 1..128; charset [A-Za-z0-9._~-].

    Maximum length is 128. Format should match the following pattern: ^[A-Za-z0-9._~-]{1,128}$.

Query parameters

  • market_id string
  • event_id string
  • status string

    Filter by position status. OPEN (default) returns only non-zero qty; ALL returns settled/closed positions as well.

    Values are OPEN or ALL. Default value is OPEN.

  • presentation string

    Presentation mode for positions.

    • dual: returns separate yes_qty and no_qty.
    • net: returns a single net quantity (yes_qty - no_qty).

    Values are dual or net. Default value is net.

  • cursor string
  • limit integer

    Minimum value is 1, maximum value is 100. Default value is 50.

Responses

  • 200 application/json

    Position list

    One of:
  • 400 application/json

    Validation / semantic error

    Hide response attributes Show response attributes object
    • error_code string Required
    • message string Required
    • details object

      Additional properties are allowed.

  • 503 application/json

    Backpressure / temporary unavailability

    Hide response attributes Show response attributes object
    • error_code string Required
    • message string Required
    • details object

      Additional properties are allowed.

GET /trading/accounts/{account_id}/positions
curl \
 --request GET 'https://api.example.com/v1/trading/accounts/{account_id}/positions' \
 --header "PRE-ACCESS-KEY: string" \
 --header "PRE-ACCESS-SIGNATURE: string" \
 --header "PRE-ACCESS-TIMESTAMP: 2026-05-04T09:42:00Z"
Response examples (200)
{
  "items": [
    {
      "account_id": "string",
      "market_id": "string",
      "yes_qty": {
        "units": 42,
        "nanos": 42
      },
      "no_qty": {
        "units": 42,
        "nanos": 42
      },
      "yes_reserved": {
        "units": 42,
        "nanos": 42
      },
      "no_reserved": {
        "units": 42,
        "nanos": 42
      },
      "realized_pnl": {
        "units": 42,
        "nanos": 42
      },
      "fees_paid": {
        "units": 42,
        "nanos": 42
      },
      "last_update_wall_time_ns": 42,
      "last_update_engine_seq": 42
    }
  ],
  "next_cursor": "string"
}
{
  "items": [
    {
      "account_id": "string",
      "market_id": "string",
      "qty": {
        "units": 42,
        "nanos": 42
      },
      "yes_reserved": {
        "units": 42,
        "nanos": 42
      },
      "no_reserved": {
        "units": 42,
        "nanos": 42
      },
      "realized_pnl": {
        "units": 42,
        "nanos": 42
      },
      "fees_paid": {
        "units": 42,
        "nanos": 42
      },
      "last_update_wall_time_ns": 42,
      "last_update_engine_seq": 42
    }
  ],
  "next_cursor": "string"
}
Response examples (400)
{
  "error_code": "string",
  "message": "string",
  "details": {}
}
Response examples (503)
{
  "error_code": "string",
  "message": "string",
  "details": {}
}