Skip to content

docs(quotes): document that quote create and execute require TRANSACT - #843

Open
DhruvPareek wants to merge 1 commit into
mainfrom
08-18-document-transact-permission-on-quotes
Open

docs(quotes): document that quote create and execute require TRANSACT#843
DhruvPareek wants to merge 1 commit into
mainfrom
08-18-document-transact-permission-on-quotes

Conversation

@DhruvPareek

Copy link
Copy Markdown
Contributor

Summary

Neither POST /quotes nor POST /quotes/{quoteId}/execute stated which token permission it requires, and neither documented a 403 for a permission refusal on execute.

Execute is the one worth spelling out. Its description covers Grid-Wallet-Signature in detail for EMBEDDED_WALLET sources, which reads as though the signature is the whole authorization story. It isn't: the signature proves the wallet holder approved the payment, while TRANSACT is what authorizes your integration to release it. An integrator building a read-only service could reasonably conclude a VIEW token plus a signature was a supported way to execute.

Changes

  • openapi/paths/quotes/quotes_{quoteId}_execute.yaml — state the TRANSACT requirement and how it relates to Grid-Wallet-Signature; add the 403
  • openapi/paths/quotes/quotes.yaml — state the TRANSACT requirement (a quote is the instrument execute draws on, and immediatelyExecute moves funds in the same request); extend the existing 403 description, which previously named only the End User Terms case
  • Regenerated bundles via make build: openapi.yaml, mintlify/openapi.yaml

Verification

  • make build — bundles regenerate cleanly; the bundle diff is exactly these four additions, no reformatting of unrelated paths
  • make lint"Woohoo! Your API description is valid.", 0 errors (pre-existing warnings/infos on unrelated beneficiary schemas only)

Original PR: #842

Neither endpoint stated which permission it needs. Execute in particular reads
as though the Grid-Wallet-Signature header is the whole authorization story on
an EMBEDDED_WALLET source, so spell out that the signature and the token
permission answer two different questions.

Co-Authored-By: dhruvpareek <dhruvpareek@users.noreply.github.com>
@vercel

vercel Bot commented Aug 18, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

2 Skipped Deployments
Project Deployment Actions Updated (UTC)
grid-flow-builder Ignored Ignored Aug 18, 2026 8:20pm
grid-wallet-demo Ignored Ignored Aug 18, 2026 8:20pm

Request Review

Copy link
Copy Markdown

This stack of pull requests is managed by Graphite. Learn more about stacking.

@DhruvPareek
DhruvPareek marked this pull request as ready for review August 18, 2026 20:21
@github-actions

github-actions Bot commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

✱ Stainless preview builds for grid

This PR will update the grid SDKs with the following commit messages.

cli

chore(internal): regenerate SDK with no functional changes

go

docs(api): document permission requirements in quote methods

kotlin

docs(api): document TRANSACT permission requirement for quotes methods

openapi

docs(api): add TRANSACT permission requirements to quotes endpoints

php

docs(api): clarify TRANSACT permission requirements for quotes create and execute

python

docs(api): document TRANSACT permission requirements for quotes create/execute

ruby

docs(api): clarify permission requirements for quotes create and execute methods

typescript

docs(api): add permission requirements to quotes create and execute methods

Edit this comment to update them. They will appear in their respective SDK's changelogs.

grid-typescript studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅build ✅lint ❗test ✅

npm install https://pkg.stainless.com/s/grid-typescript/c67b0395abde84d1f68113b728ed735132075baf/dist.tar.gz
grid-openapi studio · code · diff

Your SDK build had at least one "warning" diagnostic, but this did not represent a regression.
generate ⚠️

grid-ruby studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅build ✅lint ✅test ✅

grid-go studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅build ✅lint ❗test ❗

go get github.com/stainless-sdks/grid-go@d5113445fd0eac3f86483e7fcea76903dd9d7da3
grid-kotlin studio · code · diff

Your SDK build had at least one "warning" diagnostic, but this did not represent a regression.
generate ⚠️build ✅lint ✅test ❗

grid-python studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅build ✅lint ❗test ❗

pip install https://pkg.stainless.com/s/grid-python/51c6a722589edf5ffeb3da28941526e7fdd46919/grid-0.0.1-py3-none-any.whl
grid-php studio · code · diff

Your SDK build had at least one "note" diagnostic, but this did not represent a regression.
generate ✅lint ✅test ✅

grid-cli studio · code · diff

Your SDK build had at least one "warning" diagnostic, but this did not represent a regression.
generate ⚠️build ❗lint ❗test ❗


This comment is auto-generated by GitHub Actions and is automatically kept up to date as you push.
If you push custom code to the preview branch, re-run this workflow to update the comment.
Last updated: 2026-08-18 20:26:28 UTC

@greptile-apps

greptile-apps Bot commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR clarifies that quote creation and execution require TRANSACT, distinguishes that permission from Embedded Wallet signature authorization, and documents the relevant forbidden responses.

  • Adds the permission requirement to both quote operations.
  • Expands quote creation’s existing 403 description and adds a documented 403 response to execution.
  • Keeps the root and Mintlify OpenAPI bundles synchronized with the modular source files.

Confidence Score: 5/5

The PR appears safe to merge.

The source specifications and both generated bundles remain synchronized, and the added permission and error-response documentation is internally consistent with the shared OpenAPI contracts.

Important Files Changed

Filename Overview
openapi/paths/quotes/quotes.yaml Accurately documents the TRANSACT requirement and broadens the existing 403 description while reusing Error403.
openapi/paths/quotes/quotes_{quoteId}_execute.yaml Clarifies the distinct token and wallet-holder authorization requirements and adds a schema-consistent 403 response.
openapi.yaml Generated bundle faithfully mirrors the quote source-file changes.
mintlify/openapi.yaml Mintlify’s generated OpenAPI copy remains identical to the root bundle.

Reviews (1): Last reviewed commit: "docs(quotes): document that quote create..." | Re-trigger Greptile

Copy link
Copy Markdown
Contributor Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants