recurly 2.17.0 → 3.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. checksums.yaml +4 -4
  2. data/.bumpversion.cfg +15 -0
  3. data/.github/ISSUE_TEMPLATE/bug-report.md +30 -0
  4. data/.github/ISSUE_TEMPLATE/question-or-other.md +10 -0
  5. data/.github/workflows/docs.yml +28 -0
  6. data/.github_changelog_generator +8 -0
  7. data/.gitignore +15 -0
  8. data/.rspec +2 -0
  9. data/.travis.yml +13 -0
  10. data/.yardopts +2 -0
  11. data/CHANGELOG.md +313 -0
  12. data/CODE_OF_CONDUCT.md +130 -0
  13. data/CONTRIBUTING.md +106 -0
  14. data/GETTING_STARTED.md +319 -0
  15. data/Gemfile +4 -0
  16. data/LICENSE.txt +21 -0
  17. data/README.md +9 -153
  18. data/Rakefile +6 -0
  19. data/benchmark.rb +16 -0
  20. data/lib/data/ca-certificates.crt +3466 -0
  21. data/lib/recurly/client/operations.rb +3665 -0
  22. data/lib/recurly/client.rb +353 -0
  23. data/lib/recurly/connection_pool.rb +40 -0
  24. data/lib/recurly/errors/api_errors.rb +83 -0
  25. data/lib/recurly/errors/network_errors.rb +10 -0
  26. data/lib/recurly/errors.rb +68 -0
  27. data/lib/recurly/http.rb +50 -0
  28. data/lib/recurly/pager.rb +146 -0
  29. data/lib/recurly/request.rb +31 -0
  30. data/lib/recurly/requests/account_acquisition_cost.rb +18 -0
  31. data/lib/recurly/requests/account_acquisition_updatable.rb +26 -0
  32. data/lib/recurly/requests/account_create.rb +90 -0
  33. data/lib/recurly/requests/account_purchase.rb +90 -0
  34. data/lib/recurly/requests/account_update.rb +78 -0
  35. data/lib/recurly/requests/add_on_create.rb +94 -0
  36. data/lib/recurly/requests/add_on_pricing.rb +18 -0
  37. data/lib/recurly/requests/add_on_update.rb +74 -0
  38. data/lib/recurly/requests/address.rb +46 -0
  39. data/lib/recurly/requests/billing_info_create.rb +110 -0
  40. data/lib/recurly/requests/coupon_bulk_create.rb +14 -0
  41. data/lib/recurly/requests/coupon_create.rb +94 -0
  42. data/lib/recurly/requests/coupon_pricing.rb +18 -0
  43. data/lib/recurly/requests/coupon_redemption_create.rb +18 -0
  44. data/lib/recurly/requests/coupon_update.rb +34 -0
  45. data/lib/recurly/requests/custom_field.rb +18 -0
  46. data/lib/recurly/requests/external_refund.rb +22 -0
  47. data/lib/recurly/requests/external_transaction.rb +26 -0
  48. data/lib/recurly/requests/invoice_address.rb +54 -0
  49. data/lib/recurly/requests/invoice_collect.rb +18 -0
  50. data/lib/recurly/requests/invoice_create.rb +42 -0
  51. data/lib/recurly/requests/invoice_refund.rb +34 -0
  52. data/lib/recurly/requests/invoice_updatable.rb +34 -0
  53. data/lib/recurly/requests/item_create.rb +58 -0
  54. data/lib/recurly/requests/item_update.rb +58 -0
  55. data/lib/recurly/requests/line_item_create.rb +82 -0
  56. data/lib/recurly/requests/line_item_refund.rb +22 -0
  57. data/lib/recurly/requests/measured_unit_create.rb +22 -0
  58. data/lib/recurly/requests/measured_unit_update.rb +22 -0
  59. data/lib/recurly/requests/plan_create.rb +98 -0
  60. data/lib/recurly/requests/plan_hosted_pages.rb +26 -0
  61. data/lib/recurly/requests/plan_pricing.rb +22 -0
  62. data/lib/recurly/requests/plan_update.rb +94 -0
  63. data/lib/recurly/requests/pricing.rb +18 -0
  64. data/lib/recurly/requests/purchase_create.rb +74 -0
  65. data/lib/recurly/requests/shipping_address_create.rb +62 -0
  66. data/lib/recurly/requests/shipping_address_update.rb +66 -0
  67. data/lib/recurly/requests/shipping_fee_create.rb +22 -0
  68. data/lib/recurly/requests/shipping_method_create.rb +26 -0
  69. data/lib/recurly/requests/shipping_method_update.rb +26 -0
  70. data/lib/recurly/requests/shipping_purchase.rb +22 -0
  71. data/lib/recurly/requests/subscription_add_on_create.rb +38 -0
  72. data/lib/recurly/requests/subscription_add_on_tier.rb +18 -0
  73. data/lib/recurly/requests/subscription_add_on_update.rb +42 -0
  74. data/lib/recurly/requests/subscription_cancel.rb +14 -0
  75. data/lib/recurly/requests/subscription_change_create.rb +66 -0
  76. data/lib/recurly/requests/subscription_change_shipping_create.rb +22 -0
  77. data/lib/recurly/requests/subscription_create.rb +106 -0
  78. data/lib/recurly/requests/subscription_pause.rb +14 -0
  79. data/lib/recurly/requests/subscription_purchase.rb +66 -0
  80. data/lib/recurly/requests/subscription_shipping_create.rb +30 -0
  81. data/lib/recurly/requests/subscription_shipping_purchase.rb +22 -0
  82. data/lib/recurly/requests/subscription_shipping_update.rb +22 -0
  83. data/lib/recurly/requests/subscription_update.rb +58 -0
  84. data/lib/recurly/requests/tier.rb +18 -0
  85. data/lib/recurly/requests/usage_create.rb +26 -0
  86. data/lib/recurly/requests.rb +8 -0
  87. data/lib/recurly/resource.rb +23 -1082
  88. data/lib/recurly/resources/account.rb +130 -0
  89. data/lib/recurly/resources/account_acquisition.rb +46 -0
  90. data/lib/recurly/resources/account_acquisition_cost.rb +18 -0
  91. data/lib/recurly/resources/account_balance.rb +26 -0
  92. data/lib/recurly/resources/account_balance_amount.rb +18 -0
  93. data/lib/recurly/resources/account_mini.rb +46 -0
  94. data/lib/recurly/resources/account_note.rb +34 -0
  95. data/lib/recurly/resources/add_on.rb +114 -0
  96. data/lib/recurly/resources/add_on_mini.rb +54 -0
  97. data/lib/recurly/resources/add_on_pricing.rb +18 -0
  98. data/lib/recurly/resources/address.rb +46 -0
  99. data/lib/recurly/resources/billing_info.rb +66 -0
  100. data/lib/recurly/resources/billing_info_updated_by.rb +18 -0
  101. data/lib/recurly/resources/binary_file.rb +14 -0
  102. data/lib/recurly/resources/coupon.rb +130 -0
  103. data/lib/recurly/resources/coupon_discount.rb +26 -0
  104. data/lib/recurly/resources/coupon_discount_pricing.rb +18 -0
  105. data/lib/recurly/resources/coupon_discount_trial.rb +18 -0
  106. data/lib/recurly/resources/coupon_mini.rb +42 -0
  107. data/lib/recurly/resources/coupon_redemption.rb +50 -0
  108. data/lib/recurly/resources/coupon_redemption_mini.rb +34 -0
  109. data/lib/recurly/resources/credit_payment.rb +66 -0
  110. data/lib/recurly/resources/custom_field.rb +18 -0
  111. data/lib/recurly/resources/custom_field_definition.rb +50 -0
  112. data/lib/recurly/resources/error.rb +22 -0
  113. data/lib/recurly/resources/error_may_have_transaction.rb +26 -0
  114. data/lib/recurly/resources/export_dates.rb +18 -0
  115. data/lib/recurly/resources/export_file.rb +22 -0
  116. data/lib/recurly/resources/export_files.rb +18 -0
  117. data/lib/recurly/resources/fraud_info.rb +22 -0
  118. data/lib/recurly/resources/invoice.rb +146 -0
  119. data/lib/recurly/resources/invoice_address.rb +54 -0
  120. data/lib/recurly/resources/invoice_collection.rb +22 -0
  121. data/lib/recurly/resources/invoice_mini.rb +30 -0
  122. data/lib/recurly/resources/item.rb +82 -0
  123. data/lib/recurly/resources/item_mini.rb +34 -0
  124. data/lib/recurly/resources/line_item.rb +198 -0
  125. data/lib/recurly/resources/line_item_list.rb +26 -0
  126. data/lib/recurly/resources/measured_unit.rb +46 -0
  127. data/lib/recurly/resources/payment_method.rb +66 -0
  128. data/lib/recurly/resources/plan.rb +118 -0
  129. data/lib/recurly/resources/plan_hosted_pages.rb +26 -0
  130. data/lib/recurly/resources/plan_mini.rb +26 -0
  131. data/lib/recurly/resources/plan_pricing.rb +22 -0
  132. data/lib/recurly/resources/pricing.rb +18 -0
  133. data/lib/recurly/resources/settings.rb +22 -0
  134. data/lib/recurly/resources/shipping_address.rb +82 -0
  135. data/lib/recurly/resources/shipping_method.rb +46 -0
  136. data/lib/recurly/resources/shipping_method_mini.rb +26 -0
  137. data/lib/recurly/resources/site.rb +54 -0
  138. data/lib/recurly/resources/subscription.rb +174 -0
  139. data/lib/recurly/resources/subscription_add_on.rb +66 -0
  140. data/lib/recurly/resources/subscription_add_on_tier.rb +18 -0
  141. data/lib/recurly/resources/subscription_change.rb +78 -0
  142. data/lib/recurly/resources/subscription_change_preview.rb +78 -0
  143. data/lib/recurly/resources/subscription_shipping.rb +26 -0
  144. data/lib/recurly/resources/tax_info.rb +22 -0
  145. data/lib/recurly/resources/tier.rb +18 -0
  146. data/lib/recurly/resources/transaction.rb +158 -0
  147. data/lib/recurly/resources/transaction_error.rb +38 -0
  148. data/lib/recurly/resources/transaction_payment_gateway.rb +26 -0
  149. data/lib/recurly/resources/unique_coupon_code.rb +50 -0
  150. data/lib/recurly/resources/usage.rb +70 -0
  151. data/lib/recurly/resources/user.rb +42 -0
  152. data/lib/recurly/resources.rb +18 -0
  153. data/lib/recurly/schema/file_parser.rb +13 -0
  154. data/lib/recurly/schema/json_parser.rb +72 -0
  155. data/lib/recurly/schema/request_caster.rb +60 -0
  156. data/lib/recurly/schema/resource_caster.rb +46 -0
  157. data/lib/recurly/schema/schema_factory.rb +48 -0
  158. data/lib/recurly/schema/schema_validator.rb +144 -0
  159. data/lib/recurly/schema.rb +156 -0
  160. data/lib/recurly/version.rb +1 -15
  161. data/lib/recurly.rb +15 -137
  162. data/openapi/api.yaml +21024 -0
  163. data/recurly.gemspec +39 -0
  164. data/scripts/build +5 -0
  165. data/scripts/bump +11 -0
  166. data/scripts/changelog +14 -0
  167. data/scripts/clean +6 -0
  168. data/scripts/format +12 -0
  169. data/scripts/prepare-release +36 -0
  170. data/scripts/release +32 -0
  171. data/scripts/test +15 -0
  172. metadata +206 -168
  173. data/lib/recurly/account.rb +0 -169
  174. data/lib/recurly/account_balance.rb +0 -21
  175. data/lib/recurly/add_on.rb +0 -30
  176. data/lib/recurly/address.rb +0 -25
  177. data/lib/recurly/adjustment.rb +0 -76
  178. data/lib/recurly/api/errors.rb +0 -206
  179. data/lib/recurly/api/net_http_adapter.rb +0 -111
  180. data/lib/recurly/api.rb +0 -101
  181. data/lib/recurly/billing_info.rb +0 -80
  182. data/lib/recurly/coupon.rb +0 -134
  183. data/lib/recurly/credit_payment.rb +0 -28
  184. data/lib/recurly/custom_field.rb +0 -15
  185. data/lib/recurly/delivery.rb +0 -19
  186. data/lib/recurly/error.rb +0 -13
  187. data/lib/recurly/gift_card.rb +0 -79
  188. data/lib/recurly/helper.rb +0 -51
  189. data/lib/recurly/invoice.rb +0 -268
  190. data/lib/recurly/invoice_collection.rb +0 -14
  191. data/lib/recurly/js.rb +0 -14
  192. data/lib/recurly/juris_detail.rb +0 -14
  193. data/lib/recurly/measured_unit.rb +0 -16
  194. data/lib/recurly/money.rb +0 -120
  195. data/lib/recurly/plan.rb +0 -40
  196. data/lib/recurly/purchase.rb +0 -219
  197. data/lib/recurly/redemption.rb +0 -46
  198. data/lib/recurly/resource/association.rb +0 -16
  199. data/lib/recurly/resource/errors.rb +0 -20
  200. data/lib/recurly/resource/pager.rb +0 -314
  201. data/lib/recurly/shipping_address.rb +0 -22
  202. data/lib/recurly/subscription/add_ons.rb +0 -77
  203. data/lib/recurly/subscription.rb +0 -325
  204. data/lib/recurly/subscription_add_on.rb +0 -50
  205. data/lib/recurly/tax_detail.rb +0 -14
  206. data/lib/recurly/tax_type.rb +0 -12
  207. data/lib/recurly/transaction/errors.rb +0 -107
  208. data/lib/recurly/transaction.rb +0 -116
  209. data/lib/recurly/usage.rb +0 -24
  210. data/lib/recurly/webhook/account_notification.rb +0 -10
  211. data/lib/recurly/webhook/billing_info_updated_notification.rb +0 -6
  212. data/lib/recurly/webhook/canceled_account_notification.rb +0 -6
  213. data/lib/recurly/webhook/canceled_subscription_notification.rb +0 -6
  214. data/lib/recurly/webhook/closed_credit_invoice_notification.rb +0 -6
  215. data/lib/recurly/webhook/closed_invoice_notification.rb +0 -6
  216. data/lib/recurly/webhook/credit_payment_notification.rb +0 -12
  217. data/lib/recurly/webhook/dunning_notification.rb +0 -14
  218. data/lib/recurly/webhook/expired_subscription_notification.rb +0 -6
  219. data/lib/recurly/webhook/failed_charge_invoice_notification.rb +0 -6
  220. data/lib/recurly/webhook/failed_payment_notification.rb +0 -6
  221. data/lib/recurly/webhook/gift_card_notification.rb +0 -8
  222. data/lib/recurly/webhook/invoice_notification.rb +0 -12
  223. data/lib/recurly/webhook/new_account_notification.rb +0 -6
  224. data/lib/recurly/webhook/new_charge_invoice_notification.rb +0 -6
  225. data/lib/recurly/webhook/new_credit_invoice_notification.rb +0 -6
  226. data/lib/recurly/webhook/new_credit_payment_notification.rb +0 -6
  227. data/lib/recurly/webhook/new_dunning_event_notification.rb +0 -6
  228. data/lib/recurly/webhook/new_invoice_notification.rb +0 -6
  229. data/lib/recurly/webhook/new_subscription_notification.rb +0 -6
  230. data/lib/recurly/webhook/new_usage_notification.rb +0 -8
  231. data/lib/recurly/webhook/notification.rb +0 -18
  232. data/lib/recurly/webhook/paid_charge_invoice_notification.rb +0 -6
  233. data/lib/recurly/webhook/past_due_charge_invoice_notification.rb +0 -6
  234. data/lib/recurly/webhook/past_due_invoice_notification.rb +0 -6
  235. data/lib/recurly/webhook/processing_charge_invoice_notification.rb +0 -6
  236. data/lib/recurly/webhook/processing_credit_invoice_notification.rb +0 -6
  237. data/lib/recurly/webhook/processing_invoice_notification.rb +0 -6
  238. data/lib/recurly/webhook/processing_payment_notification.rb +0 -6
  239. data/lib/recurly/webhook/purchased_gift_card_notification.rb +0 -7
  240. data/lib/recurly/webhook/reactivated_account_notification.rb +0 -6
  241. data/lib/recurly/webhook/redeemed_gift_card_notification.rb +0 -7
  242. data/lib/recurly/webhook/renewed_subscription_notification.rb +0 -6
  243. data/lib/recurly/webhook/reopened_charge_invoice_notification.rb +0 -6
  244. data/lib/recurly/webhook/reopened_credit_invoice_notification.rb +0 -6
  245. data/lib/recurly/webhook/scheduled_payment_notification.rb +0 -6
  246. data/lib/recurly/webhook/subscription_notification.rb +0 -12
  247. data/lib/recurly/webhook/successful_payment_notification.rb +0 -6
  248. data/lib/recurly/webhook/successful_refund_notification.rb +0 -6
  249. data/lib/recurly/webhook/transaction_authorized_notification.rb +0 -6
  250. data/lib/recurly/webhook/transaction_notification.rb +0 -12
  251. data/lib/recurly/webhook/updated_account_notification.rb +0 -6
  252. data/lib/recurly/webhook/updated_balance_gift_card_notification.rb +0 -7
  253. data/lib/recurly/webhook/updated_subscription_notification.rb +0 -6
  254. data/lib/recurly/webhook/void_payment_notification.rb +0 -6
  255. data/lib/recurly/webhook/voided_credit_invoice_notification.rb +0 -6
  256. data/lib/recurly/webhook/voided_credit_payment_notification.rb +0 -6
  257. data/lib/recurly/webhook.rb +0 -88
  258. data/lib/recurly/xml/nokogiri.rb +0 -58
  259. data/lib/recurly/xml/rexml.rb +0 -50
  260. data/lib/recurly/xml.rb +0 -120
@@ -0,0 +1,130 @@
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 Coupon < Resource
8
+
9
+ # @!attribute applies_to_all_plans
10
+ # @return [Boolean] The coupon is valid for all plans if true. If false then `plans` and `plans_names` will list the applicable plans.
11
+ define_attribute :applies_to_all_plans, :Boolean
12
+
13
+ # @!attribute applies_to_non_plan_charges
14
+ # @return [Boolean] The coupon is valid for one-time, non-plan charges if true.
15
+ define_attribute :applies_to_non_plan_charges, :Boolean
16
+
17
+ # @!attribute bulk_coupon_code
18
+ # @return [String] The Coupon code of the parent Bulk Coupon
19
+ define_attribute :bulk_coupon_code, String
20
+
21
+ # @!attribute bulk_coupon_id
22
+ # @return [String] The Coupon ID of the parent Bulk Coupon
23
+ define_attribute :bulk_coupon_id, String
24
+
25
+ # @!attribute code
26
+ # @return [String] The code the customer enters to redeem the coupon.
27
+ define_attribute :code, String
28
+
29
+ # @!attribute coupon_type
30
+ # @return [String] Whether the coupon is "single_code" or "bulk". Bulk coupons will require a `unique_code_template` and will generate unique codes through the `/generate` endpoint.
31
+ define_attribute :coupon_type, String
32
+
33
+ # @!attribute created_at
34
+ # @return [DateTime] Created at
35
+ define_attribute :created_at, DateTime
36
+
37
+ # @!attribute discount
38
+ # @return [CouponDiscount] Details of the discount a coupon applies. Will contain a `type` property and one of the following properties: `percent`, `fixed`, `trial`.
39
+ define_attribute :discount, :CouponDiscount
40
+
41
+ # @!attribute duration
42
+ # @return [String] - "single_use" coupons applies to the first invoice only. - "temporal" coupons will apply to invoices for the duration determined by the `temporal_unit` and `temporal_amount` attributes.
43
+ define_attribute :duration, String
44
+
45
+ # @!attribute expired_at
46
+ # @return [DateTime] The date and time the coupon was expired early or reached its `max_redemptions`.
47
+ define_attribute :expired_at, DateTime
48
+
49
+ # @!attribute free_trial_amount
50
+ # @return [Integer] Sets the duration of time the `free_trial_unit` is for.
51
+ define_attribute :free_trial_amount, Integer
52
+
53
+ # @!attribute free_trial_unit
54
+ # @return [String] Description of the unit of time the coupon is for. Used with `free_trial_amount` to determine the duration of time the coupon is for.
55
+ define_attribute :free_trial_unit, String
56
+
57
+ # @!attribute hosted_page_description
58
+ # @return [String] This description will show up when a customer redeems a coupon on your Hosted Payment Pages, or if you choose to show the description on your own checkout page.
59
+ define_attribute :hosted_page_description, String
60
+
61
+ # @!attribute id
62
+ # @return [String] Coupon ID
63
+ define_attribute :id, String
64
+
65
+ # @!attribute invoice_description
66
+ # @return [String] Description of the coupon on the invoice.
67
+ define_attribute :invoice_description, String
68
+
69
+ # @!attribute max_redemptions
70
+ # @return [Integer] A maximum number of redemptions for the coupon. The coupon will expire when it hits its maximum redemptions.
71
+ define_attribute :max_redemptions, Integer
72
+
73
+ # @!attribute max_redemptions_per_account
74
+ # @return [Integer] Redemptions per account is the number of times a specific account can redeem the coupon. Set redemptions per account to `1` if you want to keep customers from gaming the system and getting more than one discount from the coupon campaign.
75
+ define_attribute :max_redemptions_per_account, Integer
76
+
77
+ # @!attribute name
78
+ # @return [String] The internal name for the coupon.
79
+ define_attribute :name, String
80
+
81
+ # @!attribute object
82
+ # @return [String] Object type
83
+ define_attribute :object, String
84
+
85
+ # @!attribute plans
86
+ # @return [Array[PlanMini]] A list of plans for which this coupon applies. This will be `null` if `applies_to_all_plans=true`.
87
+ define_attribute :plans, Array, { :item_type => :PlanMini }
88
+
89
+ # @!attribute plans_names
90
+ # @return [Array[String]] A list of plan names for which this coupon applies.
91
+ define_attribute :plans_names, Array, { :item_type => String }
92
+
93
+ # @!attribute redeem_by
94
+ # @return [DateTime] The date and time the coupon will expire and can no longer be redeemed. Time is always 11:59:59, the end-of-day Pacific time.
95
+ define_attribute :redeem_by, DateTime
96
+
97
+ # @!attribute redeemed_at
98
+ # @return [DateTime] The date and time the unique coupon code was redeemed. This is only present for bulk coupons.
99
+ define_attribute :redeemed_at, DateTime
100
+
101
+ # @!attribute redemption_resource
102
+ # @return [String] Whether the discount is for all eligible charges on the account, or only a specific subscription.
103
+ define_attribute :redemption_resource, String
104
+
105
+ # @!attribute state
106
+ # @return [String] Indicates if the coupon is redeemable, and if it is not, why.
107
+ define_attribute :state, String
108
+
109
+ # @!attribute temporal_amount
110
+ # @return [Integer] If `duration` is "temporal" than `temporal_amount` is an integer which is multiplied by `temporal_unit` to define the duration that the coupon will be applied to invoices for.
111
+ define_attribute :temporal_amount, Integer
112
+
113
+ # @!attribute temporal_unit
114
+ # @return [String] If `duration` is "temporal" than `temporal_unit` is multiplied by `temporal_amount` to define the duration that the coupon will be applied to invoices for.
115
+ define_attribute :temporal_unit, String
116
+
117
+ # @!attribute unique_code_template
118
+ # @return [String] On a bulk coupon, the template from which unique coupon codes are generated.
119
+ define_attribute :unique_code_template, String
120
+
121
+ # @!attribute unique_coupon_codes_count
122
+ # @return [Integer] When this number reaches `max_redemptions` the coupon will no longer be redeemable.
123
+ define_attribute :unique_coupon_codes_count, Integer
124
+
125
+ # @!attribute updated_at
126
+ # @return [DateTime] Last updated at
127
+ define_attribute :updated_at, DateTime
128
+ end
129
+ end
130
+ 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 CouponDiscount < Resource
8
+
9
+ # @!attribute currencies
10
+ # @return [Array[CouponDiscountPricing]] This is only present when `type=fixed`.
11
+ define_attribute :currencies, Array, { :item_type => :CouponDiscountPricing }
12
+
13
+ # @!attribute percent
14
+ # @return [Integer] This is only present when `type=percent`.
15
+ define_attribute :percent, Integer
16
+
17
+ # @!attribute trial
18
+ # @return [CouponDiscountTrial] This is only present when `type=free_trial`.
19
+ define_attribute :trial, :CouponDiscountTrial
20
+
21
+ # @!attribute type
22
+ # @return [String]
23
+ define_attribute :type, String
24
+ end
25
+ end
26
+ 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 Resources
7
+ class CouponDiscountPricing < Resource
8
+
9
+ # @!attribute amount
10
+ # @return [Float] Value of the fixed discount that this coupon applies.
11
+ define_attribute :amount, Float
12
+
13
+ # @!attribute currency
14
+ # @return [String] 3-letter ISO 4217 currency code.
15
+ define_attribute :currency, 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 Resources
7
+ class CouponDiscountTrial < Resource
8
+
9
+ # @!attribute length
10
+ # @return [Integer] Trial length measured in the units specified by the sibling `unit` property
11
+ define_attribute :length, Integer
12
+
13
+ # @!attribute unit
14
+ # @return [String] Temporal unit of the free trial
15
+ define_attribute :unit, String
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,42 @@
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 CouponMini < Resource
8
+
9
+ # @!attribute code
10
+ # @return [String] The code the customer enters to redeem the coupon.
11
+ define_attribute :code, String
12
+
13
+ # @!attribute coupon_type
14
+ # @return [String] Whether the coupon is "single_code" or "bulk". Bulk coupons will require a `unique_code_template` and will generate unique codes through the `/generate` endpoint.
15
+ define_attribute :coupon_type, String
16
+
17
+ # @!attribute discount
18
+ # @return [CouponDiscount] Details of the discount a coupon applies. Will contain a `type` property and one of the following properties: `percent`, `fixed`, `trial`.
19
+ define_attribute :discount, :CouponDiscount
20
+
21
+ # @!attribute expired_at
22
+ # @return [DateTime] The date and time the coupon was expired early or reached its `max_redemptions`.
23
+ define_attribute :expired_at, DateTime
24
+
25
+ # @!attribute id
26
+ # @return [String] Coupon ID
27
+ define_attribute :id, String
28
+
29
+ # @!attribute name
30
+ # @return [String] The internal name for the coupon.
31
+ define_attribute :name, String
32
+
33
+ # @!attribute object
34
+ # @return [String] Object type
35
+ define_attribute :object, String
36
+
37
+ # @!attribute state
38
+ # @return [String] Indicates if the coupon is redeemable, and if it is not, why.
39
+ define_attribute :state, String
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,50 @@
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 CouponRedemption < Resource
8
+
9
+ # @!attribute account
10
+ # @return [AccountMini] The Account on which the coupon was applied.
11
+ define_attribute :account, :AccountMini
12
+
13
+ # @!attribute coupon
14
+ # @return [Coupon]
15
+ define_attribute :coupon, :Coupon
16
+
17
+ # @!attribute created_at
18
+ # @return [DateTime] Created at
19
+ define_attribute :created_at, DateTime
20
+
21
+ # @!attribute currency
22
+ # @return [String] 3-letter ISO 4217 currency code.
23
+ define_attribute :currency, String
24
+
25
+ # @!attribute discounted
26
+ # @return [Float] The amount that was discounted upon the application of the coupon, formatted with the currency.
27
+ define_attribute :discounted, Float
28
+
29
+ # @!attribute id
30
+ # @return [String] Coupon Redemption ID
31
+ define_attribute :id, String
32
+
33
+ # @!attribute object
34
+ # @return [String] Will always be `coupon`.
35
+ define_attribute :object, String
36
+
37
+ # @!attribute removed_at
38
+ # @return [DateTime] The date and time the redemption was removed from the account (un-redeemed).
39
+ define_attribute :removed_at, DateTime
40
+
41
+ # @!attribute state
42
+ # @return [String] Coupon Redemption state
43
+ define_attribute :state, String
44
+
45
+ # @!attribute updated_at
46
+ # @return [DateTime] Last updated at
47
+ define_attribute :updated_at, DateTime
48
+ end
49
+ end
50
+ 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 CouponRedemptionMini < Resource
8
+
9
+ # @!attribute coupon
10
+ # @return [CouponMini]
11
+ define_attribute :coupon, :CouponMini
12
+
13
+ # @!attribute created_at
14
+ # @return [DateTime] Created at
15
+ define_attribute :created_at, DateTime
16
+
17
+ # @!attribute discounted
18
+ # @return [Float] The amount that was discounted upon the application of the coupon, formatted with the currency.
19
+ define_attribute :discounted, Float
20
+
21
+ # @!attribute id
22
+ # @return [String] Coupon Redemption ID
23
+ define_attribute :id, String
24
+
25
+ # @!attribute object
26
+ # @return [String] Will always be `coupon`.
27
+ define_attribute :object, String
28
+
29
+ # @!attribute state
30
+ # @return [String] Invoice state
31
+ define_attribute :state, String
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,66 @@
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 CreditPayment < Resource
8
+
9
+ # @!attribute account
10
+ # @return [AccountMini] Account mini details
11
+ define_attribute :account, :AccountMini
12
+
13
+ # @!attribute action
14
+ # @return [String] The action for which the credit was created.
15
+ define_attribute :action, String
16
+
17
+ # @!attribute amount
18
+ # @return [Float] Total credit payment amount applied to the charge invoice.
19
+ define_attribute :amount, Float
20
+
21
+ # @!attribute applied_to_invoice
22
+ # @return [InvoiceMini] Invoice mini details
23
+ define_attribute :applied_to_invoice, :InvoiceMini
24
+
25
+ # @!attribute created_at
26
+ # @return [DateTime] Created at
27
+ define_attribute :created_at, DateTime
28
+
29
+ # @!attribute currency
30
+ # @return [String] 3-letter ISO 4217 currency code.
31
+ define_attribute :currency, String
32
+
33
+ # @!attribute id
34
+ # @return [String] Credit Payment ID
35
+ define_attribute :id, String
36
+
37
+ # @!attribute object
38
+ # @return [String] Object type
39
+ define_attribute :object, String
40
+
41
+ # @!attribute original_credit_payment_id
42
+ # @return [String] For credit payments with action `refund`, this is the credit payment that was refunded.
43
+ define_attribute :original_credit_payment_id, String
44
+
45
+ # @!attribute original_invoice
46
+ # @return [InvoiceMini] Invoice mini details
47
+ define_attribute :original_invoice, :InvoiceMini
48
+
49
+ # @!attribute refund_transaction
50
+ # @return [Transaction]
51
+ define_attribute :refund_transaction, :Transaction
52
+
53
+ # @!attribute updated_at
54
+ # @return [DateTime] Last updated at
55
+ define_attribute :updated_at, DateTime
56
+
57
+ # @!attribute uuid
58
+ # @return [String] The UUID is useful for matching data with the CSV exports and building URLs into Recurly's UI.
59
+ define_attribute :uuid, String
60
+
61
+ # @!attribute voided_at
62
+ # @return [DateTime] Voided at
63
+ define_attribute :voided_at, DateTime
64
+ end
65
+ end
66
+ 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 Resources
7
+ class CustomField < Resource
8
+
9
+ # @!attribute name
10
+ # @return [String] Fields must be created in the UI before values can be assigned to them.
11
+ define_attribute :name, String
12
+
13
+ # @!attribute value
14
+ # @return [String] Any values that resemble a credit card number or security code (CVV/CVC) will be rejected.
15
+ define_attribute :value, String
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,50 @@
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 CustomFieldDefinition < Resource
8
+
9
+ # @!attribute created_at
10
+ # @return [DateTime] Created at
11
+ define_attribute :created_at, DateTime
12
+
13
+ # @!attribute deleted_at
14
+ # @return [DateTime] Definitions are initially soft deleted, and once all the values are removed from the accouts or subscriptions, will be hard deleted an no longer visible.
15
+ define_attribute :deleted_at, DateTime
16
+
17
+ # @!attribute display_name
18
+ # @return [String] Used to label the field when viewing and editing the field in Recurly's admin UI.
19
+ define_attribute :display_name, String
20
+
21
+ # @!attribute id
22
+ # @return [String] Custom field definition ID
23
+ define_attribute :id, String
24
+
25
+ # @!attribute name
26
+ # @return [String] Used by the API to identify the field or reading and writing. The name can only be used once per Recurly object type.
27
+ define_attribute :name, String
28
+
29
+ # @!attribute object
30
+ # @return [String] Object type
31
+ define_attribute :object, String
32
+
33
+ # @!attribute related_type
34
+ # @return [String] Related Recurly object type
35
+ define_attribute :related_type, String
36
+
37
+ # @!attribute tooltip
38
+ # @return [String] Displayed as a tooltip when editing the field in the Recurly admin UI.
39
+ define_attribute :tooltip, String
40
+
41
+ # @!attribute updated_at
42
+ # @return [DateTime] Last updated at
43
+ define_attribute :updated_at, DateTime
44
+
45
+ # @!attribute user_access
46
+ # @return [String] The access control applied inside Recurly's admin UI: - `api_only` - No one will be able to view or edit this field's data via the admin UI. - `read_only` - Users with the Customers role will be able to view this field's data via the admin UI, but editing will only be available via the API. - `write` - Users with the Customers role will be able to view and edit this field's data via the admin UI.
47
+ define_attribute :user_access, String
48
+ end
49
+ end
50
+ 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 Error < Resource
8
+
9
+ # @!attribute message
10
+ # @return [String] Message
11
+ define_attribute :message, String
12
+
13
+ # @!attribute params
14
+ # @return [Array[Hash]] Parameter specific errors
15
+ define_attribute :params, Array, { :item_type => Hash }
16
+
17
+ # @!attribute type
18
+ # @return [String] Type
19
+ define_attribute :type, String
20
+ end
21
+ end
22
+ 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 ErrorMayHaveTransaction < Resource
8
+
9
+ # @!attribute message
10
+ # @return [String] Message
11
+ define_attribute :message, String
12
+
13
+ # @!attribute params
14
+ # @return [Array[Hash]] Parameter specific errors
15
+ define_attribute :params, Array, { :item_type => Hash }
16
+
17
+ # @!attribute transaction_error
18
+ # @return [TransactionError] This is only included on errors with `type=transaction`.
19
+ define_attribute :transaction_error, :TransactionError
20
+
21
+ # @!attribute type
22
+ # @return [String] Type
23
+ define_attribute :type, String
24
+ end
25
+ end
26
+ 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 Resources
7
+ class ExportDates < Resource
8
+
9
+ # @!attribute dates
10
+ # @return [Array[String]] An array of dates that have available exports.
11
+ define_attribute :dates, Array, { :item_type => String }
12
+
13
+ # @!attribute object
14
+ # @return [String] Object type
15
+ define_attribute :object, String
16
+ end
17
+ end
18
+ 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 ExportFile < Resource
8
+
9
+ # @!attribute href
10
+ # @return [String] A presigned link to download the export file.
11
+ define_attribute :href, String
12
+
13
+ # @!attribute md5sum
14
+ # @return [String] MD5 hash of the export file.
15
+ define_attribute :md5sum, String
16
+
17
+ # @!attribute name
18
+ # @return [String] Name of the export file.
19
+ define_attribute :name, 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 Resources
7
+ class ExportFiles < Resource
8
+
9
+ # @!attribute files
10
+ # @return [Array[ExportFile]]
11
+ define_attribute :files, Array, { :item_type => :ExportFile }
12
+
13
+ # @!attribute object
14
+ # @return [String] Object type
15
+ define_attribute :object, String
16
+ end
17
+ end
18
+ 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 FraudInfo < Resource
8
+
9
+ # @!attribute decision
10
+ # @return [String] Kount decision
11
+ define_attribute :decision, String
12
+
13
+ # @!attribute risk_rules_triggered
14
+ # @return [Hash] Kount rules
15
+ define_attribute :risk_rules_triggered, Hash
16
+
17
+ # @!attribute score
18
+ # @return [Integer] Kount score
19
+ define_attribute :score, Integer
20
+ end
21
+ end
22
+ end