Class: ModernTreasury::Resources::Ledgers

Inherits:
Object
  • Object
show all
Defined in:
lib/modern_treasury/resources/ledgers.rb

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Ledgers

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Ledgers.

Parameters:



143
144
145
# File 'lib/modern_treasury/resources/ledgers.rb', line 143

def initialize(client:)
  @client = client
end

Instance Method Details

#create(name: , description: nil, metadata: nil, request_options: {}) ⇒ ModernTreasury::Models::Ledger

Some parameter documentations has been truncated, see Models::LedgerCreateParams for more details.

Create a ledger.

Parameters:

  • name (String)

    The name of the ledger.

  • description (String, nil)

    An optional free-form description for internal use.

  • metadata (Hash{Symbol=>String})

    Additional data represented as key-value pairs. Both the key and value must be s

  • request_options (ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



24
25
26
27
28
29
30
31
32
33
# File 'lib/modern_treasury/resources/ledgers.rb', line 24

def create(params)
  parsed, options = ModernTreasury::LedgerCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: "api/ledgers",
    body: parsed,
    model: ModernTreasury::Ledger,
    options: options
  )
end

#delete(id, request_options: {}) ⇒ ModernTreasury::Models::Ledger

Delete a ledger.

Parameters:

Returns:

See Also:



131
132
133
134
135
136
137
138
# File 'lib/modern_treasury/resources/ledgers.rb', line 131

def delete(id, params = {})
  @client.request(
    method: :delete,
    path: ["api/ledgers/%1$s", id],
    model: ModernTreasury::Ledger,
    options: params[:request_options]
  )
end

#list(id: nil, after_cursor: nil, metadata: nil, per_page: nil, updated_at: nil, request_options: {}) ⇒ ModernTreasury::Internal::Page<ModernTreasury::Models::Ledger>

Some parameter documentations has been truncated, see Models::LedgerListParams for more details.

Get a list of ledgers.

Parameters:

  • id (Array<String>)

    If you have specific IDs to retrieve in bulk, you can pass them as query paramet

  • after_cursor (String, nil)
  • metadata (Hash{Symbol=>String})

    For example, if you want to query for records with metadata key ‘Type` and value

  • per_page (Integer)
  • updated_at (Hash{Symbol=>Time})

    Use ‘gt` (>), `gte` (>=), `lt` (<), `lte` (<=), or `eq` (=) to filter by the pos

  • request_options (ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



108
109
110
111
112
113
114
115
116
117
118
# File 'lib/modern_treasury/resources/ledgers.rb', line 108

def list(params = {})
  parsed, options = ModernTreasury::LedgerListParams.dump_request(params)
  @client.request(
    method: :get,
    path: "api/ledgers",
    query: parsed,
    page: ModernTreasury::Internal::Page,
    model: ModernTreasury::Ledger,
    options: options
  )
end

#retrieve(id, request_options: {}) ⇒ ModernTreasury::Models::Ledger

Get details on a single ledger.

Parameters:

Returns:

See Also:



46
47
48
49
50
51
52
53
# File 'lib/modern_treasury/resources/ledgers.rb', line 46

def retrieve(id, params = {})
  @client.request(
    method: :get,
    path: ["api/ledgers/%1$s", id],
    model: ModernTreasury::Ledger,
    options: params[:request_options]
  )
end

#update(id, description: nil, metadata: nil, name: nil, request_options: {}) ⇒ ModernTreasury::Models::Ledger

Some parameter documentations has been truncated, see Models::LedgerUpdateParams for more details.

Update the details of a ledger.

Parameters:

  • id (String)

    id

  • description (String, nil)

    An optional free-form description for internal use.

  • metadata (Hash{Symbol=>String})

    Additional data represented as key-value pairs. Both the key and value must be s

  • name (String)

    The name of the ledger.

  • request_options (ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



75
76
77
78
79
80
81
82
83
84
# File 'lib/modern_treasury/resources/ledgers.rb', line 75

def update(id, params = {})
  parsed, options = ModernTreasury::LedgerUpdateParams.dump_request(params)
  @client.request(
    method: :patch,
    path: ["api/ledgers/%1$s", id],
    body: parsed,
    model: ModernTreasury::Ledger,
    options: options
  )
end