shopify_api 9.0.3 → 12.5.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 (780) hide show
  1. checksums.yaml +4 -4
  2. data/.github/CODEOWNERS +1 -1
  3. data/.github/ISSUE_TEMPLATE/BUG_REPORT.md +40 -0
  4. data/.github/ISSUE_TEMPLATE/ENHANCEMENT.md +9 -0
  5. data/.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md +9 -0
  6. data/.github/api_update_reminder.md +25 -0
  7. data/.github/api_update_reminder_on_release.md +19 -0
  8. data/.github/dependabot.yml +20 -0
  9. data/.github/pull_request_template.md +20 -0
  10. data/.github/workflows/api_update_reminder.yml +16 -0
  11. data/.github/workflows/api_update_reminder_on_release.yml +16 -0
  12. data/.github/workflows/build.yml +39 -0
  13. data/.github/workflows/cla.yml +22 -0
  14. data/.github/workflows/close-waiting-for-response-issues.yml +20 -0
  15. data/.github/workflows/remove-labels-on-activity.yml +16 -0
  16. data/.github/workflows/stale.yml +43 -0
  17. data/.rubocop.yml +56 -5
  18. data/BREAKING_CHANGES_FOR_OLDER_VERSIONS.md +110 -0
  19. data/CHANGELOG.md +335 -197
  20. data/CONTRIBUTING.md +3 -2
  21. data/Gemfile +9 -1
  22. data/Gemfile.lock +159 -0
  23. data/LICENSE +2 -2
  24. data/README.md +82 -581
  25. data/RELEASING.md +19 -0
  26. data/Rakefile +15 -36
  27. data/SECURITY.md +59 -0
  28. data/bin/tapioca +29 -0
  29. data/dev.yml +32 -0
  30. data/docs/README.md +13 -0
  31. data/docs/getting_started.md +53 -0
  32. data/docs/issues.md +39 -0
  33. data/docs/usage/graphql.md +121 -0
  34. data/docs/usage/graphql_storefront.md +48 -0
  35. data/docs/usage/oauth.md +104 -0
  36. data/docs/usage/rest.md +144 -0
  37. data/docs/usage/session_storage.md +46 -0
  38. data/docs/usage/webhooks.md +98 -0
  39. data/lib/shopify_api/admin_versions.rb +21 -0
  40. data/lib/shopify_api/auth/associated_user.rb +36 -0
  41. data/lib/shopify_api/auth/auth_scopes.rb +75 -0
  42. data/lib/shopify_api/auth/file_session_storage.rb +72 -0
  43. data/lib/shopify_api/auth/jwt_payload.rb +83 -0
  44. data/lib/shopify_api/auth/oauth/auth_query.rb +47 -0
  45. data/lib/shopify_api/auth/oauth/session_cookie.rb +28 -0
  46. data/lib/shopify_api/auth/oauth.rb +135 -0
  47. data/lib/shopify_api/auth/session.rb +119 -0
  48. data/lib/shopify_api/auth/session_storage.rb +30 -0
  49. data/lib/shopify_api/auth.rb +26 -0
  50. data/lib/shopify_api/clients/graphql/admin.rb +15 -0
  51. data/lib/shopify_api/clients/graphql/client.rb +50 -0
  52. data/lib/shopify_api/clients/graphql/storefront.rb +35 -0
  53. data/lib/shopify_api/clients/http_client.rb +107 -0
  54. data/lib/shopify_api/clients/http_request.rb +35 -0
  55. data/lib/shopify_api/clients/http_response.rb +66 -0
  56. data/lib/shopify_api/clients/rest/admin.rb +129 -0
  57. data/lib/shopify_api/context.rb +196 -0
  58. data/lib/shopify_api/errors/context_not_setup_error.rb +9 -0
  59. data/lib/shopify_api/errors/cookie_not_found_error.rb +9 -0
  60. data/lib/shopify_api/errors/feature_deprecated_error.rb +9 -0
  61. data/lib/shopify_api/errors/http_response_error.rb +23 -0
  62. data/lib/shopify_api/errors/invalid_graphql_request_error.rb +9 -0
  63. data/lib/shopify_api/errors/invalid_http_request_error.rb +9 -0
  64. data/lib/shopify_api/errors/invalid_jwt_token_error.rb +9 -0
  65. data/lib/shopify_api/errors/invalid_oauth_error.rb +9 -0
  66. data/lib/shopify_api/errors/invalid_webhook_error.rb +9 -0
  67. data/lib/shopify_api/errors/invalid_webhook_registration_error.rb +9 -0
  68. data/lib/shopify_api/errors/log_level_not_found_error.rb +9 -0
  69. data/lib/shopify_api/errors/max_http_retries_exceeded_error.rb +9 -0
  70. data/lib/shopify_api/errors/missing_jwt_token_error.rb +9 -0
  71. data/lib/shopify_api/errors/missing_required_argument_error.rb +9 -0
  72. data/lib/shopify_api/errors/no_active_session_error.rb +9 -0
  73. data/lib/shopify_api/errors/no_session_cookie_error.rb +9 -0
  74. data/lib/shopify_api/errors/no_webhook_handler.rb +9 -0
  75. data/lib/shopify_api/errors/private_app_error.rb +9 -0
  76. data/lib/shopify_api/errors/request_access_token_error.rb +9 -0
  77. data/lib/shopify_api/errors/session_not_found_error.rb +9 -0
  78. data/lib/shopify_api/errors/session_storage_error.rb +9 -0
  79. data/lib/shopify_api/errors/unsupported_oauth_error.rb +9 -0
  80. data/lib/shopify_api/errors/unsupported_version_error.rb +9 -0
  81. data/lib/shopify_api/errors/webhook_registration_error.rb +9 -0
  82. data/lib/shopify_api/inflector.rb +17 -0
  83. data/lib/shopify_api/logger.rb +82 -0
  84. data/lib/shopify_api/rest/base.rb +396 -0
  85. data/lib/shopify_api/rest/base_errors.rb +32 -0
  86. data/lib/shopify_api/rest/resources/2022_07/abandoned_checkout.rb +190 -0
  87. data/lib/shopify_api/rest/resources/2022_07/access_scope.rb +58 -0
  88. data/lib/shopify_api/rest/resources/2022_07/android_pay_key.rb +77 -0
  89. data/lib/shopify_api/rest/resources/2022_07/apple_pay_certificate.rb +105 -0
  90. data/lib/shopify_api/rest/resources/2022_07/application_charge.rb +109 -0
  91. data/lib/shopify_api/rest/resources/2022_07/application_credit.rb +92 -0
  92. data/lib/shopify_api/rest/resources/2022_07/article.rb +265 -0
  93. data/lib/shopify_api/rest/resources/2022_07/asset.rb +118 -0
  94. data/lib/shopify_api/rest/resources/2022_07/assigned_fulfillment_order.rb +86 -0
  95. data/lib/shopify_api/rest/resources/2022_07/balance.rb +50 -0
  96. data/lib/shopify_api/rest/resources/2022_07/blog.rb +162 -0
  97. data/lib/shopify_api/rest/resources/2022_07/cancellation_request.rb +83 -0
  98. data/lib/shopify_api/rest/resources/2022_07/carrier_service.rb +113 -0
  99. data/lib/shopify_api/rest/resources/2022_07/checkout.rb +209 -0
  100. data/lib/shopify_api/rest/resources/2022_07/collect.rb +142 -0
  101. data/lib/shopify_api/rest/resources/2022_07/collection.rb +110 -0
  102. data/lib/shopify_api/rest/resources/2022_07/collection_listing.rb +155 -0
  103. data/lib/shopify_api/rest/resources/2022_07/comment.rb +283 -0
  104. data/lib/shopify_api/rest/resources/2022_07/country.rb +137 -0
  105. data/lib/shopify_api/rest/resources/2022_07/currency.rb +57 -0
  106. data/lib/shopify_api/rest/resources/2022_07/custom_collection.rb +187 -0
  107. data/lib/shopify_api/rest/resources/2022_07/customer.rb +329 -0
  108. data/lib/shopify_api/rest/resources/2022_07/customer_address.rb +201 -0
  109. data/lib/shopify_api/rest/resources/2022_07/customer_saved_search.rb +169 -0
  110. data/lib/shopify_api/rest/resources/2022_07/deprecated_api_call.rb +57 -0
  111. data/lib/shopify_api/rest/resources/2022_07/discount_code.rb +219 -0
  112. data/lib/shopify_api/rest/resources/2022_07/dispute.rb +111 -0
  113. data/lib/shopify_api/rest/resources/2022_07/dispute_evidence.rb +117 -0
  114. data/lib/shopify_api/rest/resources/2022_07/dispute_file_upload.rb +81 -0
  115. data/lib/shopify_api/rest/resources/2022_07/draft_order.rb +275 -0
  116. data/lib/shopify_api/rest/resources/2022_07/event.rb +148 -0
  117. data/lib/shopify_api/rest/resources/2022_07/fulfillment.rb +225 -0
  118. data/lib/shopify_api/rest/resources/2022_07/fulfillment_event.rb +166 -0
  119. data/lib/shopify_api/rest/resources/2022_07/fulfillment_order.rb +310 -0
  120. data/lib/shopify_api/rest/resources/2022_07/fulfillment_request.rb +87 -0
  121. data/lib/shopify_api/rest/resources/2022_07/fulfillment_service.rb +130 -0
  122. data/lib/shopify_api/rest/resources/2022_07/gift_card.rb +215 -0
  123. data/lib/shopify_api/rest/resources/2022_07/gift_card_adjustment.rb +118 -0
  124. data/lib/shopify_api/rest/resources/2022_07/image.rb +157 -0
  125. data/lib/shopify_api/rest/resources/2022_07/inventory_item.rb +108 -0
  126. data/lib/shopify_api/rest/resources/2022_07/inventory_level.rb +179 -0
  127. data/lib/shopify_api/rest/resources/2022_07/location.rb +167 -0
  128. data/lib/shopify_api/rest/resources/2022_07/locations_for_move.rb +56 -0
  129. data/lib/shopify_api/rest/resources/2022_07/marketing_event.rb +209 -0
  130. data/lib/shopify_api/rest/resources/2022_07/metafield.rb +344 -0
  131. data/lib/shopify_api/rest/resources/2022_07/mobile_platform_application.rb +110 -0
  132. data/lib/shopify_api/rest/resources/2022_07/order.rb +473 -0
  133. data/lib/shopify_api/rest/resources/2022_07/order_risk.rb +135 -0
  134. data/lib/shopify_api/rest/resources/2022_07/page.rb +194 -0
  135. data/lib/shopify_api/rest/resources/2022_07/payment.rb +140 -0
  136. data/lib/shopify_api/rest/resources/2022_07/payment_gateway.rb +143 -0
  137. data/lib/shopify_api/rest/resources/2022_07/payment_transaction.rb +107 -0
  138. data/lib/shopify_api/rest/resources/2022_07/payout.rb +97 -0
  139. data/lib/shopify_api/rest/resources/2022_07/policy.rb +69 -0
  140. data/lib/shopify_api/rest/resources/2022_07/price_rule.rb +223 -0
  141. data/lib/shopify_api/rest/resources/2022_07/product.rb +223 -0
  142. data/lib/shopify_api/rest/resources/2022_07/product_listing.rb +196 -0
  143. data/lib/shopify_api/rest/resources/2022_07/product_resource_feedback.rb +88 -0
  144. data/lib/shopify_api/rest/resources/2022_07/province.rb +132 -0
  145. data/lib/shopify_api/rest/resources/2022_07/recurring_application_charge.rb +172 -0
  146. data/lib/shopify_api/rest/resources/2022_07/redirect.rb +139 -0
  147. data/lib/shopify_api/rest/resources/2022_07/refund.rb +151 -0
  148. data/lib/shopify_api/rest/resources/2022_07/report.rb +121 -0
  149. data/lib/shopify_api/rest/resources/2022_07/resource_feedback.rb +73 -0
  150. data/lib/shopify_api/rest/resources/2022_07/script_tag.rb +155 -0
  151. data/lib/shopify_api/rest/resources/2022_07/shipping_zone.rb +83 -0
  152. data/lib/shopify_api/rest/resources/2022_07/shop.rb +218 -0
  153. data/lib/shopify_api/rest/resources/2022_07/smart_collection.rb +216 -0
  154. data/lib/shopify_api/rest/resources/2022_07/storefront_access_token.rb +87 -0
  155. data/lib/shopify_api/rest/resources/2022_07/tender_transaction.rb +93 -0
  156. data/lib/shopify_api/rest/resources/2022_07/theme.rb +120 -0
  157. data/lib/shopify_api/rest/resources/2022_07/transaction.rb +181 -0
  158. data/lib/shopify_api/rest/resources/2022_07/usage_charge.rb +102 -0
  159. data/lib/shopify_api/rest/resources/2022_07/user.rb +138 -0
  160. data/lib/shopify_api/rest/resources/2022_07/variant.rb +212 -0
  161. data/lib/shopify_api/rest/resources/2022_07/webhook.rb +168 -0
  162. data/lib/shopify_api/rest/resources/2022_10/abandoned_checkout.rb +190 -0
  163. data/lib/shopify_api/rest/resources/2022_10/access_scope.rb +58 -0
  164. data/lib/shopify_api/rest/resources/2022_10/android_pay_key.rb +77 -0
  165. data/lib/shopify_api/rest/resources/2022_10/apple_pay_certificate.rb +105 -0
  166. data/lib/shopify_api/rest/resources/2022_10/application_charge.rb +109 -0
  167. data/lib/shopify_api/rest/resources/2022_10/application_credit.rb +92 -0
  168. data/lib/shopify_api/rest/resources/2022_10/article.rb +265 -0
  169. data/lib/shopify_api/rest/resources/2022_10/asset.rb +118 -0
  170. data/lib/shopify_api/rest/resources/2022_10/assigned_fulfillment_order.rb +86 -0
  171. data/lib/shopify_api/rest/resources/2022_10/balance.rb +50 -0
  172. data/lib/shopify_api/rest/resources/2022_10/blog.rb +162 -0
  173. data/lib/shopify_api/rest/resources/2022_10/cancellation_request.rb +83 -0
  174. data/lib/shopify_api/rest/resources/2022_10/carrier_service.rb +113 -0
  175. data/lib/shopify_api/rest/resources/2022_10/checkout.rb +209 -0
  176. data/lib/shopify_api/rest/resources/2022_10/collect.rb +142 -0
  177. data/lib/shopify_api/rest/resources/2022_10/collection.rb +110 -0
  178. data/lib/shopify_api/rest/resources/2022_10/collection_listing.rb +155 -0
  179. data/lib/shopify_api/rest/resources/2022_10/comment.rb +283 -0
  180. data/lib/shopify_api/rest/resources/2022_10/country.rb +137 -0
  181. data/lib/shopify_api/rest/resources/2022_10/currency.rb +57 -0
  182. data/lib/shopify_api/rest/resources/2022_10/custom_collection.rb +187 -0
  183. data/lib/shopify_api/rest/resources/2022_10/customer.rb +329 -0
  184. data/lib/shopify_api/rest/resources/2022_10/customer_address.rb +201 -0
  185. data/lib/shopify_api/rest/resources/2022_10/customer_saved_search.rb +169 -0
  186. data/lib/shopify_api/rest/resources/2022_10/deprecated_api_call.rb +57 -0
  187. data/lib/shopify_api/rest/resources/2022_10/discount_code.rb +219 -0
  188. data/lib/shopify_api/rest/resources/2022_10/dispute.rb +111 -0
  189. data/lib/shopify_api/rest/resources/2022_10/dispute_evidence.rb +117 -0
  190. data/lib/shopify_api/rest/resources/2022_10/dispute_file_upload.rb +81 -0
  191. data/lib/shopify_api/rest/resources/2022_10/draft_order.rb +275 -0
  192. data/lib/shopify_api/rest/resources/2022_10/event.rb +148 -0
  193. data/lib/shopify_api/rest/resources/2022_10/fulfillment.rb +225 -0
  194. data/lib/shopify_api/rest/resources/2022_10/fulfillment_event.rb +166 -0
  195. data/lib/shopify_api/rest/resources/2022_10/fulfillment_order.rb +310 -0
  196. data/lib/shopify_api/rest/resources/2022_10/fulfillment_request.rb +87 -0
  197. data/lib/shopify_api/rest/resources/2022_10/fulfillment_service.rb +130 -0
  198. data/lib/shopify_api/rest/resources/2022_10/gift_card.rb +215 -0
  199. data/lib/shopify_api/rest/resources/2022_10/gift_card_adjustment.rb +118 -0
  200. data/lib/shopify_api/rest/resources/2022_10/image.rb +157 -0
  201. data/lib/shopify_api/rest/resources/2022_10/inventory_item.rb +108 -0
  202. data/lib/shopify_api/rest/resources/2022_10/inventory_level.rb +179 -0
  203. data/lib/shopify_api/rest/resources/2022_10/location.rb +167 -0
  204. data/lib/shopify_api/rest/resources/2022_10/locations_for_move.rb +56 -0
  205. data/lib/shopify_api/rest/resources/2022_10/marketing_event.rb +209 -0
  206. data/lib/shopify_api/rest/resources/2022_10/metafield.rb +344 -0
  207. data/lib/shopify_api/rest/resources/2022_10/mobile_platform_application.rb +110 -0
  208. data/lib/shopify_api/rest/resources/2022_10/order.rb +476 -0
  209. data/lib/shopify_api/rest/resources/2022_10/order_risk.rb +135 -0
  210. data/lib/shopify_api/rest/resources/2022_10/page.rb +194 -0
  211. data/lib/shopify_api/rest/resources/2022_10/payment.rb +140 -0
  212. data/lib/shopify_api/rest/resources/2022_10/payment_gateway.rb +143 -0
  213. data/lib/shopify_api/rest/resources/2022_10/payment_transaction.rb +107 -0
  214. data/lib/shopify_api/rest/resources/2022_10/payout.rb +97 -0
  215. data/lib/shopify_api/rest/resources/2022_10/policy.rb +69 -0
  216. data/lib/shopify_api/rest/resources/2022_10/price_rule.rb +223 -0
  217. data/lib/shopify_api/rest/resources/2022_10/product.rb +223 -0
  218. data/lib/shopify_api/rest/resources/2022_10/product_listing.rb +196 -0
  219. data/lib/shopify_api/rest/resources/2022_10/product_resource_feedback.rb +88 -0
  220. data/lib/shopify_api/rest/resources/2022_10/province.rb +132 -0
  221. data/lib/shopify_api/rest/resources/2022_10/recurring_application_charge.rb +172 -0
  222. data/lib/shopify_api/rest/resources/2022_10/redirect.rb +139 -0
  223. data/lib/shopify_api/rest/resources/2022_10/refund.rb +151 -0
  224. data/lib/shopify_api/rest/resources/2022_10/report.rb +121 -0
  225. data/lib/shopify_api/rest/resources/2022_10/resource_feedback.rb +73 -0
  226. data/lib/shopify_api/rest/resources/2022_10/script_tag.rb +155 -0
  227. data/lib/shopify_api/rest/resources/2022_10/shipping_zone.rb +83 -0
  228. data/lib/shopify_api/rest/resources/2022_10/shop.rb +221 -0
  229. data/lib/shopify_api/rest/resources/2022_10/smart_collection.rb +216 -0
  230. data/lib/shopify_api/rest/resources/2022_10/storefront_access_token.rb +87 -0
  231. data/lib/shopify_api/rest/resources/2022_10/tender_transaction.rb +93 -0
  232. data/lib/shopify_api/rest/resources/2022_10/theme.rb +120 -0
  233. data/lib/shopify_api/rest/resources/2022_10/transaction.rb +181 -0
  234. data/lib/shopify_api/rest/resources/2022_10/usage_charge.rb +102 -0
  235. data/lib/shopify_api/rest/resources/2022_10/user.rb +138 -0
  236. data/lib/shopify_api/rest/resources/2022_10/variant.rb +212 -0
  237. data/lib/shopify_api/rest/resources/2022_10/webhook.rb +168 -0
  238. data/lib/shopify_api/rest/resources/2023_01/abandoned_checkout.rb +190 -0
  239. data/lib/shopify_api/rest/resources/2023_01/access_scope.rb +58 -0
  240. data/lib/shopify_api/rest/resources/2023_01/apple_pay_certificate.rb +105 -0
  241. data/lib/shopify_api/rest/resources/2023_01/application_charge.rb +109 -0
  242. data/lib/shopify_api/rest/resources/2023_01/application_credit.rb +92 -0
  243. data/lib/shopify_api/rest/resources/2023_01/article.rb +265 -0
  244. data/lib/shopify_api/rest/resources/2023_01/asset.rb +118 -0
  245. data/lib/shopify_api/rest/resources/2023_01/assigned_fulfillment_order.rb +86 -0
  246. data/lib/shopify_api/rest/resources/2023_01/balance.rb +50 -0
  247. data/lib/shopify_api/rest/resources/2023_01/blog.rb +162 -0
  248. data/lib/shopify_api/rest/resources/2023_01/cancellation_request.rb +83 -0
  249. data/lib/shopify_api/rest/resources/2023_01/carrier_service.rb +113 -0
  250. data/lib/shopify_api/rest/resources/2023_01/checkout.rb +209 -0
  251. data/lib/shopify_api/rest/resources/2023_01/collect.rb +142 -0
  252. data/lib/shopify_api/rest/resources/2023_01/collection.rb +110 -0
  253. data/lib/shopify_api/rest/resources/2023_01/collection_listing.rb +155 -0
  254. data/lib/shopify_api/rest/resources/2023_01/comment.rb +283 -0
  255. data/lib/shopify_api/rest/resources/2023_01/country.rb +137 -0
  256. data/lib/shopify_api/rest/resources/2023_01/currency.rb +57 -0
  257. data/lib/shopify_api/rest/resources/2023_01/custom_collection.rb +187 -0
  258. data/lib/shopify_api/rest/resources/2023_01/customer.rb +329 -0
  259. data/lib/shopify_api/rest/resources/2023_01/customer_address.rb +201 -0
  260. data/lib/shopify_api/rest/resources/2023_01/customer_saved_search.rb +169 -0
  261. data/lib/shopify_api/rest/resources/2023_01/deprecated_api_call.rb +57 -0
  262. data/lib/shopify_api/rest/resources/2023_01/discount_code.rb +219 -0
  263. data/lib/shopify_api/rest/resources/2023_01/dispute.rb +111 -0
  264. data/lib/shopify_api/rest/resources/2023_01/dispute_evidence.rb +117 -0
  265. data/lib/shopify_api/rest/resources/2023_01/dispute_file_upload.rb +81 -0
  266. data/lib/shopify_api/rest/resources/2023_01/draft_order.rb +275 -0
  267. data/lib/shopify_api/rest/resources/2023_01/event.rb +148 -0
  268. data/lib/shopify_api/rest/resources/2023_01/fulfillment.rb +225 -0
  269. data/lib/shopify_api/rest/resources/2023_01/fulfillment_event.rb +166 -0
  270. data/lib/shopify_api/rest/resources/2023_01/fulfillment_order.rb +316 -0
  271. data/lib/shopify_api/rest/resources/2023_01/fulfillment_request.rb +87 -0
  272. data/lib/shopify_api/rest/resources/2023_01/fulfillment_service.rb +130 -0
  273. data/lib/shopify_api/rest/resources/2023_01/gift_card.rb +215 -0
  274. data/lib/shopify_api/rest/resources/2023_01/gift_card_adjustment.rb +118 -0
  275. data/lib/shopify_api/rest/resources/2023_01/image.rb +157 -0
  276. data/lib/shopify_api/rest/resources/2023_01/inventory_item.rb +108 -0
  277. data/lib/shopify_api/rest/resources/2023_01/inventory_level.rb +179 -0
  278. data/lib/shopify_api/rest/resources/2023_01/location.rb +167 -0
  279. data/lib/shopify_api/rest/resources/2023_01/locations_for_move.rb +56 -0
  280. data/lib/shopify_api/rest/resources/2023_01/marketing_event.rb +209 -0
  281. data/lib/shopify_api/rest/resources/2023_01/metafield.rb +344 -0
  282. data/lib/shopify_api/rest/resources/2023_01/mobile_platform_application.rb +110 -0
  283. data/lib/shopify_api/rest/resources/2023_01/order.rb +479 -0
  284. data/lib/shopify_api/rest/resources/2023_01/order_risk.rb +135 -0
  285. data/lib/shopify_api/rest/resources/2023_01/page.rb +194 -0
  286. data/lib/shopify_api/rest/resources/2023_01/payment.rb +140 -0
  287. data/lib/shopify_api/rest/resources/2023_01/payment_gateway.rb +143 -0
  288. data/lib/shopify_api/rest/resources/2023_01/payment_transaction.rb +107 -0
  289. data/lib/shopify_api/rest/resources/2023_01/payout.rb +97 -0
  290. data/lib/shopify_api/rest/resources/2023_01/policy.rb +69 -0
  291. data/lib/shopify_api/rest/resources/2023_01/price_rule.rb +223 -0
  292. data/lib/shopify_api/rest/resources/2023_01/product.rb +223 -0
  293. data/lib/shopify_api/rest/resources/2023_01/product_listing.rb +196 -0
  294. data/lib/shopify_api/rest/resources/2023_01/product_resource_feedback.rb +88 -0
  295. data/lib/shopify_api/rest/resources/2023_01/province.rb +132 -0
  296. data/lib/shopify_api/rest/resources/2023_01/recurring_application_charge.rb +172 -0
  297. data/lib/shopify_api/rest/resources/2023_01/redirect.rb +139 -0
  298. data/lib/shopify_api/rest/resources/2023_01/refund.rb +151 -0
  299. data/lib/shopify_api/rest/resources/2023_01/report.rb +121 -0
  300. data/lib/shopify_api/rest/resources/2023_01/resource_feedback.rb +73 -0
  301. data/lib/shopify_api/rest/resources/2023_01/script_tag.rb +155 -0
  302. data/lib/shopify_api/rest/resources/2023_01/shipping_zone.rb +83 -0
  303. data/lib/shopify_api/rest/resources/2023_01/shop.rb +221 -0
  304. data/lib/shopify_api/rest/resources/2023_01/smart_collection.rb +216 -0
  305. data/lib/shopify_api/rest/resources/2023_01/storefront_access_token.rb +87 -0
  306. data/lib/shopify_api/rest/resources/2023_01/tender_transaction.rb +93 -0
  307. data/lib/shopify_api/rest/resources/2023_01/theme.rb +120 -0
  308. data/lib/shopify_api/rest/resources/2023_01/transaction.rb +181 -0
  309. data/lib/shopify_api/rest/resources/2023_01/usage_charge.rb +102 -0
  310. data/lib/shopify_api/rest/resources/2023_01/user.rb +138 -0
  311. data/lib/shopify_api/rest/resources/2023_01/variant.rb +212 -0
  312. data/lib/shopify_api/rest/resources/2023_01/webhook.rb +168 -0
  313. data/lib/shopify_api/rest/resources/2023_04/abandoned_checkout.rb +190 -0
  314. data/lib/shopify_api/rest/resources/2023_04/access_scope.rb +58 -0
  315. data/lib/shopify_api/rest/resources/2023_04/apple_pay_certificate.rb +105 -0
  316. data/lib/shopify_api/rest/resources/2023_04/application_charge.rb +109 -0
  317. data/lib/shopify_api/rest/resources/2023_04/application_credit.rb +92 -0
  318. data/lib/shopify_api/rest/resources/2023_04/article.rb +265 -0
  319. data/lib/shopify_api/rest/resources/2023_04/asset.rb +118 -0
  320. data/lib/shopify_api/rest/resources/2023_04/assigned_fulfillment_order.rb +86 -0
  321. data/lib/shopify_api/rest/resources/2023_04/balance.rb +50 -0
  322. data/lib/shopify_api/rest/resources/2023_04/blog.rb +162 -0
  323. data/lib/shopify_api/rest/resources/2023_04/cancellation_request.rb +83 -0
  324. data/lib/shopify_api/rest/resources/2023_04/carrier_service.rb +113 -0
  325. data/lib/shopify_api/rest/resources/2023_04/checkout.rb +209 -0
  326. data/lib/shopify_api/rest/resources/2023_04/collect.rb +142 -0
  327. data/lib/shopify_api/rest/resources/2023_04/collection.rb +110 -0
  328. data/lib/shopify_api/rest/resources/2023_04/collection_listing.rb +155 -0
  329. data/lib/shopify_api/rest/resources/2023_04/comment.rb +283 -0
  330. data/lib/shopify_api/rest/resources/2023_04/country.rb +137 -0
  331. data/lib/shopify_api/rest/resources/2023_04/currency.rb +57 -0
  332. data/lib/shopify_api/rest/resources/2023_04/custom_collection.rb +187 -0
  333. data/lib/shopify_api/rest/resources/2023_04/customer.rb +329 -0
  334. data/lib/shopify_api/rest/resources/2023_04/customer_address.rb +201 -0
  335. data/lib/shopify_api/rest/resources/2023_04/customer_saved_search.rb +169 -0
  336. data/lib/shopify_api/rest/resources/2023_04/deprecated_api_call.rb +57 -0
  337. data/lib/shopify_api/rest/resources/2023_04/discount_code.rb +219 -0
  338. data/lib/shopify_api/rest/resources/2023_04/dispute.rb +111 -0
  339. data/lib/shopify_api/rest/resources/2023_04/dispute_evidence.rb +117 -0
  340. data/lib/shopify_api/rest/resources/2023_04/dispute_file_upload.rb +81 -0
  341. data/lib/shopify_api/rest/resources/2023_04/draft_order.rb +275 -0
  342. data/lib/shopify_api/rest/resources/2023_04/event.rb +148 -0
  343. data/lib/shopify_api/rest/resources/2023_04/fulfillment.rb +225 -0
  344. data/lib/shopify_api/rest/resources/2023_04/fulfillment_event.rb +166 -0
  345. data/lib/shopify_api/rest/resources/2023_04/fulfillment_order.rb +312 -0
  346. data/lib/shopify_api/rest/resources/2023_04/fulfillment_request.rb +87 -0
  347. data/lib/shopify_api/rest/resources/2023_04/fulfillment_service.rb +130 -0
  348. data/lib/shopify_api/rest/resources/2023_04/gift_card.rb +215 -0
  349. data/lib/shopify_api/rest/resources/2023_04/gift_card_adjustment.rb +118 -0
  350. data/lib/shopify_api/rest/resources/2023_04/image.rb +157 -0
  351. data/lib/shopify_api/rest/resources/2023_04/inventory_item.rb +108 -0
  352. data/lib/shopify_api/rest/resources/2023_04/inventory_level.rb +179 -0
  353. data/lib/shopify_api/rest/resources/2023_04/location.rb +167 -0
  354. data/lib/shopify_api/rest/resources/2023_04/locations_for_move.rb +56 -0
  355. data/lib/shopify_api/rest/resources/2023_04/marketing_event.rb +209 -0
  356. data/lib/shopify_api/rest/resources/2023_04/metafield.rb +344 -0
  357. data/lib/shopify_api/rest/resources/2023_04/mobile_platform_application.rb +110 -0
  358. data/lib/shopify_api/rest/resources/2023_04/order.rb +485 -0
  359. data/lib/shopify_api/rest/resources/2023_04/order_risk.rb +135 -0
  360. data/lib/shopify_api/rest/resources/2023_04/page.rb +194 -0
  361. data/lib/shopify_api/rest/resources/2023_04/payment.rb +140 -0
  362. data/lib/shopify_api/rest/resources/2023_04/payment_gateway.rb +143 -0
  363. data/lib/shopify_api/rest/resources/2023_04/payment_transaction.rb +107 -0
  364. data/lib/shopify_api/rest/resources/2023_04/payout.rb +97 -0
  365. data/lib/shopify_api/rest/resources/2023_04/policy.rb +69 -0
  366. data/lib/shopify_api/rest/resources/2023_04/price_rule.rb +223 -0
  367. data/lib/shopify_api/rest/resources/2023_04/product.rb +223 -0
  368. data/lib/shopify_api/rest/resources/2023_04/product_listing.rb +196 -0
  369. data/lib/shopify_api/rest/resources/2023_04/product_resource_feedback.rb +88 -0
  370. data/lib/shopify_api/rest/resources/2023_04/province.rb +132 -0
  371. data/lib/shopify_api/rest/resources/2023_04/recurring_application_charge.rb +172 -0
  372. data/lib/shopify_api/rest/resources/2023_04/redirect.rb +139 -0
  373. data/lib/shopify_api/rest/resources/2023_04/refund.rb +151 -0
  374. data/lib/shopify_api/rest/resources/2023_04/report.rb +121 -0
  375. data/lib/shopify_api/rest/resources/2023_04/resource_feedback.rb +73 -0
  376. data/lib/shopify_api/rest/resources/2023_04/script_tag.rb +155 -0
  377. data/lib/shopify_api/rest/resources/2023_04/shipping_zone.rb +83 -0
  378. data/lib/shopify_api/rest/resources/2023_04/shop.rb +221 -0
  379. data/lib/shopify_api/rest/resources/2023_04/smart_collection.rb +216 -0
  380. data/lib/shopify_api/rest/resources/2023_04/storefront_access_token.rb +87 -0
  381. data/lib/shopify_api/rest/resources/2023_04/tender_transaction.rb +93 -0
  382. data/lib/shopify_api/rest/resources/2023_04/theme.rb +120 -0
  383. data/lib/shopify_api/rest/resources/2023_04/transaction.rb +184 -0
  384. data/lib/shopify_api/rest/resources/2023_04/usage_charge.rb +102 -0
  385. data/lib/shopify_api/rest/resources/2023_04/user.rb +138 -0
  386. data/lib/shopify_api/rest/resources/2023_04/variant.rb +212 -0
  387. data/lib/shopify_api/rest/resources/2023_04/webhook.rb +168 -0
  388. data/lib/shopify_api/utils/graphql_proxy.rb +52 -0
  389. data/lib/shopify_api/utils/hmac_validator.rb +44 -0
  390. data/lib/shopify_api/utils/http_utils.rb +17 -0
  391. data/lib/shopify_api/utils/session_utils.rb +152 -0
  392. data/lib/shopify_api/utils/verifiable_query.rb +18 -0
  393. data/lib/shopify_api/version.rb +4 -1
  394. data/lib/shopify_api/webhooks/handler.rb +15 -0
  395. data/lib/shopify_api/webhooks/register_result.rb +14 -0
  396. data/lib/shopify_api/webhooks/registration.rb +73 -0
  397. data/lib/shopify_api/webhooks/registrations/event_bridge.rb +61 -0
  398. data/lib/shopify_api/webhooks/registrations/http.rb +72 -0
  399. data/lib/shopify_api/webhooks/registrations/pub_sub.rb +65 -0
  400. data/lib/shopify_api/webhooks/registry.rb +215 -0
  401. data/lib/shopify_api/webhooks/request.rb +56 -0
  402. data/lib/shopify_api.rb +20 -30
  403. data/service.yml +0 -7
  404. data/shipit.rubygems.yml +1 -1
  405. data/shopify_api.gemspec +34 -22
  406. data/sorbet/config +3 -0
  407. data/sorbet/rbi/gems/activesupport@7.0.1.rbi +654 -0
  408. data/sorbet/rbi/gems/addressable@2.8.0.rbi +290 -0
  409. data/sorbet/rbi/gems/ast@2.4.2.rbi +54 -0
  410. data/sorbet/rbi/gems/coderay@1.1.3.rbi +8 -0
  411. data/sorbet/rbi/gems/concurrent-ruby@1.1.9.rbi +2401 -0
  412. data/sorbet/rbi/gems/crack@0.4.5.rbi +57 -0
  413. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +185 -0
  414. data/sorbet/rbi/gems/fakefs@1.4.1.rbi +571 -0
  415. data/sorbet/rbi/gems/hash_diff@1.0.0.rbi +47 -0
  416. data/sorbet/rbi/gems/hashdiff@1.0.1.rbi +82 -0
  417. data/sorbet/rbi/gems/httparty@0.20.0.rbi +573 -0
  418. data/sorbet/rbi/gems/i18n@1.8.11.rbi +25 -0
  419. data/sorbet/rbi/gems/jwt@2.3.0.rbi +437 -0
  420. data/sorbet/rbi/gems/method_source@1.0.0.rbi +8 -0
  421. data/sorbet/rbi/gems/mime-types-data@3.2022.0105.rbi +73 -0
  422. data/sorbet/rbi/gems/mime-types@3.4.1.rbi +295 -0
  423. data/sorbet/rbi/gems/minitest@5.15.0.rbi +541 -0
  424. data/sorbet/rbi/gems/mocha@1.13.0.rbi +986 -0
  425. data/sorbet/rbi/gems/multi_xml@0.6.0.rbi +36 -0
  426. data/sorbet/rbi/gems/oj@3.13.11.rbi +274 -0
  427. data/sorbet/rbi/gems/openssl@3.0.0.rbi +581 -0
  428. data/sorbet/rbi/gems/parallel@1.21.0.rbi +113 -0
  429. data/sorbet/rbi/gems/parser@3.1.0.0.rbi +1741 -0
  430. data/sorbet/rbi/gems/pry@0.14.1.rbi +8 -0
  431. data/sorbet/rbi/gems/public_suffix@4.0.6.rbi +145 -0
  432. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +157 -0
  433. data/sorbet/rbi/gems/rake@13.0.6.rbi +814 -0
  434. data/sorbet/rbi/gems/rbi@0.0.11.rbi +1646 -0
  435. data/sorbet/rbi/gems/regexp_parser@2.2.0.rbi +1130 -0
  436. data/sorbet/rbi/gems/rexml@3.2.5.rbi +709 -0
  437. data/sorbet/rbi/gems/rubocop-ast@1.15.1.rbi +1921 -0
  438. data/sorbet/rbi/gems/rubocop-shopify@2.4.0.rbi +8 -0
  439. data/sorbet/rbi/gems/rubocop-sorbet@0.6.5.rbi +295 -0
  440. data/sorbet/rbi/gems/rubocop@1.25.1.rbi +13507 -0
  441. data/sorbet/rbi/gems/ruby-progressbar@1.11.0.rbi +405 -0
  442. data/sorbet/rbi/gems/securerandom@0.1.1.rbi +10 -0
  443. data/sorbet/rbi/gems/spoom@1.1.8.rbi +1252 -0
  444. data/sorbet/rbi/gems/tapioca@0.6.3.rbi +1238 -0
  445. data/sorbet/rbi/gems/thor@1.2.1.rbi +844 -0
  446. data/sorbet/rbi/gems/tzinfo@2.0.4.rbi +858 -0
  447. data/sorbet/rbi/gems/unicode-display_width@2.1.0.rbi +26 -0
  448. data/sorbet/rbi/gems/unparser@0.6.3.rbi +1816 -0
  449. data/sorbet/rbi/gems/webmock@3.14.0.rbi +683 -0
  450. data/sorbet/rbi/gems/webrick@1.7.0.rbi +601 -0
  451. data/sorbet/rbi/gems/yard-sorbet@0.6.1.rbi +199 -0
  452. data/sorbet/rbi/gems/yard@0.9.27.rbi +4145 -0
  453. data/sorbet/rbi/gems/zeitwerk@2.5.4.rbi +200 -0
  454. data/sorbet/rbi/shims/fakefs.rbi +1 -0
  455. data/sorbet/rbi/shims/openssl.rb +3 -0
  456. data/sorbet/rbi/todo.rbi +8 -0
  457. data/sorbet/tapioca/config.yml +4 -0
  458. data/sorbet/tapioca/require.rb +20 -0
  459. metadata +574 -356
  460. data/.document +0 -5
  461. data/.github/probots.yml +0 -2
  462. data/.gitignore +0 -13
  463. data/.rubocop-https---shopify-github-io-ruby-style-guide-rubocop-yml +0 -1027
  464. data/.travis.yml +0 -23
  465. data/CONTRIBUTORS +0 -3
  466. data/Gemfile_ar41 +0 -5
  467. data/Gemfile_ar50 +0 -5
  468. data/Gemfile_ar51 +0 -5
  469. data/Gemfile_ar_master +0 -5
  470. data/RELEASING +0 -13
  471. data/bin/shopify +0 -3
  472. data/docker-compose.yml +0 -13
  473. data/docs/graphql.md +0 -196
  474. data/lib/active_resource/connection_ext.rb +0 -10
  475. data/lib/active_resource/detailed_log_subscriber.rb +0 -52
  476. data/lib/active_resource/json_errors.rb +0 -31
  477. data/lib/shopify_api/api_version.rb +0 -205
  478. data/lib/shopify_api/connection.rb +0 -35
  479. data/lib/shopify_api/countable.rb +0 -14
  480. data/lib/shopify_api/disable_prefix_check.rb +0 -31
  481. data/lib/shopify_api/events.rb +0 -7
  482. data/lib/shopify_api/graphql/http_client.rb +0 -22
  483. data/lib/shopify_api/graphql/railtie.rb +0 -17
  484. data/lib/shopify_api/graphql/task.rake +0 -100
  485. data/lib/shopify_api/graphql.rb +0 -83
  486. data/lib/shopify_api/limits.rb +0 -76
  487. data/lib/shopify_api/message_enricher.rb +0 -23
  488. data/lib/shopify_api/meta.rb +0 -15
  489. data/lib/shopify_api/metafields.rb +0 -20
  490. data/lib/shopify_api/paginated_collection.rb +0 -69
  491. data/lib/shopify_api/pagination_link_headers.rb +0 -33
  492. data/lib/shopify_api/resources/abandoned_checkout.rb +0 -7
  493. data/lib/shopify_api/resources/access_scope.rb +0 -10
  494. data/lib/shopify_api/resources/access_token.rb +0 -8
  495. data/lib/shopify_api/resources/address.rb +0 -4
  496. data/lib/shopify_api/resources/announcement.rb +0 -4
  497. data/lib/shopify_api/resources/api_permission.rb +0 -9
  498. data/lib/shopify_api/resources/application_charge.rb +0 -15
  499. data/lib/shopify_api/resources/application_credit.rb +0 -4
  500. data/lib/shopify_api/resources/array_base.rb +0 -13
  501. data/lib/shopify_api/resources/article.rb +0 -21
  502. data/lib/shopify_api/resources/asset.rb +0 -100
  503. data/lib/shopify_api/resources/assigned_fulfillment_order.rb +0 -16
  504. data/lib/shopify_api/resources/base.rb +0 -162
  505. data/lib/shopify_api/resources/billing_address.rb +0 -4
  506. data/lib/shopify_api/resources/blog.rb +0 -10
  507. data/lib/shopify_api/resources/carrier_service.rb +0 -4
  508. data/lib/shopify_api/resources/cart.rb +0 -4
  509. data/lib/shopify_api/resources/checkout.rb +0 -30
  510. data/lib/shopify_api/resources/collect.rb +0 -6
  511. data/lib/shopify_api/resources/collection.rb +0 -14
  512. data/lib/shopify_api/resources/collection_listing.rb +0 -18
  513. data/lib/shopify_api/resources/collection_publication.rb +0 -10
  514. data/lib/shopify_api/resources/comment.rb +0 -9
  515. data/lib/shopify_api/resources/country.rb +0 -4
  516. data/lib/shopify_api/resources/currency.rb +0 -6
  517. data/lib/shopify_api/resources/custom_collection.rb +0 -19
  518. data/lib/shopify_api/resources/customer.rb +0 -29
  519. data/lib/shopify_api/resources/customer_group.rb +0 -5
  520. data/lib/shopify_api/resources/customer_invite.rb +0 -4
  521. data/lib/shopify_api/resources/customer_saved_search.rb +0 -11
  522. data/lib/shopify_api/resources/discount_code.rb +0 -9
  523. data/lib/shopify_api/resources/discount_code_batch.rb +0 -32
  524. data/lib/shopify_api/resources/draft_order.rb +0 -14
  525. data/lib/shopify_api/resources/draft_order_invoice.rb +0 -4
  526. data/lib/shopify_api/resources/event.rb +0 -8
  527. data/lib/shopify_api/resources/fulfillment.rb +0 -47
  528. data/lib/shopify_api/resources/fulfillment_event.rb +0 -15
  529. data/lib/shopify_api/resources/fulfillment_order.rb +0 -137
  530. data/lib/shopify_api/resources/fulfillment_order_locations_for_move.rb +0 -4
  531. data/lib/shopify_api/resources/fulfillment_request.rb +0 -15
  532. data/lib/shopify_api/resources/fulfillment_service.rb +0 -4
  533. data/lib/shopify_api/resources/fulfillment_v2.rb +0 -20
  534. data/lib/shopify_api/resources/gift_card.rb +0 -7
  535. data/lib/shopify_api/resources/image.rb +0 -16
  536. data/lib/shopify_api/resources/inventory_item.rb +0 -6
  537. data/lib/shopify_api/resources/inventory_level.rb +0 -55
  538. data/lib/shopify_api/resources/line_item.rb +0 -14
  539. data/lib/shopify_api/resources/location.rb +0 -8
  540. data/lib/shopify_api/resources/marketing_event.rb +0 -10
  541. data/lib/shopify_api/resources/metafield.rb +0 -13
  542. data/lib/shopify_api/resources/note_attribute.rb +0 -4
  543. data/lib/shopify_api/resources/option.rb +0 -4
  544. data/lib/shopify_api/resources/order.rb +0 -43
  545. data/lib/shopify_api/resources/order_risk.rb +0 -8
  546. data/lib/shopify_api/resources/page.rb +0 -6
  547. data/lib/shopify_api/resources/payment.rb +0 -7
  548. data/lib/shopify_api/resources/payment_details.rb +0 -4
  549. data/lib/shopify_api/resources/ping.rb +0 -3
  550. data/lib/shopify_api/resources/policy.rb +0 -7
  551. data/lib/shopify_api/resources/price_rule.rb +0 -8
  552. data/lib/shopify_api/resources/product.rb +0 -56
  553. data/lib/shopify_api/resources/product_listing.rb +0 -16
  554. data/lib/shopify_api/resources/product_publication.rb +0 -10
  555. data/lib/shopify_api/resources/province.rb +0 -5
  556. data/lib/shopify_api/resources/publication.rb +0 -5
  557. data/lib/shopify_api/resources/receipt.rb +0 -4
  558. data/lib/shopify_api/resources/recurring_application_charge.rb +0 -31
  559. data/lib/shopify_api/resources/redirect.rb +0 -4
  560. data/lib/shopify_api/resources/refund.rb +0 -14
  561. data/lib/shopify_api/resources/report.rb +0 -4
  562. data/lib/shopify_api/resources/resource_feedback.rb +0 -19
  563. data/lib/shopify_api/resources/rule.rb +0 -4
  564. data/lib/shopify_api/resources/script_tag.rb +0 -4
  565. data/lib/shopify_api/resources/shipping_address.rb +0 -4
  566. data/lib/shopify_api/resources/shipping_line.rb +0 -4
  567. data/lib/shopify_api/resources/shipping_rate.rb +0 -7
  568. data/lib/shopify_api/resources/shipping_zone.rb +0 -4
  569. data/lib/shopify_api/resources/shop.rb +0 -25
  570. data/lib/shopify_api/resources/smart_collection.rb +0 -19
  571. data/lib/shopify_api/resources/storefront_access_token.rb +0 -4
  572. data/lib/shopify_api/resources/tax_line.rb +0 -4
  573. data/lib/shopify_api/resources/tax_service.rb +0 -4
  574. data/lib/shopify_api/resources/tender_transaction.rb +0 -6
  575. data/lib/shopify_api/resources/theme.rb +0 -4
  576. data/lib/shopify_api/resources/transaction.rb +0 -5
  577. data/lib/shopify_api/resources/usage_charge.rb +0 -5
  578. data/lib/shopify_api/resources/user.rb +0 -4
  579. data/lib/shopify_api/resources/variant.rb +0 -39
  580. data/lib/shopify_api/resources/webhook.rb +0 -4
  581. data/lib/shopify_api/resources.rb +0 -3
  582. data/lib/shopify_api/session.rb +0 -172
  583. data/test/abandoned_checkouts_test.rb +0 -29
  584. data/test/access_scope_test.rb +0 -23
  585. data/test/access_token_test.rb +0 -19
  586. data/test/active_resource/json_errors_test.rb +0 -19
  587. data/test/api_permission_test.rb +0 -9
  588. data/test/api_version_test.rb +0 -157
  589. data/test/application_charge_test.rb +0 -79
  590. data/test/application_credit_test.rb +0 -35
  591. data/test/article_test.rb +0 -73
  592. data/test/asset_test.rb +0 -18
  593. data/test/assigned_fulfillment_order_test.rb +0 -77
  594. data/test/base_test.rb +0 -198
  595. data/test/blog_test.rb +0 -8
  596. data/test/carrier_service_test.rb +0 -17
  597. data/test/cart_test.rb +0 -13
  598. data/test/checkouts_test.rb +0 -77
  599. data/test/collect_test.rb +0 -9
  600. data/test/collection_listing_test.rb +0 -79
  601. data/test/collection_publication_test.rb +0 -40
  602. data/test/collection_test.rb +0 -49
  603. data/test/countable_test.rb +0 -13
  604. data/test/currency_test.rb +0 -21
  605. data/test/custom_collection_test.rb +0 -9
  606. data/test/customer_saved_search_test.rb +0 -27
  607. data/test/customer_test.rb +0 -50
  608. data/test/detailed_log_subscriber_test.rb +0 -139
  609. data/test/discount_code_batch_test.rb +0 -40
  610. data/test/discount_code_test.rb +0 -53
  611. data/test/draft_order_test.rb +0 -151
  612. data/test/fixtures/abandoned_checkout.json +0 -184
  613. data/test/fixtures/abandoned_checkouts.json +0 -186
  614. data/test/fixtures/access_scopes.json +0 -10
  615. data/test/fixtures/access_token_delegate.json +0 -4
  616. data/test/fixtures/api_versions.json +0 -38
  617. data/test/fixtures/apis.json +0 -42
  618. data/test/fixtures/application_charge.json +0 -16
  619. data/test/fixtures/application_charges.json +0 -57
  620. data/test/fixtures/application_credit.json +0 -12
  621. data/test/fixtures/application_credits.json +0 -24
  622. data/test/fixtures/article.json +0 -15
  623. data/test/fixtures/articles.json +0 -39
  624. data/test/fixtures/asset.json +0 -9
  625. data/test/fixtures/assets.json +0 -136
  626. data/test/fixtures/assigned_fulfillment_orders.json +0 -78
  627. data/test/fixtures/authors.json +0 -1
  628. data/test/fixtures/blog.json +0 -13
  629. data/test/fixtures/blogs.json +0 -13
  630. data/test/fixtures/carrier_service.json +0 -9
  631. data/test/fixtures/carts.json +0 -43
  632. data/test/fixtures/checkout.json +0 -160
  633. data/test/fixtures/checkouts.json +0 -162
  634. data/test/fixtures/collect.json +0 -12
  635. data/test/fixtures/collection.json +0 -17
  636. data/test/fixtures/collection_listing.json +0 -11
  637. data/test/fixtures/collection_listing_product_ids.json +0 -1
  638. data/test/fixtures/collection_listing_product_ids2.json +0 -1
  639. data/test/fixtures/collection_listings.json +0 -13
  640. data/test/fixtures/collection_products.json +0 -47
  641. data/test/fixtures/collection_publication.json +0 -11
  642. data/test/fixtures/collection_publications.json +0 -13
  643. data/test/fixtures/currencies.json +0 -25
  644. data/test/fixtures/custom_collection.json +0 -17
  645. data/test/fixtures/customer_invite.json +0 -9
  646. data/test/fixtures/customer_saved_search.json +0 -9
  647. data/test/fixtures/customer_saved_search_customers.json +0 -60
  648. data/test/fixtures/customers.json +0 -59
  649. data/test/fixtures/customers_account_activation_url.json +0 -3
  650. data/test/fixtures/customers_search.json +0 -60
  651. data/test/fixtures/discount_code.json +0 -10
  652. data/test/fixtures/discount_code_batch.json +0 -14
  653. data/test/fixtures/discount_code_batch_discount_codes.json +0 -21
  654. data/test/fixtures/discount_codes.json +0 -12
  655. data/test/fixtures/draft_order.json +0 -159
  656. data/test/fixtures/draft_order_completed.json +0 -159
  657. data/test/fixtures/draft_order_invoice.json +0 -9
  658. data/test/fixtures/draft_orders.json +0 -161
  659. data/test/fixtures/engagement.json +0 -15
  660. data/test/fixtures/events.json +0 -31
  661. data/test/fixtures/fulfillment.json +0 -49
  662. data/test/fixtures/fulfillment_event.json +0 -12
  663. data/test/fixtures/fulfillment_order.json +0 -38
  664. data/test/fixtures/fulfillment_order_locations_for_move.json +0 -18
  665. data/test/fixtures/fulfillment_orders.json +0 -78
  666. data/test/fixtures/fulfillment_request.json +0 -28
  667. data/test/fixtures/fulfillment_service.json +0 -10
  668. data/test/fixtures/fulfillments.json +0 -53
  669. data/test/fixtures/gift_card.json +0 -20
  670. data/test/fixtures/gift_card_disabled.json +0 -20
  671. data/test/fixtures/graphql/2019-10.json +0 -1083
  672. data/test/fixtures/graphql/dummy_schema.rb +0 -16
  673. data/test/fixtures/graphql/unstable.json +0 -1083
  674. data/test/fixtures/image.json +0 -10
  675. data/test/fixtures/images.json +0 -20
  676. data/test/fixtures/inventory_level.json +0 -7
  677. data/test/fixtures/inventory_levels.json +0 -24
  678. data/test/fixtures/marketing_event.json +0 -28
  679. data/test/fixtures/marketing_events.json +0 -54
  680. data/test/fixtures/metafield.json +0 -12
  681. data/test/fixtures/metafields.json +0 -34
  682. data/test/fixtures/order.json +0 -297
  683. data/test/fixtures/order_risk.json +0 -14
  684. data/test/fixtures/order_risks.json +0 -28
  685. data/test/fixtures/order_with_properties.json +0 -373
  686. data/test/fixtures/orders.json +0 -299
  687. data/test/fixtures/payment.json +0 -7
  688. data/test/fixtures/payments.json +0 -9
  689. data/test/fixtures/ping/conversation.json +0 -1
  690. data/test/fixtures/ping/failed_delivery_confirmation.json +0 -1
  691. data/test/fixtures/ping/message.json +0 -1
  692. data/test/fixtures/ping/successful_delivery_confirmation.json +0 -1
  693. data/test/fixtures/policies.json +0 -8
  694. data/test/fixtures/price_rule.json +0 -27
  695. data/test/fixtures/price_rules.json +0 -28
  696. data/test/fixtures/product.json +0 -116
  697. data/test/fixtures/product_listing.json +0 -86
  698. data/test/fixtures/product_listing_product_ids.json +0 -1
  699. data/test/fixtures/product_listing_product_ids2.json +0 -1
  700. data/test/fixtures/product_listings.json +0 -174
  701. data/test/fixtures/product_publication.json +0 -11
  702. data/test/fixtures/product_publications.json +0 -13
  703. data/test/fixtures/publications.json +0 -9
  704. data/test/fixtures/recurring_application_charge.json +0 -22
  705. data/test/fixtures/recurring_application_charge_adjustment.json +0 -5
  706. data/test/fixtures/recurring_application_charges.json +0 -106
  707. data/test/fixtures/redirect.json +0 -7
  708. data/test/fixtures/refund.json +0 -112
  709. data/test/fixtures/report.json +0 -9
  710. data/test/fixtures/reports.json +0 -11
  711. data/test/fixtures/script_tag.json +0 -10
  712. data/test/fixtures/script_tags.json +0 -18
  713. data/test/fixtures/shipping_rates.json +0 -12
  714. data/test/fixtures/shipping_zones.json +0 -315
  715. data/test/fixtures/shop.json +0 -26
  716. data/test/fixtures/smart_collection.json +0 -21
  717. data/test/fixtures/smart_collection_products.json +0 -155
  718. data/test/fixtures/storefront_access_token.json +0 -9
  719. data/test/fixtures/storefront_access_tokens.json +0 -18
  720. data/test/fixtures/tags.json +0 -1
  721. data/test/fixtures/tax_service.json +0 -9
  722. data/test/fixtures/tender_transactions.json +0 -52
  723. data/test/fixtures/transaction.json +0 -29
  724. data/test/fixtures/usage_charge.json +0 -11
  725. data/test/fixtures/usage_charges.json +0 -23
  726. data/test/fixtures/user.json +0 -21
  727. data/test/fixtures/users.json +0 -42
  728. data/test/fixtures/variant.json +0 -23
  729. data/test/fixtures/variants.json +0 -88
  730. data/test/fixtures/webhook.json +0 -10
  731. data/test/fixtures/webhooks.json +0 -18
  732. data/test/fulfillment_event_test.rb +0 -69
  733. data/test/fulfillment_order_test.rb +0 -462
  734. data/test/fulfillment_order_test_helper.rb +0 -7
  735. data/test/fulfillment_request_test.rb +0 -33
  736. data/test/fulfillment_service_test.rb +0 -17
  737. data/test/fulfillment_test.rb +0 -224
  738. data/test/fulfillment_v2_test.rb +0 -62
  739. data/test/gift_card_test.rb +0 -22
  740. data/test/graphql/http_client_test.rb +0 -26
  741. data/test/graphql_test.rb +0 -158
  742. data/test/image_test.rb +0 -39
  743. data/test/inventory_level_test.rb +0 -59
  744. data/test/lib/webmock_extensions/last_request.rb +0 -16
  745. data/test/limits_test.rb +0 -38
  746. data/test/location_test.rb +0 -14
  747. data/test/marketing_event_test.rb +0 -68
  748. data/test/message_enricher_test.rb +0 -45
  749. data/test/meta_test.rb +0 -49
  750. data/test/metafield_test.rb +0 -46
  751. data/test/order_risk_test.rb +0 -46
  752. data/test/order_test.rb +0 -125
  753. data/test/pagination_test.rb +0 -257
  754. data/test/payment_test.rb +0 -19
  755. data/test/policy_test.rb +0 -19
  756. data/test/price_rule_test.rb +0 -65
  757. data/test/product_listing_test.rb +0 -97
  758. data/test/product_publication_test.rb +0 -40
  759. data/test/product_test.rb +0 -99
  760. data/test/publication_test.rb +0 -12
  761. data/test/recurring_application_charge_test.rb +0 -142
  762. data/test/redirect_test.rb +0 -9
  763. data/test/refund_test.rb +0 -32
  764. data/test/report_test.rb +0 -35
  765. data/test/resource_feedback_test.rb +0 -42
  766. data/test/script_tag_test.rb +0 -30
  767. data/test/session_test.rb +0 -366
  768. data/test/shipping_rate_test.rb +0 -17
  769. data/test/shipping_zone_test.rb +0 -10
  770. data/test/shop_test.rb +0 -68
  771. data/test/smart_collection_test.rb +0 -35
  772. data/test/storefront_access_token_test.rb +0 -32
  773. data/test/tax_service_test.rb +0 -9
  774. data/test/tender_transaction_test.rb +0 -18
  775. data/test/test_helper.rb +0 -124
  776. data/test/transaction_test.rb +0 -17
  777. data/test/usage_charge_test.rb +0 -21
  778. data/test/user_test.rb +0 -17
  779. data/test/variant_test.rb +0 -135
  780. data/test/webhook_test.rb +0 -21
data/CHANGELOG.md CHANGED
@@ -1,450 +1,588 @@
1
+ # Changelog
2
+
3
+ Note: For changes to the API, see https://shopify.dev/changelog?filter=api
4
+
5
+ ## Unreleased
6
+
7
+ ## 12.5.0
8
+
9
+ - [#1113](https://github.com/Shopify/shopify-api-ruby/pull/1113) Handle JSON::ParserError when http response is HTML and raise ShopifyAPI::Errors::HttpResponseError
10
+ - [#1098](https://github.com/Shopify/shopify-api-ruby/pull/1098) Gracefully handle HTTP 204 repsonse bodies
11
+ - [#1104](https://github.com/Shopify/shopify-api-ruby/pull/1104) Allow api version overrides.
12
+ - [#1137](https://github.com/Shopify/shopify-api-ruby/pull/1137) Support for 2023_04 API version. Fix reported typing bugs.
13
+
14
+ ## Version 12.4.0
15
+
16
+ - [#1092](https://github.com/Shopify/shopify-api-ruby/pull/1092) Add support for 2023-01 API version.
17
+ - [#1081](https://github.com/Shopify/shopify-api-ruby/pull/1081) Fixed an error when parsing the JSON response body for the AssignedFulfillmentOrder resource.
18
+
19
+ ## Version 12.3.0
20
+
21
+ - [#1040](https://github.com/Shopify/shopify-api-ruby/pull/1040) `ShopifyAPI::Clients::HttpResponse` as argument for `ShopifyAPI::Errors::HttpResponseError`
22
+ - [#1055](https://github.com/Shopify/shopify-api-ruby/pull/1055) Makes session_storage optional. Configuring the API with session_storage is now deprecated. Session persistence is handled by the [shopify_app gem](https://github.com/Shopify/shopify_app) if using Rails.
23
+ - [#1063](https://github.com/Shopify/shopify-api-ruby/pull/1063) Fix ActiveSupport inflector dependency
24
+ - [#1069](https://github.com/Shopify/shopify-api-ruby/pull/1069) Adds a custom Logger to help write uniform logs across the api and the [shopify_app gem](https://github.com/Shopify/shopify_app)
25
+
26
+ ## Version 12.2.1
27
+
28
+ - [#1045](https://github.com/Shopify/shopify-api-ruby/pull/1045) Fixes bug with host/host_name requirement.
29
+
30
+ ## Version 12.2.0
31
+
32
+ - [#1023](https://github.com/Shopify/shopify-api-ruby/pull/1023) Allow custom scopes during the OAuth process
33
+
34
+ ## Version 12.1.0
35
+
36
+ - [#1017](https://github.com/Shopify/shopify-api-ruby/pull/1017) Add support for `http` with localhost development without using a TLS tunnel
37
+
38
+ ## Version 12.0.0
39
+
40
+ - [#1027](https://github.com/Shopify/shopify-api-ruby/pull/1027) ⚠️ [Breaking] Remove support for deprecated API version `2021-10` and added support for version `2022-10`
41
+ - [#1008](https://github.com/Shopify/shopify-api-ruby/pull/1008) Increase session token JWT validation leeway from 5s to 10s
42
+
43
+ ## Version 11.1.0
44
+
45
+ - [#1002](https://github.com/Shopify/shopify-api-ruby/pull/1002) Add new method to construct the host app URL for an embedded app, allowing for safer redirect to app inside appropriate shop admin
46
+ - [#1004](https://github.com/Shopify/shopify-api-ruby/pull/1004) Support full URL and scheme-less URL when registering HTTP webhooks
47
+
48
+ ## Version 11.0.1
49
+
50
+ - [#990](https://github.com/Shopify/shopify-api-ruby/pull/991) Validate `hmac` signature of OAuth callback using both old and new API secrets
51
+
52
+ ## Version 11.0.0
53
+
54
+ - [#987](https://github.com/Shopify/shopify-api-ruby/pull/987) ⚠️ [Breaking] Add REST resources for July 2022 API version, remove support and REST resources for July 2021 (`2021-07`) API version
55
+ - [#979](https://github.com/Shopify/shopify-api-ruby/pull/979) Update `ShopifyAPI::Context.setup` to take `old_api_secret_key` to support API credentials rotation
56
+ - [#977](https://github.com/Shopify/shopify-api-ruby/pull/977) Fix webhook requests when a header is present having a symbol key (e.g. `:clearance`)
57
+
58
+ ## Version 10.1.0
59
+
60
+ - [#933](https://github.com/Shopify/shopify-api-ruby/pull/933) Fix syntax of GraphQL query in `Webhooks.get_webhook_id` method by removing extra curly brace
61
+ - [#941](https://github.com/Shopify/shopify-api-ruby/pull/941) Fix `to_hash` to return readonly attributes, unless being used for serialize the object for saving - fix issue [#930](https://github.com/Shopify/shopify-api-ruby/issues/930)
62
+ - [#959](https://github.com/Shopify/shopify-api-ruby/pull/959) Update `LATEST_SUPPORTED_ADMIN_VERSION` to `2022-04` to align it with the current value
63
+
64
+ ## Version 10.0.3
65
+
66
+ ### Fixed
67
+
68
+ - [#935](https://github.com/Shopify/shopify-api-ruby/pull/935) Fix issue [#931](https://github.com/Shopify/shopify-api-ruby/pull/931), weight of variant should be float
69
+ - [#944](https://github.com/Shopify/shopify-api-ruby/pull/944) Deprecated the `validate_shop` method from the JWT class since we can trust the token payload, since it comes from Shopify.
70
+
71
+ ## Version 10.0.2
72
+
73
+ - [#929](https://github.com/Shopify/shopify-api-ruby/pull/929) Aligning sorbet dependencies
74
+
75
+ ## Version 10.0.1
76
+
77
+ ### Fixed
78
+
79
+ - [#919](https://github.com/Shopify/shopify-api-ruby/pull/919) Allow REST resources to configure a deny list of attributes to be excluded when saving
80
+ - [#920](https://github.com/Shopify/shopify-api-ruby/pull/920) Set all values received from the API response to REST resource objects, and allow setting / getting attributes with special characters (such as `?`)
81
+ - [#927](https://github.com/Shopify/shopify-api-ruby/pull/927) Fix the `ShopifyAPI::AdminVersions` module for backward compatibility
82
+
83
+ ## Version 10.0.0
84
+
85
+ - Major update to the library to provide _all_ essential functions needed for a Shopify app, supporting embedded apps with session tokens. See the [full list of changes](https://github.com/Shopify/shopify-api-ruby#breaking-change-notice-for-version-1000) here
86
+
87
+ ## Version 9.5.1
88
+
89
+ - [#891](https://github.com/Shopify/shopify-api-ruby/pull/891) Removed the upper bound on the `activeresource` dependency to allow apps to use the latest version
90
+
91
+ ## Version 9.5
92
+
93
+ - [#883](https://github.com/Shopify/shopify-api-ruby/pull/883) Add support for Ruby 3.0
94
+
95
+ ## Version 9.4.1
96
+
97
+ - [#847](https://github.com/Shopify/shopify-api-ruby/pull/847) Update `create_permission_url` method to use grant_options
98
+ - [#852](https://github.com/Shopify/shopify-api-ruby/pull/852) Bumping kramdown to fix a security vulnerability
99
+
100
+ ## Version 9.4.0
101
+
102
+ - [#843](https://github.com/Shopify/shopify-api-ruby/pull/843) Introduce a new `access_scopes` attribute on the Session class.
103
+ - Specifying this in the Session constructor is optional. By default, this attribute returns `nil`.
104
+
105
+ ## Version 9.3.0
106
+
107
+ - [#797](https://github.com/Shopify/shopify-api-ruby/pull/797) Release new Endpoint `fulfillment_order.open` and `fulfillment_order.reschedule`.
108
+
109
+ - [#818](https://github.com/Shopify/shopify-api-ruby/pull/818) Avoid depending on ActiveSupport in Sesssion class.
110
+
111
+ - Freeze all string literals. This should have no impact unless your application is modifying ('monkeypatching') the internals of the library in an unusual way.
112
+
113
+ - [#802](https://github.com/Shopify/shopify-api-ruby/pull/802) Made `inventory_quantity` a read-only field in Variant
114
+
115
+ - [#821](https://github.com/Shopify/shopify-api-ruby/pull/821) Add logging based on environment variable, move log subscriber out of `detailed_log_subscriber`.
116
+ The `ActiveResource::DetailedLogSubscriber` no longer automatically attaches when the class is loaded. If you were previously relying on that behaviour, you'll now need to call `ActiveResource::DetailedLogSubscriber.attach_to(:active_resource_detailed)`. (If using the new `SHOPIFY_LOG_PATH` environment setting then this is handled for you).
117
+
118
+ - Provide `ApiAccess` value object to encapsulate scope operations [#829](https://github.com/Shopify/shopify-api-ruby/pull/829)
119
+
120
+ ## Version 9.2.0
121
+
122
+ - Removes the `shopify` binary which will be used by the Shopify CLI
123
+
124
+ ## Version 9.1.1
125
+
126
+ - Make cursor based pagination return relative uri's when fetching next and previous pages. [#726](https://github.com/Shopify/shopify-api-ruby/pull/726)
127
+
128
+ ## Version 9.1.0
129
+
130
+ - Implements equality operator on `Session` [#714](https://github.com/Shopify/shopify-api-ruby/pull/714)
131
+
132
+ ## Version 9.0.4
133
+
134
+ - Contains [#708](https://github.com/Shopify/shopify-api-ruby/pull/708) which is a revert for [#655](https://github.com/Shopify/shopify-api-ruby/pull/655) due to the deprecated inventory parameters not being removed correctly in some cases
135
+
1
136
  ## Version 9.0.3
2
137
 
3
- * We now raise a `ShopifyAPI::ValidationException` exception when clients try to use `Product` and `Variant` with deprecated inventory-related fields in API version `2019-10` or later. [#655](https://github.com/shopify/shopify_api/pull/655) Deprecation and migration information can be found in the following documents:
4
- * [Product Variant REST API Reference](https://shopify.dev/docs/admin-api/rest/reference/products/product-variant)
5
- * [Migrate your app to support multiple locations](https://shopify.dev/tutorials/migrate-your-app-to-support-multiple-locations)
6
- * [Manage product inventory with the Admin API](https://shopify.dev/tutorials/manage-product-inventory-with-admin-api)
7
- * Added support for the Discount Code API batch endpoints [#701](https://github.com/shopify/shopify_api/pull/701)
8
- * [Create](https://shopify.dev/docs/admin-api/rest/reference/discounts/discountcode#batch_create-2020-01)
9
- * [Show](https://shopify.dev/docs/admin-api/rest/reference/discounts/discountcode#batch_show-2020-01)
10
- * [List](https://shopify.dev/docs/admin-api/rest/reference/discounts/discountcode#batch_discount_codes_index-2020-01)
11
- * Fix issue in the README to explicitly say clients need to require the `shopify_api` gem [#700](https://github.com/Shopify/shopify_api/pull/700)
138
+ - We now raise a `ShopifyAPI::ValidationException` exception when clients try to use `Product` and `Variant` with deprecated inventory-related fields in API version `2019-10` or later. [#655](https://github.com/Shopify/shopify-api-ruby/pull/655) Deprecation and migration information can be found in the following documents:
139
+ - [Product Variant REST API Reference](https://shopify.dev/docs/api/admin-rest/reference/resources/product-variant)
140
+ - [Migrate your app to support multiple locations](https://shopify.dev/tutorials/migrate-your-app-to-support-multiple-locations)
141
+ - [Manage product inventory with the Admin API](https://shopify.dev/tutorials/manage-product-inventory-with-admin-api)
142
+ - Added support for the Discount Code API batch endpoints [#701](https://github.com/Shopify/shopify-api-ruby/pull/701)
143
+ - [Create](https://shopify.dev/docs/api/admin-rest/reference/resources/discountcode#batch_create-2020-01)
144
+ - [Show](https://shopify.dev/docs/api/admin-rest/reference/resources/discountcode#batch_show-2020-01)
145
+ - [List](https://shopify.dev/docs/api/admin-rest/reference/resources/discountcode#batch_discount_codes_index-2020-01)
146
+ - Fix issue in the README to explicitly say clients need to require the `shopify_api` gem [#700](https://github.com/Shopify/shopify-api-ruby/pull/700)
12
147
 
13
148
  ## Version 9.0.2
14
149
 
15
- * Added optional flag passed to `initialize_clients` to prevent from raising the `InvalidSchema` exception [#693](https://github.com/Shopify/shopify_api/pull/693)
150
+ - Added optional flag passed to `initialize_clients` to prevent from raising the `InvalidSchema` exception [#693](https://github.com/Shopify/shopify-api-ruby/pull/693)
16
151
 
17
152
  ## Version 9.0.1
18
153
 
19
- * Added warning message if API version used is unsupported or soon to be unsupported [#685](https://github.com/Shopify/shopify_api/pull/685)
20
- * Take into account "errors" messages from response body [#677](https://github.com/Shopify/shopify_api/pull/677)
154
+ - Added warning message if API version used is unsupported or soon to be unsupported [#685](https://github.com/Shopify/shopify-api-ruby/pull/685)
155
+ - Take into account "errors" messages from response body [#677](https://github.com/Shopify/shopify-api-ruby/pull/677)
21
156
 
22
157
  ## Version 9.0.0
23
158
 
24
- * Breaking change: Improved GraphQL client [#672](https://github.com/Shopify/shopify_api/pull/672). See the [client docs](docs/graphql.md) for usage and a migration guide.
159
+ - Breaking change: Improved GraphQL client [#672](https://github.com/Shopify/shopify-api-ruby/pull/672). See the [client docs](docs/graphql.md) for usage and a migration guide.
25
160
 
26
- * Added options hash to create_permission_url and makes redirect_uri required [#670](https://github.com/Shopify/shopify_api/pull/670)
161
+ - Added options hash to create_permission_url and makes redirect_uri required [#670](https://github.com/Shopify/shopify-api-ruby/pull/670)
27
162
 
28
- * Release new Endpoint `fulfillment_order.locations_for_move` in 2020-01 REST API version [#669](https://github.com/Shopify/shopify_api/pull/669)
163
+ - Release new Endpoint `fulfillment_order.locations_for_move` in 2020-01 REST API version [#669](https://github.com/Shopify/shopify-api-ruby/pull/669)
29
164
 
30
- * Release new Endpoints for `fulfillment` in 2020-01 REST API version [#639](https://github.com/Shopify/shopify_api/pull/639):
31
- * `fulfillment.create` with `line_items_by_fulfillment_order`
32
- * `fulfillment.update_tracking`
33
- * `fulfillment.cancel`
165
+ - Release new Endpoints for `fulfillment` in 2020-01 REST API version [#639](https://github.com/Shopify/shopify-api-ruby/pull/639):
34
166
 
35
- * Release new Endpoints for `fulfillment_order` in 2020-01 REST API version [#637](https://github.com/Shopify/shopify_api/pull/637):
36
- * `fulfillment_order.fulfillment_request`
37
- * `fulfillment_order.fulfillment_request.accept`
38
- * `fulfillment_order.fulfillment_request.reject`
39
- * `fulfillment_order.cancellation_request`
40
- * `fulfillment_order.cancellation_request.accept`
41
- * `fulfillment_order.cancellation_request.reject`
167
+ - `fulfillment.create` with `line_items_by_fulfillment_order`
168
+ - `fulfillment.update_tracking`
169
+ - `fulfillment.cancel`
42
170
 
43
- * Release new Endpoints `fulfillment_order.move`, `fulfillment_order.cancel` and `fulfillment_order.close` in 2020-01 REST API version [#635](https://github.com/Shopify/shopify_api/pull/635)
171
+ - Release new Endpoints for `fulfillment_order` in 2020-01 REST API version [#637](https://github.com/Shopify/shopify-api-ruby/pull/637):
44
172
 
45
- * Release new Endpoint `order.fulfillment_orders`, and active resources `AssignedFulfillmentOrder` and `FulfillmentOrder` in 2020-01 REST API version [#633](https://github.com/Shopify/shopify_api/pull/633)
173
+ - `fulfillment_order.fulfillment_request`
174
+ - `fulfillment_order.fulfillment_request.accept`
175
+ - `fulfillment_order.fulfillment_request.reject`
176
+ - `fulfillment_order.cancellation_request`
177
+ - `fulfillment_order.cancellation_request.accept`
178
+ - `fulfillment_order.cancellation_request.reject`
179
+
180
+ - Release new Endpoints `fulfillment_order.move`, `fulfillment_order.cancel` and `fulfillment_order.close` in 2020-01 REST API version [#635](https://github.com/Shopify/shopify-api-ruby/pull/635)
181
+
182
+ - Release new Endpoint `order.fulfillment_orders`, and active resources `AssignedFulfillmentOrder` and `FulfillmentOrder` in 2020-01 REST API version [#633](https://github.com/Shopify/shopify-api-ruby/pull/633)
46
183
 
47
184
  ## Version 8.1.0
48
185
 
49
- * Release 2020-01 REST ADMIN API VERSION [#656](https://github.com/Shopify/shopify_api/pull/656)
50
- * Release new Endpoint `collection.products` and `collection.find()` in 2020-01 REST API version [#657](https://github.com/Shopify/shopify_api/pull/657)
51
- * Enrich 4xx errors with error message from response body [#647](https://github.com/Shopify/shopify_api/pull/647)
52
- * Make relative cursor based pagination work across page loads [#625](https://github.com/Shopify/shopify_api/pull/625)
53
- * Small ruby compat fix [#623](https://github.com/Shopify/shopify_api/pull/623)
54
- * Small consistency change [#621](https://github.com/Shopify/shopify_api/pull/621)
186
+ - Release 2020-01 REST ADMIN API VERSION [#656](https://github.com/Shopify/shopify-api-ruby/pull/656)
187
+ - Release new Endpoint `collection.products` and `collection.find()` in 2020-01 REST API version [#657](https://github.com/Shopify/shopify-api-ruby/pull/657)
188
+ - Enrich 4xx errors with error message from response body [#647](https://github.com/Shopify/shopify-api-ruby/pull/647)
189
+ - Make relative cursor based pagination work across page loads [#625](https://github.com/Shopify/shopify-api-ruby/pull/625)
190
+ - Small ruby compat fix [#623](https://github.com/Shopify/shopify-api-ruby/pull/623)
191
+ - Small consistency change [#621](https://github.com/Shopify/shopify-api-ruby/pull/621)
55
192
 
56
193
  ## Version 8.0.0
57
194
 
58
- * Api Version changes [#600](https://github.com/Shopify/shopify_api/pull/600)
59
- * Remove static Api Version definitions.
60
- * Introduces Api Version lookup modes: `:define_on_unknown` and `:raise_on_unknown`
61
- * See [migration notes](README.md#-breaking-change-notice-for-version-800-)
62
- * `Session.valid?` checks that api_version `is_a?(ApiVersion)` instead of `present?`
63
- * `ApiVersion::NullVersion` cannot be instantiated and now has a `match?` method [#615](https://github.com/Shopify/shopify_api/pull/615/files)
64
- * Introduces new Collection endpoint for looking up products without knowing collection type. Only available if ApiVersion is `:unstable` [#609](https://github.com/Shopify/shopify_api/pull/609)
195
+ - Api Version changes [#600](https://github.com/Shopify/shopify-api-ruby/pull/600)
196
+ - Remove static Api Version definitions.
197
+ - Introduces Api Version lookup modes: `:define_on_unknown` and `:raise_on_unknown`
198
+ - See [migration notes](README.md#-breaking-change-notice-for-version-800-)
199
+ - `Session.valid?` checks that api_version `is_a?(ApiVersion)` instead of `present?`
200
+ - `ApiVersion::NullVersion` cannot be instantiated and now has a `match?` method [#615](https://github.com/Shopify/shopify-api-ruby/pull/615/files)
201
+ - Introduces new Collection endpoint for looking up products without knowing collection type. Only available if ApiVersion is `:unstable` [#609](https://github.com/Shopify/shopify-api-ruby/pull/609)
65
202
 
66
203
  ## Version 7.1.0
67
204
 
68
- * Add 2019-10 to known API versions
69
- * Add support for cursor pagination [#594](https://github.com/Shopify/shopify_api/pull/594) and
70
- [#611](https://github.com/Shopify/shopify_api/pull/611)
71
- * `ShopifyAPI::Base.api_version` now defaults to `ShopifyAPI::ApiVersion::NullVersion` instead of `nil`. Making requests without first setting an ApiVersion raises `ApiVersionNotSetError` instead of `NoMethodError: undefined method 'construct_api_path' for nil:NilClass'` [#605](https://github.com/Shopify/shopify_api/pull/605)
205
+ - Add 2019-10 to known API versions
206
+ - Add support for cursor pagination [#594](https://github.com/Shopify/shopify-api-ruby/pull/594) and
207
+ [#611](https://github.com/Shopify/shopify-api-ruby/pull/611)
208
+ - `ShopifyAPI::Base.api_version` now defaults to `ShopifyAPI::ApiVersion::NullVersion` instead of `nil`. Making requests without first setting an ApiVersion raises `ApiVersionNotSetError` instead of `NoMethodError: undefined method 'construct_api_path' for nil:NilClass'` [#605](https://github.com/Shopify/shopify-api-ruby/pull/605)
72
209
 
73
210
  ## Version 7.0.2
74
211
 
75
- * Add 2019-07 to known API versions.
212
+ - Add 2019-07 to known API versions.
76
213
 
77
214
  ## Version 7.0.1
78
215
 
79
- * Support passing version string to `ShopifyAPI::Base.api_version` [#563](https://github.com/Shopify/shopify_api/pull/563)
216
+ - Support passing version string to `ShopifyAPI::Base.api_version` [#563](https://github.com/Shopify/shopify-api-ruby/pull/563)
80
217
 
81
218
  ## Version 7.0.0
82
219
 
83
- * Removed support for `ActiveResouce` < `4.1`.
84
- * Removed `ShopifyAPI::Oauth`.
85
- * Added api version support, See [migration
86
- notes](README.md#-breaking-change-notice-for-version-700-)
87
- * Changed `ShopifyAPI::Session` method signatures from positional to keyword
88
- arguments, See [migration notes](README.md#-breaking-change-notice-for-version-700-)
89
- * Add support for newer call limit header `X-Shopify-Shop-Api-Call-Limit`.
90
- * Removed all Ping resources.
220
+ - Removed support for `ActiveResouce` < `4.1`.
221
+ - Removed `ShopifyAPI::Oauth`.
222
+ - Added api version support, See [migration
223
+ notes](README.md#-breaking-change-notice-for-version-700-)
224
+ - Changed `ShopifyAPI::Session` method signatures from positional to keyword
225
+ arguments, See [migration notes](README.md#-breaking-change-notice-for-version-700-)
226
+ - Add support for newer call limit header `X-Shopify-Shop-Api-Call-Limit`.
227
+ - Removed all Ping resources.
91
228
 
92
229
  ## Version 6.0.0
93
230
 
94
- * Removed undocumented `protocol` and `port` options from `ShopifyAPI::Session`.
231
+ - Removed undocumented `protocol` and `port` options from `ShopifyAPI::Session`.
95
232
 
96
233
  ## Version 5.2.4
97
234
 
98
- * Added `currency` parameter to `ShopifyAPI::Order#capture`. This parameter is required for apps that belong to the
99
- multi-currency beta program.
235
+ - Added `currency` parameter to `ShopifyAPI::Order#capture`. This parameter is required for apps that belong to the
236
+ multi-currency beta program.
100
237
 
101
238
  ## Version 5.2.3
102
239
 
103
- * Update delivery confirmation resource to delivery confirmation details resource.
240
+ - Update delivery confirmation resource to delivery confirmation details resource.
104
241
 
105
242
  ## Version 5.2.2
106
243
 
107
- * Add delivery confirmation endpoint to Ping resources.
244
+ - Add delivery confirmation endpoint to Ping resources.
108
245
 
109
246
  ## Version 5.2.1
110
247
 
111
- * Log warning when Shopify indicates deprecated API call was performed
248
+ - Log warning when Shopify indicates deprecated API call was performed
112
249
 
113
250
  ## Version 5.2.0
114
251
 
115
- * Added `ShopifyAPI::Currency` to fetch list of supported currencies on a shop
116
- * Added `ShopifyAPI::TenderTransaction` to fetch list of transactions on a shop
117
- * Fixed bug with X-Shopify-Checkout-Version on ShopifyAPI::Checkout header being applied to all requests
252
+ - Added `ShopifyAPI::Currency` to fetch list of supported currencies on a shop
253
+ - Added `ShopifyAPI::TenderTransaction` to fetch list of transactions on a shop
254
+ - Fixed bug with X-Shopify-Checkout-Version on ShopifyAPI::Checkout header being applied to all requests
118
255
 
119
256
  ## Version 5.1.0
120
257
 
121
- * Added `ShopifyAPI::Publications`
122
- * Added `ShopifyAPI::ProductPublications`
123
- * Added `ShopifyAPI::CollectionPublications`
124
- * Added support for new collection products endpoint from `ShopifyAPI::Collection#products`
258
+ - Added `ShopifyAPI::Publications`
259
+ - Added `ShopifyAPI::ProductPublications`
260
+ - Added `ShopifyAPI::CollectionPublications`
261
+ - Added support for new collection products endpoint from `ShopifyAPI::Collection#products`
125
262
 
126
263
  ## Version 5.0.0
127
264
 
128
- * Breaking change: `ShopifyAPI::Checkout` now maps to the Checkout API, rather than the Abandoned Checkouts API
129
- * See the README for more details
130
- * Added `ShopifyAPI::AbandonedCheckout`
131
- * Added support for X-Shopify-Checkout-Version header on `ShopifyAPI::Checkout`
132
- * Added `ShopifyAPI::ShippingRate`
133
- * Added `ShopifyAPI::Payment`
134
- * Added support for `Checkout::complete` endpoint
135
- * Fixed session handling support for Rails 5.2.1
265
+ - Breaking change: `ShopifyAPI::Checkout` now maps to the Checkout API, rather than the Abandoned Checkouts API
266
+ - See the README for more details
267
+ - Added `ShopifyAPI::AbandonedCheckout`
268
+ - Added support for X-Shopify-Checkout-Version header on `ShopifyAPI::Checkout`
269
+ - Added `ShopifyAPI::ShippingRate`
270
+ - Added `ShopifyAPI::Payment`
271
+ - Added support for `Checkout::complete` endpoint
272
+ - Fixed session handling support for Rails 5.2.1
136
273
 
137
274
  ## Version 4.13.0
138
- * Added `ShopifyAPI::ApiPermission` resource for uninstalling an application
139
- * Added a deprecation warning to `ShopifyAPI::OAuth`
275
+
276
+ - Added `ShopifyAPI::ApiPermission` resource for uninstalling an application
277
+ - Added a deprecation warning to `ShopifyAPI::OAuth`
140
278
 
141
279
  ## Version 4.12.0
142
280
 
143
- * Added support for the GraphQL API
281
+ - Added support for the GraphQL API
144
282
 
145
283
  ## Version 4.11.0
146
284
 
147
- * Added `ShopifyAPI::InventoryItem`
148
- * Added `ShopifyAPI::InventoryLevel`
149
- * Added `#inventory_levels` method to `ShopifyAPI::Location`
285
+ - Added `ShopifyAPI::InventoryItem`
286
+ - Added `ShopifyAPI::InventoryLevel`
287
+ - Added `#inventory_levels` method to `ShopifyAPI::Location`
150
288
 
151
289
  ## Version 4.10.0
152
290
 
153
- * Added `ShopifyAPI::AccessScope`
291
+ - Added `ShopifyAPI::AccessScope`
154
292
 
155
293
  ## Version 4.9.1
156
294
 
157
- * Fix a bug with custom properties for orders
295
+ - Fix a bug with custom properties for orders
158
296
 
159
297
  ## Version 4.9.0
160
298
 
161
- * Added `ShopifyAPI::PriceRule`
162
- * Added `ShopifyAPI::DiscountCode`
299
+ - Added `ShopifyAPI::PriceRule`
300
+ - Added `ShopifyAPI::DiscountCode`
163
301
 
164
302
  ## Version 4.8.0
165
303
 
166
- * Added `add_engagements` to `ShopifyAPI::MarketingEvent`
304
+ - Added `add_engagements` to `ShopifyAPI::MarketingEvent`
167
305
 
168
306
  ## Version 4.7.1
169
307
 
170
- * Added support for URL parameter (e.g. limit & page) to ShopifyAPI::Metafields
171
- * Added support for URL parameter (e.g. limit & page) to metafield operator in ShopifyAPI::Shop
308
+ - Added support for URL parameter (e.g. limit & page) to ShopifyAPI::Metafields
309
+ - Added support for URL parameter (e.g. limit & page) to metafield operator in ShopifyAPI::Shop
172
310
 
173
311
  ## Version 4.7.0
174
312
 
175
- * Removed the mandatory `application_id` parameter from `ShopifyAPI::ProductListing` and `ShopifyAPI::CollectionListing`
176
- * Fixed a bug related to the non-standard primary key for `ShopifyAPI::ProductListing` and `ShopifyAPI::CollectionListing`
313
+ - Removed the mandatory `application_id` parameter from `ShopifyAPI::ProductListing` and `ShopifyAPI::CollectionListing`
314
+ - Fixed a bug related to the non-standard primary key for `ShopifyAPI::ProductListing` and `ShopifyAPI::CollectionListing`
177
315
 
178
316
  ## Version 4.6.0
179
317
 
180
- * Added `ShopifyAPI::Report`
318
+ - Added `ShopifyAPI::Report`
181
319
 
182
320
  ## Version 4.5.0
183
321
 
184
- * Added `ShopifyAPI::MarketingEvent`
322
+ - Added `ShopifyAPI::MarketingEvent`
185
323
 
186
324
  ## Version 4.4.0
187
325
 
188
- * Added `ShopifyAPI::CustomerInvite`
189
- * Support for Customer#send_invite endpoint
326
+ - Added `ShopifyAPI::CustomerInvite`
327
+ - Support for Customer#send_invite endpoint
190
328
 
191
329
  ## Version 4.3.8
192
330
 
193
- * Added `ShopifyAPI::ResourceFeedback`
331
+ - Added `ShopifyAPI::ResourceFeedback`
194
332
 
195
333
  ## Version 4.3.7
196
334
 
197
- * Added support for `complete` in `ShopifyAPI::DraftOrder`
335
+ - Added support for `complete` in `ShopifyAPI::DraftOrder`
198
336
 
199
337
  ## Version 4.3.6
200
338
 
201
- * Fixed the `customer_saved_search_id` param in `ShopifyAPI::CustomerSavedSearch#customers`.
339
+ - Fixed the `customer_saved_search_id` param in `ShopifyAPI::CustomerSavedSearch#customers`.
202
340
 
203
341
  ## Version 4.3.5
204
342
 
205
- * Added support for online mode access tokens, token expiry, and associated_user information.
206
- * Added `ShopifyAPI::DraftOrder`
207
- * Added `ShopifyAPI::DraftOrderInvoice`
343
+ - Added support for online mode access tokens, token expiry, and associated_user information.
344
+ - Added `ShopifyAPI::DraftOrder`
345
+ - Added `ShopifyAPI::DraftOrderInvoice`
208
346
 
209
347
  ## Version 4.3.4
210
348
 
211
- * Added `ShopifyAPI::ProductListing`
212
- * Added `ShopifyAPI::CollectionListing`
349
+ - Added `ShopifyAPI::ProductListing`
350
+ - Added `ShopifyAPI::CollectionListing`
213
351
 
214
352
  ## Version 4.3.3
215
353
 
216
- * Added `ShopifyAPI::StorefrontAccessToken`
354
+ - Added `ShopifyAPI::StorefrontAccessToken`
217
355
 
218
356
  ## Version 4.3.2
219
357
 
220
- * Relax Ruby version requirement to >= `2.0`
358
+ - Relax Ruby version requirement to >= `2.0`
221
359
 
222
360
  ## Version 4.3.1
223
361
 
224
- * Support for ShopifyAPI::ApplicationCredit
362
+ - Support for ShopifyAPI::ApplicationCredit
225
363
 
226
364
  ## Version 4.3.0
227
365
 
228
- * Require Ruby >= `2.3.0`
229
- * Use inheritance instead of the deprecated Rails `Module#alias_method_chain`
366
+ - Require Ruby >= `2.3.0`
367
+ - Use inheritance instead of the deprecated Rails `Module#alias_method_chain`
230
368
 
231
369
  ## Version 4.2.2
232
370
 
233
- * Support for AccessToken#delegate endpoint
371
+ - Support for AccessToken#delegate endpoint
234
372
 
235
373
  ## Version 4.2.1
236
374
 
237
- * Support for Users and Discounts (Shopify Plus only)
238
- * Adds Customer#account_activation_url method
239
- * Adds ability to open a fulfillment.
375
+ - Support for Users and Discounts (Shopify Plus only)
376
+ - Adds Customer#account_activation_url method
377
+ - Adds ability to open a fulfillment.
240
378
 
241
379
  ## Version 4.2.0
242
380
 
243
- * Threadsafety is now compatible with the latest ActiveResource master
381
+ - Threadsafety is now compatible with the latest ActiveResource master
244
382
 
245
383
  ## Version 4.1.1
246
384
 
247
- * Added explicit 90 second timeout to `ShopifyAPI::Base`
385
+ - Added explicit 90 second timeout to `ShopifyAPI::Base`
248
386
 
249
387
  ## Version 4.0.7
250
388
 
251
- * Added `ShippingAPI::ShippingZone`
389
+ - Added `ShippingAPI::ShippingZone`
252
390
 
253
391
  ## Version 4.0.6
254
392
 
255
- * Replaced `cancelled` with `expired` in `ShopifyAPI::ApplicationCharge`
393
+ - Replaced `cancelled` with `expired` in `ShopifyAPI::ApplicationCharge`
256
394
 
257
395
  ## Version 4.0.5
258
396
 
259
- * Added `pending`, `cancelled`, `accepted`, `declined` helper methods to `ShopifyAPI::ApplicationCharge`
397
+ - Added `pending`, `cancelled`, `accepted`, `declined` helper methods to `ShopifyAPI::ApplicationCharge`
260
398
 
261
399
  ## Version 4.0.4
262
400
 
263
- * Fixed truthiness for order cancellations. Requests are now sent in the request body and as JSON
401
+ - Fixed truthiness for order cancellations. Requests are now sent in the request body and as JSON
264
402
 
265
403
  ## Version 4.0.3
266
404
 
267
- * Fixed hmac signature validation for params with delimiters (`&`, `=` or `%`)
405
+ - Fixed hmac signature validation for params with delimiters (`&`, `=` or `%`)
268
406
 
269
407
  ## Version 4.0.2
270
408
 
271
- * Verify that the shop domain is a subdomain of .myshopify.com which creating the session
409
+ - Verify that the shop domain is a subdomain of .myshopify.com which creating the session
272
410
 
273
411
  ## Version 4.0.1
274
412
 
275
- * Added `ShopifyAPI::OAuth.revoke` for easy token revocation.
413
+ - Added `ShopifyAPI::OAuth.revoke` for easy token revocation.
276
414
 
277
415
  ## Version 3.2.6
278
416
 
279
- * Fixed CustomerSavedSearch#customers method to now correctly return only relevant customers
417
+ - Fixed CustomerSavedSearch#customers method to now correctly return only relevant customers
280
418
 
281
419
  ## Version 3.2.5
282
420
 
283
- * More useful error messages for activating nil sessions
284
- * Add tests for commonly deleted objects, and metafield tests, fix naming error in order_risk_test.rb
421
+ - More useful error messages for activating nil sessions
422
+ - Add tests for commonly deleted objects, and metafield tests, fix naming error in order_risk_test.rb
285
423
 
286
424
  ## Version 3.2.4
287
425
 
288
- * No API changes
426
+ - No API changes
289
427
 
290
428
  ## Version 3.2.3
291
429
 
292
- * Added pry to the CLI
430
+ - Added pry to the CLI
293
431
 
294
432
  ## Version 3.2.2
295
433
 
296
- * Temporary fix for the CLI
297
- * Add a specific exception for signature validation failures
434
+ - Temporary fix for the CLI
435
+ - Add a specific exception for signature validation failures
298
436
 
299
437
  ## Version 3.2.1
300
438
 
301
- * Added CarrierService resource
302
- * Added optionally using threadsafe ActiveResource (see readme)
303
- * Fixed bug in validate_signature
439
+ - Added CarrierService resource
440
+ - Added optionally using threadsafe ActiveResource (see readme)
441
+ - Fixed bug in validate_signature
304
442
 
305
443
  ## Version 3.2.0
306
444
 
307
- * in Session::request_token params is no longer optional, you must pass all the params and the method will now extract the code
308
- * Fixed JSON errors handling (#103)
309
- * Fixed compatibility with Ruby 2.1.x (#83)
310
- * Fixed getting parent ID from nested resources like Variants (#44)
311
- * Cleaned up compatibility with ActiveResource 4.0.x
312
- * Added OrderRisk resource
313
- * Added FulfillmentService resource
314
- * Removed discontinued ProductSearchEngine resource
315
- * Added convenience method Customer#search (#45)
445
+ - in Session::request_token params is no longer optional, you must pass all the params and the method will now extract the code
446
+ - Fixed JSON errors handling (#103)
447
+ - Fixed compatibility with Ruby 2.1.x (#83)
448
+ - Fixed getting parent ID from nested resources like Variants (#44)
449
+ - Cleaned up compatibility with ActiveResource 4.0.x
450
+ - Added OrderRisk resource
451
+ - Added FulfillmentService resource
452
+ - Removed discontinued ProductSearchEngine resource
453
+ - Added convenience method Customer#search (#45)
316
454
 
317
455
  ## Version 3.1.8
318
456
 
319
- * Expose `index` and `show` actions of `Location`
320
- * Added create_permission_url and request_token helper methods
321
- * Edited the readme to better describe the getting started procedure
457
+ - Expose `index` and `show` actions of `Location`
458
+ - Added create_permission_url and request_token helper methods
459
+ - Edited the readme to better describe the getting started procedure
322
460
 
323
461
  ## Version 3.1.7
324
462
 
325
- * Expose `authors` and `tags` action on Article
463
+ - Expose `authors` and `tags` action on Article
326
464
 
327
465
  ## Version 3.1.6
328
466
 
329
- * Add LineItem::Property resource
467
+ - Add LineItem::Property resource
330
468
 
331
469
  ## Version 3.1.5
332
470
 
333
- * Expose `orders` action on Customer
471
+ - Expose `orders` action on Customer
334
472
 
335
473
  ## Version 3.1.3
336
474
 
337
- * Expose `complete` action on Fulfillment
475
+ - Expose `complete` action on Fulfillment
338
476
 
339
477
  ## Version 3.1.2
340
478
 
341
- * Includes port in domain URI (when other than http/80 or https/443)
342
- * Adds access to CustomerSavedSearch
343
- * Adds resources: Order::DefaultAddress, Client::ClientDetails, Announcement
344
- * Allows access to Articles without a blog_id
345
- * Moves encode and as_json overrides to ShopifyAPI::Base scope
346
- * Exposes the `order` action in SmartCollection for general use
479
+ - Includes port in domain URI (when other than http/80 or https/443)
480
+ - Adds access to CustomerSavedSearch
481
+ - Adds resources: Order::DefaultAddress, Client::ClientDetails, Announcement
482
+ - Allows access to Articles without a blog_id
483
+ - Moves encode and as_json overrides to ShopifyAPI::Base scope
484
+ - Exposes the `order` action in SmartCollection for general use
347
485
 
348
486
  ## Version 3.0.3
349
487
 
350
- * Add a `customers` helper method to the CustomerGroup resource
488
+ - Add a `customers` helper method to the CustomerGroup resource
351
489
 
352
490
  ## Version 3.0.2
353
491
 
354
- * Brevity in require statements
492
+ - Brevity in require statements
355
493
 
356
494
  ## Version 3.0.1
357
495
 
358
- * Fix saving nested resources in ActiveResource 3.1+
496
+ - Fix saving nested resources in ActiveResource 3.1+
359
497
 
360
498
  ## Version 3.0.0
361
499
 
362
- * Added support for OAuth Authentication
363
- * Removal of support for Legacy Authentication
364
- * Added Cart resource
500
+ - Added support for OAuth Authentication
501
+ - Removal of support for Legacy Authentication
502
+ - Added Cart resource
365
503
 
366
504
  ## Version 2.3.0
367
505
 
368
- * Fix double root bug with ActiveSupport 3.2.0
369
- * Add metafields methods on Customer resource
370
- * Fix prefix_options on assets returned from Asset.find
506
+ - Fix double root bug with ActiveSupport 3.2.0
507
+ - Add metafields methods on Customer resource
508
+ - Fix prefix_options on assets returned from Asset.find
371
509
 
372
510
  ## Version 2.2.0
373
511
 
374
- * Fix issues with resources that have both direct and namespaced routes
375
- * Added detailed logger to help with debugging ActiveResource
376
- requests/responses
377
- * Add fulfillment#cancel
512
+ - Fix issues with resources that have both direct and namespaced routes
513
+ - Added detailed logger to help with debugging ActiveResource
514
+ requests/responses
515
+ - Add fulfillment#cancel
378
516
 
379
517
  ## Version 2.1.0
380
518
 
381
- * Fix JSON errors handling
382
- * Remove global limit from ShopifyAPI::Limits
519
+ - Fix JSON errors handling
520
+ - Remove global limit from ShopifyAPI::Limits
383
521
 
384
522
  ## Version 2.0.0
385
523
 
386
- * Bump to 2.0.0 as this release breaks Rails 2 compatibility; we're now officially only supporting Rails 3. Rails 2 devs can follow the rails2 tag in this repo to know where we broke off
387
- * Refactored resources into their own source files
388
- * Added API limits functionality
389
- * Patched ActiveResource issue with roots in JSON
390
- * Added pending, cancelled, accepted, and declined convenience methods to ShopifyAPI::RecurringApplicationCharge
391
- * ShopifyAPI::Session#temp now available as a convenience method to support temporarily switching to other shops when making calls
392
- * Fixes to `shopify console` CLI tool
524
+ - Bump to 2.0.0 as this release breaks Rails 2 compatibility; we're now officially only supporting Rails 3. Rails 2 devs can follow the rails2 tag in this repo to know where we broke off
525
+ - Refactored resources into their own source files
526
+ - Added API limits functionality
527
+ - Patched ActiveResource issue with roots in JSON
528
+ - Added pending, cancelled, accepted, and declined convenience methods to ShopifyAPI::RecurringApplicationCharge
529
+ - ShopifyAPI::Session#temp now available as a convenience method to support temporarily switching to other shops when making calls
530
+ - Fixes to `shopify console` CLI tool
393
531
 
394
532
  ## Version 1.2.5
395
533
 
396
- * Fix for Article#comments
534
+ - Fix for Article#comments
397
535
 
398
536
  ## Version 1.2.4
399
537
 
400
- * Added Article#comments
401
- * Added Order#cancel
402
- * Added Comment#restore, #not_spam
538
+ - Added Article#comments
539
+ - Added Order#cancel
540
+ - Added Comment#restore, #not_spam
403
541
 
404
542
  ## Version 1.2.3
405
543
 
406
- * Added Customer, CustomerGroup support
544
+ - Added Customer, CustomerGroup support
407
545
 
408
546
  ## Version 1.2.2
409
547
 
410
- * Added ScriptTag support
548
+ - Added ScriptTag support
411
549
 
412
550
  ## Version 1.2.1
413
551
 
414
- * Allow abbreviated names for all commands like rails does, e.g. 'shopify c' instead of 'shopify console'
415
- * Fix Variant to support accessing both nested variants with a product prefix as well as top level variants directly
416
- * Add 'grande' to supported product image size variants
552
+ - Allow abbreviated names for all commands like rails does, e.g. 'shopify c' instead of 'shopify console'
553
+ - Fix Variant to support accessing both nested variants with a product prefix as well as top level variants directly
554
+ - Add 'grande' to supported product image size variants
417
555
 
418
556
  ## Version 1.2.0
419
557
 
420
- * Command-line interface
421
- * Allow custom params when fetching a single Asset
558
+ - Command-line interface
559
+ - Allow custom params when fetching a single Asset
422
560
 
423
561
  ## Version 1.1.3 (November 4, 2010)
424
562
 
425
- * Add ProductSearchEngines resource
563
+ - Add ProductSearchEngines resource
426
564
 
427
565
  ## Version 1.1.2 (October 20, 2010)
428
566
 
429
- * Fix for users of ActiveResource 3.x
567
+ - Fix for users of ActiveResource 3.x
430
568
 
431
569
  ## Version 1.1.1 (October 5, 2010)
432
570
 
433
- * Remove hard coded xml formatting in API calls
434
- * Remove jeweler stuff
435
- * Ruby 1.9 encoding fix
571
+ - Remove hard coded xml formatting in API calls
572
+ - Remove jeweler stuff
573
+ - Ruby 1.9 encoding fix
436
574
 
437
575
  ## Version 1.1.0 (September 24, 2010)
438
576
 
439
- * Add new Events API for Shop, Order, Product, CustomCollection, SmartCollection, Page, Blog and Article
440
- * Add new 'compact' product image size variant
441
- * Rails 3 fix: attribute_accessors has to be explicitly included since activesupport 3.0.0
577
+ - Add new Events API for Shop, Order, Product, CustomCollection, SmartCollection, Page, Blog and Article
578
+ - Add new 'compact' product image size variant
579
+ - Rails 3 fix: attribute_accessors has to be explicitly included since activesupport 3.0.0
442
580
 
443
581
  ## Version 1.0.6
444
582
 
445
- * Add metafields
446
- * Add latest changes from Shopify including asset support, token validation and a common base class
583
+ - Add metafields
584
+ - Add latest changes from Shopify including asset support, token validation and a common base class
447
585
 
448
586
  ## Version 1.0.0
449
587
 
450
- * extracting ShopifyAPI from Shopify into Gem
588
+ - extracting ShopifyAPI from Shopify into Gem