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

# Get fast fill quote

> Prices a gasless transfer: the venue fills the destination from its own liquidity and its relayer pays the source gas, so the user signs one message and holds no gas. Only venues with a fast fill lane are asked, and the table is ranked by net output like `POST /bridge/quote`. Every `amountOutAtomic` already has the venue's gas charge and the platform fee taken off. Always a firm quote. `privacy: true` is refused with `fast_fill_not_private`. An empty table carries `emptyReason: "no_fast_fill_route"`.



## OpenAPI

````yaml openapi/openapi.json POST /fastfill/quote
openapi: 3.1.0
info:
  title: BRDG API
  version: 1.0.0
  description: >-
    Quote, build, submit and track cross-chain transfers across every venue BRDG
    aggregates.
servers:
  - url: https://api.brdg.now/v1
security: []
paths:
  /fastfill/quote:
    post:
      tags:
        - fastfill
      summary: Get fast fill quote
      description: >-
        Prices a gasless transfer: the venue fills the destination from its own
        liquidity and its relayer pays the source gas, so the user signs one
        message and holds no gas. Only venues with a fast fill lane are asked,
        and the table is ranked by net output like `POST /bridge/quote`. Every
        `amountOutAtomic` already has the venue's gas charge and the platform
        fee taken off. Always a firm quote. `privacy: true` is refused with
        `fast_fill_not_private`. An empty table carries `emptyReason:
        "no_fast_fill_route"`.
      parameters:
        - name: X-BRDG-Api-Key
          in: header
          required: false
          description: >-
            Optional partner key for server integrators. With it, each wallet is
            rate limited under the partner rather than on the IP of the calling
            server (a call naming no wallet, per the `userIp` in the body),
            bounded by a partner-wide ceiling. Unknown or disabled keys are
            refused with 401. See [rate limits](/api-reference/rate-limits).
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                fromChain:
                  type: string
                  enum:
                    - ethereum
                    - arbitrum
                    - optimism
                    - base
                    - polygon
                    - bnb
                    - avalanche
                    - linea
                    - scroll
                    - zksync
                    - mantle
                    - blast
                    - mode
                    - gnosis
                    - celo
                    - unichain
                    - sonic
                    - ink
                    - plume
                    - worldchain
                    - monad
                    - sei
                    - xlayer
                    - plasma
                    - berachain
                    - hyperevm
                    - stable
                    - robinhood
                    - arc
                    - fantom
                    - zircuit
                    - lisk
                    - soneium
                    - abstract
                    - taiko
                    - metis
                    - moonbeam
                    - aurora
                    - cronos
                    - opbnb
                    - ronin
                    - rootstock
                    - citrea
                    - botanix
                    - katana
                    - solana
                    - fogo
                    - eclipse
                    - bitcoin
                    - litecoin
                    - dogecoin
                    - bitcoincash
                    - zcash
                    - dash
                    - sui
                    - aptos
                    - movement
                    - starknet
                    - tron
                    - ton
                    - stellar
                    - cardano
                    - xrpl
                    - near
                    - algorand
                    - polkadot
                    - assethub
                    - injective
                    - noble
                    - osmosis
                    - cosmoshub
                    - hypercore
                    - lighter
                  description: >-
                    Chain key the transfer starts from. Any chain a fast lane
                    venue serves, including Solana. A `hypercore` source quotes
                    but no venue serves it fast yet.
                toChain:
                  type: string
                  enum:
                    - ethereum
                    - arbitrum
                    - optimism
                    - base
                    - polygon
                    - bnb
                    - avalanche
                    - linea
                    - scroll
                    - zksync
                    - mantle
                    - blast
                    - mode
                    - gnosis
                    - celo
                    - unichain
                    - sonic
                    - ink
                    - plume
                    - worldchain
                    - monad
                    - sei
                    - xlayer
                    - plasma
                    - berachain
                    - hyperevm
                    - stable
                    - robinhood
                    - arc
                    - fantom
                    - zircuit
                    - lisk
                    - soneium
                    - abstract
                    - taiko
                    - metis
                    - moonbeam
                    - aurora
                    - cronos
                    - opbnb
                    - ronin
                    - rootstock
                    - citrea
                    - botanix
                    - katana
                    - solana
                    - fogo
                    - eclipse
                    - bitcoin
                    - litecoin
                    - dogecoin
                    - bitcoincash
                    - zcash
                    - dash
                    - sui
                    - aptos
                    - movement
                    - starknet
                    - tron
                    - ton
                    - stellar
                    - cardano
                    - xrpl
                    - near
                    - algorand
                    - polkadot
                    - assethub
                    - injective
                    - noble
                    - osmosis
                    - cosmoshub
                    - hypercore
                    - lighter
                  description: Chain key the transfer ends on, including `hypercore`.
                fromToken:
                  type: string
                  nullable: true
                  minLength: 1
                  maxLength: 128
                  default: null
                  description: >-
                    Token to send: a symbol such as `USDC`, a token address, or
                    `null` for the native token.
                toToken:
                  type: string
                  nullable: true
                  minLength: 1
                  maxLength: 128
                  default: null
                  description: >-
                    Token to receive: a symbol, a token address, or `null` for
                    the native token.
                amountAtomic:
                  type: string
                  pattern: ^[1-9][0-9]{0,77}$
                  description: Amount in the token's smallest unit, as a string.
                tradeType:
                  type: string
                  enum:
                    - EXACT_IN
                    - MIN_OUT
                    - EXACT_OUT
                  default: EXACT_IN
                slippageBps:
                  type: integer
                  minimum: 0
                  maximum: 5000
                  default: 100
                sender:
                  type: string
                  minLength: 26
                  maxLength: 600
                  description: Wallet the funds leave from. It signs the fast fill message.
                recipient:
                  type: string
                  minLength: 26
                  maxLength: 600
                  description: >-
                    Wallet that receives the funds. Defaults to `sender` when
                    both chains use the same address format.
                refundAddress:
                  type: string
                  minLength: 26
                  maxLength: 600
                privacy:
                  type: boolean
                  default: false
                  description: Must be `false` or omitted. A fast fill is never private.
                userIp:
                  anyOf:
                    - type: string
                      format: ip
                    - type: string
                      format: ip
                  description: >-
                    The end user's IP address, when you call the API from a
                    server on their behalf.
                referralWallet:
                  type: string
                  minLength: 26
                  maxLength: 600
                  description: >-
                    Wallet that receives your referral share. Must be valid on
                    the source chain. Send together with `referralBps`. A fast
                    fill the venue relays is gasless, so no transaction of the
                    user’s can carry the payout: the share is 0 on those rows
                    and `fees.referral` is `null`. A fast fill the user sends
                    pays it normally.
                referralBps:
                  type: integer
                  minimum: 0
                  maximum: 15
                  description: Your referral rate in basis points, from 0 to 15.
                referralCode:
                  type: string
                  description: >-
                    A BRDG referral code your user arrived with, as on `POST
                    /bridge/quote`.
              required:
                - fromChain
                - toChain
                - amountAtomic
            example:
              fromChain: base
              toChain: arbitrum
              fromToken: USDC
              toToken: USDC
              amountAtomic: '10000000'
              sender: '0x58E602386DB134b1F9B1d6d390C11A2B7b486677'
      responses:
        '200':
          description: 'The ranked fast-fill table, `fastFill: true`'
          content:
            application/json:
              schema:
                type: object
                properties:
                  decisionId:
                    type: string
                  quoteSessionId:
                    type: string
                  best:
                    type: object
                    nullable: true
                    properties:
                      venue:
                        type: string
                      executable:
                        type: boolean
                      eligibility:
                        type: string
                        enum:
                          - ok
                          - not_executable
                          - ttl_too_short
                          - unpriced
                          - below_min
                          - above_max
                          - venue_error
                          - implausible
                          - stale
                      amountInAtomic:
                        type: string
                      amountOutAtomic:
                        type: string
                      minAmountOutAtomic:
                        type: string
                      netOutAtomic:
                        type: string
                        nullable: true
                      netInAtomic:
                        type: string
                        nullable: true
                      rankBasis:
                        type: string
                        nullable: true
                        enum:
                          - netOutAtomic
                          - netInAtomic
                          - null
                      rankAtomic:
                        type: string
                        nullable: true
                      fees:
                        type: array
                        items:
                          type: object
                          properties:
                            kind:
                              type: string
                              enum:
                                - PROTOCOL
                                - SOLVER
                                - ORIGIN_GAS
                                - DESTINATION_GAS
                                - APP
                                - VENUE_OTHER
                            tokenAddress:
                              type: string
                              nullable: true
                            decimals:
                              type: integer
                            amountAtomic:
                              type: string
                            amountUsd:
                              type: number
                            deductedFrom:
                              type: string
                              enum:
                                - input
                                - output
                                - gas
                            label:
                              type: string
                          required:
                            - kind
                            - tokenAddress
                            - decimals
                            - amountAtomic
                            - deductedFrom
                      feeBps:
                        type: integer
                      feeAmountAtomic:
                        type: string
                      referralFeeAmountAtomic:
                        type: string
                      netOutAfterFeeAtomic:
                        type: string
                        nullable: true
                      amountInNetAtomic:
                        type: string
                      tierSavedBps:
                        type: integer
                        nullable: true
                      estimatedSeconds:
                        type: integer
                        nullable: true
                      expiresAt:
                        type: integer
                      quoteId:
                        type: string
                      postStep:
                        type: object
                        nullable: true
                        properties:
                          kind:
                            type: string
                            enum:
                              - hypercore_deposit
                          chain:
                            type: string
                            enum:
                              - arbitrum
                          vm:
                            type: string
                            enum:
                              - evm
                        required:
                          - kind
                          - chain
                          - vm
                    required:
                      - venue
                      - executable
                      - eligibility
                      - amountInAtomic
                      - amountOutAtomic
                      - minAmountOutAtomic
                      - netOutAtomic
                      - netInAtomic
                      - rankBasis
                      - rankAtomic
                      - fees
                      - feeBps
                      - feeAmountAtomic
                      - referralFeeAmountAtomic
                      - netOutAfterFeeAtomic
                      - amountInNetAtomic
                      - tierSavedBps
                      - estimatedSeconds
                      - expiresAt
                      - quoteId
                      - postStep
                  bestByPrice:
                    type: string
                    nullable: true
                  bestByTime:
                    type: string
                    nullable: true
                  quotes:
                    type: array
                    items:
                      type: object
                      properties:
                        venue:
                          type: string
                        executable:
                          type: boolean
                        eligibility:
                          type: string
                          enum:
                            - ok
                            - not_executable
                            - ttl_too_short
                            - unpriced
                            - below_min
                            - above_max
                            - venue_error
                            - implausible
                            - stale
                        amountInAtomic:
                          type: string
                        amountOutAtomic:
                          type: string
                        minAmountOutAtomic:
                          type: string
                        netOutAtomic:
                          type: string
                          nullable: true
                        netInAtomic:
                          type: string
                          nullable: true
                        rankBasis:
                          type: string
                          nullable: true
                          enum:
                            - netOutAtomic
                            - netInAtomic
                            - null
                        rankAtomic:
                          type: string
                          nullable: true
                        fees:
                          type: array
                          items:
                            type: object
                            properties:
                              kind:
                                type: string
                                enum:
                                  - PROTOCOL
                                  - SOLVER
                                  - ORIGIN_GAS
                                  - DESTINATION_GAS
                                  - APP
                                  - VENUE_OTHER
                              tokenAddress:
                                type: string
                                nullable: true
                              decimals:
                                type: integer
                              amountAtomic:
                                type: string
                              amountUsd:
                                type: number
                              deductedFrom:
                                type: string
                                enum:
                                  - input
                                  - output
                                  - gas
                              label:
                                type: string
                            required:
                              - kind
                              - tokenAddress
                              - decimals
                              - amountAtomic
                              - deductedFrom
                        feeBps:
                          type: integer
                        feeAmountAtomic:
                          type: string
                        referralFeeAmountAtomic:
                          type: string
                        netOutAfterFeeAtomic:
                          type: string
                          nullable: true
                        amountInNetAtomic:
                          type: string
                        tierSavedBps:
                          type: integer
                          nullable: true
                        estimatedSeconds:
                          type: integer
                          nullable: true
                        expiresAt:
                          type: integer
                        quoteId:
                          type: string
                        postStep:
                          type: object
                          nullable: true
                          properties:
                            kind:
                              type: string
                              enum:
                                - hypercore_deposit
                            chain:
                              type: string
                              enum:
                                - arbitrum
                            vm:
                              type: string
                              enum:
                                - evm
                          required:
                            - kind
                            - chain
                            - vm
                      required:
                        - venue
                        - executable
                        - eligibility
                        - amountInAtomic
                        - amountOutAtomic
                        - minAmountOutAtomic
                        - netOutAtomic
                        - netInAtomic
                        - rankBasis
                        - rankAtomic
                        - fees
                        - feeBps
                        - feeAmountAtomic
                        - referralFeeAmountAtomic
                        - netOutAfterFeeAtomic
                        - amountInNetAtomic
                        - tierSavedBps
                        - estimatedSeconds
                        - expiresAt
                        - quoteId
                        - postStep
                  amountInNetAtomic:
                    type: string
                  rejected:
                    type: array
                    items:
                      type: object
                      properties:
                        venue:
                          type: string
                        code:
                          type: string
                        message:
                          type: string
                      required:
                        - venue
                        - code
                        - message
                  privacy:
                    type: boolean
                  emptyReason:
                    type: string
                    nullable: true
                    enum:
                      - no_private_route
                      - not_priceable
                      - no_fast_fill_route
                      - below_min
                      - above_max
                      - null
                  sizeLimit:
                    type: object
                    nullable: true
                    properties:
                      inputAtomic:
                        type: string
                        nullable: true
                        pattern: ^\d+$
                      outputAtomic:
                        type: string
                        nullable: true
                        pattern: ^\d+$
                    required:
                      - inputAtomic
                      - outputAtomic
                  fastFill:
                    type: boolean
                  fees:
                    type: object
                    properties:
                      platform:
                        type: object
                        nullable: true
                        properties:
                          bps:
                            type: integer
                          amountAtomic:
                            type: string
                          asset:
                            type: string
                            nullable: true
                          tierSavedBps:
                            type: integer
                            nullable: true
                          discount:
                            type: object
                            nullable: true
                            properties:
                              code:
                                type: string
                              pct:
                                type: number
                                enum:
                                  - 10
                              fullBps:
                                type: integer
                              fullAmountAtomic:
                                type: string
                            required:
                              - code
                              - pct
                              - fullBps
                              - fullAmountAtomic
                            description: >-
                              Set when a referral code took 10% off the platform
                              fee, otherwise `null`. `bps` and `amountAtomic`
                              are what is charged; `fullBps` and
                              `fullAmountAtomic` are what would have been
                              charged without the code.
                        required:
                          - bps
                          - amountAtomic
                          - asset
                          - tierSavedBps
                          - discount
                      referral:
                        type: object
                        nullable: true
                        properties:
                          bps:
                            type: integer
                          amountAtomic:
                            type: string
                          asset:
                            type: string
                            nullable: true
                          wallet:
                            type: string
                        required:
                          - bps
                          - amountAtomic
                          - asset
                          - wallet
                    required:
                      - platform
                      - referral
                  splitPlan:
                    type: object
                    properties:
                      splitGroupId:
                        type: string
                      legs:
                        type: array
                        items:
                          type: object
                          properties:
                            venue:
                              type: string
                            decisionId:
                              type: string
                            amountInAtomic:
                              type: string
                            amountInNetAtomic:
                              type: string
                            amountOutAtomic:
                              type: string
                            expiresAt:
                              type: integer
                          required:
                            - venue
                            - decisionId
                            - amountInAtomic
                            - amountInNetAtomic
                            - amountOutAtomic
                            - expiresAt
                        minItems: 2
                      totalInAtomic:
                        type: string
                      improvementBps:
                        type: number
                      maxSignatures:
                        type: integer
                        minimum: 0
                        exclusiveMinimum: true
                      expiresAt:
                        type: integer
                      indicative:
                        type: boolean
                      baseline:
                        type: object
                        properties:
                          venue:
                            type: string
                          netOut:
                            type: number
                        required:
                          - venue
                          - netOut
                      measuredImpactBps:
                        type: number
                      fees:
                        type: object
                        properties:
                          bps:
                            type: integer
                          amountInNetAtomic:
                            type: string
                        required:
                          - bps
                          - amountInNetAtomic
                    required:
                      - splitGroupId
                      - legs
                      - totalInAtomic
                      - improvementBps
                      - maxSignatures
                      - expiresAt
                      - indicative
                      - baseline
                      - measuredImpactBps
                      - fees
                  twapPlan:
                    type: object
                    properties:
                      slices:
                        type: array
                        items:
                          type: object
                          properties:
                            amountInAtomic:
                              type: string
                            amountInNetAtomic:
                              type: string
                            offsetSeconds:
                              type: integer
                          required:
                            - amountInAtomic
                            - amountInNetAtomic
                            - offsetSeconds
                        minItems: 2
                      intervalSeconds:
                        type: integer
                      totalInAtomic:
                        type: string
                      improvementBps:
                        type: number
                      residualImpactBps:
                        type: number
                      sliceImpactBps:
                        type: number
                      referenceVenue:
                        type: string
                      fees:
                        type: object
                        properties:
                          bps:
                            type: integer
                          amountInNetAtomic:
                            type: string
                        required:
                          - bps
                          - amountInNetAtomic
                    required:
                      - slices
                      - intervalSeconds
                      - totalInAtomic
                      - improvementBps
                      - residualImpactBps
                      - sliceImpactBps
                      - referenceVenue
                      - fees
                  planReason:
                    type: string
                    enum:
                      - below_floor
                      - single_venue_best
                      - no_improvement
                  expiresAt:
                    type: integer
                    nullable: true
                  decidedAt:
                    type: integer
                  elapsedMs:
                    type: integer
                required:
                  - decisionId
                  - quoteSessionId
                  - best
                  - bestByPrice
                  - bestByTime
                  - quotes
                  - amountInNetAtomic
                  - rejected
                  - privacy
                  - emptyReason
                  - sizeLimit
                  - fees
                  - expiresAt
                  - decidedAt
                  - elapsedMs
        '400':
          description: >-
            Malformed request, an unknown asset, or a signed transaction that is
            not what we built
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        additionalProperties:
                          nullable: true
                      retryAfterMs:
                        type: integer
                    required:
                      - code
                      - message
                required:
                  - error
        '401':
          description: >-
            An `X-BRDG-Api-Key` header was sent and the key is unknown
            (`invalid_api_key`) or disabled (`api_key_disabled`)
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        additionalProperties:
                          nullable: true
                      retryAfterMs:
                        type: integer
                    required:
                      - code
                      - message
                required:
                  - error
        '404':
          description: No such decision or transfer, or the aggregator is switched off
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        additionalProperties:
                          nullable: true
                      retryAfterMs:
                        type: integer
                    required:
                      - code
                      - message
                required:
                  - error
        '409':
          description: >-
            The decision is indicative, the quote expired or drifted, the venue
            is ineligible, or execution is switched off
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        additionalProperties:
                          nullable: true
                      retryAfterMs:
                        type: integer
                    required:
                      - code
                      - message
                required:
                  - error
        '429':
          description: Rate limited; retry after `retryAfterMs`
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        additionalProperties:
                          nullable: true
                      retryAfterMs:
                        type: integer
                    required:
                      - code
                      - message
                required:
                  - error
        '502':
          description: The venue refused to build, or the broadcast was rejected
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      code:
                        type: string
                      message:
                        type: string
                      details:
                        type: object
                        additionalProperties:
                          nullable: true
                      retryAfterMs:
                        type: integer
                    required:
                      - code
                      - message
                required:
                  - error

````

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