From a346991c4221e91a0ca9745c8d16af4ed4c5cbd4 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 28 May 2026 11:09:34 +0000 Subject: [PATCH 1/4] feat(api): Add created field and make completed_at nullable in latest_challenge --- .stats.yml | 4 ++-- src/resources/card-authorizations.ts | 17 +++++++++++------ 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/.stats.yml b/.stats.yml index 29c3961c..c47d8ece 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 195 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic/lithic-efe780032e44b3cf0f6914407e43bce6aa7176fa50aa6ec018f93c1f28af8490.yml -openapi_spec_hash: fcb4ca53ca59978f23f21d7c74fcc0b0 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic/lithic-af18ede440e3b8a8b15aa3831c5add93c25934cdb037a0c6128a4c4e82fe5d4f.yml +openapi_spec_hash: be9b3152e28212b685337a42ad1acf97 config_hash: a0a579b0564a5c18568a78f5ba2b6653 diff --git a/src/resources/card-authorizations.ts b/src/resources/card-authorizations.ts index c38a3eba..4e383741 100644 --- a/src/resources/card-authorizations.ts +++ b/src/resources/card-authorizations.ts @@ -439,6 +439,17 @@ export namespace CardAuthorization { * merchant. */ export interface LatestChallenge { + /** + * The date and time when the Authorization Challenge was completed in UTC. Filled + * only if the challenge has been completed. + */ + completed_at: string | null; + + /** + * The date and time when the Authorization Challenge was created in UTC + */ + created: string; + /** * The method used to deliver the challenge to the cardholder * @@ -463,12 +474,6 @@ export namespace CardAuthorization { * - `ERROR` - There was an error processing the challenge */ status: 'COMPLETED' | 'DECLINED' | 'PENDING' | 'EXPIRED' | 'ERROR'; - - /** - * The date and time when the Authorization Challenge was completed in UTC. Present - * only if the status is `COMPLETED`. - */ - completed_at?: string; } /** From 52fcdae2df3264e79c2a9550630f2cca1f3c563b Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 28 May 2026 16:05:14 +0000 Subject: [PATCH 2/4] fix(mcp): use `pure-lockfile` when building mcp server --- scripts/build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/build b/scripts/build index 8847b24d..a1ba882a 100755 --- a/scripts/build +++ b/scripts/build @@ -52,6 +52,6 @@ fi # build all sub-packages for dir in packages/*; do if [ -d "$dir" ]; then - (cd "$dir" && yarn install && yarn build) + (cd "$dir" && yarn install --pure-lockfile && yarn build) fi done From 6d084ee96a3684fcb9bb70d08a5574193fa906ce Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 28 May 2026 18:30:09 +0000 Subject: [PATCH 3/4] docs(api): update support contact from email to URL --- .stats.yml | 4 ++-- packages/mcp-server/src/local-docs-search.ts | 4 ++-- src/resources/accounts.ts | 2 +- src/resources/cards/cards.ts | 6 +++--- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.stats.yml b/.stats.yml index c47d8ece..3a379657 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 195 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic/lithic-af18ede440e3b8a8b15aa3831c5add93c25934cdb037a0c6128a4c4e82fe5d4f.yml -openapi_spec_hash: be9b3152e28212b685337a42ad1acf97 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic/lithic-c1cfc621309e4d49899f9b055c399d7ad3eb24c05bad299322c1e03804d3d130.yml +openapi_spec_hash: 799d9da903ff2e4d51fe3f1566d17c92 config_hash: a0a579b0564a5c18568a78f5ba2b6653 diff --git a/packages/mcp-server/src/local-docs-search.ts b/packages/mcp-server/src/local-docs-search.ts index 4511d9cf..7b8a6b96 100644 --- a/packages/mcp-server/src/local-docs-search.ts +++ b/packages/mcp-server/src/local-docs-search.ts @@ -2869,14 +2869,14 @@ const EMBEDDED_METHODS: MethodEntry[] = [ httpMethod: 'post', summary: 'Search for card by PAN', description: - 'Get card configuration such as spend limit and state. Customers must be PCI compliant to use this endpoint. Please contact [support@lithic.com](mailto:support@lithic.com) for questions.\n*Note: this is a `POST` endpoint because it is more secure to send sensitive data in a request body than in a URL.*', + 'Get card configuration such as spend limit and state. Customers must be PCI compliant to use this endpoint. Please contact [support.lithic.com](https://support.lithic.com/) for questions.\n*Note: this is a `POST` endpoint because it is more secure to send sensitive data in a request body than in a URL.*', stainlessPath: '(resource) cards > (method) search_by_pan', qualified: 'client.cards.searchByPan', params: ['pan: string;'], response: "{ token: string; account_token: string; card_program_token: string; created: string; funding: { token: string; created: string; last_four: string; state: 'DELETED' | 'ENABLED' | 'PENDING'; type: 'DEPOSITORY_CHECKING' | 'DEPOSITORY_SAVINGS'; account_name?: string; nickname?: string; }; last_four: string; pin_status: 'OK' | 'BLOCKED' | 'NOT_SET'; spend_limit: number; spend_limit_duration: 'ANNUALLY' | 'FOREVER' | 'MONTHLY' | 'TRANSACTION'; state: 'CLOSED' | 'OPEN' | 'PAUSED' | 'PENDING_ACTIVATION' | 'PENDING_FULFILLMENT'; type: 'MERCHANT_LOCKED' | 'PHYSICAL' | 'SINGLE_USE' | 'VIRTUAL' | 'UNLOCKED' | 'DIGITAL_WALLET'; auth_rule_tokens?: string[]; bulk_order_token?: string; cardholder_currency?: string; comment?: string; digital_card_art_token?: string; exp_month?: string; exp_year?: string; hostname?: string; memo?: string; network_program_token?: string; pending_commands?: string[]; product_id?: string; replacement_for?: string; substatus?: string; }", markdown: - "## search_by_pan\n\n`client.cards.searchByPan(pan: string): object`\n\n**post** `/v1/cards/search_by_pan`\n\nGet card configuration such as spend limit and state. Customers must be PCI compliant to use this endpoint. Please contact [support@lithic.com](mailto:support@lithic.com) for questions.\n*Note: this is a `POST` endpoint because it is more secure to send sensitive data in a request body than in a URL.*\n\n### Parameters\n\n- `pan: string`\n The PAN for the card being retrieved.\n\n### Returns\n\n- `{ token: string; account_token: string; card_program_token: string; created: string; funding: { token: string; created: string; last_four: string; state: 'DELETED' | 'ENABLED' | 'PENDING'; type: 'DEPOSITORY_CHECKING' | 'DEPOSITORY_SAVINGS'; account_name?: string; nickname?: string; }; last_four: string; pin_status: 'OK' | 'BLOCKED' | 'NOT_SET'; spend_limit: number; spend_limit_duration: 'ANNUALLY' | 'FOREVER' | 'MONTHLY' | 'TRANSACTION'; state: 'CLOSED' | 'OPEN' | 'PAUSED' | 'PENDING_ACTIVATION' | 'PENDING_FULFILLMENT'; type: 'MERCHANT_LOCKED' | 'PHYSICAL' | 'SINGLE_USE' | 'VIRTUAL' | 'UNLOCKED' | 'DIGITAL_WALLET'; auth_rule_tokens?: string[]; bulk_order_token?: string; cardholder_currency?: string; comment?: string; digital_card_art_token?: string; exp_month?: string; exp_year?: string; hostname?: string; memo?: string; network_program_token?: string; pending_commands?: string[]; product_id?: string; replacement_for?: string; substatus?: string; }`\n Card details with potentially PCI sensitive information for Enterprise customers\n\n### Example\n\n```typescript\nimport Lithic from 'lithic';\n\nconst client = new Lithic();\n\nconst card = await client.cards.searchByPan({ pan: '4111111289144142' });\n\nconsole.log(card);\n```", + "## search_by_pan\n\n`client.cards.searchByPan(pan: string): object`\n\n**post** `/v1/cards/search_by_pan`\n\nGet card configuration such as spend limit and state. Customers must be PCI compliant to use this endpoint. Please contact [support.lithic.com](https://support.lithic.com/) for questions.\n*Note: this is a `POST` endpoint because it is more secure to send sensitive data in a request body than in a URL.*\n\n### Parameters\n\n- `pan: string`\n The PAN for the card being retrieved.\n\n### Returns\n\n- `{ token: string; account_token: string; card_program_token: string; created: string; funding: { token: string; created: string; last_four: string; state: 'DELETED' | 'ENABLED' | 'PENDING'; type: 'DEPOSITORY_CHECKING' | 'DEPOSITORY_SAVINGS'; account_name?: string; nickname?: string; }; last_four: string; pin_status: 'OK' | 'BLOCKED' | 'NOT_SET'; spend_limit: number; spend_limit_duration: 'ANNUALLY' | 'FOREVER' | 'MONTHLY' | 'TRANSACTION'; state: 'CLOSED' | 'OPEN' | 'PAUSED' | 'PENDING_ACTIVATION' | 'PENDING_FULFILLMENT'; type: 'MERCHANT_LOCKED' | 'PHYSICAL' | 'SINGLE_USE' | 'VIRTUAL' | 'UNLOCKED' | 'DIGITAL_WALLET'; auth_rule_tokens?: string[]; bulk_order_token?: string; cardholder_currency?: string; comment?: string; digital_card_art_token?: string; exp_month?: string; exp_year?: string; hostname?: string; memo?: string; network_program_token?: string; pending_commands?: string[]; product_id?: string; replacement_for?: string; substatus?: string; }`\n Card details with potentially PCI sensitive information for Enterprise customers\n\n### Example\n\n```typescript\nimport Lithic from 'lithic';\n\nconst client = new Lithic();\n\nconst card = await client.cards.searchByPan({ pan: '4111111289144142' });\n\nconsole.log(card);\n```", perLanguage: { typescript: { method: 'client.cards.searchByPan', diff --git a/src/resources/accounts.ts b/src/resources/accounts.ts index 3b78513b..053eb699 100644 --- a/src/resources/accounts.ts +++ b/src/resources/accounts.ts @@ -133,7 +133,7 @@ export interface Account { * accounts are unable to be transitioned to `ACTIVE` or `PAUSED` states. * Accounts can be manually set to `CLOSED`, or this can be done by Lithic due to * failure to pass KYB/KYC or for risk/compliance reasons. Please contact - * [support@lithic.com](mailto:support@lithic.com) if you believe this was done + * [support.lithic.com](https://support.lithic.com/) if you believe this was done * by mistake. */ state: 'ACTIVE' | 'PAUSED' | 'CLOSED'; diff --git a/src/resources/cards/cards.ts b/src/resources/cards/cards.ts index 13e4007b..9fabb8a6 100644 --- a/src/resources/cards/cards.ts +++ b/src/resources/cards/cards.ts @@ -393,8 +393,8 @@ export class Cards extends APIResource { /** * Get card configuration such as spend limit and state. Customers must be PCI * compliant to use this endpoint. Please contact - * [support@lithic.com](mailto:support@lithic.com) for questions. _Note: this is a - * `POST` endpoint because it is more secure to send sensitive data in a request + * [support.lithic.com](https://support.lithic.com/) for questions. _Note: this is + * a `POST` endpoint because it is more secure to send sensitive data in a request * body than in a URL._ * * @example @@ -447,7 +447,7 @@ export interface Card extends NonPCICard { /** * Primary Account Number (PAN) (i.e. the card number). Customers must be PCI * compliant to have PAN returned as a field in production. Please contact - * support@lithic.com for questions. + * https://support.lithic.com/ for questions. */ pan?: string; } From 8b3fe334eee69d1c027ff4599f05747868dc8a63 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 28 May 2026 18:30:46 +0000 Subject: [PATCH 4/4] release: 0.141.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 18 ++++++++++++++++++ package.json | 2 +- packages/mcp-server/manifest.json | 2 +- packages/mcp-server/package.json | 2 +- packages/mcp-server/src/server.ts | 2 +- src/version.ts | 2 +- 7 files changed, 24 insertions(+), 6 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 593fcf0c..2261026f 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.140.0" + ".": "0.141.0" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a79c26a..cf83836e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +## 0.141.0 (2026-05-28) + +Full Changelog: [v0.140.0...v0.141.0](https://github.com/lithic-com/lithic-node/compare/v0.140.0...v0.141.0) + +### Features + +* **api:** Add created field and make completed_at nullable in latest_challenge ([a346991](https://github.com/lithic-com/lithic-node/commit/a346991c4221e91a0ca9745c8d16af4ed4c5cbd4)) + + +### Bug Fixes + +* **mcp:** use `pure-lockfile` when building mcp server ([52fcdae](https://github.com/lithic-com/lithic-node/commit/52fcdae2df3264e79c2a9550630f2cca1f3c563b)) + + +### Documentation + +* **api:** update support contact from email to URL ([6d084ee](https://github.com/lithic-com/lithic-node/commit/6d084ee96a3684fcb9bb70d08a5574193fa906ce)) + ## 0.140.0 (2026-05-26) Full Changelog: [v0.139.0...v0.140.0](https://github.com/lithic-com/lithic-node/compare/v0.139.0...v0.140.0) diff --git a/package.json b/package.json index 373e6069..9738c8de 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lithic", - "version": "0.140.0", + "version": "0.141.0", "description": "The official TypeScript library for the Lithic API", "author": "Lithic ", "types": "dist/index.d.ts", diff --git a/packages/mcp-server/manifest.json b/packages/mcp-server/manifest.json index 76ca0636..4102c483 100644 --- a/packages/mcp-server/manifest.json +++ b/packages/mcp-server/manifest.json @@ -1,7 +1,7 @@ { "dxt_version": "0.2", "name": "lithic-mcp", - "version": "0.140.0", + "version": "0.141.0", "description": "The official MCP Server for the Lithic API", "author": { "name": "Lithic", diff --git a/packages/mcp-server/package.json b/packages/mcp-server/package.json index ab98d9eb..37dd7c04 100644 --- a/packages/mcp-server/package.json +++ b/packages/mcp-server/package.json @@ -1,6 +1,6 @@ { "name": "lithic-mcp", - "version": "0.140.0", + "version": "0.141.0", "description": "The official MCP Server for the Lithic API", "author": "Lithic ", "types": "dist/index.d.ts", diff --git a/packages/mcp-server/src/server.ts b/packages/mcp-server/src/server.ts index 964f5925..0880a49f 100644 --- a/packages/mcp-server/src/server.ts +++ b/packages/mcp-server/src/server.ts @@ -29,7 +29,7 @@ export const newMcpServer = async ({ new McpServer( { name: 'lithic_api', - version: '0.140.0', + version: '0.141.0', }, { instructions: await getInstructions({ stainlessApiKey, customInstructionsPath }), diff --git a/src/version.ts b/src/version.ts index 47d5dc0b..98896b65 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '0.140.0'; // x-release-please-version +export const VERSION = '0.141.0'; // x-release-please-version