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,44 @@
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 special item operations, reached as `client.special_item`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class SpecialItem < Base
9
+ # Create special item: POST /connections/{connection_id}/special-items
10
+ # (`special_item.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", "ClassRef", "DataExtRet",
22
+ # "EditSequence", "ExternalGUID", "FullName", "IsActive", "IsPrintItemsInGroup",
23
+ # "IsTaxIncluded", "ItemDesc", "ItemGroupLine", "ListID", "Name", "ParentRef",
24
+ # "SalesAndPurchase", "SalesOrPurchase", "SalesTaxCodeRef", "SpecialItemType", "Sublevel",
25
+ # "TimeCreated", "TimeModified", "UnitOfMeasureSetRef">)
26
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
27
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
28
+ # webhook already carries the request's `id`.
29
+ # - `special_item_type` (one of "FinanceCharge", "ReimbursableExpenseGroup",
30
+ # "ReimbursableExpenseSubtotal", required): Identifies the type of special item. See type
31
+ # for possible enum values.
32
+ #
33
+ # @param connection_id [String]
34
+ # @param params [Hash] the fields above
35
+ # @param webhook_url [String] where QuBe Sync sends the answer
36
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
37
+ # @return [Hash] the queued request
38
+ # @see https://docs.qubesync.com/api-reference/v2/special-items/create-special-item
39
+ def create(connection_id, params = {}, webhook_url:, idempotency_key: nil)
40
+ queue("special_item.create", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,125 @@
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 standard terms operations, reached as `client.standard_terms`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class StandardTerms < Base
9
+ # Create standard terms: POST /connections/{connection_id}/standard-terms
10
+ # (`standard_terms.create`).
11
+ #
12
+ # QuickBooks answers in one webhook.
13
+ #
14
+ # Params, sent as the JSON body:
15
+ # - `discount_pct` (Numeric): If payment is received within `std_discount_days` number of
16
+ # days, then this discount will apply to the payment. `discount_pct` must be between 0 and
17
+ # 100.
18
+ # - `include_ret_element` (Array<one of "DiscountPct", "EditSequence", "ExternalGUID",
19
+ # "IsActive", "ListID", "Name", "OwnerID", "StdDiscountDays", "StdDueDays", "TimeCreated",
20
+ # "TimeModified", "TxnID", "TxnNumber">)
21
+ # - `is_active` (Boolean): If `is_active` is true, this object is currently enabled for use by
22
+ # QuickBooks. The default value is true.
23
+ # - `name` (String, required): Name is the case-insensitive short name of a list object
24
+ # (without ancestors). It must be unique within its hierarchy scope. Hierarchical lists can
25
+ # reuse the same Name in different branches because FullName remains distinct.
26
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
27
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
28
+ # webhook already carries the request's `id`.
29
+ # - `std_discount_days` (Integer): If payment is received within `std_discount_days` number of
30
+ # days, then `discount_pct` will apply to the payment.
31
+ # - `std_due_days` (Integer): The number of days until payment is due.
32
+ #
33
+ # @param connection_id [String]
34
+ # @param params [Hash] the fields above
35
+ # @param webhook_url [String] where QuBe Sync sends the answer
36
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
37
+ # @return [Hash] the queued request
38
+ # @see https://docs.qubesync.com/api-reference/v2/standard-terms/create-standard-terms
39
+ def create(connection_id, params = {}, webhook_url:, idempotency_key: nil)
40
+ queue("standard_terms.create", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
41
+ end
42
+
43
+ # List standard terms: GET /connections/{connection_id}/standard-terms
44
+ # (`standard_terms.query`).
45
+ #
46
+ # QuickBooks answers in one webhook.
47
+ #
48
+ # Params, sent as the query string:
49
+ # - `active_status` (one of "ActiveOnly", "All", "InactiveOnly"): Used in filters to select
50
+ # list objects based on whether or not they are currently enabled for use by QuickBooks. The
51
+ # default value is asActiveOnly, which selects only list objects that are active. Choose at
52
+ # most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
53
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
54
+ # combine with each other, not with the other choices.
55
+ # - `from_modified_date` (String): Filters results to objects modified on or after this
56
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
57
+ # date is provided, time defaults to 00:00:00. Choose at most one of: `list_id`, or
58
+ # `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`,
59
+ # `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with
60
+ # each other, not with the other choices.
61
+ # - `full_name` (Array<String>): Choose at most one of: `list_id`, or `full_name`, or the set
62
+ # (`active_status`, `from_modified_date`, `max_returned`, `name_filter`,
63
+ # `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not
64
+ # with the other choices.
65
+ # - `include_ret_element` (Array<one of "DiscountPct", "EditSequence", "IsActive", "ListID",
66
+ # "Name", "StdDiscountDays", "StdDueDays", "TimeCreated", "TimeModified">)
67
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
68
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
69
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
70
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`. Choose at most
71
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
72
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
73
+ # combine with each other, not with the other choices.
74
+ # - `max_returned` (Integer): Limits the number of objects that a query returns. (To get a
75
+ # count of how many objects could possibly be returned, use the `meta_data` query
76
+ # attribute.) If you include a `max_returned` value, it must be at least 1. QuickBooks
77
+ # doesn't page this query: at most this many records come back, in one answer, with no sign
78
+ # of whether more matched. Leave it out for every match, in one answer; one over 4 MB as the
79
+ # Web Connector sends it, about 3 MB of qbXML isn't kept (`error_type`
80
+ # `response_too_large`), so narrow a large one with its filters. Choose at most one of:
81
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
82
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
83
+ # combine with each other, not with the other choices.
84
+ # - `meta_data` (one of "MetaDataAndResponseData", "MetaDataOnly", "NoMetaData"): Use the
85
+ # `meta_data` attribute to control whether query responses include counts. Options are
86
+ # NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus
87
+ # objects). Counts are approximate and may vary slightly if records are created or deleted
88
+ # during processing.
89
+ # - `name_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
90
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
91
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
92
+ # combine with each other, not with the other choices.
93
+ # - `match_criterion` (one of "Contains", "EndsWith", "StartsWith", required): The criterion
94
+ # to match.
95
+ # - `name` (String, required): The string to match.
96
+ # - `name_range_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
97
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
98
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
99
+ # combine with each other, not with the other choices.
100
+ # - `from_name` (String): The first name or item in the search range. If `from_name` is
101
+ # omitted, the range will begin with first name on the list.
102
+ # - `to_name` (String): The final name or item in the search range. If `to_name` is omitted,
103
+ # the range will end with last name on the list.
104
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
105
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
106
+ # webhook already carries the request's `id`.
107
+ # - `to_modified_date` (String): Filters results to objects modified on or before this
108
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
109
+ # date is provided, time defaults to end-of-day (23:59:59). Choose at most one of:
110
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
111
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
112
+ # combine with each other, not with the other choices.
113
+ #
114
+ # @param connection_id [String]
115
+ # @param params [Hash] the fields above
116
+ # @param webhook_url [String] where QuBe Sync sends the answer
117
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
118
+ # @return [Hash] the queued request
119
+ # @see https://docs.qubesync.com/api-reference/v2/standard-terms/list-standard-terms
120
+ def query(connection_id, params = {}, webhook_url:, idempotency_key: nil)
121
+ queue("standard_terms.query", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
122
+ end
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,36 @@
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 template operations, reached as `client.template`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class Template < Base
9
+ # List templates: GET /connections/{connection_id}/templates (`template.query`).
10
+ #
11
+ # QuickBooks answers in one webhook.
12
+ #
13
+ # Params, sent as the query string:
14
+ # - `include_ret_element` (Array<one of "EditSequence", "IsActive", "ListID", "Name",
15
+ # "TemplateType", "TimeCreated", "TimeModified">)
16
+ # - `meta_data` (one of "MetaDataAndResponseData", "MetaDataOnly", "NoMetaData"): Use the
17
+ # `meta_data` attribute to control whether query responses include counts. Options are
18
+ # NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus
19
+ # objects). Counts are approximate and may vary slightly if records are created or deleted
20
+ # during processing.
21
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
22
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
23
+ # webhook already carries the request's `id`.
24
+ #
25
+ # @param connection_id [String]
26
+ # @param params [Hash] the fields above
27
+ # @param webhook_url [String] where QuBe Sync sends the answer
28
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
29
+ # @return [Hash] the queued request
30
+ # @see https://docs.qubesync.com/api-reference/v2/templates/list-templates
31
+ def query(connection_id, params = {}, webhook_url:, idempotency_key: nil)
32
+ queue("template.query", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,91 @@
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 terms operations, reached as `client.terms`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class Terms < Base
9
+ # List terms: GET /connections/{connection_id}/terms (`terms.query`).
10
+ #
11
+ # QuickBooks answers in one webhook.
12
+ #
13
+ # Params, sent as the query string:
14
+ # - `active_status` (one of "ActiveOnly", "All", "InactiveOnly"): Used in filters to select
15
+ # list objects based on whether or not they are currently enabled for use by QuickBooks. The
16
+ # default value is asActiveOnly, which selects only list objects that are active. Choose at
17
+ # most one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
18
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
19
+ # combine with each other, not with the other choices.
20
+ # - `from_modified_date` (String): Filters results to objects modified on or after this
21
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
22
+ # date is provided, time defaults to 00:00:00. Choose at most one of: `list_id`, or
23
+ # `full_name`, or the set (`active_status`, `from_modified_date`, `max_returned`,
24
+ # `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set combine with
25
+ # each other, not with the other choices.
26
+ # - `full_name` (Array<String>): Choose at most one of: `list_id`, or `full_name`, or the set
27
+ # (`active_status`, `from_modified_date`, `max_returned`, `name_filter`,
28
+ # `name_range_filter`, `to_modified_date`). Members of a set combine with each other, not
29
+ # with the other choices.
30
+ # - `include_ret_element` (Array<one of "DayOfMonthDue", "DiscountDayOfMonth", "DiscountPct",
31
+ # "DueNextMonthDays", "EditSequence", "IsActive", "ListID", "Name", "StdDiscountDays",
32
+ # "StdDueDays", "TimeCreated", "TimeModified">)
33
+ # - `list_id` (Array<String>): `list_id` and `full_name` both identify a list object.
34
+ # QuickBooks assigns `list_id` when the object is created. `list_id` values are unique
35
+ # within a list type, not globally across all lists. If both `full_name` and `list_id` are
36
+ # supplied in a request, QuickBooks uses `list_id` and ignores `full_name`. Choose at most
37
+ # one of: `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
38
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
39
+ # combine with each other, not with the other choices.
40
+ # - `max_returned` (Integer): Limits the number of objects that a query returns. (To get a
41
+ # count of how many objects could possibly be returned, use the `meta_data` query
42
+ # attribute.) If you include a `max_returned` value, it must be at least 1. QuickBooks
43
+ # doesn't page this query: at most this many records come back, in one answer, with no sign
44
+ # of whether more matched. Leave it out for every match, in one answer; one over 4 MB as the
45
+ # Web Connector sends it, about 3 MB of qbXML isn't kept (`error_type`
46
+ # `response_too_large`), so narrow a large one with its filters. Choose at most one of:
47
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
48
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
49
+ # combine with each other, not with the other choices.
50
+ # - `meta_data` (one of "MetaDataAndResponseData", "MetaDataOnly", "NoMetaData"): Use the
51
+ # `meta_data` attribute to control whether query responses include counts. Options are
52
+ # NoMetaData (default), MetaDataOnly (count only), and MetaDataAndResponseData (count plus
53
+ # objects). Counts are approximate and may vary slightly if records are created or deleted
54
+ # during processing.
55
+ # - `name_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
56
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
57
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
58
+ # combine with each other, not with the other choices.
59
+ # - `match_criterion` (one of "Contains", "EndsWith", "StartsWith", required): The criterion
60
+ # to match.
61
+ # - `name` (String, required): The string to match.
62
+ # - `name_range_filter` (Hash): Filters according to the object’s Name. Choose at most one of:
63
+ # `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_name` (String): The first name or item in the search range. If `from_name` is
67
+ # omitted, the range will begin with first name on the list.
68
+ # - `to_name` (String): The final name or item in the search range. If `to_name` is omitted,
69
+ # the range will end with last name on the list.
70
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
71
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
72
+ # webhook already carries the request's `id`.
73
+ # - `to_modified_date` (String): Filters results to objects modified on or before this
74
+ # timestamp. QuickBooks Desktop accepts 1970-01-01 through 2038-01-19T03:14:07. If only a
75
+ # date is provided, time defaults to end-of-day (23:59:59). Choose at most one of:
76
+ # `list_id`, or `full_name`, or the set (`active_status`, `from_modified_date`,
77
+ # `max_returned`, `name_filter`, `name_range_filter`, `to_modified_date`). Members of a set
78
+ # combine with each other, not with the other choices.
79
+ #
80
+ # @param connection_id [String]
81
+ # @param params [Hash] the fields above
82
+ # @param webhook_url [String] where QuBe Sync sends the answer
83
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
84
+ # @return [Hash] the queued request
85
+ # @see https://docs.qubesync.com/api-reference/v2/terms/list-terms
86
+ def query(connection_id, params = {}, webhook_url:, idempotency_key: nil)
87
+ queue("terms.query", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
88
+ end
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,127 @@
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 time report operations, reached as `client.time_report`. Each queues a request and
7
+ # returns it (the response's `data`); the answer comes to `webhook_url`.
8
+ class TimeReport < Base
9
+ # List time reports: GET /connections/{connection_id}/time-reports (`time_report.query`).
10
+ #
11
+ # QuickBooks answers in one webhook.
12
+ #
13
+ # Params, sent as the query string:
14
+ # - `display_report` (Boolean): Set `display_report` to true to display this report within the
15
+ # QuickBooks UI. (Default is false.) If you want the request to display the report without
16
+ # returning any data to your application, set the responseData attribute to includeNone.
17
+ # - `include_column` (Array<one of "Account", "Aging", "Amount", "AmountDifference",
18
+ # "AverageCost", "BilledDate", "BillingStatus", "CalculatedAmount", "Class",
19
+ # "ClearedStatus", "CostPrice", "Credit", "Currency", "Date", "Debit", "DeliveryDate",
20
+ # "DueDate", "EstimateActive", "ExchangeRate", "FOB", "IncomeSubjectToTax", "Invoiced",
21
+ # "Item", "ItemDesc", "LastModifiedBy", "LatestOrPriorState", "Memo", "ModifiedTime",
22
+ # "Name", "NameAccountNumber", "NameAddress", "NameCity", "NameContact", "NameEmail",
23
+ # "NameFax", "NamePhone", "NameState", "NameZip", "OpenBalance", "OriginalAmount",
24
+ # "PONumber", "PaidAmount", "PaidStatus", "PaidThroughDate", "PaymentMethod", "PayrollItem",
25
+ # "PrintStatus", "ProgressAmount", "ProgressPercent", "Quantity", "QuantityAvailable",
26
+ # "QuantityOnHand", "QuantityOnSalesOrder", "ReceivedQuantity", "RefNumber",
27
+ # "RunningBalance", "SSNOrTaxID", "SalesRep", "SalesTaxCode", "SerialOrLotNumber",
28
+ # "ShipDate", "ShipMethod", "SourceName", "SplitAccount", "TaxLine", "TaxTableVersion",
29
+ # "Terms", "TxnID", "TxnNumber", "TxnType", "UnitPrice", "UserEdit", "ValueOnHand",
30
+ # "WageBase", "WageBaseTips">)
31
+ # - `include_subcolumns` (Boolean): The default value is false, which means that the report
32
+ # won’t include any subcolumn information. To include all available types of subcolumns for
33
+ # this report, set `include_subcolumns` to true. The SDK won’t return subcolumn information
34
+ # for data that can be easily computed. (For example, the SDK doesn’t return the “percent of
35
+ # row” column.)
36
+ # - `report_calendar` (one of "CalendarYear", "FiscalYear", "TaxYear"): Specifies the type of
37
+ # year that will be used for this report.
38
+ # - `report_class_filter` (Hash): Allows you to query for a specified class. Classes can be
39
+ # used to separate transactions into meaningful categories. (For example, transactions could
40
+ # be classified according to department, business location, or type of work.) In QuickBooks,
41
+ # class tracking is off by default.
42
+ # Give at most one of: `list_id`, or `full_name`, or `list_id_with_children`, or
43
+ # `full_name_with_children`.
44
+ # - `full_name` (Array<String>)
45
+ # - `full_name_with_children` (String): Allows you to filter for data that relates to the
46
+ # specified object and its descendants. For names that don’t have children,
47
+ # `full_name_with_children` is exactly the same as `full_name`.
48
+ # - `list_id` (Array<String>)
49
+ # - `list_id_with_children` (String): Allows you to filter for data that relates to the
50
+ # specified object and its descendants.
51
+ # - `report_date_macro` (one of "All", "LastMonth", "LastMonthToDate", "LastQuarter",
52
+ # "LastQuarterToDate", "LastWeek", "LastWeekToDate", "LastYear", "LastYearToDate",
53
+ # "NextFourWeeks", "NextMonth", "NextQuarter", "NextWeek", "NextYear", "ThisMonth",
54
+ # "ThisMonthToDate", "ThisQuarter", "ThisQuarterToDate", "ThisWeek", "ThisWeekToDate",
55
+ # "ThisYear", "ThisYearToDate", "Today", "Yesterday"): The time period covered by this
56
+ # report. Choose at most one of: `report_period`, or `report_date_macro`.
57
+ # - `report_entity_filter` (Hash): Allows you to query for a specified name type (customer,
58
+ # employee, vendor, or other) or query for specific list elements.
59
+ # Give at most one of: `entity_type_filter`, or `list_id`, or `full_name`, or
60
+ # `list_id_with_children`, or `full_name_with_children`.
61
+ # - `entity_type_filter` (one of "Customer", "Employee", "OtherName", "Vendor"): Allows you
62
+ # to report on a specific name type.
63
+ # - `full_name` (Array<String>)
64
+ # - `full_name_with_children` (String): Allows you to filter for data that relates to the
65
+ # specified object and its descendants. For names that don’t have children,
66
+ # `full_name_with_children` is exactly the same as `full_name`.
67
+ # - `list_id` (Array<String>)
68
+ # - `list_id_with_children` (String): Allows you to filter for data that relates to the
69
+ # specified object and its descendants.
70
+ # - `report_item_filter` (Hash): Allows you to query for a specified item type (for example,
71
+ # discount, inventory, or non-inventory) or query for specific list elements.
72
+ # Give at most one of: `item_type_filter`, or `list_id`, or `full_name`, or
73
+ # `list_id_with_children`, or `full_name_with_children`.
74
+ # - `full_name` (Array<String>)
75
+ # - `full_name_with_children` (String): Allows you to filter for data that relates to the
76
+ # specified object and its descendants. For names that don’t have children,
77
+ # `full_name_with_children` is exactly the same as `full_name`.
78
+ # - `item_type_filter` (one of "AllExceptFixedAsset", "Assembly", "Discount", "FixedAsset",
79
+ # "Inventory", "InventoryAndAssembly", "NonInventory", "OtherCharge", "Payment", "Sales",
80
+ # "SalesTax", "Service"): Allows you to report on a specific item type.
81
+ # - `list_id` (Array<String>)
82
+ # - `list_id_with_children` (String): Allows you to filter for data that relates to the
83
+ # specified object and its descendants.
84
+ # - `report_period` (Hash): If you omit both `to_report_date` and `from_report_date`, the
85
+ # report will cover the current fiscal year to date. Choose at most one of: `report_period`,
86
+ # or `report_date_macro`.
87
+ # - `from_report_date` (String): Selects information from this date and later. The range of
88
+ # acceptable `from_report_date` and `to_report_date` values depends on how the report
89
+ # dates are determined. If the report dates are based on the dates of transactions, the
90
+ # range is 01/01/1901 to 12/31/9999.
91
+ # - `to_report_date` (String): Selects information created on this date or earlier. The
92
+ # range of acceptable `to_report_date` and `from_report_date` values depends on how the
93
+ # report dates are determined. If the report dates are based on the dates of transactions,
94
+ # the range is 01/01/1901 to 12/31/9999.
95
+ # - `request_id` (String): Your own label for the request, sent to QuickBooks as its qbXML
96
+ # `requestID` and echoed in the raw answer (`response_xml`); optional, since the answer's
97
+ # webhook already carries the request's `id`.
98
+ # - `return_columns` (one of "ActiveOnly", "All", "NonZero"): Specifies whether you want the
99
+ # report to include only columns with active information, only columns with nonzero values,
100
+ # or all columns regardless of their content or active status.
101
+ # - `return_rows` (one of "ActiveOnly", "All", "NonZero"): Specifies whether you want the
102
+ # report to include only rows with active information, only rows with nonzero values, or all
103
+ # rows regardless of their content or active status.
104
+ # - `summarize_columns_by` (one of "Account", "BalanceSheet", "Class", "Customer",
105
+ # "CustomerType", "Day", "Employee", "FourWeek", "HalfMonth", "IncomeStatement",
106
+ # "ItemDetail", "ItemType", "Month", "Payee", "PaymentMethod", "PayrollItemDetail",
107
+ # "PayrollYtdDetail", "Quarter", "SalesRep", "SalesTaxCode", "ShipMethod", "Terms",
108
+ # "TotalOnly", "TwoWeek", "Vendor", "VendorType", "Week", "Year"): `summarize_columns_by`
109
+ # determines which data the report calculates and how the columns will be labeled across the
110
+ # top of the report. For example, if you set the value to scbTwoWeek, the report’s column
111
+ # labels might be “Feb 10-23, 02,” “Feb 24-Mar9, 02,” and so on.
112
+ # - `time_report_type` (one of "TimeByItem", "TimeByJobDetail", "TimeByJobSummary",
113
+ # "TimeByName", required): Allows you to report on time that has been recorded in a
114
+ # particular category.
115
+ #
116
+ # @param connection_id [String]
117
+ # @param params [Hash] the fields above
118
+ # @param webhook_url [String] where QuBe Sync sends the answer
119
+ # @param idempotency_key [String, nil] made for the call when nil, and reused on its retries
120
+ # @return [Hash] the queued request
121
+ # @see https://docs.qubesync.com/api-reference/v2/time-reports/list-time-reports
122
+ def query(connection_id, params = {}, webhook_url:, idempotency_key: nil)
123
+ queue("time_report.query", connection_id, params, webhook_url: webhook_url, idempotency_key: idempotency_key)
124
+ end
125
+ end
126
+ end
127
+ end