xero-ruby 4.3.0 → 5.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.
@@ -20,6 +20,7 @@ module XeroRuby
20
20
  # @param xero_tenant_id [String] Xero identifier for Tenant
21
21
  # @param project_create_or_update [ProjectCreateOrUpdate] Create a new project with ProjectCreateOrUpdate object
22
22
  # @param [Hash] opts the optional parameters
23
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
23
24
  # @return [Project]
24
25
  def create_project(xero_tenant_id, project_create_or_update, opts = {})
25
26
  data, _status_code, _headers = create_project_with_http_info(xero_tenant_id, project_create_or_update, opts)
@@ -30,6 +31,7 @@ module XeroRuby
30
31
  # @param xero_tenant_id [String] Xero identifier for Tenant
31
32
  # @param project_create_or_update [ProjectCreateOrUpdate] Create a new project with ProjectCreateOrUpdate object
32
33
  # @param [Hash] opts the optional parameters
34
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
33
35
  # @return [Array<(Project, Integer, Hash)>] Project data, response status code and response headers
34
36
  def create_project_with_http_info(xero_tenant_id, project_create_or_update, options = {})
35
37
  opts = options.dup
@@ -64,6 +66,7 @@ module XeroRuby
64
66
  # HTTP header 'Content-Type'
65
67
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
66
68
  header_params[:'Xero-Tenant-Id'] = xero_tenant_id
69
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
67
70
 
68
71
  # form parameters
69
72
  form_params = opts[:form_params] || {}
@@ -99,6 +102,7 @@ module XeroRuby
99
102
  # @param project_id [String] You can create a task on a specified projectId
100
103
  # @param task_create_or_update [TaskCreateOrUpdate] The task object you are creating
101
104
  # @param [Hash] opts the optional parameters
105
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
102
106
  # @return [Task]
103
107
  def create_task(xero_tenant_id, project_id, task_create_or_update, opts = {})
104
108
  data, _status_code, _headers = create_task_with_http_info(xero_tenant_id, project_id, task_create_or_update, opts)
@@ -111,6 +115,7 @@ module XeroRuby
111
115
  # @param project_id [String] You can create a task on a specified projectId
112
116
  # @param task_create_or_update [TaskCreateOrUpdate] The task object you are creating
113
117
  # @param [Hash] opts the optional parameters
118
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
114
119
  # @return [Array<(Task, Integer, Hash)>] Task data, response status code and response headers
115
120
  def create_task_with_http_info(xero_tenant_id, project_id, task_create_or_update, options = {})
116
121
  opts = options.dup
@@ -149,6 +154,7 @@ module XeroRuby
149
154
  # HTTP header 'Content-Type'
150
155
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
151
156
  header_params[:'Xero-Tenant-Id'] = xero_tenant_id
157
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
152
158
 
153
159
  # form parameters
154
160
  form_params = opts[:form_params] || {}
@@ -184,6 +190,7 @@ module XeroRuby
184
190
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
185
191
  # @param time_entry_create_or_update [TimeEntryCreateOrUpdate] The time entry object you are creating
186
192
  # @param [Hash] opts the optional parameters
193
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
187
194
  # @return [TimeEntry]
188
195
  def create_time_entry(xero_tenant_id, project_id, time_entry_create_or_update, opts = {})
189
196
  data, _status_code, _headers = create_time_entry_with_http_info(xero_tenant_id, project_id, time_entry_create_or_update, opts)
@@ -196,6 +203,7 @@ module XeroRuby
196
203
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
197
204
  # @param time_entry_create_or_update [TimeEntryCreateOrUpdate] The time entry object you are creating
198
205
  # @param [Hash] opts the optional parameters
206
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
199
207
  # @return [Array<(TimeEntry, Integer, Hash)>] TimeEntry data, response status code and response headers
200
208
  def create_time_entry_with_http_info(xero_tenant_id, project_id, time_entry_create_or_update, options = {})
201
209
  opts = options.dup
@@ -234,6 +242,7 @@ module XeroRuby
234
242
  # HTTP header 'Content-Type'
235
243
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
236
244
  header_params[:'Xero-Tenant-Id'] = xero_tenant_id
245
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
237
246
 
238
247
  # form parameters
239
248
  form_params = opts[:form_params] || {}
@@ -1053,6 +1062,7 @@ module XeroRuby
1053
1062
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
1054
1063
  # @param project_patch [ProjectPatch] Update the status of an existing Project
1055
1064
  # @param [Hash] opts the optional parameters
1065
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
1056
1066
  # @return [nil]
1057
1067
  def patch_project(xero_tenant_id, project_id, project_patch, opts = {})
1058
1068
  patch_project_with_http_info(xero_tenant_id, project_id, project_patch, opts)
@@ -1065,6 +1075,7 @@ module XeroRuby
1065
1075
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
1066
1076
  # @param project_patch [ProjectPatch] Update the status of an existing Project
1067
1077
  # @param [Hash] opts the optional parameters
1078
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
1068
1079
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1069
1080
  def patch_project_with_http_info(xero_tenant_id, project_id, project_patch, options = {})
1070
1081
  opts = options.dup
@@ -1103,6 +1114,7 @@ module XeroRuby
1103
1114
  # HTTP header 'Content-Type'
1104
1115
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1105
1116
  header_params[:'Xero-Tenant-Id'] = xero_tenant_id
1117
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
1106
1118
 
1107
1119
  # form parameters
1108
1120
  form_params = opts[:form_params] || {}
@@ -1138,6 +1150,7 @@ module XeroRuby
1138
1150
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
1139
1151
  # @param project_create_or_update [ProjectCreateOrUpdate] Request of type ProjectCreateOrUpdate
1140
1152
  # @param [Hash] opts the optional parameters
1153
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
1141
1154
  # @return [nil]
1142
1155
  def update_project(xero_tenant_id, project_id, project_create_or_update, opts = {})
1143
1156
  update_project_with_http_info(xero_tenant_id, project_id, project_create_or_update, opts)
@@ -1150,6 +1163,7 @@ module XeroRuby
1150
1163
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
1151
1164
  # @param project_create_or_update [ProjectCreateOrUpdate] Request of type ProjectCreateOrUpdate
1152
1165
  # @param [Hash] opts the optional parameters
1166
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
1153
1167
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1154
1168
  def update_project_with_http_info(xero_tenant_id, project_id, project_create_or_update, options = {})
1155
1169
  opts = options.dup
@@ -1188,6 +1202,7 @@ module XeroRuby
1188
1202
  # HTTP header 'Content-Type'
1189
1203
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1190
1204
  header_params[:'Xero-Tenant-Id'] = xero_tenant_id
1205
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
1191
1206
 
1192
1207
  # form parameters
1193
1208
  form_params = opts[:form_params] || {}
@@ -1224,6 +1239,7 @@ module XeroRuby
1224
1239
  # @param task_id [String] You can specify an individual task by appending the id to the endpoint
1225
1240
  # @param task_create_or_update [TaskCreateOrUpdate] The task object you are updating
1226
1241
  # @param [Hash] opts the optional parameters
1242
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
1227
1243
  # @return [nil]
1228
1244
  def update_task(xero_tenant_id, project_id, task_id, task_create_or_update, opts = {})
1229
1245
  update_task_with_http_info(xero_tenant_id, project_id, task_id, task_create_or_update, opts)
@@ -1237,6 +1253,7 @@ module XeroRuby
1237
1253
  # @param task_id [String] You can specify an individual task by appending the id to the endpoint
1238
1254
  # @param task_create_or_update [TaskCreateOrUpdate] The task object you are updating
1239
1255
  # @param [Hash] opts the optional parameters
1256
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
1240
1257
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1241
1258
  def update_task_with_http_info(xero_tenant_id, project_id, task_id, task_create_or_update, options = {})
1242
1259
  opts = options.dup
@@ -1279,6 +1296,7 @@ module XeroRuby
1279
1296
  # HTTP header 'Content-Type'
1280
1297
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1281
1298
  header_params[:'Xero-Tenant-Id'] = xero_tenant_id
1299
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
1282
1300
 
1283
1301
  # form parameters
1284
1302
  form_params = opts[:form_params] || {}
@@ -1315,6 +1333,7 @@ module XeroRuby
1315
1333
  # @param time_entry_id [String] You can specify an individual time entry by appending the id to the endpoint
1316
1334
  # @param time_entry_create_or_update [TimeEntryCreateOrUpdate] The time entry object you are updating
1317
1335
  # @param [Hash] opts the optional parameters
1336
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
1318
1337
  # @return [nil]
1319
1338
  def update_time_entry(xero_tenant_id, project_id, time_entry_id, time_entry_create_or_update, opts = {})
1320
1339
  update_time_entry_with_http_info(xero_tenant_id, project_id, time_entry_id, time_entry_create_or_update, opts)
@@ -1328,6 +1347,7 @@ module XeroRuby
1328
1347
  # @param time_entry_id [String] You can specify an individual time entry by appending the id to the endpoint
1329
1348
  # @param time_entry_create_or_update [TimeEntryCreateOrUpdate] The time entry object you are updating
1330
1349
  # @param [Hash] opts the optional parameters
1350
+ # @option opts [String] :idempotency_key This allows you to safely retry requests without the risk of duplicate processing. 128 character max.
1331
1351
  # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1332
1352
  def update_time_entry_with_http_info(xero_tenant_id, project_id, time_entry_id, time_entry_create_or_update, options = {})
1333
1353
  opts = options.dup
@@ -1370,6 +1390,7 @@ module XeroRuby
1370
1390
  # HTTP header 'Content-Type'
1371
1391
  header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1372
1392
  header_params[:'Xero-Tenant-Id'] = xero_tenant_id
1393
+ header_params[:'Idempotency-Key'] = opts[:'idempotency_key'] if !opts[:'idempotency_key'].nil?
1373
1394
 
1374
1395
  # form parameters
1375
1396
  form_params = opts[:form_params] || {}
@@ -31,11 +31,7 @@ module XeroRuby::Accounting
31
31
  REVENUE ||= "REVENUE".freeze
32
32
  SALES ||= "SALES".freeze
33
33
  TERMLIAB ||= "TERMLIAB".freeze
34
- PAYGLIABILITY ||= "PAYGLIABILITY".freeze
35
34
  PAYG ||= "PAYG".freeze
36
- SUPERANNUATIONEXPENSE ||= "SUPERANNUATIONEXPENSE".freeze
37
- SUPERANNUATIONLIABILITY ||= "SUPERANNUATIONLIABILITY".freeze
38
- WAGESEXPENSE ||= "WAGESEXPENSE".freeze
39
35
 
40
36
  # Builds the enum from string
41
37
  # @param [String] The enum value in the form of the string
@@ -16,6 +16,9 @@ module XeroRuby::Accounting
16
16
  require 'bigdecimal'
17
17
 
18
18
  class Allocation
19
+ # Xero generated unique identifier
20
+ attr_accessor :allocation_id
21
+
19
22
 
20
23
  attr_accessor :invoice
21
24
 
@@ -34,6 +37,9 @@ module XeroRuby::Accounting
34
37
  # the date the allocation is applied YYYY-MM-DD.
35
38
  attr_accessor :date
36
39
 
40
+ # A flag that returns true when the allocation is succesfully deleted
41
+ attr_accessor :is_deleted
42
+
37
43
  # A string to indicate if a invoice status
38
44
  attr_accessor :status_attribute_string
39
45
 
@@ -43,12 +49,14 @@ module XeroRuby::Accounting
43
49
  # Attribute mapping from ruby-style variable name to JSON key.
44
50
  def self.attribute_map
45
51
  {
52
+ :'allocation_id' => :'AllocationID',
46
53
  :'invoice' => :'Invoice',
47
54
  :'overpayment' => :'Overpayment',
48
55
  :'prepayment' => :'Prepayment',
49
56
  :'credit_note' => :'CreditNote',
50
57
  :'amount' => :'Amount',
51
58
  :'date' => :'Date',
59
+ :'is_deleted' => :'IsDeleted',
52
60
  :'status_attribute_string' => :'StatusAttributeString',
53
61
  :'validation_errors' => :'ValidationErrors'
54
62
  }
@@ -57,12 +65,14 @@ module XeroRuby::Accounting
57
65
  # Attribute type mapping.
58
66
  def self.openapi_types
59
67
  {
68
+ :'allocation_id' => :'String',
60
69
  :'invoice' => :'Invoice',
61
70
  :'overpayment' => :'Overpayment',
62
71
  :'prepayment' => :'Prepayment',
63
72
  :'credit_note' => :'CreditNote',
64
73
  :'amount' => :'BigDecimal',
65
74
  :'date' => :'Date',
75
+ :'is_deleted' => :'Boolean',
66
76
  :'status_attribute_string' => :'String',
67
77
  :'validation_errors' => :'Array<ValidationError>'
68
78
  }
@@ -83,6 +93,10 @@ module XeroRuby::Accounting
83
93
  h[k.to_sym] = v
84
94
  }
85
95
 
96
+ if attributes.key?(:'allocation_id')
97
+ self.allocation_id = attributes[:'allocation_id']
98
+ end
99
+
86
100
  if attributes.key?(:'invoice')
87
101
  self.invoice = attributes[:'invoice']
88
102
  end
@@ -107,6 +121,10 @@ module XeroRuby::Accounting
107
121
  self.date = attributes[:'date']
108
122
  end
109
123
 
124
+ if attributes.key?(:'is_deleted')
125
+ self.is_deleted = attributes[:'is_deleted']
126
+ end
127
+
110
128
  if attributes.key?(:'status_attribute_string')
111
129
  self.status_attribute_string = attributes[:'status_attribute_string']
112
130
  end
@@ -151,12 +169,14 @@ module XeroRuby::Accounting
151
169
  def ==(o)
152
170
  return true if self.equal?(o)
153
171
  self.class == o.class &&
172
+ allocation_id == o.allocation_id &&
154
173
  invoice == o.invoice &&
155
174
  overpayment == o.overpayment &&
156
175
  prepayment == o.prepayment &&
157
176
  credit_note == o.credit_note &&
158
177
  amount == o.amount &&
159
178
  date == o.date &&
179
+ is_deleted == o.is_deleted &&
160
180
  status_attribute_string == o.status_attribute_string &&
161
181
  validation_errors == o.validation_errors
162
182
  end
@@ -170,7 +190,7 @@ module XeroRuby::Accounting
170
190
  # Calculates hash code according to all attributes.
171
191
  # @return [Integer] Hash code
172
192
  def hash
173
- [invoice, overpayment, prepayment, credit_note, amount, date, status_attribute_string, validation_errors].hash
193
+ [allocation_id, invoice, overpayment, prepayment, credit_note, amount, date, is_deleted, status_attribute_string, validation_errors].hash
174
194
  end
175
195
 
176
196
  # Builds the object from hash
@@ -49,9 +49,6 @@ module XeroRuby::Accounting
49
49
  # Email address of contact person (umlauts not supported) (max length = 255)
50
50
  attr_accessor :email_address
51
51
 
52
- # Skype user name of contact
53
- attr_accessor :skype_user_name
54
-
55
52
  # See contact persons
56
53
  attr_accessor :contact_persons
57
54
 
@@ -189,7 +186,6 @@ module XeroRuby::Accounting
189
186
  :'last_name' => :'LastName',
190
187
  :'company_number' => :'CompanyNumber',
191
188
  :'email_address' => :'EmailAddress',
192
- :'skype_user_name' => :'SkypeUserName',
193
189
  :'contact_persons' => :'ContactPersons',
194
190
  :'bank_account_details' => :'BankAccountDetails',
195
191
  :'tax_number' => :'TaxNumber',
@@ -238,7 +234,6 @@ module XeroRuby::Accounting
238
234
  :'last_name' => :'String',
239
235
  :'company_number' => :'String',
240
236
  :'email_address' => :'String',
241
- :'skype_user_name' => :'String',
242
237
  :'contact_persons' => :'Array<ContactPerson>',
243
238
  :'bank_account_details' => :'String',
244
239
  :'tax_number' => :'String',
@@ -329,10 +324,6 @@ module XeroRuby::Accounting
329
324
  self.email_address = attributes[:'email_address']
330
325
  end
331
326
 
332
- if attributes.key?(:'skype_user_name')
333
- self.skype_user_name = attributes[:'skype_user_name']
334
- end
335
-
336
327
  if attributes.key?(:'contact_persons')
337
328
  if (value = attributes[:'contact_persons']).is_a?(Array)
338
329
  self.contact_persons = value
@@ -666,7 +657,6 @@ module XeroRuby::Accounting
666
657
  last_name == o.last_name &&
667
658
  company_number == o.company_number &&
668
659
  email_address == o.email_address &&
669
- skype_user_name == o.skype_user_name &&
670
660
  contact_persons == o.contact_persons &&
671
661
  bank_account_details == o.bank_account_details &&
672
662
  tax_number == o.tax_number &&
@@ -710,7 +700,7 @@ module XeroRuby::Accounting
710
700
  # Calculates hash code according to all attributes.
711
701
  # @return [Integer] Hash code
712
702
  def hash
713
- [contact_id, merged_to_contact_id, contact_number, account_number, contact_status, name, first_name, last_name, company_number, email_address, skype_user_name, contact_persons, bank_account_details, tax_number, accounts_receivable_tax_type, accounts_payable_tax_type, addresses, phones, is_supplier, is_customer, sales_default_line_amount_type, purchases_default_line_amount_type, default_currency, xero_network_key, sales_default_account_code, purchases_default_account_code, sales_tracking_categories, purchases_tracking_categories, tracking_category_name, tracking_category_option, payment_terms, updated_date_utc, contact_groups, website, branding_theme, batch_payments, discount, balances, attachments, has_attachments, validation_errors, has_validation_errors, status_attribute_string].hash
703
+ [contact_id, merged_to_contact_id, contact_number, account_number, contact_status, name, first_name, last_name, company_number, email_address, contact_persons, bank_account_details, tax_number, accounts_receivable_tax_type, accounts_payable_tax_type, addresses, phones, is_supplier, is_customer, sales_default_line_amount_type, purchases_default_line_amount_type, default_currency, xero_network_key, sales_default_account_code, purchases_default_account_code, sales_tracking_categories, purchases_tracking_categories, tracking_category_name, tracking_category_option, payment_terms, updated_date_utc, contact_groups, website, branding_theme, batch_payments, discount, balances, attachments, has_attachments, validation_errors, has_validation_errors, status_attribute_string].hash
714
704
  end
715
705
 
716
706
  # Builds the object from hash
@@ -182,7 +182,6 @@ module XeroRuby::Accounting
182
182
  ZMW ||= "ZMW".freeze
183
183
  ZMK ||= "ZMK".freeze
184
184
  ZWD ||= "ZWD".freeze
185
- EMPTY_CURRENCY ||= "".freeze
186
185
 
187
186
  # Builds the enum from string
188
187
  # @param [String] The enum value in the form of the string
@@ -131,6 +131,7 @@ module XeroRuby::Accounting
131
131
  IMN33 ||= "IMN33".freeze
132
132
  IMRE ||= "IMRE".freeze
133
133
  BADDEBTRECOVERY ||= "BADDEBTRECOVERY".freeze
134
+ USSALESTAX ||= "USSALESTAX".freeze
134
135
 
135
136
  # Boolean to describe if tax rate can be used for asset accounts i.e. true,false
136
137
  attr_accessor :can_apply_to_assets
@@ -289,7 +290,7 @@ module XeroRuby::Accounting
289
290
  def valid?
290
291
  status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "DELETED", "ARCHIVED", "PENDING"])
291
292
  return false unless status_validator.valid?(@status)
292
- report_tax_type_validator = EnumAttributeValidator.new('String', ["AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33", "TXRCRE", "TXRCESS", "TXRCTS", "CAPEXINPUT", "UNDEFINED", "CAPEXOUTPUT", "ZEROEXPOUTPUT", "GOODSIMPORT", "NONEINPUT", "NOTREPORTED", "SROVRRS", "SROVRLVG", "SRLVG", "IM", "IMESS", "IMN33", "IMRE", "BADDEBTRECOVERY"])
293
+ report_tax_type_validator = EnumAttributeValidator.new('String', ["AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33", "TXRCRE", "TXRCESS", "TXRCTS", "CAPEXINPUT", "UNDEFINED", "CAPEXOUTPUT", "ZEROEXPOUTPUT", "GOODSIMPORT", "NONEINPUT", "NOTREPORTED", "SROVRRS", "SROVRLVG", "SRLVG", "IM", "IMESS", "IMN33", "IMRE", "BADDEBTRECOVERY", "USSALESTAX"])
293
294
  return false unless report_tax_type_validator.valid?(@report_tax_type)
294
295
  true
295
296
  end
@@ -307,7 +308,7 @@ module XeroRuby::Accounting
307
308
  # Custom attribute writer method checking allowed values (enum).
308
309
  # @param [Object] report_tax_type Object to be assigned
309
310
  def report_tax_type=(report_tax_type)
310
- validator = EnumAttributeValidator.new('String', ["AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33", "TXRCRE", "TXRCESS", "TXRCTS", "CAPEXINPUT", "UNDEFINED", "CAPEXOUTPUT", "ZEROEXPOUTPUT", "GOODSIMPORT", "NONEINPUT", "NOTREPORTED", "SROVRRS", "SROVRLVG", "SRLVG", "IM", "IMESS", "IMN33", "IMRE", "BADDEBTRECOVERY"])
311
+ validator = EnumAttributeValidator.new('String', ["AVALARA", "BASEXCLUDED", "CAPITALSALESOUTPUT", "CAPITALEXPENSESINPUT", "ECOUTPUT", "ECOUTPUTSERVICES", "ECINPUT", "ECACQUISITIONS", "EXEMPTEXPENSES", "EXEMPTINPUT", "EXEMPTOUTPUT", "GSTONIMPORTS", "INPUT", "INPUTTAXED", "MOSSSALES", "NONE", "NONEOUTPUT", "OUTPUT", "PURCHASESINPUT", "SALESOUTPUT", "EXEMPTCAPITAL", "EXEMPTEXPORT", "CAPITALEXINPUT", "GSTONCAPIMPORTS", "GSTONCAPITALIMPORTS", "REVERSECHARGES", "PAYMENTS", "INVOICE", "CASH", "ACCRUAL", "FLATRATECASH", "FLATRATEACCRUAL", "ACCRUALS", "TXCA", "SRCAS", "DSOUTPUT", "BLINPUT2", "EPINPUT", "IMINPUT2", "MEINPUT", "IGDSINPUT2", "ESN33OUTPUT", "OPINPUT", "OSOUTPUT", "TXN33INPUT", "TXESSINPUT", "TXREINPUT", "TXPETINPUT", "NRINPUT", "ES33OUTPUT", "ZERORATEDINPUT", "ZERORATEDOUTPUT", "DRCHARGESUPPLY", "DRCHARGE", "CAPINPUT", "CAPIMPORTS", "IMINPUT", "INPUT2", "CIUINPUT", "SRINPUT", "OUTPUT2", "SROUTPUT", "CAPOUTPUT", "SROUTPUT2", "CIUOUTPUT", "ZROUTPUT", "ZREXPORT", "ACC28PLUS", "ACCUPTO28", "OTHEROUTPUT", "SHOUTPUT", "ZRINPUT", "BADDEBT", "OTHERINPUT", "BADDEBTRELIEF", "IGDSINPUT3", "SROVR", "TOURISTREFUND", "TXRCN33", "TXRCRE", "TXRCESS", "TXRCTS", "CAPEXINPUT", "UNDEFINED", "CAPEXOUTPUT", "ZEROEXPOUTPUT", "GOODSIMPORT", "NONEINPUT", "NOTREPORTED", "SROVRRS", "SROVRLVG", "SRLVG", "IM", "IMESS", "IMN33", "IMRE", "BADDEBTRECOVERY", "USSALESTAX"])
311
312
  unless validator.valid?(report_tax_type)
312
313
  fail ArgumentError, "invalid value for \"report_tax_type\", must be one of #{validator.allowable_values}."
313
314
  end
@@ -110,6 +110,30 @@ module XeroRuby::Accounting
110
110
  IMREY23 ||= "IMREY23".freeze
111
111
  BADDEBTRECOVERY ||= "BADDEBTRECOVERY".freeze
112
112
  BADDEBTRECOVERYY23 ||= "BADDEBTRECOVERYY23".freeze
113
+ OUTPUTY24 ||= "OUTPUTY24".freeze
114
+ DSOUTPUTY24 ||= "DSOUTPUTY24".freeze
115
+ INPUTY24 ||= "INPUTY24".freeze
116
+ IGDSINPUT2_Y24 ||= "IGDSINPUT2Y24".freeze
117
+ TXPETINPUTY24 ||= "TXPETINPUTY24".freeze
118
+ TXESSINPUTY24 ||= "TXESSINPUTY24".freeze
119
+ TXN33_INPUTY24 ||= "TXN33INPUTY24".freeze
120
+ TXREINPUTY24 ||= "TXREINPUTY24".freeze
121
+ TXCAY24 ||= "TXCAY24".freeze
122
+ BADDEBTRELIEFY24 ||= "BADDEBTRELIEFY24".freeze
123
+ IGDSINPUT3_Y24 ||= "IGDSINPUT3Y24".freeze
124
+ SROVRRSY24 ||= "SROVRRSY24".freeze
125
+ SROVRLVGY24 ||= "SROVRLVGY24".freeze
126
+ SRLVGY24 ||= "SRLVGY24".freeze
127
+ TXRCTSY24 ||= "TXRCTSY24".freeze
128
+ TXRCESSY24 ||= "TXRCESSY24".freeze
129
+ TXRCN33_Y24 ||= "TXRCN33Y24".freeze
130
+ TXRCREY24 ||= "TXRCREY24".freeze
131
+ IMY24 ||= "IMY24".freeze
132
+ IMESSY24 ||= "IMESSY24".freeze
133
+ IMN33_Y24 ||= "IMN33Y24".freeze
134
+ IMREY24 ||= "IMREY24".freeze
135
+ BADDEBTRECOVERYY24 ||= "BADDEBTRECOVERYY24".freeze
136
+ OSOUTPUT2 ||= "OSOUTPUT2".freeze
113
137
 
114
138
  # Builds the enum from string
115
139
  # @param [String] The enum value in the form of the string
@@ -82,6 +82,44 @@ module XeroRuby::Accounting
82
82
  # Contact contact id
83
83
  attr_accessor :contact_id
84
84
 
85
+ # Contact legal name
86
+ attr_accessor :legal_name
87
+
88
+ # Contact business name
89
+ attr_accessor :business_name
90
+
91
+ # Contact federal tax classification
92
+ attr_accessor :federal_tax_classification
93
+ SOLE_PROPRIETOR ||= "SOLE_PROPRIETOR".freeze
94
+ PARTNERSHIP ||= "PARTNERSHIP".freeze
95
+ TRUST_OR_ESTATE ||= "TRUST_OR_ESTATE".freeze
96
+ NONPROFIT ||= "NONPROFIT".freeze
97
+ C_CORP ||= "C_CORP".freeze
98
+ S_CORP ||= "S_CORP".freeze
99
+ OTHER ||= "OTHER".freeze
100
+
101
+ class EnumAttributeValidator
102
+ attr_reader :datatype
103
+ attr_reader :allowable_values
104
+
105
+ def initialize(datatype, allowable_values)
106
+ @allowable_values = allowable_values.map do |value|
107
+ case datatype.to_s
108
+ when /Integer/i
109
+ value.to_i
110
+ when /Float/i
111
+ value.to_f
112
+ else
113
+ value
114
+ end
115
+ end
116
+ end
117
+
118
+ def valid?(value)
119
+ !value || allowable_values.include?(value)
120
+ end
121
+ end
122
+
85
123
  # Attribute mapping from ruby-style variable name to JSON key.
86
124
  def self.attribute_map
87
125
  {
@@ -106,7 +144,10 @@ module XeroRuby::Accounting
106
144
  :'email' => :'Email',
107
145
  :'street_address' => :'StreetAddress',
108
146
  :'tax_id' => :'TaxID',
109
- :'contact_id' => :'ContactId'
147
+ :'contact_id' => :'ContactId',
148
+ :'legal_name' => :'LegalName',
149
+ :'business_name' => :'BusinessName',
150
+ :'federal_tax_classification' => :'FederalTaxClassification'
110
151
  }
111
152
  end
112
153
 
@@ -134,7 +175,10 @@ module XeroRuby::Accounting
134
175
  :'email' => :'String',
135
176
  :'street_address' => :'String',
136
177
  :'tax_id' => :'String',
137
- :'contact_id' => :'String'
178
+ :'contact_id' => :'String',
179
+ :'legal_name' => :'String',
180
+ :'business_name' => :'String',
181
+ :'federal_tax_classification' => :'String'
138
182
  }
139
183
  end
140
184
 
@@ -240,6 +284,18 @@ module XeroRuby::Accounting
240
284
  if attributes.key?(:'contact_id')
241
285
  self.contact_id = attributes[:'contact_id']
242
286
  end
287
+
288
+ if attributes.key?(:'legal_name')
289
+ self.legal_name = attributes[:'legal_name']
290
+ end
291
+
292
+ if attributes.key?(:'business_name')
293
+ self.business_name = attributes[:'business_name']
294
+ end
295
+
296
+ if attributes.key?(:'federal_tax_classification')
297
+ self.federal_tax_classification = attributes[:'federal_tax_classification']
298
+ end
243
299
  end
244
300
 
245
301
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -252,9 +308,21 @@ module XeroRuby::Accounting
252
308
  # Check to see if the all the properties in the model are valid
253
309
  # @return true if the model is valid
254
310
  def valid?
311
+ federal_tax_classification_validator = EnumAttributeValidator.new('String', ["SOLE_PROPRIETOR", "PARTNERSHIP", "TRUST_OR_ESTATE", "NONPROFIT", "C_CORP", "S_CORP", "OTHER"])
312
+ return false unless federal_tax_classification_validator.valid?(@federal_tax_classification)
255
313
  true
256
314
  end
257
315
 
316
+ # Custom attribute writer method checking allowed values (enum).
317
+ # @param [Object] federal_tax_classification Object to be assigned
318
+ def federal_tax_classification=(federal_tax_classification)
319
+ validator = EnumAttributeValidator.new('String', ["SOLE_PROPRIETOR", "PARTNERSHIP", "TRUST_OR_ESTATE", "NONPROFIT", "C_CORP", "S_CORP", "OTHER"])
320
+ unless validator.valid?(federal_tax_classification)
321
+ fail ArgumentError, "invalid value for \"federal_tax_classification\", must be one of #{validator.allowable_values}."
322
+ end
323
+ @federal_tax_classification = federal_tax_classification
324
+ end
325
+
258
326
  # Checks equality by comparing each attribute.
259
327
  # @param [Object] Object to be compared
260
328
  def ==(o)
@@ -281,7 +349,10 @@ module XeroRuby::Accounting
281
349
  email == o.email &&
282
350
  street_address == o.street_address &&
283
351
  tax_id == o.tax_id &&
284
- contact_id == o.contact_id
352
+ contact_id == o.contact_id &&
353
+ legal_name == o.legal_name &&
354
+ business_name == o.business_name &&
355
+ federal_tax_classification == o.federal_tax_classification
285
356
  end
286
357
 
287
358
  # @see the `==` method
@@ -293,7 +364,7 @@ module XeroRuby::Accounting
293
364
  # Calculates hash code according to all attributes.
294
365
  # @return [Integer] Hash code
295
366
  def hash
296
- [box1, box2, box3, box4, box5, box6, box7, box8, box9, box10, box11, box13, box14, name, federal_tax_id_type, city, zip, state, email, street_address, tax_id, contact_id].hash
367
+ [box1, box2, box3, box4, box5, box6, box7, box8, box9, box10, box11, box13, box14, name, federal_tax_id_type, city, zip, state, email, street_address, tax_id, contact_id, legal_name, business_name, federal_tax_classification].hash
297
368
  end
298
369
 
299
370
  # Builds the object from hash
@@ -24,6 +24,7 @@ module XeroRuby::Finance
24
24
  REQUEST_TIMEOUT ||= "request-timeout".freeze
25
25
  SERVICE_UNAVAILABLE ||= "service-unavailable".freeze
26
26
  UNAUTHORIZED ||= "unauthorized".freeze
27
+ RATE_LIMIT_ERROR ||= "rate-limit-error".freeze
27
28
 
28
29
  # Builds the enum from string
29
30
  # @param [String] The enum value in the form of the string
@@ -264,7 +264,6 @@ module XeroRuby::PayrollAu
264
264
  CW ||= "CW".freeze
265
265
  SX ||= "SX".freeze
266
266
  SS ||= "SS".freeze
267
- EMPTY ||= "".freeze
268
267
 
269
268
  # Builds the enum from string
270
269
  # @param [String] The enum value in the form of the string
@@ -18,7 +18,6 @@ module XeroRuby::PayrollAu
18
18
  FIXEDAMOUNTEACHPERIOD ||= "FIXEDAMOUNTEACHPERIOD".freeze
19
19
  ENTERRATEINPAYTEMPLATE ||= "ENTERRATEINPAYTEMPLATE".freeze
20
20
  BASEDONORDINARYEARNINGS ||= "BASEDONORDINARYEARNINGS".freeze
21
- EMPTY ||= "".freeze
22
21
 
23
22
  # Builds the enum from string
24
23
  # @param [String] The enum value in the form of the string
@@ -16,6 +16,8 @@ module XeroRuby::PayrollAu
16
16
  class LeavePeriodStatus
17
17
  SCHEDULED ||= "SCHEDULED".freeze
18
18
  PROCESSED ||= "PROCESSED".freeze
19
+ REQUESTED ||= "REQUESTED".freeze
20
+ REJECTED ||= "REJECTED".freeze
19
21
 
20
22
  # Builds the enum from string
21
23
  # @param [String] The enum value in the form of the string
@@ -60,6 +60,9 @@ module XeroRuby::PayrollNz
60
60
  # UTC timestamp when the employee was created in Xero
61
61
  attr_accessor :created_date_utc
62
62
 
63
+ # Employee's job title
64
+ attr_accessor :job_title
65
+
63
66
  class EnumAttributeValidator
64
67
  attr_reader :datatype
65
68
  attr_reader :allowable_values
@@ -98,7 +101,8 @@ module XeroRuby::PayrollNz
98
101
  :'end_date' => :'endDate',
99
102
  :'payroll_calendar_id' => :'payrollCalendarID',
100
103
  :'updated_date_utc' => :'updatedDateUTC',
101
- :'created_date_utc' => :'createdDateUTC'
104
+ :'created_date_utc' => :'createdDateUTC',
105
+ :'job_title' => :'jobTitle'
102
106
  }
103
107
  end
104
108
 
@@ -118,7 +122,8 @@ module XeroRuby::PayrollNz
118
122
  :'end_date' => :'Date',
119
123
  :'payroll_calendar_id' => :'String',
120
124
  :'updated_date_utc' => :'DateTime',
121
- :'created_date_utc' => :'DateTime'
125
+ :'created_date_utc' => :'DateTime',
126
+ :'job_title' => :'String'
122
127
  }
123
128
  end
124
129
 
@@ -192,6 +197,10 @@ module XeroRuby::PayrollNz
192
197
  if attributes.key?(:'created_date_utc')
193
198
  self.created_date_utc = attributes[:'created_date_utc']
194
199
  end
200
+
201
+ if attributes.key?(:'job_title')
202
+ self.job_title = attributes[:'job_title']
203
+ end
195
204
  end
196
205
 
197
206
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -237,7 +246,8 @@ module XeroRuby::PayrollNz
237
246
  end_date == o.end_date &&
238
247
  payroll_calendar_id == o.payroll_calendar_id &&
239
248
  updated_date_utc == o.updated_date_utc &&
240
- created_date_utc == o.created_date_utc
249
+ created_date_utc == o.created_date_utc &&
250
+ job_title == o.job_title
241
251
  end
242
252
 
243
253
  # @see the `==` method
@@ -249,7 +259,7 @@ module XeroRuby::PayrollNz
249
259
  # Calculates hash code according to all attributes.
250
260
  # @return [Integer] Hash code
251
261
  def hash
252
- [employee_id, title, first_name, last_name, date_of_birth, address, email, gender, phone_number, start_date, end_date, payroll_calendar_id, updated_date_utc, created_date_utc].hash
262
+ [employee_id, title, first_name, last_name, date_of_birth, address, email, gender, phone_number, start_date, end_date, payroll_calendar_id, updated_date_utc, created_date_utc, job_title].hash
253
263
  end
254
264
 
255
265
  # Builds the object from hash
@@ -177,7 +177,6 @@ module XeroRuby::Projects
177
177
  ZMW ||= "ZMW".freeze
178
178
  ZMK ||= "ZMK".freeze
179
179
  ZWD ||= "ZWD".freeze
180
- EMPTY ||= "".freeze
181
180
 
182
181
  # Builds the enum from string
183
182
  # @param [String] The enum value in the form of the string
@@ -7,9 +7,9 @@ Contact: api@xero.com
7
7
  Generated by: https://openapi-generator.tech
8
8
  OpenAPI Generator version: 4.3.1
9
9
 
10
- The version of the XeroOpenAPI document: 2.38.0
10
+ The version of the XeroOpenAPI document: 3.0.0
11
11
  =end
12
12
 
13
13
  module XeroRuby
14
- VERSION = '4.3.0'
14
+ VERSION = '5.0.0'
15
15
  end