fireblocks Trading (Beta) API

The Trading (Beta) API from fireblocks — 4 operation(s) for trading (beta).

Operations 5

GET /trading/providers Get providers #
POST /trading/quotes Create a quote #
POST /trading/orders Create an order #
GET /trading/orders Get orders #
GET /trading/orders/{orderId} Get order details #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/fireblocks-trading-beta-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

fireblocks-trading-beta-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fireblocks Blockchains and Assets Approval Requests Trading (Beta) Trading (Beta) API
  description: 'Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain.


    - Visit our website for more information: [Fireblocks Website](https://fireblocks.com)

    - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)

    '
  version: 1.8.0
  contact:
    email: developers@fireblocks.com
servers:
- url: https://api.fireblocks.io/v1
  description: Fireblocks Production Environment Base URL
- url: https://sandbox-api.fireblocks.io/v1
  description: Fireblocks Sandbox Environment Base URL
security: []
tags:
- name: Trading (Beta)
paths:
  /trading/providers:
    get:
      operationId: getTradingProviders
      summary: Get providers
      x-rate-limit-category: query
      tags:
      - Trading (Beta)
      parameters:
      - name: pageSize
        in: query
        required: false
        description: Page size for pagination.
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 20
      - name: pageCursor
        in: query
        required: false
        description: Page cursor for pagination.
        schema:
          type: string
      description: 'Retrieve a list of all available external providers supporting trading activities through the platform.


        **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks Trading, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.


        **Endpoint Permission:** Owner, Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.

        '
      responses:
        200:
          description: Providers response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProvidersListResponse'
        401:
          description: Unauthorized. Missing / invalid JWT token in Authorization header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        5XX:
          description: Internal error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
  /trading/quotes:
    post:
      operationId: createQuote
      summary: Create a quote
      x-rate-limit-category: write
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      tags:
      - Trading (Beta)
      description: 'Generate a time-limited quote for asset conversion, providing exchange rate and amount calculations.


        **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks Trading, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.


        **Endpoint Permissions:** Owner, Admin, Non-Signing Admin, Signer, Editor.

        '
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateQuote'
      responses:
        201:
          description: Quote created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuotesResponse'
        404:
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        401:
          description: Unauthorized. Missing / invalid JWT token in Authorization header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        5XX:
          description: Internal error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
  /trading/orders:
    post:
      operationId: createOrder
      summary: Create an order
      x-rate-limit-category: write
      parameters:
      - $ref: '#/components/parameters/X-Idempotency-Key'
      tags:
      - Trading (Beta)
      description: 'Create an order to buy or sell an asset. If no source is given, an external source will be use.


        **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks Trading, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.


        **Endpoint Permissions:** Owner, Admin, Non-Signing Admin, Signer, Editor.

        '
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateOrderRequest'
      responses:
        202:
          description: Order creation response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderDetails'
        404:
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        401:
          description: Unauthorized. Missing / invalid JWT token in Authorization header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        5XX:
          description: Internal error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
    get:
      operationId: getOrders
      summary: Get orders
      x-rate-limit-category: read
      tags:
      - Trading (Beta)
      description: 'Retrieve a paginated list of orders with optional filtering by account, provider, status, and time range.


        **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks Trading, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.


        **Endpoint Permissions:** Owner, Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.

        '
      parameters:
      - name: pageSize
        in: query
        required: true
        description: pageSize for pagination.
        schema:
          type: integer
          minimum: 1
          maximum: 100
      - name: pageCursor
        in: query
        required: false
        schema:
          type: string
          minLength: 1
      - name: order
        in: query
        required: false
        description: ASC / DESC ordering (default DESC)
        schema:
          type: string
          default: DESC
          enum:
          - ASC
          - DESC
      - name: accountId
        in: query
        required: false
        explode: true
        style: form
        description: Filter by accountId.
        schema:
          type: array
          items:
            type: string
            minLength: 1
      - name: providerId
        in: query
        required: false
        explode: true
        style: form
        description: Filter by providerId.
        schema:
          type: array
          items:
            type: string
            minLength: 1
      - name: statuses
        in: query
        required: false
        explode: true
        style: form
        description: Filter by order status.
        schema:
          type: array
          items:
            $ref: '#/components/schemas/OrderStatus'
      - name: startTime
        in: query
        schema:
          type: integer
          minimum: 0
      - name: endTime
        in: query
        schema:
          type: integer
          minimum: 0
      - name: assetConversionType
        in: query
        schema:
          type: string
          enum:
          - DIGITAL_ONLY
          - FIAT
          description: Filter by asset conversion type.
      responses:
        200:
          description: Orders response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetOrdersResponse'
        404:
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        401:
          description: Unauthorized. Missing / invalid JWT token in Authorization header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        5XX:
          description: Internal error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
  /trading/orders/{orderId}:
    get:
      operationId: getOrder
      summary: Get order details
      x-rate-limit-category: read
      tags:
      - Trading (Beta)
      description: 'Retrieve detailed information about a specific order by its ID.


        **Note:** These endpoints are currently in beta and might be subject to changes. If you want to participate and learn more about the Fireblocks Trading, please contact your Fireblocks Customer Success Manager or send an email to CSM@fireblocks.com.


        **Endpoint Permissions:** Owner, Admin, Non-Signing Admin, Signer, Approver, Editor, Viewer.

        '
      parameters:
      - name: orderId
        in: path
        required: true
        description: The ID of the order to fetch.
        schema:
          type: string
          minLength: 1
      responses:
        200:
          description: Order response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderDetails'
        404:
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        401:
          description: Unauthorized. Missing / invalid JWT token in Authorization header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
        5XX:
          description: Internal error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TradingErrorResponse'
components:
  schemas:
    QuoteExecutionWithRequoteRequestDetails:
      allOf:
      - $ref: '#/components/schemas/QuoteExecutionRequestDetails'
      - type: object
        properties:
          reQuote:
            discriminator:
              propertyName: type
              mapping:
                MARKET: '#/components/schemas/MarketRequoteRequestDetails'
                RETRY: '#/components/schemas/RetryRequoteRequestDetails'
            oneOf:
            - $ref: '#/components/schemas/MarketRequoteRequestDetails'
            - $ref: '#/components/schemas/RetryRequoteRequestDetails'
      example:
        type: QUOTE
        quoteId: quote_8f2e4d1a9c5b7e3f
        reQuote:
          type: RETRY
          count: 1
          slippageBps: 50
    OrderSummary:
      type: object
      properties:
        id:
          type: string
        via:
          $ref: '#/components/schemas/AccessType'
        side:
          type: string
          enum:
          - BUY
          - SELL
          description: Side of the order
        baseAmount:
          type: string
        quoteAmount:
          type: string
        baseAssetId:
          type: string
        quoteAssetId:
          type: string
        status:
          $ref: '#/components/schemas/OrderStatus'
        destination:
          $ref: '#/components/schemas/AccountReference'
        source:
          $ref: '#/components/schemas/SettlementSourceAccount'
        createdAt:
          type: string
          format: date-time
      required:
      - id
      - via
      - baseAmount
      - baseAssetId
      - quoteAssetId
      - status
      - destination
      - createdAt
      - side
      example:
        id: ord_5f8e2d9c1a7b4e36
        via:
          type: PROVIDER_ACCOUNT
          providerId: prov_8c3f1a4b2d6e9f7c
          accountId: acc_5e9a2d1c4b7f3e8a
        side: BUY
        baseAmount: '1000.00'
        quoteAmount: '0.02458'
        baseAssetId: USD
        quoteAssetId: BTC
        status: COMPLETED
        destination:
          type: VAULT_ACCOUNT
          accountId: vault_acc_7b2e5d8f1c4a9e3b
        source:
          type: VAULT_ACCOUNT
          accountId: vault_acc_3f7e1d9b2c5a8e4f
        createdAt: '2024-01-15T10:30:00.000Z'
    AccountHolderDetails:
      type: object
      properties:
        name:
          description: Full name of the account holder.
          type: string
        city:
          type: string
        country:
          description: Country code, as specified in ISO 3166-1 alpha-2.
          type: string
        subdivision:
          description: Country administrative subdivision, as specified in ISO 3166-2.
          type: string
        address:
          description: Account holder street address.
          type: string
        postalCode:
          type: string
      required:
      - name
      example:
        name: John Smith
        city: New York
        country: US
        subdivision: NY
        address: 123 Wall Street, Apt 4B
        postalCode: '10005'
    DirectAccessProvider:
      allOf:
      - $ref: '#/components/schemas/BaseProvider'
      - type: object
        properties:
          approved:
            type: boolean
            description: Whether the provider was approved for use
          hasTermsOfService:
            type: boolean
            description: Whether the provider has terms of service
          termsOfServiceUrl:
            type: string
            description: URL to the terms of service document
        required:
        - accountBased
        - hasTermsOfService
      example:
        id: prov_2f8e1d9b4c7a5e3f
        name: DirectTrade Solutions
        logo: https://example.com/logos/directtrade-solutions.png
        accountBased: false
        approved: true
        hasTermsOfService: true
        termsOfServiceUrl: https://directtrade.example.com/terms
    FiatTransfer:
      type: object
      properties:
        type:
          type: string
          enum:
          - FIAT
        amount:
          type: string
          description: The amount of the fiat transfer.
        referenceId:
          type: string
          description: The reference ID for the fiat transfer.
      required:
      - amount
      example:
        type: FIAT
        amount: '750.25'
        referenceId: fiat_ref_2024_003_789
    ExecutionRequestDetails:
      description: Order execution details
      discriminator:
        propertyName: type
        mapping:
          LIMIT: '#/components/schemas/LimitExecutionRequestDetails'
          MARKET: '#/components/schemas/MarketExecutionRequestDetails'
          QUOTE: '#/components/schemas/QuoteExecutionWithRequoteRequestDetails'
      oneOf:
      - $ref: '#/components/schemas/LimitExecutionRequestDetails'
      - $ref: '#/components/schemas/MarketExecutionRequestDetails'
      - $ref: '#/components/schemas/QuoteExecutionWithRequoteRequestDetails'
    ParticipantRelationshipType:
      type: string
      enum:
      - FirstParty
      - SecondParty
      - ThirdParty
      example: FirstParty
    ExecutionStepDetails:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/ExecutionStepType'
        fee:
          $ref: '#/components/schemas/Fee'
      required:
      - type
      example:
        type: MARKET_EXECUTION
        fee:
          feeType: ORDER
          assetId: USD
          amountType: FIXED
          amount: '2.50'
    LimitExecutionRequestDetails:
      allOf:
      - type: object
        properties:
          type:
            type: string
            enum:
            - LIMIT
            description: Order type for limit orders
          timeInForce:
            $ref: '#/components/schemas/TimeInForce'
          limitPrice:
            type: string
            description: Price for limit orders
        required:
        - type
        - timeInForce
        - limitPrice
      - $ref: '#/components/schemas/ExecutionRequestBaseDetails'
      example:
        type: LIMIT
        timeInForce: GTC
        limitPrice: '41000.00'
        baseAssetId: USD
        quoteAssetId: BTC
        side: BUY
        baseAmount: '1000.00'
    RetryRequoteRequestDetails:
      type: object
      properties:
        type:
          type: string
          enum:
          - RETRY
          description: Indicates that the order should be re-quoted if the original quote is expired, trying to match the original quote.
        count:
          type: number
          description: If quote is expired, how many times to re-generate new quotes to try having the order executed as in the original quote.
          minimum: 1
          maximum: 10
        slippageBps:
          type: number
          description: Slippage tolerance in basis points (bps) for quote orders - 1 is 0.01% and 10000 is 100%
          default: 1
          minimum: 1
          maximum: 10000
      required:
      - type
      - count
      example:
        type: RETRY
        count: 1
        slippageBps: 50
    Quote:
      allOf:
      - type: object
        properties:
          via:
            $ref: '#/components/schemas/AccessType'
          id:
            type: string
          type:
            type: string
            enum:
            - COMMITTED
            - INDICATIVE
          quoteAssetId:
            type: string
          baseAssetId:
            type: string
          baseAmount:
            type: string
          quoteAmount:
            type: string
          priceImpact:
            type: number
          quoteMinAmount:
            type: string
          executionSteps:
            type: array
            items:
              $ref: '#/components/schemas/ExecutionStepDetails'
          generalFees:
            type: array
            items:
              $ref: '#/components/schemas/Fee'
          side:
            type: string
            enum:
            - BUY
            - SELL
            description: Side of the order
        required:
        - via
        - id
        - baseAssetId
        - quoteAssetId
        - baseAmount
        - quoteAmount
        - type
        - side
      - discriminator:
          propertyName: type
          mapping:
            COMMITTED: '#/components/schemas/CommittedQuoteType'
            INDICATIVE: '#/components/schemas/IndicativeQuoteType'
        oneOf:
        - $ref: '#/components/schemas/CommittedQuoteType'
        - $ref: '#/components/schemas/IndicativeQuoteType'
    PeerType:
      type: string
      enum:
      - VAULT_ACCOUNT
      - EXCHANGE_ACCOUNT
      - INTERNAL_WALLET
      - EXTERNAL_WALLET
      - FIAT_ACCOUNT
      example: VAULT_ACCOUNT
    AccountAccess:
      type: object
      properties:
        type:
          type: string
          enum:
          - PROVIDER_ACCOUNT
          description: Indicates this uses account-based access
        providerId:
          type: string
          description: The ID of the provider
        accountId:
          type: string
          description: The ID of the account
      required:
      - type
      - accountId
      example:
        type: PROVIDER_ACCOUNT
        providerId: bridge-provider-001
        accountId: acc_9f4e2d8b1c6a5e73
    CreateOrderRequest:
      type: object
      properties:
        via:
          $ref: '#/components/schemas/AccessType'
        executionRequestDetails:
          $ref: '#/components/schemas/ExecutionRequestDetails'
        settlement:
          $ref: '#/components/schemas/Settlement'
        participantsIdentification:
          $ref: '#/components/schemas/ParticipantsIdentification'
        customerInternalReferenceId:
          type: string
          description: Internal reference ID for the customer
        note:
          type: string
          maxLength: 512
          description: Optional note for the order
      required:
      - via
      - executionRequestDetails
      - settlement
      example:
        via:
          type: PROVIDER_ACCOUNT
          providerId: prov_8c3f1a4b2d6e9f7c
          accountId: acc_5e9a2d1c4b7f3e8a
        executionRequestDetails:
          type: MARKET
          baseAssetId: USD
          quoteAssetId: BTC
          side: BUY
          baseAmount: '1000.00'
        settlement:
          type: DVP
          sourceAccount:
            type: VAULT_ACCOUNT
            id: vault_acc_3f7e1d9b2c5a8e4f
          destinationAccount:
            type: VAULT_ACCOUNT
            id: vault_acc_7b2e5d8f1c4a9e3b
          customerInternalReferenceId: order_ref_2024_001
          note: Monthly investment order
    QuoteExecutionRequestDetails:
      type: object
      properties:
        type:
          type: string
          enum:
          - QUOTE
          description: Order type for quote orders
        quoteId:
          type: string
          description: Quote ID for quote orders
      required:
      - type
      - quoteId
      example:
        type: QUOTE
        quoteId: quote_8f2e4d1a9c5b7e3f
    ParticipantsIdentification:
      description: KYC/AML participant identification
      type: object
      properties:
        originator:
          $ref: '#/components/schemas/Identification'
        beneficiary:
          $ref: '#/components/schemas/Identification'
      example:
        originator:
          externalReferenceId: user_123456
          entityType: INDIVIDUAL
          participantRelationshipType: FirstParty
          fullName:
            firstName: John
            lastName: Smith
          dateOfBirth: '1985-03-15'
          postalAddress:
            streetName: Main Street
            buildingNumber: '123'
            postalCode: '10001'
            city: New York
            subdivision: NY
            district: Manhattan
            country: US
        beneficiary:
          externalReferenceId: user_789012
          entityType: INDIVIDUAL
          participantRelationshipType: ThirdParty
          fullName:
            firstName: Alice
            lastName: Johnson
          dateOfBirth: '1990-07-22'
          postalAddress:
            streetName: Broadway
            buildingNumber: '456'
            postalCode: '10002'
            city: New York
            subdivision: NY
            district: Manhattan
            country: US
    QuotesResponse:
      type: object
      properties:
        quotes:
          type: array
          items:
            $ref: '#/components/schemas/Quote'
      example:
        quotes:
        - via:
            type: PROVIDER_ACCOUNT
            providerId: bridge-provider-001
            accountId: acc_9f4e2d8b1c6a5e73
          id: quote_8f2e4d1a9c5b7e3f
          type: COMMITTED
          baseAssetId: USDC
          quoteAssetId: BTC
          baseAmount: '1000.00'
          quoteAmount: '0.02458'
          priceImpact: 0.005
          quoteMinAmount: '0.02450'
          expiresAt: '2024-01-15T10:35:00.000Z'
          executionSteps:
          - type: EXECUTE
            fee:
              feeType: ORDER
              assetId: USDC
              amountType: FIXED
              amount: '2.50'
          generalFees:
          - feeType: ORDER
            assetId: USDC
            amountType: FIXED
            amount: '2.50'
    ExternalAccount:
      type: object
      properties:
        type:
          type: string
          enum:
          - EXTERNAL
      required:
      - type
      example:
        type: EXTERNAL
    PlatformAccount:
      type: object
      properties:
        type:
          type: string
          enum:
          - VAULT_ACCOUNT
          - CONNECTED_ACCOUNT
          - FIAT_ACCOUNT
        accountId:
          type: string
      required:
      - type
      - accountId
      example:
        type: VAULT_ACCOUNT
        accountId: vault_acc_5e9a2d1c4b7f3e8a
    LimitExecutionResponseDetails:
      allOf:
      - type: object
        properties:
          type:
            type: string
            enum:
            - LIMIT
            description: Order type for limit orders
          timeInForce:
            $ref: '#/components/schemas/TimeInForce'
          limitPrice:
            type: string
            description: Price for limit orders
        required:
        - type
        - timeInForce
        - limitPrice
      - $ref: '#/components/schemas/ExecutionResponseBaseDetails'
      example:
        type: LIMIT
        timeInForce: FOK
        limitPrice: '41000.00'
        side: BUY
        baseAmount: '1000.00'
        baseAssetId: USD
        quoteAssetId: BTC
        baseAssetRail: BLOCKCHAIN
        quoteAssetRail: BLOCKCHAIN
    QuoteExecutionWithRequoteResponseDetails:
      allOf:
      - $ref: '#/components/schemas/QuoteExecutionResponseDetails'
      - type: object
        properties:
          reQuote:
            discriminator:
              propertyName: type
              mapping:
                MARKET: '#/components/schemas/MarketRequoteRequestDetails'
                RETRY: '#/components/schemas/RetryRequoteRequestDetails'
            oneOf:
            - $ref: '#/components/schemas/MarketRequoteRequestDetails'
            - $ref: '#/components/schemas/RetryRequoteRequestDetails'
      example:
        type: QUOTE
        quoteId: quote_8f2e4d1a9c5b7e3f
        side: BUY
        baseAmount: '1000.00'
        baseAssetId: USDC
        baseAssetRail: BLOCKCHAIN
        quoteAssetId: BTC
        quoteAssetRail: BLOCKCHAIN
        reQuote:
          type: RETRY
          count: 1
          slippageBps: 50
    PaymentInstructions:
      type: object
      properties:
        type:
          type: string
          enum:
          - IBAN
          - SWIFT
          - ACH
          - US_WIRE
          - SPEI
          - SEPA
          - PIX
          - LOCAL_BANK_TRANSFER_AFRICA
          - MOBILE_MONEY
        address:
          $ref: '#/components/schemas/AccountHolderDetails'
        referenceId:
          type: string
      required:
      - type
      - address
      - referenceId
      example:
        type: IBAN
        address:
          accountHolder:
            name: John Smith
            city: London
            country: GB
            subdivision: ENG
            address: 123 King's Road
            postalCode: SW3 4LX
          iban: GB82WEST12345698765432
        referenceId: PAY_INST_abc123def456
    ExecutionResponseDetails:
      discriminator:
        propertyName: type
        mapping:
          LIMIT: '#/components/schemas/LimitExecutionResponseDetails'
          MARKET: '#/components/schemas/MarketExecutionResponseDetails'
          QUOTE: '#/components/schemas/QuoteExecutionWithRequoteResponseDetails'
      oneOf:
      - $ref: '#/components/schemas/LimitExecutionResponseDetails'
      - $ref: '#/components/schemas/MarketExecutionResponseDetails'
      - $ref: '#/components/schemas/QuoteExecutionWithRequoteResponseDetails'
    ExecutionStepStatusEnum:
      type: string
      enum:
      - WAITING
      - PROCESSING
      - COMPLETED
      - FAILED
      - CANCELLED
      example: PROCESSING
    MarketExecutionRequestDetails:
      allOf:
      - type: object
        properties:
          type:
            type: string
            enum:
            - MARKET
            description: Order type for market orders
        required:
        - type
      - $ref: '#/components/schemas/ExecutionRequestBaseDetails'
      example:
        type: MARKET
        baseAssetId: USD
        quoteAssetId: BTC
        side: BUY
        baseAmount: '1000.00'
    FixedFee:
      allOf:
      - type: object
        properties:
          amountType:
            type: string
            enum:
            - FIXED
          amount:
            type: string
            pattern: ^\d+(\.\d+)?$
            description: The fixed amount of the fee
            example: '0.01'
        required:
        - amountType
        - amount
      example:
        amountType: FIXED
        amount: '0.01'
    ExecutionStepType:
      type: string
      enum:
      - APPROVE
      - PERMIT
      - CONTRACT_CALL
      - EXECUTE
      - SETTLEMENT
      example: EXECUTE
    Manifest:
      type: object
      properties:
        assetTypes:
          type: array
          items:
            type: string
            enum:
            - DIGITAL
            - FIAT
        capabilities:
          type: array
          items:
            $ref: '#/components/schemas/Capability'
      required:
      - assetTypes
      - capabilities
      example:
        assetTypes:
        - DIGITAL
        - FIAT
        capabilities:
        - SPOT_TRADING
        - LIMIT_ORDERS
    Capability:
      type: string
      enum:
      - WITHDRAWALS
      - DEPOSITS
      - TRADING
      example: TRADING
    PrefundedSettlement:
      type: object
      properties:
        type:
          type: string
          enum:
          - PREFUNDED
        destinationAccount:
          $ref: '#/components/schemas/AccountReference'
      required:
      - type
      - destinationAccount
      example:
        type: PREFUNDED
        destinationAccount:
          type: VAULT_ACCOUNT
          accountId: vault_acc_9f4e2d8b1c6a5e73
    TimeInForce:
      type: string
      description: Time in force for limit orders
      enum:
      - FOK
      example: FOK
    GetOrdersResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/OrderSummary'
        total:
          type: integer
          description: Total number of orders matching the query.
        next:
          type: string
          description: A cursor for the next page of results, if available.
      required:
      - total
      - data
      example:
        data:
        - id: ord_5f8e2d9c1a7b4e36
          via:
            type: PROVIDER_ACCOUNT
            providerId: prov_8c3f1a4b2d6e9f7c
            accountId: acc_5e9a2d1c4b7f3e8a
          baseAmount: '1000.00'
          quoteAmount: '0.02458'
          baseAssetId: USD
          quoteAssetId: BTC
          status: COMPLETED
          destination:
            type: VAULT_ACCOUNT
            accountId: vault_acc_7b2e5d8f1c4a9e3b
          createdAt: '2024-01-15T10:30:00.000Z'
        total: 1
        next: cursor_next_page_token
    OrderStatus:
      type: string
      enum:
      - CREATED
      - PENDING_USER_ACTION
      - PROCESSING
      - CANCELED
      - COMPLETED
      - FAILED
      example: PROCESSING
    TransferReceipt:
      discriminator:
        propertyName: type
        mapping:
          BLOCKCHAIN: '#/components/schemas/BlockchainTransfer'
          FIAT: '#/components/schemas/FiatTransfer'
      oneOf:
      - $ref: '#/components/schemas/BlockchainTransfer'
      - $ref: '#/components/schemas/FiatTransfer'
    ExecutionStep:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/ExecutionStepType'
        status:
          $ref: '#/components/schemas/ExecutionStepStatusEnum'
        fee:
          $ref: '#/components/schemas/Fee'
        txId:
          type: string
        txHash:
          type: string
        error:
          $ref: '#/components/schemas/ExecutionStepError'
      required:
      - type
      - status
      example:
        type: EXECUTE
        status: PROCESSING
        fee:
          feeType: NETWORK
          assetId: ETH
          amountType: FIXED
          amount: '0.01'
        txId: tx_abc123def456
    BlockchainTransfer:
      type: object
      properties:
        type:
          type: string
          enum:
          - BLOCKCHAIN
        txHash:
          type: string
          description: The hash of the transaction on the blockchain.
        amount:
          type: string
          description: The amount of the transaction.
      required:
      - amount
      example:
        type: BLOCKCHAIN
        txHash: '0x1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f1a2b'
        amount: '250.75'
    DirectAccess:
      type: object
      properties:
        type:
          type: string
          enum:
          - PROVIDER
          description: Indicates this uses di

# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fireblocks/refs/heads/main/openapi/fireblocks-trading-beta-api-openapi.yml