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

# List a subaccount's RFQs with history

> Returns a paginated, merged view of a subaccount's RFQs, combining currently open RFQs with the archived history of filled, cancelled, and expired ones. Supports filtering by rfq_id, status, and a from/to timestamp window, with page and page_size controls. Each entry includes legs, status, timestamps, cost bounds, and fill percentage.



## OpenAPI

````yaml /openapi.json post /private/get_rfqs
openapi: 3.1.0
info:
  title: Derive v3 API
  version: 0.2.0
  description: JSON-RPC 2.0 methods, served over WebSocket and HTTP POST.
servers:
  - url: https://api.derive.xyz/v3
    description: Production (HTTP POST base)
  - url: https://testnet.api.derive.xyz/v3
    description: Testnet (HTTP POST base)
security: []
tags:
  - name: Subaccounts
    description: >-
      List, inspect, and label subaccounts, portfolios, positions, and
      collateral.
  - name: Session Keys
    description: Register, edit, and list delegated signing keys.
  - name: Account
    description: Wallet-level account information and settings.
  - name: Orderbook
    description: Place, replace, cancel, and query orders, trigger orders, and algos.
  - name: RFQ
    description: 'Request-for-quote: send RFQs, quote, and execute block trades.'
  - name: Vault Shareholders
    description: >-
      Deposit into and withdraw from vaults, and track shares, requests, and
      performance.
  - name: Vault Curators
    description: >-
      Create and operate curated vaults: settle deposit and withdrawal requests,
      and manage vault metadata.
  - name: History
    description: >-
      Per-account historical records: orders, trades, transfers, and
      settlements.
  - name: Market Maker Protection
    description: Configure, read, and reset market-maker protection.
  - name: Transfers & Withdrawals
    description: Move collateral between subaccounts, to other wallets, and on-chain.
  - name: System
    description: Rate limits and transaction lookups.
  - name: Market Data
    description: Instruments, currencies, tickers, and market-wide feeds.
  - name: Referrals
    description: Referral codes and program performance.
  - name: Other
    description: Uncategorized.
paths:
  /private/get_rfqs:
    post:
      tags:
        - RFQ
      summary: List a subaccount's RFQs with history
      description: >-
        Returns a paginated, merged view of a subaccount's RFQs, combining
        currently open RFQs with the archived history of filled, cancelled, and
        expired ones. Supports filtering by rfq_id, status, and a from/to
        timestamp window, with page and page_size controls. Each entry includes
        legs, status, timestamps, cost bounds, and fill percentage.
      operationId: private_get_rfqs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetRfqsRequest'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RFQGetResponse'
        default:
          description: JSON-RPC error (see Error Codes)
components:
  schemas:
    GetRfqsRequest:
      type: object
      required:
        - subaccount_id
      properties:
        from_timestamp:
          default: 0
          type: integer
          format: int64
        page:
          default: 1
          type: integer
          format: uint64
          minimum: 0
        page_size:
          default: 20
          type: integer
          format: uint64
          minimum: 0
        rfq_id:
          default: null
          type:
            - string
            - 'null'
        status:
          default: null
          type:
            - string
            - 'null'
        subaccount_id:
          type: integer
          format: int64
        to_timestamp:
          default: 9223372036854776000
          type: integer
          format: int64
    RFQGetResponse:
      type: object
      required:
        - pagination
        - rfqs
      properties:
        pagination:
          $ref: '#/components/schemas/Pagination'
        rfqs:
          type: array
          items:
            $ref: '#/components/schemas/Rfq'
    Pagination:
      description: Response envelope for paginated RPCs.
      type: object
      required:
        - count
        - num_pages
      properties:
        count:
          type: integer
          format: uint64
          minimum: 0
        num_pages:
          type: integer
          format: uint64
          minimum: 0
    Rfq:
      type: object
      required:
        - ask_total_cost
        - bid_total_cost
        - cancel_reason
        - creation_timestamp
        - filled_pct
        - label
        - last_update_timestamp
        - legs
        - mark_total_cost
        - max_total_cost
        - min_total_cost
        - partial_fill_step
        - rfq_id
        - status
        - subaccount_id
        - total_cost
        - valid_until
        - wallet
      properties:
        ask_total_cost:
          description: >-
            Optional decimal string of the human value (e.g. `"1.5"`), up to 12
            fractional digits, or null; a string or JSON number is accepted
          type:
            - string
            - 'null'
          format: decimal
        bid_total_cost:
          description: >-
            Optional decimal string of the human value (e.g. `"1.5"`), up to 12
            fractional digits, or null; a string or JSON number is accepted
          type:
            - string
            - 'null'
          format: decimal
        cancel_reason:
          $ref: '#/components/schemas/RFQCancelReason'
        counterparties:
          type:
            - array
            - 'null'
          items:
            $ref: '#/components/schemas/Address'
        creation_timestamp:
          type: integer
          format: int64
        filled_direction:
          anyOf:
            - $ref: '#/components/schemas/Direction'
            - type: 'null'
        filled_pct:
          description: >-
            Non-negative decimal string of the human value (e.g. `"1.5"`), up to
            12 fractional digits; a string or JSON number is accepted
          type: string
          format: decimal
        label:
          type: string
        last_update_timestamp:
          type: integer
          format: int64
        legs:
          type: array
          items:
            $ref: '#/components/schemas/LegUnpricedParams'
        mark_total_cost:
          description: >-
            Optional decimal string of the human value (e.g. `"1.5"`), up to 12
            fractional digits, or null; a string or JSON number is accepted
          type:
            - string
            - 'null'
          format: decimal
        max_total_cost:
          description: >-
            Optional decimal string of the human value (e.g. `"1.5"`), up to 12
            fractional digits, or null; a string or JSON number is accepted
          type:
            - string
            - 'null'
          format: decimal
        min_total_cost:
          description: >-
            Optional decimal string of the human value (e.g. `"1.5"`), up to 12
            fractional digits, or null; a string or JSON number is accepted
          type:
            - string
            - 'null'
          format: decimal
        partial_fill_step:
          description: >-
            Non-negative decimal string of the human value (e.g. `"1.5"`), up to
            12 fractional digits; a string or JSON number is accepted
          type: string
          format: decimal
        rfq_id:
          description: UUID v4 string
          type: string
          format: uuid
        status:
          $ref: '#/components/schemas/RFQStatus'
        subaccount_id:
          type: integer
          format: int64
        total_cost:
          description: >-
            Optional decimal string of the human value (e.g. `"1.5"`), up to 12
            fractional digits, or null; a string or JSON number is accepted
          type:
            - string
            - 'null'
          format: decimal
        valid_until:
          type: integer
          format: int64
        wallet:
          $ref: '#/components/schemas/Address'
    RFQCancelReason:
      type: string
      enum:
        - ''
        - user_request
        - insufficient_margin
        - signed_max_fee_too_low
        - mmp_trigger
        - cancel_on_disconnect
        - session_key_deregistered
        - subaccount_withdrawn
        - rfq_no_longer_open
        - compliance
    Address:
      description: 20-byte Ethereum address as a 0x-prefixed lowercase hex string.
      type: string
      maxLength: 42
      minLength: 42
      pattern: ^0x[0-9a-fA-F]{40}$
    Direction:
      type: string
      enum:
        - buy
        - sell
    LegUnpricedParams:
      type: object
      required:
        - amount
        - direction
        - instrument_name
      properties:
        amount:
          description: >-
            Non-negative decimal string of the human value (e.g. `"1.5"`), up to
            12 fractional digits; a string or JSON number is accepted
          type: string
          format: decimal
        direction:
          $ref: '#/components/schemas/Direction'
        instrument_name:
          type: string
    RFQStatus:
      type: string
      enum:
        - open
        - filled
        - cancelled
        - expired

````

## Related topics

- [List a subaccount's quotes with history](/api-reference/rfq/list-a-subaccounts-quotes-with-history.md)
- [Poll RFQs visible to a maker](/api-reference/rfq/poll-rfqs-visible-to-a-maker.md)
- [Poll quotes received on a taker's RFQs](/api-reference/rfq/poll-quotes-received-on-a-takers-rfqs.md)
