defmodule Lithic do @moduledoc """ Elixir client for the [Lithic API](https://docs.lithic.com). ## Installation Add to your `mix.exs`: {:lithic, "~> 1.0"} ## Configuration # config/config.exs config :lithic, api_key: System.get_env("LITHIC_API_KEY"), environment: :production # or :sandbox ## Quick Start # Cards {:ok, card} = Lithic.Cards.create(%{type: "VIRTUAL"}) {:ok, page} = Lithic.Cards.list(page_size: 25) Lithic.Cards.stream() |> Enum.take(50) # Payments {:ok, payment} = Lithic.Payments.create(%{ financial_account_token: "fa_token", external_bank_account_token: "eba_token", amount: 5000, direction: "DEBIT", method: "ACH_NEXT_DAY", method_attributes: %{sec_code: "PPD"}, type: "PAYMENT" }) # Per-request client override client = Lithic.Client.new(api_key: "other_key", environment: :sandbox) {:ok, card} = Lithic.Cards.create(%{type: "VIRTUAL"}, client: client) ## Pagination # Cursor-based page {:ok, page} = Lithic.Cards.list() page.has_more #=> true {:ok, next} = Lithic.Page.next(page) # Lazy stream Lithic.Transactions.stream(card_token: "tok_...") |> Stream.filter(&(&1["result"] == "APPROVED")) |> Enum.take(100) # Collect all (use carefully on large datasets) {:ok, all} = Lithic.Cards.list() |> then(fn {:ok, p} -> Lithic.Page.collect_all(p) end) ## Webhooks # In your Plug/Phoenix controller: Lithic.Webhook.verify(raw_body, signature_header, timestamp_header, secret: "whsec_...") ## Telemetry All requests emit: - `[:lithic, :request_start]` — before the request - `[:lithic, :request_stop]` — after success, includes `:duration` - `[:lithic, :request_exception]` — on error, includes `:error` ## Resources | Module | Description | |--------|-------------| | Lithic.Cards | Card lifecycle, balances, provisioning | | Lithic.Accounts | Account management and spend limits | | Lithic.AccountHolders | KYC/KYB verification | | Lithic.AuthRules | V2 authorization rules engine | | Lithic.AuthStreamAccess | Real-time ASA webhook | | Lithic.Transactions | Card transactions and sandbox simulation | | Lithic.Payments | ACH payments | | Lithic.BookTransfers | Internal fund transfers | | Lithic.ExternalBankAccounts | ACH counterparty accounts | | Lithic.ExternalPayments | External payment lifecycle | | Lithic.FinancialAccounts | Ledger, balances, credit config | | Lithic.Balances | Balance queries | | Lithic.Holds | Financial holds | | Lithic.ManagementOperations | Manual ledger adjustments | | Lithic.CardBulkOrders | Bulk physical card orders | | Lithic.ThreeDS | 3DS authentication and decisioning | | Lithic.Tokenization | Digital wallet tokenization | | Lithic.Events | Webhooks and event subscriptions | | Lithic.Chargebacks | Chargeback/dispute (legacy) | | Lithic.Disputes | Disputes V2 | | Lithic.FraudReports | Fraud report management | | Lithic.Credit | Credit products, statements, loan tapes | | Lithic.Settlement | Settlement summaries | | Lithic.Network | Network programs and totals | | Lithic.FundingEvents | Program-level funding | | Lithic.TransactionMonitoring | Cases and queues | """ @doc ~S'Check API connectivity. Returns `{:ok, %{"status" => "OK"}}` on success.' @spec status(keyword()) :: {:ok, map()} | {:error, Lithic.Error.t()} def status(opts \\ []) do client = Keyword.get(opts, :client, Lithic.Client.new()) Lithic.Client.get(client, "/status") end end # ── Module aliases for ergonomic top-level access ──────────────────────────── # # Users can call: # Lithic.Cards.create(...) # Lithic.Payments.list(...) # etc. without prefixing Lithic.Resources. defmodule Lithic.Cards do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.Cards defdelegate get(token, opts \\ []), to: Lithic.Resources.Cards defdelegate update(token, params, opts \\ []), to: Lithic.Resources.Cards defdelegate list(opts \\ []), to: Lithic.Resources.Cards defdelegate stream(opts \\ []), to: Lithic.Resources.Cards defdelegate search_by_pan(pan, opts \\ []), to: Lithic.Resources.Cards defdelegate get_balance(token, opts \\ []), to: Lithic.Resources.Cards defdelegate get_spend_limit(token, opts \\ []), to: Lithic.Resources.Cards defdelegate get_signals(token, opts \\ []), to: Lithic.Resources.Cards defdelegate renew(token, params \\ %{}, opts \\ []), to: Lithic.Resources.Cards defdelegate reissue(token, params \\ %{}, opts \\ []), to: Lithic.Resources.Cards defdelegate convert_physical(token, params, opts \\ []), to: Lithic.Resources.Cards defdelegate provision(token, params, opts \\ []), to: Lithic.Resources.Cards defdelegate web_push_provision(token, params, opts \\ []), to: Lithic.Resources.Cards defdelegate get_embed_url(token, params \\ %{}, opts \\ []), to: Lithic.Resources.Cards defdelegate get_financial_transaction(card, txn, opts \\ []), to: Lithic.Resources.Cards defdelegate list_financial_transactions(token, opts \\ []), to: Lithic.Resources.Cards defdelegate get_card_program(token, opts \\ []), to: Lithic.Resources.Cards defdelegate list_card_programs(opts \\ []), to: Lithic.Resources.Cards end defmodule Lithic.Accounts do @moduledoc false defdelegate get(token, opts \\ []), to: Lithic.Resources.Accounts defdelegate list(opts \\ []), to: Lithic.Resources.Accounts defdelegate stream(opts \\ []), to: Lithic.Resources.Accounts defdelegate update(token, params, opts \\ []), to: Lithic.Resources.Accounts defdelegate get_spend_limits(token, opts \\ []), to: Lithic.Resources.Accounts defdelegate get_signals(token, opts \\ []), to: Lithic.Resources.Accounts end defmodule Lithic.AccountHolders do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate get(token, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate list(opts \\ []), to: Lithic.Resources.AccountHolders defdelegate stream(opts \\ []), to: Lithic.Resources.AccountHolders defdelegate update(token, params, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate create_beneficial_owner(token, params, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate deactivate_beneficial_owner(holder, individual, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate create_document(token, params, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate get_document(holder, doc, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate list_documents(token, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate simulate_document_review(doc, params, opts \\ []), to: Lithic.Resources.AccountHolders defdelegate simulate_enrollment_review(token, params, opts \\ []), to: Lithic.Resources.AccountHolders end defmodule Lithic.AuthRules do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.AuthRules defdelegate get(token, opts \\ []), to: Lithic.Resources.AuthRules defdelegate list(opts \\ []), to: Lithic.Resources.AuthRules defdelegate stream(opts \\ []), to: Lithic.Resources.AuthRules defdelegate update(token, params, opts \\ []), to: Lithic.Resources.AuthRules defdelegate delete(token, opts \\ []), to: Lithic.Resources.AuthRules defdelegate draft(token, params, opts \\ []), to: Lithic.Resources.AuthRules defdelegate promote(token, opts \\ []), to: Lithic.Resources.AuthRules defdelegate list_versions(token, opts \\ []), to: Lithic.Resources.AuthRules defdelegate request_backtest(token, params, opts \\ []), to: Lithic.Resources.AuthRules defdelegate list_backtests(token, opts \\ []), to: Lithic.Resources.AuthRules defdelegate get_backtest(rule, backtest, opts \\ []), to: Lithic.Resources.AuthRules defdelegate get_performance_report(token, opts \\ []), to: Lithic.Resources.AuthRules defdelegate list_evaluation_results(token, opts \\ []), to: Lithic.Resources.AuthRules defdelegate get_calculated_features(token, opts \\ []), to: Lithic.Resources.AuthRules end defmodule Lithic.AuthStreamAccess do @moduledoc false defdelegate get_secret(opts \\ []), to: Lithic.Resources.AuthStreamAccess defdelegate rotate_secret(opts \\ []), to: Lithic.Resources.AuthStreamAccess defdelegate enroll(params, opts \\ []), to: Lithic.Resources.AuthStreamAccess defdelegate check_enrollment(opts \\ []), to: Lithic.Resources.AuthStreamAccess defdelegate disenroll(opts \\ []), to: Lithic.Resources.AuthStreamAccess defdelegate respond_to_challenge(token, params, opts \\ []), to: Lithic.Resources.AuthStreamAccess end defmodule Lithic.Transactions do @moduledoc false defdelegate get(token, opts \\ []), to: Lithic.Resources.Transactions defdelegate list(opts \\ []), to: Lithic.Resources.Transactions defdelegate stream(opts \\ []), to: Lithic.Resources.Transactions defdelegate get_enhanced_data(token, opts \\ []), to: Lithic.Resources.Transactions defdelegate list_enhanced_data(opts \\ []), to: Lithic.Resources.Transactions defdelegate expire_authorization(token, opts \\ []), to: Lithic.Resources.Transactions defdelegate route(token, params, opts \\ []), to: Lithic.Resources.Transactions defdelegate simulate_authorization(params, opts \\ []), to: Lithic.Resources.Transactions defdelegate simulate_clearing(token, params \\ %{}, opts \\ []), to: Lithic.Resources.Transactions defdelegate simulate_void(token, params \\ %{}, opts \\ []), to: Lithic.Resources.Transactions defdelegate simulate_return(params, opts \\ []), to: Lithic.Resources.Transactions defdelegate simulate_return_reversal(token, opts \\ []), to: Lithic.Resources.Transactions defdelegate simulate_authorization_advice(token, params, opts \\ []), to: Lithic.Resources.Transactions defdelegate simulate_credit_authorization_advice(token, params, opts \\ []), to: Lithic.Resources.Transactions end defmodule Lithic.Payments do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.Payments defdelegate get(token, opts \\ []), to: Lithic.Resources.Payments defdelegate list(opts \\ []), to: Lithic.Resources.Payments defdelegate stream(opts \\ []), to: Lithic.Resources.Payments defdelegate retry(token, opts \\ []), to: Lithic.Resources.Payments defdelegate return(token, params \\ %{}, opts \\ []), to: Lithic.Resources.Payments defdelegate get_transfer_limits(opts \\ []), to: Lithic.Resources.Payments defdelegate simulate_payment_lifecycle(token, params, opts \\ []), to: Lithic.Resources.Payments defdelegate simulate_receipt(params, opts \\ []), to: Lithic.Resources.Payments defdelegate simulate_release(token, opts \\ []), to: Lithic.Resources.Payments defdelegate simulate_return(token, opts \\ []), to: Lithic.Resources.Payments end defmodule Lithic.BookTransfers do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.BookTransfers defdelegate get(token, opts \\ []), to: Lithic.Resources.BookTransfers defdelegate list(opts \\ []), to: Lithic.Resources.BookTransfers defdelegate stream(opts \\ []), to: Lithic.Resources.BookTransfers defdelegate retry(token, opts \\ []), to: Lithic.Resources.BookTransfers defdelegate reverse(token, params \\ %{}, opts \\ []), to: Lithic.Resources.BookTransfers end defmodule Lithic.ExternalBankAccounts do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate get(token, opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate list(opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate update(token, params, opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate pause(token, opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate unpause(token, opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate set_verification_method(token, params, opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate verify(token, params, opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate retry_micro_deposit(token, opts \\ []), to: Lithic.Resources.ExternalBankAccounts defdelegate retry_prenote(token, opts \\ []), to: Lithic.Resources.ExternalBankAccounts end defmodule Lithic.ExternalPayments do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.ExternalPayments defdelegate get(token, opts \\ []), to: Lithic.Resources.ExternalPayments defdelegate list(opts \\ []), to: Lithic.Resources.ExternalPayments defdelegate cancel(token, params \\ %{}, opts \\ []), to: Lithic.Resources.ExternalPayments defdelegate release(token, params \\ %{}, opts \\ []), to: Lithic.Resources.ExternalPayments defdelegate reverse(token, params \\ %{}, opts \\ []), to: Lithic.Resources.ExternalPayments defdelegate settle(token, params \\ %{}, opts \\ []), to: Lithic.Resources.ExternalPayments end defmodule Lithic.FinancialAccounts do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate get(token, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate list(opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate stream(opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate update(token, params, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate update_status(token, params, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate register_account_number(token, params, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate get_credit_config(token, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate update_credit_config(token, params, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate get_financial_transaction(fa, txn, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate list_financial_transactions(token, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate list_account_activity(token, opts \\ []), to: Lithic.Resources.FinancialAccounts defdelegate get_account_activity_transaction(fa, act, opts \\ []), to: Lithic.Resources.FinancialAccounts end defmodule Lithic.Balances do @moduledoc false defdelegate get(token, opts \\ []), to: Lithic.Resources.Balances defdelegate list(opts \\ []), to: Lithic.Resources.Balances end defmodule Lithic.Holds do @moduledoc false defdelegate create(fa_token, params, opts \\ []), to: Lithic.Resources.Holds defdelegate get(fa_token, hold_token, opts \\ []), to: Lithic.Resources.Holds defdelegate list(fa_token, opts \\ []), to: Lithic.Resources.Holds defdelegate void(fa_token, hold_token, opts \\ []), to: Lithic.Resources.Holds end defmodule Lithic.ManagementOperations do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.ManagementOperations defdelegate get(token, opts \\ []), to: Lithic.Resources.ManagementOperations defdelegate list(opts \\ []), to: Lithic.Resources.ManagementOperations defdelegate reverse(token, params \\ %{}, opts \\ []), to: Lithic.Resources.ManagementOperations end defmodule Lithic.CardBulkOrders do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.CardBulkOrders defdelegate get(token, opts \\ []), to: Lithic.Resources.CardBulkOrders defdelegate list(opts \\ []), to: Lithic.Resources.CardBulkOrders defdelegate update(token, params, opts \\ []), to: Lithic.Resources.CardBulkOrders end defmodule Lithic.ThreeDS do @moduledoc false defdelegate get(token, opts \\ []), to: Lithic.Resources.ThreeDS defdelegate list(opts \\ []), to: Lithic.Resources.ThreeDS defdelegate get_decisioning_secret(opts \\ []), to: Lithic.Resources.ThreeDS defdelegate rotate_decisioning_secret(opts \\ []), to: Lithic.Resources.ThreeDS defdelegate respond_to_challenge(token, params, opts \\ []), to: Lithic.Resources.ThreeDS defdelegate simulate(params, opts \\ []), to: Lithic.Resources.ThreeDS defdelegate simulate_otp_entry(token, params, opts \\ []), to: Lithic.Resources.ThreeDS end defmodule Lithic.Tokenization do @moduledoc false defdelegate get(token, opts \\ []), to: Lithic.Resources.Tokenization defdelegate list(card_token, opts \\ []), to: Lithic.Resources.Tokenization defdelegate activate(token, opts \\ []), to: Lithic.Resources.Tokenization defdelegate deactivate(token, opts \\ []), to: Lithic.Resources.Tokenization defdelegate pause(token, opts \\ []), to: Lithic.Resources.Tokenization defdelegate unpause(token, opts \\ []), to: Lithic.Resources.Tokenization defdelegate resend_activation_code(token, params \\ %{}, opts \\ []), to: Lithic.Resources.Tokenization defdelegate update_digital_card_art(token, params, opts \\ []), to: Lithic.Resources.Tokenization defdelegate simulate(params, opts \\ []), to: Lithic.Resources.Tokenization defdelegate list_digital_card_art(opts \\ []), to: Lithic.Resources.Tokenization defdelegate get_digital_card_art(token, opts \\ []), to: Lithic.Resources.Tokenization defdelegate get_decisioning_secret(opts \\ []), to: Lithic.Resources.Tokenization defdelegate rotate_decisioning_secret(opts \\ []), to: Lithic.Resources.Tokenization end defmodule Lithic.Events do @moduledoc false defdelegate create_subscription(params, opts \\ []), to: Lithic.Resources.Events defdelegate get_subscription(token, opts \\ []), to: Lithic.Resources.Events defdelegate list_subscriptions(opts \\ []), to: Lithic.Resources.Events defdelegate update_subscription(token, params, opts \\ []), to: Lithic.Resources.Events defdelegate delete_subscription(token, opts \\ []), to: Lithic.Resources.Events defdelegate get_subscription_secret(token, opts \\ []), to: Lithic.Resources.Events defdelegate rotate_subscription_secret(token, opts \\ []), to: Lithic.Resources.Events defdelegate get_event(token, opts \\ []), to: Lithic.Resources.Events defdelegate list_events(opts \\ []), to: Lithic.Resources.Events defdelegate stream_events(opts \\ []), to: Lithic.Resources.Events defdelegate resend_event(event, sub, opts \\ []), to: Lithic.Resources.Events defdelegate replay_missing(sub, opts \\ []), to: Lithic.Resources.Events defdelegate resend_failed(sub, opts \\ []), to: Lithic.Resources.Events defdelegate list_message_attempts_for_event(token, opts \\ []), to: Lithic.Resources.Events defdelegate list_message_attempts_for_subscription(token, opts \\ []), to: Lithic.Resources.Events defdelegate send_example(sub, event_type, opts \\ []), to: Lithic.Resources.Events end defmodule Lithic.Chargebacks do @moduledoc false defdelegate create(params, opts \\ []), to: Lithic.Resources.Chargebacks defdelegate get(token, opts \\ []), to: Lithic.Resources.Chargebacks defdelegate list(opts \\ []), to: Lithic.Resources.Chargebacks defdelegate update(token, params, opts \\ []), to: Lithic.Resources.Chargebacks defdelegate withdraw(token, params \\ %{}, opts \\ []), to: Lithic.Resources.Chargebacks defdelegate upload_evidence(token, params, opts \\ []), to: Lithic.Resources.Chargebacks defdelegate get_evidence(chargeback, evidence, opts \\ []), to: Lithic.Resources.Chargebacks defdelegate list_evidence(token, opts \\ []), to: Lithic.Resources.Chargebacks defdelegate delete_evidence(chargeback, evidence, opts \\ []), to: Lithic.Resources.Chargebacks end defmodule Lithic.Disputes do @moduledoc false defdelegate get(token, opts \\ []), to: Lithic.Resources.Disputes defdelegate list(opts \\ []), to: Lithic.Resources.Disputes defdelegate stream(opts \\ []), to: Lithic.Resources.Disputes end defmodule Lithic.FraudReports do @moduledoc false defdelegate create_or_update(params, opts \\ []), to: Lithic.Resources.FraudReports defdelegate get(token, opts \\ []), to: Lithic.Resources.FraudReports end defmodule Lithic.Credit do @moduledoc false defdelegate post_prime_rate(fa_token, params, opts \\ []), to: Lithic.Resources.Credit defdelegate get_prime_rates(fa_token, opts \\ []), to: Lithic.Resources.Credit defdelegate get_extended_credit(fa_token, opts \\ []), to: Lithic.Resources.Credit defdelegate create_interest_tier_schedule(fa_token, params, opts \\ []), to: Lithic.Resources.Credit defdelegate get_interest_tier_schedule(fa_token, sched, opts \\ []), to: Lithic.Resources.Credit defdelegate update_interest_tier_schedule(fa_token, sched, params, opts \\ []), to: Lithic.Resources.Credit defdelegate delete_interest_tier_schedule(fa_token, sched, opts \\ []), to: Lithic.Resources.Credit defdelegate list_interest_tier_schedules(fa_token, opts \\ []), to: Lithic.Resources.Credit defdelegate get_loan_tape(fa_token, tape_token, opts \\ []), to: Lithic.Resources.Credit defdelegate list_loan_tapes(fa_token, opts \\ []), to: Lithic.Resources.Credit defdelegate get_statement(fa_token, stmt_token, opts \\ []), to: Lithic.Resources.Credit defdelegate list_statements(fa_token, opts \\ []), to: Lithic.Resources.Credit defdelegate list_statement_line_items(fa_token, stmt_token, opts \\ []), to: Lithic.Resources.Credit end defmodule Lithic.Settlement do @moduledoc false defdelegate get_summary(opts \\ []), to: Lithic.Resources.Settlement defdelegate list_details(opts \\ []), to: Lithic.Resources.Settlement end defmodule Lithic.Network do @moduledoc false defdelegate get_program(token, opts \\ []), to: Lithic.Resources.Network defdelegate list_programs(opts \\ []), to: Lithic.Resources.Network defdelegate get_total(token, opts \\ []), to: Lithic.Resources.Network defdelegate list_totals(opts \\ []), to: Lithic.Resources.Network end defmodule Lithic.FundingEvents do @moduledoc false defdelegate get(token, opts \\ []), to: Lithic.Resources.FundingEvents defdelegate get_details(token, opts \\ []), to: Lithic.Resources.FundingEvents defdelegate list(opts \\ []), to: Lithic.Resources.FundingEvents end defmodule Lithic.TransactionMonitoring do @moduledoc false defdelegate get_case(token, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate list_cases(opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate update_case(token, params, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate add_comment(token, params, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate update_comment(case_t, comment_t, params, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate delete_comment(case_t, comment_t, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate create_file(token, params, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate get_file(case_t, file_t, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate list_files(token, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate delete_file(case_t, file_t, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate list_activity(token, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate list_case_cards(token, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate list_case_transactions(token, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate create_queue(params, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate get_queue(token, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate update_queue(token, params, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate delete_queue(token, opts \\ []), to: Lithic.Resources.TransactionMonitoring defdelegate list_queues(opts \\ []), to: Lithic.Resources.TransactionMonitoring end