Skip to content

Document the error statuses the API already returns - #1005

Draft
shreyav wants to merge 1 commit into
mainfrom
claude/document-error-statuses
Draft

shreyav wants to merge 1 commit into
mainfrom
claude/document-error-statuses

Conversation

@shreyav

@shreyav shreyav commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Reason

Checking real API responses against the generated client found 49 (operation, status) pairs the API sends that the spec does not list. A generated SDK treats each as an unexpected status even though the behaviour is deliberate. This documents them; nothing about the API's behaviour changes.

Overview

One $ref to the existing ErrorNNN schema added per operation, in status order, with a description of when it occurs:

status operations when
423 every /sca/* route (9), /customers/external-accounts/{id}/trust, /trust/confirm, /untrust ACCOUNT_LOCKED after too many failed attempts
501 /beneficial-owners (POST, PATCH), /documents (POST, PUT, DELETE), /verifications, /customers/{id}/kyc-link, /customers/bulk/csv, /customers/bulk/jobs/{id}, /transactions/{id}/approve, /reject, /cancel, /transfer-in, /quotes/{id}/execute the customer's payment provider or the environment does not support the operation
403 POST /cards, PATCH /cards/{id}, PATCH /config, POST /transfer-in, /transfer-out, POST /customers, POST /customers/external-accounts, GET /receiver/external-account/{id}, the six /stablecoins* and /stablecoin-provider-accounts* routes view-only token, CUSTOMER_NOT_VERIFIED, feature not enabled for the platform, USER_NOT_READY
503 POST /auth/credentials/{id}/verify, POST /quotes, POST /quotes/{id}/execute, POST /stablecoins, POST /stablecoin-provider-accounts SERVICE_UNAVAILABLE when a dependency is down
404 GET /customers/internal-accounts, POST /quotes customer / source account not found
409 POST /auth/credentials, POST /documents WALLET_NOT_PROVISIONED, DOCUMENT_ALREADY_EXISTS
429 GET /customers RATE_LIMITED

Every code named in a description is already in that status's enum. openapi.yaml and mintlify/openapi.yaml rebuilt with make build-openapi; the Error423 component moves within the bundle because it is now referenced earlier, which is the only non-additive hunk.

Draft so the descriptions can be checked by whoever owns each surface; the wording is the part worth reviewing, the refs are mechanical.

Test Plan

  • npx @redocly/cli lint openapi.yaml: valid, 3 warnings (unchanged from main).
  • spectral lint openapi.yaml --fail-severity=error: 0 errors, 177 warnings, 691 infos (unchanged from main).

🤖 Generated with Claude Code


Generated by Claude Code

Forty-nine operation responses the API sends but the spec did not list,
found by checking real responses against the generated client:

- 423 ACCOUNT_LOCKED on every SCA route and the beneficiary trust routes
- 501 on the operations a payment provider or environment may not
  support: KYB (beneficial owners, documents, verifications, KYC link),
  bulk customer upload, async transaction approval/rejection/cancel,
  pull funding, quote execution from an external source
- 403 for view-only tokens (cards, config), unverified customers
  (transfers), platforms without stablecoin operations, and a customer
  not yet able to send (receiver lookup)
- 503 where a dependency can be unavailable (credential verification,
  quotes, quote execution, stablecoin provider calls)
- 404, 409 and 429 on the handful of routes that raise them

Bundle rebuilt with make build-openapi; the Error423 component moved in
the bundle because it is now referenced earlier.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@mintlify

mintlify Bot commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
Grid 🟢 Ready View Preview Sep 15, 2026, 6:21 PM

@vercel

vercel Bot commented Sep 15, 2026

Copy link
Copy Markdown

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

3 Skipped Deployments
Project Deployment Actions Updated
grid-cards-demo Ignored Ignored Sep 15, 2026 6:19pm UTC
grid-flow-builder Ignored Ignored Sep 15, 2026 6:19pm UTC
grid-wallet-demo Ignored Ignored Sep 15, 2026 6:19pm UTC

Request Review

@github-actions github-actions Bot added the breaking-change Introduces a breaking change to the OpenAPI spec label Sep 15, 2026
@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Breaking OpenAPI changes detected

oasdiff reports 4119 error / 2 warning changes to openapi.yaml.
This PR will need approval from an API reviewer before merge.

Errors (4119)

  • GET /agents/approvals — the data/items/quote/allOf[#/components/schemas/Quote]/destination/oneOf[subschema #2: UMA Address]/allOf[subschema #2]/umaAddress response property's maxLength was unset from 200 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/actions — the data/items/quote/allOf[#/components/schemas/Quote]/destination/oneOf[subschema #2: UMA Address]/allOf[subschema #2]/umaAddress response property's maxLength was unset from 200 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/actions/{actionId} — the quote/allOf[#/components/schemas/Quote]/destination/oneOf[subschema #2: UMA Address]/allOf[subschema #2]/umaAddress response property's maxLength was unset from 200 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #10: GBP Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #10: GBP Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #10: GBP Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #10: GBP Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #10: GBP Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #10: GBP Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #10: GBP Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #10: GBP Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #11: GHS Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #11: GHS Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #11: GHS Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #11: GHS Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #11: GHS Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #11: GHS Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #11: GHS Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #11: GHS Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #12: GTQ Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #12: GTQ Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #12: GTQ Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #12: GTQ Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #12: GTQ Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #12: GTQ Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #12: GTQ Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #12: GTQ Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #13: HKD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #13: HKD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #13: HKD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #13: HKD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #13: HKD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #13: HKD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #13: HKD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #13: HKD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #14: HTG Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #14: HTG Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #14: HTG Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #14: HTG Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #14: HTG Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #14: HTG Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #14: HTG Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #14: HTG Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #15: IDR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #15: IDR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #15: IDR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #15: IDR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #15: IDR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #15: IDR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #15: IDR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #15: IDR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #16: INR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #16: INR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #16: INR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #16: INR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #16: INR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #16: INR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #16: INR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #16: INR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #17: JMD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #17: JMD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #17: JMD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #17: JMD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #17: JMD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #17: JMD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #17: JMD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #17: JMD Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #18: KES Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #18: KES Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #18: KES Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #18: KES Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #18: KES Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #18: KES Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #18: KES Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #18: KES Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #19: MWK Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #19: MWK Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #19: MWK Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #19: MWK Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #19: MWK Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #19: MWK Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #19: MWK Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #19: MWK Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #1: AED Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #1: AED Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #1: AED Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #1: AED Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #1: AED Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #1: AED Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #1: AED Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #1: AED Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #20: MXN Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #20: MXN Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/fullName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #20: MXN Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #20: MXN Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #20: MXN Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/legalName response property's maxLength was unset from 250 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #20: MXN Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/phoneNumber response property's maxLength was unset from 50 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #20: MXN Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/registrationNumber response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #20: MXN Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #2: Business Beneficiary]/taxId response property's maxLength was unset from 100 for the response status 200 [response-property-max-length-unset].
  • GET /agents/me/external-accounts — the data/items/allOf[subschema #1]/accountInfo/oneOf[subschema #21: MYR Account]/allOf[subschema #3]/beneficiary/oneOf[subschema #1: Individual Beneficiary]/email response property's maxLength was unset from 320 for the response status 200 [response-property-max-length-unset].
  • …and 4019 more errors.

Warnings (2)

Show sample
  • POST webhook:card-status-change — removed the request property allOf[subschema #2]/data/cardCapabilities/supportsDigitalWalletTokenization [request-property-removed].
  • POST webhook:internal-account-status — removed the request property allOf[subschema #2]/data/cardCapabilities/supportsDigitalWalletTokenization [request-property-removed].

Detected by oasdiff. Full report: job summary or the oasdiff-report artifact.

@github-actions

github-actions Bot commented Sep 15, 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

chore(internal): regenerate SDK with no functional changes

kotlin

chore(internal): regenerate SDK with no functional changes

openapi

feat(api): add 403/404/409/423/429/501/503 error responses across endpoints

php

chore(internal): regenerate SDK with no functional changes

python

chore(internal): regenerate SDK with no functional changes

ruby

chore(internal): regenerate SDK with no functional changes

typescript

chore(internal): regenerate SDK with no functional changes

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 "error" diagnostic, but this did not represent a regression.
generate ❗build ⏭️ (prev: build ✅) → lint ⏭️ (prev: lint ❗) → test ✅

grid-openapi studio · code · diff

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

grid-kotlin studio · code · diff

Your SDK build had at least one "error" diagnostic, but this did not represent a regression.
generate ❗build ⏭️ (prev: build ✅) → lint ⏭️ (prev: lint ✅) → test ❗

grid-ruby studio · code · diff

Your SDK build had at least one "error" diagnostic, but this did not represent a regression.
generate ❗build ⏭️ (prev: build ✅) → lint ✅test ✅

grid-go studio · code · diff

Your SDK build had at least one "error" diagnostic, but this did not represent a regression.
generate ❗build ⏭️ (prev: build ✅) → lint ❗test ❗

go get github.com/stainless-sdks/grid-go@d093a61d4dc97f6b43ed111348c869ab86a778f5
grid-python studio · code · diff

Your SDK build had at least one "error" diagnostic, but this did not represent a regression.
generate ❗build ⏭️ (prev: build ✅) → lint ⏭️ (prev: lint ❗) → test ❗

grid-php studio · code · diff

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

grid-cli studio · code · diff

Your SDK build had at least one "error" 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-09-15 18:24:49 UTC

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

Labels

breaking-change Introduces a breaking change to the OpenAPI spec

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants