Class: Files::Invoice
- Inherits:
-
Object
- Object
- Files::Invoice
- Defined in:
- lib/files.com/models/invoice.rb
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
-
#options ⇒ Object
readonly
Returns the value of attribute options.
Class Method Summary collapse
- .all(params = {}, options = {}) ⇒ Object
-
.find(id, params = {}, options = {}) ⇒ Object
Parameters: id (required) - int64 - Invoice ID.
- .get(id, params = {}, options = {}) ⇒ Object
-
.list(params = {}, options = {}) ⇒ Object
Parameters: cursor - string - Used for pagination.
Instance Method Summary collapse
-
#amount ⇒ Object
double - Line item amount.
-
#balance ⇒ Object
double - Line item balance.
-
#created_at ⇒ Object
date-time - Line item created at.
-
#currency ⇒ Object
string - Line item currency.
-
#download_uri ⇒ Object
string - Line item download uri.
-
#id ⇒ Object
int64 - Line item Id.
-
#initialize(attributes = {}, options = {}) ⇒ Invoice
constructor
A new instance of Invoice.
-
#invoice_line_items ⇒ Object
array(object) - Associated invoice line items.
-
#method ⇒ Object
string - Line item payment method.
-
#payment_line_items ⇒ Object
array(object) - Associated payment line items.
-
#payment_reversed_at ⇒ Object
date-time - Date/time payment was reversed if applicable.
-
#payment_type ⇒ Object
string - Type of payment if applicable.
-
#site_name ⇒ Object
string - Site name this line item is for.
-
#type ⇒ Object
string - Type of line item, either payment or invoice.
Constructor Details
#initialize(attributes = {}, options = {}) ⇒ Invoice
Returns a new instance of Invoice.
7 8 9 10 |
# File 'lib/files.com/models/invoice.rb', line 7 def initialize(attributes = {}, = {}) @attributes = attributes || {} @options = || {} end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
5 6 7 |
# File 'lib/files.com/models/invoice.rb', line 5 def attributes @attributes end |
#options ⇒ Object (readonly)
Returns the value of attribute options.
5 6 7 |
# File 'lib/files.com/models/invoice.rb', line 5 def @options end |
Class Method Details
.all(params = {}, options = {}) ⇒ Object
89 90 91 |
# File 'lib/files.com/models/invoice.rb', line 89 def self.all(params = {}, = {}) list(params, ) end |
.find(id, params = {}, options = {}) ⇒ Object
Parameters:
id (required) - int64 - Invoice ID.
95 96 97 98 99 100 101 102 103 |
# File 'lib/files.com/models/invoice.rb', line 95 def self.find(id, params = {}, = {}) params ||= {} params[:id] = id raise InvalidParameterError.new("Bad parameter: id must be an Integer") if params[:id] and !params[:id].is_a?(Integer) raise MissingParameterError.new("Parameter missing: id") unless params[:id] response, = Api.send_request("/invoices/#{params[:id]}", :get, params, ) AccountLineItem.new(response.data, ) end |
.get(id, params = {}, options = {}) ⇒ Object
105 106 107 |
# File 'lib/files.com/models/invoice.rb', line 105 def self.get(id, params = {}, = {}) find(id, params, ) end |
.list(params = {}, options = {}) ⇒ Object
Parameters:
cursor - string - Used for pagination. When a list request has more records available, cursors are provided in the response headers `X-Files-Cursor-Next` and `X-Files-Cursor-Prev`. Send one of those cursor value here to resume an existing list from the next available record. Note: many of our SDKs have iterator methods that will automatically handle cursor-based pagination.
per_page - int64 - Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
80 81 82 83 84 85 86 87 |
# File 'lib/files.com/models/invoice.rb', line 80 def self.list(params = {}, = {}) raise InvalidParameterError.new("Bad parameter: cursor must be an String") if params[:cursor] and !params[:cursor].is_a?(String) raise InvalidParameterError.new("Bad parameter: per_page must be an Integer") if params[:per_page] and !params[:per_page].is_a?(Integer) List.new(AccountLineItem, params) do Api.send_request("/invoices", :get, params, ) end end |
Instance Method Details
#amount ⇒ Object
double - Line item amount
18 19 20 |
# File 'lib/files.com/models/invoice.rb', line 18 def amount @attributes[:amount] end |
#balance ⇒ Object
double - Line item balance
23 24 25 |
# File 'lib/files.com/models/invoice.rb', line 23 def balance @attributes[:balance] end |
#created_at ⇒ Object
date-time - Line item created at
28 29 30 |
# File 'lib/files.com/models/invoice.rb', line 28 def created_at @attributes[:created_at] end |
#currency ⇒ Object
string - Line item currency
33 34 35 |
# File 'lib/files.com/models/invoice.rb', line 33 def currency @attributes[:currency] end |
#download_uri ⇒ Object
string - Line item download uri
38 39 40 |
# File 'lib/files.com/models/invoice.rb', line 38 def download_uri @attributes[:download_uri] end |
#id ⇒ Object
int64 - Line item Id
13 14 15 |
# File 'lib/files.com/models/invoice.rb', line 13 def id @attributes[:id] end |
#invoice_line_items ⇒ Object
array(object) - Associated invoice line items
43 44 45 |
# File 'lib/files.com/models/invoice.rb', line 43 def invoice_line_items @attributes[:invoice_line_items] end |
#method ⇒ Object
string - Line item payment method
48 49 50 |
# File 'lib/files.com/models/invoice.rb', line 48 def method @attributes[:method] end |
#payment_line_items ⇒ Object
array(object) - Associated payment line items
53 54 55 |
# File 'lib/files.com/models/invoice.rb', line 53 def payment_line_items @attributes[:payment_line_items] end |
#payment_reversed_at ⇒ Object
date-time - Date/time payment was reversed if applicable
58 59 60 |
# File 'lib/files.com/models/invoice.rb', line 58 def payment_reversed_at @attributes[:payment_reversed_at] end |
#payment_type ⇒ Object
string - Type of payment if applicable
63 64 65 |
# File 'lib/files.com/models/invoice.rb', line 63 def payment_type @attributes[:payment_type] end |
#site_name ⇒ Object
string - Site name this line item is for
68 69 70 |
# File 'lib/files.com/models/invoice.rb', line 68 def site_name @attributes[:site_name] end |
#type ⇒ Object
string - Type of line item, either payment or invoice
73 74 75 |
# File 'lib/files.com/models/invoice.rb', line 73 def type @attributes[:type] end |