Repository navigation
deprecate(issuing): deprecate the update-card headers and make the revoke and suspend body optional - #473
Conversation
…voke and suspend body optional The API no longer documents the return-encrypted-cvv and Encryption-Key headers on the update card operation, and the update card response does not include encrypted_cvv. The headers parameter of updateCard is now deprecated in the JSDoc and typings; it is still sent when set and will be removed in the next major version. The revoke and suspend request bodies are optional in the API, so revokeCard and suspendCard can now be called without a body.
🟢 Risk Classification: LOWApproval route: AI Auto-Approval Classification reasons
Operational gates
Files analysed: 6 wall-e 2026.06.19-02 · policy |
🔬 Debug — why this classification?Each reason code emitted by the classifier, its source clause in the AI in SDLC Control Framework, and what it means.
Kinds:
See issue #3 for the proposal to formalise this map as Appendix A of the standards doc. wall-e 2026.06.19-02 · debug |
There was a problem hiding this comment.
✅ Auto-approved — this PR meets all Low-risk criteria.
All checks passed, no unresolved comments, and the change classification is:
no_low_class_matchedprod_source_modified2.2.6_logical_extension:The diff contains only JSDoc comment updates, TypeScript declaration changes (adding an overload and making body optional), and no runtime logic changes, meaning it is a purely non-destructive, function-preserving documentation/typing extension of existing code paths with no new endpoints, auth changes, persisted data, or external integrations.
wall-e 2026.06.19-02 · policy 6b4ce2b3b45a…
🟢 Risk Classification: LOWApproval route: AI Auto-Approval Classification reasons
Operational gates
Files analysed: 6 wall-e 2026.06.19-02 · policy |
🔬 Debug — why this classification?Each reason code emitted by the classifier, its source clause in the AI in SDLC Control Framework, and what it means.
Kinds:
See issue #3 for the proposal to formalise this map as Appendix A of the standards doc. wall-e 2026.06.19-02 · debug |
There was a problem hiding this comment.
✅ Auto-approved — this PR meets all Low-risk criteria.
All checks passed, no unresolved comments, and the change classification is:
no_low_class_matchedprod_source_modified2.2.6_logical_extension:The PR only updates JSDoc comments, TypeScript type declarations (making body optional, adding a deprecation overload), and adds tests — no runtime logic, new endpoints, new data persistence, or auth changes are introduced.
wall-e 2026.06.19-02 · policy 6b4ce2b3b45a…
🟢 Risk Classification: LOWApproval route: AI Auto-Approval Classification reasons
Operational gates
Files analysed: 6 wall-e 2026.06.19-02 · policy |
🔬 Debug — why this classification?Each reason code emitted by the classifier, its source clause in the AI in SDLC Control Framework, and what it means.
Kinds:
See issue #3 for the proposal to formalise this map as Appendix A of the standards doc. wall-e 2026.06.19-02 · debug |
|
There was a problem hiding this comment.
✅ Auto-approved — this PR meets all Low-risk criteria.
All checks passed, no unresolved comments, and the change classification is:
no_low_class_matchedprod_source_modified2.2.6_logical_extension:The change is purely documentation/JSDoc/TypeScript type signature updates that deprecate existing parameters and make existing body parameters optional, with no new code paths, endpoints, auth changes, persisted data, or external integrations introduced.
wall-e 2026.06.19-02 · policy 6b4ce2b3b45a…



Summary
The API no longer documents the
return-encrypted-cvvandEncryption-Keyrequest headers on the update card operation, and the update card response does not includeencrypted_cvv. The revoke and suspend request bodies are optional. This PR deprecates the headers parameter (it keeps working and is removed in the next major version) and letsrevokeCardandsuspendCardbe called without a body.Calling
revokeCard(id)andsuspendCard(id)with no body (the SDK sends no request body) was verified against the sandbox: both succeed.Changes
src/api/issuing/cards.jsCards#updateCard:headersparameter documented as deprecated; the return JSDoc lists every update card response field, withrevocation_datemarked deprecated (usescheduled_revocation_date) andis_single_usenoted as virtual cards only.Cards#revokeCard,Cards#suspendCard:bodyis optional,reasonvalues documented, response documented as_links.src/api/issuing/issuing.js: JSDoc forIssuing#updateCardwith the deprecatedheadersparameter.types/dist/api/issuing/cards.d.ts,types/dist/api/issuing/issuing.d.tsupdateCard(id: string, body: object).updateCard(id: string, body: object, headers?: object)marked@deprecated.revokeCard(id: string, body?: object)andsuspendCard(id: string, body?: object).test/issuing/cards/cards-unit.js: new tests for revoke and suspend without a body (asserting no body on the wire); existing header tests unchanged.test/issuing/cards/cards-unit.js,test/issuing/cards/cards-it.js: comment cleanups.API Reference
Breaking changes
None. JSDoc and typings only; the headers are still sent when set, and existing calls with a body keep working.
README
No changes needed: the README does not document these methods or headers.