xero-ruby 2.6.1 → 2.8.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (447) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +42 -39
  3. data/lib/xero-ruby.rb +5 -3
  4. data/lib/xero-ruby/api/accounting_api.rb +446 -446
  5. data/lib/xero-ruby/api/asset_api.rb +3 -7
  6. data/lib/xero-ruby/api/files_api.rb +172 -69
  7. data/lib/xero-ruby/api/payroll_au_api.rb +63 -63
  8. data/lib/xero-ruby/api/payroll_nz_api.rb +171 -171
  9. data/lib/xero-ruby/api/payroll_uk_api.rb +177 -183
  10. data/lib/xero-ruby/api/project_api.rb +45 -45
  11. data/lib/xero-ruby/api_client.rb +25 -89
  12. data/lib/xero-ruby/api_error.rb +1 -1
  13. data/lib/xero-ruby/configuration.rb +3 -3
  14. data/lib/xero-ruby/models/accounting/account.rb +2 -2
  15. data/lib/xero-ruby/models/accounting/account_type.rb +1 -1
  16. data/lib/xero-ruby/models/accounting/accounts.rb +2 -2
  17. data/lib/xero-ruby/models/accounting/accounts_payable.rb +2 -2
  18. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +2 -2
  19. data/lib/xero-ruby/models/accounting/action.rb +2 -2
  20. data/lib/xero-ruby/models/accounting/actions.rb +2 -2
  21. data/lib/xero-ruby/models/accounting/address.rb +2 -2
  22. data/lib/xero-ruby/models/accounting/address_for_organisation.rb +2 -2
  23. data/lib/xero-ruby/models/accounting/allocation.rb +2 -2
  24. data/lib/xero-ruby/models/accounting/allocations.rb +2 -2
  25. data/lib/xero-ruby/models/accounting/attachment.rb +2 -2
  26. data/lib/xero-ruby/models/accounting/attachments.rb +2 -2
  27. data/lib/xero-ruby/models/accounting/balance_details.rb +2 -2
  28. data/lib/xero-ruby/models/accounting/balances.rb +2 -2
  29. data/lib/xero-ruby/models/accounting/bank_transaction.rb +2 -2
  30. data/lib/xero-ruby/models/accounting/bank_transactions.rb +2 -2
  31. data/lib/xero-ruby/models/accounting/bank_transfer.rb +2 -2
  32. data/lib/xero-ruby/models/accounting/bank_transfers.rb +2 -2
  33. data/lib/xero-ruby/models/accounting/batch_payment.rb +18 -6
  34. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +2 -2
  35. data/lib/xero-ruby/models/accounting/batch_payments.rb +2 -2
  36. data/lib/xero-ruby/models/accounting/bill.rb +2 -2
  37. data/lib/xero-ruby/models/accounting/branding_theme.rb +2 -2
  38. data/lib/xero-ruby/models/accounting/branding_themes.rb +2 -2
  39. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +2 -2
  40. data/lib/xero-ruby/models/{files/file_response204.rb → accounting/cis_org_settings.rb} +17 -15
  41. data/lib/xero-ruby/models/accounting/cis_setting.rb +2 -2
  42. data/lib/xero-ruby/models/accounting/cis_settings.rb +2 -2
  43. data/lib/xero-ruby/models/accounting/contact.rb +2 -2
  44. data/lib/xero-ruby/models/accounting/contact_group.rb +2 -2
  45. data/lib/xero-ruby/models/accounting/contact_groups.rb +2 -2
  46. data/lib/xero-ruby/models/accounting/contact_person.rb +2 -2
  47. data/lib/xero-ruby/models/accounting/contacts.rb +2 -2
  48. data/lib/xero-ruby/models/accounting/conversion_balances.rb +2 -2
  49. data/lib/xero-ruby/models/accounting/conversion_date.rb +2 -2
  50. data/lib/xero-ruby/models/accounting/country_code.rb +1 -1
  51. data/lib/xero-ruby/models/accounting/credit_note.rb +19 -7
  52. data/lib/xero-ruby/models/accounting/credit_notes.rb +2 -2
  53. data/lib/xero-ruby/models/accounting/currencies.rb +2 -2
  54. data/lib/xero-ruby/models/accounting/currency.rb +2 -2
  55. data/lib/xero-ruby/models/accounting/currency_code.rb +1 -1
  56. data/lib/xero-ruby/models/accounting/element.rb +2 -2
  57. data/lib/xero-ruby/models/accounting/employee.rb +2 -2
  58. data/lib/xero-ruby/models/accounting/employees.rb +2 -2
  59. data/lib/xero-ruby/models/accounting/error.rb +2 -2
  60. data/lib/xero-ruby/models/accounting/expense_claim.rb +2 -2
  61. data/lib/xero-ruby/models/accounting/expense_claims.rb +2 -2
  62. data/lib/xero-ruby/models/accounting/external_link.rb +2 -2
  63. data/lib/xero-ruby/models/accounting/history_record.rb +2 -2
  64. data/lib/xero-ruby/models/accounting/history_records.rb +2 -2
  65. data/lib/xero-ruby/models/accounting/import_summary.rb +2 -2
  66. data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +10 -10
  67. data/lib/xero-ruby/models/accounting/import_summary_object.rb +2 -2
  68. data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +2 -2
  69. data/lib/xero-ruby/models/accounting/invoice.rb +2 -2
  70. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +2 -2
  71. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +2 -2
  72. data/lib/xero-ruby/models/accounting/invoices.rb +2 -2
  73. data/lib/xero-ruby/models/accounting/item.rb +2 -2
  74. data/lib/xero-ruby/models/accounting/items.rb +2 -2
  75. data/lib/xero-ruby/models/accounting/journal.rb +2 -2
  76. data/lib/xero-ruby/models/accounting/journal_line.rb +2 -2
  77. data/lib/xero-ruby/models/accounting/journals.rb +2 -2
  78. data/lib/xero-ruby/models/accounting/line_amount_types.rb +1 -1
  79. data/lib/xero-ruby/models/accounting/line_item.rb +2 -2
  80. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +2 -2
  81. data/lib/xero-ruby/models/accounting/linked_transaction.rb +2 -2
  82. data/lib/xero-ruby/models/accounting/linked_transactions.rb +2 -2
  83. data/lib/xero-ruby/models/accounting/manual_journal.rb +2 -2
  84. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +2 -2
  85. data/lib/xero-ruby/models/accounting/manual_journals.rb +2 -2
  86. data/lib/xero-ruby/models/accounting/online_invoice.rb +2 -2
  87. data/lib/xero-ruby/models/accounting/online_invoices.rb +2 -2
  88. data/lib/xero-ruby/models/accounting/organisation.rb +2 -2
  89. data/lib/xero-ruby/models/accounting/organisations.rb +2 -2
  90. data/lib/xero-ruby/models/accounting/overpayment.rb +2 -2
  91. data/lib/xero-ruby/models/accounting/overpayments.rb +2 -2
  92. data/lib/xero-ruby/models/accounting/payment.rb +13 -3
  93. data/lib/xero-ruby/models/accounting/payment_delete.rb +2 -2
  94. data/lib/xero-ruby/models/accounting/payment_service.rb +2 -2
  95. data/lib/xero-ruby/models/accounting/payment_services.rb +2 -2
  96. data/lib/xero-ruby/models/accounting/payment_term.rb +2 -2
  97. data/lib/xero-ruby/models/accounting/payment_term_type.rb +1 -1
  98. data/lib/xero-ruby/models/accounting/payments.rb +2 -2
  99. data/lib/xero-ruby/models/accounting/phone.rb +2 -2
  100. data/lib/xero-ruby/models/accounting/prepayment.rb +2 -2
  101. data/lib/xero-ruby/models/accounting/prepayments.rb +2 -2
  102. data/lib/xero-ruby/models/accounting/purchase.rb +2 -2
  103. data/lib/xero-ruby/models/accounting/purchase_order.rb +2 -2
  104. data/lib/xero-ruby/models/accounting/purchase_orders.rb +2 -2
  105. data/lib/xero-ruby/models/accounting/quote.rb +2 -2
  106. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +1 -1
  107. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +1 -1
  108. data/lib/xero-ruby/models/accounting/quotes.rb +2 -2
  109. data/lib/xero-ruby/models/accounting/receipt.rb +2 -2
  110. data/lib/xero-ruby/models/accounting/receipts.rb +2 -2
  111. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +2 -2
  112. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +2 -2
  113. data/lib/xero-ruby/models/accounting/report.rb +2 -2
  114. data/lib/xero-ruby/models/accounting/report_attribute.rb +2 -2
  115. data/lib/xero-ruby/models/accounting/report_cell.rb +2 -2
  116. data/lib/xero-ruby/models/accounting/report_fields.rb +2 -2
  117. data/lib/xero-ruby/models/accounting/report_row.rb +2 -2
  118. data/lib/xero-ruby/models/accounting/report_rows.rb +2 -2
  119. data/lib/xero-ruby/models/accounting/report_with_row.rb +2 -2
  120. data/lib/xero-ruby/models/accounting/report_with_rows.rb +2 -2
  121. data/lib/xero-ruby/models/accounting/reports.rb +2 -2
  122. data/lib/xero-ruby/models/accounting/request_empty.rb +2 -2
  123. data/lib/xero-ruby/models/accounting/row_type.rb +1 -1
  124. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +2 -2
  125. data/lib/xero-ruby/models/accounting/schedule.rb +2 -2
  126. data/lib/xero-ruby/models/accounting/setup.rb +2 -2
  127. data/lib/xero-ruby/models/accounting/tax_component.rb +2 -2
  128. data/lib/xero-ruby/models/accounting/tax_rate.rb +2 -2
  129. data/lib/xero-ruby/models/accounting/tax_rates.rb +2 -2
  130. data/lib/xero-ruby/models/accounting/tax_type.rb +1 -1
  131. data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +2 -2
  132. data/lib/xero-ruby/models/accounting/time_zone.rb +1 -1
  133. data/lib/xero-ruby/models/accounting/tracking_categories.rb +2 -2
  134. data/lib/xero-ruby/models/accounting/tracking_category.rb +2 -2
  135. data/lib/xero-ruby/models/accounting/tracking_option.rb +2 -2
  136. data/lib/xero-ruby/models/accounting/tracking_options.rb +2 -2
  137. data/lib/xero-ruby/models/accounting/user.rb +2 -2
  138. data/lib/xero-ruby/models/accounting/users.rb +2 -2
  139. data/lib/xero-ruby/models/accounting/validation_error.rb +2 -2
  140. data/lib/xero-ruby/models/assets/asset.rb +2 -2
  141. data/lib/xero-ruby/models/assets/asset_status.rb +1 -1
  142. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +1 -1
  143. data/lib/xero-ruby/models/assets/asset_type.rb +2 -2
  144. data/lib/xero-ruby/models/assets/assets.rb +2 -2
  145. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +2 -2
  146. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +2 -2
  147. data/lib/xero-ruby/models/assets/error.rb +2 -2
  148. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +3 -3
  149. data/lib/xero-ruby/models/assets/pagination.rb +2 -2
  150. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +3 -3
  151. data/lib/xero-ruby/models/assets/setting.rb +2 -2
  152. data/lib/xero-ruby/models/files/association.rb +2 -2
  153. data/lib/xero-ruby/models/files/file_object.rb +2 -2
  154. data/lib/xero-ruby/models/files/files.rb +2 -2
  155. data/lib/xero-ruby/models/files/folder.rb +2 -2
  156. data/lib/xero-ruby/models/files/folders.rb +2 -2
  157. data/lib/xero-ruby/models/files/object_group.rb +1 -1
  158. data/lib/xero-ruby/models/files/object_type.rb +1 -1
  159. data/lib/xero-ruby/models/files/{inline_object.rb → upload_object.rb} +20 -5
  160. data/lib/xero-ruby/models/files/user.rb +2 -2
  161. data/lib/xero-ruby/models/payroll_au/account.rb +2 -2
  162. data/lib/xero-ruby/models/payroll_au/account_type.rb +1 -1
  163. data/lib/xero-ruby/models/payroll_au/allowance_type.rb +1 -1
  164. data/lib/xero-ruby/models/payroll_au/api_exception.rb +2 -2
  165. data/lib/xero-ruby/models/payroll_au/bank_account.rb +2 -2
  166. data/lib/xero-ruby/models/payroll_au/calendar_type.rb +1 -1
  167. data/lib/xero-ruby/models/payroll_au/deduction_line.rb +2 -2
  168. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +2 -2
  169. data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +1 -1
  170. data/lib/xero-ruby/models/payroll_au/earnings_line.rb +2 -2
  171. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +2 -2
  172. data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +1 -1
  173. data/lib/xero-ruby/models/payroll_au/earnings_type.rb +1 -1
  174. data/lib/xero-ruby/models/payroll_au/employee.rb +2 -2
  175. data/lib/xero-ruby/models/payroll_au/employee_status.rb +1 -1
  176. data/lib/xero-ruby/models/payroll_au/employees.rb +2 -2
  177. data/lib/xero-ruby/models/payroll_au/employment_basis.rb +1 -1
  178. data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +1 -1
  179. data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +1 -1
  180. data/lib/xero-ruby/models/payroll_au/home_address.rb +2 -2
  181. data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +2 -2
  182. data/lib/xero-ruby/models/payroll_au/leave_application.rb +2 -2
  183. data/lib/xero-ruby/models/payroll_au/leave_applications.rb +2 -2
  184. data/lib/xero-ruby/models/payroll_au/leave_balance.rb +2 -2
  185. data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +2 -2
  186. data/lib/xero-ruby/models/payroll_au/leave_line.rb +2 -2
  187. data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +1 -1
  188. data/lib/xero-ruby/models/payroll_au/leave_lines.rb +2 -2
  189. data/lib/xero-ruby/models/payroll_au/leave_period.rb +2 -2
  190. data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +1 -1
  191. data/lib/xero-ruby/models/payroll_au/leave_type.rb +2 -2
  192. data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +1 -1
  193. data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +1 -1
  194. data/lib/xero-ruby/models/payroll_au/opening_balances.rb +2 -2
  195. data/lib/xero-ruby/models/payroll_au/pay_item.rb +2 -2
  196. data/lib/xero-ruby/models/payroll_au/pay_items.rb +2 -2
  197. data/lib/xero-ruby/models/payroll_au/pay_run.rb +2 -2
  198. data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +1 -1
  199. data/lib/xero-ruby/models/payroll_au/pay_runs.rb +2 -2
  200. data/lib/xero-ruby/models/payroll_au/pay_template.rb +2 -2
  201. data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +1 -1
  202. data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +2 -2
  203. data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +2 -2
  204. data/lib/xero-ruby/models/payroll_au/payslip.rb +2 -2
  205. data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +2 -2
  206. data/lib/xero-ruby/models/payroll_au/payslip_object.rb +2 -2
  207. data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +2 -2
  208. data/lib/xero-ruby/models/payroll_au/payslips.rb +2 -2
  209. data/lib/xero-ruby/models/payroll_au/rate_type.rb +1 -1
  210. data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +2 -2
  211. data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +2 -2
  212. data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +2 -2
  213. data/lib/xero-ruby/models/payroll_au/residency_status.rb +1 -1
  214. data/lib/xero-ruby/models/payroll_au/settings.rb +2 -2
  215. data/lib/xero-ruby/models/payroll_au/settings_object.rb +2 -2
  216. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +2 -2
  217. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +2 -2
  218. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +2 -2
  219. data/lib/xero-ruby/models/payroll_au/state.rb +1 -1
  220. data/lib/xero-ruby/models/payroll_au/super_fund.rb +2 -2
  221. data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +2 -2
  222. data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +2 -2
  223. data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +1 -1
  224. data/lib/xero-ruby/models/payroll_au/super_funds.rb +2 -2
  225. data/lib/xero-ruby/models/payroll_au/super_line.rb +3 -3
  226. data/lib/xero-ruby/models/payroll_au/super_membership.rb +3 -3
  227. data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +1 -1
  228. data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +1 -1
  229. data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +2 -2
  230. data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +2 -2
  231. data/lib/xero-ruby/models/payroll_au/tax_line.rb +2 -2
  232. data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +1 -1
  233. data/lib/xero-ruby/models/payroll_au/timesheet.rb +2 -2
  234. data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +2 -2
  235. data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +2 -2
  236. data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +1 -1
  237. data/lib/xero-ruby/models/payroll_au/timesheets.rb +2 -2
  238. data/lib/xero-ruby/models/payroll_au/validation_error.rb +2 -2
  239. data/lib/xero-ruby/models/payroll_nz/account.rb +1 -1
  240. data/lib/xero-ruby/models/payroll_nz/accounts.rb +1 -1
  241. data/lib/xero-ruby/models/payroll_nz/address.rb +1 -1
  242. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +1 -1
  243. data/lib/xero-ruby/models/payroll_nz/benefit.rb +1 -1
  244. data/lib/xero-ruby/models/payroll_nz/deduction.rb +1 -1
  245. data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +1 -1
  246. data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +1 -1
  247. data/lib/xero-ruby/models/payroll_nz/deductions.rb +1 -1
  248. data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +2 -2
  249. data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +1 -1
  250. data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +1 -1
  251. data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +1 -1
  252. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +1 -1
  253. data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +1 -1
  254. data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +1 -1
  255. data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +1 -1
  256. data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +1 -1
  257. data/lib/xero-ruby/models/payroll_nz/employee.rb +1 -1
  258. data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +1 -1
  259. data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +1 -1
  260. data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +1 -1
  261. data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +1 -1
  262. data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +1 -1
  263. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +1 -1
  264. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +1 -1
  265. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +1 -1
  266. data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +1 -1
  267. data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +1 -1
  268. data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +1 -1
  269. data/lib/xero-ruby/models/payroll_nz/employee_object.rb +1 -1
  270. data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +1 -1
  271. data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +1 -1
  272. data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +1 -1
  273. data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +1 -1
  274. data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +1 -1
  275. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +1 -1
  276. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +1 -1
  277. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +1 -1
  278. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +1 -1
  279. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +2 -2
  280. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +1 -1
  281. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +1 -1
  282. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +1 -1
  283. data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +1 -1
  284. data/lib/xero-ruby/models/payroll_nz/employees.rb +1 -1
  285. data/lib/xero-ruby/models/payroll_nz/employment.rb +1 -1
  286. data/lib/xero-ruby/models/payroll_nz/employment_object.rb +1 -1
  287. data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +1 -1
  288. data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +1 -1
  289. data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +1 -1
  290. data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +2 -2
  291. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +1 -1
  292. data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +1 -1
  293. data/lib/xero-ruby/models/payroll_nz/leave_type.rb +1 -1
  294. data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +1 -1
  295. data/lib/xero-ruby/models/payroll_nz/leave_types.rb +1 -1
  296. data/lib/xero-ruby/models/payroll_nz/pagination.rb +1 -1
  297. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +1 -1
  298. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +1 -1
  299. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +1 -1
  300. data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +1 -1
  301. data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +1 -1
  302. data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +1 -1
  303. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +1 -1
  304. data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +1 -1
  305. data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +1 -1
  306. data/lib/xero-ruby/models/payroll_nz/payment_line.rb +1 -1
  307. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +1 -1
  308. data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +1 -1
  309. data/lib/xero-ruby/models/payroll_nz/problem.rb +1 -1
  310. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +1 -1
  311. data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +1 -1
  312. data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +1 -1
  313. data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +1 -1
  314. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +4 -3
  315. data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +1 -1
  316. data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +1 -1
  317. data/lib/xero-ruby/models/payroll_nz/settings.rb +1 -1
  318. data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +1 -1
  319. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +1 -1
  320. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +1 -1
  321. data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +1 -1
  322. data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +2 -2
  323. data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +1 -1
  324. data/lib/xero-ruby/models/payroll_nz/superannuations.rb +1 -1
  325. data/lib/xero-ruby/models/payroll_nz/tax_line.rb +1 -1
  326. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +1 -1
  327. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +5 -4
  328. data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +2 -2
  329. data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +1 -1
  330. data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +1 -1
  331. data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +1 -1
  332. data/lib/xero-ruby/models/payroll_nz/timesheets.rb +1 -1
  333. data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +1 -1
  334. data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +1 -1
  335. data/lib/xero-ruby/models/payroll_uk/account.rb +1 -1
  336. data/lib/xero-ruby/models/payroll_uk/accounts.rb +1 -1
  337. data/lib/xero-ruby/models/payroll_uk/address.rb +1 -1
  338. data/lib/xero-ruby/models/payroll_uk/bank_account.rb +1 -1
  339. data/lib/xero-ruby/models/payroll_uk/benefit.rb +1 -1
  340. data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +1 -1
  341. data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +1 -1
  342. data/lib/xero-ruby/models/payroll_uk/benefits.rb +1 -1
  343. data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +1 -1
  344. data/lib/xero-ruby/models/payroll_uk/deduction.rb +1 -1
  345. data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +1 -1
  346. data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +1 -1
  347. data/lib/xero-ruby/models/payroll_uk/deductions.rb +1 -1
  348. data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +1 -1
  349. data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +1 -1
  350. data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +1 -1
  351. data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +1 -1
  352. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +10 -3
  353. data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +1 -1
  354. data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +1 -1
  355. data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +1 -1
  356. data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +1 -1
  357. data/lib/xero-ruby/models/payroll_uk/employee.rb +1 -1
  358. data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +1 -1
  359. data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +1 -1
  360. data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +1 -1
  361. data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +1 -1
  362. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +1 -1
  363. data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +1 -1
  364. data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +1 -1
  365. data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +1 -1
  366. data/lib/xero-ruby/models/payroll_uk/employee_object.rb +1 -1
  367. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +1 -1
  368. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +1 -1
  369. data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +1 -1
  370. data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +1 -1
  371. data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +1 -1
  372. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +1 -1
  373. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +1 -1
  374. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +1 -1
  375. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +1 -1
  376. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +2 -2
  377. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +1 -1
  378. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +1 -1
  379. data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +1 -1
  380. data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +1 -1
  381. data/lib/xero-ruby/models/payroll_uk/employees.rb +1 -1
  382. data/lib/xero-ruby/models/payroll_uk/employment.rb +1 -1
  383. data/lib/xero-ruby/models/payroll_uk/employment_object.rb +1 -1
  384. data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +1 -1
  385. data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +1 -1
  386. data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +1 -1
  387. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +1 -1
  388. data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +1 -1
  389. data/lib/xero-ruby/models/payroll_uk/leave_type.rb +1 -1
  390. data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +1 -1
  391. data/lib/xero-ruby/models/payroll_uk/leave_types.rb +1 -1
  392. data/lib/xero-ruby/models/payroll_uk/pagination.rb +1 -1
  393. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +1 -1
  394. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +1 -1
  395. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +1 -1
  396. data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +1 -1
  397. data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +1 -1
  398. data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +1 -1
  399. data/lib/xero-ruby/models/payroll_uk/payment_line.rb +1 -1
  400. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +1 -1
  401. data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +1 -1
  402. data/lib/xero-ruby/models/payroll_uk/payslip.rb +1 -1
  403. data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +1 -1
  404. data/lib/xero-ruby/models/payroll_uk/payslips.rb +1 -1
  405. data/lib/xero-ruby/models/payroll_uk/problem.rb +1 -1
  406. data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +1 -1
  407. data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +1 -1
  408. data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +1 -1
  409. data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +1 -1
  410. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +1 -1
  411. data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +1 -1
  412. data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +1 -1
  413. data/lib/xero-ruby/models/payroll_uk/settings.rb +1 -1
  414. data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +1 -1
  415. data/lib/xero-ruby/models/payroll_uk/tax_line.rb +1 -1
  416. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +2 -2
  417. data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +1 -1
  418. data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +1 -1
  419. data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +1 -1
  420. data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +1 -1
  421. data/lib/xero-ruby/models/payroll_uk/timesheets.rb +1 -1
  422. data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +1 -1
  423. data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +1 -1
  424. data/lib/xero-ruby/models/projects/amount.rb +1 -1
  425. data/lib/xero-ruby/models/projects/error.rb +1 -1
  426. data/lib/xero-ruby/models/projects/pagination.rb +1 -1
  427. data/lib/xero-ruby/models/projects/project.rb +1 -1
  428. data/lib/xero-ruby/models/projects/project_create_or_update.rb +1 -1
  429. data/lib/xero-ruby/models/projects/project_patch.rb +1 -1
  430. data/lib/xero-ruby/models/projects/project_user.rb +1 -1
  431. data/lib/xero-ruby/models/projects/project_users.rb +1 -1
  432. data/lib/xero-ruby/models/projects/projects.rb +1 -1
  433. data/lib/xero-ruby/models/projects/task.rb +1 -1
  434. data/lib/xero-ruby/models/projects/task_create_or_update.rb +1 -1
  435. data/lib/xero-ruby/models/projects/tasks.rb +1 -1
  436. data/lib/xero-ruby/models/projects/time_entries.rb +1 -1
  437. data/lib/xero-ruby/models/projects/time_entry.rb +1 -1
  438. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +1 -1
  439. data/lib/xero-ruby/string_serialization.rb +52 -0
  440. data/lib/xero-ruby/version.rb +3 -3
  441. data/lib/xero-ruby/where.rb +65 -0
  442. data/spec/configuration_spec.rb +1 -1
  443. data/spec/files/models/inline_object_spec.rb +3 -3
  444. data/spec/helper_methods_spec.rb +2 -2
  445. data/spec/where_spec.rb +82 -0
  446. metadata +9 -7
  447. data/spec/files/models/file_response204_spec.rb +0 -41
@@ -16,7 +16,7 @@ module XeroRuby
16
16
  def initialize(api_client = ApiClient.new)
17
17
  @api_client = api_client
18
18
  end
19
- # create one or more new projects
19
+ # Create one or more new projects
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
@@ -26,7 +26,7 @@ module XeroRuby
26
26
  data
27
27
  end
28
28
 
29
- # create one or more new projects
29
+ # Create one or more new projects
30
30
  # @param xero_tenant_id [String] Xero identifier for Tenant
31
31
  # @param project_create_or_update [ProjectCreateOrUpdate] Create a new project with ProjectCreateOrUpdate object
32
32
  # @param [Hash] opts the optional parameters
@@ -44,7 +44,7 @@ module XeroRuby
44
44
  fail ArgumentError, "Missing the required parameter 'project_create_or_update' when calling ProjectApi.create_project"
45
45
  end
46
46
  # resource path
47
- local_var_path = '/projects'
47
+ local_var_path = '/Projects'
48
48
 
49
49
  # camelize keys of incoming `where` opts
50
50
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -92,7 +92,7 @@ module XeroRuby
92
92
  return data, status_code, headers
93
93
  end
94
94
 
95
- # Allows you to create a task
95
+ # Creates a time entry for a specific project
96
96
  # Allows you to create a specific task
97
97
  # @param xero_tenant_id [String] Xero identifier for Tenant
98
98
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
@@ -104,7 +104,7 @@ module XeroRuby
104
104
  data
105
105
  end
106
106
 
107
- # Allows you to create a task
107
+ # Creates a time entry for a specific project
108
108
  # Allows you to create a specific task
109
109
  # @param xero_tenant_id [String] Xero identifier for Tenant
110
110
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
@@ -128,7 +128,7 @@ module XeroRuby
128
128
  fail ArgumentError, "Missing the required parameter 'time_entry_create_or_update' when calling ProjectApi.create_time_entry"
129
129
  end
130
130
  # resource path
131
- local_var_path = '/projects/{projectId}/time'.sub('{' + 'projectId' + '}', project_id.to_s)
131
+ local_var_path = '/Projects/{projectId}/Time'.sub('{' + 'projectId' + '}', project_id.to_s)
132
132
 
133
133
  # camelize keys of incoming `where` opts
134
134
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -176,7 +176,7 @@ module XeroRuby
176
176
  return data, status_code, headers
177
177
  end
178
178
 
179
- # Allows you to delete a time entry
179
+ # Deletes a time entry for a specific project
180
180
  # Allows you to delete a specific time entry
181
181
  # @param xero_tenant_id [String] Xero identifier for Tenant
182
182
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
@@ -188,7 +188,7 @@ module XeroRuby
188
188
  nil
189
189
  end
190
190
 
191
- # Allows you to delete a time entry
191
+ # Deletes a time entry for a specific project
192
192
  # Allows you to delete a specific time entry
193
193
  # @param xero_tenant_id [String] Xero identifier for Tenant
194
194
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
@@ -212,7 +212,7 @@ module XeroRuby
212
212
  fail ArgumentError, "Missing the required parameter 'time_entry_id' when calling ProjectApi.delete_time_entry"
213
213
  end
214
214
  # resource path
215
- local_var_path = '/projects/{projectId}/time/{timeEntryId}'.sub('{' + 'projectId' + '}', project_id.to_s).sub('{' + 'timeEntryId' + '}', time_entry_id.to_s)
215
+ local_var_path = '/Projects/{projectId}/Time/{timeEntryId}'.sub('{' + 'projectId' + '}', project_id.to_s).sub('{' + 'timeEntryId' + '}', time_entry_id.to_s)
216
216
 
217
217
  # camelize keys of incoming `where` opts
218
218
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -256,8 +256,8 @@ module XeroRuby
256
256
  return data, status_code, headers
257
257
  end
258
258
 
259
- # Allows you to retrieve a single project
260
- # Allows you to retrieve a specific project
259
+ # Retrieves a single project
260
+ # Allows you to retrieve a specific project using the projectId
261
261
  # @param xero_tenant_id [String] Xero identifier for Tenant
262
262
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
263
263
  # @param [Hash] opts the optional parameters
@@ -267,8 +267,8 @@ module XeroRuby
267
267
  data
268
268
  end
269
269
 
270
- # Allows you to retrieve a single project
271
- # Allows you to retrieve a specific project
270
+ # Retrieves a single project
271
+ # Allows you to retrieve a specific project using the projectId
272
272
  # @param xero_tenant_id [String] Xero identifier for Tenant
273
273
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
274
274
  # @param [Hash] opts the optional parameters
@@ -286,7 +286,7 @@ module XeroRuby
286
286
  fail ArgumentError, "Missing the required parameter 'project_id' when calling ProjectApi.get_project"
287
287
  end
288
288
  # resource path
289
- local_var_path = '/projects/{projectId}'.sub('{' + 'projectId' + '}', project_id.to_s)
289
+ local_var_path = '/Projects/{projectId}'.sub('{' + 'projectId' + '}', project_id.to_s)
290
290
 
291
291
  # camelize keys of incoming `where` opts
292
292
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -332,7 +332,7 @@ module XeroRuby
332
332
  return data, status_code, headers
333
333
  end
334
334
 
335
- # list all project users
335
+ # Retrieves a list of all project users
336
336
  # Allows you to retrieve the users on a projects.
337
337
  # @param xero_tenant_id [String] Xero identifier for Tenant
338
338
  # @param [Hash] opts the optional parameters
@@ -344,7 +344,7 @@ module XeroRuby
344
344
  data
345
345
  end
346
346
 
347
- # list all project users
347
+ # Retrieves a list of all project users
348
348
  # Allows you to retrieve the users on a projects.
349
349
  # @param xero_tenant_id [String] Xero identifier for Tenant
350
350
  # @param [Hash] opts the optional parameters
@@ -368,7 +368,7 @@ module XeroRuby
368
368
  end
369
369
 
370
370
  # resource path
371
- local_var_path = '/projectsusers'
371
+ local_var_path = '/ProjectsUsers'
372
372
 
373
373
  # camelize keys of incoming `where` opts
374
374
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -416,7 +416,7 @@ module XeroRuby
416
416
  return data, status_code, headers
417
417
  end
418
418
 
419
- # list all projects
419
+ # Retrieves all projects
420
420
  # Allows you to retrieve, create and update projects.
421
421
  # @param xero_tenant_id [String] Xero identifier for Tenant
422
422
  # @param [Hash] opts the optional parameters
@@ -431,7 +431,7 @@ module XeroRuby
431
431
  data
432
432
  end
433
433
 
434
- # list all projects
434
+ # Retrieves all projects
435
435
  # Allows you to retrieve, create and update projects.
436
436
  # @param xero_tenant_id [String] Xero identifier for Tenant
437
437
  # @param [Hash] opts the optional parameters
@@ -458,7 +458,7 @@ module XeroRuby
458
458
  end
459
459
 
460
460
  # resource path
461
- local_var_path = '/projects'
461
+ local_var_path = '/Projects'
462
462
 
463
463
  # camelize keys of incoming `where` opts
464
464
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -509,11 +509,11 @@ module XeroRuby
509
509
  return data, status_code, headers
510
510
  end
511
511
 
512
- # Allows you to retrieve a single project
512
+ # Retrieves a single project task
513
513
  # Allows you to retrieve a specific project
514
514
  # @param xero_tenant_id [String] Xero identifier for Tenant
515
515
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
516
- # @param task_id [String] You can specify an individual task by appending the taskId to the endpoint, i.e. GET https://.../tasks/{taskId}
516
+ # @param task_id [String] You can specify an individual task by appending the taskId to the endpoint, i.e. GET https://.../tasks/{taskID}
517
517
  # @param [Hash] opts the optional parameters
518
518
  # @return [Task]
519
519
  def get_task(xero_tenant_id, project_id, task_id, opts = {})
@@ -521,11 +521,11 @@ module XeroRuby
521
521
  data
522
522
  end
523
523
 
524
- # Allows you to retrieve a single project
524
+ # Retrieves a single project task
525
525
  # Allows you to retrieve a specific project
526
526
  # @param xero_tenant_id [String] Xero identifier for Tenant
527
527
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
528
- # @param task_id [String] You can specify an individual task by appending the taskId to the endpoint, i.e. GET https://.../tasks/{taskId}
528
+ # @param task_id [String] You can specify an individual task by appending the taskId to the endpoint, i.e. GET https://.../tasks/{taskID}
529
529
  # @param [Hash] opts the optional parameters
530
530
  # @return [Array<(Task, Integer, Hash)>] Task data, response status code and response headers
531
531
  def get_task_with_http_info(xero_tenant_id, project_id, task_id, opts = {})
@@ -545,7 +545,7 @@ module XeroRuby
545
545
  fail ArgumentError, "Missing the required parameter 'task_id' when calling ProjectApi.get_task"
546
546
  end
547
547
  # resource path
548
- local_var_path = '/projects/{projectId}/tasks/{taskId}'.sub('{' + 'projectId' + '}', project_id.to_s).sub('{' + 'taskId' + '}', task_id.to_s)
548
+ local_var_path = '/Projects/{projectId}/Tasks/{taskId}'.sub('{' + 'projectId' + '}', project_id.to_s).sub('{' + 'taskId' + '}', task_id.to_s)
549
549
 
550
550
  # camelize keys of incoming `where` opts
551
551
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -591,14 +591,14 @@ module XeroRuby
591
591
  return data, status_code, headers
592
592
  end
593
593
 
594
- # Allows you to retrieve a single project
594
+ # Retrieves all project tasks
595
595
  # Allows you to retrieve a specific project
596
596
  # @param xero_tenant_id [String] Xero identifier for Tenant
597
597
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
598
598
  # @param [Hash] opts the optional parameters
599
599
  # @option opts [Integer] :page Set to 1 by default. The requested number of the page in paged response - Must be a number greater than 0.
600
600
  # @option opts [Integer] :page_size Optional, it is set to 50 by default. The number of items to return per page in a paged response - Must be a number between 1 and 500.
601
- # @option opts [String] :task_ids taskIdsSearch for all tasks that match a comma separated list of taskIds, i.e. GET https://.../tasks?taskIds&#x3D;{taskId},{taskId}
601
+ # @option opts [String] :task_ids taskIdsSearch for all tasks that match a comma separated list of taskIds, i.e. GET https://.../tasks?taskIds&#x3D;{taskID},{taskID}
602
602
  # @option opts [ChargeType] :charge_type
603
603
  # @return [Tasks]
604
604
  def get_tasks(xero_tenant_id, project_id, opts = {})
@@ -606,14 +606,14 @@ module XeroRuby
606
606
  data
607
607
  end
608
608
 
609
- # Allows you to retrieve a single project
609
+ # Retrieves all project tasks
610
610
  # Allows you to retrieve a specific project
611
611
  # @param xero_tenant_id [String] Xero identifier for Tenant
612
612
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
613
613
  # @param [Hash] opts the optional parameters
614
614
  # @option opts [Integer] :page Set to 1 by default. The requested number of the page in paged response - Must be a number greater than 0.
615
615
  # @option opts [Integer] :page_size Optional, it is set to 50 by default. The number of items to return per page in a paged response - Must be a number between 1 and 500.
616
- # @option opts [String] :task_ids taskIdsSearch for all tasks that match a comma separated list of taskIds, i.e. GET https://.../tasks?taskIds&#x3D;{taskId},{taskId}
616
+ # @option opts [String] :task_ids taskIdsSearch for all tasks that match a comma separated list of taskIds, i.e. GET https://.../tasks?taskIds&#x3D;{taskID},{taskID}
617
617
  # @option opts [ChargeType] :charge_type
618
618
  # @return [Array<(Tasks, Integer, Hash)>] Tasks data, response status code and response headers
619
619
  def get_tasks_with_http_info(xero_tenant_id, project_id, opts = {})
@@ -629,7 +629,7 @@ module XeroRuby
629
629
  fail ArgumentError, "Missing the required parameter 'project_id' when calling ProjectApi.get_tasks"
630
630
  end
631
631
  # resource path
632
- local_var_path = '/projects/{projectId}/tasks'.sub('{' + 'projectId' + '}', project_id.to_s)
632
+ local_var_path = '/Projects/{projectId}/Tasks'.sub('{' + 'projectId' + '}', project_id.to_s)
633
633
 
634
634
  # camelize keys of incoming `where` opts
635
635
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -679,7 +679,7 @@ module XeroRuby
679
679
  return data, status_code, headers
680
680
  end
681
681
 
682
- # Allows you to retrieve the time entries associated with a specific project
682
+ # Retrieves all time entries associated with a specific project
683
683
  # Allows you to retrieve the time entries associated with a specific project
684
684
  # @param xero_tenant_id [String] Xero identifier for Tenant
685
685
  # @param project_id [String] Identifier of the project, that the task (which the time entry is logged against) belongs to.
@@ -690,7 +690,7 @@ module XeroRuby
690
690
  # @option opts [String] :contact_id Finds all time entries for this contact identifier.
691
691
  # @option opts [Integer] :page Set to 1 by default. The requested number of the page in paged response - Must be a number greater than 0.
692
692
  # @option opts [Integer] :page_size Optional, it is set to 50 by default. The number of items to return per page in a paged response - Must be a number between 1 and 500.
693
- # @option opts [Array<String>] :states Comma-separated list of states to find. Will find all time entries that are in the status of whatever’s specified.
693
+ # @option opts [Array<String>] :states Comma-separated list of states to find. Will find all time entries that are in the status of whatever is specified.
694
694
  # @option opts [Boolean] :is_chargeable Finds all time entries which relate to tasks with the charge type &#x60;TIME&#x60; or &#x60;FIXED&#x60;.
695
695
  # @option opts [DateTime] :date_after_utc ISO 8601 UTC date. Finds all time entries on or after this date filtered on the &#x60;dateUtc&#x60; field.
696
696
  # @option opts [DateTime] :date_before_utc ISO 8601 UTC date. Finds all time entries on or before this date filtered on the &#x60;dateUtc&#x60; field.
@@ -700,7 +700,7 @@ module XeroRuby
700
700
  data
701
701
  end
702
702
 
703
- # Allows you to retrieve the time entries associated with a specific project
703
+ # Retrieves all time entries associated with a specific project
704
704
  # Allows you to retrieve the time entries associated with a specific project
705
705
  # @param xero_tenant_id [String] Xero identifier for Tenant
706
706
  # @param project_id [String] Identifier of the project, that the task (which the time entry is logged against) belongs to.
@@ -711,7 +711,7 @@ module XeroRuby
711
711
  # @option opts [String] :contact_id Finds all time entries for this contact identifier.
712
712
  # @option opts [Integer] :page Set to 1 by default. The requested number of the page in paged response - Must be a number greater than 0.
713
713
  # @option opts [Integer] :page_size Optional, it is set to 50 by default. The number of items to return per page in a paged response - Must be a number between 1 and 500.
714
- # @option opts [Array<String>] :states Comma-separated list of states to find. Will find all time entries that are in the status of whatever’s specified.
714
+ # @option opts [Array<String>] :states Comma-separated list of states to find. Will find all time entries that are in the status of whatever is specified.
715
715
  # @option opts [Boolean] :is_chargeable Finds all time entries which relate to tasks with the charge type &#x60;TIME&#x60; or &#x60;FIXED&#x60;.
716
716
  # @option opts [DateTime] :date_after_utc ISO 8601 UTC date. Finds all time entries on or after this date filtered on the &#x60;dateUtc&#x60; field.
717
717
  # @option opts [DateTime] :date_before_utc ISO 8601 UTC date. Finds all time entries on or before this date filtered on the &#x60;dateUtc&#x60; field.
@@ -729,7 +729,7 @@ module XeroRuby
729
729
  fail ArgumentError, "Missing the required parameter 'project_id' when calling ProjectApi.get_time_entries"
730
730
  end
731
731
  # resource path
732
- local_var_path = '/projects/{projectId}/time'.sub('{' + 'projectId' + '}', project_id.to_s)
732
+ local_var_path = '/Projects/{projectId}/Time'.sub('{' + 'projectId' + '}', project_id.to_s)
733
733
 
734
734
  # camelize keys of incoming `where` opts
735
735
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -785,8 +785,8 @@ module XeroRuby
785
785
  return data, status_code, headers
786
786
  end
787
787
 
788
+ # Retrieves a single time entry for a specific project
788
789
  # Allows you to get a single time entry in a project
789
- # Allows you to upget a single time entry in a project
790
790
  # @param xero_tenant_id [String] Xero identifier for Tenant
791
791
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
792
792
  # @param time_entry_id [String] You can specify an individual time entry by appending the id to the endpoint
@@ -797,8 +797,8 @@ module XeroRuby
797
797
  data
798
798
  end
799
799
 
800
+ # Retrieves a single time entry for a specific project
800
801
  # Allows you to get a single time entry in a project
801
- # Allows you to upget a single time entry in a project
802
802
  # @param xero_tenant_id [String] Xero identifier for Tenant
803
803
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
804
804
  # @param time_entry_id [String] You can specify an individual time entry by appending the id to the endpoint
@@ -821,7 +821,7 @@ module XeroRuby
821
821
  fail ArgumentError, "Missing the required parameter 'time_entry_id' when calling ProjectApi.get_time_entry"
822
822
  end
823
823
  # resource path
824
- local_var_path = '/projects/{projectId}/time/{timeEntryId}'.sub('{' + 'projectId' + '}', project_id.to_s).sub('{' + 'timeEntryId' + '}', time_entry_id.to_s)
824
+ local_var_path = '/Projects/{projectId}/Time/{timeEntryId}'.sub('{' + 'projectId' + '}', project_id.to_s).sub('{' + 'timeEntryId' + '}', time_entry_id.to_s)
825
825
 
826
826
  # camelize keys of incoming `where` opts
827
827
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -903,7 +903,7 @@ module XeroRuby
903
903
  fail ArgumentError, "Missing the required parameter 'project_patch' when calling ProjectApi.patch_project"
904
904
  end
905
905
  # resource path
906
- local_var_path = '/projects/{projectId}'.sub('{' + 'projectId' + '}', project_id.to_s)
906
+ local_var_path = '/Projects/{projectId}'.sub('{' + 'projectId' + '}', project_id.to_s)
907
907
 
908
908
  # camelize keys of incoming `where` opts
909
909
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -951,7 +951,7 @@ module XeroRuby
951
951
  return data, status_code, headers
952
952
  end
953
953
 
954
- # update a specific project
954
+ # Updates a specific project
955
955
  # Allows you to update a specific projects.
956
956
  # @param xero_tenant_id [String] Xero identifier for Tenant
957
957
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
@@ -963,7 +963,7 @@ module XeroRuby
963
963
  nil
964
964
  end
965
965
 
966
- # update a specific project
966
+ # Updates a specific project
967
967
  # Allows you to update a specific projects.
968
968
  # @param xero_tenant_id [String] Xero identifier for Tenant
969
969
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
@@ -987,7 +987,7 @@ module XeroRuby
987
987
  fail ArgumentError, "Missing the required parameter 'project_create_or_update' when calling ProjectApi.update_project"
988
988
  end
989
989
  # resource path
990
- local_var_path = '/projects/{projectId}'.sub('{' + 'projectId' + '}', project_id.to_s)
990
+ local_var_path = '/Projects/{projectId}'.sub('{' + 'projectId' + '}', project_id.to_s)
991
991
 
992
992
  # camelize keys of incoming `where` opts
993
993
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -1035,7 +1035,7 @@ module XeroRuby
1035
1035
  return data, status_code, headers
1036
1036
  end
1037
1037
 
1038
- # Allows you to update time entry in a project
1038
+ # Updates a time entry for a specific project
1039
1039
  # Allows you to update time entry in a project
1040
1040
  # @param xero_tenant_id [String] Xero identifier for Tenant
1041
1041
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
@@ -1048,7 +1048,7 @@ module XeroRuby
1048
1048
  nil
1049
1049
  end
1050
1050
 
1051
- # Allows you to update time entry in a project
1051
+ # Updates a time entry for a specific project
1052
1052
  # Allows you to update time entry in a project
1053
1053
  # @param xero_tenant_id [String] Xero identifier for Tenant
1054
1054
  # @param project_id [String] You can specify an individual project by appending the projectId to the endpoint
@@ -1077,7 +1077,7 @@ module XeroRuby
1077
1077
  fail ArgumentError, "Missing the required parameter 'time_entry_create_or_update' when calling ProjectApi.update_time_entry"
1078
1078
  end
1079
1079
  # resource path
1080
- local_var_path = '/projects/{projectId}/time/{timeEntryId}'.sub('{' + 'projectId' + '}', project_id.to_s).sub('{' + 'timeEntryId' + '}', time_entry_id.to_s)
1080
+ local_var_path = '/Projects/{projectId}/Time/{timeEntryId}'.sub('{' + 'projectId' + '}', project_id.to_s).sub('{' + 'timeEntryId' + '}', time_entry_id.to_s)
1081
1081
 
1082
1082
  # camelize keys of incoming `where` opts
1083
1083
  opts[:'where'] = @api_client.parameterize_where(opts[:'where']) if !opts[:'where'].nil?
@@ -1,5 +1,5 @@
1
1
  =begin
2
- #Accounting API
2
+ #Xero Accounting API
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
@@ -15,9 +15,12 @@ require 'logger'
15
15
  require 'tempfile'
16
16
  require 'find'
17
17
  require 'faraday'
18
+ require 'base64'
18
19
 
19
20
  module XeroRuby
20
21
  class ApiClient
22
+ include StringSerialization
23
+
21
24
  # The Configuration object holding settings to be used in the API client.
22
25
  attr_accessor :config
23
26
 
@@ -93,7 +96,7 @@ module XeroRuby
93
96
  end
94
97
 
95
98
  def set_token_set(token_set)
96
- # helper to set the token_set on a client once the user has y
99
+ # helper to set the token_set on a client once the user
97
100
  # has a valid token set ( access_token & refresh_token )
98
101
  XeroRuby.configure.token_set = token_set
99
102
  set_access_token(token_set['access_token'])
@@ -109,7 +112,7 @@ module XeroRuby
109
112
  code: params['code'],
110
113
  redirect_uri: @redirect_uri
111
114
  }
112
- return token_request(data)
115
+ return token_request(data, '/token')
113
116
  end
114
117
 
115
118
  def refresh_token_set(token_set)
@@ -117,18 +120,29 @@ module XeroRuby
117
120
  grant_type: 'refresh_token',
118
121
  refresh_token: token_set['refresh_token']
119
122
  }
120
- return token_request(data)
123
+ return token_request(data, '/token')
124
+ end
125
+
126
+ def revoke_token(token_set)
127
+ data = {
128
+ token: token_set['refresh_token']
129
+ }
130
+ return token_request(data, '/revocation')
121
131
  end
122
132
 
123
- def token_request(data)
124
- response = Faraday.post(@config.token_url) do |req|
133
+ def token_request(data, path)
134
+ response = Faraday.post("#{@config.token_url}#{path}") do |req|
125
135
  req.headers['Authorization'] = "Basic " + Base64.strict_encode64("#{@client_id}:#{@client_secret}")
126
136
  req.headers['Content-Type'] = 'application/x-www-form-urlencoded'
127
137
  req.body = URI.encode_www_form(data)
128
138
  end
129
139
  return_error(response) unless response.success?
130
- body = JSON.parse(response.body)
131
- set_token_set(body)
140
+ if !response.body.nil? && !response.body.empty?
141
+ body = JSON.parse(response.body)
142
+ set_token_set(body)
143
+ else
144
+ body = {}
145
+ end
132
146
  return body
133
147
  end
134
148
 
@@ -136,14 +150,14 @@ module XeroRuby
136
150
  def connections
137
151
  @config.base_url = 'https://api.xero.com'
138
152
  opts = { :header_params => {'Content-Type': 'application/json'}, :auth_names => ['OAuth2'] }
139
- response = call_api(:GET, '/connections/', nil, opts)
153
+ response = call_api(:GET, "/connections/", nil, opts)
140
154
  response[0]
141
155
  end
142
156
 
143
157
  def disconnect(connection_id)
144
158
  @config.base_url = 'https://api.xero.com'
145
159
  opts = { :header_params => {'Content-Type': 'application/json'}, :auth_names => ['OAuth2'] }
146
- call_api(:DELETE, '/connections/#{connection_id}', nil, opts)
160
+ call_api(:DELETE, "/connections/#{connection_id}", nil, opts)
147
161
  connections
148
162
  end
149
163
 
@@ -499,55 +513,6 @@ module XeroRuby
499
513
  end
500
514
  end
501
515
 
502
- # START - Re-serializes snake_cased params to PascalCase required by XeroAPI
503
- def to_camel_keys(value = self)
504
- case value
505
- when Array
506
- value.map { |v| to_camel_keys(v) }
507
- when Hash
508
- Hash[value.map { |k, v| [camelize_key(k), to_camel_keys(v)] }]
509
- else
510
- value
511
- end
512
- end
513
-
514
- def camelize_key(key, first_upper = true)
515
- if key.is_a? Symbol
516
- camelize(key.to_s, first_upper).to_sym
517
- elsif key.is_a? String
518
- camelize(key, first_upper)
519
- else
520
- key # can't camelize anything except strings and symbols
521
- end
522
- end
523
-
524
- def camelize(word, first_upper = true)
525
- if first_upper
526
- str = word.to_s
527
- str = gsubbed(str, /(?:^|_)([^_\s]+)/)
528
- str = gsubbed(str, %r{/([^/]*)}, "::")
529
- str
530
- else
531
- parts = word.split("_", 2)
532
- parts[0] << camelize(parts[1]) if parts.size > 1
533
- parts[0] || ""
534
- end
535
- end
536
-
537
- def gsubbed(str, pattern, extra = "")
538
- key_map_scronyms = {}
539
- str = str.gsub(pattern) do
540
- extra + (key_map_scronyms[Regexp.last_match(1)] || capitalize_first(Regexp.last_match(1)))
541
- end
542
- str
543
- end
544
-
545
- def capitalize_first(word)
546
- split = word.split('')
547
- "#{split[0].capitalize}#{split[1..-1].join}"
548
- end
549
- # END - Re-serializes snake_cased params to PascalCase required by XeroAPI
550
-
551
516
  # Build parameter value according to the given collection format.
552
517
  # @param [String] collection_format one of :csv, :ssv, :tsv, :pipes and :multi
553
518
  def build_collection_param(param, collection_format)
@@ -569,36 +534,7 @@ module XeroRuby
569
534
  end
570
535
 
571
536
  def parameterize_where(where_opts)
572
- where_opts.map do |k,v|
573
- case v
574
- when Array
575
- operator = v.first
576
- query = v.last
577
- if query.is_a?(Date)
578
- "#{camelize_key(k)} #{operator} DateTime(#{query.strftime("%Y,%m,%d")})"
579
- elsif [Float, Integer].member?(query.class)
580
- %{#{camelize_key(k)} #{operator} #{query}}
581
- elsif [true, false].member?(query)
582
- %{#{camelize_key(k)} #{operator} #{query}}
583
- else
584
- if k == :contact_id
585
- %{Contact.ContactID #{operator} guid("#{query}")}
586
- elsif k == :contact_number
587
- %{Contact.ContactNumber #{operator} "#{query}"}
588
- else
589
- %{#{camelize_key(k)} #{operator} "#{query}"}
590
- end
591
- end
592
- when Range
593
- if v.first.is_a?(DateTime) || v.first.is_a?(Date) || v.first.is_a?(Time)
594
- "#{camelize_key(k)} >= DateTime(#{v.first.strftime("%Y,%m,%d")}) AND #{camelize_key(k)} <= DateTime(#{v.last.strftime("%Y,%m,%d")})"
595
- else
596
- "#{camelize_key(k)} >= #{v.first} AND #{camelize_key(k)} <= #{v.last}"
597
- end
598
- else
599
- %{#{camelize_key(k)} #{v}}
600
- end
601
- end.join(' AND ')
537
+ Where.new(where_opts).to_param
602
538
  end
603
539
  end
604
540
  end