qube_sync 0.3.0 → 0.4.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.
Files changed (260) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +48 -0
  3. data/README.md +235 -75
  4. data/Rakefile +12 -0
  5. data/lib/qube_sync/client.rb +579 -0
  6. data/lib/qube_sync/operations/account.rb +337 -0
  7. data/lib/qube_sync/operations/account_tax_line_info.rb +30 -0
  8. data/lib/qube_sync/operations/aging_report.rb +160 -0
  9. data/lib/qube_sync/operations/alert.rb +91 -0
  10. data/lib/qube_sync/operations/ar_refund_credit_card.rb +399 -0
  11. data/lib/qube_sync/operations/bar_code.rb +37 -0
  12. data/lib/qube_sync/operations/bill.rb +1073 -0
  13. data/lib/qube_sync/operations/bill_payment_check.rb +413 -0
  14. data/lib/qube_sync/operations/bill_payment_credit_card.rb +315 -0
  15. data/lib/qube_sync/operations/bill_to_pay.rb +66 -0
  16. data/lib/qube_sync/operations/billing_rate.rb +172 -0
  17. data/lib/qube_sync/operations/budget_summary_report.rb +80 -0
  18. data/lib/qube_sync/operations/build_assembly.rb +318 -0
  19. data/lib/qube_sync/operations/charge.rb +452 -0
  20. data/lib/qube_sync/operations/check.rb +1055 -0
  21. data/lib/qube_sync/operations/class.rb +176 -0
  22. data/lib/qube_sync/operations/cleared_status.rb +39 -0
  23. data/lib/qube_sync/operations/company.rb +39 -0
  24. data/lib/qube_sync/operations/company_activity.rb +31 -0
  25. data/lib/qube_sync/operations/credit_card_charge.rb +1000 -0
  26. data/lib/qube_sync/operations/credit_card_credit.rb +1000 -0
  27. data/lib/qube_sync/operations/credit_memo.rb +1243 -0
  28. data/lib/qube_sync/operations/currency.rb +195 -0
  29. data/lib/qube_sync/operations/custom_detail_report.rb +176 -0
  30. data/lib/qube_sync/operations/custom_summary_report.rb +180 -0
  31. data/lib/qube_sync/operations/customer.rb +744 -0
  32. data/lib/qube_sync/operations/customer_msg.rb +117 -0
  33. data/lib/qube_sync/operations/customer_type.rb +133 -0
  34. data/lib/qube_sync/operations/data_event_recovery_info.rb +54 -0
  35. data/lib/qube_sync/operations/data_ext.rb +201 -0
  36. data/lib/qube_sync/operations/data_ext_def.rb +179 -0
  37. data/lib/qube_sync/operations/date_driven_terms.rb +131 -0
  38. data/lib/qube_sync/operations/deposit.rb +555 -0
  39. data/lib/qube_sync/operations/employee.rb +577 -0
  40. data/lib/qube_sync/operations/employee_default.rb +100 -0
  41. data/lib/qube_sync/operations/entity.rb +118 -0
  42. data/lib/qube_sync/operations/estimate.rb +1055 -0
  43. data/lib/qube_sync/operations/form1099_category_account_mapping.rb +90 -0
  44. data/lib/qube_sync/operations/general_detail_report.rb +185 -0
  45. data/lib/qube_sync/operations/general_summary_report.rb +180 -0
  46. data/lib/qube_sync/operations/host.rb +36 -0
  47. data/lib/qube_sync/operations/inventory_adjustment.rb +482 -0
  48. data/lib/qube_sync/operations/inventory_site.rb +214 -0
  49. data/lib/qube_sync/operations/invoice.rb +1208 -0
  50. data/lib/qube_sync/operations/item.rb +115 -0
  51. data/lib/qube_sync/operations/item_assemblies_can_build.rb +44 -0
  52. data/lib/qube_sync/operations/item_discount.rb +319 -0
  53. data/lib/qube_sync/operations/item_fixed_asset.rb +317 -0
  54. data/lib/qube_sync/operations/item_group.rb +253 -0
  55. data/lib/qube_sync/operations/item_inventory.rb +446 -0
  56. data/lib/qube_sync/operations/item_inventory_assembly.rb +483 -0
  57. data/lib/qube_sync/operations/item_non_inventory.rb +461 -0
  58. data/lib/qube_sync/operations/item_other_charge.rb +434 -0
  59. data/lib/qube_sync/operations/item_payment.rb +268 -0
  60. data/lib/qube_sync/operations/item_receipt.rb +1011 -0
  61. data/lib/qube_sync/operations/item_sales_tax.rb +270 -0
  62. data/lib/qube_sync/operations/item_sales_tax_group.rb +200 -0
  63. data/lib/qube_sync/operations/item_service.rb +455 -0
  64. data/lib/qube_sync/operations/item_sites.rb +96 -0
  65. data/lib/qube_sync/operations/item_subtotal.rb +182 -0
  66. data/lib/qube_sync/operations/job_report.rb +156 -0
  67. data/lib/qube_sync/operations/job_type.rb +131 -0
  68. data/lib/qube_sync/operations/journal_entry.rb +518 -0
  69. data/lib/qube_sync/operations/lead.rb +216 -0
  70. data/lib/qube_sync/operations/list.rb +42 -0
  71. data/lib/qube_sync/operations/list_deleted.rb +57 -0
  72. data/lib/qube_sync/operations/list_display.rb +59 -0
  73. data/lib/qube_sync/operations/list_merge.rb +55 -0
  74. data/lib/qube_sync/operations/other_name.rb +245 -0
  75. data/lib/qube_sync/operations/paycheck.rb +139 -0
  76. data/lib/qube_sync/operations/payment_method.rb +128 -0
  77. data/lib/qube_sync/operations/payroll_detail_report.rb +161 -0
  78. data/lib/qube_sync/operations/payroll_item.rb +75 -0
  79. data/lib/qube_sync/operations/payroll_item_addition.rb +98 -0
  80. data/lib/qube_sync/operations/payroll_item_company_contribution.rb +134 -0
  81. data/lib/qube_sync/operations/payroll_item_deduction.rb +124 -0
  82. data/lib/qube_sync/operations/payroll_item_direct_deposit.rb +70 -0
  83. data/lib/qube_sync/operations/payroll_item_non_wage.rb +93 -0
  84. data/lib/qube_sync/operations/payroll_item_tax.rb +123 -0
  85. data/lib/qube_sync/operations/payroll_item_wage.rb +168 -0
  86. data/lib/qube_sync/operations/payroll_item_workers_compensation.rb +108 -0
  87. data/lib/qube_sync/operations/payroll_last_period.rb +30 -0
  88. data/lib/qube_sync/operations/payroll_liability_adjustment.rb +204 -0
  89. data/lib/qube_sync/operations/payroll_liability_check.rb +137 -0
  90. data/lib/qube_sync/operations/payroll_prior_payment.rb +178 -0
  91. data/lib/qube_sync/operations/payroll_summary_report.rb +157 -0
  92. data/lib/qube_sync/operations/payroll_year_to_date_adjustment.rb +211 -0
  93. data/lib/qube_sync/operations/preferences.rb +61 -0
  94. data/lib/qube_sync/operations/price_level.rb +305 -0
  95. data/lib/qube_sync/operations/purchase_order.rb +1038 -0
  96. data/lib/qube_sync/operations/qb_command_exec.rb +37 -0
  97. data/lib/qube_sync/operations/receive_payment.rb +627 -0
  98. data/lib/qube_sync/operations/receive_payment_to_deposit.rb +38 -0
  99. data/lib/qube_sync/operations/sales_order.rb +1045 -0
  100. data/lib/qube_sync/operations/sales_receipt.rb +1337 -0
  101. data/lib/qube_sync/operations/sales_rep.rb +172 -0
  102. data/lib/qube_sync/operations/sales_tax_code.rb +205 -0
  103. data/lib/qube_sync/operations/sales_tax_payable.rb +37 -0
  104. data/lib/qube_sync/operations/sales_tax_payment_check.rb +375 -0
  105. data/lib/qube_sync/operations/sales_tax_return.rb +35 -0
  106. data/lib/qube_sync/operations/sales_tax_return_line.rb +43 -0
  107. data/lib/qube_sync/operations/ship_method.rb +116 -0
  108. data/lib/qube_sync/operations/special_account.rb +55 -0
  109. data/lib/qube_sync/operations/special_item.rb +44 -0
  110. data/lib/qube_sync/operations/standard_terms.rb +125 -0
  111. data/lib/qube_sync/operations/template.rb +36 -0
  112. data/lib/qube_sync/operations/terms.rb +91 -0
  113. data/lib/qube_sync/operations/time_report.rb +127 -0
  114. data/lib/qube_sync/operations/time_tracking.rb +303 -0
  115. data/lib/qube_sync/operations/to_do.rb +260 -0
  116. data/lib/qube_sync/operations/transaction.rb +356 -0
  117. data/lib/qube_sync/operations/transfer.rb +213 -0
  118. data/lib/qube_sync/operations/transfer_inventory.rb +384 -0
  119. data/lib/qube_sync/operations/txn.rb +38 -0
  120. data/lib/qube_sync/operations/txn_deleted.rb +54 -0
  121. data/lib/qube_sync/operations/txn_display.rb +76 -0
  122. data/lib/qube_sync/operations/txn_void.rb +36 -0
  123. data/lib/qube_sync/operations/unit_of_measure_set.rb +149 -0
  124. data/lib/qube_sync/operations/vehicle.rb +152 -0
  125. data/lib/qube_sync/operations/vehicle_mileage.rb +191 -0
  126. data/lib/qube_sync/operations/vendor.rb +661 -0
  127. data/lib/qube_sync/operations/vendor_credit.rb +1008 -0
  128. data/lib/qube_sync/operations/vendor_type.rb +131 -0
  129. data/lib/qube_sync/operations/workers_comp_code.rb +184 -0
  130. data/lib/qube_sync/operations.rb +1165 -0
  131. data/lib/qube_sync/version.rb +1 -1
  132. data/lib/qube_sync.rb +1 -0
  133. data/sig/qube_sync/client.rbs +82 -0
  134. data/sig/qube_sync/operations/account.rbs +65 -0
  135. data/sig/qube_sync/operations/account_tax_line_info.rbs +13 -0
  136. data/sig/qube_sync/operations/aging_report.rbs +29 -0
  137. data/sig/qube_sync/operations/alert.rbs +53 -0
  138. data/sig/qube_sync/operations/ar_refund_credit_card.rbs +53 -0
  139. data/sig/qube_sync/operations/bar_code.rbs +16 -0
  140. data/sig/qube_sync/operations/bill.rbs +78 -0
  141. data/sig/qube_sync/operations/bill_payment_check.rbs +62 -0
  142. data/sig/qube_sync/operations/bill_payment_credit_card.rbs +45 -0
  143. data/sig/qube_sync/operations/bill_to_pay.rbs +19 -0
  144. data/sig/qube_sync/operations/billing_rate.rbs +40 -0
  145. data/sig/qube_sync/operations/budget_summary_report.rbs +22 -0
  146. data/sig/qube_sync/operations/build_assembly.rbs +64 -0
  147. data/sig/qube_sync/operations/charge.rbs +80 -0
  148. data/sig/qube_sync/operations/check.rbs +81 -0
  149. data/sig/qube_sync/operations/class.rbs +43 -0
  150. data/sig/qube_sync/operations/cleared_status.rbs +16 -0
  151. data/sig/qube_sync/operations/company.rbs +15 -0
  152. data/sig/qube_sync/operations/company_activity.rbs +14 -0
  153. data/sig/qube_sync/operations/credit_card_charge.rbs +69 -0
  154. data/sig/qube_sync/operations/credit_card_credit.rbs +69 -0
  155. data/sig/qube_sync/operations/credit_memo.rbs +162 -0
  156. data/sig/qube_sync/operations/currency.rbs +52 -0
  157. data/sig/qube_sync/operations/custom_detail_report.rbs +31 -0
  158. data/sig/qube_sync/operations/custom_summary_report.rbs +33 -0
  159. data/sig/qube_sync/operations/customer.rbs +174 -0
  160. data/sig/qube_sync/operations/customer_msg.rbs +31 -0
  161. data/sig/qube_sync/operations/customer_type.rbs +32 -0
  162. data/sig/qube_sync/operations/data_event_recovery_info.rbs +20 -0
  163. data/sig/qube_sync/operations/data_ext.rbs +53 -0
  164. data/sig/qube_sync/operations/data_ext_def.rbs +51 -0
  165. data/sig/qube_sync/operations/date_driven_terms.rbs +35 -0
  166. data/sig/qube_sync/operations/deposit.rbs +100 -0
  167. data/sig/qube_sync/operations/employee.rbs +173 -0
  168. data/sig/qube_sync/operations/employee_default.rbs +68 -0
  169. data/sig/qube_sync/operations/entity.rbs +24 -0
  170. data/sig/qube_sync/operations/estimate.rbs +148 -0
  171. data/sig/qube_sync/operations/form1099_category_account_mapping.rbs +33 -0
  172. data/sig/qube_sync/operations/general_detail_report.rbs +31 -0
  173. data/sig/qube_sync/operations/general_summary_report.rbs +32 -0
  174. data/sig/qube_sync/operations/host.rbs +19 -0
  175. data/sig/qube_sync/operations/inventory_adjustment.rbs +105 -0
  176. data/sig/qube_sync/operations/inventory_site.rbs +66 -0
  177. data/sig/qube_sync/operations/invoice.rbs +144 -0
  178. data/sig/qube_sync/operations/item.rbs +25 -0
  179. data/sig/qube_sync/operations/item_assemblies_can_build.rbs +15 -0
  180. data/sig/qube_sync/operations/item_discount.rbs +62 -0
  181. data/sig/qube_sync/operations/item_fixed_asset.rbs +97 -0
  182. data/sig/qube_sync/operations/item_group.rbs +62 -0
  183. data/sig/qube_sync/operations/item_inventory.rbs +87 -0
  184. data/sig/qube_sync/operations/item_inventory_assembly.rbs +94 -0
  185. data/sig/qube_sync/operations/item_non_inventory.rbs +64 -0
  186. data/sig/qube_sync/operations/item_other_charge.rbs +59 -0
  187. data/sig/qube_sync/operations/item_payment.rbs +55 -0
  188. data/sig/qube_sync/operations/item_receipt.rbs +71 -0
  189. data/sig/qube_sync/operations/item_sales_tax.rbs +57 -0
  190. data/sig/qube_sync/operations/item_sales_tax_group.rbs +50 -0
  191. data/sig/qube_sync/operations/item_service.rbs +62 -0
  192. data/sig/qube_sync/operations/item_sites.rbs +26 -0
  193. data/sig/qube_sync/operations/item_subtotal.rbs +48 -0
  194. data/sig/qube_sync/operations/job_report.rbs +28 -0
  195. data/sig/qube_sync/operations/job_type.rbs +32 -0
  196. data/sig/qube_sync/operations/journal_entry.rbs +88 -0
  197. data/sig/qube_sync/operations/lead.rbs +91 -0
  198. data/sig/qube_sync/operations/list.rbs +15 -0
  199. data/sig/qube_sync/operations/list_deleted.rbs +17 -0
  200. data/sig/qube_sync/operations/list_display.rbs +21 -0
  201. data/sig/qube_sync/operations/list_merge.rbs +22 -0
  202. data/sig/qube_sync/operations/other_name.rbs +71 -0
  203. data/sig/qube_sync/operations/paycheck.rbs +27 -0
  204. data/sig/qube_sync/operations/payment_method.rbs +33 -0
  205. data/sig/qube_sync/operations/payroll_detail_report.rbs +29 -0
  206. data/sig/qube_sync/operations/payroll_item.rbs +23 -0
  207. data/sig/qube_sync/operations/payroll_item_addition.rbs +48 -0
  208. data/sig/qube_sync/operations/payroll_item_company_contribution.rbs +58 -0
  209. data/sig/qube_sync/operations/payroll_item_deduction.rbs +54 -0
  210. data/sig/qube_sync/operations/payroll_item_direct_deposit.rbs +30 -0
  211. data/sig/qube_sync/operations/payroll_item_non_wage.rbs +23 -0
  212. data/sig/qube_sync/operations/payroll_item_tax.rbs +58 -0
  213. data/sig/qube_sync/operations/payroll_item_wage.rbs +48 -0
  214. data/sig/qube_sync/operations/payroll_item_workers_compensation.rbs +42 -0
  215. data/sig/qube_sync/operations/payroll_last_period.rbs +13 -0
  216. data/sig/qube_sync/operations/payroll_liability_adjustment.rbs +59 -0
  217. data/sig/qube_sync/operations/payroll_liability_check.rbs +27 -0
  218. data/sig/qube_sync/operations/payroll_prior_payment.rbs +48 -0
  219. data/sig/qube_sync/operations/payroll_summary_report.rbs +30 -0
  220. data/sig/qube_sync/operations/payroll_year_to_date_adjustment.rbs +66 -0
  221. data/sig/qube_sync/operations/preferences.rbs +26 -0
  222. data/sig/qube_sync/operations/price_level.rbs +57 -0
  223. data/sig/qube_sync/operations/purchase_order.rbs +159 -0
  224. data/sig/qube_sync/operations/qb_command_exec.rbs +22 -0
  225. data/sig/qube_sync/operations/receive_payment.rbs +102 -0
  226. data/sig/qube_sync/operations/receive_payment_to_deposit.rbs +15 -0
  227. data/sig/qube_sync/operations/sales_order.rbs +153 -0
  228. data/sig/qube_sync/operations/sales_receipt.rbs +139 -0
  229. data/sig/qube_sync/operations/sales_rep.rbs +43 -0
  230. data/sig/qube_sync/operations/sales_tax_code.rbs +49 -0
  231. data/sig/qube_sync/operations/sales_tax_payable.rbs +16 -0
  232. data/sig/qube_sync/operations/sales_tax_payment_check.rbs +64 -0
  233. data/sig/qube_sync/operations/sales_tax_return.rbs +14 -0
  234. data/sig/qube_sync/operations/sales_tax_return_line.rbs +15 -0
  235. data/sig/qube_sync/operations/ship_method.rbs +31 -0
  236. data/sig/qube_sync/operations/special_account.rbs +16 -0
  237. data/sig/qube_sync/operations/special_item.rbs +17 -0
  238. data/sig/qube_sync/operations/standard_terms.rbs +34 -0
  239. data/sig/qube_sync/operations/template.rbs +15 -0
  240. data/sig/qube_sync/operations/terms.rbs +23 -0
  241. data/sig/qube_sync/operations/time_report.rbs +26 -0
  242. data/sig/qube_sync/operations/time_tracking.rbs +57 -0
  243. data/sig/qube_sync/operations/to_do.rbs +59 -0
  244. data/sig/qube_sync/operations/transaction.rbs +39 -0
  245. data/sig/qube_sync/operations/transfer.rbs +47 -0
  246. data/sig/qube_sync/operations/transfer_inventory.rbs +76 -0
  247. data/sig/qube_sync/operations/txn.rbs +15 -0
  248. data/sig/qube_sync/operations/txn_deleted.rbs +17 -0
  249. data/sig/qube_sync/operations/txn_display.rbs +22 -0
  250. data/sig/qube_sync/operations/txn_void.rbs +15 -0
  251. data/sig/qube_sync/operations/types.rbs +434 -0
  252. data/sig/qube_sync/operations/unit_of_measure_set.rbs +51 -0
  253. data/sig/qube_sync/operations/vehicle.rbs +43 -0
  254. data/sig/qube_sync/operations/vehicle_mileage.rbs +38 -0
  255. data/sig/qube_sync/operations/vendor.rbs +142 -0
  256. data/sig/qube_sync/operations/vendor_credit.rbs +70 -0
  257. data/sig/qube_sync/operations/vendor_type.rbs +32 -0
  258. data/sig/qube_sync/operations/workers_comp_code.rbs +52 -0
  259. data/sig/qube_sync/operations.rbs +147 -0
  260. metadata +255 -2
@@ -0,0 +1,270 @@
1
+ # Generated from operations.json by bin/generate-operations: don't edit.
2
+ # frozen_string_literal: true
3
+
4
+ module QubeSync
5
+ module Operations
6
+ # QuickBooks item sales tax operations, reached as `client.item_sales_tax`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class ItemSalesTax < Base
9
+ # Create item sales tax: POST /connections/{connection_id}/item-sales-taxes
10
+ # (`item_sales_tax.create`).
11
+ #
12
+ # QuickBooks answers in one webhook.
13
+ #
14
+ # Params, sent as the JSON body:
15
+ # - `bar_code` (Hash): Barcode reference information.
16
+ # - `allow_override` (Boolean): Allows for barcode to be overridden for an item.
17
+ # - `assign_even_if_used` (Boolean): Allow barcode to be assigned to item, even if already
18
+ # in use.
19
+ # - `bar_code_value` (String): Value of the barcode in the item.
20
+ # - `class_ref` (Hash): Use classes to categorize transactions (for example, by department,
21
+ # location, or work type). Class tracking is off by default in QuickBooks. A `class_ref`
22
+ # points to one class; if both `full_name` and `list_id` are provided, `full_name` is
23
+ # ignored. In InvoiceAdd, a header-level `class_ref` is applied to line items unless you
24
+ # override or clear it on individual lines.
25
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
26
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
27
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
28
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
29
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
30
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
31
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
32
+ # - `external_guid` (String): Allows for the attachment of a user defined GUID value.
33
+ # - `include_ret_element` (Array<one of "BarCodeValue", "ClassRef", "DataExtRet",
34
+ # "EditSequence", "ExternalGUID", "IsActive", "ItemDesc", "ListID", "Name", "OwnerID",
35
+ # "SalesTaxReturnLineRef", "TaxRate", "TaxVendorRef", "TimeCreated", "TimeModified",
36
+ # "TxnID", "TxnNumber">)
37
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
38
+ # QuickBooks. The default value is true.
39
+ # - `item_desc` (String): The description that will appear on a sales form when the item is
40
+ # used.
41
+ # - `name` (String, required): Name is the case-insensitive short name of a list object
42
+ # (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can
43
+ # reuse the same Name in different branches because `full_name` remains distinct.
44
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
45
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
46
+ # webhook already carries the request's `id`.
47
+ # - `sales_tax_return_line_ref` (Hash): Sales tax return line information.
48
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
49
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
50
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
51
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
52
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
53
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
54
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
55
+ # - `tax_rate` (Numeric): The tax rate. If a nonzero `tax_rate` is specified, then
56
+ # `tax_vendor_ref` is required.
57
+ # - `tax_vendor_ref` (Hash): Refers to the tax agency to whom collected taxes are owed. (This
58
+ # will be a vendor on the Vendor list.) If a nonzero `tax_rate` is specified, then
59
+ # `tax_vendor_ref` is required. In a request, if a `tax_vendor_ref` aggregate includes both
60
+ # `full_name` and `list_id`, `full_name` will be ignored.
61
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
62
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
63
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
64
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
65
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
66
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
67
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
68
+ #
69
+ # @param connection_id [String]
70
+ # @param params [Hash] the fields above
71
+ # @param webhook_url [String] where QuBe Sync sends the answer
72
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
73
+ # @return [Hash] the queued request
74
+ # @see https://docs.qubesync.com/api-reference/v2/item-sales-taxes/create-item-sales-tax
75
+ def create(connection_id, params = {}, webhook_url:, idempotency_key: nil)
76
+ queue("item_sales_tax.create", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
77
+ end
78
+
79
+ # List item sales taxes: GET /connections/{connection_id}/item-sales-taxes
80
+ # (`item_sales_tax.query`).
81
+ #
82
+ # QuickBooks answers in pages: one webhook per page, each with its `page`, the last with
83
+ # `iteration_state` `done`.
84
+ #
85
+ # Params, sent as the query string:
86
+ # - `active_status` (one of "ActiveOnly", "All", "InactiveOnly"): Used in filters to select
87
+ # list objects based on whether or not they are currently enabled for use by QuickBooks. The
88
+ # default value is asActiveOnly, which selects only list objects that are active. Choose at
89
+ # most one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
90
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
91
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
92
+ # - `class_filter` (Hash): Filters according to the object’s class. Choose at most one of:
93
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
94
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
95
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
96
+ # Give at most one of: `list_id`, or `full_name`, or `list_id_with_children`, or
97
+ # `full_name_with_children`.
98
+ # - `full_name` (Array<String>): `full_name` (along with `list_id`) is a way to identify a
99
+ # list object. The `full_name` is the name prefixed by the names of each ancestor, for
100
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
101
+ # - `full_name_with_children` (String): Allows you to filter for data that relates to the
102
+ # specified object and its descendants. For names that don’t have children,
103
+ # `full_name_with_children` is exactly the same as `full_name`.
104
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
105
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
106
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
107
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
108
+ # - `list_id_with_children` (String): Allows you to filter for data that relates to the
109
+ # specified object and its descendants.
110
+ # - `from_modified_date` (String): Filters results to objects modified on or after this
111
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
112
+ # date is provided, time defaults to 00:00:00. Choose at most one of: `list_id`, or
113
+ # `full_name`, or the set (`active_status`, `class_filter`, `from_modified_date`,
114
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
115
+ # combine with each other, not with the other choices.
116
+ # - `full_name` (Array<String>): `full_name` (along with `list_id`) is a way to identify a
117
+ # list object. The `full_name` is the name prefixed by the names of each ancestor, for
118
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive. Choose at most
119
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
120
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
121
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
122
+ # - `include_ret_element` (Array<one of "BarCodeValue", "ClassRef", "DataExtRet",
123
+ # "EditSequence", "ExternalGUID", "IsActive", "ItemDesc", "ListID", "Name",
124
+ # "SalesTaxReturnLineRef", "TaxRate", "TaxVendorRef", "TimeCreated", "TimeModified">)
125
+ # - `iterator` (Boolean): Page through every match: QuBe Sync asks QuickBooks for each page in
126
+ # turn and sends each to your `webhook_url` as it arrives, all with the same `id`. On by
127
+ # default, with pages of 100 records; send `iterator=true` with `max_returned` for another
128
+ # size. Off when you send `iterator=false` (every match in one answer) or `max_returned`
129
+ # alone (at most that many, in one answer). It pages a filtered query only: with `full_name`
130
+ # or `list_id` every match comes back in one answer, so leave `iterator` out.
131
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
132
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
133
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
134
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`. Choose at most
135
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
136
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
137
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
138
+ # - `max_returned` (Integer): Limits the number of objects that a query returns. (To get a
139
+ # count of how many objects could possibly be returned, use the `meta_data` query
140
+ # attribute.) If you include a `max_returned` value, it must be at least 1. The page size,
141
+ # with `iterator=true`. Sent without `iterator`, or with `iterator=false`, it's a cap
142
+ # instead: at most this many records come back, in one answer, and QuickBooks doesn't say
143
+ # whether more matched. Choose at most one of: `list_id`, or `full_name`, or the set
144
+ # (`active_status`, `class_filter`, `from_modified_date`, `max_returned`, `name_filter`,
145
+ # `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not
146
+ # with the other choices.
147
+ # - `meta_data` (one of "MetaDataAndResponseData", "MetaDataOnly", "NoMetaData"): Use the
148
+ # `meta_data` attribute to control whether query responses include counts. Options are
149
+ # NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus
150
+ # objects). Counts are approximate and may vary slightly if records are created or deleted
151
+ # during processing.
152
+ # - `name_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
153
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
154
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
155
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
156
+ # - `match_criterion` (one of "Contains", "EndsWith", "StartsWith", required): The criterion
157
+ # to match.
158
+ # - `name` (String, required): The string to match.
159
+ # - `name_range_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
160
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
161
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
162
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
163
+ # - `from_name` (String): The first name or item in the search range. If `from_name` is
164
+ # omitted, the range will begin with first name on the list.
165
+ # - `to_name` (String): The final name or item in the search range. If `to_name` is omitted,
166
+ # the range will end with last name on the list.
167
+ # - `owner_id` (Array<String>): `owner_id` identifies who owns the data extension. Use 0 for
168
+ # QuickBooks custom fields that appear in the UI, or use a GUID for private extensions owned
169
+ # by an app. Keep private GUIDs confidential unless you intentionally share extensions
170
+ # across apps. If you do share them, both apps must use the same `owner_id` and
171
+ # `data_ext_name`, because that pair uniquely identifies the extension.
172
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
173
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
174
+ # webhook already carries the request's `id`.
175
+ # - `to_modified_date` (String): Filters results to objects modified on or before this
176
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
177
+ # date is provided, time defaults to end-of-day (23:59:59). Choose at most one of:
178
+ # `list_id`, or `full_name`, or the set (`active_status`, `class_filter`,
179
+ # `from_modified_date`, `max_returned`, `name_filter`, `name_range_filter`,
180
+ # `to_modified_date`). Members of a set combine with each other, not with the other choices.
181
+ #
182
+ # @param connection_id [String]
183
+ # @param params [Hash] the fields above
184
+ # @param webhook_url [String] where QuBe Sync sends the answer
185
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
186
+ # @return [Hash] the queued request
187
+ # @see https://docs.qubesync.com/api-reference/v2/item-sales-taxes/list-item-sales-taxes
188
+ def query(connection_id, params = {}, webhook_url:, idempotency_key: nil)
189
+ queue("item_sales_tax.query", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
190
+ end
191
+
192
+ # Update item sales tax: PUT /connections/{connection_id}/item-sales-taxes
193
+ # (`item_sales_tax.update`).
194
+ #
195
+ # QuickBooks answers in one webhook.
196
+ #
197
+ # Params, sent as the JSON body:
198
+ # - `bar_code` (Hash): Barcode reference information.
199
+ # - `allow_override` (Boolean): Allows for barcode to be overridden for an item.
200
+ # - `assign_even_if_used` (Boolean): Allow barcode to be assigned to item, even if already
201
+ # in use.
202
+ # - `bar_code_value` (String): Value of the barcode in the item.
203
+ # - `class_ref` (Hash): Use classes to categorize transactions (for example, by department,
204
+ # location, or work type). Class tracking is off by default in QuickBooks. A `class_ref`
205
+ # points to one class; if both `full_name` and `list_id` are provided, `full_name` is
206
+ # ignored. In InvoiceAdd, a header-level `class_ref` is applied to line items unless you
207
+ # override or clear it on individual lines.
208
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
209
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
210
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
211
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
212
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
213
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
214
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
215
+ # - `edit_sequence` (String, required): `edit_sequence` is a server-generated revision token.
216
+ # It changes each time the object is updated. To modify an existing object, you must send
217
+ # the current `edit_sequence`. If your value is stale, the update is rejected to prevent
218
+ # overwriting newer changes.
219
+ # - `include_ret_element` (Array<one of "BarCodeValue", "ClassRef", "DataExtRet",
220
+ # "EditSequence", "ExternalGUID", "IsActive", "ItemDesc", "ListID", "Name", "OwnerID",
221
+ # "SalesTaxReturnLineRef", "TaxRate", "TaxVendorRef", "TimeCreated", "TimeModified",
222
+ # "TxnID", "TxnNumber">)
223
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
224
+ # QuickBooks. The default value is true.
225
+ # - `item_desc` (String): The description that will appear on a sales form when the item is
226
+ # used.
227
+ # - `list_id` (String, required): `list_id` and `full_name` both identify a list object.
228
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
229
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
230
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
231
+ # - `name` (String): Name is the case-insensitive short name of a list object (without
232
+ # ancestors). It must be unique within its hierarchy scope. Hierarchical lists can reuse the
233
+ # same Name in different branches because `full_name` remains distinct.
234
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
235
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
236
+ # webhook already carries the request's `id`.
237
+ # - `sales_tax_return_line_ref` (Hash): Sales tax return line information.
238
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
239
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
240
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
241
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
242
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
243
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
244
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
245
+ # - `tax_rate` (Numeric): The tax rate. If a nonzero `tax_rate` is specified, then
246
+ # `tax_vendor_ref` is required.
247
+ # - `tax_vendor_ref` (Hash): Refers to the tax agency to whom collected taxes are owed. (This
248
+ # will be a vendor on the Vendor list.) If a nonzero `tax_rate` is specified, then
249
+ # `tax_vendor_ref` is required. In a request, if a `tax_vendor_ref` aggregate includes both
250
+ # `full_name` and `list_id`, `full_name` will be ignored.
251
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
252
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
253
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
254
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
255
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
256
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
257
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
258
+ #
259
+ # @param connection_id [String]
260
+ # @param params [Hash] the fields above
261
+ # @param webhook_url [String] where QuBe Sync sends the answer
262
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
263
+ # @return [Hash] the queued request
264
+ # @see https://docs.qubesync.com/api-reference/v2/item-sales-taxes/update-item-sales-tax
265
+ def update(connection_id, params = {}, webhook_url:, idempotency_key: nil)
266
+ queue("item_sales_tax.update", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
267
+ end
268
+ end
269
+ end
270
+ end
@@ -0,0 +1,200 @@
1
+ # Generated from operations.json by bin/generate-operations: don't edit.
2
+ # frozen_string_literal: true
3
+
4
+ module QubeSync
5
+ module Operations
6
+ # QuickBooks item sales tax group operations, reached as `client.item_sales_tax_group`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class ItemSalesTaxGroup < Base
9
+ # Create item sales tax group: POST /connections/{connection_id}/item-sales-tax-groups
10
+ # (`item_sales_tax_group.create`).
11
+ #
12
+ # QuickBooks answers in one webhook.
13
+ #
14
+ # Params, sent as the JSON body:
15
+ # - `bar_code` (Hash): Barcode reference information.
16
+ # - `allow_override` (Boolean): Allows for barcode to be overridden for an item.
17
+ # - `assign_even_if_used` (Boolean): Allow barcode to be assigned to item, even if already
18
+ # in use.
19
+ # - `bar_code_value` (String): Value of the barcode in the item.
20
+ # - `external_guid` (String): Allows for the attachment of a user defined GUID value.
21
+ # - `include_ret_element` (Array<one of "BarCodeValue", "DataExtRet", "EditSequence",
22
+ # "ExternalGUID", "IsActive", "ItemDesc", "ItemSalesTaxRef", "ListID", "Name", "OwnerID",
23
+ # "TimeCreated", "TimeModified", "TxnID", "TxnNumber">)
24
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
25
+ # QuickBooks. The default value is true.
26
+ # - `item_desc` (String): The description that will appear on a sales form when the item is
27
+ # used.
28
+ # - `item_sales_tax_ref` (Array<Hash>, required)
29
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
30
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
31
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
32
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
33
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
34
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
35
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
36
+ # - `name` (String, required): Name is the case-insensitive short name of a list object
37
+ # (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can
38
+ # reuse the same Name in different branches because `full_name` remains distinct.
39
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
40
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
41
+ # webhook already carries the request's `id`.
42
+ #
43
+ # @param connection_id [String]
44
+ # @param params [Hash] the fields above
45
+ # @param webhook_url [String] where QuBe Sync sends the answer
46
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
47
+ # @return [Hash] the queued request
48
+ # @see https://docs.qubesync.com/api-reference/v2/item-sales-tax-groups/create-item-sales-tax-group
49
+ def create(connection_id, params = {}, webhook_url:, idempotency_key: nil)
50
+ queue("item_sales_tax_group.create", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
51
+ end
52
+
53
+ # List item sales tax groups: GET /connections/{connection_id}/item-sales-tax-groups
54
+ # (`item_sales_tax_group.query`).
55
+ #
56
+ # QuickBooks answers in pages: one webhook per page, each with its `page`, the last with
57
+ # `iteration_state` `done`.
58
+ #
59
+ # Params, sent as the query string:
60
+ # - `active_status` (one of "ActiveOnly", "All", "InactiveOnly"): Used in filters to select
61
+ # list objects based on whether or not they are currently enabled for use by QuickBooks. The
62
+ # default value is asActiveOnly, which selects only list objects that are active. Choose at
63
+ # most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
64
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
65
+ # combine with each other, not with the other choices.
66
+ # - `from_modified_date` (String): Filters results to objects modified on or after this
67
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
68
+ # date is provided, time defaults to 00:00:00. Choose at most one of: `list_id`, or
69
+ # `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`,
70
+ # `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with
71
+ # each other, not with the other choices.
72
+ # - `full_name` (Array<String>): `full_name` (along with `list_id`) is a way to identify a
73
+ # list object. The `full_name` is the name prefixed by the names of each ancestor, for
74
+ # example Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive. Choose at most
75
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
76
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
77
+ # combine with each other, not with the other choices.
78
+ # - `include_ret_element` (Array<one of "BarCodeValue", "DataExtRet", "EditSequence",
79
+ # "ExternalGUID", "IsActive", "ItemDesc", "ItemSalesTaxRef", "ListID", "Name",
80
+ # "TimeCreated", "TimeModified">)
81
+ # - `iterator` (Boolean): Page through every match: QuBe Sync asks QuickBooks for each page in
82
+ # turn and sends each to your `webhook_url` as it arrives, all with the same `id`. On by
83
+ # default, with pages of 100 records; send `iterator=true` with `max_returned` for another
84
+ # size. Off when you send `iterator=false` (every match in one answer) or `max_returned`
85
+ # alone (at most that many, in one answer). It pages a filtered query only: with `full_name`
86
+ # or `list_id` every match comes back in one answer, so leave `iterator` out.
87
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
88
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
89
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
90
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`. Choose at most
91
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
92
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
93
+ # combine with each other, not with the other choices.
94
+ # - `max_returned` (Integer): Limits the number of objects that a query returns. (To get a
95
+ # count of how many objects could possibly be returned, use the `meta_data` query
96
+ # attribute.) If you include a `max_returned` value, it must be at least 1. The page size,
97
+ # with `iterator=true`. Sent without `iterator`, or with `iterator=false`, it's a cap
98
+ # instead: at most this many records come back, in one answer, and QuickBooks doesn't say
99
+ # whether more matched. Choose at most one of: `list_id`, or `full_name`, or the set
100
+ # (`active_status`, `from_modified_date`, `max_returned`, `name_filter`,
101
+ # `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not
102
+ # with the other choices.
103
+ # - `meta_data` (one of "MetaDataAndResponseData", "MetaDataOnly", "NoMetaData"): Use the
104
+ # `meta_data` attribute to control whether query responses include counts. Options are
105
+ # NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus
106
+ # objects). Counts are approximate and may vary slightly if records are created or deleted
107
+ # during processing.
108
+ # - `name_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
109
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
110
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
111
+ # combine with each other, not with the other choices.
112
+ # - `match_criterion` (one of "Contains", "EndsWith", "StartsWith", required): The criterion
113
+ # to match.
114
+ # - `name` (String, required): The string to match.
115
+ # - `name_range_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
116
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
117
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
118
+ # combine with each other, not with the other choices.
119
+ # - `from_name` (String): The first name or item in the search range. If `from_name` is
120
+ # omitted, the range will begin with first name on the list.
121
+ # - `to_name` (String): The final name or item in the search range. If `to_name` is omitted,
122
+ # the range will end with last name on the list.
123
+ # - `owner_id` (Array<String>): `owner_id` identifies who owns the data extension. Use 0 for
124
+ # QuickBooks custom fields that appear in the UI, or use a GUID for private extensions owned
125
+ # by an app. Keep private GUIDs confidential unless you intentionally share extensions
126
+ # across apps. If you do share them, both apps must use the same `owner_id` and
127
+ # `data_ext_name`, because that pair uniquely identifies the extension.
128
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
129
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
130
+ # webhook already carries the request's `id`.
131
+ # - `to_modified_date` (String): Filters results to objects modified on or before this
132
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
133
+ # date is provided, time defaults to end-of-day (23:59:59). Choose at most one of:
134
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
135
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
136
+ # combine with each other, not with the other choices.
137
+ #
138
+ # @param connection_id [String]
139
+ # @param params [Hash] the fields above
140
+ # @param webhook_url [String] where QuBe Sync sends the answer
141
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
142
+ # @return [Hash] the queued request
143
+ # @see https://docs.qubesync.com/api-reference/v2/item-sales-tax-groups/list-item-sales-tax-groups
144
+ def query(connection_id, params = {}, webhook_url:, idempotency_key: nil)
145
+ queue("item_sales_tax_group.query", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
146
+ end
147
+
148
+ # Update item sales tax group: PUT /connections/{connection_id}/item-sales-tax-groups
149
+ # (`item_sales_tax_group.update`).
150
+ #
151
+ # QuickBooks answers in one webhook.
152
+ #
153
+ # Params, sent as the JSON body:
154
+ # - `bar_code` (Hash): Barcode reference information.
155
+ # - `allow_override` (Boolean): Allows for barcode to be overridden for an item.
156
+ # - `assign_even_if_used` (Boolean): Allow barcode to be assigned to item, even if already
157
+ # in use.
158
+ # - `bar_code_value` (String): Value of the barcode in the item.
159
+ # - `edit_sequence` (String, required): `edit_sequence` is a server-generated revision token.
160
+ # It changes each time the object is updated. To modify an existing object, you must send
161
+ # the current `edit_sequence`. If your value is stale, the update is rejected to prevent
162
+ # overwriting newer changes.
163
+ # - `include_ret_element` (Array<one of "BarCodeValue", "DataExtRet", "EditSequence",
164
+ # "ExternalGUID", "IsActive", "ItemDesc", "ItemSalesTaxRef", "ListID", "Name", "OwnerID",
165
+ # "TimeCreated", "TimeModified", "TxnID", "TxnNumber">)
166
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
167
+ # QuickBooks. The default value is true.
168
+ # - `item_desc` (String): The description that will appear on a sales form when the item is
169
+ # used.
170
+ # - `item_sales_tax_ref` (Array<Hash>)
171
+ # - `full_name` (String): `full_name` (along with `list_id`) is a way to identify a list
172
+ # object. The `full_name` is the name prefixed by the names of each ancestor, for example
173
+ # Jones:Kitchen:Cabinets. `full_name` values aren’t case-sensitive.
174
+ # - `list_id` (String): `list_id` and `full_name` both identify a list object. QuickBooks
175
+ # assigns `list_id` when the object is created. `list_id` values are unique within a list
176
+ # type, not globally across all lists. If both `full_name` and `list_id` are supplied in a
177
+ # request, QuickBooks uses `list_id` and ignores `full_name`.
178
+ # - `list_id` (String, required): `list_id` and `full_name` both identify a list object.
179
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
180
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
181
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`.
182
+ # - `name` (String): Name is the case-insensitive short name of a list object (without
183
+ # ancestors). It must be unique within its hierarchy scope. Hierarchical lists can reuse the
184
+ # same Name in different branches because `full_name` remains distinct.
185
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
186
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
187
+ # webhook already carries the request's `id`.
188
+ #
189
+ # @param connection_id [String]
190
+ # @param params [Hash] the fields above
191
+ # @param webhook_url [String] where QuBe Sync sends the answer
192
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
193
+ # @return [Hash] the queued request
194
+ # @see https://docs.qubesync.com/api-reference/v2/item-sales-tax-groups/update-item-sales-tax-group
195
+ def update(connection_id, params = {}, webhook_url:, idempotency_key: nil)
196
+ queue("item_sales_tax_group.update", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
197
+ end
198
+ end
199
+ end
200
+ end