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

# Delta API Python example

> End-to-end Python example: call the Velora Delta API to quote a gasless 1 ETH → USDC intent via requests.

A minimal Python script that calls `GET /v2/quote?mode=DELTA` and prints the recommended route's expected output and the `spender` from the returned `delta` block. Uses `requests`.

## File tree

```text theme={null}
my-app/
├─ requirements.txt
└─ quote.py
```

## Install

```bash theme={null}
mkdir my-app && cd my-app
python -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install requests
```

## `quote.py`

```python theme={null}
import requests

params = {
    "srcToken":     "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",  # ETH
    "destToken":    "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",  # USDC
    "amount":       "1000000000000000000",                          # 1 ETH
    "srcDecimals":  18,
    "destDecimals": 6,
    "side":         "SELL",
    "chainId":      1,
    "mode":         "DELTA",
    "userAddress":  "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
    "partner":      "my-app-name",
}

res = requests.get("https://api.velora.xyz/v2/quote", params=params, timeout=10)
res.raise_for_status()

delta = res.json()["delta"]

print("expected output:", delta["route"]["origin"]["output"]["amount"])
print("spender:        ", delta["spender"])
```

## Run it

```bash theme={null}
python quote.py
```

You should see the recommended route's expected output (USDC, 6 decimals) and the `spender` address to approve before building the order.

## Next: build, sign, submit

Pass the unmodified `delta.route` into `POST /v2/delta/orders/build` (with `owner` set to the user address) to get EIP-712 typed data back as `{ toSign, orderHash }`. Sign `toSign` with an ERC-2098 compact signature, then `POST /v2/delta/orders` with `order` (the `toSign.value`), the `signature`, `chainId`, and your `partner`. Poll `GET /v2/delta/orders/{orderId}` for status. See [Delta → How it works](/docs/delta/how-it-works).

<Warning>
  Pass `delta.route` **verbatim** to `/v2/delta/orders/build`. Reordering or re-encoding it will cause the build call to reject.
</Warning>

## Related pages

* [Delta overview](/docs/delta/overview) — when to use Delta intents.
* [Delta → How it works](/docs/delta/how-it-works) — quote → build → sign → auction → settle.
* [Delta API reference](/docs/api-reference/delta/overview) — full parameter list.
