Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ jobs:
github.repository == 'stainless-sdks/lithic-ruby' &&
(github.event_name == 'push' || github.event.pull_request.head.repo.fork) && (github.event_name != 'push' || github.event.head_commit.message != 'codegen metadata')
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
uses: ruby/setup-ruby@c4e5b1316158f92e3d49443a9d58b31d25ac0f8f # v1.306.0
with:
bundler-cache: false
- run: |-
Expand All @@ -39,7 +39,7 @@ jobs:
github.repository == 'stainless-sdks/lithic-ruby' &&
!startsWith(github.ref, 'refs/heads/stl/')
id: github-oidc
uses: actions/github-script@v8
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0
with:
script: core.setOutput('github_token', await core.getIDToken());

Expand All @@ -60,9 +60,9 @@ jobs:
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork

steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
uses: ruby/setup-ruby@c4e5b1316158f92e3d49443a9d58b31d25ac0f8f # v1.306.0
with:
bundler-cache: false
- run: |-
Expand All @@ -76,9 +76,9 @@ jobs:
runs-on: ${{ github.repository == 'stainless-sdks/lithic-ruby' && 'depot-ubuntu-24.04' || 'ubuntu-latest' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.fork
steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
uses: ruby/setup-ruby@c4e5b1316158f92e3d49443a9d58b31d25ac0f8f # v1.306.0
with:
bundler-cache: false
- run: |-
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/publish-gem.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
uses: ruby/setup-ruby@c4e5b1316158f92e3d49443a9d58b31d25ac0f8f # v1.306.0
with:
bundler-cache: false
- run: |-
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-doctor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
if: github.repository == 'lithic-com/lithic-ruby' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || startsWith(github.head_ref, 'release-please') || github.head_ref == 'next')

steps:
- uses: actions/checkout@v6
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Check release environment
run: |
Expand Down
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "0.14.0"
".": "0.15.0"
}
8 changes: 4 additions & 4 deletions .stats.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
configured_endpoints: 193
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic/lithic-00f07b0edcc0c3c5ef79920ced7f58dac2434df5e4c27ff6041783e8228315f9.yml
openapi_spec_hash: 963688b09480159a06865075c94a2577
config_hash: 265a2b679964f4ad5706de101ad2a942
configured_endpoints: 195
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic/lithic-efe780032e44b3cf0f6914407e43bce6aa7176fa50aa6ec018f93c1f28af8490.yml
openapi_spec_hash: fcb4ca53ca59978f23f21d7c74fcc0b0
config_hash: a0a579b0564a5c18568a78f5ba2b6653
26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,31 @@
# Changelog

## 0.15.0 (2026-05-27)

Full Changelog: [v0.14.0...v0.15.0](https://github.com/lithic-com/lithic-ruby/compare/v0.14.0...v0.15.0)

### Features

* **api:** Add authorization challenge response endpoint and webhook ([a270862](https://github.com/lithic-com/lithic-ruby/commit/a270862d8522a456f88111f92d91d7adfe285b96))
* **api:** add INVALID_PAN value to TokenizationDeclineReason enum ([751f176](https://github.com/lithic-com/lithic-ruby/commit/751f176d6bd4a895c00edce99cb22055001c5597))
* **api:** Add OUT_OF_BAND challenge method and DECLINED status to Authorization ([886bb10](https://github.com/lithic-com/lithic-ruby/commit/886bb1020fcc81e4862cbceee98fcb8eb7ac9b35))
* **api:** Add pause external bank account endpoint ([1f9fdd2](https://github.com/lithic-com/lithic-ruby/commit/1f9fdd2ba99353edb1560877ca098664e4fbb1a9))
* **api:** Add schemas for authorization adjustment rules ([61998a2](https://github.com/lithic-com/lithic-ruby/commit/61998a2d54a2eb05f1fe517e34bfbedbe1dbd02c))


### Bug Fixes

* **client:** elide content type header on requests without body ([d3a58d5](https://github.com/lithic-com/lithic-ruby/commit/d3a58d57130f65c30e56d39ba380cf8fe04e49da))
* **types:** correct value type from Integer to Float in auth rules ([c8a51d0](https://github.com/lithic-com/lithic-ruby/commit/c8a51d0231516251e038f074e3fc364222570f57))
* **types:** make cardholder_currency nullable in CardProgram ([89ded5f](https://github.com/lithic-com/lithic-ruby/commit/89ded5fe6729b1e0db8cb280e1da402b9a1a01b8))
* **types:** make external_id, naics_code nullable in enrollment, parent_company in kyb ([1128d8d](https://github.com/lithic-com/lithic-ruby/commit/1128d8df654667a9a2db5ec75e5a5eb9755c75e2))
* **types:** make fields nullable across balance/statement/settlement/etc, add enum values ([6259d4f](https://github.com/lithic-com/lithic-ruby/commit/6259d4fa0c42b77ce2f7abe4962c64ca9eb53117))


### Documentation

* **api:** clarify ACCOUNT_AGE behavior in auth_rules conditional parameters ([8b7bfc8](https://github.com/lithic-com/lithic-ruby/commit/8b7bfc850151d17038fb50aecc6509aa81196e77))

## 0.14.0 (2026-05-08)

Full Changelog: [v0.13.0...v0.14.0](https://github.com/lithic-com/lithic-ruby/compare/v0.13.0...v0.14.0)
Expand Down
2 changes: 1 addition & 1 deletion Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ GIT
PATH
remote: .
specs:
lithic (0.14.0)
lithic (0.15.0)
cgi
connection_pool

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ To use this gem, install via Bundler by adding the following to your application
<!-- x-release-please-start-version -->

```ruby
gem "lithic", "~> 0.14.0"
gem "lithic", "~> 0.15.0"
```

<!-- x-release-please-end -->
Expand Down
6 changes: 6 additions & 0 deletions lib/lithic.rb
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@
require_relative "lithic/models/auth_rules/v2/backtest_results"
require_relative "lithic/models/book_transfer_response"
require_relative "lithic/models/non_pci_card"
require_relative "lithic/models/card_authorization"
require_relative "lithic/models/transactions/events/enhanced_data"
require_relative "lithic/models/dispute_evidence"
require_relative "lithic/models/dispute_v2"
Expand Down Expand Up @@ -125,6 +126,7 @@
require_relative "lithic/models/auth_rules/conditional_ach_action_parameters"
require_relative "lithic/models/auth_rules/conditional_attribute"
require_relative "lithic/models/auth_rules/conditional_authorization_action_parameters"
require_relative "lithic/models/auth_rules/conditional_authorization_adjustment_parameters"
require_relative "lithic/models/auth_rules/conditional_block_parameters"
require_relative "lithic/models/auth_rules/conditional_card_transaction_update_action_parameters"
require_relative "lithic/models/auth_rules/conditional_operation"
Expand Down Expand Up @@ -172,7 +174,9 @@
require_relative "lithic/models/book_transfer_transaction_updated_webhook_event"
require_relative "lithic/models/card"
require_relative "lithic/models/card_authorization_approval_request_webhook_event"
require_relative "lithic/models/card_authorization_challenge_response_params"
require_relative "lithic/models/card_authorization_challenge_response_webhook_event"
require_relative "lithic/models/card_authorization_challenge_webhook_event"
require_relative "lithic/models/card_bulk_order"
require_relative "lithic/models/card_bulk_order_create_params"
require_relative "lithic/models/card_bulk_order_list_params"
Expand Down Expand Up @@ -269,6 +273,7 @@
require_relative "lithic/models/external_bank_account_create_response"
require_relative "lithic/models/external_bank_account_list_params"
require_relative "lithic/models/external_bank_account_list_response"
require_relative "lithic/models/external_bank_account_pause_params"
require_relative "lithic/models/external_bank_account_retrieve_params"
require_relative "lithic/models/external_bank_account_retrieve_response"
require_relative "lithic/models/external_bank_account_retry_micro_deposits_params"
Expand Down Expand Up @@ -476,6 +481,7 @@
require_relative "lithic/resources/auth_stream_enrollment"
require_relative "lithic/resources/balances"
require_relative "lithic/resources/book_transfers"
require_relative "lithic/resources/card_authorizations"
require_relative "lithic/resources/card_bulk_orders"
require_relative "lithic/resources/card_programs"
require_relative "lithic/resources/cards"
Expand Down
4 changes: 4 additions & 0 deletions lib/lithic/client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,9 @@ class Client < Lithic::Internal::Transport::BaseClient
# @return [Lithic::Resources::Cards]
attr_reader :cards

# @return [Lithic::Resources::CardAuthorizations]
attr_reader :card_authorizations

# @return [Lithic::Resources::CardBulkOrders]
attr_reader :card_bulk_orders

Expand Down Expand Up @@ -222,6 +225,7 @@ def initialize(
@tokenization_decisioning = Lithic::Resources::TokenizationDecisioning.new(client: self)
@tokenizations = Lithic::Resources::Tokenizations.new(client: self)
@cards = Lithic::Resources::Cards.new(client: self)
@card_authorizations = Lithic::Resources::CardAuthorizations.new(client: self)
@card_bulk_orders = Lithic::Resources::CardBulkOrders.new(client: self)
@balances = Lithic::Resources::Balances.new(client: self)
@disputes = Lithic::Resources::Disputes.new(client: self)
Expand Down
2 changes: 2 additions & 0 deletions lib/lithic/internal/transport/base_client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -306,6 +306,8 @@ def initialize(
Lithic::Internal::Util.deep_merge(*[req[:body], opts[:extra_body]].compact)
end

headers.delete("content-type") if body.nil?

url = Lithic::Internal::Util.join_parsed_uri(
@base_url_components,
{**req, path: path, query: query}
Expand Down
8 changes: 8 additions & 0 deletions lib/lithic/models.rb
Original file line number Diff line number Diff line change
Expand Up @@ -130,12 +130,18 @@ module Lithic

Card = Lithic::Models::Card

CardAuthorization = Lithic::Models::CardAuthorization

CardAuthorizationApprovalRequestWebhookEvent =
Lithic::Models::CardAuthorizationApprovalRequestWebhookEvent

CardAuthorizationChallengeResponseParams = Lithic::Models::CardAuthorizationChallengeResponseParams

CardAuthorizationChallengeResponseWebhookEvent =
Lithic::Models::CardAuthorizationChallengeResponseWebhookEvent

CardAuthorizationChallengeWebhookEvent = Lithic::Models::CardAuthorizationChallengeWebhookEvent

CardBulkOrder = Lithic::Models::CardBulkOrder

CardBulkOrderCreateParams = Lithic::Models::CardBulkOrderCreateParams
Expand Down Expand Up @@ -296,6 +302,8 @@ module Lithic

ExternalBankAccountListParams = Lithic::Models::ExternalBankAccountListParams

ExternalBankAccountPauseParams = Lithic::Models::ExternalBankAccountPauseParams

ExternalBankAccountRetrieveParams = Lithic::Models::ExternalBankAccountRetrieveParams

ExternalBankAccountRetryMicroDepositsParams = Lithic::Models::ExternalBankAccountRetryMicroDepositsParams
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ class AccountHolderSimulateEnrollmentReviewResponse < Lithic::Internal::Type::Ba
# the Lithic ecosystem.
#
# @return [String, nil]
optional :external_id, String
optional :external_id, String, nil?: true

# @!attribute individual
# Only present when user_type == "INDIVIDUAL". Information about the individual
Expand All @@ -102,7 +102,7 @@ class AccountHolderSimulateEnrollmentReviewResponse < Lithic::Internal::Type::Ba
# Classification System (NAICS) code for the business.
#
# @return [String, nil]
optional :naics_code, String
optional :naics_code, String, nil?: true

# @!attribute nature_of_business
# Only present when user_type == "BUSINESS". User-submitted description of the
Expand Down Expand Up @@ -191,11 +191,11 @@ class AccountHolderSimulateEnrollmentReviewResponse < Lithic::Internal::Type::Ba
#
# @param exemption_type [Symbol, Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::ExemptionType, nil] The type of KYC exemption for a KYC-Exempt Account Holder. `null` if the account
#
# @param external_id [String] Customer-provided token that indicates a relationship with an object outside of
# @param external_id [String, nil] Customer-provided token that indicates a relationship with an object outside of
#
# @param individual [Lithic::Models::AccountHolderSimulateEnrollmentReviewResponse::Individual] Only present when user_type == "INDIVIDUAL". Information about the individual fo
#
# @param naics_code [String] Only present when user_type == "BUSINESS". 6-digit North American Industry Class
# @param naics_code [String, nil] Only present when user_type == "BUSINESS". 6-digit North American Industry Class
#
# @param nature_of_business [String] Only present when user_type == "BUSINESS". User-submitted description of the bus
#
Expand Down
Loading