feat(webhooks): add wallet-operation partner webhook - #802
Conversation
Document the wallet-operation webhook that fires when an asynchronous embedded-wallet operation reaches a terminal state: WALLET_OPERATION.COMPLETED on terminal success, WALLET_OPERATION.FAILED on terminal failure. The specific op is carried in data.operationType (auth_credential.delete, session.revoke, wallet.export); data.status is lowercase completed/failed. Adds WalletOperationWebhook / WalletOperationWebhookData / OperationError schemas, the two WALLET_OPERATION.* WebhookType enum values, and registers the webhook in the root spec. Additive only; no API version bump. A data-returning result (wallet.export) is retrieved by resubmitting the original signed request until it returns the result -- never delivered in the webhook. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
|
The latest updates on your projects. Learn more about Vercel for GitHub. 2 Skipped Deployments
|
✱ Stainless preview builds for gridThis PR will update the cli go kotlin openapi php python ruby typescript Edit this comment to update them. They will appear in their respective SDK's changelogs. ✅ grid-typescript studio · code · diff
✅ grid-openapi studio · code · diff
✅ grid-ruby studio · code · diff
✅ grid-go studio · code · diff
✅ grid-kotlin studio · code · diff
✅ grid-python studio · code · diff
✅ grid-php studio · code · diff
✅ grid-cli studio · code · diff
This comment is auto-generated by GitHub Actions and is automatically kept up to date as you push. |
What
Add the
wallet-operationpartner webhook to the public Grid API spec: the webhook entry plus itsWalletOperationWebhook/WalletOperationWebhookData/OperationErrorschemas, and the twoWALLET_OPERATION.*values in the centralWebhookTypeenum.This documents a webhook that already fires from the backend on terminal transitions of asynchronous embedded-wallet operations —
WALLET_OPERATION.COMPLETEDon terminal success,WALLET_OPERATION.FAILEDon terminal failure. We are just formalizing the public contract.Shape
type(UPPERCASE, matching theOBJECT.EVENTconvention):WALLET_OPERATION.COMPLETED,WALLET_OPERATION.FAILED.data.status(lowercase):completed,failed.data.operationType(the specific op):auth_credential.delete,session.revoke,wallet.export.data.error({ code }) present only on failure;null/omitted otherwise.wallet.export), the result is never delivered in the webhook — it is retrieved by resubmitting the original signed export request until it returns the result.Notes
info.versionbump (stays2025-10-13); noservers.urlchange.openapi.yaml,mintlify/openapi.yaml) vianpm run build:openapi;npm run lint:openapipasses with 0 errors.GET /operations/{operationId}poll endpoint, per the resubmit-until-terminal retrieval contract that superseded poll-an-id. [grid-api] async-ops: GET /operations + wallet_operation webhooks (DRAFT — do not merge until async feature deploys) #559 will be closed in favor of this.Status
DRAFT — first of a two-step change; the monorepo regen + emitter casing alignment lands separately.