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

# Create a transaction

> 
  Submits a signed transaction for broadcast.

  Faraday routes the transaction based on the `from_network` key from the quote. 

  - The transaction must already be signed by the sender before submission.
  - The endpoint will broadcast the transaction to the selected blockchain
  network and return the result.
  - This endpoint does not modify or re-sign the provided transaction — it
  broadcasts exactly what is submitted.




## OpenAPI

````yaml /api-reference/faraday-api.json post /v1/transactions
openapi: 3.1.0
info:
  title: Faraday API
  description: >-

    The **Faraday API** provides secure, compliant infrastructure for stablecoin
    transactions, identity verification, and transaction monitoring across
    multiple blockchains.


    ### Key Features

    - **Swap Routing** — Discover optimal swap paths for stablecoin transfers,
    including cross-chain routes.

    - **IVMS101 Person Records** — Create, query, and manage structured person
    data for FATF Travel Rule compliance.

    - **Transaction Submission and Monitoring** — Submit and track stablecoin
    transactions.

    - **Reporting** — View historical transaction reports including associated
    IVMS101 records.


    ### Authentication

    Most requests require an API key (Bearer token).


    Generate and manage API keys by signing in to https://app.range.org/


    API Keys can be found under the APIs section. A free monthly credit
    allowance is available, with more credits available to paid plans.


    Include this header with every authenticated Faraday request:


    ```

    Authorization: Bearer <your_token>

    ```


    ### Base URL

    - Production: `https://api.faraday.range.org`


    ### Example Request

    ```bash

    curl -X GET 'https://api.faraday.range.org/v1/persons'   --header
    'Authorization: Bearer <your_token>'

    ```
            
  contact:
    name: Faraday
    url: https://range.org/faraday
    email: faraday@range.org
  license:
    name: ''
  version: 1.0.0
servers:
  - url: https://api.faraday.range.org
    description: Production
security:
  - BearerAuth: []
tags:
  - name: Transactions
    description: Send, track and find transactions
  - name: Persons
    description: >-
      Manage IVMS101 Person records. This includes creation and retrieval of
      structured person data for compliance with FATF Travel Rule standards.
  - name: Chains
    description: Chains supported by Faraday
  - name: Tokens
    description: Tokens supported by Faraday
  - name: Providers
    description: Providers supported by Faraday
paths:
  /v1/transactions:
    post:
      tags:
        - Transactions
      summary: Create a transaction
      description: |2

          Submits a signed transaction for broadcast.

          Faraday routes the transaction based on the `from_network` key from the quote. 

          - The transaction must already be signed by the sender before submission.
          - The endpoint will broadcast the transaction to the selected blockchain
          network and return the result.
          - This endpoint does not modify or re-sign the provided transaction — it
          broadcasts exactly what is submitted.
      operationId: post_transaction
      requestBody:
        description: Submit a signed transaction
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SubmitTransactionRequest'
            examples:
              Ethereum:
                value:
                  network: eth
                  quote_id: a1e2c3d4-5678-4abc-9def-0123456789ab
                  signed_payload: >-
                    0xf86c808504a817c80082520894b60e8dd61c5d32be8058bb8eb970870f072331550880de0b6b3a76400008025a0d9f2b37a7fdd65b07a5ceef...
                  travel_rule_compliant: false
              Solana:
                value:
                  network: solana
                  quote_id: b9a1b2a0-8d2b-4e4d-9e64-0e0a8f7a9d3c
                  signed_payload: AQABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgYGRobGhw=
                  travel_rule_compliant: true
        required: true
      responses:
        '202':
          description: |

            **Accepted**

            The transaction was accepted for processing.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitTransactionResponse'
        '401':
          description: |

            **Unauthorized**

            This error indicates that the API key is missing or invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Missing key:
                  summary: API Key Missing
                  description: >-
                    An API key is missing in the request and should be provided
                    in the `Authorization: Bearer` header.
                  value:
                    details:
                      message: >-
                        No API key found, please set this in an Authorization:
                        Bearer header
                    error: authentication failed
                Unauthorized:
                  summary: Unauthorized
                  description: >-
                    The API key may be invalid, an empty key was provided, or
                    the key is not authorized.
                  value:
                    details:
                      message: The API key provided is not authorised or invalid
                    error: authentication failed
        '403':
          description: >

            **Forbidden**


            This error indicates that the API key is valid but the requested
            feature or resource is disabled for this workspace.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Disabled API Key:
                  summary: Feature disabled
                  description: >-
                    The API key is valid but the associated feature or endpoint
                    has been disabled for this workspace.
                  value:
                    details:
                      message: Feature disabled for this API key
                    error: authentication failed
        '404':
          description: |

            **Not Found**

            A quote for the quote id provided was not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Quote not found:
                  value:
                    details:
                      message: quote not found
                    error: not found
        '422':
          description: >

            **Unprocessable Entity**


            This error indicates the request was malformed.


            If the request fails validation a response is given with an
            indication of how to resolve the error. 
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Missing fields on SubmitTransactionRequest:
                  value:
                    details:
                      signed_payload:
                        - code: length
                          message: null
                          params:
                            max: 8192
                            min: 10
                            value: ''
                    error: validation failed
        '429':
          description: >

            **Too Many Requests**


            This error indicates that the API key has exceeded its allowed
            number of requests within the current quota.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Rate Limited API Key:
                  summary: Rate limit exceeded
                  description: The API key has exceeded its quota.
                  value:
                    details:
                      message: API Key Rate limit exceeded
                    error: authentication failed
        '500':
          description: >

            **Internal Server Error**


            An unexpected internal error occurred while processing the request.
            This typically indicates a transient backend or database issue.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                Internal Server Error:
                  summary: Internal error
                  description: >-
                    An unhandled exception or service outage prevented the
                    request from completing successfully.
                  value:
                    error: internal server error
components:
  schemas:
    SubmitTransactionRequest:
      type: object
      required:
        - quote_id
        - network
      properties:
        network:
          $ref: '#/components/schemas/Network'
          description: >-
            The blockchain network to submit the transaction to (e.g.,
            `solana`).
        quote_id:
          type: string
          format: uuid
          description: The quote you are executing (must exist in your workspace).
          example: b9a1b2a0-8d2b-4e4d-9e64-0e0a8f7a9d3c
        signed_payload:
          type: string
          description: The signed transaction.
          example: AQABAgMEBQYH...
          maxLength: 8192
          minLength: 10
        travel_rule_compliant:
          type: boolean
          description: Whether the transaction complies with Travel Rule requirements.
          example: true
    SubmitTransactionResponse:
      type: object
      properties:
        tx_hash:
          type: string
          description: The transaction hash returned after successful broadcast.
          default: ''
          example: 3h9ZEkZqKwHvzyWdRBBZzK8u8CpRJikvV1UWzMykwMyB
      example:
        tx_hash: 3h9ZEkZqKwHvzyWdRBBZzK8u8CpRJikvV1UWzMykwMyB
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: string
    Network:
      type: string
      enum:
        - eth
        - sepolia
        - solana
        - oeth
        - solana-devnet
        - osmosis-1
        - arb1
        - pol
        - base
        - avax
        - bnb
        - neutron-1
        - celestia
        - opsep
        - fuji
        - amoy
        - basesep
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer

````