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

# public/get_expirations

> Retrieves all available expiration timestamps for instruments. This method can be used to discover which expiration dates are available for trading, which is useful for finding instruments with specific expiration dates.

Results can be filtered by settlement currency, instrument kind (future or option), and currency pair. The response includes expiration timestamps in milliseconds since the UNIX epoch.

[Try in API console](https://test.deribit.com/api_console?method=%2Fpublic%2Fget_expirations)





## OpenAPI

````yaml /api-reference/coinbase-deribit-app-api/adv-starbase-openapi.json get /public/get_expirations
openapi: 3.0.0
info:
  description: Coinbase Retail Advanced Trade API for derivatives trading.
  title: Coinbase Retail Advanced Trade (Deribit) API
  version: 2.1.1
servers:
  - url: https://drb.coinbase.com/api/v2
security: []
tags:
  - description: Can only be used over websockets.
    name: WebSocket Only
  - description: Public methods can be used without authentication.
    name: Public
  - description: >-
      <p>Private methods require authentication. All requests must include a
      valid OAuth2 token.</p>

      <p>A token can be requested using the <a
      href="#public-auth">/public/auth</a> method.</p>

      <p>When using the websockets protocol, the token must be included as a
      parameter <code>access_token</code> in the message. When using REST (HTTP
      GET), the token may also be passed in the <code>Authorization</code>
      header.</p>
    name: Private
  - name: Authentication
  - name: Session Management
  - description: >-
      Subscription works as [notifications](#notifications), so users will
      automatically (after subscribing) receive messages from the server.
      Overview for each channel response format is described in
      [subscriptions](#subscriptions) section.
    name: Subscription Management
  - name: Account Management
  - name: Trading
  - name: Market Data
paths:
  /public/get_expirations:
    get:
      tags:
        - Market Data
        - Public
      description: >+
        Retrieves all available expiration timestamps for instruments. This
        method can be used to discover which expiration dates are available for
        trading, which is useful for finding instruments with specific
        expiration dates.


        Results can be filtered by settlement currency, instrument kind (future
        or option), and currency pair. The response includes expiration
        timestamps in milliseconds since the UNIX epoch.


        [Try in API
        console](https://test.deribit.com/api_console?method=%2Fpublic%2Fget_expirations)

      parameters:
        - description: >-
            The currency symbol or `"any"` for all or '"grouped"' for all
            grouped by currency
          in: query
          name: currency
          required: true
          schema:
            $ref: '#/components/schemas/settlement_currency_with_any_and_grouped'
        - description: Instrument kind, `"future"` or `"option"` or `"any"`
          in: query
          name: kind
          required: true
          schema:
            $ref: '#/components/schemas/kind_future_or_option_with_any'
        - description: The currency pair symbol
          in: query
          name: currency_pair
          required: false
          schema:
            $ref: '#/components/schemas/index_name'
      requestBody:
        content:
          application/json:
            examples:
              request:
                description: JSON-RPC Request Example
                value:
                  id: 1
                  jsonrpc: '2.0'
                  method: public/get_expirations
                  params:
                    currency: any
                    kind: any
        description: JSON-RPC request body
      responses:
        '200':
          $ref: '#/components/responses/PublicGetExpirationsResponse'
components:
  schemas:
    settlement_currency_with_any_and_grouped:
      description: >-
        Currency name or `"any"` if don't care or `"grouped"` if grouped by
        currencies
      enum:
        - BTC
        - ETH
        - USDC
        - USDT
        - any
        - grouped
      type: string
    kind_future_or_option_with_any:
      description: 'Instrument kind: `"future"`, `"option"` or `"any"` for all'
      enum:
        - future
        - option
        - any
      type: string
    index_name:
      description: Index identifier, matches (base) cryptocurrency with quote currency
      enum:
        - btc_usd
        - eth_usd
        - ada_usdc
        - algo_usdc
        - avax_usdc
        - bch_usdc
        - bnb_usdc
        - btc_usdc
        - btcdvol_usdc
        - buidl_usdc
        - doge_usdc
        - dot_usdc
        - eurr_usdc
        - eth_usdc
        - ethdvol_usdc
        - link_usdc
        - ltc_usdc
        - near_usdc
        - paxg_usdc
        - shib_usdc
        - sol_usdc
        - steth_usdc
        - ton_usdc
        - trump_usdc
        - trx_usdc
        - uni_usdc
        - usde_usdc
        - usyc_usdc
        - xrp_usdc
        - btc_usdt
        - eth_usdt
        - eurr_usdt
        - sol_usdt
        - steth_usdt
        - usdc_usdt
        - usde_usdt
        - btc_eurr
        - btc_usde
        - btc_usyc
        - eth_btc
        - eth_eurr
        - eth_usde
        - eth_usyc
        - steth_eth
        - paxg_btc
        - drbfix-btc_usdc
        - drbfix-eth_usdc
      type: string
    PublicGetExpirationsResponse:
      properties:
        id:
          description: The id that was sent in the request
          type: integer
        jsonrpc:
          description: The JSON-RPC version (2.0)
          enum:
            - '2.0'
          type: string
        result:
          items:
            $ref: '#/components/schemas/expirations'
          type: array
      required:
        - jsonrpc
        - result
      type: object
    expirations:
      description: >-
        A map where each key is valid currency (e.g. btc, eth, usdc), and the
        value is a list of expirations or a map where each key is a valid kind
        (future or options) and value is a list of expirations from every
        instrument
      properties:
        currency:
          $ref: '#/components/schemas/currency_with_any_and_grouped'
        kind:
          $ref: '#/components/schemas/kind_future_or_option_with_any'
      type: object
    currency_with_any_and_grouped:
      description: >-
        Currency name or `"any"` if don't care or `"grouped"` if grouped by
        currencies
      enum:
        - BTC
        - ETH
        - USDC
        - SOL
        - USDT
        - EURR
        - XRP
        - STETH
        - USYC
        - PAXG
        - BNB
        - USDE
        - any
        - grouped
      type: string
  responses:
    PublicGetExpirationsResponse:
      content:
        application/json:
          examples:
            response:
              description: Response example
              value:
                jsonrpc: '2.0'
                result:
                  future:
                    - 21SEP24
                    - 22SEP24
                    - PERPETUAL
                  option:
                    - 21SEP24
                    - 22SEP24
                    - 23SEP24
          schema:
            $ref: '#/components/schemas/PublicGetExpirationsResponse'
      description: Success response

````