recurly 4.35.0 → 4.37.0

Sign up to get free protection for your applications and to get access to all the features.
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: