xero-ruby 2.6.0 → 2.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +28 -9
- data/lib/xero-ruby.rb +4 -2
- data/lib/xero-ruby/api/accounting_api.rb +446 -446
- data/lib/xero-ruby/api/asset_api.rb +3 -7
- data/lib/xero-ruby/api/files_api.rb +49 -55
- data/lib/xero-ruby/api/payroll_au_api.rb +63 -63
- data/lib/xero-ruby/api/payroll_nz_api.rb +171 -171
- data/lib/xero-ruby/api/payroll_uk_api.rb +173 -173
- data/lib/xero-ruby/api/project_api.rb +45 -45
- data/lib/xero-ruby/api_client.rb +25 -89
- data/lib/xero-ruby/api_error.rb +1 -1
- data/lib/xero-ruby/configuration.rb +3 -3
- data/lib/xero-ruby/models/accounting/account.rb +7 -2
- data/lib/xero-ruby/models/accounting/account_type.rb +1 -1
- data/lib/xero-ruby/models/accounting/accounts.rb +7 -2
- data/lib/xero-ruby/models/accounting/accounts_payable.rb +7 -2
- data/lib/xero-ruby/models/accounting/accounts_receivable.rb +7 -2
- data/lib/xero-ruby/models/accounting/action.rb +7 -2
- data/lib/xero-ruby/models/accounting/actions.rb +7 -2
- data/lib/xero-ruby/models/accounting/address.rb +7 -2
- data/lib/xero-ruby/models/accounting/address_for_organisation.rb +7 -2
- data/lib/xero-ruby/models/accounting/allocation.rb +7 -2
- data/lib/xero-ruby/models/accounting/allocations.rb +7 -2
- data/lib/xero-ruby/models/accounting/attachment.rb +7 -2
- data/lib/xero-ruby/models/accounting/attachments.rb +7 -2
- data/lib/xero-ruby/models/accounting/balance_details.rb +7 -2
- data/lib/xero-ruby/models/accounting/balances.rb +7 -2
- data/lib/xero-ruby/models/accounting/bank_transaction.rb +7 -2
- data/lib/xero-ruby/models/accounting/bank_transactions.rb +7 -2
- data/lib/xero-ruby/models/accounting/bank_transfer.rb +7 -2
- data/lib/xero-ruby/models/accounting/bank_transfers.rb +7 -2
- data/lib/xero-ruby/models/accounting/batch_payment.rb +7 -2
- data/lib/xero-ruby/models/accounting/batch_payment_details.rb +7 -2
- data/lib/xero-ruby/models/accounting/batch_payments.rb +7 -2
- data/lib/xero-ruby/models/accounting/bill.rb +7 -2
- data/lib/xero-ruby/models/accounting/branding_theme.rb +7 -2
- data/lib/xero-ruby/models/accounting/branding_themes.rb +7 -2
- data/lib/xero-ruby/models/accounting/cis_org_setting.rb +7 -2
- data/lib/xero-ruby/models/{files/file_response204.rb → accounting/cis_org_settings.rb} +22 -15
- data/lib/xero-ruby/models/accounting/cis_setting.rb +7 -2
- data/lib/xero-ruby/models/accounting/cis_settings.rb +7 -2
- data/lib/xero-ruby/models/accounting/contact.rb +7 -2
- data/lib/xero-ruby/models/accounting/contact_group.rb +7 -2
- data/lib/xero-ruby/models/accounting/contact_groups.rb +7 -2
- data/lib/xero-ruby/models/accounting/contact_person.rb +7 -2
- data/lib/xero-ruby/models/accounting/contacts.rb +7 -2
- data/lib/xero-ruby/models/accounting/conversion_balances.rb +7 -2
- data/lib/xero-ruby/models/accounting/conversion_date.rb +7 -2
- data/lib/xero-ruby/models/accounting/country_code.rb +1 -1
- data/lib/xero-ruby/models/accounting/credit_note.rb +24 -7
- data/lib/xero-ruby/models/accounting/credit_notes.rb +7 -2
- data/lib/xero-ruby/models/accounting/currencies.rb +7 -2
- data/lib/xero-ruby/models/accounting/currency.rb +7 -2
- data/lib/xero-ruby/models/accounting/currency_code.rb +1 -1
- data/lib/xero-ruby/models/accounting/element.rb +7 -2
- data/lib/xero-ruby/models/accounting/employee.rb +7 -2
- data/lib/xero-ruby/models/accounting/employees.rb +7 -2
- data/lib/xero-ruby/models/accounting/error.rb +7 -2
- data/lib/xero-ruby/models/accounting/expense_claim.rb +7 -2
- data/lib/xero-ruby/models/accounting/expense_claims.rb +7 -2
- data/lib/xero-ruby/models/accounting/external_link.rb +7 -2
- data/lib/xero-ruby/models/accounting/history_record.rb +7 -2
- data/lib/xero-ruby/models/accounting/history_records.rb +7 -2
- data/lib/xero-ruby/models/accounting/import_summary.rb +7 -2
- data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +7 -2
- data/lib/xero-ruby/models/accounting/import_summary_object.rb +7 -2
- data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +7 -2
- data/lib/xero-ruby/models/accounting/invoice.rb +7 -2
- data/lib/xero-ruby/models/accounting/invoice_reminder.rb +7 -2
- data/lib/xero-ruby/models/accounting/invoice_reminders.rb +7 -2
- data/lib/xero-ruby/models/accounting/invoices.rb +7 -2
- data/lib/xero-ruby/models/accounting/item.rb +7 -2
- data/lib/xero-ruby/models/accounting/items.rb +7 -2
- data/lib/xero-ruby/models/accounting/journal.rb +7 -2
- data/lib/xero-ruby/models/accounting/journal_line.rb +7 -2
- data/lib/xero-ruby/models/accounting/journals.rb +7 -2
- data/lib/xero-ruby/models/accounting/line_amount_types.rb +1 -1
- data/lib/xero-ruby/models/accounting/line_item.rb +7 -2
- data/lib/xero-ruby/models/accounting/line_item_tracking.rb +7 -2
- data/lib/xero-ruby/models/accounting/linked_transaction.rb +7 -2
- data/lib/xero-ruby/models/accounting/linked_transactions.rb +7 -2
- data/lib/xero-ruby/models/accounting/manual_journal.rb +7 -2
- data/lib/xero-ruby/models/accounting/manual_journal_line.rb +7 -2
- data/lib/xero-ruby/models/accounting/manual_journals.rb +7 -2
- data/lib/xero-ruby/models/accounting/online_invoice.rb +7 -2
- data/lib/xero-ruby/models/accounting/online_invoices.rb +7 -2
- data/lib/xero-ruby/models/accounting/organisation.rb +7 -2
- data/lib/xero-ruby/models/accounting/organisations.rb +7 -2
- data/lib/xero-ruby/models/accounting/overpayment.rb +7 -2
- data/lib/xero-ruby/models/accounting/overpayments.rb +7 -2
- data/lib/xero-ruby/models/accounting/payment.rb +18 -3
- data/lib/xero-ruby/models/accounting/payment_delete.rb +7 -2
- data/lib/xero-ruby/models/accounting/payment_service.rb +7 -2
- data/lib/xero-ruby/models/accounting/payment_services.rb +7 -2
- data/lib/xero-ruby/models/accounting/payment_term.rb +7 -2
- data/lib/xero-ruby/models/accounting/payment_term_type.rb +1 -1
- data/lib/xero-ruby/models/accounting/payments.rb +7 -2
- data/lib/xero-ruby/models/accounting/phone.rb +7 -2
- data/lib/xero-ruby/models/accounting/prepayment.rb +7 -2
- data/lib/xero-ruby/models/accounting/prepayments.rb +7 -2
- data/lib/xero-ruby/models/accounting/purchase.rb +7 -2
- data/lib/xero-ruby/models/accounting/purchase_order.rb +7 -2
- data/lib/xero-ruby/models/accounting/purchase_orders.rb +7 -2
- data/lib/xero-ruby/models/accounting/quote.rb +7 -2
- data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +1 -1
- data/lib/xero-ruby/models/accounting/quote_status_codes.rb +1 -1
- data/lib/xero-ruby/models/accounting/quotes.rb +7 -2
- data/lib/xero-ruby/models/accounting/receipt.rb +7 -2
- data/lib/xero-ruby/models/accounting/receipts.rb +7 -2
- data/lib/xero-ruby/models/accounting/repeating_invoice.rb +7 -2
- data/lib/xero-ruby/models/accounting/repeating_invoices.rb +7 -2
- data/lib/xero-ruby/models/accounting/report.rb +7 -2
- data/lib/xero-ruby/models/accounting/report_attribute.rb +7 -2
- data/lib/xero-ruby/models/accounting/report_cell.rb +7 -2
- data/lib/xero-ruby/models/accounting/report_fields.rb +7 -2
- data/lib/xero-ruby/models/accounting/report_row.rb +7 -2
- data/lib/xero-ruby/models/accounting/report_rows.rb +7 -2
- data/lib/xero-ruby/models/accounting/report_with_row.rb +7 -2
- data/lib/xero-ruby/models/accounting/report_with_rows.rb +7 -2
- data/lib/xero-ruby/models/accounting/reports.rb +7 -2
- data/lib/xero-ruby/models/accounting/request_empty.rb +7 -2
- data/lib/xero-ruby/models/accounting/row_type.rb +1 -1
- data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +7 -2
- data/lib/xero-ruby/models/accounting/schedule.rb +7 -2
- data/lib/xero-ruby/models/accounting/setup.rb +7 -2
- data/lib/xero-ruby/models/accounting/tax_component.rb +7 -2
- data/lib/xero-ruby/models/accounting/tax_rate.rb +7 -2
- data/lib/xero-ruby/models/accounting/tax_rates.rb +7 -2
- data/lib/xero-ruby/models/accounting/tax_type.rb +1 -1
- data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +7 -2
- data/lib/xero-ruby/models/accounting/time_zone.rb +1 -1
- data/lib/xero-ruby/models/accounting/tracking_categories.rb +7 -2
- data/lib/xero-ruby/models/accounting/tracking_category.rb +7 -2
- data/lib/xero-ruby/models/accounting/tracking_option.rb +7 -2
- data/lib/xero-ruby/models/accounting/tracking_options.rb +7 -2
- data/lib/xero-ruby/models/accounting/user.rb +7 -2
- data/lib/xero-ruby/models/accounting/users.rb +7 -2
- data/lib/xero-ruby/models/accounting/validation_error.rb +7 -2
- data/lib/xero-ruby/models/assets/asset.rb +7 -2
- data/lib/xero-ruby/models/assets/asset_status.rb +1 -1
- data/lib/xero-ruby/models/assets/asset_status_query_param.rb +1 -1
- data/lib/xero-ruby/models/assets/asset_type.rb +7 -2
- data/lib/xero-ruby/models/assets/assets.rb +7 -2
- data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +7 -2
- data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +7 -2
- data/lib/xero-ruby/models/assets/error.rb +7 -2
- data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +8 -3
- data/lib/xero-ruby/models/assets/pagination.rb +7 -2
- data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +8 -3
- data/lib/xero-ruby/models/assets/setting.rb +7 -2
- data/lib/xero-ruby/models/files/association.rb +7 -2
- data/lib/xero-ruby/models/files/file_object.rb +7 -2
- data/lib/xero-ruby/models/files/files.rb +7 -2
- data/lib/xero-ruby/models/files/folder.rb +7 -2
- data/lib/xero-ruby/models/files/folders.rb +7 -2
- data/lib/xero-ruby/models/files/inline_object.rb +7 -2
- data/lib/xero-ruby/models/files/object_group.rb +1 -1
- data/lib/xero-ruby/models/files/object_type.rb +1 -1
- data/lib/xero-ruby/models/files/user.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/account.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/account_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/allowance_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/api_exception.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/bank_account.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/calendar_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/deduction_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/deduction_type.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/earnings_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/earnings_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/employee.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/employee_status.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/employees.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/employment_basis.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/home_address.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_application.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_applications.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_balance.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/leave_lines.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_period.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/leave_type.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/opening_balances.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/pay_item.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/pay_items.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/pay_run.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/pay_runs.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/pay_template.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/payslip.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/payslip_object.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/payslips.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/rate_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/residency_status.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/settings.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/settings_object.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/state.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/super_fund.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/super_funds.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/super_line.rb +8 -3
- data/lib/xero-ruby/models/payroll_au/super_membership.rb +8 -3
- data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/tax_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/timesheet.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +1 -1
- data/lib/xero-ruby/models/payroll_au/timesheets.rb +7 -2
- data/lib/xero-ruby/models/payroll_au/validation_error.rb +7 -2
- data/lib/xero-ruby/models/payroll_nz/account.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/accounts.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/address.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/bank_account.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/benefit.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/deduction.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/deductions.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +7 -2
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employees.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employment.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/employment_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_nz/leave_period.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/leave_type.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/leave_types.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pagination.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_run.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/payment_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/payment_method.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/problem.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/settings.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/superannuations.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/tax_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/timesheet.rb +7 -2
- data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +7 -2
- data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/timesheets.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +6 -1
- data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/account.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/accounts.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/address.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/bank_account.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/benefit.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/benefits.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/deduction.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/deductions.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +15 -3
- data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +7 -2
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employees.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employment.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/employment_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/leave_period.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/leave_type.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/leave_types.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/pagination.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/pay_run.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/payment_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/payment_method.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/payslip.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/payslips.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/problem.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/settings.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/tax_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/timesheet.rb +7 -2
- data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/timesheets.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +6 -1
- data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +6 -1
- data/lib/xero-ruby/models/projects/amount.rb +6 -1
- data/lib/xero-ruby/models/projects/error.rb +6 -1
- data/lib/xero-ruby/models/projects/pagination.rb +6 -1
- data/lib/xero-ruby/models/projects/project.rb +6 -1
- data/lib/xero-ruby/models/projects/project_create_or_update.rb +6 -1
- data/lib/xero-ruby/models/projects/project_patch.rb +6 -1
- data/lib/xero-ruby/models/projects/project_user.rb +6 -1
- data/lib/xero-ruby/models/projects/project_users.rb +6 -1
- data/lib/xero-ruby/models/projects/projects.rb +6 -1
- data/lib/xero-ruby/models/projects/task.rb +6 -1
- data/lib/xero-ruby/models/projects/task_create_or_update.rb +6 -1
- data/lib/xero-ruby/models/projects/tasks.rb +6 -1
- data/lib/xero-ruby/models/projects/time_entries.rb +6 -1
- data/lib/xero-ruby/models/projects/time_entry.rb +6 -1
- data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +6 -1
- data/lib/xero-ruby/string_serialization.rb +52 -0
- data/lib/xero-ruby/version.rb +3 -3
- data/lib/xero-ruby/where.rb +65 -0
- data/spec/configuration_spec.rb +1 -1
- data/spec/helper_methods_spec.rb +16 -4
- data/spec/where_spec.rb +82 -0
- metadata +8 -6
- 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
|
-
#
|
|
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
|
-
#
|
|
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 = '/
|
|
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
|
-
#
|
|
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
|
-
#
|
|
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 = '/
|
|
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
|
-
#
|
|
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
|
-
#
|
|
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 = '/
|
|
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
|
-
#
|
|
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
|
-
#
|
|
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 = '/
|
|
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 = '/
|
|
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
|
-
#
|
|
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
|
-
#
|
|
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 = '/
|
|
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
|
-
#
|
|
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/{
|
|
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
|
-
#
|
|
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/{
|
|
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 = '/
|
|
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
|
-
#
|
|
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={
|
|
601
|
+
# @option opts [String] :task_ids taskIdsSearch for all tasks that match a comma separated list of taskIds, i.e. GET https://.../tasks?taskIds={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
|
-
#
|
|
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={
|
|
616
|
+
# @option opts [String] :task_ids taskIdsSearch for all tasks that match a comma separated list of taskIds, i.e. GET https://.../tasks?taskIds={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 = '/
|
|
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
|
-
#
|
|
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
|
|
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 `TIME` or `FIXED`.
|
|
695
695
|
# @option opts [DateTime] :date_after_utc ISO 8601 UTC date. Finds all time entries on or after this date filtered on the `dateUtc` 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 `dateUtc` field.
|
|
@@ -700,7 +700,7 @@ module XeroRuby
|
|
|
700
700
|
data
|
|
701
701
|
end
|
|
702
702
|
|
|
703
|
-
#
|
|
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
|
|
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 `TIME` or `FIXED`.
|
|
716
716
|
# @option opts [DateTime] :date_after_utc ISO 8601 UTC date. Finds all time entries on or after this date filtered on the `dateUtc` 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 `dateUtc` 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 = '/
|
|
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 = '/
|
|
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 = '/
|
|
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
|
-
#
|
|
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
|
-
#
|
|
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 = '/
|
|
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
|
-
#
|
|
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
|
-
#
|
|
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 = '/
|
|
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?
|
data/lib/xero-ruby/api_client.rb
CHANGED
|
@@ -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
|
|
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
|
|
131
|
-
|
|
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,
|
|
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,
|
|
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.
|
|
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
|