---
title: "Create a bridging request"
method: POST
path: "/v2/wallets/bridges"
tags: ["Cross-Chain Bridge"]
---

# Create a bridging request

`POST /v2/wallets/bridges`

Create a bridging request to bridge crypto assets across chains.

## Request body

- CreateBridgingRequest
  - `requestId` string, required — unique identifier for the request (recommend using uuid v4)
  - `amount` number, float, required — amount of crypto currency to bridge
  - `source` BridgingRequestSource, required
    - `userId` string, uuid, required — user who is sending the crypto
    - `chain` 'POLYGON' | 'ETHEREUM' | 'SOLANA', required
    - `currency` 'usdc' | 'usdt', required — crypto currency
  - `destination` BridgingRequestDestination, required
    - `userId` string, uuid — user who is receiving the crypto
    - `chain` 'POLYGON' | 'ETHEREUM' | 'BASE' | 'OPTIMISM' | 'ARBITRUM' | 'SOLANA', required
    - `currency` 'usdc' | 'usdt', required — crypto currency
    - `walletAddress` string — wallet address that is receiving the crypto (should provide either `userId` or `walletAddress`) To use this feature, please ensure you're enrolled in HIFI's Gas Sponsorship Program or provide a userId; otherwise, the transaction may get stuck.
  - `requireApproval` boolean — Whether this bridging request requires approval before processing. - `true`: Request will enter approval workflow - `false` or omitted: Request proceeds immediately

## Response `200`

Success

- BridgeAssetTransferObject
  - `transferType` string
  - `transferDetails` object
    - `id` string, uuid
    - `requestId` string, uuid
    - `createdAt` string, date-time
    - `updatedAt` string, date-time
    - `amount` number
    - `status` 'NOT_INITIATED' | 'OPEN_QUOTE' | 'CREATED' | 'SOURCE_INITIATED' | 'SOURCE_PENDING' | 'SOURCE_PROCESSED' | 'SOURCE_FAILED' | 'DESTINATION_INITIATED' | 'DESTINATION_PENDING' | 'COMPLETED' | 'DESTINATION_FAILED' | 'QUOTE_FAILED' | 'UNKNOWN'
    - `source` object
      - `userId` string, uuid
      - `walletAddress` string
      - `chain` string
      - `currency` string
    - `destination` object
      - `userId` string, uuid
      - `walletAddress` string
      - `chain` string
      - `currency` string
    - `receipt` object
      - `transactionHash` string
      - `operations` object
        - `mint` object
          - `transactionHash` string, nullable
          - `userOpHash` string, nullable
          - `chain` string, nullable
        - `burn` object
          - `transactionHash` string, nullable
          - `userOpHash` string, nullable
          - `chain` string, nullable
        - `approve` object
          - `transactionHash` string, nullable
          - `userOpHash` string, nullable
          - `chain` string, nullable
    - `failedReason` string, nullable
    - `fee` number, nullable
    - `quoteInformation` object
      - `sendGross` object
        - `amount` string
        - `currency` string
      - `sendNet` object
        - `amount` string
        - `currency` string
      - `railFee` object
        - `amount` string
        - `currency` string
      - `receiveGross` object
        - `amount` string
        - `currency` string
      - `receiveNet` object
        - `amount` string
        - `currency` string
      - `rate` string
      - `expiresAt` string, date-time

## Other responses

- `401` — Unauthorized
- `404` — Resource not found
- `500` — Internal Server Error

---

[API](https://skmtc.net/hifibridge/apis/hifi-api.md) · [All operations](https://skmtc.net/hifibridge/apis/hifi-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hifibridge/hifi-api/revisions/74d9e530fbea/schema)
