Modern Treasury website screenshot

Modern Treasury

Modern Treasury is a money movement platform unifying ACH, wires, RTP, checks, FX, and reconciliation across multiple bank partners. Operates as the financial operations system of record.

4 APIs 0 Features
FintechPaymentsACHWiresTreasury

APIs

Modern Treasury Payments API

Initiate and track ACH, wire, RTP, FedNow, check, and book transfers with state-machine status tracking.

Modern Treasury Ledgers API

Double-entry ledger for accounts, ledger transactions, balances, and reconciliations.

Modern Treasury Counterparties API

Manage counterparties, external accounts, and routing details.

Modern Treasury Connections & Webhooks API

Manage bank connections, events, and webhook subscriptions.

Collections

Pricing Plans

Rate Limits

Modern Treasury Rate Limits

1 limits

RATE LIMITS

FinOps

JSON Structure

Modern Treasury Structure

0 properties

JSON STRUCTURE

Resources

👥
GitHubOrganization
GitHubOrganization
🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps
🔗
LlmsText
LlmsText

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Modern Treasury
  version: v1
items:
- info:
    name: LedgerAccountBalanceMonitor
    type: folder
  items:
  - info:
      name: list ledger_account_balance_monitors
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_account_balance_monitors
      params:
      - name: after_cursor
        value: ''
        type: query
      - name: per_page
        value: ''
        type: query
      - name: metadata
        value: ''
        type: query
        description: For example, if you want to query for records with metadata key `Type` and value `Loan`, the query would
          be `metadata%5BType%5D=Loan`. This encodes the query parameters.
      - name: id[]
        value: ''
        type: query
        description: If you have specific IDs to retrieve in bulk, you can pass them as query parameters delimited with `id[]=`,
          for example `?id[]=123&id[]=abc`.
      - name: ledger_account_id
        value: ''
        type: query
        description: Query the balance monitors for a single ledger account.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get a list of ledger account balance monitors.
  - info:
      name: create ledger_account_balance_monitor
      type: http
    http:
      method: POST
      url: http://localhost:3000/api/ledger_account_balance_monitors
      headers:
      - name: Idempotency-Key
        value: ''
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Create a ledger account balance monitor.
  - info:
      name: get ledger_account_balance_monitor
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_account_balance_monitors/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get details on a single ledger account balance monitor.
  - info:
      name: update ledger_account_balance_monitor
      type: http
    http:
      method: PATCH
      url: http://localhost:3000/api/ledger_account_balance_monitors/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Update a ledger account balance monitor.
  - info:
      name: delete ledger_account_balance_monitor
      type: http
    http:
      method: DELETE
      url: http://localhost:3000/api/ledger_account_balance_monitors/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Delete a ledger account balance monitor.
- info:
    name: LedgerAccountCategory
    type: folder
  items:
  - info:
      name: list ledger_account_categories
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_account_categories
      params:
      - name: after_cursor
        value: ''
        type: query
      - name: per_page
        value: ''
        type: query
      - name: metadata
        value: ''
        type: query
        description: For example, if you want to query for records with metadata key `Type` and value `Loan`, the query would
          be `metadata%5BType%5D=Loan`. This encodes the query parameters.
      - name: id[]
        value: ''
        type: query
        description: If you have specific IDs to retrieve in bulk, you can pass them as query parameters delimited with `id[]=`,
          for example `?id[]=123&id[]=abc`.
      - name: name
        value: ''
        type: query
      - name: name[]
        value: ''
        type: query
        description: If you have specific names to retrieve in bulk, you can pass them as query parameters delimited with
          `name[]=`, for example `?name[]=123&name[]=abc`.
      - name: ledger_id
        value: ''
        type: query
      - name: currency
        value: ''
        type: query
      - name: external_id
        value: ''
        type: query
      - name: parent_ledger_account_category_id
        value: ''
        type: query
        description: Query categories that are nested underneath a parent category
      - name: ledger_account_id
        value: ''
        type: query
        description: Query categories which contain a ledger account directly or through child categories.
      - name: balances
        value: ''
        type: query
        description: For example, if you want the balances as of a particular time (ISO8601), the encoded query string would
          be `balances%5Beffective_at%5D=2000-12-31T12:00:00Z`. The balances as of a time are inclusive of entries with that
          exact time, but with respect to the ledger accounts that are currently present in the category.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get a list of ledger account categories.
  - info:
      name: create ledger_account_category
      type: http
    http:
      method: POST
      url: http://localhost:3000/api/ledger_account_categories
      headers:
      - name: Idempotency-Key
        value: ''
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Create a ledger account category.
  - info:
      name: get ledger_account_category
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_account_categories/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      - name: balances
        value: ''
        type: query
        description: For example, if you want the balances as of a particular time (ISO8601), the encoded query string would
          be `balances%5Beffective_at%5D=2000-12-31T12:00:00Z`. The balances as of a time are inclusive of entries with that
          exact time, but with respect to the ledger accounts that are currently present in the category.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get the details on a single ledger account category.
  - info:
      name: update ledger_account_category
      type: http
    http:
      method: PATCH
      url: http://localhost:3000/api/ledger_account_categories/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Update the details of a ledger account category.
  - info:
      name: delete ledger_account_category
      type: http
    http:
      method: DELETE
      url: http://localhost:3000/api/ledger_account_categories/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Delete a ledger account category.
  - info:
      name: add ledger_account to ledger_account_category
      type: http
    http:
      method: PUT
      url: http://localhost:3000/api/ledger_account_categories/:id/ledger_accounts/:ledger_account_id
      params:
      - name: id
        value: ''
        type: path
        description: id
      - name: ledger_account_id
        value: ''
        type: path
        description: ledger_account_id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Add a ledger account to a ledger account category.
  - info:
      name: remove ledger_account from ledger_account_category
      type: http
    http:
      method: DELETE
      url: http://localhost:3000/api/ledger_account_categories/:id/ledger_accounts/:ledger_account_id
      params:
      - name: id
        value: ''
        type: path
        description: id
      - name: ledger_account_id
        value: ''
        type: path
        description: ledger_account_id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Remove a ledger account from a ledger account category.
  - info:
      name: add ledger_account_category to ledger_account_category
      type: http
    http:
      method: PUT
      url: http://localhost:3000/api/ledger_account_categories/:id/ledger_account_categories/:sub_category_id
      params:
      - name: id
        value: ''
        type: path
        description: id
      - name: sub_category_id
        value: ''
        type: path
        description: sub_category_id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Add a ledger account category to a ledger account category.
  - info:
      name: delete ledger_account_category from ledger_account_category
      type: http
    http:
      method: DELETE
      url: http://localhost:3000/api/ledger_account_categories/:id/ledger_account_categories/:sub_category_id
      params:
      - name: id
        value: ''
        type: path
        description: id
      - name: sub_category_id
        value: ''
        type: path
        description: sub_category_id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Delete a ledger account category from a ledger account category.
- info:
    name: LedgerAccountSettlement
    type: folder
  items:
  - info:
      name: patch ledger_account_settlement_entries
      type: http
    http:
      method: PATCH
      url: http://localhost:3000/api/ledger_account_settlements/:id/ledger_entries
      params:
      - name: id
        value: ''
        type: path
        description: id
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Add ledger entries to a draft ledger account settlement.
  - info:
      name: delete ledger_account_settlement_entries
      type: http
    http:
      method: DELETE
      url: http://localhost:3000/api/ledger_account_settlements/:id/ledger_entries
      params:
      - name: id
        value: ''
        type: path
        description: id
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Remove ledger entries from a draft ledger account settlement.
  - info:
      name: list ledger_account_settlements
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_account_settlements
      params:
      - name: after_cursor
        value: ''
        type: query
      - name: per_page
        value: ''
        type: query
      - name: metadata
        value: ''
        type: query
        description: For example, if you want to query for records with metadata key `Type` and value `Loan`, the query would
          be `metadata%5BType%5D=Loan`. This encodes the query parameters.
      - name: id[]
        value: ''
        type: query
        description: If you have specific IDs to retrieve in bulk, you can pass them as query parameters delimited with `id[]=`,
          for example `?id[]=123&id[]=abc`.
      - name: settled_ledger_account_id
        value: ''
        type: query
      - name: settlement_entry_direction
        value: ''
        type: query
      - name: ledger_transaction_id
        value: ''
        type: query
      - name: ledger_id
        value: ''
        type: query
      - name: created_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the created at timestamp. For
          example, for all times after Jan 1 2000 12:00 UTC, use created_at%5Bgt%5D=2000-01-01T12:00:00Z.
      - name: updated_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the updated at timestamp. For
          example, for all times after Jan 1 2000 12:00 UTC, use updated_at%5Bgt%5D=2000-01-01T12:00:00Z.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get a list of ledger account settlements.
  - info:
      name: create ledger_account_settlement
      type: http
    http:
      method: POST
      url: http://localhost:3000/api/ledger_account_settlements
      headers:
      - name: Idempotency-Key
        value: ''
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Create a ledger account settlement.
  - info:
      name: get ledger_account_settlement
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_account_settlements/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get details on a single ledger account settlement.
  - info:
      name: update ledger_account_settlement
      type: http
    http:
      method: PATCH
      url: http://localhost:3000/api/ledger_account_settlements/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Update the details of a ledger account settlement.
- info:
    name: LedgerAccountStatement
    type: folder
  items:
  - info:
      name: create ledger_account_statement
      type: http
    http:
      method: POST
      url: http://localhost:3000/api/ledger_account_statements
      headers:
      - name: Idempotency-Key
        value: ''
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Create a ledger account statement.
  - info:
      name: get ledger_account_statement
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_account_statements/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get details on a single ledger account statement.
- info:
    name: LedgerAccount
    type: folder
  items:
  - info:
      name: list ledger_accounts
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_accounts
      params:
      - name: after_cursor
        value: ''
        type: query
      - name: per_page
        value: ''
        type: query
      - name: metadata
        value: ''
        type: query
        description: For example, if you want to query for records with metadata key `Type` and value `Loan`, the query would
          be `metadata%5BType%5D=Loan`. This encodes the query parameters.
      - name: id[]
        value: ''
        type: query
        description: If you have specific IDs to retrieve in bulk, you can pass them as query parameters delimited with `id[]=`,
          for example `?id[]=123&id[]=abc`.
      - name: name[]
        value: ''
        type: query
        description: If you have specific names to retrieve in bulk, you can pass them as query parameters delimited with
          `name[]=`, for example `?name[]=123&name[]=abc`.
      - name: ledger_id
        value: ''
        type: query
      - name: external_id
        value: ''
        type: query
      - name: currency
        value: ''
        type: query
      - name: balances
        value: ''
        type: query
        description: Use `balances[effective_at_lower_bound]` and `balances[effective_at_upper_bound]` to get the balances
          change between the two timestamps. The lower bound is inclusive while the upper bound is exclusive of the provided
          timestamps. If no value is supplied the balances will be retrieved not including that bound.
      - name: pending_balance_amount
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), `eq` (=), or `not_eq` (!=) to filter by balance amount.
      - name: posted_balance_amount
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), `eq` (=), or `not_eq` (!=) to filter by balance amount.
      - name: available_balance_amount
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), `eq` (=), or `not_eq` (!=) to filter by balance amount.
      - name: normal_balance
        value: ''
        type: query
      - name: created_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the created at timestamp. For
          example, for all times after Jan 1 2000 12:00 UTC, use created_at%5Bgt%5D=2000-01-01T12:00:00Z.
      - name: updated_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the updated at timestamp. For
          example, for all times after Jan 1 2000 12:00 UTC, use updated_at%5Bgt%5D=2000-01-01T12:00:00Z.
      - name: ledger_account_category_id
        value: ''
        type: query
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get a list of ledger accounts.
  - info:
      name: create ledger_account
      type: http
    http:
      method: POST
      url: http://localhost:3000/api/ledger_accounts
      headers:
      - name: Idempotency-Key
        value: ''
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Create a ledger account.
  - info:
      name: get ledger_account
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_accounts/:id
      params:
      - name: id
        value: ''
        type: path
        description: The ledger account id (UUID)
      - name: balances
        value: ''
        type: query
        description: Use `balances[effective_at_lower_bound]` and `balances[effective_at_upper_bound]` to get the balances
          change between the two timestamps. The lower bound is inclusive while the upper bound is exclusive of the provided
          timestamps. If no value is supplied the balances will be retrieved not including that bound. Use `balances[as_of_lock_version]`
          to retrieve a balance as of a specific Ledger Account `lock_version`.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get details on a single ledger account.
  - info:
      name: update ledger_account
      type: http
    http:
      method: PATCH
      url: http://localhost:3000/api/ledger_accounts/:id
      params:
      - name: id
        value: ''
        type: path
        description: The ledger account id (UUID)
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Update the details of a ledger account.
  - info:
      name: delete ledger_account
      type: http
    http:
      method: DELETE
      url: http://localhost:3000/api/ledger_accounts/:id
      params:
      - name: id
        value: ''
        type: path
        description: The ledger account id (UUID)
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Delete a ledger account.
- info:
    name: LedgerEntry
    type: folder
  items:
  - info:
      name: list ledger_entries
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_entries
      params:
      - name: after_cursor
        value: ''
        type: query
      - name: per_page
        value: ''
        type: query
      - name: id[]
        value: ''
        type: query
        description: If you have specific IDs to retrieve in bulk, you can pass them as query parameters delimited with `id[]=`,
          for example `?id[]=123&id[]=abc`.
      - name: ledger_account_id
        value: ''
        type: query
      - name: ledger_transaction_id
        value: ''
        type: query
      - name: ledger_account_payout_id
        value: ''
        type: query
      - name: ledger_account_settlement_id
        value: ''
        type: query
      - name: effective_date
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the transaction's effective
          date. Format YYYY-MM-DD
      - name: effective_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the transaction's effective
          time. Format ISO8601
      - name: updated_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the posted at timestamp. For
          example, for all times after Jan 1 2000 12:00 UTC, use updated_at%5Bgt%5D=2000-01-01T12:00:00Z.
      - name: as_of_lock_version
        value: ''
        type: query
        description: Shows all ledger entries that were present on a ledger account at a particular `lock_version`. You must
          also specify `ledger_account_id`.
      - name: ledger_account_lock_version
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the lock_version of a ledger
          account. For example, for all entries created at or before before lock_version 1000 of a ledger account, use `ledger_account_lock_version%5Blte%5D=1000`.
      - name: ledger_account_category_id
        value: ''
        type: query
        description: Get all ledger entries that match the direction specified. One of `credit`, `debit`.
      - name: ledger_account_statement_id
        value: ''
        type: query
        description: Get all ledger entries that are included in the ledger account statement.
      - name: show_deleted
        value: ''
        type: query
        description: If true, response will include ledger entries that were deleted. When you update a ledger transaction
          to specify a new set of entries, the previous entries are deleted.
      - name: direction
        value: ''
        type: query
        description: If true, response will include ledger entries that were deleted. When you update a ledger transaction
          to specify a new set of entries, the previous entries are deleted.
      - name: status
        value: ''
        type: query
        description: Get all ledger entries that match the status specified. One of `pending`, `posted`, or `archived`. For
          multiple statuses, use `status[]=pending&status[]=posted`.
      - name: status[]
        value: ''
        type: query
        description: Get all ledger entries that match the status specified. One of `pending`, `posted`, or `archived`. For
          multiple statuses, use `status[]=pending&status[]=posted`.
      - name: order_by
        value: ''
        type: query
        description: Order by `created_at` or `effective_at` in `asc` or `desc` order. For example, to order by `effective_at
          asc`, use `order_by%5Beffective_at%5D=asc`. Ordering by only one field at a time is supported.
      - name: amount
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by amount.
      - name: show_balances
        value: ''
        type: query
        description: If true, response will include the balances attached to the ledger entry. If there is no balance available,
          null will be returned instead.
      - name: metadata
        value: ''
        type: query
        description: For example, if you want to query for records with metadata key `Type` and value `Loan`, the query would
          be `metadata%5BType%5D=Loan`. This encodes the query parameters.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get a list of all ledger entries.
  - info:
      name: get ledger_entry
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_entries/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      - name: show_balances
        value: ''
        type: query
        description: If true, response will include the balances attached to the ledger entry. If there is no balance available,
          null will be returned instead.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get details on a single ledger entry.
  - info:
      name: update ledger_entry
      type: http
    http:
      method: PATCH
      url: http://localhost:3000/api/ledger_entries/:id
      params:
      - name: id
        value: ''
        type: path
        description: id
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Update the details of a ledger entry.
- info:
    name: LedgerTransaction
    type: folder
  items:
  - info:
      name: create ledger_transaction partial post
      type: http
    http:
      method: POST
      url: http://localhost:3000/api/ledger_transactions/:id/partial_post
      params:
      - name: id
        value: ''
        type: path
        description: The ID of the ledger transaction to partially post.
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Create a ledger transaction that partially posts another ledger transaction.
  - info:
      name: create ledger_transaction reversal
      type: http
    http:
      method: POST
      url: http://localhost:3000/api/ledger_transactions/:id/reversal
      params:
      - name: id
        value: ''
        type: path
        description: The id of ledger transaction to reverse.
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Create a ledger transaction reversal.
  - info:
      name: list ledger_transaction_versions
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_transaction_versions
      params:
      - name: after_cursor
        value: ''
        type: query
      - name: per_page
        value: ''
        type: query
      - name: created_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the created_at timestamp. For
          example, for all dates after Jan 1 2000 12:00 UTC, use created_at%5Bgt%5D=2000-01-01T12:00:00Z.
      - name: version
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the version. For example, for
          all versions after 2, use version%5Bgt%5D=2.
      - name: ledger_transaction_id
        value: ''
        type: query
        description: Get all the ledger transaction versions corresponding to the ID of a ledger transaction.
      - name: ledger_account_statement_id
        value: ''
        type: query
        description: Get all ledger transaction versions that are included in the ledger account statement.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get a list of ledger transaction versions.
  - info:
      name: list ledger_transactions
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_transactions
      params:
      - name: after_cursor
        value: ''
        type: query
      - name: per_page
        value: ''
        type: query
      - name: metadata
        value: ''
        type: query
        description: For example, if you want to query for records with metadata key `Type` and value `Loan`, the query would
          be `metadata%5BType%5D=Loan`. This encodes the query parameters.
      - name: id[]
        value: ''
        type: query
        description: If you have specific IDs to retrieve in bulk, you can pass them as query parameters delimited with `id[]=`,
          for example `?id[]=123&id[]=abc`.
      - name: ledger_id
        value: ''
        type: query
      - name: ledger_account_id
        value: ''
        type: query
      - name: effective_at
        value: ''
        type: query
        description: Use "gt" (>), "gte" (>=), "lt" (<), "lte" (<=), or "eq" (=) to filter by effective at. For example, for
          all transactions after Jan 1 2000, use effective_at%5Bgt%5D=2000-01-01T00:00:00:00.000Z.
      - name: effective_date
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by effective date. For example,
          for all dates after Jan 1 2000, use effective_date%5Bgt%5D=2000-01-01.
      - name: posted_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the posted at timestamp. For
          example, for all times after Jan 1 2000 12:00 UTC, use posted_at%5Bgt%5D=2000-01-01T12:00:00Z.
      - name: updated_at
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the posted at timestamp. For
          example, for all times after Jan 1 2000 12:00 UTC, use updated_at%5Bgt%5D=2000-01-01T12:00:00Z.
      - name: order_by
        value: ''
        type: query
        description: Order by `created_at` or `effective_at` in `asc` or `desc` order. For example, to order by `effective_at
          asc`, use `order_by%5Beffective_at%5D=asc`. Ordering by only one field at a time is supported.
      - name: amount
        value: ''
        type: query
        description: Use `gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by amount.
      - name: status
        value: ''
        type: query
      - name: external_id
        value: ''
        type: query
      - name: ledger_account_category_id
        value: ''
        type: query
      - name: ledger_account_settlement_id
        value: ''
        type: query
      - name: reverses_ledger_transaction_id
        value: ''
        type: query
      - name: partially_posts_ledger_transaction_id
        value: ''
        type: query
      - name: ledgerable_id
        value: ''
        type: query
      - name: ledgerable_type
        value: ''
        type: query
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get a list of ledger transactions.
  - info:
      name: create ledger_transaction
      type: http
    http:
      method: POST
      url: http://localhost:3000/api/ledger_transactions
      headers:
      - name: Idempotency-Key
        value: ''
      body:
        type: json
        data: '{}'
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Create a ledger transaction.
  - info:
      name: get ledger_transaction
      type: http
    http:
      method: GET
      url: http://localhost:3000/api/ledger_transactions/:id
      params:
      - name: id
        value: ''
        type: path
        description: The ledger transaction id (UUID) or external_id. If using external_id, only non-archived Ledger Transactions
          will be returned.
      auth:
        type: basic
        username: '{{username}}'
        password: '{{password}}'
    docs: Get details on a single ledger transaction.
  - info:
      name: update ledger_transaction
      type: http
    http:
      method: PATCH
      url: http://localhost:3000/api/ledger_transactions/:id
      params:
      - name: id
     

# --- truncated at 32 KB (120 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/modern-treasury/refs/heads/main/apis.yml