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

# Get tools

> Returns supported bridge and exchange adapters, grouped by type. Use the optional chains query parameter to filter tools by supported chain IDs.



## OpenAPI

````yaml GET /v1/tools
openapi: 3.1.1
info:
  title: Delora API
  description: Delora API
  version: 1.0.0
servers:
  - url: https://api.delora.build
security: []
tags:
  - name: Health
    description: Service health endpoints.
  - name: V1
    description: Routing and metadata endpoints.
  - name: Transaction Tracking
    description: Read-only, integrator-scoped transaction tracking.
paths:
  /v1/tools:
    get:
      tags:
        - V1
      summary: List supported bridge and exchange tools
      description: >-
        Returns supported bridge and exchange adapters, grouped by type. Use the
        optional chains query parameter to filter tools by supported chain IDs.
      operationId: getTools
      parameters:
        - name: x-api-key
          in: header
          description: Optional API key for higher rate limits and fee rules.
          required: false
          schema:
            type: string
        - name: chains
          required: false
          in: query
          description: Comma-separated chain IDs used to filter supported tools.
          schema:
            example: 18453
      responses:
        '200':
          description: Supported tools response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ToolsResponseDto'
              examples:
                success:
                  summary: Supported tools response
                  value:
                    exchanges:
                      - key: OPENOCEAN
                        name: OpenOcean
                        logoURI: https://example.com/openocean.png
                        supportedChains:
                          - '1'
                          - '8453'
                    bridges:
                      - key: RELAY
                        name: Relay
                        logoURI: https://example.com/relay.png
                        supportedChains:
                          - '1'
                          - '8453'
        '400':
          description: Invalid request parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponseDto'
              examples:
                validationErrors:
                  summary: Validation errors
                  value:
                    statusCode: 400
                    code: VALIDATION_ERROR
                    message: Invalid request parameters
                    details:
                      message:
                        - senderAddress should not be empty
                        - senderAddress must be a string
                    timestamp: '2026-05-15T16:58:45.603Z'
                    path: /v1/quotes
        '429':
          description: Rate limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorResponseDto'
              examples:
                rateLimitExceeded:
                  summary: Rate limit exceeded
                  value:
                    statusCode: 429
                    code: RATE_LIMIT
                    message: Rate limit exceeded. Please try again later.
                    details:
                      message: Rate limit exceeded. Please try again later.
                    timestamp: '2026-05-15T16:58:45.603Z'
                    path: /v1/quotes
components:
  schemas:
    ToolsResponseDto:
      type: object
      properties:
        exchanges:
          type: array
          items:
            $ref: '#/components/schemas/ToolInfoDto'
        bridges:
          type: array
          items:
            $ref: '#/components/schemas/ToolInfoDto'
      required:
        - exchanges
        - bridges
    StandardErrorResponseDto:
      type: object
      properties:
        statusCode:
          type: number
          example: 400
        code:
          enum:
            - NO_AVAILABLE_QUOTES
            - AMOUNT_TOO_LOW
            - WRONG_ADDRESS
            - RATE_LIMIT
            - SLIPPAGE_EXCEEDED
            - ADAPTER_BAD_REQUEST
            - ADAPTER_UNAUTHORIZED
            - ADAPTER_INTERNAL
            - VALIDATION_ERROR
            - NOT_FOUND
            - UNKNOWN
          type: string
          description: >-
            Machine-readable Delora error code.

            - NO_AVAILABLE_QUOTES: No bridge or exchange adapter returned an
            executable quote for the requested transfer.

            - AMOUNT_TOO_LOW: The requested input amount is below the minimum
            supported by the available bridge route.

            - WRONG_ADDRESS: A wallet address is missing, malformed, or
            incompatible with the requested chain type.

            - RATE_LIMIT: The request exceeded the configured rate limit.

            - SLIPPAGE_EXCEEDED: The expected output amount fell below the
            route's permitted minimum.

            - ADAPTER_BAD_REQUEST: An upstream bridge or exchange adapter
            rejected the request as invalid.

            - ADAPTER_UNAUTHORIZED: An upstream bridge or exchange adapter
            rejected the request because credentials are missing or invalid.

            - ADAPTER_INTERNAL: An upstream bridge or exchange adapter failed
            with an internal error.

            - VALIDATION_ERROR: The request failed Delora API validation,
            including invalid query parameters, body fields, or address formats.

            - NOT_FOUND: The requested chain, token, or resource was not found.

            - UNKNOWN: The request failed with an unexpected error that does not
            map to a more specific code.
          x-enumDescriptions:
            - >-
              No bridge or exchange adapter returned an executable quote for the
              requested transfer.
            - >-
              The requested input amount is below the minimum supported by the
              available bridge route.
            - >-
              A wallet address is missing, malformed, or incompatible with the
              requested chain type.
            - The request exceeded the configured rate limit.
            - >-
              The expected output amount fell below the route's permitted
              minimum.
            - >-
              An upstream bridge or exchange adapter rejected the request as
              invalid.
            - >-
              An upstream bridge or exchange adapter rejected the request
              because credentials are missing or invalid.
            - >-
              An upstream bridge or exchange adapter failed with an internal
              error.
            - >-
              The request failed Delora API validation, including invalid query
              parameters, body fields, or address formats.
            - The requested chain, token, or resource was not found.
            - >-
              The request failed with an unexpected error that does not map to a
              more specific code.
          example: VALIDATION_ERROR
        message:
          type: string
          example: Invalid request parameters
        details:
          description: >-
            Optional error details. When details is an object, `message` can be
            either a string or an array of strings.
          oneOf:
            - type: object
              additionalProperties: true
              properties:
                message:
                  oneOf:
                    - type: string
                    - type: array
                      items:
                        type: string
                  description: >-
                    Human-readable details. Validation errors may return
                    multiple messages.
                errorCode:
                  type: string
                code:
                  oneOf:
                    - type: string
                    - type: number
                status:
                  oneOf:
                    - type: string
                    - type: number
            - type: string
            - type: array
              items:
                type: string
          example:
            message:
              - One or more request parameters are invalid.
        timestamp:
          type: string
          example: '2026-05-13T18:00:00.000Z'
        path:
          type: string
          example: /v1/...
      required:
        - statusCode
        - code
        - message
        - timestamp
    ToolInfoDto:
      type: object
      properties:
        key:
          enum:
            - ACROSS
            - RELAY
            - GASZIP
            - OPENOCEAN
            - JUPITER
            - SYMBIOSIS
            - MAYAN
            - MAYAN_WORMHOLE
            - MAYAN_SWIFT
            - MAYAN_MCTP
            - MAYAN_FAST_MCTP
            - OKX
            - RISE
            - NORDSTERN
            - KYBERSWAP
            - DFLOW
            - NEAR_INTENTS
          type: string
          example: RELAY
        name:
          type: string
          example: Relay
        logoURI:
          type: string
          example: https://example.com/relay.png
        supportedChains:
          example:
            - '1'
            - '8453'
          type: array
          items:
            type: string
      required:
        - key
        - name
        - logoURI
        - supportedChains

````