Rift Quotes API

Best-price quoting across routing venues

OpenAPI Specification

rift-quotes-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Rift Router Orders Quotes API
  version: v3-beta
  description: Rift is a decentralized exchange (DEX) aggregator that routes swap orders across 20+ venues and bridges to guarantee best-price execution with no added fees. This Router API exposes market quoting, market order creation, and health/provider status endpoints. Reconstructed faithfully from the published API reference at https://docs.rift.trade; the API is in beta.
  contact:
    name: Rift
    url: https://rift.trade
  x-apis-json-generated: '2026-07-21'
  x-apis-json-method: generated
  x-apis-json-source: https://docs.rift.trade/api
servers:
- url: https://router-gateway-v3-production.up.railway.app
  description: Production router gateway (v3, beta)
tags:
- name: Quotes
  description: Best-price quoting across routing venues
paths:
  /quote:
    post:
      operationId: getMarketQuote
      summary: Get a market quote
      description: Returns a best-price market quote for swapping one asset into another, routed across Rift's connected venues. The returned quoteId is used to create a market order.
      tags:
      - Quotes
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuoteRequest'
      responses:
        '200':
          description: Quote generated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Quote'
        '400':
          description: Invalid request
        '401':
          description: Unauthorized
        '409':
          description: Conflict
        '413':
          description: Payload too large
        '500':
          description: Internal server error
        '502':
          description: Bad gateway
        '503':
          description: Service unavailable
        '504':
          description: Gateway timeout
components:
  schemas:
    QuoteRequest:
      type: object
      required:
      - from
      - to
      - fromAmount
      properties:
        from:
          type: string
          minLength: 1
          maxLength: 96
          description: Source asset identifier, e.g. "Bitcoin.BTC".
          example: Ethereum.USDC
        to:
          type: string
          minLength: 1
          maxLength: 96
          description: Destination asset identifier, e.g. "Ethereum.USDC".
          example: Bitcoin.BTC
        fromAmount:
          type: string
          minLength: 1
          maxLength: 96
          description: Amount of the source asset to swap.
          example: '100'
        orderType:
          type: string
          enum:
          - market_order
          - market
          default: market_order
        amountFormat:
          type: string
          enum:
          - readable
          - raw
          default: readable
        returnFullRoute:
          type: boolean
          default: true
          description: Include the winning route rows when true.
    Quote:
      type: object
      properties:
        quoteId:
          type: string
          description: Unique quote identifier
        orderType:
          type: string
          enum:
          - market_order
        from:
          type: string
        to:
          type: string
        expiry:
          type: string
          format: date-time
        estimatedOut:
          type: string
          description: Expected output amount
        route:
          type: array
          items:
            type: object
          description: Hop-by-hop execution details.
        amountFormat:
          type: string
          enum:
          - readable
          - raw
        expectedSwapTimeMs:
          type: integer
          minimum: 0
        quoteCandidates:
          type: array
          items: {}
          description: Debug records returned when requested.