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

# Get instruments

> Returns specifications for all currently listed markets and indices.



## OpenAPI

````yaml /openapi/futures-rest.yaml get /instruments
openapi: 3.1.0
info:
  title: Kraken Futures Trading API
  version: v3
  description: Market data and order management endpoints.
servers:
  - url: https://futures.kraken.com/derivatives/api/v3
    description: Kraken Futures
security: []
tags:
  - name: Market Data
  - name: Instrument Details
    description: >-
      - The `/instruments/status` endpoint provides a list of statuses for all
      instruments.

      - The `/instruments/{symbol}/status` endpoint provides the status of a
      single instrument.
  - name: Order Management
  - name: Multi-Collateral
    description: Endpoints pertaining to the multi-collateral (MC) futures markets.
  - name: Account Information
  - name: Assignment Program
  - name: Fee Schedules
    description: >-
      **DEPRECATED** — Effective 2026-06-22, the fee values returned by these

      endpoints no longer reflect the fees actually charged on Futures trades.

      Futures fee calculation has been migrated to a centralised Kraken fee

      service.


      To determine the fee rate applied to your trades, use the Spot

      [`GetTradeVolume`](https://docs.kraken.com/api/docs/rest-api/get-trade-volume)

      endpoint authenticated with a Spot API key.
  - name: General
  - name: Historical Data
  - name: Historical Funding Rates
  - name: Trading Settings
  - name: Subaccounts
  - name: Transfers
  - name: RFQs
paths:
  /instruments:
    get:
      tags:
        - Instrument Details
      summary: Get instruments
      description: Returns specifications for all currently listed markets and indices.
      operationId: getInstruments
      parameters:
        - $ref: '#/components/parameters/ContractTypesQuery'
        - $ref: '#/components/parameters/ExpiredQuery'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                oneOf:
                  - title: Success Response
                    allOf:
                      - type: object
                        properties:
                          instruments:
                            type: array
                            items:
                              $ref: '#/components/schemas/Instrument'
                            description: >-
                              A list containing structures for each available
                              instrument. The list

                              is in no particular order.
                        required:
                          - instruments
                      - $ref: '#/components/schemas/SuccessResponse'
                  - $ref: '#/components/schemas/ErrorResponse'
              examples:
                success:
                  $ref: '#/components/examples/InstrumentsExample'
      security: []
components:
  parameters:
    ContractTypesQuery:
      description: >-
        Comma-separated list of contract types to filter by (e.g. `perpetual`,
        `month_future`, `quarter_future`, `option`).
      name: contractTypes
      in: query
      required: false
      schema:
        type: string
    ExpiredQuery:
      description: If `true`, return only expired instruments
      name: expired
      in: query
      required: false
      schema:
        type: boolean
  schemas:
    Instrument:
      type: object
      properties:
        category:
          type: string
          description: >-
            'Category of the contract: "Layer 1", "Layer 2", "DeFi", or
            "Privacy" (multi-collateral

            contracts only).'
        contractSize:
          type: number
          description: The contract size of the Futures.
        contractValueTradePrecision:
          type: number
          description: >-
            Trade precision for the contract (e.g. trade precision of 2 means
            trades are precise to

            the hundredth decimal place 0.01).
        fundingRateCoefficient:
          type: number
        impactMidSize:
          type: number
          description: >-
            Amount of contract used to calculated the mid price for the mark
            price.
        isin:
          type: string
          description: International Securities Identification Number (ISIN)
        lastTradingTime:
          type: string
          format: date-time
        marginSchedules:
          description: A map containing margin schedules by platform.
          type: object
          additionalProperties:
            $ref: '#/components/schemas/MarginSchedule'
        retailMarginLevels:
          description: Margin levels for retail clients.
          type: array
          items:
            $ref: '#/components/schemas/MarginLevel'
        marginLevels:
          description: Margin levels for professional clients.
          type: array
          items:
            $ref: '#/components/schemas/MarginLevel'
        maxPositionSize:
          type: number
          description: Maximum number of contracts that one can hold in a position
        maxRelativeFundingRate:
          type: number
          description: >-
            Perpetuals only: the absolute value of the maximum permissible
            funding rate
        openingDate:
          format: date-time
          type: string
          description: When the contract was first available for trading
        postOnly:
          type: boolean
          description: True if the instrument is in post-only mode, false otherwise.
        feeScheduleUid:
          type: string
          deprecated: true
          description: Unique identifier of fee schedule associated with the instrument
        symbol:
          description: Market symbol.
          type: string
          example: PF_BTCUSD
        pair:
          description: Asset pair.
          type: string
          example: BTC:USD
        base:
          description: Base asset.
          type: string
          example: BTC
        quote:
          description: Quote asset.
          type: string
          example: USD
        tags:
          type: array
          items:
            type: string
          description: Tag for the contract (currently does not return a value).
        tickSize:
          type: number
          description: Tick size of the contract being traded.
        tradeable:
          type: boolean
          description: True if the instrument can be traded, False otherwise.
        type:
          type: string
          enum:
            - flexible_futures
            - futures_inverse
          description: |-
            The type of the instrument:

            - `flexible_futures` — multi-collateral perpetuals and dated futures
            - `futures_inverse` — inverse perpetuals (BTC-settled)
        underlying:
          type: string
          description: The underlying of the Futures.
        underlyingFuture:
          type: string
          description: 'For options: The underlying future of the option. Otherwise null.'
        tradfi:
          description: True if this is a non-crypto market.
          type: boolean
        mtf:
          type: boolean
          description: True if currently has MTF status.
      required:
        - tradeable
        - symbol
        - tradfi
    SuccessResponse:
      title: Success Response
      allOf:
        - $ref: '#/components/schemas/ResultSuccess'
        - $ref: '#/components/schemas/ServerTime'
    ErrorResponse:
      allOf:
        - title: Errors
          type: object
          properties:
            errors:
              type: array
              items:
                $ref: '#/components/schemas/Error'
            error:
              $ref: '#/components/schemas/Error'
          required:
            - error
        - $ref: '#/components/schemas/ResultError'
        - $ref: '#/components/schemas/ServerTime'
    MarginSchedule:
      type: object
      properties:
        retail:
          type: array
          items:
            $ref: '#/components/schemas/MarginLevel'
        professional:
          type: array
          items:
            $ref: '#/components/schemas/MarginLevel'
      required:
        - retail
        - professional
    MarginLevel:
      type: object
      properties:
        contracts:
          type: integer
          format: int64
          description: >-
            For futures: The lower limit of the number of contracts to which
            this margin level applies


            For indices: Not returned because N/A
          nullable: true
        numNonContractUnits:
          type: number
          format: double
          description: >
            For futures: The lower limit of the number of non-contract units
            (i.e. quote currency

            units for linear futures) to which this margin level applies


            For indices: Not returned because N/A.
          nullable: true
        initialMargin:
          type: number
          description: |-
            For futures: The initial margin requirement for this level

            For indices: Not returned because N/A
        maintenanceMargin:
          type: number
          description: |-
            For futures: The maintenance margin requirement for this level

            For indices: Not returned because N/A
      required:
        - initialMargin
        - maintenanceMargin
    ResultSuccess:
      type: object
      properties:
        result:
          type: string
          enum:
            - success
          example: success
      required:
        - result
    ServerTime:
      type: object
      properties:
        serverTime:
          description: Server time in Coordinated Universal Time (UTC)
          type: string
          format: date-time
          example: '2020-08-27T17:03:33.196Z'
      required:
        - serverTime
    Error:
      type: string
      description: |-
        Error description.

          - `accountInactive`: The Futures account the request refers to is inactive
          - `apiLimitExceeded`: The API limit for the calling IP address has been exceeded
          - `authenticationError`: The request could not be authenticated
          - `insufficientFunds`: The amount requested for transfer is below the amount of funds available
          - `invalidAccount`: The Futures account the transfer request refers to is invalid
          - `invalidAmount`: The amount the transfer request refers to is invalid
          - `invalidArgument`: One or more arguments provided are invalid
          - `invalidUnit`: The unit the transfer request refers to is invalid
          - `Json Parse Error`: The request failed to pass valid JSON as an argument
          - `marketUnavailable`: The market is currently unavailable
          - `nonceBelowThreshold`: The provided nonce is below the threshold
          - `nonceDuplicate`: The provided nonce is a duplicate as it has been used in a previous request
          - `notFound`: The requested information could not be found
          - `requiredArgumentMissing`: One or more required arguments are missing
          - `Server Error`: There was an error processing the request
          - `Unavailable`: The endpoint being called is unavailable
          - `unknownError`: An unknown error has occurred
      enum:
        - accountInactive
        - apiLimitExceeded
        - authenticationError
        - insufficientFunds
        - invalidAccount
        - invalidAmount
        - invalidArgument
        - invalidUnit
        - Json Parse Error
        - marketUnavailable
        - nonceBelowThreshold
        - nonceDuplicate
        - notFound
        - requiredArgumentMissing
        - Server Error
        - Unavailable
        - unknownError
    ResultError:
      type: object
      properties:
        result:
          type: string
          enum:
            - error
          example: error
      required:
        - result
  examples:
    InstrumentsExample:
      value:
        instruments:
          - symbol: PF_XBTUSD
            pair: XBT:USD
            base: XBT
            quote: USD
            type: futures_inverse
            underlying: rr_xbtusd
            tickSize: 0.5
            contractSize: 1
            tradeable: true
            impactMidSize: 1
            maxPositionSize: 1000000
            openingDate: '2022-01-01T00:00:00.000Z'
            marginLevels:
              - contracts: 0
                initialMargin: 0.02
                maintenanceMargin: 0.01
              - contracts: 500000
                initialMargin: 0.04
                maintenanceMargin: 0.02
              - contracts: 1000000
                initialMargin: 0.06
                maintenanceMargin: 0.03
              - contracts: 3000000
                initialMargin: 0.1
                maintenanceMargin: 0.05
            fundingRateCoefficient: 8
            maxRelativeFundingRate: 0.001
            isin: GB00J62YGL67
            contractValueTradePrecision: 0
            postOnly: false
            feeScheduleUid: eef90775-995b-4596-9257-0917f6134766
            retailMarginLevels:
              - contracts: 0
                initialMargin: 0.5
                maintenanceMargin: 0.25
            category: ''
            tags: []
            tradfi: false
            mtf: true
          - symbol: FI_XBTUSD_220930
            pair: XBT:USD
            base: XBT
            quote: USD
            type: futures_inverse
            underlying: rr_xbtusd
            lastTradingTime: '2022-09-30T15:00:00.000Z'
            tickSize: 0.5
            contractSize: 1
            tradeable: true
            impactMidSize: 1
            maxPositionSize: 1000000
            openingDate: '2022-01-01T00:00:00.000Z'
            marginLevels:
              - contracts: 0
                initialMargin: 0.02
                maintenanceMargin: 0.01
              - contracts: 500000
                initialMargin: 0.04
                maintenanceMargin: 0.02
              - contracts: 1000000
                initialMargin: 0.06
                maintenanceMargin: 0.03
              - contracts: 3000000
                initialMargin: 0.1
                maintenanceMargin: 0.05
            isin: GB00JVMLP260
            contractValueTradePrecision: 0
            postOnly: false
            feeScheduleUid: eef90775-995b-4596-9257-0917f6134766
            retailMarginLevels:
              - contracts: 0
                initialMargin: 0.5
                maintenanceMargin: 0.25
            category: ''
            tags: []
            tradfi: false
            mtf: false
          - symbol: PF_XBTUSD
            pair: XBT:USD
            base: XBT
            quote: USD
            type: flexible_futures
            tickSize: 1
            contractSize: 1
            tradeable: true
            impactMidSize: 1
            maxPositionSize: 1000000
            openingDate: '2022-01-01T00:00:00.000Z'
            marginLevels:
              - numNonContractUnits: 0
                initialMargin: 0.02
                maintenanceMargin: 0.01
              - numNonContractUnits: 500000
                initialMargin: 0.04
                maintenanceMargin: 0.02
              - numNonContractUnits: 2000000
                initialMargin: 0.1
                maintenanceMargin: 0.05
              - numNonContractUnits: 5000000
                initialMargin: 0.2
                maintenanceMargin: 0.1
              - numNonContractUnits: 10000000
                initialMargin: 0.3
                maintenanceMargin: 0.15
              - numNonContractUnits: 30000000
                initialMargin: 0.5
                maintenanceMargin: 0.25
            fundingRateCoefficient: 8
            maxRelativeFundingRate: 0.001
            contractValueTradePrecision: 4
            feeScheduleUid: 5b755fea-c5b0-4307-a66e-b392cd5bd931
            postOnly: false
            retailMarginLevels:
              - numNonContractUnits: 0
                initialMargin: 0.02
                maintenanceMargin: 0.01
              - numNonContractUnits: 500000
                initialMargin: 0.04
                maintenanceMargin: 0.02
              - numNonContractUnits: 2000000
                initialMargin: 0.1
                maintenanceMargin: 0.05
              - numNonContractUnits: 5000000
                initialMargin: 0.2
                maintenanceMargin: 0.1
              - numNonContractUnits: 10000000
                initialMargin: 0.3
                maintenanceMargin: 0.15
              - numNonContractUnits: 30000000
                initialMargin: 0.5
                maintenanceMargin: 0.25
            category: Layer 1
            tags: []
            tradfi: false
            mtf: false
        result: success
        serverTime: '2022-06-28T09:29:04.243Z'

````