From 0184fabfa2a34604dcb2591eaaf44bfb82450032 Mon Sep 17 00:00:00 2001 From: trails-docs-agent Date: Mon, 31 Aug 2026 09:21:12 +0000 Subject: [PATCH 1/2] docs: update use case examples 2026-08-31 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Drop the deprecated CommitIntent HTTP step from the direct-integration examples in Fund and the LLM Integration guide. Both now call ExecuteIntent directly on intent.intentId, matching the 0xtrails 0.18.0 lifecycle change. Source of truth: 0xsequence/trails-api@5c42fda7 (proto/trails-api.ridl marks CommitIntent DEPRECATED; new clients call ExecuteIntent on a QUOTED intent). - use-cases/fund.mdx — remove the CommitIntent fetch, use intent.intentId, correct quote-expiry note (5 min, not 10), and link the Solana/Tron ExecuteIntentEdge path - resources/llm-integration.mdx — mirror the same change in the executePayment tool example --- resources/llm-integration.mdx | 5 +++-- use-cases/fund.mdx | 17 ++++------------- 2 files changed, 7 insertions(+), 15 deletions(-) diff --git a/resources/llm-integration.mdx b/resources/llm-integration.mdx index c1c1bfd8..2d901376 100644 --- a/resources/llm-integration.mdx +++ b/resources/llm-integration.mdx @@ -291,9 +291,10 @@ async function handlePaymentTool(params: { }; } -// After user confirms, commit and execute +// After user confirms, execute the quoted intent directly. +// CommitIntent is deprecated — ExecuteIntent accepts QUOTED intents. async function executePayment(intent: any, signature: string) { - const { intentId } = await trails.commitIntent({ intent }); + const intentId = intent.intentId; const { intentStatus } = await trails.executeIntent({ intentId, diff --git a/use-cases/fund.mdx b/use-cases/fund.mdx index fa124864..a9fa49b1 100644 --- a/use-cases/fund.mdx +++ b/use-cases/fund.mdx @@ -196,19 +196,10 @@ const quoteResponse = await fetch('https://trails-api.sequence.app/rpc/Trails/Qu const { intent } = await quoteResponse.json() const intentAddress = intent.depositTransaction.toAddress +const intentId = intent.intentId -const commitResponse = await fetch('https://trails-api.sequence.app/rpc/Trails/CommitIntent', { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - 'X-Access-Key': 'YOUR_ACCESS_KEY', - }, - body: JSON.stringify({ intent }), -}) - -const { intentId } = await commitResponse.json() - -// Ask the user to deposit to the intent address, then execute +// Ask the user to deposit to the intent address, then execute directly from QUOTED +// (no separate CommitIntent step — that call is deprecated for new integrations) const executeResponse = await fetch('https://trails-api.sequence.app/rpc/Trails/ExecuteIntent', { method: 'POST', headers: { @@ -224,7 +215,7 @@ const executeResponse = await fetch('https://trails-api.sequence.app/rpc/Trails/ -Quotes expire after **10 minutes**. +Quotes expire after **5 minutes**. Call `ExecuteIntent` before that window closes or request a new quote. For a Solana or Tron origin, call [`ExecuteIntentEdge`](/api-reference/endpoints/execute-intent-edge) instead — it arms the server-side fill monitor before the user pays on the edge chain. ## Next steps From 5a93c016c90e17ca02876baa6a5fbfafb74d2811 Mon Sep 17 00:00:00 2001 From: Michael Standen Date: Thu, 17 Sep 2026 15:15:34 +1200 Subject: [PATCH 2/2] docs: quote expiry is 15 minutes handle_quote.go sets intent.ExpiresAt to now + 15 minutes; ExecuteIntent on a QUOTED intent checks that same timestamp. --- use-cases/fund.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/use-cases/fund.mdx b/use-cases/fund.mdx index a9fa49b1..17f4f1ab 100644 --- a/use-cases/fund.mdx +++ b/use-cases/fund.mdx @@ -215,7 +215,7 @@ const executeResponse = await fetch('https://trails-api.sequence.app/rpc/Trails/ -Quotes expire after **5 minutes**. Call `ExecuteIntent` before that window closes or request a new quote. For a Solana or Tron origin, call [`ExecuteIntentEdge`](/api-reference/endpoints/execute-intent-edge) instead — it arms the server-side fill monitor before the user pays on the edge chain. +Quotes expire **15 minutes** after `QuoteIntent`. Call `ExecuteIntent` before that window closes or request a new quote. For a Solana or Tron origin, call [`ExecuteIntentEdge`](/api-reference/endpoints/execute-intent-edge) instead — it arms the server-side fill monitor before the user pays on the edge chain. ## Next steps