xero-apimatic-sdk 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +28 -0
- data/README.md +175 -0
- data/bin/console +15 -0
- data/lib/xero_ap_is/api_helper.rb +10 -0
- data/lib/xero_ap_is/apis/accounting_api.rb +8328 -0
- data/lib/xero_ap_is/apis/asset_api.rb +210 -0
- data/lib/xero_ap_is/apis/bank_feeds_api.rb +268 -0
- data/lib/xero_ap_is/apis/base_api.rb +67 -0
- data/lib/xero_ap_is/apis/identity_api.rb +51 -0
- data/lib/xero_ap_is/apis/oauth_authorization_api.rb +87 -0
- data/lib/xero_ap_is/apis/project_api.rb +662 -0
- data/lib/xero_ap_is/client.rb +110 -0
- data/lib/xero_ap_is/configuration.rb +196 -0
- data/lib/xero_ap_is/exceptions/api_exception.rb +21 -0
- data/lib/xero_ap_is/exceptions/asset_types400_error_exception.rb +72 -0
- data/lib/xero_ap_is/exceptions/assets400_error_exception.rb +72 -0
- data/lib/xero_ap_is/exceptions/error_error1_exception.rb +63 -0
- data/lib/xero_ap_is/exceptions/error_error2_exception.rb +51 -0
- data/lib/xero_ap_is/exceptions/error_exception.rb +72 -0
- data/lib/xero_ap_is/exceptions/feed_connections_error_exception.rb +60 -0
- data/lib/xero_ap_is/exceptions/oauth_provider_exception.rb +64 -0
- data/lib/xero_ap_is/exceptions/statements_error_exception.rb +60 -0
- data/lib/xero_ap_is/http/api_response.rb +19 -0
- data/lib/xero_ap_is/http/auth/basic_auth.rb +62 -0
- data/lib/xero_ap_is/http/auth/oauth_2.rb +161 -0
- data/lib/xero_ap_is/http/http_call_back.rb +10 -0
- data/lib/xero_ap_is/http/http_method_enum.rb +10 -0
- data/lib/xero_ap_is/http/http_request.rb +10 -0
- data/lib/xero_ap_is/http/http_response.rb +10 -0
- data/lib/xero_ap_is/http/proxy_settings.rb +22 -0
- data/lib/xero_ap_is/logging/configuration/api_logging_configuration.rb +186 -0
- data/lib/xero_ap_is/logging/sdk_logger.rb +17 -0
- data/lib/xero_ap_is/models/access_token.rb +116 -0
- data/lib/xero_ap_is/models/account.rb +300 -0
- data/lib/xero_ap_is/models/account_type.rb +100 -0
- data/lib/xero_ap_is/models/account_type1.rb +37 -0
- data/lib/xero_ap_is/models/accounts.rb +84 -0
- data/lib/xero_ap_is/models/accounts_payable.rb +85 -0
- data/lib/xero_ap_is/models/accounts_receivable.rb +85 -0
- data/lib/xero_ap_is/models/action.rb +85 -0
- data/lib/xero_ap_is/models/actions.rb +84 -0
- data/lib/xero_ap_is/models/address.rb +167 -0
- data/lib/xero_ap_is/models/address_for_organisation.rb +167 -0
- data/lib/xero_ap_is/models/address_type.rb +40 -0
- data/lib/xero_ap_is/models/address_type1.rb +36 -0
- data/lib/xero_ap_is/models/allocation.rb +174 -0
- data/lib/xero_ap_is/models/allocations.rb +85 -0
- data/lib/xero_ap_is/models/amount.rb +85 -0
- data/lib/xero_ap_is/models/asset.rb +249 -0
- data/lib/xero_ap_is/models/asset_status.rb +40 -0
- data/lib/xero_ap_is/models/asset_status_query_param.rb +40 -0
- data/lib/xero_ap_is/models/asset_type.rb +154 -0
- data/lib/xero_ap_is/models/assets.rb +94 -0
- data/lib/xero_ap_is/models/attachment.rb +126 -0
- data/lib/xero_ap_is/models/attachments.rb +85 -0
- data/lib/xero_ap_is/models/averaging_method.rb +36 -0
- data/lib/xero_ap_is/models/balance_details.rb +98 -0
- data/lib/xero_ap_is/models/balances.rb +89 -0
- data/lib/xero_ap_is/models/bank_account_type.rb +44 -0
- data/lib/xero_ap_is/models/bank_transaction.rb +319 -0
- data/lib/xero_ap_is/models/bank_transactions.rb +114 -0
- data/lib/xero_ap_is/models/bank_transfer.rb +224 -0
- data/lib/xero_ap_is/models/bank_transfers.rb +85 -0
- data/lib/xero_ap_is/models/base_model.rb +110 -0
- data/lib/xero_ap_is/models/batch_payment.rb +275 -0
- data/lib/xero_ap_is/models/batch_payment_delete.rb +84 -0
- data/lib/xero_ap_is/models/batch_payment_delete_by_url_param.rb +73 -0
- data/lib/xero_ap_is/models/batch_payment_details.rb +128 -0
- data/lib/xero_ap_is/models/batch_payments.rb +85 -0
- data/lib/xero_ap_is/models/bill.rb +85 -0
- data/lib/xero_ap_is/models/book_depreciation_detail.rb +243 -0
- data/lib/xero_ap_is/models/book_depreciation_setting.rb +170 -0
- data/lib/xero_ap_is/models/branding_theme.rb +129 -0
- data/lib/xero_ap_is/models/branding_themes.rb +85 -0
- data/lib/xero_ap_is/models/budget.rb +145 -0
- data/lib/xero_ap_is/models/budget_balance.rb +105 -0
- data/lib/xero_ap_is/models/budget_line.rb +105 -0
- data/lib/xero_ap_is/models/budgets.rb +84 -0
- data/lib/xero_ap_is/models/charge_type.rb +42 -0
- data/lib/xero_ap_is/models/cis_org_setting.rb +105 -0
- data/lib/xero_ap_is/models/cis_org_settings.rb +85 -0
- data/lib/xero_ap_is/models/cis_setting.rb +86 -0
- data/lib/xero_ap_is/models/cis_settings.rb +85 -0
- data/lib/xero_ap_is/models/class1.rb +113 -0
- data/lib/xero_ap_is/models/connection.rb +155 -0
- data/lib/xero_ap_is/models/contact.rb +661 -0
- data/lib/xero_ap_is/models/contact_group.rb +119 -0
- data/lib/xero_ap_is/models/contact_groups.rb +85 -0
- data/lib/xero_ap_is/models/contact_person.rb +108 -0
- data/lib/xero_ap_is/models/contact_status.rb +40 -0
- data/lib/xero_ap_is/models/contacts.rb +113 -0
- data/lib/xero_ap_is/models/conversion_balances.rb +108 -0
- data/lib/xero_ap_is/models/conversion_date.rb +87 -0
- data/lib/xero_ap_is/models/country_code.rb +990 -0
- data/lib/xero_ap_is/models/credit_debit_indicator.rb +37 -0
- data/lib/xero_ap_is/models/credit_note.rb +453 -0
- data/lib/xero_ap_is/models/credit_notes.rb +113 -0
- data/lib/xero_ap_is/models/currencies.rb +85 -0
- data/lib/xero_ap_is/models/currency.rb +85 -0
- data/lib/xero_ap_is/models/currency_code.rb +700 -0
- data/lib/xero_ap_is/models/currency_code1.rb +680 -0
- data/lib/xero_ap_is/models/depreciation_calculation_method.rb +40 -0
- data/lib/xero_ap_is/models/depreciation_method.rb +52 -0
- data/lib/xero_ap_is/models/due_date_type.rb +52 -0
- data/lib/xero_ap_is/models/edition.rb +38 -0
- data/lib/xero_ap_is/models/element.rb +160 -0
- data/lib/xero_ap_is/models/employee.rb +160 -0
- data/lib/xero_ap_is/models/employees.rb +85 -0
- data/lib/xero_ap_is/models/end_balance.rb +89 -0
- data/lib/xero_ap_is/models/error1.rb +138 -0
- data/lib/xero_ap_is/models/error2.rb +106 -0
- data/lib/xero_ap_is/models/error3.rb +85 -0
- data/lib/xero_ap_is/models/expense_claim.rb +209 -0
- data/lib/xero_ap_is/models/expense_claims.rb +85 -0
- data/lib/xero_ap_is/models/external_link.rb +95 -0
- data/lib/xero_ap_is/models/federal_tax_classification.rb +56 -0
- data/lib/xero_ap_is/models/feed_connection.rb +177 -0
- data/lib/xero_ap_is/models/feed_connections.rb +94 -0
- data/lib/xero_ap_is/models/field_validation_errors_element.rb +127 -0
- data/lib/xero_ap_is/models/history_record.rb +105 -0
- data/lib/xero_ap_is/models/history_records.rb +85 -0
- data/lib/xero_ap_is/models/import_summary.rb +87 -0
- data/lib/xero_ap_is/models/import_summary_accounts.rb +154 -0
- data/lib/xero_ap_is/models/import_summary_object.rb +76 -0
- data/lib/xero_ap_is/models/import_summary_organisation.rb +75 -0
- data/lib/xero_ap_is/models/invoice.rb +586 -0
- data/lib/xero_ap_is/models/invoice_address.rb +158 -0
- data/lib/xero_ap_is/models/invoice_address_type.rb +37 -0
- data/lib/xero_ap_is/models/invoice_reminder.rb +75 -0
- data/lib/xero_ap_is/models/invoice_reminders.rb +85 -0
- data/lib/xero_ap_is/models/invoices.rb +113 -0
- data/lib/xero_ap_is/models/item.rb +259 -0
- data/lib/xero_ap_is/models/items.rb +84 -0
- data/lib/xero_ap_is/models/journal.rb +157 -0
- data/lib/xero_ap_is/models/journal_line.rb +201 -0
- data/lib/xero_ap_is/models/journals.rb +103 -0
- data/lib/xero_ap_is/models/line_amount_types.rb +41 -0
- data/lib/xero_ap_is/models/line_item.rb +287 -0
- data/lib/xero_ap_is/models/line_item_item.rb +95 -0
- data/lib/xero_ap_is/models/line_item_tracking.rb +108 -0
- data/lib/xero_ap_is/models/link_type.rb +48 -0
- data/lib/xero_ap_is/models/linked_transaction.rb +215 -0
- data/lib/xero_ap_is/models/linked_transactions.rb +85 -0
- data/lib/xero_ap_is/models/manual_journal.rb +255 -0
- data/lib/xero_ap_is/models/manual_journal_line.rb +156 -0
- data/lib/xero_ap_is/models/manual_journals.rb +114 -0
- data/lib/xero_ap_is/models/mclass.rb +48 -0
- data/lib/xero_ap_is/models/oauth_provider_error.rb +62 -0
- data/lib/xero_ap_is/models/oauth_scope_oauth_2.rb +113 -0
- data/lib/xero_ap_is/models/oauth_token.rb +96 -0
- data/lib/xero_ap_is/models/online_invoice.rb +77 -0
- data/lib/xero_ap_is/models/online_invoices.rb +85 -0
- data/lib/xero_ap_is/models/order_by.rb +56 -0
- data/lib/xero_ap_is/models/organisation.rb +467 -0
- data/lib/xero_ap_is/models/organisation_entity_type.rb +80 -0
- data/lib/xero_ap_is/models/organisation_role.rb +61 -0
- data/lib/xero_ap_is/models/organisation_type.rb +80 -0
- data/lib/xero_ap_is/models/organisations.rb +85 -0
- data/lib/xero_ap_is/models/overpayment.rb +309 -0
- data/lib/xero_ap_is/models/overpayments.rb +113 -0
- data/lib/xero_ap_is/models/pagination.rb +105 -0
- data/lib/xero_ap_is/models/payment.rb +381 -0
- data/lib/xero_ap_is/models/payment_delete.rb +73 -0
- data/lib/xero_ap_is/models/payment_service.rb +143 -0
- data/lib/xero_ap_is/models/payment_services.rb +85 -0
- data/lib/xero_ap_is/models/payment_term.rb +85 -0
- data/lib/xero_ap_is/models/payment_term_type.rb +44 -0
- data/lib/xero_ap_is/models/payment_type.rb +60 -0
- data/lib/xero_ap_is/models/payments.rb +113 -0
- data/lib/xero_ap_is/models/phone.rb +108 -0
- data/lib/xero_ap_is/models/phone_type.rb +48 -0
- data/lib/xero_ap_is/models/prepayment.rb +309 -0
- data/lib/xero_ap_is/models/prepayments.rb +113 -0
- data/lib/xero_ap_is/models/project.rb +328 -0
- data/lib/xero_ap_is/models/project_create_or_update.rb +115 -0
- data/lib/xero_ap_is/models/project_patch.rb +73 -0
- data/lib/xero_ap_is/models/project_status.rb +36 -0
- data/lib/xero_ap_is/models/project_user.rb +95 -0
- data/lib/xero_ap_is/models/project_users.rb +94 -0
- data/lib/xero_ap_is/models/projects.rb +94 -0
- data/lib/xero_ap_is/models/purchase.rb +112 -0
- data/lib/xero_ap_is/models/purchase_order.rb +408 -0
- data/lib/xero_ap_is/models/purchase_orders.rb +114 -0
- data/lib/xero_ap_is/models/purchases_default_line_amount_type.rb +42 -0
- data/lib/xero_ap_is/models/quote.rb +338 -0
- data/lib/xero_ap_is/models/quote_line_amount_types.rb +41 -0
- data/lib/xero_ap_is/models/quote_status_codes.rb +52 -0
- data/lib/xero_ap_is/models/quotes.rb +84 -0
- data/lib/xero_ap_is/models/receipt.rb +287 -0
- data/lib/xero_ap_is/models/receipts.rb +84 -0
- data/lib/xero_ap_is/models/refresh_token.rb +106 -0
- data/lib/xero_ap_is/models/repeating_invoice.rb +290 -0
- data/lib/xero_ap_is/models/repeating_invoices.rb +85 -0
- data/lib/xero_ap_is/models/report.rb +136 -0
- data/lib/xero_ap_is/models/report_attribute.rb +85 -0
- data/lib/xero_ap_is/models/report_cell.rb +94 -0
- data/lib/xero_ap_is/models/report_fields.rb +95 -0
- data/lib/xero_ap_is/models/report_row.rb +104 -0
- data/lib/xero_ap_is/models/report_rows.rb +123 -0
- data/lib/xero_ap_is/models/report_tax_type.rb +424 -0
- data/lib/xero_ap_is/models/report_type.rb +26 -0
- data/lib/xero_ap_is/models/report_with_row.rb +176 -0
- data/lib/xero_ap_is/models/report_with_rows.rb +84 -0
- data/lib/xero_ap_is/models/reports.rb +84 -0
- data/lib/xero_ap_is/models/request_empty.rb +75 -0
- data/lib/xero_ap_is/models/resource_validation_errors_element.rb +116 -0
- data/lib/xero_ap_is/models/row_type.rb +44 -0
- data/lib/xero_ap_is/models/sales_default_line_amount_type.rb +42 -0
- data/lib/xero_ap_is/models/sales_tax_basis.rb +60 -0
- data/lib/xero_ap_is/models/sales_tax_period.rb +88 -0
- data/lib/xero_ap_is/models/sales_tracking_category.rb +89 -0
- data/lib/xero_ap_is/models/schedule.rb +140 -0
- data/lib/xero_ap_is/models/setting.rb +175 -0
- data/lib/xero_ap_is/models/setup.rb +117 -0
- data/lib/xero_ap_is/models/sort_direction.rb +36 -0
- data/lib/xero_ap_is/models/source_transaction_type_code.rb +38 -0
- data/lib/xero_ap_is/models/source_type.rb +128 -0
- data/lib/xero_ap_is/models/start_balance.rb +88 -0
- data/lib/xero_ap_is/models/statement.rb +194 -0
- data/lib/xero_ap_is/models/statement_line.rb +162 -0
- data/lib/xero_ap_is/models/statements.rb +94 -0
- data/lib/xero_ap_is/models/status.rb +41 -0
- data/lib/xero_ap_is/models/status1.rb +38 -0
- data/lib/xero_ap_is/models/status10.rb +40 -0
- data/lib/xero_ap_is/models/status11.rb +44 -0
- data/lib/xero_ap_is/models/status110.rb +40 -0
- data/lib/xero_ap_is/models/status111.rb +43 -0
- data/lib/xero_ap_is/models/status12.rb +48 -0
- data/lib/xero_ap_is/models/status13.rb +48 -0
- data/lib/xero_ap_is/models/status14.rb +52 -0
- data/lib/xero_ap_is/models/status15.rb +48 -0
- data/lib/xero_ap_is/models/status16.rb +36 -0
- data/lib/xero_ap_is/models/status17.rb +48 -0
- data/lib/xero_ap_is/models/status18.rb +40 -0
- data/lib/xero_ap_is/models/status19.rb +44 -0
- data/lib/xero_ap_is/models/status2.rb +40 -0
- data/lib/xero_ap_is/models/status20.rb +48 -0
- data/lib/xero_ap_is/models/status21.rb +36 -0
- data/lib/xero_ap_is/models/status22.rb +44 -0
- data/lib/xero_ap_is/models/status3.rb +52 -0
- data/lib/xero_ap_is/models/status4.rb +40 -0
- data/lib/xero_ap_is/models/status5.rb +40 -0
- data/lib/xero_ap_is/models/status6.rb +52 -0
- data/lib/xero_ap_is/models/status7.rb +36 -0
- data/lib/xero_ap_is/models/status8.rb +37 -0
- data/lib/xero_ap_is/models/status9.rb +40 -0
- data/lib/xero_ap_is/models/system_account.rb +110 -0
- data/lib/xero_ap_is/models/task.rb +234 -0
- data/lib/xero_ap_is/models/task_create_or_update.rb +105 -0
- data/lib/xero_ap_is/models/tasks.rb +94 -0
- data/lib/xero_ap_is/models/tax_breakdown_component.rb +172 -0
- data/lib/xero_ap_is/models/tax_component.rb +108 -0
- data/lib/xero_ap_is/models/tax_number_type.rb +45 -0
- data/lib/xero_ap_is/models/tax_rate.rb +213 -0
- data/lib/xero_ap_is/models/tax_rates.rb +85 -0
- data/lib/xero_ap_is/models/tax_type.rb +520 -0
- data/lib/xero_ap_is/models/taxability.rb +48 -0
- data/lib/xero_ap_is/models/ten_ninety_nine_contact.rb +318 -0
- data/lib/xero_ap_is/models/time_entries.rb +94 -0
- data/lib/xero_ap_is/models/time_entry.rb +179 -0
- data/lib/xero_ap_is/models/time_entry_create_or_update.rb +120 -0
- data/lib/xero_ap_is/models/time_zone.rb +592 -0
- data/lib/xero_ap_is/models/timeframe.rb +40 -0
- data/lib/xero_ap_is/models/tracking_categories.rb +85 -0
- data/lib/xero_ap_is/models/tracking_category.rb +140 -0
- data/lib/xero_ap_is/models/tracking_option.rb +109 -0
- data/lib/xero_ap_is/models/tracking_options.rb +84 -0
- data/lib/xero_ap_is/models/type.rb +60 -0
- data/lib/xero_ap_is/models/type1.rb +26 -0
- data/lib/xero_ap_is/models/type10.rb +36 -0
- data/lib/xero_ap_is/models/type11.rb +114 -0
- data/lib/xero_ap_is/models/type2.rb +48 -0
- data/lib/xero_ap_is/models/type3.rb +60 -0
- data/lib/xero_ap_is/models/type4.rb +44 -0
- data/lib/xero_ap_is/models/type5.rb +40 -0
- data/lib/xero_ap_is/models/type6.rb +36 -0
- data/lib/xero_ap_is/models/type7.rb +37 -0
- data/lib/xero_ap_is/models/type8.rb +36 -0
- data/lib/xero_ap_is/models/type9.rb +26 -0
- data/lib/xero_ap_is/models/unit.rb +36 -0
- data/lib/xero_ap_is/models/user.rb +139 -0
- data/lib/xero_ap_is/models/users.rb +84 -0
- data/lib/xero_ap_is/models/validation_error.rb +75 -0
- data/lib/xero_ap_is/models/version.rb +68 -0
- data/lib/xero_ap_is/utilities/date_time_helper.rb +11 -0
- data/lib/xero_ap_is/utilities/file_wrapper.rb +28 -0
- data/lib/xero_ap_is.rb +309 -0
- metadata +372 -0
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# xero_ap_is
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module XeroApIs
|
|
7
|
+
# TaskCreateOrUpdate Model.
|
|
8
|
+
class TaskCreateOrUpdate < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# Name of the task. Max length 100 characters.
|
|
13
|
+
# @return [String]
|
|
14
|
+
attr_accessor :name
|
|
15
|
+
|
|
16
|
+
# Name of the task. Max length 100 characters.
|
|
17
|
+
# @return [Amount]
|
|
18
|
+
attr_accessor :rate
|
|
19
|
+
|
|
20
|
+
# Can be `TIME`, `FIXED` or `NON_CHARGEABLE`, defines how the task will be
|
|
21
|
+
# charged. Use `TIME` when you want to charge per hour and `FIXED` to charge
|
|
22
|
+
# as a fixed amount. If the task will not be charged use `NON_CHARGEABLE`.
|
|
23
|
+
# @return [ChargeType]
|
|
24
|
+
attr_accessor :charge_type
|
|
25
|
+
|
|
26
|
+
# An estimated time to perform the task
|
|
27
|
+
# @return [Integer]
|
|
28
|
+
attr_accessor :estimate_minutes
|
|
29
|
+
|
|
30
|
+
# A mapping from model property names to API property names.
|
|
31
|
+
def self.names
|
|
32
|
+
@_hash = {} if @_hash.nil?
|
|
33
|
+
@_hash['name'] = 'name'
|
|
34
|
+
@_hash['rate'] = 'rate'
|
|
35
|
+
@_hash['charge_type'] = 'chargeType'
|
|
36
|
+
@_hash['estimate_minutes'] = 'estimateMinutes'
|
|
37
|
+
@_hash
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# An array for optional fields
|
|
41
|
+
def self.optionals
|
|
42
|
+
%w[
|
|
43
|
+
estimate_minutes
|
|
44
|
+
]
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# An array for nullable fields
|
|
48
|
+
def self.nullables
|
|
49
|
+
[]
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def initialize(name:, rate:, charge_type:, estimate_minutes: SKIP,
|
|
53
|
+
additional_properties: nil)
|
|
54
|
+
# Add additional model properties to the instance
|
|
55
|
+
additional_properties = {} if additional_properties.nil?
|
|
56
|
+
|
|
57
|
+
@name = name
|
|
58
|
+
@rate = rate
|
|
59
|
+
@charge_type = charge_type
|
|
60
|
+
@estimate_minutes = estimate_minutes unless estimate_minutes == SKIP
|
|
61
|
+
@additional_properties = additional_properties
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# Creates an instance of the object from a hash.
|
|
65
|
+
def self.from_hash(hash)
|
|
66
|
+
return nil unless hash
|
|
67
|
+
|
|
68
|
+
# Extract variables from the hash.
|
|
69
|
+
name = hash.key?('name') ? hash['name'] : nil
|
|
70
|
+
rate = Amount.from_hash(hash['rate']) if hash['rate']
|
|
71
|
+
charge_type = hash.key?('chargeType') ? hash['chargeType'] : nil
|
|
72
|
+
estimate_minutes =
|
|
73
|
+
hash.key?('estimateMinutes') ? hash['estimateMinutes'] : SKIP
|
|
74
|
+
|
|
75
|
+
# Create a new hash for additional properties, removing known properties.
|
|
76
|
+
new_hash = hash.reject { |k, _| names.value?(k) }
|
|
77
|
+
|
|
78
|
+
additional_properties = APIHelper.get_additional_properties(
|
|
79
|
+
new_hash, proc { |value| value }
|
|
80
|
+
)
|
|
81
|
+
|
|
82
|
+
# Create object from extracted values.
|
|
83
|
+
TaskCreateOrUpdate.new(name: name,
|
|
84
|
+
rate: rate,
|
|
85
|
+
charge_type: charge_type,
|
|
86
|
+
estimate_minutes: estimate_minutes,
|
|
87
|
+
additional_properties: additional_properties)
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# Provides a human-readable string representation of the object.
|
|
91
|
+
def to_s
|
|
92
|
+
class_name = self.class.name.split('::').last
|
|
93
|
+
"<#{class_name} name: #{@name}, rate: #{@rate}, charge_type: #{@charge_type},"\
|
|
94
|
+
" estimate_minutes: #{@estimate_minutes}, additional_properties: #{@additional_properties}>"
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
98
|
+
def inspect
|
|
99
|
+
class_name = self.class.name.split('::').last
|
|
100
|
+
"<#{class_name} name: #{@name.inspect}, rate: #{@rate.inspect}, charge_type:"\
|
|
101
|
+
" #{@charge_type.inspect}, estimate_minutes: #{@estimate_minutes.inspect},"\
|
|
102
|
+
" additional_properties: #{@additional_properties}>"
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
end
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# xero_ap_is
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module XeroApIs
|
|
7
|
+
# Tasks Model.
|
|
8
|
+
class Tasks < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# TODO: Write general description for this method
|
|
13
|
+
# @return [Pagination]
|
|
14
|
+
attr_accessor :pagination
|
|
15
|
+
|
|
16
|
+
# TODO: Write general description for this method
|
|
17
|
+
# @return [Array[Task]]
|
|
18
|
+
attr_accessor :items
|
|
19
|
+
|
|
20
|
+
# A mapping from model property names to API property names.
|
|
21
|
+
def self.names
|
|
22
|
+
@_hash = {} if @_hash.nil?
|
|
23
|
+
@_hash['pagination'] = 'pagination'
|
|
24
|
+
@_hash['items'] = 'items'
|
|
25
|
+
@_hash
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# An array for optional fields
|
|
29
|
+
def self.optionals
|
|
30
|
+
%w[
|
|
31
|
+
pagination
|
|
32
|
+
items
|
|
33
|
+
]
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# An array for nullable fields
|
|
37
|
+
def self.nullables
|
|
38
|
+
[]
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def initialize(pagination: SKIP, items: SKIP, additional_properties: nil)
|
|
42
|
+
# Add additional model properties to the instance
|
|
43
|
+
additional_properties = {} if additional_properties.nil?
|
|
44
|
+
|
|
45
|
+
@pagination = pagination unless pagination == SKIP
|
|
46
|
+
@items = items unless items == SKIP
|
|
47
|
+
@additional_properties = additional_properties
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# Creates an instance of the object from a hash.
|
|
51
|
+
def self.from_hash(hash)
|
|
52
|
+
return nil unless hash
|
|
53
|
+
|
|
54
|
+
# Extract variables from the hash.
|
|
55
|
+
pagination = Pagination.from_hash(hash['pagination']) if hash['pagination']
|
|
56
|
+
# Parameter is an array, so we need to iterate through it
|
|
57
|
+
items = nil
|
|
58
|
+
unless hash['items'].nil?
|
|
59
|
+
items = []
|
|
60
|
+
hash['items'].each do |structure|
|
|
61
|
+
items << (Task.from_hash(structure) if structure)
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
items = SKIP unless hash.key?('items')
|
|
66
|
+
|
|
67
|
+
# Create a new hash for additional properties, removing known properties.
|
|
68
|
+
new_hash = hash.reject { |k, _| names.value?(k) }
|
|
69
|
+
|
|
70
|
+
additional_properties = APIHelper.get_additional_properties(
|
|
71
|
+
new_hash, proc { |value| value }
|
|
72
|
+
)
|
|
73
|
+
|
|
74
|
+
# Create object from extracted values.
|
|
75
|
+
Tasks.new(pagination: pagination,
|
|
76
|
+
items: items,
|
|
77
|
+
additional_properties: additional_properties)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# Provides a human-readable string representation of the object.
|
|
81
|
+
def to_s
|
|
82
|
+
class_name = self.class.name.split('::').last
|
|
83
|
+
"<#{class_name} pagination: #{@pagination}, items: #{@items}, additional_properties:"\
|
|
84
|
+
" #{@additional_properties}>"
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
88
|
+
def inspect
|
|
89
|
+
class_name = self.class.name.split('::').last
|
|
90
|
+
"<#{class_name} pagination: #{@pagination.inspect}, items: #{@items.inspect},"\
|
|
91
|
+
" additional_properties: #{@additional_properties}>"
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
end
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
# xero_ap_is
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module XeroApIs
|
|
7
|
+
# TaxBreakdownComponent Model.
|
|
8
|
+
class TaxBreakdownComponent < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# The unique ID number of this component
|
|
13
|
+
# @return [UUID | String]
|
|
14
|
+
attr_accessor :tax_component_id
|
|
15
|
+
|
|
16
|
+
# The type of the jurisdiction
|
|
17
|
+
# @return [Type2]
|
|
18
|
+
attr_accessor :type
|
|
19
|
+
|
|
20
|
+
# The name of the jurisdiction
|
|
21
|
+
# @return [String]
|
|
22
|
+
attr_accessor :name
|
|
23
|
+
|
|
24
|
+
# The percentage of the tax
|
|
25
|
+
# @return [Float]
|
|
26
|
+
attr_accessor :tax_percentage
|
|
27
|
+
|
|
28
|
+
# The amount of the tax
|
|
29
|
+
# @return [Float]
|
|
30
|
+
attr_accessor :tax_amount
|
|
31
|
+
|
|
32
|
+
# The amount that is taxable
|
|
33
|
+
# @return [Float]
|
|
34
|
+
attr_accessor :taxable_amount
|
|
35
|
+
|
|
36
|
+
# The amount that is not taxable
|
|
37
|
+
# @return [Float]
|
|
38
|
+
attr_accessor :non_taxable_amount
|
|
39
|
+
|
|
40
|
+
# The amount that is exempt
|
|
41
|
+
# @return [Float]
|
|
42
|
+
attr_accessor :exempt_amount
|
|
43
|
+
|
|
44
|
+
# The state assigned number of the jurisdiction
|
|
45
|
+
# @return [String]
|
|
46
|
+
attr_accessor :state_assigned_no
|
|
47
|
+
|
|
48
|
+
# Name identifying the region within the country
|
|
49
|
+
# @return [String]
|
|
50
|
+
attr_accessor :jurisdiction_region
|
|
51
|
+
|
|
52
|
+
# A mapping from model property names to API property names.
|
|
53
|
+
def self.names
|
|
54
|
+
@_hash = {} if @_hash.nil?
|
|
55
|
+
@_hash['tax_component_id'] = 'TaxComponentId'
|
|
56
|
+
@_hash['type'] = 'Type'
|
|
57
|
+
@_hash['name'] = 'Name'
|
|
58
|
+
@_hash['tax_percentage'] = 'TaxPercentage'
|
|
59
|
+
@_hash['tax_amount'] = 'TaxAmount'
|
|
60
|
+
@_hash['taxable_amount'] = 'TaxableAmount'
|
|
61
|
+
@_hash['non_taxable_amount'] = 'NonTaxableAmount'
|
|
62
|
+
@_hash['exempt_amount'] = 'ExemptAmount'
|
|
63
|
+
@_hash['state_assigned_no'] = 'StateAssignedNo'
|
|
64
|
+
@_hash['jurisdiction_region'] = 'JurisdictionRegion'
|
|
65
|
+
@_hash
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
# An array for optional fields
|
|
69
|
+
def self.optionals
|
|
70
|
+
%w[
|
|
71
|
+
tax_component_id
|
|
72
|
+
type
|
|
73
|
+
name
|
|
74
|
+
tax_percentage
|
|
75
|
+
tax_amount
|
|
76
|
+
taxable_amount
|
|
77
|
+
non_taxable_amount
|
|
78
|
+
exempt_amount
|
|
79
|
+
state_assigned_no
|
|
80
|
+
jurisdiction_region
|
|
81
|
+
]
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
# An array for nullable fields
|
|
85
|
+
def self.nullables
|
|
86
|
+
[]
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
def initialize(tax_component_id: SKIP, type: SKIP, name: SKIP,
|
|
90
|
+
tax_percentage: SKIP, tax_amount: SKIP, taxable_amount: SKIP,
|
|
91
|
+
non_taxable_amount: SKIP, exempt_amount: SKIP,
|
|
92
|
+
state_assigned_no: SKIP, jurisdiction_region: SKIP,
|
|
93
|
+
additional_properties: nil)
|
|
94
|
+
# Add additional model properties to the instance
|
|
95
|
+
additional_properties = {} if additional_properties.nil?
|
|
96
|
+
|
|
97
|
+
@tax_component_id = tax_component_id unless tax_component_id == SKIP
|
|
98
|
+
@type = type unless type == SKIP
|
|
99
|
+
@name = name unless name == SKIP
|
|
100
|
+
@tax_percentage = tax_percentage unless tax_percentage == SKIP
|
|
101
|
+
@tax_amount = tax_amount unless tax_amount == SKIP
|
|
102
|
+
@taxable_amount = taxable_amount unless taxable_amount == SKIP
|
|
103
|
+
@non_taxable_amount = non_taxable_amount unless non_taxable_amount == SKIP
|
|
104
|
+
@exempt_amount = exempt_amount unless exempt_amount == SKIP
|
|
105
|
+
@state_assigned_no = state_assigned_no unless state_assigned_no == SKIP
|
|
106
|
+
@jurisdiction_region = jurisdiction_region unless jurisdiction_region == SKIP
|
|
107
|
+
@additional_properties = additional_properties
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
# Creates an instance of the object from a hash.
|
|
111
|
+
def self.from_hash(hash)
|
|
112
|
+
return nil unless hash
|
|
113
|
+
|
|
114
|
+
# Extract variables from the hash.
|
|
115
|
+
tax_component_id =
|
|
116
|
+
hash.key?('TaxComponentId') ? hash['TaxComponentId'] : SKIP
|
|
117
|
+
type = hash.key?('Type') ? hash['Type'] : SKIP
|
|
118
|
+
name = hash.key?('Name') ? hash['Name'] : SKIP
|
|
119
|
+
tax_percentage = hash.key?('TaxPercentage') ? hash['TaxPercentage'] : SKIP
|
|
120
|
+
tax_amount = hash.key?('TaxAmount') ? hash['TaxAmount'] : SKIP
|
|
121
|
+
taxable_amount = hash.key?('TaxableAmount') ? hash['TaxableAmount'] : SKIP
|
|
122
|
+
non_taxable_amount =
|
|
123
|
+
hash.key?('NonTaxableAmount') ? hash['NonTaxableAmount'] : SKIP
|
|
124
|
+
exempt_amount = hash.key?('ExemptAmount') ? hash['ExemptAmount'] : SKIP
|
|
125
|
+
state_assigned_no =
|
|
126
|
+
hash.key?('StateAssignedNo') ? hash['StateAssignedNo'] : SKIP
|
|
127
|
+
jurisdiction_region =
|
|
128
|
+
hash.key?('JurisdictionRegion') ? hash['JurisdictionRegion'] : SKIP
|
|
129
|
+
|
|
130
|
+
# Create a new hash for additional properties, removing known properties.
|
|
131
|
+
new_hash = hash.reject { |k, _| names.value?(k) }
|
|
132
|
+
|
|
133
|
+
additional_properties = APIHelper.get_additional_properties(
|
|
134
|
+
new_hash, proc { |value| value }
|
|
135
|
+
)
|
|
136
|
+
|
|
137
|
+
# Create object from extracted values.
|
|
138
|
+
TaxBreakdownComponent.new(tax_component_id: tax_component_id,
|
|
139
|
+
type: type,
|
|
140
|
+
name: name,
|
|
141
|
+
tax_percentage: tax_percentage,
|
|
142
|
+
tax_amount: tax_amount,
|
|
143
|
+
taxable_amount: taxable_amount,
|
|
144
|
+
non_taxable_amount: non_taxable_amount,
|
|
145
|
+
exempt_amount: exempt_amount,
|
|
146
|
+
state_assigned_no: state_assigned_no,
|
|
147
|
+
jurisdiction_region: jurisdiction_region,
|
|
148
|
+
additional_properties: additional_properties)
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
# Provides a human-readable string representation of the object.
|
|
152
|
+
def to_s
|
|
153
|
+
class_name = self.class.name.split('::').last
|
|
154
|
+
"<#{class_name} tax_component_id: #{@tax_component_id}, type: #{@type}, name: #{@name},"\
|
|
155
|
+
" tax_percentage: #{@tax_percentage}, tax_amount: #{@tax_amount}, taxable_amount:"\
|
|
156
|
+
" #{@taxable_amount}, non_taxable_amount: #{@non_taxable_amount}, exempt_amount:"\
|
|
157
|
+
" #{@exempt_amount}, state_assigned_no: #{@state_assigned_no}, jurisdiction_region:"\
|
|
158
|
+
" #{@jurisdiction_region}, additional_properties: #{@additional_properties}>"
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
162
|
+
def inspect
|
|
163
|
+
class_name = self.class.name.split('::').last
|
|
164
|
+
"<#{class_name} tax_component_id: #{@tax_component_id.inspect}, type: #{@type.inspect},"\
|
|
165
|
+
" name: #{@name.inspect}, tax_percentage: #{@tax_percentage.inspect}, tax_amount:"\
|
|
166
|
+
" #{@tax_amount.inspect}, taxable_amount: #{@taxable_amount.inspect}, non_taxable_amount:"\
|
|
167
|
+
" #{@non_taxable_amount.inspect}, exempt_amount: #{@exempt_amount.inspect},"\
|
|
168
|
+
" state_assigned_no: #{@state_assigned_no.inspect}, jurisdiction_region:"\
|
|
169
|
+
" #{@jurisdiction_region.inspect}, additional_properties: #{@additional_properties}>"
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
end
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# xero_ap_is
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module XeroApIs
|
|
7
|
+
# TaxComponent Model.
|
|
8
|
+
class TaxComponent < BaseModel
|
|
9
|
+
SKIP = Object.new
|
|
10
|
+
private_constant :SKIP
|
|
11
|
+
|
|
12
|
+
# Name of Tax Component
|
|
13
|
+
# @return [String]
|
|
14
|
+
attr_accessor :name
|
|
15
|
+
|
|
16
|
+
# Tax Rate (up to 4dp)
|
|
17
|
+
# @return [Float]
|
|
18
|
+
attr_accessor :rate
|
|
19
|
+
|
|
20
|
+
# Boolean to describe if Tax rate is compounded.
|
|
21
|
+
# @return [TrueClass | FalseClass]
|
|
22
|
+
attr_accessor :is_compound
|
|
23
|
+
|
|
24
|
+
# Boolean to describe if tax rate is non-recoverable. Non-recoverable rates
|
|
25
|
+
# are only applicable to Canadian organisations
|
|
26
|
+
# @return [TrueClass | FalseClass]
|
|
27
|
+
attr_accessor :is_non_recoverable
|
|
28
|
+
|
|
29
|
+
# A mapping from model property names to API property names.
|
|
30
|
+
def self.names
|
|
31
|
+
@_hash = {} if @_hash.nil?
|
|
32
|
+
@_hash['name'] = 'Name'
|
|
33
|
+
@_hash['rate'] = 'Rate'
|
|
34
|
+
@_hash['is_compound'] = 'IsCompound'
|
|
35
|
+
@_hash['is_non_recoverable'] = 'IsNonRecoverable'
|
|
36
|
+
@_hash
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# An array for optional fields
|
|
40
|
+
def self.optionals
|
|
41
|
+
%w[
|
|
42
|
+
name
|
|
43
|
+
rate
|
|
44
|
+
is_compound
|
|
45
|
+
is_non_recoverable
|
|
46
|
+
]
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
# An array for nullable fields
|
|
50
|
+
def self.nullables
|
|
51
|
+
[]
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def initialize(name: SKIP, rate: SKIP, is_compound: SKIP,
|
|
55
|
+
is_non_recoverable: SKIP, additional_properties: nil)
|
|
56
|
+
# Add additional model properties to the instance
|
|
57
|
+
additional_properties = {} if additional_properties.nil?
|
|
58
|
+
|
|
59
|
+
@name = name unless name == SKIP
|
|
60
|
+
@rate = rate unless rate == SKIP
|
|
61
|
+
@is_compound = is_compound unless is_compound == SKIP
|
|
62
|
+
@is_non_recoverable = is_non_recoverable unless is_non_recoverable == SKIP
|
|
63
|
+
@additional_properties = additional_properties
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
# Creates an instance of the object from a hash.
|
|
67
|
+
def self.from_hash(hash)
|
|
68
|
+
return nil unless hash
|
|
69
|
+
|
|
70
|
+
# Extract variables from the hash.
|
|
71
|
+
name = hash.key?('Name') ? hash['Name'] : SKIP
|
|
72
|
+
rate = hash.key?('Rate') ? hash['Rate'] : SKIP
|
|
73
|
+
is_compound = hash.key?('IsCompound') ? hash['IsCompound'] : SKIP
|
|
74
|
+
is_non_recoverable =
|
|
75
|
+
hash.key?('IsNonRecoverable') ? hash['IsNonRecoverable'] : SKIP
|
|
76
|
+
|
|
77
|
+
# Create a new hash for additional properties, removing known properties.
|
|
78
|
+
new_hash = hash.reject { |k, _| names.value?(k) }
|
|
79
|
+
|
|
80
|
+
additional_properties = APIHelper.get_additional_properties(
|
|
81
|
+
new_hash, proc { |value| value }
|
|
82
|
+
)
|
|
83
|
+
|
|
84
|
+
# Create object from extracted values.
|
|
85
|
+
TaxComponent.new(name: name,
|
|
86
|
+
rate: rate,
|
|
87
|
+
is_compound: is_compound,
|
|
88
|
+
is_non_recoverable: is_non_recoverable,
|
|
89
|
+
additional_properties: additional_properties)
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
# Provides a human-readable string representation of the object.
|
|
93
|
+
def to_s
|
|
94
|
+
class_name = self.class.name.split('::').last
|
|
95
|
+
"<#{class_name} name: #{@name}, rate: #{@rate}, is_compound: #{@is_compound},"\
|
|
96
|
+
" is_non_recoverable: #{@is_non_recoverable}, additional_properties:"\
|
|
97
|
+
" #{@additional_properties}>"
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
# Provides a debugging-friendly string with detailed object information.
|
|
101
|
+
def inspect
|
|
102
|
+
class_name = self.class.name.split('::').last
|
|
103
|
+
"<#{class_name} name: #{@name.inspect}, rate: #{@rate.inspect}, is_compound:"\
|
|
104
|
+
" #{@is_compound.inspect}, is_non_recoverable: #{@is_non_recoverable.inspect},"\
|
|
105
|
+
" additional_properties: #{@additional_properties}>"
|
|
106
|
+
end
|
|
107
|
+
end
|
|
108
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# xero_ap_is
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module XeroApIs
|
|
7
|
+
# Identifier of the regional type of tax number, such as US, UK, or other
|
|
8
|
+
# regional tax identifiers
|
|
9
|
+
class TaxNumberType
|
|
10
|
+
TAX_NUMBER_TYPE = [
|
|
11
|
+
# TODO: Write general description for SSN
|
|
12
|
+
SSN = 'SSN'.freeze,
|
|
13
|
+
|
|
14
|
+
# TODO: Write general description for EIN
|
|
15
|
+
EIN = 'EIN'.freeze,
|
|
16
|
+
|
|
17
|
+
# TODO: Write general description for ITIN
|
|
18
|
+
ITIN = 'ITIN'.freeze,
|
|
19
|
+
|
|
20
|
+
# TODO: Write general description for ATIN
|
|
21
|
+
ATIN = 'ATIN'.freeze
|
|
22
|
+
].freeze
|
|
23
|
+
|
|
24
|
+
def self.validate(value)
|
|
25
|
+
return false if value.nil?
|
|
26
|
+
|
|
27
|
+
TAX_NUMBER_TYPE.include?(value)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def self.from_value(value, default_value = SSN)
|
|
31
|
+
return default_value if value.nil?
|
|
32
|
+
|
|
33
|
+
str = value.to_s.strip
|
|
34
|
+
|
|
35
|
+
case str.downcase
|
|
36
|
+
when 'ssn' then SSN
|
|
37
|
+
when 'ein' then EIN
|
|
38
|
+
when 'itin' then ITIN
|
|
39
|
+
when 'atin' then ATIN
|
|
40
|
+
else
|
|
41
|
+
default_value
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|