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

# public/get_instruments

> List the tradable instruments



## AsyncAPI

````yaml _generated/asyncapi.yaml public.get_instruments
id: public.get_instruments
title: public/get_instruments
description: JSON-RPC method `public/get_instruments` on the trading socket.
servers:
  - id: trading
    protocol: wss
    host: joyride.exchange
    bindings: []
    variables: []
address: /
parameters: []
bindings: []
operations:
  - &ref_2
    id: public.get_instruments.request
    title: Request
    type: receive
    messages:
      - &ref_4
        id: request
        contentType: application/json
        payload:
          - name: Request params
            type: object
            properties:
              - name: type
                type: string
                description: object
                required: false
              - name: additionalProperties
                type: boolean
                required: false
              - name: description
                type: string
                description: No parameters; send `{}` or omit `params`.
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          additionalProperties: false
          description: No parameters; send `{}` or omit `params`.
          x-parser-schema-id: <anonymous-schema-22>
        title: Request params
        example: |-
          {
            "type": "<string>",
            "additionalProperties": true,
            "description": "<string>"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: request
    bindings: []
    extensions: &ref_1
      - id: x-parser-unique-object-id
        value: public.get_instruments
  - &ref_3
    id: public.get_instruments.reply
    title: Reply
    type: send
    messages:
      - &ref_5
        id: result
        contentType: application/json
        payload:
          - name: Result
            type: object
            properties:
              - name: instruments
                type: array
                required: true
                properties:
                  - name: symbol
                    type: string
                    description: >-
                      `{TICKER}_USDC-{DMMMYY}-{STRIKE}-{C|P}`; the only
                      instrument identifier the API uses.
                    required: true
                  - name: underlying
                    type: string
                    enumValues:
                      - BTC
                      - ETH
                      - SOL
                    required: true
                  - name: strike
                    type: string
                    description: >
                      Signed fixed-point decimal with eight fractional digits,
                      as a string.

                      Strings rather than JSON numbers because values can exceed
                      the exact

                      integer range of an IEEE-754 double.
                    required: true
                  - name: option_type
                    type: string
                    enumValues:
                      - call
                      - put
                    required: true
                  - name: expiry
                    type: integer
                    description: Unix seconds.
                    required: true
                  - name: state
                    type: string
                    description: Lifecycle state; only tradable instruments are listed.
                    required: true
                  - name: tick_size
                    type: string
                    description: >
                      Signed fixed-point decimal with eight fractional digits,
                      as a string.

                      Strings rather than JSON numbers because values can exceed
                      the exact

                      integer range of an IEEE-754 double.
                    required: true
                  - name: min_size
                    type: string
                    description: >
                      Signed fixed-point decimal with eight fractional digits,
                      as a string.

                      Strings rather than JSON numbers because values can exceed
                      the exact

                      integer range of an IEEE-754 double.
                    required: true
                  - name: contract_size
                    type: string
                    description: >
                      Signed fixed-point decimal with eight fractional digits,
                      as a string.

                      Strings rather than JSON numbers because values can exceed
                      the exact

                      integer range of an IEEE-754 double.
                    required: true
        headers: []
        jsonPayloadSchema:
          type: object
          required:
            - instruments
          properties:
            instruments:
              type: array
              items:
                type: object
                required:
                  - symbol
                  - underlying
                  - strike
                  - option_type
                  - expiry
                  - state
                  - tick_size
                  - min_size
                  - contract_size
                properties:
                  symbol:
                    type: string
                    description: >-
                      `{TICKER}_USDC-{DMMMYY}-{STRIKE}-{C|P}`; the only
                      instrument identifier the API uses.
                    x-parser-schema-id: <anonymous-schema-24>
                  underlying:
                    type: string
                    enum:
                      - BTC
                      - ETH
                      - SOL
                    x-parser-schema-id: <anonymous-schema-25>
                  strike: &ref_0
                    type: string
                    description: >
                      Signed fixed-point decimal with eight fractional digits,
                      as a string.

                      Strings rather than JSON numbers because values can exceed
                      the exact

                      integer range of an IEEE-754 double.
                    pattern: ^-?[0-9]+\.[0-9]{8}$
                    x-parser-schema-id: WireDecimal
                  option_type:
                    type: string
                    enum:
                      - call
                      - put
                    x-parser-schema-id: <anonymous-schema-26>
                  expiry:
                    type: integer
                    description: Unix seconds.
                    x-parser-schema-id: <anonymous-schema-27>
                  state:
                    type: string
                    description: Lifecycle state; only tradable instruments are listed.
                    x-parser-schema-id: <anonymous-schema-28>
                  tick_size: *ref_0
                  min_size: *ref_0
                  contract_size: *ref_0
                x-parser-schema-id: PublicInstrument
              x-parser-schema-id: <anonymous-schema-23>
          x-parser-schema-id: InstrumentsResult
        title: Result
        example: |-
          {
            "instruments": [
              {
                "symbol": "BTC_USDC-2MAY26-77000-C",
                "underlying": "BTC",
                "strike": "77000.00000000",
                "option_type": "call",
                "expiry": 1777708800,
                "state": "open",
                "tick_size": "0.01000000",
                "min_size": "0.01000000",
                "contract_size": "1.00000000"
              }
            ]
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: result
      - &ref_6
        id: error
        contentType: application/json
        payload:
          - name: Error
            description: >-
              `1001` for an authentication or session failure, `-32602` for
              malformed params on a `public/*` method.
            type: object
            properties:
              - name: code
                type: integer
                description: >-
                  `1001` not authenticated (bad signature, expired or reused
                  nonce, expired or invalid token, unknown or reassigned
                  account, 60-second idle reap); `-32602` invalid params;
                  `-32700`, `-32600`, `-32601`, `-32603` per JSON-RPC 2.0.
                required: true
              - name: message
                type: string
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: The `error` object of a `public/*` failure.
          required:
            - code
            - message
          properties:
            code:
              type: integer
              description: >-
                `1001` not authenticated (bad signature, expired or reused
                nonce, expired or invalid token, unknown or reassigned account,
                60-second idle reap); `-32602` invalid params; `-32700`,
                `-32600`, `-32601`, `-32603` per JSON-RPC 2.0.
              x-parser-schema-id: <anonymous-schema-3>
            message:
              type: string
              x-parser-schema-id: <anonymous-schema-4>
          x-parser-schema-id: JsonRpcError
        title: Error
        description: >-
          `1001` for an authentication or session failure, `-32602` for
          malformed params on a `public/*` method.
        example: |-
          {
            "code": 1001,
            "message": "unknown account"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: error
    bindings: []
    extensions: *ref_1
sendOperations:
  - *ref_2
receiveOperations:
  - *ref_3
sendMessages:
  - *ref_4
receiveMessages:
  - *ref_5
  - *ref_6
extensions:
  - id: x-parser-unique-object-id
    value: public.get_instruments
securitySchemes: []

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.