Kraken Market Data API

Public market data (no authentication required)

Operations 15

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /instruments List futures instruments · Kraken Get Instruments #
Ask an LLM
“Which futures contracts can I trade?”
“What are the contract specifications for available futures instruments?”
Tell an agent
List all supported futures instruments.
Show metadata for every futures contract.
GET /instruments/status Check futures instrument trading status · Kraken Get Instruments Status #
Ask an LLM
“Is trading paused on any futures instruments right now?”
“Which futures contracts are currently open for trading?”
Tell an agent
Show the trading status of every futures instrument.
Check which futures instruments are paused.
GET /tickers Get tickers for all futures instruments · Kraken Get Tickers #
Ask an LLM
“What are the latest prices across all futures contracts?”
“Can I get every futures ticker in one call?”
Tell an agent
Get the latest ticker for every futures instrument.
Show current prices for all futures contracts.
GET /tickers/{symbol} Get the ticker for one futures instrument · Kraken Get Ticker for Symbol #
Ask an LLM
“What is the latest price of a specific futures contract?”
“Can I get the ticker for just one futures symbol?”
Tell an agent
Get the latest futures ticker for {symbol}.
Show the current price of futures contract {symbol}.
GET /orderbook Get the order book for a futures instrument · Kraken Get Order Book (Futures) #
Ask an LLM
“What does the futures order book look like for a contract?”
“How deep are bids and asks on a futures instrument?”
Tell an agent
Get the futures order book for {symbol}.
Show bids and asks for futures contract {symbol}.
GET /history Get public trade history for a futures instrument · Kraken Get Market History #
Ask an LLM
“What trades recently happened on a futures contract?”
“Can I page futures trade history back from a given time?”
Tell an agent
Show recent public trades for futures contract {symbol}.
List futures trades for {symbol} before {lastTime}.
GET /0/public/Time Get the exchange server time · Kraken Get Server Time #
Ask an LLM
“What time does the Kraken server think it is?”
“How can I sync my client clock with the exchange?”
Tell an agent
Get the current server time.
Check the exchange clock so I can sync my client.
GET /0/public/SystemStatus Check exchange system status · Kraken Get System Status #
Ask an LLM
“Is the exchange online or in maintenance right now?”
“Is trading currently limited to cancel-only or post-only?”
Tell an agent
Check the current exchange system status.
Tell me if the exchange is in maintenance.
GET /0/public/Assets Get info about supported assets · Kraken Get Asset Info #
Ask an LLM
“What precision and collateral value does an asset have?”
“Which assets are supported and what is their status?”
Tell an agent
List all supported assets.
Show asset details for {asset}.
GET /0/public/AssetPairs Get tradable spot pair details · Kraken Get Tradable Asset Pairs #
Ask an LLM
“What is the minimum order size for a trading pair?”
“Which spot pairs can I trade and what are their fee schedules?”
Tell an agent
List all tradable spot pairs.
Show pair details for {pair}.
GET /0/public/Ticker Get spot ticker for trading pairs · Kraken Get Ticker Information #
Ask an LLM
“What are the current bid, ask and 24-hour volume for a spot pair?”
“Can I get high, low and VWAP for several pairs at once?”
Tell an agent
Get the spot ticker for {pair}.
Show last price and 24h volume for all spot pairs.
GET /0/public/OHLC Get OHLC candles for a spot pair · Kraken Get OHLC Data #
Ask an LLM
“How do I get candlestick data for a spot trading pair?”
“Which candle intervals are supported for spot OHLC data?”
Tell an agent
Get OHLC candles for {pair}.
Get {interval}-minute candles for {pair} since {since}.
GET /0/public/Depth Get the order book for a spot pair · Kraken Get Order Book #
Ask an LLM
“What are the current bids and asks for a spot pair?”
“Can I limit the spot order book depth to a set number of levels?”
Tell an agent
Get the spot order book for {pair}.
Show the top {count} bids and asks for {pair}.
GET /0/public/Trades Get recent public trades for a spot pair · Kraken Get Recent Trades #
Ask an LLM
“What trades just happened on a spot pair?”
“Can I fetch spot trades since a specific cursor?”
Tell an agent
Show recent public trades for {pair}.
List up to {count} trades on {pair} since {since}.
GET /0/public/Spread Get recent bid/ask spreads for a spot pair · Kraken Get Recent Spreads #
Ask an LLM
“How wide has the bid/ask spread been on a pair lately?”
“Can I see spread snapshots since a given point?”
Tell an agent
Show recent spreads for {pair}.
Get spread snapshots for {pair} since {since}.

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/kraken-market-data-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

kraken-market-data-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Kraken Market Data API
  contact:
    name: Kraken API Support
    url: https://support.kraken.com/
  license:
    name: Kraken Terms of Service
    url: https://www.kraken.com/legal
  x-generated-from: documentation
  x-last-validated: '2026-05-30'
  version: '1.0'
  description: 'Operations tagged Market Data across 2 of this provider''s published API definitions: kraken-futures-rest-openapi.yml, kraken-spot-rest-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://futures.kraken.com/derivatives/api/v3
  description: Kraken Futures production REST endpoint
- url: https://demo-futures.kraken.com/derivatives/api/v3
  description: Kraken Futures demo / sandbox endpoint
- url: https://colo-london.vip.futures.kraken.com/derivatives/api/v3
  description: Kraken Futures colocation endpoint (London VIP)
- url: https://api.kraken.com
  description: Kraken Spot REST production endpoint
- url: https://colo-london.vip-api.kraken.com
  description: Kraken Spot REST colocation endpoint (London VIP)
tags:
- name: Market Data
  description: Public market data (no authentication required)
paths:
  /instruments:
    get:
      operationId: getInstruments
      summary: Kraken Get Instruments
      description: Returns the list of supported instruments and their metadata.
      tags:
      - Market Data
      responses:
        '200':
          description: Instruments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstrumentsResponse'
              examples:
                getInstruments200Example:
                  summary: Default getInstruments 200 response
                  x-microcks-default: true
                  value:
                    result: success
                    serverTime: '2026-05-30T00:00:00Z'
                    error: string
                    instruments: []
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://futures.kraken.com/derivatives/api/v3
      description: Kraken Futures production REST endpoint
    - url: https://demo-futures.kraken.com/derivatives/api/v3
      description: Kraken Futures demo / sandbox endpoint
    - url: https://colo-london.vip.futures.kraken.com/derivatives/api/v3
      description: Kraken Futures colocation endpoint (London VIP)
  /instruments/status:
    get:
      operationId: getInstrumentsStatus
      summary: Kraken Get Instruments Status
      description: Returns instrument trading status (open, paused, etc.).
      tags:
      - Market Data
      responses:
        '200':
          description: Status array
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BaseEnvelope'
              examples:
                getInstrumentsStatus200Example:
                  summary: Default getInstrumentsStatus 200 response
                  x-microcks-default: true
                  value:
                    result: success
                    serverTime: '2026-05-30T00:00:00Z'
                    error: string
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://futures.kraken.com/derivatives/api/v3
      description: Kraken Futures production REST endpoint
    - url: https://demo-futures.kraken.com/derivatives/api/v3
      description: Kraken Futures demo / sandbox endpoint
    - url: https://colo-london.vip.futures.kraken.com/derivatives/api/v3
      description: Kraken Futures colocation endpoint (London VIP)
  /tickers:
    get:
      operationId: getTickers
      summary: Kraken Get Tickers
      description: Returns the latest ticker for every instrument.
      tags:
      - Market Data
      responses:
        '200':
          description: Tickers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TickersResponse'
              examples:
                getTickers200Example:
                  summary: Default getTickers 200 response
                  x-microcks-default: true
                  value:
                    result: success
                    serverTime: '2026-05-30T00:00:00Z'
                    error: string
                    tickers: []
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://futures.kraken.com/derivatives/api/v3
      description: Kraken Futures production REST endpoint
    - url: https://demo-futures.kraken.com/derivatives/api/v3
      description: Kraken Futures demo / sandbox endpoint
    - url: https://colo-london.vip.futures.kraken.com/derivatives/api/v3
      description: Kraken Futures colocation endpoint (London VIP)
  /tickers/{symbol}:
    get:
      operationId: getTickerForSymbol
      summary: Kraken Get Ticker for Symbol
      description: Returns the latest ticker for a single instrument.
      tags:
      - Market Data
      parameters:
      - name: symbol
        in: path
        required: true
        schema:
          type: string
        example: PI_XBTUSD
      responses:
        '200':
          description: Ticker
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BaseEnvelope'
              examples:
                getTickerForSymbol200Example:
                  summary: Default getTickerForSymbol 200 response
                  x-microcks-default: true
                  value:
                    result: success
                    serverTime: '2026-05-30T00:00:00Z'
                    error: string
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://futures.kraken.com/derivatives/api/v3
      description: Kraken Futures production REST endpoint
    - url: https://demo-futures.kraken.com/derivatives/api/v3
      description: Kraken Futures demo / sandbox endpoint
    - url: https://colo-london.vip.futures.kraken.com/derivatives/api/v3
      description: Kraken Futures colocation endpoint (London VIP)
  /orderbook:
    get:
      operationId: getOrderBookFutures
      summary: Kraken Get Order Book (Futures)
      description: Returns the order book for a single instrument.
      tags:
      - Market Data
      parameters:
      - name: symbol
        in: query
        required: true
        schema:
          type: string
        example: PI_XBTUSD
      responses:
        '200':
          description: Order book
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BaseEnvelope'
              examples:
                getOrderBookFutures200Example:
                  summary: Default getOrderBookFutures 200 response
                  x-microcks-default: true
                  value:
                    result: success
                    serverTime: '2026-05-30T00:00:00Z'
                    error: string
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://futures.kraken.com/derivatives/api/v3
      description: Kraken Futures production REST endpoint
    - url: https://demo-futures.kraken.com/derivatives/api/v3
      description: Kraken Futures demo / sandbox endpoint
    - url: https://colo-london.vip.futures.kraken.com/derivatives/api/v3
      description: Kraken Futures colocation endpoint (London VIP)
  /history:
    get:
      operationId: getMarketHistory
      summary: Kraken Get Market History
      description: Returns recent public trade history for an instrument.
      tags:
      - Market Data
      parameters:
      - name: symbol
        in: query
        required: true
        schema:
          type: string
        example: PI_XBTUSD
      - name: lastTime
        in: query
        required: false
        schema:
          type: string
          format: date-time
        example: '2026-05-30T00:00:00Z'
      responses:
        '200':
          description: Market history
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BaseEnvelope'
              examples:
                getMarketHistory200Example:
                  summary: Default getMarketHistory 200 response
                  x-microcks-default: true
                  value:
                    result: success
                    serverTime: '2026-05-30T00:00:00Z'
                    error: string
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://futures.kraken.com/derivatives/api/v3
      description: Kraken Futures production REST endpoint
    - url: https://demo-futures.kraken.com/derivatives/api/v3
      description: Kraken Futures demo / sandbox endpoint
    - url: https://colo-london.vip.futures.kraken.com/derivatives/api/v3
      description: Kraken Futures colocation endpoint (London VIP)
  /0/public/Time:
    get:
      operationId: getServerTime
      summary: Kraken Get Server Time
      description: Returns the server's current Unix and human-readable time. Use to synchronize client clocks.
      tags:
      - Market Data
      responses:
        '200':
          description: Server time
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServerTimeResponse'
              examples:
                getServerTime200Example:
                  summary: Default getServerTime 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
  /0/public/SystemStatus:
    get:
      operationId: getSystemStatus
      summary: Kraken Get System Status
      description: Returns the current system status (online, maintenance, cancel_only, post_only) and the last status change timestamp.
      tags:
      - Market Data
      responses:
        '200':
          description: System status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SystemStatusResponse'
              examples:
                getSystemStatus200Example:
                  summary: Default getSystemStatus 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
  /0/public/Assets:
    get:
      operationId: getAssetInfo
      summary: Kraken Get Asset Info
      description: Returns information about supported assets including precision, display decimals, collateral value, and status.
      tags:
      - Market Data
      parameters:
      - name: asset
        in: query
        description: Comma-delimited list of assets to filter (e.g. XBT,ETH)
        required: false
        schema:
          type: string
        example: XBT
      - name: aclass
        in: query
        description: Asset class (currency, crypto)
        required: false
        schema:
          type: string
        example: string
      responses:
        '200':
          description: Asset info
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetInfoResponse'
              examples:
                getAssetInfo200Example:
                  summary: Default getAssetInfo 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
  /0/public/AssetPairs:
    get:
      operationId: getTradableAssetPairs
      summary: Kraken Get Tradable Asset Pairs
      description: Returns metadata for every tradable currency pair (base, quote, fee schedule, lot decimals, ordermin).
      tags:
      - Market Data
      parameters:
      - name: pair
        in: query
        description: Comma-delimited list of asset pairs (e.g. XBTUSD,ETHUSD)
        required: false
        schema:
          type: string
        example: XBTUSD
      - name: info
        in: query
        description: Info detail level (info, leverage, fees, margin)
        required: false
        schema:
          type: string
          enum:
          - info
          - leverage
          - fees
          - margin
        example: info
      responses:
        '200':
          description: Asset pairs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AssetPairsResponse'
              examples:
                getTradableAssetPairs200Example:
                  summary: Default getTradableAssetPairs 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
  /0/public/Ticker:
    get:
      operationId: getTickerInformation
      summary: Kraken Get Ticker Information
      description: Returns ticker data (ask, bid, last trade, 24h volume, vwap, high, low, opening price) for one or more pairs.
      tags:
      - Market Data
      parameters:
      - name: pair
        in: query
        description: Comma-delimited list of asset pairs
        required: false
        schema:
          type: string
          example: XBTUSD
        example: XBTUSD
      responses:
        '200':
          description: Ticker data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TickerResponse'
              examples:
                getTickerInformation200Example:
                  summary: Default getTickerInformation 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
  /0/public/OHLC:
    get:
      operationId: getOHLCData
      summary: Kraken Get OHLC Data
      description: Returns OHLC (open/high/low/close/volume/count) candles for a pair at a chosen interval, optionally bounded by a since cursor.
      tags:
      - Market Data
      parameters:
      - name: pair
        in: query
        required: true
        schema:
          type: string
          example: XBTUSD
        example: XBTUSD
      - name: interval
        in: query
        required: false
        description: Candle interval in minutes (1, 5, 15, 30, 60, 240, 1440, 10080, 21600)
        schema:
          type: integer
          default: 1
        example: 1
      - name: since
        in: query
        required: false
        description: Return OHLC entries since this timestamp
        schema:
          type: integer
        example: 1
      responses:
        '200':
          description: OHLC candles
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OHLCResponse'
              examples:
                getOHLCData200Example:
                  summary: Default getOHLCData 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
  /0/public/Depth:
    get:
      operationId: getOrderBook
      summary: Kraken Get Order Book
      description: Returns the order book (bids and asks) for a pair to a requested depth.
      tags:
      - Market Data
      parameters:
      - name: pair
        in: query
        required: true
        schema:
          type: string
        example: XBTUSD
      - name: count
        in: query
        required: false
        description: Maximum number of bids/asks (1-500)
        schema:
          type: integer
          default: 100
          minimum: 1
          maximum: 500
        example: 1
      responses:
        '200':
          description: Order book
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderBookResponse'
              examples:
                getOrderBook200Example:
                  summary: Default getOrderBook 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
  /0/public/Trades:
    get:
      operationId: getRecentTrades
      summary: Kraken Get Recent Trades
      description: Returns recent trades for a pair, optionally since a cursor.
      tags:
      - Market Data
      parameters:
      - name: pair
        in: query
        required: true
        schema:
          type: string
        example: XBTUSD
      - name: since
        in: query
        required: false
        schema:
          type: integer
        example: 1
      - name: count
        in: query
        required: false
        description: Maximum number of trades (1-1000)
        schema:
          type: integer
          default: 1000
        example: 1
      responses:
        '200':
          description: Recent trades
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecentTradesResponse'
              examples:
                getRecentTrades200Example:
                  summary: Default getRecentTrades 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
  /0/public/Spread:
    get:
      operationId: getRecentSpreads
      summary: Kraken Get Recent Spreads
      description: Returns recent bid/ask spread snapshots for a pair, optionally since a cursor.
      tags:
      - Market Data
      parameters:
      - name: pair
        in: query
        required: true
        schema:
          type: string
        example: XBTUSD
      - name: since
        in: query
        required: false
        schema:
          type: integer
        example: 1
      responses:
        '200':
          description: Recent spreads
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecentSpreadsResponse'
              examples:
                getRecentSpreads200Example:
                  summary: Default getRecentSpreads 200 response
                  x-microcks-default: true
                  value:
                    error: []
                    result: {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.kraken.com
      description: Kraken Spot REST production endpoint
    - url: https://colo-london.vip-api.kraken.com
      description: Kraken Spot REST colocation endpoint (London VIP)
components:
  schemas:
    InstrumentsResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope'
      - type: object
        properties:
          instruments:
            type: array
            items:
              $ref: '#/components/schemas/Instrument'
            example: []
    TickersResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope'
      - type: object
        properties:
          tickers:
            type: array
            items:
              $ref: '#/components/schemas/Ticker'
            example: []
    BaseEnvelope:
      type: object
      properties:
        result:
          type: string
          enum:
          - success
          - error
          example: success
        serverTime:
          type: string
          format: date-time
          example: '2026-05-30T00:00:00Z'
        error:
          type: string
          example: string
    Ticker:
      type: object
      properties:
        symbol:
          type: string
          example: PI_XBTUSD
        last:
          type: number
          example: 0.01
        lastTime:
          type: string
          format: date-time
          example: '2026-05-30T00:00:00Z'
        lastSize:
          type: number
          example: 0.01
        markPrice:
          type: number
          example: '0.01'
        bid:
          type: number
          example: OQCLML-BW3P3-BUCMWZ
        bidSize:
          type: number
          example: 0.01
        ask:
          type: number
          example: 0.01
        askSize:
          type: number
          example: 0.01
        vol24h:
          type: number
          example: '0.01'
        openInterest:
          type: number
          example: 0.01
        open24h:
          type: number
          example: 0.01
        indexPrice:
          type: number
          example: '0.01'
        fundingRate:
          type: number
          example: 0.01
        fundingRatePrediction:
          type: number
          example: 0.01
        suspended:
          type: boolean
          example: true
        tag:
          type: string
          example: string
        pair:
          type: string
          example: XBTUSD
    Instrument:
      type: object
      properties:
        symbol:
          type: string
          example: PI_XBTUSD
        type:
          type: string
          enum:
          - futures_inverse
          - futures_vanilla
          - flexible_futures
          - perpetual_inverse
          - perpetual_vanilla
          example: futures_inverse
        tradeable:
          type: boolean
          example: true
        underlying:
          type: string
          example: string
        lastTradingTime:
          type: string
          format: date-time
          example: '2026-05-30T00:00:00Z'
        tickSize:
          type: number
          example: 0.01
        contractSize:
          type: number
          example: 0.01
        marginLevels:
          type: array
          items:
            type: object
          example: '0.01'
        fundingRateCoefficient:
          type: number
          example: 0.01
        maxRelativeFundingRate:
          type: number
          example: 0.01
    TickerResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            additionalProperties:
              $ref: '#/components/schemas/Ticker_2'
            example: {}
    AssetPair:
      type: object
      properties:
        altname:
          type: string
          example: string
        wsname:
          type: string
          example: string
        aclass_base:
          type: string
          example: string
        base:
          type: string
          example: string
        aclass_quote:
          type: string
          example: string
        quote:
          type: string
          example: string
        pair_decimals:
          type: integer
          example: XBTUSD
        lot_decimals:
          type: integer
          example: 1
        lot_multiplier:
          type: integer
          example: 1
        leverage_buy:
          type: array
          items:
            type: integer
          example: []
        leverage_sell:
          type: array
          items:
            type: integer
          example: []
        fees:
          type: array
          items:
            type: array
            items:
              type: number
          example: []
        fees_maker:
          type: array
          items:
            type: array
            items:
              type: number
          example: []
        fee_volume_currency:
          type: string
          example: '0.01'
        margin_call:
          type: integer
          example: '0.01'
        margin_stop:
          type: integer
          example: '0.01'
        ordermin:
          type: string
          example: string
        costmin:
          type: string
          example: string
        tick_size:
          type: string
          example: string
        status:
          type: string
          example: string
    OHLCResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            additionalProperties:
              oneOf:
              - type: array
                items:
                  type: array
                  items: {}
              - type: integer
            description: Map of pair → candle array, plus `last` cursor.
            example: {}
    RecentTradesResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            additionalProperties:
              oneOf:
              - type: array
                items:
                  type: array
                  items: {}
              - type: string
            example: {}
    RecentSpreadsResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            additionalProperties:
              oneOf:
              - type: array
                items:
                  type: array
                  items: {}
              - type: integer
            example: {}
    BaseEnvelope_2:
      type: object
      properties:
        error:
          type: array
          items:
            type: string
          description: Array of error strings; empty on success.
          example: []
        result:
          description: Endpoint-specific result object.
          example: string
      required:
      - error
    AssetPairsResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            additionalProperties:
              $ref: '#/components/schemas/AssetPair'
            example: {}
    SystemStatusResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            properties:
              status:
                type: string
                enum:
                - online
                - maintenance
                - cancel_only
                - post_only
                example: online
              timestamp:
                type: string
                format: date-time
                example: '2026-05-30T00:00:00Z'
            example: {}
    AssetInfoResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            additionalProperties:
              $ref: '#/components/schemas/AssetInfo'
            example: {}
    Ticker_2:
      type: object
      properties:
        a:
          type: array
          items:
            type: string
          description: '[price, whole-lot volume, lot volume] ask'
          example: []
        b:
          type: array
          items:
            type: string
          description: '[price, whole-lot volume, lot volume] bid'
          example: []
        c:
          type: array
          items:
            type: string
          description: '[price, lot volume] last trade closed'
          example: []
        v:
          type: array
          items:
            type: string
          description: '[today, last 24h] volume'
          example: []
        p:
          type: array
          items:
            type: string
          description: '[today, last 24h] vwap'
          example: []
        t:
          type: array
          items:
            type: integer
          description: '[today, last 24h] number of trades'
          example: []
        l:
          type: array
          items:
            type: string
          description: '[today, last 24h] low'
          example: []
        h:
          type: array
          items:
            type: string
          description: '[today, last 24h] high'
          example: []
        o:
          type: string
          description: Today's opening price
          example: string
    OrderBook:
      type: object
      properties:
        asks:
          type: array
          items:
            type: array
            items: {}
            description: '[price, volume, timestamp]'
          example: []
        bids:
          type: array
          items:
            type: array
            items: {}
          example: []
    AssetInfo:
      type: object
      properties:
        aclass:
          type: string
          example: string
        altname:
          type: string
          example: string
        decimals:
          type: integer
          example: 1
        display_decimals:
          type: integer
          example: 1
        collateral_value:
          type: number
          example: 0.01
        status:
          type: string
          example: string
    ServerTimeResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            properties:
              unixtime:
                type: integer
                example: 1717000000
              rfc1123:
                type: string
                example: Mon, 27 May 26 00:00:00 +0000
            example: {}
    OrderBookResponse:
      allOf:
      - $ref: '#/components/schemas/BaseEnvelope_2'
      - type: object
        properties:
          result:
            type: object
            additionalProperties:
              $ref: '#/components/schemas/OrderBook'
            example: {}
  securitySchemes:
    futures_signature:
      type: apiKey
      in: header
      name: APIKey
      description: 'Kraken Futures signs requests with two headers: `APIKey` (public key) and `Authent` (base64 HMAC-SHA512 over `postData + nonce + endpointPath` using the SHA-256 hash of those values, then HMAC-SHA512 keyed by the base64-decoded secret). A `Nonce` header carries the incrementing nonce.'
    kraken_signature:
      type: apiKey
      in: header
      name: API-Key
      description: 'Kraken signs private REST requests with two headers: `API-Key` (your public API key) and `API-Sign` (HMAC-SHA512 of the URI path plus SHA256(nonce + POST body), keyed by the base64-decoded secret). All private endpoints must include an incrementing `nonce` in the POST body.'
x-refined-from:
- kraken-futures-rest-openapi.yml
- kraken-spot-rest-openapi.yml