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

# Provider routing

> Discover corridors, providers, quote requests, and quote options.

Provider routing routes are beta surfaces. Inspect `X-Onstacks-Provider-Network-Mode` to understand which
backing adapter served the response.

| Mode     | Meaning                                                                                                     |
| -------- | ----------------------------------------------------------------------------------------------------------- |
| `mock`   | Non-production mock data and process-local quote state.                                                     |
| `hybrid` | Provider inventory and quote execution can call the core provider API, while some beta state remains local. |
| `core`   | Core provider-network backing.                                                                              |

## List corridors

Use `GET /v1/corridors?environment=sandbox`.

Optional filters:

* `source_asset`
* `source_network`
* `destination_country`
* `destination_currency`
* `payout_method`
* `provider_id`

Use `GET /v1/corridors/{corridorId}` to read a corridor detail.

## List providers

Use `GET /v1/providers?environment=sandbox`.

Optional filters:

* `corridor_id`
* `destination_country`
* `destination_currency`
* `status`

Use `GET /v1/providers/{providerId}` to read provider detail. `providerId` is an opaque provider identifier or provider code returned by `GET /v1/providers`.

## Create a quote request

Use `POST /v1/quote-requests?environment=sandbox`.

```json theme={null}
{
  "source_asset": "USDC",
  "source_network": "ethereum_sepolia",
  "source_amount": "1000000",
  "destination_country": "NG",
  "destination_currency": "NGN",
  "payout_method": "bank_transfer",
  "routing_mode_requested": "manual",
  "destination_details": {
    "bank_code": "000",
    "account_number": "0000000000"
  }
}
```

Quote requests are currently stored in Onstacks-local beta state. They may not survive service restarts.
