recurly 4.35.0 → 4.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 83e8d65062787add4314eea99340dbb144cb791da91694d427fe80e611fc16aa
4
- data.tar.gz: 2574a06cac36f21757b57b603c77cf3c151826cb4b5dcb9473c714dd2c46d3c7
3
+ metadata.gz: d9706f4db91fa66e91071dfd51171b9933576b04f081c161715bcee8a2457a95
4
+ data.tar.gz: 85ba2a6dcc9c774c64c51a9c4ca088d473da7c9d5dae0926fa52f7fcd10ec0a1
5
5
  SHA512:
6
- metadata.gz: a392d2f3054c33c881a839c9f6ab0e060f65809c33854da58837b612c9d52cf6fe67235ff4d966822944c51744a09d1a72d9fc7661ec1a536efe74c41e6a9b3f
7
- data.tar.gz: 23245268579c2a5d83b61c311082fb7ce8cef300eed9ce35f1bfa62a0b7b05a0612f5ed11d559f19f50977febdb8246928abd264e493fdfdcb0bdc9af9344b50
6
+ metadata.gz: 8e609da5b5ae899f5bd0d2ac5b4651c4981d84b605b58dd1b9fab32223328d1a487c4583f2ca580806f345e269aaf5cb6a8235d7b4aa911254d321d8d34cc97a
7
+ data.tar.gz: 218ac1808c50575ec60157116ed1f12d51de64a3b1159a249399a85f34f9b5b1daa72dec3f37b54cc4f0401078169bfc855e4f28c5a02e9277a96f10f6d065d2
data/.bumpversion.cfg CHANGED
@@ -1,5 +1,5 @@
1
1
  [bumpversion]
2
- current_version = 4.35.0
2
+ current_version = 4.37.0
3
3
  parse = (?P<major>\d+)
4
4
  \.(?P<minor>\d+)
5
5
  \.(?P<patch>\d+)
data/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # Changelog
2
2
 
3
+ ## [4.37.0](https://github.com/recurly/recurly-client-ruby/tree/4.37.0) (2023-05-24)
4
+
5
+ [Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.36.0...4.37.0)
6
+
7
+
8
+ **Merged Pull Requests**
9
+
10
+ - Generated Latest Changes for v2021-02-25 (External Products & References) [#848](https://github.com/recurly/recurly-client-ruby/pull/848) ([recurly-integrations](https://github.com/recurly-integrations))
11
+
12
+
13
+
14
+ ## [4.36.0](https://github.com/recurly/recurly-client-ruby/tree/4.36.0) (2023-05-23)
15
+
16
+ [Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.35.0...4.36.0)
17
+
18
+
19
+ **Merged Pull Requests**
20
+
21
+ - Generated Latest Changes for v2021-02-25 (gateway_attributes on PaymentMethod) [#846](https://github.com/recurly/recurly-client-ruby/pull/846) ([recurly-integrations](https://github.com/recurly-integrations))
22
+
23
+
24
+
3
25
  ## [4.35.0](https://github.com/recurly/recurly-client-ruby/tree/4.35.0) (2023-05-03)
4
26
 
5
27
  [Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.34.0...4.35.0)
data/GETTING_STARTED.md CHANGED
@@ -5,7 +5,7 @@ This repository houses the official ruby client for Recurly's V3 API.
5
5
  In your Gemfile, add `recurly` as a dependency.
6
6
 
7
7
  ```ruby
8
- gem 'recurly', '~> 4.35'
8
+ gem 'recurly', '~> 4.37'
9
9
  ```
10
10
 
11
11
  > *Note*: We try to follow [semantic versioning](https://semver.org/) and will only apply breaking changes to major versions.
@@ -2159,6 +2159,20 @@ module Recurly
2159
2159
  pager(path, **options)
2160
2160
  end
2161
2161
 
2162
+ # Create an external product
2163
+ #
2164
+ # {https://developers.recurly.com/api/v2021-02-25#operation/create_external_product create_external_product api documentation}
2165
+ #
2166
+ # @param body [Requests::ExternalProductCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::ExternalProductCreate}
2167
+ # @param params [Hash] Optional query string parameters:
2168
+ #
2169
+ # @return [Resources::ExternalProduct] Returns the external product
2170
+ #
2171
+ def create_external_product(body:, **options)
2172
+ path = "/external_products"
2173
+ post(path, body, Requests::ExternalProductCreate, **options)
2174
+ end
2175
+
2162
2176
  # Fetch an external product
2163
2177
  #
2164
2178
  # {https://developers.recurly.com/api/v2021-02-25#operation/get_external_product get_external_product api documentation}
@@ -2173,6 +2187,98 @@ module Recurly
2173
2187
  get(path, **options)
2174
2188
  end
2175
2189
 
2190
+ # Update an external product
2191
+ #
2192
+ # {https://developers.recurly.com/api/v2021-02-25#operation/update_external_product update_external_product api documentation}
2193
+ #
2194
+ # @param external_product_id [String] External product id
2195
+ # @param body [Requests::ExternalProductUpdate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::ExternalProductUpdate}
2196
+ # @param params [Hash] Optional query string parameters:
2197
+ #
2198
+ # @return [Resources::ExternalProduct] Settings for an external product.
2199
+ #
2200
+ def update_external_product(external_product_id:, body:, **options)
2201
+ path = interpolate_path("/external_products/{external_product_id}", external_product_id: external_product_id)
2202
+ put(path, body, Requests::ExternalProductUpdate, **options)
2203
+ end
2204
+
2205
+ # Deactivate an external product
2206
+ #
2207
+ # {https://developers.recurly.com/api/v2021-02-25#operation/deactivate_external_products deactivate_external_products api documentation}
2208
+ #
2209
+ # @param external_product_id [String] External product id
2210
+ # @param params [Hash] Optional query string parameters:
2211
+ #
2212
+ # @return [Resources::ExternalProduct] Deactivated external product.
2213
+ #
2214
+ def deactivate_external_products(external_product_id:, **options)
2215
+ path = interpolate_path("/external_products/{external_product_id}", external_product_id: external_product_id)
2216
+ delete(path, **options)
2217
+ end
2218
+
2219
+ # List the external product references for an external product
2220
+ #
2221
+ # {https://developers.recurly.com/api/v2021-02-25#operation/list_external_product_external_product_references list_external_product_external_product_references api documentation}
2222
+ #
2223
+ # @param external_product_id [String] External product id
2224
+ # @param params [Hash] Optional query string parameters:
2225
+ # :sort [String] Sort field. You *really* only want to sort by +updated_at+ in ascending
2226
+ # order. In descending order updated records will move behind the cursor and could
2227
+ # prevent some records from being returned.
2228
+ #
2229
+ #
2230
+ # @return [Pager<Resources::ExternalProductReferenceCollection>] A list of the the external product references for an external product.
2231
+ #
2232
+ def list_external_product_external_product_references(external_product_id:, **options)
2233
+ path = interpolate_path("/external_products/{external_product_id}/external_product_references", external_product_id: external_product_id)
2234
+ pager(path, **options)
2235
+ end
2236
+
2237
+ # Create an external product reference on an external product
2238
+ #
2239
+ # {https://developers.recurly.com/api/v2021-02-25#operation/create_external_product_external_product_reference create_external_product_external_product_reference api documentation}
2240
+ #
2241
+ # @param external_product_id [String] External product id
2242
+ # @param body [Requests::ExternalProductReferenceCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::ExternalProductReferenceCreate}
2243
+ # @param params [Hash] Optional query string parameters:
2244
+ #
2245
+ # @return [Resources::ExternalProductReferenceMini] Details for the external product reference.
2246
+ #
2247
+ def create_external_product_external_product_reference(external_product_id:, body:, **options)
2248
+ path = interpolate_path("/external_products/{external_product_id}/external_product_references", external_product_id: external_product_id)
2249
+ post(path, body, Requests::ExternalProductReferenceCreate, **options)
2250
+ end
2251
+
2252
+ # Fetch an external product reference
2253
+ #
2254
+ # {https://developers.recurly.com/api/v2021-02-25#operation/get_external_product_external_product_reference get_external_product_external_product_reference api documentation}
2255
+ #
2256
+ # @param external_product_id [String] External product id
2257
+ # @param external_product_reference_id [String] External product reference ID, e.g. +d39iun2fw1v4+.
2258
+ # @param params [Hash] Optional query string parameters:
2259
+ #
2260
+ # @return [Resources::ExternalProductReferenceMini] Details for an external product reference.
2261
+ #
2262
+ def get_external_product_external_product_reference(external_product_id:, external_product_reference_id:, **options)
2263
+ path = interpolate_path("/external_products/{external_product_id}/external_product_references/{external_product_reference_id}", external_product_id: external_product_id, external_product_reference_id: external_product_reference_id)
2264
+ get(path, **options)
2265
+ end
2266
+
2267
+ # Deactivate an external product reference
2268
+ #
2269
+ # {https://developers.recurly.com/api/v2021-02-25#operation/deactivate_external_product_external_product_reference deactivate_external_product_external_product_reference api documentation}
2270
+ #
2271
+ # @param external_product_id [String] External product id
2272
+ # @param external_product_reference_id [String] External product reference ID, e.g. +d39iun2fw1v4+.
2273
+ # @param params [Hash] Optional query string parameters:
2274
+ #
2275
+ # @return [Resources::ExternalProductReferenceMini] Details for an external product reference.
2276
+ #
2277
+ def deactivate_external_product_external_product_reference(external_product_id:, external_product_reference_id:, **options)
2278
+ path = interpolate_path("/external_products/{external_product_id}/external_product_references/{external_product_reference_id}", external_product_id: external_product_id, external_product_reference_id: external_product_reference_id)
2279
+ delete(path, **options)
2280
+ end
2281
+
2176
2282
  # List a site's external subscriptions
2177
2283
  #
2178
2284
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_external_subscriptions list_external_subscriptions api documentation}
@@ -54,6 +54,10 @@ module Recurly
54
54
  # @return [String] Fraud Session ID
55
55
  define_attribute :fraud_session_id, String
56
56
 
57
+ # @!attribute gateway_attributes
58
+ # @return [GatewayAttributes] Additional attributes to send to the gateway.
59
+ define_attribute :gateway_attributes, :GatewayAttributes
60
+
57
61
  # @!attribute gateway_code
58
62
  # @return [String] An identifier for a specific payment gateway. Must be used in conjunction with `gateway_token`.
59
63
  define_attribute :gateway_code, String
@@ -0,0 +1,22 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Requests
7
+ class ExternalProductCreate < Request
8
+
9
+ # @!attribute external_product_references
10
+ # @return [Array[ExternalProductReferenceBase]] List of external product references of the external product.
11
+ define_attribute :external_product_references, Array, { :item_type => :ExternalProductReferenceBase }
12
+
13
+ # @!attribute name
14
+ # @return [String] External product name.
15
+ define_attribute :name, String
16
+
17
+ # @!attribute plan_id
18
+ # @return [String] Recurly plan UUID.
19
+ define_attribute :plan_id, String
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,18 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Requests
7
+ class ExternalProductReferenceBase < Request
8
+
9
+ # @!attribute external_connection_type
10
+ # @return [String]
11
+ define_attribute :external_connection_type, String
12
+
13
+ # @!attribute reference_code
14
+ # @return [String] A code which associates the external product to a corresponding object or resource in an external platform like the Apple App Store or Google Play Store.
15
+ define_attribute :reference_code, String
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Requests
7
+ class ExternalProductReferenceCreate < Request
8
+
9
+ # @!attribute external_connection_type
10
+ # @return [String]
11
+ define_attribute :external_connection_type, String
12
+
13
+ # @!attribute reference_code
14
+ # @return [String] A code which associates the external product to a corresponding object or resource in an external platform like the Apple App Store or Google Play Store.
15
+ define_attribute :reference_code, String
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,14 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Requests
7
+ class ExternalProductUpdate < Request
8
+
9
+ # @!attribute plan_id
10
+ # @return [String] Recurly plan UUID.
11
+ define_attribute :plan_id, String
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Requests
7
+ class GatewayAttributes < Request
8
+
9
+ # @!attribute account_reference
10
+ # @return [String] Used by Adyen gateways. The Shopper Reference value used when the external token was created. Must be used in conjunction with gateway_token and gateway_code.
11
+ define_attribute :account_reference, String
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,26 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class ExternalProductReferenceCollection < Resource
8
+
9
+ # @!attribute data
10
+ # @return [Array[ExternalProductReferenceMini]]
11
+ define_attribute :data, Array, { :item_type => :ExternalProductReferenceMini }
12
+
13
+ # @!attribute has_more
14
+ # @return [Boolean] Indicates there are more results on subsequent pages.
15
+ define_attribute :has_more, :Boolean
16
+
17
+ # @!attribute next
18
+ # @return [String] Path to subsequent page of results.
19
+ define_attribute :next, String
20
+
21
+ # @!attribute object
22
+ # @return [String] Will always be List.
23
+ define_attribute :object, String
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,14 @@
1
+ # This file is automatically created by Recurly's OpenAPI generation process
2
+ # and thus any edits you make by hand will be lost. If you wish to make a
3
+ # change to this file, please create a Github issue explaining the changes you
4
+ # need and we will usher them to the appropriate places.
5
+ module Recurly
6
+ module Resources
7
+ class GatewayAttributes < Resource
8
+
9
+ # @!attribute account_reference
10
+ # @return [String] Used by Adyen gateways. The Shopper Reference value used when the external token was created.
11
+ define_attribute :account_reference, String
12
+ end
13
+ end
14
+ end
@@ -34,6 +34,10 @@ module Recurly
34
34
  # @return [String] Credit card number's first six digits.
35
35
  define_attribute :first_six, String
36
36
 
37
+ # @!attribute gateway_attributes
38
+ # @return [GatewayAttributes] Gateway specific attributes associated with this PaymentMethod
39
+ define_attribute :gateway_attributes, :GatewayAttributes
40
+
37
41
  # @!attribute gateway_code
38
42
  # @return [String] An identifier for a specific payment gateway.
39
43
  define_attribute :gateway_code, String
@@ -1,3 +1,3 @@
1
1
  module Recurly
2
- VERSION = "4.35.0"
2
+ VERSION = "4.37.0"
3
3
  end
data/openapi/api.yaml CHANGED
@@ -199,11 +199,14 @@ x-tagGroups:
199
199
  - purchase
200
200
  - usage
201
201
  - automated_exports
202
+ - gift_cards
203
+ - name: App Management
204
+ tags:
202
205
  - external_subscriptions
203
206
  - external_invoices
204
207
  - external_products
205
208
  - external_accounts
206
- - gift_cards
209
+ - external_product_references
207
210
  - name: Products and Promotions
208
211
  tags:
209
212
  - item
@@ -349,7 +352,7 @@ tags:
349
352
  Recurly platform and instead is managed by third-party platforms like Apple App
350
353
  Store and Google Play Store.
351
354
  - name: external_invoices
352
- x-displayName: External Invoices
355
+ x-displayName: External Invoice
353
356
  description: An invoice from an external resource that is not managed by the Recurly
354
357
  platform and instead is managed by third-party platforms like Apple App Store
355
358
  and Google Play Store.
@@ -358,12 +361,16 @@ tags:
358
361
  description: A product from an external resource that is not managed by the Recurly
359
362
  platform and instead is managed by third-party platforms like Apple App Store
360
363
  and Google Play Store.
364
+ - name: external_product_references
365
+ x-displayName: External Product Reference
366
+ description: Associates an external product to a corresponding resource on an external
367
+ platform like the Apple App Store or Google Play Store.
361
368
  - name: gift_cards
362
369
  x-displayName: Gift Cards
363
370
  description: Add gift card purchases to your checkout and allow gift card recipients
364
371
  to redeem the gift card for credit towards any of your products.
365
372
  - name: external_accounts
366
- x-displayName: External Accounts
373
+ x-displayName: External Account
367
374
  description: An account from an external resource that is not managed by the Recurly
368
375
  platform and instead is managed by third-party platforms like Apple App Store
369
376
  and Google Play Store.
@@ -7743,6 +7750,43 @@ paths:
7743
7750
  schema:
7744
7751
  "$ref": "#/components/schemas/Error"
7745
7752
  x-code-samples: []
7753
+ post:
7754
+ tags:
7755
+ - external_products
7756
+ operationId: create_external_product
7757
+ summary: Create an external product
7758
+ requestBody:
7759
+ content:
7760
+ application/json:
7761
+ schema:
7762
+ "$ref": "#/components/schemas/ExternalProductCreate"
7763
+ required: true
7764
+ responses:
7765
+ '201':
7766
+ description: Returns the external product
7767
+ content:
7768
+ application/json:
7769
+ schema:
7770
+ "$ref": "#/components/schemas/ExternalProduct"
7771
+ '400':
7772
+ description: Bad request; perhaps missing or invalid parameters.
7773
+ content:
7774
+ application/json:
7775
+ schema:
7776
+ "$ref": "#/components/schemas/Error"
7777
+ '404':
7778
+ description: External product cannot be created for the specified reason.
7779
+ content:
7780
+ application/json:
7781
+ schema:
7782
+ "$ref": "#/components/schemas/Error"
7783
+ default:
7784
+ description: Unexpected error.
7785
+ content:
7786
+ application/json:
7787
+ schema:
7788
+ "$ref": "#/components/schemas/Error"
7789
+ x-code-samples: []
7746
7790
  "/external_products/{external_product_id}":
7747
7791
  parameters:
7748
7792
  - "$ref": "#/components/parameters/external_product_id"
@@ -7771,6 +7815,181 @@ paths:
7771
7815
  schema:
7772
7816
  "$ref": "#/components/schemas/Error"
7773
7817
  x-code-samples: []
7818
+ put:
7819
+ tags:
7820
+ - external_products
7821
+ operationId: update_external_product
7822
+ summary: Update an external product
7823
+ requestBody:
7824
+ content:
7825
+ application/json:
7826
+ schema:
7827
+ "$ref": "#/components/schemas/ExternalProductUpdate"
7828
+ required: true
7829
+ responses:
7830
+ '200':
7831
+ description: Settings for an external product.
7832
+ content:
7833
+ application/json:
7834
+ schema:
7835
+ "$ref": "#/components/schemas/ExternalProduct"
7836
+ '404':
7837
+ description: Bad request; perhaps missing or invalid parameters.
7838
+ content:
7839
+ application/json:
7840
+ schema:
7841
+ "$ref": "#/components/schemas/Error"
7842
+ default:
7843
+ description: Unexpected error.
7844
+ content:
7845
+ application/json:
7846
+ schema:
7847
+ "$ref": "#/components/schemas/Error"
7848
+ x-code-samples: []
7849
+ delete:
7850
+ tags:
7851
+ - external_products
7852
+ operationId: deactivate_external_products
7853
+ summary: Deactivate an external product
7854
+ description: Deactivate an external product.
7855
+ responses:
7856
+ '200':
7857
+ description: Deactivated external product.
7858
+ content:
7859
+ application/json:
7860
+ schema:
7861
+ "$ref": "#/components/schemas/ExternalProduct"
7862
+ '404':
7863
+ description: Bad request; perhaps missing or invalid parameters.
7864
+ content:
7865
+ application/json:
7866
+ schema:
7867
+ "$ref": "#/components/schemas/Error"
7868
+ default:
7869
+ description: Unexpected error.
7870
+ content:
7871
+ application/json:
7872
+ schema:
7873
+ "$ref": "#/components/schemas/Error"
7874
+ x-code-samples: []
7875
+ "/external_products/{external_product_id}/external_product_references":
7876
+ parameters:
7877
+ - "$ref": "#/components/parameters/external_product_id"
7878
+ get:
7879
+ tags:
7880
+ - external_product_references
7881
+ operationId: list_external_product_external_product_references
7882
+ summary: List the external product references for an external product
7883
+ description: See the [Pagination Guide](/developers/guides/pagination.html)
7884
+ to learn how to use pagination in the API and Client Libraries.
7885
+ parameters:
7886
+ - "$ref": "#/components/parameters/sort_dates"
7887
+ responses:
7888
+ '200':
7889
+ description: A list of the the external product references for an external
7890
+ product.
7891
+ content:
7892
+ application/json:
7893
+ schema:
7894
+ "$ref": "#/components/schemas/ExternalProductReferenceCollection"
7895
+ '404':
7896
+ description: Incorrect site or external product ID.
7897
+ content:
7898
+ application/json:
7899
+ schema:
7900
+ "$ref": "#/components/schemas/Error"
7901
+ default:
7902
+ description: Unexpected error.
7903
+ content:
7904
+ application/json:
7905
+ schema:
7906
+ "$ref": "#/components/schemas/Error"
7907
+ x-code-samples: []
7908
+ post:
7909
+ tags:
7910
+ - external_product_references
7911
+ operationId: create_external_product_external_product_reference
7912
+ summary: Create an external product reference on an external product
7913
+ requestBody:
7914
+ content:
7915
+ application/json:
7916
+ schema:
7917
+ "$ref": "#/components/schemas/ExternalProductReferenceCreate"
7918
+ required: true
7919
+ responses:
7920
+ '201':
7921
+ description: Details for the external product reference.
7922
+ content:
7923
+ application/json:
7924
+ schema:
7925
+ "$ref": "#/components/schemas/ExternalProductReferenceMini"
7926
+ '404':
7927
+ description: Incorrect site.
7928
+ content:
7929
+ application/json:
7930
+ schema:
7931
+ "$ref": "#/components/schemas/Error"
7932
+ default:
7933
+ description: Unexpected error.
7934
+ content:
7935
+ application/json:
7936
+ schema:
7937
+ "$ref": "#/components/schemas/Error"
7938
+ x-code-samples: []
7939
+ "/external_products/{external_product_id}/external_product_references/{external_product_reference_id}":
7940
+ parameters:
7941
+ - "$ref": "#/components/parameters/external_product_id"
7942
+ - "$ref": "#/components/parameters/external_product_reference_id"
7943
+ get:
7944
+ tags:
7945
+ - external_product_references
7946
+ operationId: get_external_product_external_product_reference
7947
+ summary: Fetch an external product reference
7948
+ responses:
7949
+ '200':
7950
+ description: Details for an external product reference.
7951
+ content:
7952
+ application/json:
7953
+ schema:
7954
+ "$ref": "#/components/schemas/ExternalProductReferenceMini"
7955
+ '404':
7956
+ description: Incorrect site or external product ID.
7957
+ content:
7958
+ application/json:
7959
+ schema:
7960
+ "$ref": "#/components/schemas/Error"
7961
+ default:
7962
+ description: Unexpected error.
7963
+ content:
7964
+ application/json:
7965
+ schema:
7966
+ "$ref": "#/components/schemas/Error"
7967
+ x-code-samples: []
7968
+ delete:
7969
+ tags:
7970
+ - external_product_references
7971
+ operationId: deactivate_external_product_external_product_reference
7972
+ summary: Deactivate an external product reference
7973
+ responses:
7974
+ '200':
7975
+ description: Details for an external product reference.
7976
+ content:
7977
+ application/json:
7978
+ schema:
7979
+ "$ref": "#/components/schemas/ExternalProductReferenceMini"
7980
+ '404':
7981
+ description: Incorrect site or external product reference ID.
7982
+ content:
7983
+ application/json:
7984
+ schema:
7985
+ "$ref": "#/components/schemas/Error"
7986
+ default:
7987
+ description: Unexpected error.
7988
+ content:
7989
+ application/json:
7990
+ schema:
7991
+ "$ref": "#/components/schemas/Error"
7992
+ x-code-samples: []
7774
7993
  "/external_subscriptions":
7775
7994
  get:
7776
7995
  tags:
@@ -16012,6 +16231,13 @@ components:
16012
16231
  required: true
16013
16232
  schema:
16014
16233
  type: string
16234
+ external_product_reference_id:
16235
+ name: external_product_reference_id
16236
+ in: path
16237
+ description: External product reference ID, e.g. `d39iun2fw1v4`.
16238
+ required: true
16239
+ schema:
16240
+ type: string
16015
16241
  external_subscription_id:
16016
16242
  name: external_subscription_id
16017
16243
  in: path
@@ -17851,6 +18077,17 @@ components:
17851
18077
  title: An identifier for a specific payment gateway. Must be used in conjunction
17852
18078
  with `gateway_token`.
17853
18079
  maxLength: 12
18080
+ gateway_attributes:
18081
+ type: object
18082
+ description: Additional attributes to send to the gateway.
18083
+ x-class-name: GatewayAttributes
18084
+ properties:
18085
+ account_reference:
18086
+ type: string
18087
+ description: Used by Adyen gateways. The Shopper Reference value used
18088
+ when the external token was created. Must be used in conjunction with
18089
+ gateway_token and gateway_code.
18090
+ maxLength: 264
17854
18091
  amazon_billing_agreement_id:
17855
18092
  type: string
17856
18093
  title: Amazon billing agreement ID
@@ -23207,6 +23444,73 @@ components:
23207
23444
  type: array
23208
23445
  items:
23209
23446
  "$ref": "#/components/schemas/ExternalProduct"
23447
+ ExternalProductCreate:
23448
+ type: object
23449
+ properties:
23450
+ name:
23451
+ type: string
23452
+ description: External product name.
23453
+ plan_id:
23454
+ type: string
23455
+ description: Recurly plan UUID.
23456
+ external_product_references:
23457
+ type: array
23458
+ title: External Product References
23459
+ description: List of external product references of the external product.
23460
+ items:
23461
+ "$ref": "#/components/schemas/ExternalProductReferenceBase"
23462
+ required:
23463
+ - name
23464
+ ExternalProductUpdate:
23465
+ type: object
23466
+ properties:
23467
+ plan_id:
23468
+ type: string
23469
+ description: Recurly plan UUID.
23470
+ required:
23471
+ - plan_id
23472
+ ExternalProductReferenceBase:
23473
+ type: object
23474
+ properties:
23475
+ reference_code:
23476
+ type: string
23477
+ description: A code which associates the external product to a corresponding
23478
+ object or resource in an external platform like the Apple App Store or
23479
+ Google Play Store.
23480
+ maxLength: 255
23481
+ external_connection_type:
23482
+ "$ref": "#/components/schemas/ExternalProductReferenceConnectionTypeEnum"
23483
+ ExternalProductReferenceCollection:
23484
+ type: object
23485
+ properties:
23486
+ object:
23487
+ type: string
23488
+ title: Object type
23489
+ description: Will always be List.
23490
+ has_more:
23491
+ type: boolean
23492
+ description: Indicates there are more results on subsequent pages.
23493
+ next:
23494
+ type: string
23495
+ description: Path to subsequent page of results.
23496
+ data:
23497
+ type: array
23498
+ items:
23499
+ "$ref": "#/components/schemas/ExternalProductReferenceMini"
23500
+ ExternalProductReferenceCreate:
23501
+ allOf:
23502
+ - "$ref": "#/components/schemas/ExternalProductReferenceBase"
23503
+ required:
23504
+ - reference_code
23505
+ - external_connection_type
23506
+ ExternalProductReferenceUpdate:
23507
+ allOf:
23508
+ - "$ref": "#/components/schemas/ExternalProductReferenceBase"
23509
+ ExternalProductReferenceConnectionTypeEnum:
23510
+ type: string
23511
+ enum:
23512
+ - apple_app_store
23513
+ - google_play_store
23210
23514
  ExternalAccountList:
23211
23515
  type: object
23212
23516
  properties:
@@ -23604,6 +23908,16 @@ components:
23604
23908
  type: string
23605
23909
  description: An identifier for a specific payment gateway.
23606
23910
  maxLength: 13
23911
+ gateway_attributes:
23912
+ type: object
23913
+ description: Gateway specific attributes associated with this PaymentMethod
23914
+ x-class-name: GatewayAttributes
23915
+ properties:
23916
+ account_reference:
23917
+ type: string
23918
+ description: Used by Adyen gateways. The Shopper Reference value used
23919
+ when the external token was created.
23920
+ maxLength: 264
23607
23921
  billing_agreement_id:
23608
23922
  type: string
23609
23923
  description: Billing Agreement identifier. Only present for Amazon or Paypal
@@ -24312,6 +24626,7 @@ components:
24312
24626
  ExternalPaymentMethodEnum:
24313
24627
  type: string
24314
24628
  enum:
24629
+ - bacs
24315
24630
  - ach
24316
24631
  - amazon
24317
24632
  - apple_pay
@@ -24432,6 +24747,7 @@ components:
24432
24747
  enum:
24433
24748
  - api
24434
24749
  - chargeback
24750
+ - external_recovery
24435
24751
  - force_collect
24436
24752
  - hpp
24437
24753
  - merchant
@@ -24501,6 +24817,7 @@ components:
24501
24817
  PaymentMethodEnum:
24502
24818
  type: string
24503
24819
  enum:
24820
+ - bacs
24504
24821
  - amazon
24505
24822
  - amazon_billing_agreement
24506
24823
  - apple_pay
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: recurly
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.35.0
4
+ version: 4.37.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Recurly
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-03 00:00:00.000000000 Z
11
+ date: 2023-05-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -168,8 +168,13 @@ files:
168
168
  - lib/recurly/requests/dunning_campaigns_bulk_update.rb
169
169
  - lib/recurly/requests/external_account_create.rb
170
170
  - lib/recurly/requests/external_account_update.rb
171
+ - lib/recurly/requests/external_product_create.rb
172
+ - lib/recurly/requests/external_product_reference_base.rb
173
+ - lib/recurly/requests/external_product_reference_create.rb
174
+ - lib/recurly/requests/external_product_update.rb
171
175
  - lib/recurly/requests/external_refund.rb
172
176
  - lib/recurly/requests/external_transaction.rb
177
+ - lib/recurly/requests/gateway_attributes.rb
173
178
  - lib/recurly/requests/gift_card_create.rb
174
179
  - lib/recurly/requests/gift_card_delivery_create.rb
175
180
  - lib/recurly/requests/gift_card_redeem.rb
@@ -262,9 +267,11 @@ files:
262
267
  - lib/recurly/resources/external_charge.rb
263
268
  - lib/recurly/resources/external_invoice.rb
264
269
  - lib/recurly/resources/external_product.rb
270
+ - lib/recurly/resources/external_product_reference_collection.rb
265
271
  - lib/recurly/resources/external_product_reference_mini.rb
266
272
  - lib/recurly/resources/external_subscription.rb
267
273
  - lib/recurly/resources/fraud_info.rb
274
+ - lib/recurly/resources/gateway_attributes.rb
268
275
  - lib/recurly/resources/gift_card.rb
269
276
  - lib/recurly/resources/gift_card_delivery.rb
270
277
  - lib/recurly/resources/granted_by.rb
@@ -336,7 +343,7 @@ metadata:
336
343
  changelog_uri: https://github.com/recurly/recurly-client-ruby/blob/master/CHANGELOG.md
337
344
  documentation_uri: https://recurly.github.io/recurly-client-ruby/
338
345
  homepage_uri: https://github.com/recurly/recurly-client-ruby
339
- source_code_uri: https://github.com/recurly/recurly-client-ruby/tree/4.35.0
346
+ source_code_uri: https://github.com/recurly/recurly-client-ruby/tree/4.37.0
340
347
  post_install_message:
341
348
  rdoc_options: []
342
349
  require_paths: