recurly 4.24.0 → 4.25.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: 5f585c84e359302293e13409b5162b2ad56241f342b0c9e9c2c4200f29782a32
4
- data.tar.gz: d8908b9d5e9cefcce7a9fa6cfa0d75b69dcd8b885ac6ce6dacc2ec416f56c1a1
3
+ metadata.gz: 83cc9874a222552398eccba8e97f844e448644398831199e20e9eeb09d91443a
4
+ data.tar.gz: dab0e9563f9771f46d4be709e33394305f8c59bc77fa2cd4394106cef1edd8a6
5
5
  SHA512:
6
- metadata.gz: 3d42081e4d4e095850d9b1158e8c798ab0cc11d9f9d68bb895ba77808a2d6f4f1a0bdfeac2c6394d704ea74add4df4ba63ca2eca70d1c05c1b3499e3c9bbbb76
7
- data.tar.gz: 1bb51683c999694c1843c378754ba2fb6556d205db5f50ebf93cde4cb46997548cd31f3062b75f6b1db7d3bb575a3040ddea88276f1172fca424785e96b92304
6
+ metadata.gz: beeb8fd85be7c0b63d7f2ab7c786684e774d731a3d3f501aba66428bb6de7e58c79fd0e4ab6786790e58195cd675c286f259bb98cb0652366a0ab49b885fed11
7
+ data.tar.gz: a2bb85d2f395c94dbe172aabbc281d0e30f6ffd034d85368616a2a921cee68fc6836ae75dbb023299edc2b8b4d31a61f382d9e43e6f130e10a9130bd5d7a2148
data/.bumpversion.cfg CHANGED
@@ -1,5 +1,5 @@
1
1
  [bumpversion]
2
- current_version = 4.24.0
2
+ current_version = 4.25.0
3
3
  parse = (?P<major>\d+)
4
4
  \.(?P<minor>\d+)
5
5
  \.(?P<patch>\d+)
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [4.25.0](https://github.com/recurly/recurly-client-ruby/tree/4.25.0) (2022-11-15)
4
+
5
+ [Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.24.0...4.25.0)
6
+
7
+
8
+ **Merged Pull Requests**
9
+
10
+ - Generated Latest Changes for v2021-02-25 (External Subscriptions feature) [#809](https://github.com/recurly/recurly-client-ruby/pull/809) ([recurly-integrations](https://github.com/recurly-integrations))
11
+ - Generated Latest Changes for v2021-02-25 [#807](https://github.com/recurly/recurly-client-ruby/pull/807) ([recurly-integrations](https://github.com/recurly-integrations))
12
+
13
+
14
+
3
15
  ## [4.24.0](https://github.com/recurly/recurly-client-ruby/tree/4.24.0) (2022-11-03)
4
16
 
5
17
  [Full Changelog](https://github.com/recurly/recurly-client-ruby/compare/4.23.0...4.24.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.24'
8
+ gem 'recurly', '~> 4.25'
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.
@@ -588,7 +588,7 @@ module Recurly
588
588
  delete(path, **options)
589
589
  end
590
590
 
591
- # Show the coupon redemptions for an account
591
+ # List the coupon redemptions for an account
592
592
  #
593
593
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_account_coupon_redemptions list_account_coupon_redemptions api documentation}
594
594
  #
@@ -636,7 +636,7 @@ module Recurly
636
636
  pager(path, **options)
637
637
  end
638
638
 
639
- # Show the coupon redemptions that are active on an account
639
+ # List the coupon redemptions that are active on an account
640
640
  #
641
641
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_active_coupon_redemptions list_active_coupon_redemptions api documentation}
642
642
  #
@@ -950,7 +950,7 @@ module Recurly
950
950
  post(path, body, Requests::LineItemCreate, **options)
951
951
  end
952
952
 
953
- # Fetch a list of an account's notes
953
+ # List an account's notes
954
954
  #
955
955
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_account_notes list_account_notes api documentation}
956
956
  #
@@ -2046,6 +2046,68 @@ module Recurly
2046
2046
  delete(path, **options)
2047
2047
  end
2048
2048
 
2049
+ # List a site's external products
2050
+ #
2051
+ # {https://developers.recurly.com/api/v2021-02-25#operation/list_external_products list_external_products api documentation}
2052
+ #
2053
+ # @param params [Hash] Optional query string parameters:
2054
+ # :sort [String] Sort field. You *really* only want to sort by +updated_at+ in ascending
2055
+ # order. In descending order updated records will move behind the cursor and could
2056
+ # prevent some records from being returned.
2057
+ #
2058
+ #
2059
+ # @return [Pager<Resources::ExternalProduct>] A list of the the external_products on a site.
2060
+ #
2061
+ def list_external_products(**options)
2062
+ path = "/external_products"
2063
+ pager(path, **options)
2064
+ end
2065
+
2066
+ # Fetch an external product
2067
+ #
2068
+ # {https://developers.recurly.com/api/v2021-02-25#operation/get_external_product get_external_product api documentation}
2069
+ #
2070
+ # @param external_product_id [String] External product id
2071
+ # @param params [Hash] Optional query string parameters:
2072
+ #
2073
+ # @return [Resources::ExternalProduct] Settings for an external product.
2074
+ #
2075
+ def get_external_product(external_product_id:, **options)
2076
+ path = interpolate_path("/external_products/{external_product_id}", external_product_id: external_product_id)
2077
+ get(path, **options)
2078
+ end
2079
+
2080
+ # List a site's external subscriptions
2081
+ #
2082
+ # {https://developers.recurly.com/api/v2021-02-25#operation/list_external_subscriptions list_external_subscriptions api documentation}
2083
+ #
2084
+ # @param params [Hash] Optional query string parameters:
2085
+ # :sort [String] Sort field. You *really* only want to sort by +updated_at+ in ascending
2086
+ # order. In descending order updated records will move behind the cursor and could
2087
+ # prevent some records from being returned.
2088
+ #
2089
+ #
2090
+ # @return [Pager<Resources::ExternalSubscription>] A list of the the external_subscriptions on a site.
2091
+ #
2092
+ def list_external_subscriptions(**options)
2093
+ path = "/external_subscriptions"
2094
+ pager(path, **options)
2095
+ end
2096
+
2097
+ # Fetch an external subscription
2098
+ #
2099
+ # {https://developers.recurly.com/api/v2021-02-25#operation/get_external_subscription get_external_subscription api documentation}
2100
+ #
2101
+ # @param external_subscription_id [String] External subscription id
2102
+ # @param params [Hash] Optional query string parameters:
2103
+ #
2104
+ # @return [Resources::ExternalSubscription] Settings for an external subscription.
2105
+ #
2106
+ def get_external_subscription(external_subscription_id:, **options)
2107
+ path = interpolate_path("/external_subscriptions/{external_subscription_id}", external_subscription_id: external_subscription_id)
2108
+ get(path, **options)
2109
+ end
2110
+
2049
2111
  # List a site's invoices
2050
2112
  #
2051
2113
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_invoices list_invoices api documentation}
@@ -2357,7 +2419,7 @@ module Recurly
2357
2419
  pager(path, **options)
2358
2420
  end
2359
2421
 
2360
- # Show the coupon redemptions applied to an invoice
2422
+ # List the coupon redemptions applied to an invoice
2361
2423
  #
2362
2424
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_invoice_coupon_redemptions list_invoice_coupon_redemptions api documentation}
2363
2425
  #
@@ -3586,7 +3648,7 @@ module Recurly
3586
3648
  pager(path, **options)
3587
3649
  end
3588
3650
 
3589
- # Show the coupon redemptions for a subscription
3651
+ # List the coupon redemptions for a subscription
3590
3652
  #
3591
3653
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_subscription_coupon_redemptions list_subscription_coupon_redemptions api documentation}
3592
3654
  #
@@ -4015,7 +4077,7 @@ module Recurly
4015
4077
  get(path, **options)
4016
4078
  end
4017
4079
 
4018
- # Show the dunning campaigns for a site
4080
+ # List the dunning campaigns for a site
4019
4081
  #
4020
4082
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_dunning_campaigns list_dunning_campaigns api documentation}
4021
4083
  #
@@ -4032,7 +4094,7 @@ module Recurly
4032
4094
  pager(path, **options)
4033
4095
  end
4034
4096
 
4035
- # Show the settings for a dunning campaign
4097
+ # Fetch a dunning campaign
4036
4098
  #
4037
4099
  # {https://developers.recurly.com/api/v2021-02-25#operation/get_dunning_campaign get_dunning_campaign api documentation}
4038
4100
  #
@@ -4078,7 +4140,7 @@ module Recurly
4078
4140
  pager(path, **options)
4079
4141
  end
4080
4142
 
4081
- # Show the settings for an invoice template
4143
+ # Fetch an invoice template
4082
4144
  #
4083
4145
  # {https://developers.recurly.com/api/v2021-02-25#operation/get_invoice_template get_invoice_template api documentation}
4084
4146
  #
@@ -4092,7 +4154,7 @@ module Recurly
4092
4154
  get(path, **options)
4093
4155
  end
4094
4156
 
4095
- # Show all entitlements granted to an account
4157
+ # List entitlements granted to an account
4096
4158
  #
4097
4159
  # {https://developers.recurly.com/api/v2021-02-25#operation/list_entitlements list_entitlements api documentation}
4098
4160
  #
@@ -4110,5 +4172,23 @@ module Recurly
4110
4172
  path = interpolate_path("/accounts/{account_id}/entitlements", account_id: account_id)
4111
4173
  pager(path, **options)
4112
4174
  end
4175
+
4176
+ # List an account's external subscriptions
4177
+ #
4178
+ # {https://developers.recurly.com/api/v2021-02-25#operation/list_account_external_subscriptions list_account_external_subscriptions api documentation}
4179
+ #
4180
+ # @param account_id [String] Account ID or code. For ID no prefix is used e.g. +e28zov4fw0v2+. For code use prefix +code-+, e.g. +code-bob+.
4181
+ # @param params [Hash] Optional query string parameters:
4182
+ # :sort [String] Sort field. You *really* only want to sort by +updated_at+ in ascending
4183
+ # order. In descending order updated records will move behind the cursor and could
4184
+ # prevent some records from being returned.
4185
+ #
4186
+ #
4187
+ # @return [Pager<Resources::ExternalSubscription>] A list of the the external_subscriptions on an account.
4188
+ #
4189
+ def list_account_external_subscriptions(account_id:, **options)
4190
+ path = interpolate_path("/accounts/{account_id}/external_subscriptions", account_id: account_id)
4191
+ pager(path, **options)
4192
+ end
4113
4193
  end
4114
4194
  end
@@ -79,13 +79,17 @@ module Recurly
79
79
  define_attribute :tax_code, String
80
80
 
81
81
  # @!attribute tier_type
82
- # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
82
+ # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://recurly.com/developers/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
83
83
  define_attribute :tier_type, String
84
84
 
85
85
  # @!attribute tiers
86
86
  # @return [Array[Tier]] If the tier_type is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount` for the desired `currencies`. There must be one tier without an `ending_quantity` value which represents the final tier.
87
87
  define_attribute :tiers, Array, { :item_type => :Tier }
88
88
 
89
+ # @!attribute usage_calculation_type
90
+ # @return [String] The type of calculation to be employed for an add-on. Cumulative billing will sum all usage records created in the current billing cycle. Last-in-period billing will apply only the most recent usage record in the billing period. If no value is specified, cumulative billing will be used.
91
+ define_attribute :usage_calculation_type, String
92
+
89
93
  # @!attribute usage_percentage
90
94
  # @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if `add_on_type` is usage, `tier_type` is `flat` and `usage_type` is percentage. Must be omitted otherwise.
91
95
  define_attribute :usage_percentage, Float
@@ -95,7 +99,7 @@ module Recurly
95
99
  define_attribute :usage_timeframe, String
96
100
 
97
101
  # @!attribute usage_type
98
- # @return [String] Type of usage, required if `add_on_type` is `usage`. See our [Guide](https://developers.recurly.com/guides/usage-based-billing-guide.html) for an overview of how to configure usage add-ons.
102
+ # @return [String] Type of usage, required if `add_on_type` is `usage`. See our [Guide](https://recurly.com/developers/guides/usage-based-billing-guide.html) for an overview of how to configure usage add-ons.
99
103
  define_attribute :usage_type, String
100
104
  end
101
105
  end
@@ -70,6 +70,10 @@ module Recurly
70
70
  # @return [Array[Tier]] If the tier_type is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount` for the desired `currencies`. There must be one tier without an `ending_quantity` value which represents the final tier.
71
71
  define_attribute :tiers, Array, { :item_type => :Tier }
72
72
 
73
+ # @!attribute usage_calculation_type
74
+ # @return [String] The type of calculation to be employed for an add-on. Cumulative billing will sum all usage records created in the current billing cycle. Last-in-period billing will apply only the most recent usage record in the billing period. If no value is specified, cumulative billing will be used.
75
+ define_attribute :usage_calculation_type, String
76
+
73
77
  # @!attribute usage_percentage
74
78
  # @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if `add_on_type` is usage, `tier_type` is `flat` and `usage_type` is percentage. Must be omitted otherwise.
75
79
  define_attribute :usage_percentage, Float
@@ -115,7 +115,7 @@ module Recurly
115
115
  define_attribute :three_d_secure_action_result_token_id, String
116
116
 
117
117
  # @!attribute token_id
118
- # @return [String] A token [generated by Recurly.js](https://developers.recurly.com/reference/recurly-js/#getting-a-token).
118
+ # @return [String] A token [generated by Recurly.js](https://recurly.com/developers/reference/recurly-js/#getting-a-token).
119
119
  define_attribute :token_id, String
120
120
 
121
121
  # @!attribute transaction_type
@@ -38,6 +38,10 @@ module Recurly
38
38
  # @return [Array[PlanPricing]] Pricing
39
39
  define_attribute :currencies, Array, { :item_type => :PlanPricing }
40
40
 
41
+ # @!attribute custom_fields
42
+ # @return [Array[CustomField]] The custom fields will only be altered when they are included in a request. Sending an empty array will not remove any existing values. To remove a field send the name with a null or empty value.
43
+ define_attribute :custom_fields, Array, { :item_type => :CustomField }
44
+
41
45
  # @!attribute description
42
46
  # @return [String] Optional description, not displayed.
43
47
  define_attribute :description, String
@@ -34,6 +34,10 @@ module Recurly
34
34
  # @return [Array[PlanPricing]] Optional when the pricing model is 'ramp'.
35
35
  define_attribute :currencies, Array, { :item_type => :PlanPricing }
36
36
 
37
+ # @!attribute custom_fields
38
+ # @return [Array[CustomField]] The custom fields will only be altered when they are included in a request. Sending an empty array will not remove any existing values. To remove a field send the name with a null or empty value.
39
+ define_attribute :custom_fields, Array, { :item_type => :CustomField }
40
+
37
41
  # @!attribute description
38
42
  # @return [String] Optional description, not displayed.
39
43
  define_attribute :description, String
@@ -27,7 +27,7 @@ module Recurly
27
27
  define_attribute :revenue_schedule_type, String
28
28
 
29
29
  # @!attribute tiers
30
- # @return [Array[SubscriptionAddOnTier]] If the plan add-on's `tier_type` is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount`. There must be one tier without an `ending_quantity` value which represents the final tier. See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
30
+ # @return [Array[SubscriptionAddOnTier]] If the plan add-on's `tier_type` is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount`. There must be one tier without an `ending_quantity` value which represents the final tier. See our [Guide](https://recurly.com/developers/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
31
31
  define_attribute :tiers, Array, { :item_type => :SubscriptionAddOnTier }
32
32
 
33
33
  # @!attribute unit_amount
@@ -39,7 +39,7 @@ module Recurly
39
39
  define_attribute :unit_amount_decimal, String
40
40
 
41
41
  # @!attribute usage_percentage
42
- # @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if `add_on_type` is usage and `usage_type` is percentage. Must be omitted otherwise. `usage_percentage` does not support tiers. See our [Guide](https://developers.recurly.com/guides/usage-based-billing-guide.html) for an overview of how to configure usage add-ons.
42
+ # @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if `add_on_type` is usage and `usage_type` is percentage. Must be omitted otherwise. `usage_percentage` does not support tiers. See our [Guide](https://recurly.com/developers/guides/usage-based-billing-guide.html) for an overview of how to configure usage add-ons.
43
43
  define_attribute :usage_percentage, Float
44
44
  end
45
45
  end
@@ -95,7 +95,7 @@ module Recurly
95
95
  define_attribute :tax_code, String
96
96
 
97
97
  # @!attribute tier_type
98
- # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
98
+ # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://recurly.com/developers/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
99
99
  define_attribute :tier_type, String
100
100
 
101
101
  # @!attribute tiers
@@ -106,6 +106,10 @@ module Recurly
106
106
  # @return [DateTime] Last updated at
107
107
  define_attribute :updated_at, DateTime
108
108
 
109
+ # @!attribute usage_calculation_type
110
+ # @return [String] The type of calculation to be employed for an add-on. Cumulative billing will sum all usage records created in the current billing cycle. Last-in-period billing will apply only the most recent usage record in the billing period. If no value is specified, cumulative billing will be used.
111
+ define_attribute :usage_calculation_type, String
112
+
109
113
  # @!attribute usage_percentage
110
114
  # @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0.
111
115
  define_attribute :usage_percentage, Float
@@ -0,0 +1,38 @@
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 ExternalProduct < Resource
8
+
9
+ # @!attribute created_at
10
+ # @return [DateTime] When the external product was created in Recurly.
11
+ define_attribute :created_at, DateTime
12
+
13
+ # @!attribute external_product_references
14
+ # @return [Array[ExternalProductReferenceMini]] List of external product references of the external product.
15
+ define_attribute :external_product_references, Array, { :item_type => :ExternalProductReferenceMini }
16
+
17
+ # @!attribute id
18
+ # @return [String] System-generated unique identifier for an external product ID, e.g. `e28zov4fw0v2`.
19
+ define_attribute :id, String
20
+
21
+ # @!attribute name
22
+ # @return [String] Name to identify the external product in Recurly.
23
+ define_attribute :name, String
24
+
25
+ # @!attribute object
26
+ # @return [String] Object type
27
+ define_attribute :object, String
28
+
29
+ # @!attribute plan
30
+ # @return [PlanMini] Just the important parts.
31
+ define_attribute :plan, :PlanMini
32
+
33
+ # @!attribute updated_at
34
+ # @return [DateTime] When the external product was updated in Recurly.
35
+ define_attribute :updated_at, DateTime
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,34 @@
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 ExternalProductReferenceMini < Resource
8
+
9
+ # @!attribute created_at
10
+ # @return [DateTime] When the external product was created in Recurly.
11
+ define_attribute :created_at, DateTime
12
+
13
+ # @!attribute external_connection_type
14
+ # @return [String] Source connection platform.
15
+ define_attribute :external_connection_type, String
16
+
17
+ # @!attribute id
18
+ # @return [String] System-generated unique identifier for an external product ID, e.g. `e28zov4fw0v2`.
19
+ define_attribute :id, String
20
+
21
+ # @!attribute object
22
+ # @return [String] object
23
+ define_attribute :object, String
24
+
25
+ # @!attribute reference_code
26
+ # @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.
27
+ define_attribute :reference_code, String
28
+
29
+ # @!attribute updated_at
30
+ # @return [DateTime] When the external product was updated in Recurly.
31
+ define_attribute :updated_at, DateTime
32
+ end
33
+ end
34
+ end
@@ -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 Resources
7
+ class ExternalResourceMini < Resource
8
+
9
+ # @!attribute external_object_reference
10
+ # @return [String] Identifier or URL reference where the resource is canonically available in the external platform.
11
+ define_attribute :external_object_reference, String
12
+
13
+ # @!attribute id
14
+ # @return [String] System-generated unique identifier for an external resource ID, e.g. `e28zov4fw0v2`.
15
+ define_attribute :id, String
16
+
17
+ # @!attribute object
18
+ # @return [String] Object type
19
+ define_attribute :object, String
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,62 @@
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 ExternalSubscription < Resource
8
+
9
+ # @!attribute account
10
+ # @return [AccountMini] Account mini details
11
+ define_attribute :account, :AccountMini
12
+
13
+ # @!attribute activated_at
14
+ # @return [DateTime] When the external subscription was activated in the external platform.
15
+ define_attribute :activated_at, DateTime
16
+
17
+ # @!attribute app_identifier
18
+ # @return [String] Identifier of the app that generated the external subscription.
19
+ define_attribute :app_identifier, String
20
+
21
+ # @!attribute auto_renew
22
+ # @return [Boolean] An indication of whether or not the external subscription will auto-renew at the expiration date.
23
+ define_attribute :auto_renew, :Boolean
24
+
25
+ # @!attribute created_at
26
+ # @return [DateTime] When the external subscription was created in Recurly.
27
+ define_attribute :created_at, DateTime
28
+
29
+ # @!attribute expires_at
30
+ # @return [DateTime] When the external subscription expires in the external platform.
31
+ define_attribute :expires_at, DateTime
32
+
33
+ # @!attribute external_product_reference
34
+ # @return [ExternalProductReferenceMini] External Product Reference details
35
+ define_attribute :external_product_reference, :ExternalProductReferenceMini
36
+
37
+ # @!attribute external_resource
38
+ # @return [ExternalResourceMini] External Resource mini details
39
+ define_attribute :external_resource, :ExternalResourceMini
40
+
41
+ # @!attribute id
42
+ # @return [String] System-generated unique identifier for an external subscription ID, e.g. `e28zov4fw0v2`.
43
+ define_attribute :id, String
44
+
45
+ # @!attribute last_purchased
46
+ # @return [DateTime] When a new billing event occurred on the external subscription in conjunction with a recent billing period, reactivation or upgrade/downgrade.
47
+ define_attribute :last_purchased, DateTime
48
+
49
+ # @!attribute object
50
+ # @return [String] Object type
51
+ define_attribute :object, String
52
+
53
+ # @!attribute quantity
54
+ # @return [Integer] An indication of the quantity of a subscribed item's quantity.
55
+ define_attribute :quantity, Integer
56
+
57
+ # @!attribute updated_at
58
+ # @return [DateTime] When the external subscription was updated in Recurly.
59
+ define_attribute :updated_at, DateTime
60
+ end
61
+ end
62
+ end
@@ -38,6 +38,10 @@ module Recurly
38
38
  # @return [Array[PlanPricing]] Pricing
39
39
  define_attribute :currencies, Array, { :item_type => :PlanPricing }
40
40
 
41
+ # @!attribute custom_fields
42
+ # @return [Array[CustomField]] The custom fields will only be altered when they are included in a request. Sending an empty array will not remove any existing values. To remove a field send the name with a null or empty value.
43
+ define_attribute :custom_fields, Array, { :item_type => :CustomField }
44
+
41
45
  # @!attribute deleted_at
42
46
  # @return [DateTime] Deleted at
43
47
  define_attribute :deleted_at, DateTime
@@ -47,7 +47,7 @@ module Recurly
47
47
  define_attribute :subscription_id, String
48
48
 
49
49
  # @!attribute tier_type
50
- # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
50
+ # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://recurly.com/developers/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
51
51
  define_attribute :tier_type, String
52
52
 
53
53
  # @!attribute tiers
@@ -66,6 +66,10 @@ module Recurly
66
66
  # @return [DateTime] Updated at
67
67
  define_attribute :updated_at, DateTime
68
68
 
69
+ # @!attribute usage_calculation_type
70
+ # @return [String] The type of calculation to be employed for an add-on. Cumulative billing will sum all usage records created in the current billing cycle. Last-in-period billing will apply only the most recent usage record in the billing period. If no value is specified, cumulative billing will be used.
71
+ define_attribute :usage_calculation_type, String
72
+
69
73
  # @!attribute usage_percentage
70
74
  # @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if add_on_type is usage and usage_type is percentage.
71
75
  define_attribute :usage_percentage, Float
@@ -43,7 +43,7 @@ module Recurly
43
43
  define_attribute :recording_timestamp, DateTime
44
44
 
45
45
  # @!attribute tier_type
46
- # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
46
+ # @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://recurly.com/developers/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
47
47
  define_attribute :tier_type, String
48
48
 
49
49
  # @!attribute tiers
@@ -1,3 +1,3 @@
1
1
  module Recurly
2
- VERSION = "4.24.0"
2
+ VERSION = "4.25.0"
3
3
  end
data/openapi/api.yaml CHANGED
@@ -57,7 +57,7 @@ info:
57
57
 
58
58
  We encourage you to update to the latest version of the API and corresponding client library,
59
59
  as most recent versions are more performant than their predecessors. See the
60
- [changelog](https://developers.recurly.com/api/changelog.html) for a comprehensive list of changes
60
+ [changelog](https://recurly.com/developers/api/changelog.html) for a comprehensive list of changes
61
61
  introduced in the latest API version.
62
62
 
63
63
  ### Default Versions
@@ -114,7 +114,7 @@ info:
114
114
  Please consider changing these messages in the target system to be better
115
115
  suited to the audience of the system.
116
116
 
117
- Please see [transaction error codes](https://developers.recurly.com/pages/api-transaction-errors.html) for more details.
117
+ Please see [transaction error codes](https://recurly.com/developers/pages/api-transaction-errors.html) for more details.
118
118
 
119
119
  ## Pagination
120
120
  ### Response Schema
@@ -181,7 +181,7 @@ info:
181
181
 
182
182
  ## Change Log
183
183
 
184
- A list of changes for this version can be found [in the changelog](https://developers.recurly.com/api/changelog.html#v2021-02-25---current-ga-version).
184
+ A list of changes for this version can be found [in the changelog](https://recurly.com/developers/api/changelog.html#v2021-02-25---current-ga-version).
185
185
  version: v2021-02-25
186
186
  security:
187
187
  - api_key: []
@@ -199,6 +199,8 @@ x-tagGroups:
199
199
  - purchase
200
200
  - usage
201
201
  - automated_exports
202
+ - external_subscriptions
203
+ - external_products
202
204
  - name: Products and Promotions
203
205
  tags:
204
206
  - item
@@ -338,6 +340,16 @@ tags:
338
340
  - name: dunning_campaigns
339
341
  x-displayName: Dunning Campaigns
340
342
  description: Settings used when attempting to dun customers whose payments are declined.
343
+ - name: external_subscriptions
344
+ x-displayName: External Subscription
345
+ description: A subscription from an external resource that is not managed by the
346
+ Recurly platform and instead is managed by third-party platforms like Apple Store
347
+ and Google Play.
348
+ - name: external_products
349
+ x-displayName: External Product
350
+ description: A product from an external resource that is not managed by the Recurly
351
+ platform and instead is managed by third-party platforms like Apple Store and
352
+ Google Play.
341
353
  paths:
342
354
  "/sites":
343
355
  get:
@@ -2694,7 +2706,7 @@ paths:
2694
2706
  tags:
2695
2707
  - coupon_redemption
2696
2708
  operationId: list_account_coupon_redemptions
2697
- summary: Show the coupon redemptions for an account
2709
+ summary: List the coupon redemptions for an account
2698
2710
  description: See the [Pagination Guide](/guides/pagination.html) to learn how
2699
2711
  to use pagination in the API and Client Libraries.
2700
2712
  parameters:
@@ -2791,7 +2803,7 @@ paths:
2791
2803
  tags:
2792
2804
  - coupon_redemption
2793
2805
  operationId: list_active_coupon_redemptions
2794
- summary: Show the coupon redemptions that are active on an account
2806
+ summary: List the coupon redemptions that are active on an account
2795
2807
  description: See the [Pagination Guide](/guides/pagination.html) to learn how
2796
2808
  to use pagination in the API and Client Libraries.
2797
2809
  parameters:
@@ -3944,7 +3956,7 @@ paths:
3944
3956
  tags:
3945
3957
  - note
3946
3958
  operationId: list_account_notes
3947
- summary: Fetch a list of an account's notes
3959
+ summary: List an account's notes
3948
3960
  description: See the [Pagination Guide](/guides/pagination.html) to learn how
3949
3961
  to use pagination in the API and Client Libraries.
3950
3962
  parameters:
@@ -7442,6 +7454,129 @@ paths:
7442
7454
  schema:
7443
7455
  "$ref": "#/components/schemas/Error"
7444
7456
  x-code-samples: []
7457
+ "/external_products":
7458
+ get:
7459
+ tags:
7460
+ - external_products
7461
+ operationId: list_external_products
7462
+ summary: List a site's external products
7463
+ description: See the [Pagination Guide](/guides/pagination.html) to learn how
7464
+ to use pagination in the API and Client Libraries.
7465
+ parameters:
7466
+ - "$ref": "#/components/parameters/sort_dates"
7467
+ responses:
7468
+ '200':
7469
+ description: A list of the the external_products on a site.
7470
+ content:
7471
+ application/json:
7472
+ schema:
7473
+ "$ref": "#/components/schemas/ExternalProductList"
7474
+ '404':
7475
+ description: Incorrect site.
7476
+ content:
7477
+ application/json:
7478
+ schema:
7479
+ "$ref": "#/components/schemas/Error"
7480
+ default:
7481
+ description: Unexpected error.
7482
+ content:
7483
+ application/json:
7484
+ schema:
7485
+ "$ref": "#/components/schemas/Error"
7486
+ x-code-samples: []
7487
+ "/external_products/{external_product_id}":
7488
+ parameters:
7489
+ - "$ref": "#/components/parameters/external_product_id"
7490
+ get:
7491
+ tags:
7492
+ - external_products
7493
+ operationId: get_external_product
7494
+ summary: Fetch an external product
7495
+ responses:
7496
+ '200':
7497
+ description: Settings for an external product.
7498
+ content:
7499
+ application/json:
7500
+ schema:
7501
+ "$ref": "#/components/schemas/ExternalProduct"
7502
+ '404':
7503
+ description: Incorrect site or external product ID.
7504
+ content:
7505
+ application/json:
7506
+ schema:
7507
+ "$ref": "#/components/schemas/Error"
7508
+ default:
7509
+ description: Unexpected error.
7510
+ content:
7511
+ application/json:
7512
+ schema:
7513
+ "$ref": "#/components/schemas/Error"
7514
+ x-code-samples: []
7515
+ "/external_subscriptions":
7516
+ get:
7517
+ tags:
7518
+ - external_subscriptions
7519
+ operationId: list_external_subscriptions
7520
+ summary: List a site's external subscriptions
7521
+ description: See the [Pagination Guide](/guides/pagination.html) to learn how
7522
+ to use pagination in the API and Client Libraries.
7523
+ parameters:
7524
+ - "$ref": "#/components/parameters/sort_dates"
7525
+ responses:
7526
+ '200':
7527
+ description: A list of the the external_subscriptions on a site.
7528
+ content:
7529
+ application/json:
7530
+ schema:
7531
+ "$ref": "#/components/schemas/ExternalSubscriptionList"
7532
+ '404':
7533
+ description: Incorrect site.
7534
+ content:
7535
+ application/json:
7536
+ schema:
7537
+ "$ref": "#/components/schemas/Error"
7538
+ default:
7539
+ description: Unexpected error.
7540
+ content:
7541
+ application/json:
7542
+ schema:
7543
+ "$ref": "#/components/schemas/Error"
7544
+ x-code-samples: []
7545
+ "/external_subscriptions/{external_subscription_id}":
7546
+ parameters:
7547
+ - "$ref": "#/components/parameters/external_subscription_id"
7548
+ get:
7549
+ tags:
7550
+ - external_subscriptions
7551
+ operationId: get_external_subscription
7552
+ summary: Fetch an external subscription
7553
+ responses:
7554
+ '200':
7555
+ description: Settings for an external subscription.
7556
+ content:
7557
+ application/json:
7558
+ schema:
7559
+ "$ref": "#/components/schemas/ExternalSubscription"
7560
+ '404':
7561
+ description: Incorrect site or external subscription ID.
7562
+ content:
7563
+ application/json:
7564
+ schema:
7565
+ "$ref": "#/components/schemas/Error"
7566
+ '422':
7567
+ description: Validation error with external resource connection or feature
7568
+ flag.
7569
+ content:
7570
+ application/json:
7571
+ schema:
7572
+ "$ref": "#/components/schemas/Error"
7573
+ default:
7574
+ description: Unexpected error.
7575
+ content:
7576
+ application/json:
7577
+ schema:
7578
+ "$ref": "#/components/schemas/Error"
7579
+ x-code-samples: []
7445
7580
  "/invoices":
7446
7581
  get:
7447
7582
  tags:
@@ -8742,7 +8877,7 @@ paths:
8742
8877
  tags:
8743
8878
  - coupon_redemption
8744
8879
  operationId: list_invoice_coupon_redemptions
8745
- summary: Show the coupon redemptions applied to an invoice
8880
+ summary: List the coupon redemptions applied to an invoice
8746
8881
  description: See the [Pagination Guide](/guides/pagination.html) to learn how
8747
8882
  to use pagination in the API and Client Libraries.
8748
8883
  parameters:
@@ -13327,7 +13462,7 @@ paths:
13327
13462
  tags:
13328
13463
  - coupon_redemption
13329
13464
  operationId: list_subscription_coupon_redemptions
13330
- summary: Show the coupon redemptions for a subscription
13465
+ summary: List the coupon redemptions for a subscription
13331
13466
  description: See the [Pagination Guide](/guides/pagination.html) to learn how
13332
13467
  to use pagination in the API and Client Libraries.
13333
13468
  parameters:
@@ -14907,7 +15042,7 @@ paths:
14907
15042
  tags:
14908
15043
  - dunning_campaigns
14909
15044
  operationId: list_dunning_campaigns
14910
- summary: Show the dunning campaigns for a site
15045
+ summary: List the dunning campaigns for a site
14911
15046
  description: See the [Pagination Guide](/guides/pagination.html) to learn how
14912
15047
  to use pagination in the API and Client Libraries.
14913
15048
  parameters:
@@ -14939,7 +15074,7 @@ paths:
14939
15074
  tags:
14940
15075
  - dunning_campaigns
14941
15076
  operationId: get_dunning_campaign
14942
- summary: Show the settings for a dunning campaign
15077
+ summary: Fetch a dunning campaign
14943
15078
  responses:
14944
15079
  '200':
14945
15080
  description: Settings for a dunning campaign.
@@ -15042,7 +15177,7 @@ paths:
15042
15177
  tags:
15043
15178
  - invoice_templates
15044
15179
  operationId: get_invoice_template
15045
- summary: Show the settings for an invoice template
15180
+ summary: Fetch an invoice template
15046
15181
  responses:
15047
15182
  '200':
15048
15183
  description: Settings for an invoice template.
@@ -15077,7 +15212,7 @@ paths:
15077
15212
  tags:
15078
15213
  - account
15079
15214
  operationId: list_entitlements
15080
- summary: Show all entitlements granted to an account
15215
+ summary: List entitlements granted to an account
15081
15216
  responses:
15082
15217
  '200':
15083
15218
  description: A list of the entitlements granted to an account.
@@ -15098,6 +15233,38 @@ paths:
15098
15233
  schema:
15099
15234
  "$ref": "#/components/schemas/Error"
15100
15235
  x-code-samples: []
15236
+ "/accounts/{account_id}/external_subscriptions":
15237
+ parameters:
15238
+ - "$ref": "#/components/parameters/account_id"
15239
+ get:
15240
+ tags:
15241
+ - account
15242
+ operationId: list_account_external_subscriptions
15243
+ summary: List an account's external subscriptions
15244
+ description: See the [Pagination Guide](/guides/pagination.html) to learn how
15245
+ to use pagination in the API and Client Libraries.
15246
+ parameters:
15247
+ - "$ref": "#/components/parameters/sort_dates"
15248
+ responses:
15249
+ '200':
15250
+ description: A list of the the external_subscriptions on an account.
15251
+ content:
15252
+ application/json:
15253
+ schema:
15254
+ "$ref": "#/components/schemas/ExternalSubscriptionList"
15255
+ '404':
15256
+ description: Incorrect account.
15257
+ content:
15258
+ application/json:
15259
+ schema:
15260
+ "$ref": "#/components/schemas/Error"
15261
+ default:
15262
+ description: Unexpected error.
15263
+ content:
15264
+ application/json:
15265
+ schema:
15266
+ "$ref": "#/components/schemas/Error"
15267
+ x-code-samples: []
15101
15268
  servers:
15102
15269
  - url: https://v3.recurly.com
15103
15270
  - url: https://v3.eu.recurly.com
@@ -15165,6 +15332,20 @@ components:
15165
15332
  required: true
15166
15333
  schema:
15167
15334
  type: string
15335
+ external_product_id:
15336
+ name: external_product_id
15337
+ in: path
15338
+ description: External product id
15339
+ required: true
15340
+ schema:
15341
+ type: string
15342
+ external_subscription_id:
15343
+ name: external_subscription_id
15344
+ in: path
15345
+ description: External subscription id
15346
+ required: true
15347
+ schema:
15348
+ type: string
15168
15349
  invoice_template_id:
15169
15350
  name: invoice_template_id
15170
15351
  in: path
@@ -16369,6 +16550,8 @@ components:
16369
16550
  "$ref": "#/components/schemas/AddOnTypeEnum"
16370
16551
  usage_type:
16371
16552
  "$ref": "#/components/schemas/UsageTypeEnum"
16553
+ usage_calculation_type:
16554
+ "$ref": "#/components/schemas/UsageCalculationTypeEnum"
16372
16555
  usage_percentage:
16373
16556
  type: number
16374
16557
  format: float
@@ -16522,6 +16705,8 @@ components:
16522
16705
  "$ref": "#/components/schemas/AddOnTypeCreateEnum"
16523
16706
  usage_type:
16524
16707
  "$ref": "#/components/schemas/UsageTypeCreateEnum"
16708
+ usage_calculation_type:
16709
+ "$ref": "#/components/schemas/UsageCalculationTypeEnum"
16525
16710
  usage_percentage:
16526
16711
  type: number
16527
16712
  format: float
@@ -16682,6 +16867,8 @@ components:
16682
16867
  This can be up to 4 decimal places. A value between 0.0 and 100.0. Required
16683
16868
  if `add_on_type` is usage, `tier_type` is `flat` and `usage_type` is percentage.
16684
16869
  Must be omitted otherwise.
16870
+ usage_calculation_type:
16871
+ "$ref": "#/components/schemas/UsageCalculationTypeEnum"
16685
16872
  measured_unit_id:
16686
16873
  type: string
16687
16874
  title: Measured Unit ID
@@ -16882,7 +17069,7 @@ components:
16882
17069
  token_id:
16883
17070
  type: string
16884
17071
  title: Token ID
16885
- description: A token [generated by Recurly.js](https://developers.recurly.com/reference/recurly-js/#getting-a-token).
17072
+ description: A token [generated by Recurly.js](https://recurly.com/developers/reference/recurly-js/#getting-a-token).
16886
17073
  maxLength: 22
16887
17074
  first_name:
16888
17075
  type: string
@@ -19090,6 +19277,8 @@ components:
19090
19277
  title: Ramp Intervals
19091
19278
  items:
19092
19279
  "$ref": "#/components/schemas/PlanRampInterval"
19280
+ custom_fields:
19281
+ "$ref": "#/components/schemas/CustomFields"
19093
19282
  revenue_schedule_type:
19094
19283
  title: Revenue schedule type
19095
19284
  "$ref": "#/components/schemas/RevenueScheduleTypeEnum"
@@ -19260,6 +19449,8 @@ components:
19260
19449
  title: Ramp Intervals
19261
19450
  items:
19262
19451
  "$ref": "#/components/schemas/PlanRampInterval"
19452
+ custom_fields:
19453
+ "$ref": "#/components/schemas/CustomFields"
19263
19454
  revenue_schedule_type:
19264
19455
  title: Revenue schedule type
19265
19456
  "$ref": "#/components/schemas/RevenueScheduleTypeEnum"
@@ -19474,6 +19665,8 @@ components:
19474
19665
  title: Ramp Intervals
19475
19666
  items:
19476
19667
  "$ref": "#/components/schemas/PlanRampInterval"
19668
+ custom_fields:
19669
+ "$ref": "#/components/schemas/CustomFields"
19477
19670
  revenue_schedule_type:
19478
19671
  title: Revenue schedule type
19479
19672
  "$ref": "#/components/schemas/RevenueScheduleTypeEnum"
@@ -20401,6 +20594,8 @@ components:
20401
20594
  "$ref": "#/components/schemas/RevenueScheduleTypeEnum"
20402
20595
  tier_type:
20403
20596
  "$ref": "#/components/schemas/TierTypeEnum"
20597
+ usage_calculation_type:
20598
+ "$ref": "#/components/schemas/UsageCalculationTypeEnum"
20404
20599
  usage_timeframe:
20405
20600
  "$ref": "#/components/schemas/UsageTimeframeEnum"
20406
20601
  tiers:
@@ -20491,7 +20686,7 @@ components:
20491
20686
  If the plan add-on's `tier_type` is `flat`, then `tiers` must be absent. The `tiers` object
20492
20687
  must include one to many tiers with `ending_quantity` and `unit_amount`.
20493
20688
  There must be one tier without an `ending_quantity` value which represents the final tier.
20494
- See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html)
20689
+ See our [Guide](https://recurly.com/developers/guides/item-addon-guide.html)
20495
20690
  for an overview of how to configure quantity-based pricing models.
20496
20691
  percentage_tiers:
20497
20692
  type: array
@@ -20512,7 +20707,7 @@ components:
20512
20707
  description: The percentage taken of the monetary amount of usage tracked.
20513
20708
  This can be up to 4 decimal places. A value between 0.0 and 100.0. Required
20514
20709
  if `add_on_type` is usage and `usage_type` is percentage. Must be omitted
20515
- otherwise. `usage_percentage` does not support tiers. See our [Guide](https://developers.recurly.com/guides/usage-based-billing-guide.html)
20710
+ otherwise. `usage_percentage` does not support tiers. See our [Guide](https://recurly.com/developers/guides/usage-based-billing-guide.html)
20516
20711
  for an overview of how to configure usage add-ons.
20517
20712
  revenue_schedule_type:
20518
20713
  title: Revenue schedule type
@@ -22175,6 +22370,184 @@ components:
22175
22370
  type: string
22176
22371
  format: date-time
22177
22372
  description: Time the object was last updated
22373
+ ExternalProduct:
22374
+ type: object
22375
+ description: Product from an external resource such as Apple App or Google Play.
22376
+ properties:
22377
+ id:
22378
+ type: string
22379
+ title: External product ID.
22380
+ description: System-generated unique identifier for an external product
22381
+ ID, e.g. `e28zov4fw0v2`.
22382
+ object:
22383
+ type: string
22384
+ title: Object type
22385
+ name:
22386
+ type: string
22387
+ title: Name
22388
+ description: Name to identify the external product in Recurly.
22389
+ plan:
22390
+ "$ref": "#/components/schemas/PlanMini"
22391
+ created_at:
22392
+ type: string
22393
+ format: date-time
22394
+ description: When the external product was created in Recurly.
22395
+ updated_at:
22396
+ type: string
22397
+ format: date-time
22398
+ description: When the external product was updated in Recurly.
22399
+ external_product_references:
22400
+ type: array
22401
+ title: External Product References
22402
+ description: List of external product references of the external product.
22403
+ items:
22404
+ "$ref": "#/components/schemas/ExternalProductReferenceMini"
22405
+ ExternalProductList:
22406
+ type: object
22407
+ properties:
22408
+ object:
22409
+ type: string
22410
+ title: Object type
22411
+ description: Will always be List.
22412
+ has_more:
22413
+ type: boolean
22414
+ description: Indicates there are more results on subsequent pages.
22415
+ next:
22416
+ type: string
22417
+ description: Path to subsequent page of results.
22418
+ data:
22419
+ type: array
22420
+ items:
22421
+ "$ref": "#/components/schemas/ExternalProduct"
22422
+ ExternalProductReferenceMini:
22423
+ type: object
22424
+ title: External Product Reference details
22425
+ description: External Product Reference details
22426
+ properties:
22427
+ id:
22428
+ type: string
22429
+ title: External Product ID
22430
+ description: System-generated unique identifier for an external product
22431
+ ID, e.g. `e28zov4fw0v2`.
22432
+ object:
22433
+ type: string
22434
+ title: object
22435
+ reference_code:
22436
+ type: string
22437
+ title: reference_code
22438
+ description: A code which associates the external product to a corresponding
22439
+ object or resource in an external platform like the Apple App Store or
22440
+ Google Play Store.
22441
+ external_connection_type:
22442
+ type: string
22443
+ title: external_connection_type
22444
+ description: Source connection platform.
22445
+ created_at:
22446
+ type: string
22447
+ format: date-time
22448
+ description: When the external product was created in Recurly.
22449
+ updated_at:
22450
+ type: string
22451
+ format: date-time
22452
+ description: When the external product was updated in Recurly.
22453
+ ExternalSubscription:
22454
+ type: object
22455
+ description: Subscription from an external resource such as Apple App or Google
22456
+ Play.
22457
+ properties:
22458
+ id:
22459
+ type: string
22460
+ title: External subscription ID
22461
+ description: System-generated unique identifier for an external subscription
22462
+ ID, e.g. `e28zov4fw0v2`.
22463
+ object:
22464
+ type: string
22465
+ title: Object type
22466
+ account:
22467
+ "$ref": "#/components/schemas/AccountMini"
22468
+ external_resource:
22469
+ "$ref": "#/components/schemas/ExternalResourceMini"
22470
+ external_product_reference:
22471
+ "$ref": "#/components/schemas/ExternalProductReferenceMini"
22472
+ last_purchased:
22473
+ type: string
22474
+ format: date-time
22475
+ title: Last purchased
22476
+ description: When a new billing event occurred on the external subscription
22477
+ in conjunction with a recent billing period, reactivation or upgrade/downgrade.
22478
+ auto_renew:
22479
+ type: boolean
22480
+ title: Auto-renew
22481
+ description: An indication of whether or not the external subscription will
22482
+ auto-renew at the expiration date.
22483
+ default: false
22484
+ app_identifier:
22485
+ type: string
22486
+ title: App identifier
22487
+ description: Identifier of the app that generated the external subscription.
22488
+ quantity:
22489
+ type: integer
22490
+ title: Quantity
22491
+ description: An indication of the quantity of a subscribed item's quantity.
22492
+ default: 1
22493
+ minimum: 0
22494
+ activated_at:
22495
+ type: string
22496
+ format: date-time
22497
+ title: Activated at
22498
+ description: When the external subscription was activated in the external
22499
+ platform.
22500
+ expires_at:
22501
+ type: string
22502
+ format: date-time
22503
+ title: Expires at
22504
+ description: When the external subscription expires in the external platform.
22505
+ created_at:
22506
+ type: string
22507
+ format: date-time
22508
+ title: Created at
22509
+ description: When the external subscription was created in Recurly.
22510
+ updated_at:
22511
+ type: string
22512
+ format: date-time
22513
+ title: Updated at
22514
+ description: When the external subscription was updated in Recurly.
22515
+ ExternalSubscriptionList:
22516
+ type: object
22517
+ properties:
22518
+ object:
22519
+ type: string
22520
+ title: Object type
22521
+ description: Will always be List.
22522
+ has_more:
22523
+ type: boolean
22524
+ description: Indicates there are more results on subsequent pages.
22525
+ next:
22526
+ type: string
22527
+ description: Path to subsequent page of results.
22528
+ data:
22529
+ type: array
22530
+ items:
22531
+ "$ref": "#/components/schemas/ExternalSubscription"
22532
+ ExternalResourceMini:
22533
+ type: object
22534
+ title: External Resource mini details
22535
+ properties:
22536
+ id:
22537
+ type: string
22538
+ title: External resource ID
22539
+ description: System-generated unique identifier for an external resource
22540
+ ID, e.g. `e28zov4fw0v2`.
22541
+ object:
22542
+ type: string
22543
+ title: Object type
22544
+ external_object_reference:
22545
+ type: string
22546
+ title: External Object Reference
22547
+ description: Identifier or URL reference where the resource is canonically
22548
+ available in the external platform.
22549
+ maxLength: 255
22550
+ readOnly: true
22178
22551
  CustomerPermission:
22179
22552
  type: object
22180
22553
  properties:
@@ -22367,6 +22740,7 @@ components:
22367
22740
  enum:
22368
22741
  - account
22369
22742
  - item
22743
+ - plan
22370
22744
  - subscription
22371
22745
  RefundTypeEnum:
22372
22746
  type: string
@@ -22392,6 +22766,15 @@ components:
22392
22766
  - percentage
22393
22767
  title: Usage Type
22394
22768
  description: Type of usage, returns usage type if `add_on_type` is `usage`.
22769
+ UsageCalculationTypeEnum:
22770
+ type: string
22771
+ description: The type of calculation to be employed for an add-on. Cumulative
22772
+ billing will sum all usage records created in the current billing cycle. Last-in-period
22773
+ billing will apply only the most recent usage record in the billing period. If
22774
+ no value is specified, cumulative billing will be used.
22775
+ enum:
22776
+ - cumulative
22777
+ - last_in_period
22395
22778
  BillingStatusEnum:
22396
22779
  type: string
22397
22780
  default: unbilled
@@ -22596,7 +22979,7 @@ components:
22596
22979
  title: Usage Type
22597
22980
  description: |
22598
22981
  Type of usage, required if `add_on_type` is `usage`. See our
22599
- [Guide](https://developers.recurly.com/guides/usage-based-billing-guide.html) for an
22982
+ [Guide](https://recurly.com/developers/guides/usage-based-billing-guide.html) for an
22600
22983
  overview of how to configure usage add-ons.
22601
22984
  TierTypeEnum:
22602
22985
  type: string
@@ -22604,7 +22987,7 @@ components:
22604
22987
  description: |
22605
22988
  The pricing model for the add-on. For more information,
22606
22989
  [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our
22607
- [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how
22990
+ [Guide](https://recurly.com/developers/guides/item-addon-guide.html) for an overview of how
22608
22991
  to configure quantity-based pricing models.
22609
22992
  default: flat
22610
22993
  enum:
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.24.0
4
+ version: 4.25.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Recurly
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-03 00:00:00.000000000 Z
11
+ date: 2022-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -252,6 +252,10 @@ files:
252
252
  - lib/recurly/resources/export_dates.rb
253
253
  - lib/recurly/resources/export_file.rb
254
254
  - lib/recurly/resources/export_files.rb
255
+ - lib/recurly/resources/external_product.rb
256
+ - lib/recurly/resources/external_product_reference_mini.rb
257
+ - lib/recurly/resources/external_resource_mini.rb
258
+ - lib/recurly/resources/external_subscription.rb
255
259
  - lib/recurly/resources/fraud_info.rb
256
260
  - lib/recurly/resources/granted_by.rb
257
261
  - lib/recurly/resources/invoice.rb
@@ -322,7 +326,7 @@ metadata:
322
326
  changelog_uri: https://github.com/recurly/recurly-client-ruby/blob/master/CHANGELOG.md
323
327
  documentation_uri: https://recurly.github.io/recurly-client-ruby/
324
328
  homepage_uri: https://github.com/recurly/recurly-client-ruby
325
- source_code_uri: https://github.com/recurly/recurly-client-ruby/tree/4.24.0
329
+ source_code_uri: https://github.com/recurly/recurly-client-ruby/tree/4.25.0
326
330
  post_install_message:
327
331
  rdoc_options: []
328
332
  require_paths: