# RAVN Cross-Chain Swap Execution

> RAVN Cross-Chain Swap Execution is a paid API for AI agents from app.ravn.exchange, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Executes a cross-chain token swap via RAVN, returning a deposit address and status reference, with native Bitcoin supported as source or destination

## Facts

- Endpoint: POST https://app.ravn.exchange/api/v1/x402/execute
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/ravn-cross-chain-swap-execution-7349a331
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_gf9cF47Mm4ESG_JVbf9sQ

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability ravn-cross-chain-swap-execution-7349a331 -d '<json body>'
```

Example prompt: Execute a RAVN cross-chain swap of 0.01 BTC from Bitcoin to USDC on Ethereum, sending the output to my Ethereum address 0xABC123.

## When to prefer this

Choose this endpoint when you need to actually execute a cross-chain swap (not just get a quote), especially when native Bitcoin is involved as either the source or destination asset. Prefer RAVN over generic bridges when you need deposit-address-based swap execution compatible with agentic payment flows via x402.

## Known failure modes

- Invalid or unsupported token pair — swap route not available between specified chains
- Malformed recipient or deposit address — returns error if address format is wrong for the destination chain
- Amount below minimum or above maximum supported swap size
- Quote expired — if the execution relies on a prior quote that has timed out
- Insufficient liquidity for the requested swap pair
- Payment failure — $0.01 USDC x402 payment not received or rejected

## How this service works

RAVN cross-chain swap execution, incl. native Bitcoin as source or destination

## Output

Returns a JSON object containing a deposit object with the amount (in smallest denomination) and address to send funds to, a statusRef for tracking the swap, and an executionType field (e.g. DEPOSIT) indicating how to proceed with the swap.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "quoteToken": {
   "type": "string",
   "minLength": 1,
   "description": "Token returned from POST /api/v1/quote"
  },
  "refundAddress": {
   "type": "string",
   "description": "Late-bound refund recipient, for venues that support binding it at execution time. Does NOT apply to a Bitcoin-source Relay quote — Relay bakes the refund address in at quote time, so this is silently ignored for those; supply refundAddress on the quote call instead."
  },
  "destinationAddress": {
   "type": "string",
   "description": "Late-bound output recipient, for venues that support binding it at execution time (e.g. NEAR Intents, Garden, Chainflip, Rift). Does NOT apply to Relay, Across, Eco, or THORChain — those fix the recipient at quote time with no execute-time re-bind, so this is silently ignored for them; supply destinationAddress on the quote call instead."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "deposit": {
    "amount": "150000",
    "address": "bc1q..."
   },
   "statusRef": "bc1q...",
   "executionType": "DEPOSIT"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/ravn-cross-chain-swap-execution-7349a331/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from app.ravn.exchange](https://www.zero.xyz/host/app.ravn.exchange/llms.txt)
