---
title: "One call: should I do this, and what should I know first?"
method: POST
path: "/api/preflight/full"
tags: ["routing"]
---

# One call: should I do this, and what should I know first?

`POST /api/preflight/full`

## Request

- Base URL: `https://api.anygas.xyz/svc`
- URL: `https://api.anygas.xyz/svc/api/preflight/full`
- Auth: none declared

Everything needed to decide well exists, but across five endpoints: can this corridor be served right now, which rails are actually competing, what would make it cheaper, is the duration measured or guessed, and does this spend fit the budget the principal set. An agent that must make five calls and reconcile them will make one and guess. BLOCKERS AND WARNINGS ARE NEVER MERGED. A blocker WILL fail; a warning might cost you. An agent that cannot tell "impossible" from "suboptimal" either aborts on noise or ploughs through real obstacles. A check that could not run is reported in `unavailable` and DOWNGRADES the verdict to `caution` — silence is never read as assent. Pass an unknown `mandateId` and you are BLOCKED, because you would be spending outside any budget while believing you were inside one. `proceed:true` means nothing KNOWN TO US blocks it. It is not a promise of success.

## Request body

- RouteRequest
  - `fromChain` union, required: Source node: EVM chain id or one of "solana"/"stellar"/"bitcoin".
    - string
    - integer
  - `toChain` union, required: Destination node.
    - string
    - integer
  - `amount` string, required: Source-token smallest units.
  - `fromToken` string: Symbol or address; omit for native.
  - `toToken` string: Symbol or address; omit for native.
  - `toAddress` string: Recipient; defaults to fromAddress.
  - `fromAddress` string: Quote origin; anonymous default used if omitted.
  - `slippage` number: Fraction, e.g. 0.005.
  - `token` string: Shorthand: sets BOTH fromToken and toToken (e.g. "USDC"). Accepted on POST bodies and as a GET query parameter. Explicit fromToken/toToken win when present.

## Response `200`

verdict, blockers, warnings and the supporting detail

- object

## Other responses

- `400`: fromChain, toChain and amount are required

---

[API](https://skmtc.dev/anygas/apis/robyn-anygas-api.md) · [All operations](https://skmtc.dev/anygas/apis/robyn-anygas-api/llms.txt) · [OpenAPI document](https://skmtc.dev/anygas/apis/robyn-anygas-api/revisions/9b7498be8304?raw)
