feat: document BENEFICIARY_TRUSTED (409) on customer external-account delete - #769
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 2 Skipped Deployments
|
This stack of pull requests is managed by Graphite. Learn more about stacking. |
✱ 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. |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|
|
Preview deployment for your docs. Learn more about Mintlify Previews.
|

Summary
DELETE /customers/external-accounts/{externalAccountId}can return409when the account is currently a trusted beneficiary, but the spec declared only204/401/404/500. This documents the missing status and its error code.BENEFICIARY_TRUSTEDadded to the sharedError409codeenum. Because it was absent, a generated client would raise a validation error while deserializing the response instead of surfacing a code the integrator can branch on.deleteoperation now declares409and itsdescriptionstates the ordering requirement: an account that is currently a trusted beneficiary must be untrusted first, viaPOST /customers/external-accounts/{externalAccountId}/untrust(and its/confirm), before it can be deleted.Trust cannot be revoked as a side effect of a delete — untrusting a beneficiary requires the customer to complete a Strong Customer Authentication challenge, which a
DELETEhas no way to carry. So the delete is refused while trust is in place rather than leaving the account deleted but still trusted.Both changes are additive and non-breaking, so
info.versionstays2025-10-13.Test plan
make lintexits 0 (Redocly + Spectral,--fail-severity=error): 632 findings, 0 errors, all pre-existing warnings/infos.make buildrebundledopenapi.yamlandmintlify/openapi.yaml; re-running it is a no-op, so the committed bundles byte-match the build output.409/BENEFICIARY_TRUSTEDpair is covered by tests asserting the status and code at the HTTP boundary, alongside the trust → refused-delete → untrust → successful-delete lifecycle.Public
Documents a
409 BENEFICIARY_TRUSTEDresponse onDELETE /customers/external-accounts/{externalAccountId}: an external account that is currently a trusted beneficiary must be untrusted before it can be deleted.Requested by @jklein24