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