Skip to content
Open
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
8 changes: 6 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,18 @@ jobs:
bundle install

- name: Get GitHub OIDC Token
if: github.repository == 'stainless-sdks/lithic-ruby'
if: |-
github.repository == 'stainless-sdks/lithic-ruby' &&
!startsWith(github.ref, 'refs/heads/stl/')
id: github-oidc
uses: actions/github-script@v8
with:
script: core.setOutput('github_token', await core.getIDToken());

- name: Build and upload gem artifacts
if: github.repository == 'stainless-sdks/lithic-ruby'
if: |-
github.repository == 'stainless-sdks/lithic-ruby' &&
!startsWith(github.ref, 'refs/heads/stl/')
env:
URL: https://pkg.stainless.com/s
AUTH: ${{ steps.github-oidc.outputs.github_token }}
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.7.0"
".": "0.8.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: 185
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic%2Flithic-ee8607f0a2cdcaee420935050334a439db8dd097be83023fccdaf1d6f9a7de14.yml
openapi_spec_hash: 0f21c68cdddb7c5bd99f42356d507393
config_hash: fb5070d41fcabdedbc084b83964b592a
configured_endpoints: 189
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lithic%2Flithic-6eebc524f3f5b6499a79ef544e150cc49ea1dc1e1c76a5392079ca5a83e78100.yml
openapi_spec_hash: 500c46c1194a128c404e17f7a5bff676
config_hash: 7daa8d0d03697920c0c1ca18ce6d4594
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,27 @@
# Changelog

## 0.8.0 (2026-03-10)

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

### Features

* **api:** add EARLY_DIRECT_DEPOSIT_FLOAT to financial account types ([3e0194f](https://github.com/lithic-com/lithic-ruby/commit/3e0194f79f315f44b8bc95c7e18452c99d91ce81))
* **api:** Add event_subtype to statement line items ([3e9c63c](https://github.com/lithic-com/lithic-ruby/commit/3e9c63ca2f2c3ddf7cfebef2bbf603646f0c6e7d))
* **api:** add loan_tape_date field to statement line items ([9dd0f14](https://github.com/lithic-com/lithic-ruby/commit/9dd0f14b35ebd87561dda0a11da9b440d9a4f1cb))
* **api:** Add support for early direct deposit ([5b75c2f](https://github.com/lithic-com/lithic-ruby/commit/5b75c2fdb30131890b8ea83befd70c6f7cba804f))
* **api:** add TypeScript code rules, draft version state tracking to auth_rules ([1dbdb68](https://github.com/lithic-com/lithic-ruby/commit/1dbdb688fffb5909af5c568bb16b2e3f899a6a42))


### Bug Fixes

* **api:** Disable MCP server to fix TypeScript SDK package publishing ([b977c80](https://github.com/lithic-com/lithic-ruby/commit/b977c80b191364666f305fc9527d161c653a43f7))


### Chores

* **internal:** codegen related update ([489f19b](https://github.com/lithic-com/lithic-ruby/commit/489f19b1c8c76d08aed0a313d45bed73406025b5))

## 0.7.0 (2026-03-05)

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

Expand Down
11 changes: 1 addition & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,6 @@

The Lithic Ruby library provides convenient access to the Lithic REST API from any Ruby 3.2.0+ application. It ships with comprehensive types & docstrings in Yard, RBS, and RBI – [see below](https://github.com/lithic-com/lithic-ruby#Sorbet) for usage with Sorbet. The standard library's `net/http` is used as the HTTP transport, with connection pooling via the `connection_pool` gem.

## MCP Server

Use the Lithic MCP Server to enable AI assistants to interact with this API, allowing them to explore endpoints, make test requests, and use documentation to help integrate this SDK into your application.

[![Add to Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en-US/install-mcp?name=lithic-mcp&config=eyJuYW1lIjoibGl0aGljLW1jcCIsInRyYW5zcG9ydCI6Imh0dHAiLCJ1cmwiOiJodHRwczovL2xpdGhpYy5zdGxtY3AuY29tIiwiaGVhZGVycyI6eyJ4LWxpdGhpYy1hcGkta2V5IjoiTXkgTGl0aGljIEFQSSBLZXkifX0)
[![Install in VS Code](https://img.shields.io/badge/_-Add_to_VS_Code-blue?style=for-the-badge&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCA0MCA0MCI+PHBhdGggZmlsbD0iI0VFRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMjM1IDM5Ljg4NGEyLjQ5MSAyLjQ5MSAwIDAgMS0xLjc4MS0uNzNMMTIuNyAyNC43OGwtMy40NiAyLjYyNC0zLjQwNiAyLjU4MmExLjY2NSAxLjY2NSAwIDAgMS0xLjA4Mi4zMzggMS42NjQgMS42NjQgMCAwIDEtMS4wNDYtLjQzMWwtMi4yLTJhMS42NjYgMS42NjYgMCAwIDEgMC0yLjQ2M0w3LjQ1OCAyMCA0LjY3IDE3LjQ1MyAxLjUwNyAxNC41N2ExLjY2NSAxLjY2NSAwIDAgMSAwLTIuNDYzbDIuMi0yYTEuNjY1IDEuNjY1IDAgMCAxIDIuMTMtLjA5N2w2Ljg2MyA1LjIwOUwyOC40NTIuODQ0YTIuNDg4IDIuNDg4IDAgMCAxIDEuODQxLS43MjljLjM1MS4wMDkuNjk5LjA5MSAxLjAxOS4yNDVsOC4yMzYgMy45NjFhMi41IDIuNSAwIDAgMSAxLjQxNSAyLjI1M3YuMDk5LS4wNDVWMzMuMzd2LS4wNDUuMDk1YTIuNTAxIDIuNTAxIDAgMCAxLTEuNDE2IDIuMjU3bC04LjIzNSAzLjk2MWEyLjQ5MiAyLjQ5MiAwIDAgMS0xLjA3Ny4yNDZabS43MTYtMjguOTQ3LTExLjk0OCA5LjA2MiAxMS45NTIgOS4wNjUtLjAwNC0xOC4xMjdaIi8+PC9zdmc+)](https://vscode.stainless.com/mcp/%7B%22name%22%3A%22lithic-mcp%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Flithic.stlmcp.com%22%2C%22headers%22%3A%7B%22x-lithic-api-key%22%3A%22My%20Lithic%20API%20Key%22%7D%7D)

> Note: You may need to set environment variables in your MCP client.

## Documentation

Documentation for releases of this gem can be found [on RubyDoc](https://gemdocs.org/gems/lithic).
Expand All @@ -24,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
<!-- x-release-please-start-version -->

```ruby
gem "lithic", "~> 0.7.0"
gem "lithic", "~> 0.8.0"
```

<!-- x-release-please-end -->
Expand Down
10 changes: 10 additions & 0 deletions lib/lithic.rb
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,8 @@
require_relative "lithic/models/auth_rules/event_stream"
require_relative "lithic/models/auth_rules/merchant_lock_parameters"
require_relative "lithic/models/auth_rules/report_stats"
require_relative "lithic/models/auth_rules/rule_feature"
require_relative "lithic/models/auth_rules/typescript_code_parameters"
require_relative "lithic/models/auth_rules/v2/backtest_create_params"
require_relative "lithic/models/auth_rules/v2/backtest_create_response"
require_relative "lithic/models/auth_rules/v2/backtest_retrieve_params"
Expand All @@ -142,6 +144,7 @@
require_relative "lithic/models/auth_rules/v2_retrieve_report_params"
require_relative "lithic/models/auth_rules/v2_retrieve_report_response"
require_relative "lithic/models/auth_rules/v2_update_params"
require_relative "lithic/models/auth_rules/velocity_limit_filters"
require_relative "lithic/models/auth_rules/velocity_limit_params"
require_relative "lithic/models/auth_rules/velocity_limit_period"
require_relative "lithic/models/auth_rules_backtest_report_created_webhook_event"
Expand Down Expand Up @@ -320,6 +323,12 @@
require_relative "lithic/models/funding_event_retrieve_details_params"
require_relative "lithic/models/funding_event_retrieve_details_response"
require_relative "lithic/models/funding_event_retrieve_params"
require_relative "lithic/models/hold"
require_relative "lithic/models/hold_create_params"
require_relative "lithic/models/hold_event"
require_relative "lithic/models/hold_list_params"
require_relative "lithic/models/hold_retrieve_params"
require_relative "lithic/models/hold_void_params"
require_relative "lithic/models/instance_financial_account_type"
require_relative "lithic/models/internal_transaction_created_webhook_event"
require_relative "lithic/models/internal_transaction_updated_webhook_event"
Expand Down Expand Up @@ -485,6 +494,7 @@
require_relative "lithic/resources/fraud"
require_relative "lithic/resources/fraud/transactions"
require_relative "lithic/resources/funding_events"
require_relative "lithic/resources/holds"
require_relative "lithic/resources/internal_transaction"
require_relative "lithic/resources/management_operations"
require_relative "lithic/resources/network_programs"
Expand Down
4 changes: 4 additions & 0 deletions lib/lithic/client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,9 @@ class Client < Lithic::Internal::Transport::BaseClient
# @return [Lithic::Resources::NetworkPrograms]
attr_reader :network_programs

# @return [Lithic::Resources::Holds]
attr_reader :holds

# @return [Lithic::Resources::AccountActivity]
attr_reader :account_activity

Expand Down Expand Up @@ -221,6 +224,7 @@ def initialize(
@funding_events = Lithic::Resources::FundingEvents.new(client: self)
@fraud = Lithic::Resources::Fraud.new(client: self)
@network_programs = Lithic::Resources::NetworkPrograms.new(client: self)
@holds = Lithic::Resources::Holds.new(client: self)
@account_activity = Lithic::Resources::AccountActivity.new(client: self)
@transfer_limits = Lithic::Resources::TransferLimits.new(client: self)
@webhooks = Lithic::Resources::Webhooks.new(client: self)
Expand Down
12 changes: 12 additions & 0 deletions lib/lithic/models.rb
Original file line number Diff line number Diff line change
Expand Up @@ -365,6 +365,18 @@ module Lithic

FundingEventRetrieveParams = Lithic::Models::FundingEventRetrieveParams

Hold = Lithic::Models::Hold

HoldCreateParams = Lithic::Models::HoldCreateParams

HoldEvent = Lithic::Models::HoldEvent

HoldListParams = Lithic::Models::HoldListParams

HoldRetrieveParams = Lithic::Models::HoldRetrieveParams

HoldVoidParams = Lithic::Models::HoldVoidParams

InstanceFinancialAccountType = Lithic::Models::InstanceFinancialAccountType

InternalTransactionAPI = Lithic::Models::InternalTransactionAPI
Expand Down
1 change: 1 addition & 0 deletions lib/lithic/models/account_activity_list_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ module Category
MANAGEMENT_FEE = :MANAGEMENT_FEE
MANAGEMENT_REWARD = :MANAGEMENT_REWARD
MANAGEMENT_DISBURSEMENT = :MANAGEMENT_DISBURSEMENT
HOLD = :HOLD
PROGRAM_FUNDING = :PROGRAM_FUNDING

# @!method self.values
Expand Down
9 changes: 7 additions & 2 deletions lib/lithic/models/account_activity_list_response.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ module Models
# which transaction type is returned: INTERNAL returns FinancialTransaction,
# TRANSFER returns BookTransferTransaction, CARD returns CardTransaction, PAYMENT
# returns PaymentTransaction, EXTERNAL_PAYMENT returns ExternalPaymentResponse,
# and MANAGEMENT_OPERATION returns ManagementOperationTransaction
# MANAGEMENT_OPERATION returns ManagementOperationTransaction, and HOLD returns
# HoldTransaction
#
# @see Lithic::Resources::AccountActivity#list
module AccountActivityListResponse
Expand All @@ -30,6 +31,9 @@ module AccountActivityListResponse

variant :MANAGEMENT_OPERATION, -> { Lithic::ManagementOperationTransaction }

# A hold transaction representing reserved funds on a financial account. Holds move funds from available to pending balance in anticipation of future payments. They can be resolved via settlement (linked to payment), manual release, or expiration.
variant :HOLD, -> { Lithic::Hold }

class Internal < Lithic::Internal::Type::BaseModel
# @!attribute token
# Unique identifier for the transaction
Expand Down Expand Up @@ -163,6 +167,7 @@ module Category
MANAGEMENT_FEE = :MANAGEMENT_FEE
MANAGEMENT_REWARD = :MANAGEMENT_REWARD
MANAGEMENT_DISBURSEMENT = :MANAGEMENT_DISBURSEMENT
HOLD = :HOLD
PROGRAM_FUNDING = :PROGRAM_FUNDING

# @!method self.values
Expand Down Expand Up @@ -261,7 +266,7 @@ module Status
end

# @!method self.variants
# @return [Array(Lithic::Models::AccountActivityListResponse::Internal, Lithic::Models::BookTransferResponse, Lithic::Models::AccountActivityListResponse::Card, Lithic::Models::Payment, Lithic::Models::ExternalPayment, Lithic::Models::ManagementOperationTransaction)]
# @return [Array(Lithic::Models::AccountActivityListResponse::Internal, Lithic::Models::BookTransferResponse, Lithic::Models::AccountActivityListResponse::Card, Lithic::Models::Payment, Lithic::Models::ExternalPayment, Lithic::Models::ManagementOperationTransaction, Lithic::Models::Hold)]
end
end
end
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ module Models
# which transaction type is returned: INTERNAL returns FinancialTransaction,
# TRANSFER returns BookTransferTransaction, CARD returns CardTransaction, PAYMENT
# returns PaymentTransaction, EXTERNAL_PAYMENT returns ExternalPaymentResponse,
# and MANAGEMENT_OPERATION returns ManagementOperationTransaction
# MANAGEMENT_OPERATION returns ManagementOperationTransaction, and HOLD returns
# HoldTransaction
#
# @see Lithic::Resources::AccountActivity#retrieve_transaction
module AccountActivityRetrieveTransactionResponse
Expand All @@ -30,6 +31,9 @@ module AccountActivityRetrieveTransactionResponse

variant :MANAGEMENT_OPERATION, -> { Lithic::ManagementOperationTransaction }

# A hold transaction representing reserved funds on a financial account. Holds move funds from available to pending balance in anticipation of future payments. They can be resolved via settlement (linked to payment), manual release, or expiration.
variant :HOLD, -> { Lithic::Hold }

class Internal < Lithic::Internal::Type::BaseModel
# @!attribute token
# Unique identifier for the transaction
Expand Down Expand Up @@ -166,6 +170,7 @@ module Category
MANAGEMENT_FEE = :MANAGEMENT_FEE
MANAGEMENT_REWARD = :MANAGEMENT_REWARD
MANAGEMENT_DISBURSEMENT = :MANAGEMENT_DISBURSEMENT
HOLD = :HOLD
PROGRAM_FUNDING = :PROGRAM_FUNDING

# @!method self.values
Expand Down Expand Up @@ -264,7 +269,7 @@ module Status
end

# @!method self.variants
# @return [Array(Lithic::Models::AccountActivityRetrieveTransactionResponse::Internal, Lithic::Models::BookTransferResponse, Lithic::Models::AccountActivityRetrieveTransactionResponse::Card, Lithic::Models::Payment, Lithic::Models::ExternalPayment, Lithic::Models::ManagementOperationTransaction)]
# @return [Array(Lithic::Models::AccountActivityRetrieveTransactionResponse::Internal, Lithic::Models::BookTransferResponse, Lithic::Models::AccountActivityRetrieveTransactionResponse::Card, Lithic::Models::Payment, Lithic::Models::ExternalPayment, Lithic::Models::ManagementOperationTransaction, Lithic::Models::Hold)]
end
end
end
Loading