Class: Billingrails::Resources::CreditGrants

Inherits:
Object
  • Object
show all
Defined in:
lib/billingrails/resources/credit_grants.rb

Overview

Credit grants resource

Instance Method Summary collapse

Constructor Details

#initialize(client) ⇒ CreditGrants

Returns a new instance of CreditGrants.

Parameters:

  • client (Client)

    The API client



10
11
12
# File 'lib/billingrails/resources/credit_grants.rb', line 10

def initialize(client)
  @client = client
end

Instance Method Details

#apply(id, data) ⇒ Hash

Apply credit grant

Applies a credit grant to an invoice or logs an external usage.

Parameters:

  • id (String)

    Resource ID

  • data (Hash)

    Request body

Returns:

  • (Hash)

    Response data



54
55
56
57
# File 'lib/billingrails/resources/credit_grants.rb', line 54

def apply(id, data)
  path = "/credit_grants/#{id}/apply"
  @client.request(:post, path, body: data)
end

#create(data) ⇒ Hash

Create a credit grant

Creates a credit grant.

Parameters:

  • data (Hash)

    Request body

Returns:

  • (Hash)

    Response data



30
31
32
33
# File 'lib/billingrails/resources/credit_grants.rb', line 30

def create(data)
  path = "/credit_grants"
  @client.request(:post, path, body: data)
end

#expire(id) ⇒ Hash

Expire credit grant

Expires a credit grant.

Parameters:

  • id (String)

    Resource ID

Returns:

  • (Hash)

    Response data



65
66
67
68
# File 'lib/billingrails/resources/credit_grants.rb', line 65

def expire(id)
  path = "/credit_grants/#{id}/expire"
  @client.request(:post, path)
end

#listHash

List credit grants

Retrieves a list of credit grants.

Returns:

  • (Hash)

    Response data



19
20
21
22
# File 'lib/billingrails/resources/credit_grants.rb', line 19

def list()
  path = "/credit_grants"
  @client.request(:get, path)
end

#retrieve(id, params: nil) ⇒ Hash

Retrieve a credit grant

Retrieves a credit grant by ID.

Parameters:

  • id (String)

    Resource ID

  • params (Hash, nil) (defaults to: nil)

    Query parameters

Returns:

  • (Hash)

    Response data



42
43
44
45
# File 'lib/billingrails/resources/credit_grants.rb', line 42

def retrieve(id, params: nil)
  path = "/credit_grants/#{id}"
  @client.request(:get, path, params: params)
end

#reverse_transaction(id, data) ⇒ Hash

Reverse credit grant transaction

Reverses a credit grant usage.

Parameters:

  • id (String)

    Resource ID

  • data (Hash)

    Request body

Returns:

  • (Hash)

    Response data



77
78
79
80
# File 'lib/billingrails/resources/credit_grants.rb', line 77

def reverse_transaction(id, data)
  path = "/credit_grants/#{id}/reverse_transaction"
  @client.request(:post, path, body: data)
end