shopify_api 14.7.0 → 14.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/Gemfile.lock +1 -1
  4. data/docs/usage/rest.md +2 -0
  5. data/lib/shopify_api/admin_versions.rb +2 -1
  6. data/lib/shopify_api/clients/rest/admin.rb +5 -0
  7. data/lib/shopify_api/context.rb +10 -1
  8. data/lib/shopify_api/errors/disabled_resource_error.rb +8 -0
  9. data/lib/shopify_api/rest/resources/2025_01/abandoned_checkout.rb +194 -0
  10. data/lib/shopify_api/rest/resources/2025_01/access_scope.rb +62 -0
  11. data/lib/shopify_api/rest/resources/2025_01/apple_pay_certificate.rb +109 -0
  12. data/lib/shopify_api/rest/resources/2025_01/application_charge.rb +113 -0
  13. data/lib/shopify_api/rest/resources/2025_01/application_credit.rb +95 -0
  14. data/lib/shopify_api/rest/resources/2025_01/article.rb +269 -0
  15. data/lib/shopify_api/rest/resources/2025_01/asset.rb +122 -0
  16. data/lib/shopify_api/rest/resources/2025_01/assigned_fulfillment_order.rb +92 -0
  17. data/lib/shopify_api/rest/resources/2025_01/balance.rb +58 -0
  18. data/lib/shopify_api/rest/resources/2025_01/blog.rb +166 -0
  19. data/lib/shopify_api/rest/resources/2025_01/cancellation_request.rb +87 -0
  20. data/lib/shopify_api/rest/resources/2025_01/carrier_service.rb +120 -0
  21. data/lib/shopify_api/rest/resources/2025_01/checkout.rb +213 -0
  22. data/lib/shopify_api/rest/resources/2025_01/collect.rb +146 -0
  23. data/lib/shopify_api/rest/resources/2025_01/collection.rb +114 -0
  24. data/lib/shopify_api/rest/resources/2025_01/collection_listing.rb +159 -0
  25. data/lib/shopify_api/rest/resources/2025_01/comment.rb +287 -0
  26. data/lib/shopify_api/rest/resources/2025_01/country.rb +141 -0
  27. data/lib/shopify_api/rest/resources/2025_01/currency.rb +61 -0
  28. data/lib/shopify_api/rest/resources/2025_01/custom_collection.rb +191 -0
  29. data/lib/shopify_api/rest/resources/2025_01/customer.rb +328 -0
  30. data/lib/shopify_api/rest/resources/2025_01/customer_address.rb +215 -0
  31. data/lib/shopify_api/rest/resources/2025_01/deprecated_api_call.rb +61 -0
  32. data/lib/shopify_api/rest/resources/2025_01/discount_code.rb +226 -0
  33. data/lib/shopify_api/rest/resources/2025_01/dispute.rb +115 -0
  34. data/lib/shopify_api/rest/resources/2025_01/dispute_evidence.rb +121 -0
  35. data/lib/shopify_api/rest/resources/2025_01/dispute_file_upload.rb +85 -0
  36. data/lib/shopify_api/rest/resources/2025_01/draft_order.rb +279 -0
  37. data/lib/shopify_api/rest/resources/2025_01/event.rb +152 -0
  38. data/lib/shopify_api/rest/resources/2025_01/fulfillment.rb +235 -0
  39. data/lib/shopify_api/rest/resources/2025_01/fulfillment_event.rb +167 -0
  40. data/lib/shopify_api/rest/resources/2025_01/fulfillment_order.rb +326 -0
  41. data/lib/shopify_api/rest/resources/2025_01/fulfillment_request.rb +116 -0
  42. data/lib/shopify_api/rest/resources/2025_01/fulfillment_service.rb +134 -0
  43. data/lib/shopify_api/rest/resources/2025_01/gift_card.rb +222 -0
  44. data/lib/shopify_api/rest/resources/2025_01/gift_card_adjustment.rb +122 -0
  45. data/lib/shopify_api/rest/resources/2025_01/image.rb +161 -0
  46. data/lib/shopify_api/rest/resources/2025_01/inventory_item.rb +112 -0
  47. data/lib/shopify_api/rest/resources/2025_01/inventory_level.rb +183 -0
  48. data/lib/shopify_api/rest/resources/2025_01/location.rb +171 -0
  49. data/lib/shopify_api/rest/resources/2025_01/locations_for_move.rb +60 -0
  50. data/lib/shopify_api/rest/resources/2025_01/marketing_event.rb +213 -0
  51. data/lib/shopify_api/rest/resources/2025_01/metafield.rb +348 -0
  52. data/lib/shopify_api/rest/resources/2025_01/mobile_platform_application.rb +120 -0
  53. data/lib/shopify_api/rest/resources/2025_01/order.rb +503 -0
  54. data/lib/shopify_api/rest/resources/2025_01/order_risk.rb +148 -0
  55. data/lib/shopify_api/rest/resources/2025_01/page.rb +198 -0
  56. data/lib/shopify_api/rest/resources/2025_01/payment.rb +98 -0
  57. data/lib/shopify_api/rest/resources/2025_01/payment_gateway.rb +147 -0
  58. data/lib/shopify_api/rest/resources/2025_01/payment_transaction.rb +117 -0
  59. data/lib/shopify_api/rest/resources/2025_01/payout.rb +101 -0
  60. data/lib/shopify_api/rest/resources/2025_01/policy.rb +73 -0
  61. data/lib/shopify_api/rest/resources/2025_01/price_rule.rb +227 -0
  62. data/lib/shopify_api/rest/resources/2025_01/product.rb +227 -0
  63. data/lib/shopify_api/rest/resources/2025_01/product_listing.rb +200 -0
  64. data/lib/shopify_api/rest/resources/2025_01/product_resource_feedback.rb +92 -0
  65. data/lib/shopify_api/rest/resources/2025_01/province.rb +136 -0
  66. data/lib/shopify_api/rest/resources/2025_01/recurring_application_charge.rb +184 -0
  67. data/lib/shopify_api/rest/resources/2025_01/redirect.rb +143 -0
  68. data/lib/shopify_api/rest/resources/2025_01/refund.rb +158 -0
  69. data/lib/shopify_api/rest/resources/2025_01/resource_feedback.rb +77 -0
  70. data/lib/shopify_api/rest/resources/2025_01/script_tag.rb +159 -0
  71. data/lib/shopify_api/rest/resources/2025_01/shipping_zone.rb +87 -0
  72. data/lib/shopify_api/rest/resources/2025_01/shop.rb +231 -0
  73. data/lib/shopify_api/rest/resources/2025_01/smart_collection.rb +220 -0
  74. data/lib/shopify_api/rest/resources/2025_01/storefront_access_token.rb +91 -0
  75. data/lib/shopify_api/rest/resources/2025_01/tender_transaction.rb +97 -0
  76. data/lib/shopify_api/rest/resources/2025_01/theme.rb +127 -0
  77. data/lib/shopify_api/rest/resources/2025_01/transaction.rb +194 -0
  78. data/lib/shopify_api/rest/resources/2025_01/usage_charge.rb +106 -0
  79. data/lib/shopify_api/rest/resources/2025_01/user.rb +142 -0
  80. data/lib/shopify_api/rest/resources/2025_01/variant.rb +212 -0
  81. data/lib/shopify_api/rest/resources/2025_01/webhook.rb +173 -0
  82. data/lib/shopify_api/version.rb +1 -1
  83. metadata +77 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2594b938c059a24c4f17f5a435612a01fe880eb4ab5096f25ac0d0513129c71c
4
- data.tar.gz: 3b584fffb9213fefaf5f1a603c76de8292ecb30e7434ccc63af7265ab3377987
3
+ metadata.gz: 5a405ff33cd5f3d90d6cc845f1108b0bd14aada9bacb25f1889ca66367ea9b6f
4
+ data.tar.gz: e88aa78cd905c93b28bbf32b523fe0d45497585e5c2f21fb9967f052165cb6fc
5
5
  SHA512:
6
- metadata.gz: 5e565a15428752c7838332f42d02c6aad73fe837dcc1c91774ed2cd523c81b6cd440e82dc0f2d8d65494a0d7715bb75f8533a3105304d2a510b1cd104690b1f2
7
- data.tar.gz: e3625bc9e1e17ef36162fcc8c416478dbdf9f8b7bc868fb228d07ba4c2878bedb72738765e82737da9cd59b4c5d7197ba81c15d9013a38f13987e5ba3fbdf93d
6
+ metadata.gz: 1564080f210d17677a9d00eeb176a5ac37e45b3b02ed5cc5616948d35ea9821ec32614de7f229f93e39e76aca0257d107408bb2ab569451ef4cc36fc043dc194
7
+ data.tar.gz: d853bdf2950a2ad3da7835057fc4c22329ed2f52a0654f5da9512f13bf26f737866b0f8608190e5106586cdc236b86444996f44fca7f485ee9dd82d3f80f1209
data/CHANGELOG.md CHANGED
@@ -3,11 +3,16 @@
3
3
  Note: For changes to the API, see https://shopify.dev/changelog?filter=api
4
4
  ## Unreleased
5
5
 
6
+ ## 14.8.0
7
+
8
+ - [#1355](https://github.com/Shopify/shopify-api-ruby/pull/1355) Add support for 2025-01 API version
9
+
6
10
  ## 14.7.0
7
11
 
8
12
  - [#1347](https://github.com/Shopify/shopify-api-ruby/pull/1347) Extend webhook registration to support filters
9
13
  - [#1344](https://github.com/Shopify/shopify-api-ruby/pull/1344) Allow ShopifyAPI::Webhooks::Registry to update a webhook when fields or metafield_namespaces are changed.
10
14
  - [#1343](https://github.com/Shopify/shopify-api-ruby/pull/1343) Make ShopifyAPI::Context::scope parameter optional. `scope` defaults to empty list `[]`.
15
+ - [#1348](https://github.com/Shopify/shopify-api-ruby/pull/1348) Add config option that will disable the REST API client and REST resources. New apps should use the GraphQL Admin API
11
16
 
12
17
  ## 14.6.0
13
18
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- shopify_api (14.7.0)
4
+ shopify_api (14.8.0)
5
5
  activesupport
6
6
  concurrent-ruby
7
7
  hash_diff
data/docs/usage/rest.md CHANGED
@@ -1,4 +1,6 @@
1
1
  # Make a REST API call
2
+ > [!WARNING]
3
+ > The Admin REST API has been deprecated. New apps should use the GraphQL Admin API. For more information see [All in on GraphQL](https://www.shopify.com/ca/partners/blog/all-in-on-graphql). New apps will be created with the config option `rest_disabled: true`. This will raise a `ShopifyAPI::Errors::DisabledResourceError` if you try to use the REST API.
2
4
 
3
5
  Once OAuth is complete, we can use `ShopifyAPI`'s REST library to make authenticated API calls to the Shopify Admin API.
4
6
  #### Required Session
@@ -5,6 +5,7 @@ module ShopifyAPI
5
5
  module AdminVersions
6
6
  SUPPORTED_ADMIN_VERSIONS = T.let([
7
7
  "unstable",
8
+ "2025-01",
8
9
  "2024-10",
9
10
  "2024-07",
10
11
  "2024-04",
@@ -19,7 +20,7 @@ module ShopifyAPI
19
20
  "2022-01",
20
21
  ], T::Array[String])
21
22
 
22
- LATEST_SUPPORTED_ADMIN_VERSION = T.let("2024-10", String)
23
+ LATEST_SUPPORTED_ADMIN_VERSION = T.let("2025-01", String)
23
24
  end
24
25
 
25
26
  SUPPORTED_ADMIN_VERSIONS = ShopifyAPI::AdminVersions::SUPPORTED_ADMIN_VERSIONS
@@ -9,6 +9,11 @@ module ShopifyAPI
9
9
 
10
10
  sig { params(session: T.nilable(Auth::Session), api_version: T.nilable(String)).void }
11
11
  def initialize(session: nil, api_version: nil)
12
+ if Context.rest_disabled
13
+ raise Errors::DisabledResourceError,
14
+ "The Admin REST API has been deprecated. Please use the GraphQL Admin API. For more information see https://www.shopify.com/ca/partners/blog/all-in-on-graphql"
15
+ end
16
+
12
17
  @api_version = T.let(api_version || Context.api_version, String)
13
18
  if api_version
14
19
  if api_version == Context.api_version
@@ -22,6 +22,7 @@ module ShopifyAPI
22
22
  @user_agent_prefix = T.let(nil, T.nilable(String))
23
23
  @old_api_secret_key = T.let(nil, T.nilable(String))
24
24
  @response_as_struct = T.let(false, T.nilable(T::Boolean))
25
+ @rest_disabled = T.let(false, T.nilable(T::Boolean))
25
26
 
26
27
  @rest_resource_loader = T.let(nil, T.nilable(Zeitwerk::Loader))
27
28
 
@@ -45,6 +46,7 @@ module ShopifyAPI
45
46
  old_api_secret_key: T.nilable(String),
46
47
  api_host: T.nilable(String),
47
48
  response_as_struct: T.nilable(T::Boolean),
49
+ rest_disabled: T.nilable(T::Boolean),
48
50
  ).void
49
51
  end
50
52
  def setup(
@@ -62,7 +64,8 @@ module ShopifyAPI
62
64
  user_agent_prefix: nil,
63
65
  old_api_secret_key: nil,
64
66
  api_host: nil,
65
- response_as_struct: false
67
+ response_as_struct: false,
68
+ rest_disabled: false
66
69
  )
67
70
  unless ShopifyAPI::AdminVersions::SUPPORTED_ADMIN_VERSIONS.include?(api_version)
68
71
  raise Errors::UnsupportedVersionError,
@@ -82,6 +85,7 @@ module ShopifyAPI
82
85
  @user_agent_prefix = user_agent_prefix
83
86
  @old_api_secret_key = old_api_secret_key
84
87
  @response_as_struct = response_as_struct
88
+ @rest_disabled = rest_disabled
85
89
  @log_level = if valid_log_level?(log_level)
86
90
  log_level.to_sym
87
91
  else
@@ -178,6 +182,11 @@ module ShopifyAPI
178
182
  T.must(URI(T.must(host)).host)
179
183
  end
180
184
 
185
+ sig { returns(T::Boolean) }
186
+ def rest_disabled
187
+ T.must(@rest_disabled)
188
+ end
189
+
181
190
  private
182
191
 
183
192
  sig { params(log_level: T.any(Symbol, String)).returns(T::Boolean) }
@@ -0,0 +1,8 @@
1
+ # typed: strict
2
+ # frozen_string_literal: true
3
+
4
+ module ShopifyAPI
5
+ module Errors
6
+ class DisabledResourceError < StandardError; end
7
+ end
8
+ end
@@ -0,0 +1,194 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+ ########################################################################################################################
5
+ # This file is auto-generated. If you have an issue, please create a GitHub issue. #
6
+ ########################################################################################################################
7
+
8
+ module ShopifyAPI
9
+ class AbandonedCheckout < ShopifyAPI::Rest::Base
10
+ extend T::Sig
11
+
12
+ @prev_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
13
+ @next_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
14
+
15
+ @api_call_limit = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
16
+ @retry_request_after = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
17
+
18
+ sig { params(session: T.nilable(ShopifyAPI::Auth::Session), from_hash: T.nilable(T::Hash[T.untyped, T.untyped])).void }
19
+ def initialize(session: ShopifyAPI::Context.active_session, from_hash: nil)
20
+
21
+ @abandoned_checkout_url = T.let(nil, T.nilable(String))
22
+ @billing_address = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
23
+ @buyer_accepts_marketing = T.let(nil, T.nilable(T::Boolean))
24
+ @buyer_accepts_sms_marketing = T.let(nil, T.nilable(T::Boolean))
25
+ @cart_token = T.let(nil, T.nilable(String))
26
+ @closed_at = T.let(nil, T.nilable(String))
27
+ @completed_at = T.let(nil, T.nilable(String))
28
+ @created_at = T.let(nil, T.nilable(String))
29
+ @currency = T.let(nil, T.nilable(Currency))
30
+ @customer = T.let(nil, T.nilable(Customer))
31
+ @customer_locale = T.let(nil, T.nilable(String))
32
+ @device_id = T.let(nil, T.nilable(Integer))
33
+ @discount_codes = T.let(nil, T.nilable(T::Array[T.untyped]))
34
+ @email = T.let(nil, T.nilable(String))
35
+ @gateway = T.let(nil, T.nilable(String))
36
+ @id = T.let(nil, T.nilable(Integer))
37
+ @landing_site = T.let(nil, T.nilable(String))
38
+ @line_items = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
39
+ @location_id = T.let(nil, T.nilable(Integer))
40
+ @note = T.let(nil, T.nilable(String))
41
+ @phone = T.let(nil, T.nilable(String))
42
+ @presentment_currency = T.let(nil, T.nilable(String))
43
+ @referring_site = T.let(nil, T.nilable(String))
44
+ @shipping_address = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
45
+ @shipping_lines = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
46
+ @sms_marketing_phone = T.let(nil, T.nilable(String))
47
+ @source_name = T.let(nil, T.nilable(String))
48
+ @subtotal_price = T.let(nil, T.nilable(String))
49
+ @tax_lines = T.let(nil, T.nilable(T::Hash[T.untyped, T.untyped]))
50
+ @taxes_included = T.let(nil, T.nilable(T::Boolean))
51
+ @token = T.let(nil, T.nilable(String))
52
+ @total_discounts = T.let(nil, T.nilable(String))
53
+ @total_duties = T.let(nil, T.nilable(String))
54
+ @total_line_items_price = T.let(nil, T.nilable(String))
55
+ @total_price = T.let(nil, T.nilable(String))
56
+ @total_tax = T.let(nil, T.nilable(String))
57
+ @total_weight = T.let(nil, T.nilable(Integer))
58
+ @updated_at = T.let(nil, T.nilable(String))
59
+ @user_id = T.let(nil, T.nilable(Integer))
60
+
61
+ super(session: session, from_hash: from_hash)
62
+ end
63
+
64
+ @has_one = T.let({
65
+ currency: Currency,
66
+ customer: Customer
67
+ }, T::Hash[Symbol, Class])
68
+ @has_many = T.let({
69
+ discount_codes: DiscountCode
70
+ }, T::Hash[Symbol, Class])
71
+ @paths = T.let([
72
+ {http_method: :get, operation: :checkouts, ids: [], path: "checkouts.json"},
73
+ {http_method: :get, operation: :checkouts, ids: [], path: "checkouts.json"}
74
+ ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
75
+
76
+ sig { returns(T.nilable(String)) }
77
+ attr_reader :abandoned_checkout_url
78
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
79
+ attr_reader :billing_address
80
+ sig { returns(T.nilable(T::Boolean)) }
81
+ attr_reader :buyer_accepts_marketing
82
+ sig { returns(T.nilable(T::Boolean)) }
83
+ attr_reader :buyer_accepts_sms_marketing
84
+ sig { returns(T.nilable(String)) }
85
+ attr_reader :cart_token
86
+ sig { returns(T.nilable(String)) }
87
+ attr_reader :closed_at
88
+ sig { returns(T.nilable(String)) }
89
+ attr_reader :completed_at
90
+ sig { returns(T.nilable(String)) }
91
+ attr_reader :created_at
92
+ sig { returns(T.nilable(Currency)) }
93
+ attr_reader :currency
94
+ sig { returns(T.nilable(Customer)) }
95
+ attr_reader :customer
96
+ sig { returns(T.nilable(String)) }
97
+ attr_reader :customer_locale
98
+ sig { returns(T.nilable(Integer)) }
99
+ attr_reader :device_id
100
+ sig { returns(T.nilable(T::Array[DiscountCode])) }
101
+ attr_reader :discount_codes
102
+ sig { returns(T.nilable(String)) }
103
+ attr_reader :email
104
+ sig { returns(T.nilable(String)) }
105
+ attr_reader :gateway
106
+ sig { returns(T.nilable(Integer)) }
107
+ attr_reader :id
108
+ sig { returns(T.nilable(String)) }
109
+ attr_reader :landing_site
110
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
111
+ attr_reader :line_items
112
+ sig { returns(T.nilable(Integer)) }
113
+ attr_reader :location_id
114
+ sig { returns(T.nilable(String)) }
115
+ attr_reader :note
116
+ sig { returns(T.nilable(String)) }
117
+ attr_reader :phone
118
+ sig { returns(T.nilable(String)) }
119
+ attr_reader :presentment_currency
120
+ sig { returns(T.nilable(String)) }
121
+ attr_reader :referring_site
122
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
123
+ attr_reader :shipping_address
124
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
125
+ attr_reader :shipping_lines
126
+ sig { returns(T.nilable(String)) }
127
+ attr_reader :sms_marketing_phone
128
+ sig { returns(T.nilable(String)) }
129
+ attr_reader :source_name
130
+ sig { returns(T.nilable(String)) }
131
+ attr_reader :subtotal_price
132
+ sig { returns(T.nilable(T::Hash[T.untyped, T.untyped])) }
133
+ attr_reader :tax_lines
134
+ sig { returns(T.nilable(T::Boolean)) }
135
+ attr_reader :taxes_included
136
+ sig { returns(T.nilable(String)) }
137
+ attr_reader :token
138
+ sig { returns(T.nilable(String)) }
139
+ attr_reader :total_discounts
140
+ sig { returns(T.nilable(String)) }
141
+ attr_reader :total_duties
142
+ sig { returns(T.nilable(String)) }
143
+ attr_reader :total_line_items_price
144
+ sig { returns(T.nilable(String)) }
145
+ attr_reader :total_price
146
+ sig { returns(T.nilable(String)) }
147
+ attr_reader :total_tax
148
+ sig { returns(T.nilable(Integer)) }
149
+ attr_reader :total_weight
150
+ sig { returns(T.nilable(String)) }
151
+ attr_reader :updated_at
152
+ sig { returns(T.nilable(Integer)) }
153
+ attr_reader :user_id
154
+
155
+ class << self
156
+ sig do
157
+ params(
158
+ since_id: T.untyped,
159
+ created_at_min: T.untyped,
160
+ created_at_max: T.untyped,
161
+ updated_at_min: T.untyped,
162
+ updated_at_max: T.untyped,
163
+ status: T.untyped,
164
+ limit: T.untyped,
165
+ session: Auth::Session,
166
+ kwargs: T.untyped
167
+ ).returns(T.untyped)
168
+ end
169
+ def checkouts(
170
+ since_id: nil,
171
+ created_at_min: nil,
172
+ created_at_max: nil,
173
+ updated_at_min: nil,
174
+ updated_at_max: nil,
175
+ status: nil,
176
+ limit: nil,
177
+ session: ShopifyAPI::Context.active_session,
178
+ **kwargs
179
+ )
180
+ request(
181
+ http_method: :get,
182
+ operation: :checkouts,
183
+ session: session,
184
+ ids: {},
185
+ params: {since_id: since_id, created_at_min: created_at_min, created_at_max: created_at_max, updated_at_min: updated_at_min, updated_at_max: updated_at_max, status: status, limit: limit}.merge(kwargs).compact,
186
+ body: {},
187
+ entity: nil,
188
+ )
189
+ end
190
+
191
+ end
192
+
193
+ end
194
+ end
@@ -0,0 +1,62 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+ ########################################################################################################################
5
+ # This file is auto-generated. If you have an issue, please create a GitHub issue. #
6
+ ########################################################################################################################
7
+
8
+ module ShopifyAPI
9
+ class AccessScope < ShopifyAPI::Rest::Base
10
+ extend T::Sig
11
+
12
+ @prev_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
13
+ @next_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
14
+
15
+ @api_call_limit = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
16
+ @retry_request_after = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
17
+
18
+ sig { params(session: T.nilable(ShopifyAPI::Auth::Session), from_hash: T.nilable(T::Hash[T.untyped, T.untyped])).void }
19
+ def initialize(session: ShopifyAPI::Context.active_session, from_hash: nil)
20
+
21
+ @handle = T.let(nil, T.nilable(String))
22
+ @access_scopes = T.let(nil, T.nilable(T::Array[T.untyped]))
23
+
24
+ super(session: session, from_hash: from_hash)
25
+ end
26
+
27
+ @has_one = T.let({}, T::Hash[Symbol, Class])
28
+ @has_many = T.let({}, T::Hash[Symbol, Class])
29
+ @custom_prefix = T.let("/admin/oauth", T.nilable(String))
30
+ @paths = T.let([
31
+ {http_method: :get, operation: :get, ids: [], path: "access_scopes.json"}
32
+ ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
33
+
34
+ sig { returns(T.nilable(String)) }
35
+ attr_reader :handle
36
+ sig { returns(T.nilable(T::Array[T::Hash[T.untyped, T.untyped]])) }
37
+ attr_reader :access_scopes
38
+
39
+ class << self
40
+ sig do
41
+ params(
42
+ session: Auth::Session,
43
+ kwargs: T.untyped
44
+ ).returns(T::Array[AccessScope])
45
+ end
46
+ def all(
47
+ session: ShopifyAPI::Context.active_session,
48
+ **kwargs
49
+ )
50
+ response = base_find(
51
+ session: session,
52
+ ids: {},
53
+ params: {}.merge(kwargs).compact,
54
+ )
55
+
56
+ T.cast(response, T::Array[AccessScope])
57
+ end
58
+
59
+ end
60
+
61
+ end
62
+ end
@@ -0,0 +1,109 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+ ########################################################################################################################
5
+ # This file is auto-generated. If you have an issue, please create a GitHub issue. #
6
+ ########################################################################################################################
7
+
8
+ module ShopifyAPI
9
+ class ApplePayCertificate < ShopifyAPI::Rest::Base
10
+ extend T::Sig
11
+
12
+ @prev_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
13
+ @next_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
14
+
15
+ @api_call_limit = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
16
+ @retry_request_after = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
17
+
18
+ sig { params(session: T.nilable(ShopifyAPI::Auth::Session), from_hash: T.nilable(T::Hash[T.untyped, T.untyped])).void }
19
+ def initialize(session: ShopifyAPI::Context.active_session, from_hash: nil)
20
+
21
+ @id = T.let(nil, T.nilable(Integer))
22
+ @merchant_id = T.let(nil, T.nilable(String))
23
+ @status = T.let(nil, T.nilable(String))
24
+
25
+ super(session: session, from_hash: from_hash)
26
+ end
27
+
28
+ @has_one = T.let({}, T::Hash[Symbol, Class])
29
+ @has_many = T.let({}, T::Hash[Symbol, Class])
30
+ @paths = T.let([
31
+ {http_method: :delete, operation: :delete, ids: [:id], path: "apple_pay_certificates/<id>.json"},
32
+ {http_method: :get, operation: :csr, ids: [:id], path: "apple_pay_certificates/<id>/csr.json"},
33
+ {http_method: :get, operation: :get, ids: [:id], path: "apple_pay_certificates/<id>.json"},
34
+ {http_method: :post, operation: :post, ids: [], path: "apple_pay_certificates.json"},
35
+ {http_method: :put, operation: :put, ids: [:id], path: "apple_pay_certificates/<id>.json"}
36
+ ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
37
+
38
+ sig { returns(T.nilable(Integer)) }
39
+ attr_reader :id
40
+ sig { returns(T.nilable(String)) }
41
+ attr_reader :merchant_id
42
+ sig { returns(T.nilable(String)) }
43
+ attr_reader :status
44
+
45
+ class << self
46
+ sig do
47
+ params(
48
+ id: T.any(Integer, String),
49
+ session: Auth::Session
50
+ ).returns(T.nilable(ApplePayCertificate))
51
+ end
52
+ def find(
53
+ id:,
54
+ session: ShopifyAPI::Context.active_session
55
+ )
56
+ result = base_find(
57
+ session: session,
58
+ ids: {id: id},
59
+ params: {},
60
+ )
61
+ T.cast(result[0], T.nilable(ApplePayCertificate))
62
+ end
63
+
64
+ sig do
65
+ params(
66
+ id: T.any(Integer, String),
67
+ session: Auth::Session
68
+ ).returns(T.untyped)
69
+ end
70
+ def delete(
71
+ id:,
72
+ session: ShopifyAPI::Context.active_session
73
+ )
74
+ request(
75
+ http_method: :delete,
76
+ operation: :delete,
77
+ session: session,
78
+ ids: {id: id},
79
+ params: {},
80
+ )
81
+ end
82
+
83
+ sig do
84
+ params(
85
+ id: T.any(Integer, String),
86
+ session: Auth::Session,
87
+ kwargs: T.untyped
88
+ ).returns(T.untyped)
89
+ end
90
+ def csr(
91
+ id:,
92
+ session: ShopifyAPI::Context.active_session,
93
+ **kwargs
94
+ )
95
+ request(
96
+ http_method: :get,
97
+ operation: :csr,
98
+ session: session,
99
+ ids: {id: id},
100
+ params: {}.merge(kwargs).compact,
101
+ body: {},
102
+ entity: nil,
103
+ )
104
+ end
105
+
106
+ end
107
+
108
+ end
109
+ end
@@ -0,0 +1,113 @@
1
+ # typed: false
2
+ # frozen_string_literal: true
3
+
4
+ ########################################################################################################################
5
+ # This file is auto-generated. If you have an issue, please create a GitHub issue. #
6
+ ########################################################################################################################
7
+
8
+ module ShopifyAPI
9
+ class ApplicationCharge < ShopifyAPI::Rest::Base
10
+ extend T::Sig
11
+
12
+ @prev_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
13
+ @next_page_info = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
14
+
15
+ @api_call_limit = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
16
+ @retry_request_after = T.let(Concurrent::ThreadLocalVar.new { nil }, Concurrent::ThreadLocalVar)
17
+
18
+ sig { params(session: T.nilable(ShopifyAPI::Auth::Session), from_hash: T.nilable(T::Hash[T.untyped, T.untyped])).void }
19
+ def initialize(session: ShopifyAPI::Context.active_session, from_hash: nil)
20
+
21
+ @confirmation_url = T.let(nil, T.nilable(String))
22
+ @created_at = T.let(nil, T.nilable(String))
23
+ @currency = T.let(nil, T.nilable(Currency))
24
+ @id = T.let(nil, T.nilable(Integer))
25
+ @name = T.let(nil, T.nilable(String))
26
+ @price = T.let(nil, T.nilable(T.any(String, Float)))
27
+ @return_url = T.let(nil, T.nilable(String))
28
+ @status = T.let(nil, T.nilable(String))
29
+ @test = T.let(nil, T.nilable(T::Boolean))
30
+ @updated_at = T.let(nil, T.nilable(String))
31
+
32
+ super(session: session, from_hash: from_hash)
33
+ end
34
+
35
+ @has_one = T.let({
36
+ currency: Currency
37
+ }, T::Hash[Symbol, Class])
38
+ @has_many = T.let({}, T::Hash[Symbol, Class])
39
+ @paths = T.let([
40
+ {http_method: :get, operation: :get, ids: [], path: "application_charges.json"},
41
+ {http_method: :get, operation: :get, ids: [:id], path: "application_charges/<id>.json"},
42
+ {http_method: :post, operation: :post, ids: [], path: "application_charges.json"}
43
+ ], T::Array[T::Hash[String, T.any(T::Array[Symbol], String, Symbol)]])
44
+
45
+ sig { returns(T.nilable(String)) }
46
+ attr_reader :confirmation_url
47
+ sig { returns(T.nilable(String)) }
48
+ attr_reader :created_at
49
+ sig { returns(T.nilable(Currency)) }
50
+ attr_reader :currency
51
+ sig { returns(T.nilable(Integer)) }
52
+ attr_reader :id
53
+ sig { returns(T.nilable(String)) }
54
+ attr_reader :name
55
+ sig { returns(T.nilable(T.any(String, Float))) }
56
+ attr_reader :price
57
+ sig { returns(T.nilable(String)) }
58
+ attr_reader :return_url
59
+ sig { returns(T.nilable(String)) }
60
+ attr_reader :status
61
+ sig { returns(T.nilable(T::Boolean)) }
62
+ attr_reader :test
63
+ sig { returns(T.nilable(String)) }
64
+ attr_reader :updated_at
65
+
66
+ class << self
67
+ sig do
68
+ params(
69
+ id: T.any(Integer, String),
70
+ fields: T.untyped,
71
+ session: Auth::Session
72
+ ).returns(T.nilable(ApplicationCharge))
73
+ end
74
+ def find(
75
+ id:,
76
+ fields: nil,
77
+ session: ShopifyAPI::Context.active_session
78
+ )
79
+ result = base_find(
80
+ session: session,
81
+ ids: {id: id},
82
+ params: {fields: fields},
83
+ )
84
+ T.cast(result[0], T.nilable(ApplicationCharge))
85
+ end
86
+
87
+ sig do
88
+ params(
89
+ since_id: T.untyped,
90
+ fields: T.untyped,
91
+ session: Auth::Session,
92
+ kwargs: T.untyped
93
+ ).returns(T::Array[ApplicationCharge])
94
+ end
95
+ def all(
96
+ since_id: nil,
97
+ fields: nil,
98
+ session: ShopifyAPI::Context.active_session,
99
+ **kwargs
100
+ )
101
+ response = base_find(
102
+ session: session,
103
+ ids: {},
104
+ params: {since_id: since_id, fields: fields}.merge(kwargs).compact,
105
+ )
106
+
107
+ T.cast(response, T::Array[ApplicationCharge])
108
+ end
109
+
110
+ end
111
+
112
+ end
113
+ end