diff --git a/references/api/api-keys.mdx b/references/api/api-keys.mdx
index 0c136f44..5c705cb4 100644
--- a/references/api/api-keys.mdx
+++ b/references/api/api-keys.mdx
@@ -66,7 +66,7 @@ Already hitting a limit? See [Handling Rate Limits](/references/api/api_core_con
## How to Use an API key
-Quote requests that set a `referrer` must be authenticated: pass your API key in the `x-api-key` header on `POST /quote` and `POST /quote/v2`. Requests with a referrer but no valid key return `401` with `errorCode: "UNAUTHORIZED_QUOTE"`.
+Quote requests that set a `referrer` must be authenticated: pass your API key in the `x-api-key` header on `POST /quote` and `POST /quote/v2`. Requests with a referrer but no valid key return `401` with `errorCode: "UNAUTHORIZED_QUOTE"`. Starting **October 2, 2026**, every `quote/v2` request will require a valid API key. `quote/v2` remains fully supported for authenticated requests.
### HTTP requests
diff --git a/references/api/api_guides/bitcoin.mdx b/references/api/api_guides/bitcoin.mdx
index 47f43922..7541b0dd 100644
--- a/references/api/api_guides/bitcoin.mdx
+++ b/references/api/api_guides/bitcoin.mdx
@@ -3,6 +3,9 @@ title: Bitcoin Support
description: How to deposit and withdraw on Bitcoin from any Relay chain
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
Relay supports deposits to and withdrawals from Bitcoin across any supported
chain. This guide covers the Bitcoin-specific parameters, PSBT signing, balance
calculation, and API/SDK usage required for integration.
@@ -107,6 +110,8 @@ documentation, then use the [Get Quote](/references/api/get-quote-v2) endpoint.
### Example: Withdraw from Bitcoin to Base
+
+
```bash Request
curl -X POST "https://api.relay.link/quote/v2" \
diff --git a/references/api/api_guides/bridging-integration-guide.mdx b/references/api/api_guides/bridging-integration-guide.mdx
index 21f4dee4..53e282ef 100644
--- a/references/api/api_guides/bridging-integration-guide.mdx
+++ b/references/api/api_guides/bridging-integration-guide.mdx
@@ -3,6 +3,9 @@ title: "Bridging Integration Guide"
description: "How to integrate the Relay API for bridging and onboarding"
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
import GetAnApiKey from "/snippets/GetAnApiKey.mdx";
import QuickstartCallout from "/snippets/QuickstartCallout.mdx";
import StatusWebsockets from "/snippets/StatusWebsockets.mdx";
@@ -29,6 +32,8 @@ While not mandatory for integration, doing the following will improve the UX for
- **`EXPECTED_OUTPUT`** — specify the approximate amount you want to receive; the input amount is calculated accordingly and the output may vary slightly due to slippage.
- **`EXACT_OUTPUT`** — specify the exact amount you want to receive; the input amount is calculated accordingly. If the exact output cannot be filled, the request fails and the user is refunded on the origin chain.
+
+
```bash EXACT_INPUT
curl -X POST "https://api.relay.link/quote/v2" \
diff --git a/references/api/api_guides/builder-codes.mdx b/references/api/api_guides/builder-codes.mdx
index e7774d41..7efa6c71 100644
--- a/references/api/api_guides/builder-codes.mdx
+++ b/references/api/api_guides/builder-codes.mdx
@@ -3,6 +3,9 @@ title: "Base Builder Codes"
description: "Attribute onchain activity by appending builder codes to your Relay transactions"
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
Base builder codes are a way to attribute onchain activity. Each code enhances onchain transactions with offchain metadata and makes your application more discoverable. To learn more about builder codes, see the [Base documentation](https://docs.base.org/base-chain/builder-codes/builder-codes).
---
@@ -17,6 +20,8 @@ Builder codes only work for quotes that route through the Relay Depository contr
### Example
+
+
```typescript expandable
import {
createWalletClient,
diff --git a/references/api/api_guides/calling-integration-guide.mdx b/references/api/api_guides/calling-integration-guide.mdx
index cfa2d390..1dafd1d7 100644
--- a/references/api/api_guides/calling-integration-guide.mdx
+++ b/references/api/api_guides/calling-integration-guide.mdx
@@ -3,6 +3,9 @@ title: "Call Execution Integration Guide"
description: "How to execute cross-chain calls using Relay"
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
import GetAnApiKey from "/snippets/GetAnApiKey.mdx";
import QuickstartCallout from "/snippets/QuickstartCallout.mdx";
@@ -51,6 +54,8 @@ While not mandatory for integration, doing the following will improve the UX for
The request below is schematic. In practice, `txs[].data` must contain ABI-encoded calldata.
+
+
```bash
curl -X POST "https://api.relay.link/quote/v2" \
-H "Content-Type: application/json" \
diff --git a/references/api/api_guides/hyperliquid-support.mdx b/references/api/api_guides/hyperliquid-support.mdx
index ffe4200f..cab71026 100644
--- a/references/api/api_guides/hyperliquid-support.mdx
+++ b/references/api/api_guides/hyperliquid-support.mdx
@@ -3,6 +3,9 @@ title: "Hyperliquid Support"
description: "How to deposit and withdraw from Hyperliquid to any Relay chain"
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
Relay supports depositing and withdrawing Hyperliquid (Hypercore) perpsUSDC from any supported chain. To try it today, use the [Relay App](https://relay.link/bridge/hyperliquid). Relay also provides complete support for HyperEVM, which can be accessed using the standard quote flow with `chainId=999`. This document details how to integrate Hyperliquid deposits and withdrawals into your application.
## API Access
@@ -59,6 +62,8 @@ Hyperliquid withdrawals use a two-step signature flow. The v2 implementation lev
Use the [Hyperliquid info API](https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint) to query balances. Pass `clearinghouseState` as the `type` parameter, then read the `withdrawable` property, which returns a USD value in human-readable format.
### Example Quote Request
+
+
```bash Request
curl 'https://api.relay.link/quote/v2' \
diff --git a/references/api/api_guides/lighter-support.mdx b/references/api/api_guides/lighter-support.mdx
index 86d013e3..6d017fa8 100644
--- a/references/api/api_guides/lighter-support.mdx
+++ b/references/api/api_guides/lighter-support.mdx
@@ -3,6 +3,9 @@ title: "Lighter Support"
description: "How to deposit to and withdraw from Lighter using the Relay API"
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
Relay supports depositing and withdrawing to Lighter from any supported chain. You can try depositing today using the [Relay App](https://relay.link/bridge/lighter) (note: withdrawing is not yet supported in the app). This document details how to integrate Lighter into your application.
## Prerequisites
@@ -45,6 +48,8 @@ For more details, see the [Lighter API documentation](https://apidocs.lighter.xy
## How to deposit
+
+
```bash Request
curl 'https://api.relay.link/quote/v2' \
diff --git a/references/api/api_guides/solana.mdx b/references/api/api_guides/solana.mdx
index 5d4a44df..eb3060f3 100644
--- a/references/api/api_guides/solana.mdx
+++ b/references/api/api_guides/solana.mdx
@@ -3,6 +3,9 @@ title: Solana Support
description: How to Deposit or Withdraw on Solana from an EVM Chain
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
Relay now fully supports depositing & withdrawing to Solana from any EVM chain
we support. This is a great way to get users funds on Solana to complete
transactions. You can onboard users funds from Blast ETH to Solana USDC to make
@@ -79,6 +82,8 @@ there’s different calldata that needs to be handled accordingly.
### Example: Deposit to Solana from Base
+
+
```bash Request
curl -X POST "https://api.relay.link/quote/v2" \
diff --git a/references/api/get-quote-v2.mdx b/references/api/get-quote-v2.mdx
index a6a994b1..33f0ffd4 100644
--- a/references/api/get-quote-v2.mdx
+++ b/references/api/get-quote-v2.mdx
@@ -3,3 +3,8 @@ title: "Get Quote"
description: "This API returns an executable quote for swapping, bridging and calling"
openapi: post /quote/v2
---
+
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
+
diff --git a/references/api/quickstart.mdx b/references/api/quickstart.mdx
index 67f642e1..2823d6d3 100644
--- a/references/api/quickstart.mdx
+++ b/references/api/quickstart.mdx
@@ -3,6 +3,9 @@ title: 'Quickstart'
description: 'Execute your first cross-chain transaction in under 5 minutes.'
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
import StatusWebsockets from "/snippets/StatusWebsockets.mdx";
Relay is a multichain payments network. You define the **Intent** (what the user wants), and Relay handles the **Execution** (how to get there).
@@ -25,6 +28,8 @@ Follow this 5-step flow to integrate Relay into your application:
### API key Provisioning
Create an API key in the [Relay Dashboard](https://dashboard.relay.link).
See [API keys and Rate Limits](/references/api/api-keys) for usage and limits.
+
+
## Chain Configuration
diff --git a/references/relay-kit/sdk/actions/getQuote.mdx b/references/relay-kit/sdk/actions/getQuote.mdx
index ef5628b6..5dc4c369 100644
--- a/references/relay-kit/sdk/actions/getQuote.mdx
+++ b/references/relay-kit/sdk/actions/getQuote.mdx
@@ -3,6 +3,9 @@ title: getQuote
description: Get a quote for a cross-chain relay (bridge, swap, call, etc)
---
+import QuoteV2AuthCallout from "/snippets/QuoteV2AuthCallout.mdx";
+
+
## Arguments
| Property | Description | Required |
@@ -15,6 +18,9 @@ description: Get a quote for a cross-chain relay (bridge, swap, call, etc)
**Warning**: Never pass `x-api-key` in headers from client-side code. Only use the `headers` parameter with API keys when calling `getQuote` entirely on the server.
+
+
+
## Quote Parameters
| Property | Description | Required |
diff --git a/snippets/QuoteV2AuthCallout.mdx b/snippets/QuoteV2AuthCallout.mdx
new file mode 100644
index 00000000..210a0e51
--- /dev/null
+++ b/snippets/QuoteV2AuthCallout.mdx
@@ -0,0 +1,3 @@
+
+Starting **October 2, 2026**, `POST /quote/v2` will require a valid API key on every request. Pass your key in the `x-api-key` header — see [API keys and Rate Limits](/references/api/api-keys#how-to-use-an-api-key). Requests that include a `referrer` already require the key today. `quote/v2` remains fully supported for authenticated requests.
+