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

# RAVN Integrator API

> One integration to swap any asset across any chain. EVM, Solana, and native Bitcoin.

RAVN aggregates RFQ market makers, intent networks, and cross-chain solvers behind a single,
uniform interface. You can quote, execute, and track a swap across EVM, Solana, and **native
Bitcoin**, and your users always receive the real token, never a wrapped copy.

<CardGroup cols={3}>
  <Card title="Quickstart" icon="rocket" href="/quickstart">
    Swap 1 ETH to SOL end to end in four calls.
  </Card>

  <Card title="Execution types" icon="code-branch" href="/execution-types">
    The one field your integration branches on.
  </Card>

  <Card title="API Reference" icon="terminal" href="/api-reference/overview">
    Every endpoint, request, and response.
  </Card>
</CardGroup>

## Base URL

```
https://app.ravn.exchange/api/v1
```

* **Content type:** `application/json`
* **Amounts:** always strings, in the token's smallest unit (wei, lamports, satoshis).
* **Native coin:** use the sentinel `0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE`. For Solana native SOL, use its mint `So1111...1112`.

<Note>
  RAVN is in beta. Every call works with no `x-api-key` header at all if you just want to poke
  around, but [get a free key](/tools/get-api-key) first if you can. It's instant, no review,
  and quadruples your rate limit. See [Authentication](/authentication) for the full tier
  breakdown. RAVN itself charges 0 bps, always. Integrators can now set their own swap fee on
  their key and get paid their share automatically; every quote reports the applied fee. See
  [Pricing](/pricing).
</Note>

## Why it is different

Most swap APIs do one thing, an EVM transaction, so their whole surface assumes it. RAVN spans
three genuinely different execution models, and every quote resolves to exactly one
`executionType`. Your integration reads that one field and branches. That is the whole contract.

| Model | What the user does | Venues |
| - | - | - |
| `TRANSACTION` | Sign and broadcast | Across, Relay, Mayan, Eco Routes, THORChain, Jupiter, 0x Swap, 0x Solana, Nordstern, Fly Trade, KyberSwap, OKX DEX, Bebop |
| `SIGNATURE` | Sign typed data (no gas), then RAVN submits | 0x Gasless, Bebop, CoW, Relay |
| `DEPOSIT` | Send the origin asset to an address | NEAR Intents, Chainflip, Rift, Houdini Swap, Layerswap, Relay (BTC) |

See [Supported Chains & Venues](/supported) for which type each venue returns and when: a few
depend on the source chain or execution mode.

## The response envelope

Every response has the same shape.

<CodeGroup>
  ```json Success theme={null}
  { "data": { }, "meta": { "requestId": "uuid", "version": "2024-01" } }
  ```

  ```json Failure theme={null}
  { "error": { "code": "NO_LIQUIDITY", "message": "..." },
    "meta": { "requestId": "uuid", "version": "2024-01" } }
  ```
</CodeGroup>

Every response also carries `x-request-id` and `ravn-version` headers. Log the `requestId` and
quote it when you contact support.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.