Class: MetronomeSDK::Resources::V1::CreditGrants
- Inherits:
-
Object
- Object
- MetronomeSDK::Resources::V1::CreditGrants
- Defined in:
- lib/metronome_sdk/resources/v1/credit_grants.rb
Overview
[Credit grants](docs.metronome.com/invoicing/how-billing-works/manage-credits/) adjust a customer balance for prepayments, reimbursements, promotions, and so on. Use these endpoints to create, retrieve, update, and delete credit grants.
Instance Method Summary collapse
-
#create(customer_id:, expires_at:, grant_amount:, name:, paid_amount:, priority:, credit_grant_type: nil, custom_fields: nil, effective_at: nil, invoice_date: nil, product_ids: nil, reason: nil, rollover_settings: nil, uniqueness_key: nil, request_options: {}) ⇒ MetronomeSDK::Models::V1::CreditGrantCreateResponse
Some parameter documentations has been truncated, see Models::V1::CreditGrantCreateParams for more details.
-
#edit(id:, credit_grant_type: nil, expires_at: nil, name: nil, request_options: {}) ⇒ MetronomeSDK::Models::V1::CreditGrantEditResponse
Edit an existing credit grant.
-
#initialize(client:) ⇒ CreditGrants
constructor
private
A new instance of CreditGrants.
-
#list(limit: nil, next_page: nil, credit_grant_ids: nil, credit_type_ids: nil, customer_ids: nil, effective_before: nil, not_expiring_before: nil, request_options: {}) ⇒ MetronomeSDK::Internal::CursorPage<MetronomeSDK::Models::V1::CreditGrantListResponse>
Some parameter documentations has been truncated, see Models::V1::CreditGrantListParams for more details.
-
#list_entries(next_page: nil, sort: nil, credit_type_ids: nil, customer_ids: nil, ending_before: nil, starting_on: nil, request_options: {}) ⇒ MetronomeSDK::Internal::CursorPageWithoutLimit<MetronomeSDK::Models::V1::CreditGrantListEntriesResponse>
Some parameter documentations has been truncated, see Models::V1::CreditGrantListEntriesParams for more details.
-
#void(id:, release_uniqueness_key: nil, void_credit_purchase_invoice: nil, request_options: {}) ⇒ MetronomeSDK::Models::V1::CreditGrantVoidResponse
Void a credit grant.
Constructor Details
#initialize(client:) ⇒ CreditGrants
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 CreditGrants.
206 207 208 |
# File 'lib/metronome_sdk/resources/v1/credit_grants.rb', line 206 def initialize(client:) @client = client end |
Instance Method Details
#create(customer_id:, expires_at:, grant_amount:, name:, paid_amount:, priority:, credit_grant_type: nil, custom_fields: nil, effective_at: nil, invoice_date: nil, product_ids: nil, reason: nil, rollover_settings: nil, uniqueness_key: nil, request_options: {}) ⇒ MetronomeSDK::Models::V1::CreditGrantCreateResponse
Some parameter documentations has been truncated, see Models::V1::CreditGrantCreateParams for more details.
Create a new credit grant. This is a Plans (deprecated) endpoint. New clients should implement using Contracts.
51 52 53 54 55 56 57 58 59 60 |
# File 'lib/metronome_sdk/resources/v1/credit_grants.rb', line 51 def create(params) parsed, = MetronomeSDK::V1::CreditGrantCreateParams.dump_request(params) @client.request( method: :post, path: "v1/credits/createGrant", body: parsed, model: MetronomeSDK::Models::V1::CreditGrantCreateResponse, options: ) end |
#edit(id:, credit_grant_type: nil, expires_at: nil, name: nil, request_options: {}) ⇒ MetronomeSDK::Models::V1::CreditGrantEditResponse
Edit an existing credit grant. This is a Plans (deprecated) endpoint. New clients should implement using Contracts.
122 123 124 125 126 127 128 129 130 131 |
# File 'lib/metronome_sdk/resources/v1/credit_grants.rb', line 122 def edit(params) parsed, = MetronomeSDK::V1::CreditGrantEditParams.dump_request(params) @client.request( method: :post, path: "v1/credits/editGrant", body: parsed, model: MetronomeSDK::Models::V1::CreditGrantEditResponse, options: ) end |
#list(limit: nil, next_page: nil, credit_grant_ids: nil, credit_type_ids: nil, customer_ids: nil, effective_before: nil, not_expiring_before: nil, request_options: {}) ⇒ MetronomeSDK::Internal::CursorPage<MetronomeSDK::Models::V1::CreditGrantListResponse>
Some parameter documentations has been truncated, see Models::V1::CreditGrantListParams for more details.
List credit grants. This list does not included voided grants. This is a Plans (deprecated) endpoint. New clients should implement using Contracts.
89 90 91 92 93 94 95 96 97 98 99 100 101 102 |
# File 'lib/metronome_sdk/resources/v1/credit_grants.rb', line 89 def list(params = {}) query_params = [:limit, :next_page] parsed, = MetronomeSDK::V1::CreditGrantListParams.dump_request(params) query = MetronomeSDK::Internal::Util.encode_query_params(parsed.slice(*query_params)) @client.request( method: :post, path: "v1/credits/listGrants", query: query, body: parsed.except(*query_params), page: MetronomeSDK::Internal::CursorPage, model: MetronomeSDK::Models::V1::CreditGrantListResponse, options: ) end |
#list_entries(next_page: nil, sort: nil, credit_type_ids: nil, customer_ids: nil, ending_before: nil, starting_on: nil, request_options: {}) ⇒ MetronomeSDK::Internal::CursorPageWithoutLimit<MetronomeSDK::Models::V1::CreditGrantListEntriesResponse>
Some parameter documentations has been truncated, see Models::V1::CreditGrantListEntriesParams for more details.
Fetches a list of credit ledger entries. Returns lists of ledgers per customer. Ledger entries are returned in chronological order. Ledger entries associated with voided credit grants are not included. This is a Plans (deprecated) endpoint. New clients should implement using Contracts.
effective_
161 162 163 164 165 166 167 168 169 170 171 172 173 174 |
# File 'lib/metronome_sdk/resources/v1/credit_grants.rb', line 161 def list_entries(params = {}) query_params = [:next_page, :sort] parsed, = MetronomeSDK::V1::CreditGrantListEntriesParams.dump_request(params) query = MetronomeSDK::Internal::Util.encode_query_params(parsed.slice(*query_params)) @client.request( method: :post, path: "v1/credits/listEntries", query: query, body: parsed.except(*query_params), page: MetronomeSDK::Internal::CursorPageWithoutLimit, model: MetronomeSDK::Models::V1::CreditGrantListEntriesResponse, options: ) end |
#void(id:, release_uniqueness_key: nil, void_credit_purchase_invoice: nil, request_options: {}) ⇒ MetronomeSDK::Models::V1::CreditGrantVoidResponse
Void a credit grant. This is a Plans (deprecated) endpoint. New clients should implement using Contracts.
192 193 194 195 196 197 198 199 200 201 |
# File 'lib/metronome_sdk/resources/v1/credit_grants.rb', line 192 def void(params) parsed, = MetronomeSDK::V1::CreditGrantVoidParams.dump_request(params) @client.request( method: :post, path: "v1/credits/voidGrant", body: parsed, model: MetronomeSDK::Models::V1::CreditGrantVoidResponse, options: ) end |