shopify_api 9.0.4 → 11.0.1

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