diff --git a/lib/recurly/client/operations.rb b/lib/recurly/client/operations.rb index e6ed35ab..b04d1dad 100644 --- a/lib/recurly/client/operations.rb +++ b/lib/recurly/client/operations.rb @@ -1698,6 +1698,7 @@ def restore_coupon(coupon_id:, body:, **options) # :end_time [DateTime] Inclusively filter by end_time when +sort=created_at+ or +sort=updated_at+. # *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC. # + # :redeemed [String] Filter unique coupon codes by redemption status. +true+ for redeemed, +false+ for not redeemed. # # @return [Pager] A list of unique coupon codes that were generated # diff --git a/lib/recurly/requests/billing_info_create.rb b/lib/recurly/requests/billing_info_create.rb index d1e27d8e..5f8db27b 100644 --- a/lib/recurly/requests/billing_info_create.rb +++ b/lib/recurly/requests/billing_info_create.rb @@ -63,7 +63,7 @@ class BillingInfoCreate < Request define_attribute :gateway_attributes, :GatewayAttributes # @!attribute gateway_code - # @return [String] An identifier for a specific payment gateway. Must be used in conjunction with `gateway_token`. + # @return [String] An identifier for a specific payment gateway. define_attribute :gateway_code, String # @!attribute gateway_token @@ -98,6 +98,10 @@ class BillingInfoCreate < Request # @return [String] Use for Online Banking billing info. This should only be used as part of a pending purchase request, when the billing info is nested inside an account object. define_attribute :online_banking_payment_type, String + # @!attribute payment_gateway_references + # @return [Array[PaymentGatewayReferences]] Array of Payment Gateway References, each a reference to a third-party gateway object of varying types. + define_attribute :payment_gateway_references, Array, { :item_type => :PaymentGatewayReferences } + # @!attribute paypal_billing_agreement_id # @return [String] PayPal billing agreement ID define_attribute :paypal_billing_agreement_id, String diff --git a/lib/recurly/requests/coupon_bulk_create.rb b/lib/recurly/requests/coupon_bulk_create.rb index 5b4561d1..65b0d1df 100644 --- a/lib/recurly/requests/coupon_bulk_create.rb +++ b/lib/recurly/requests/coupon_bulk_create.rb @@ -7,7 +7,7 @@ module Requests class CouponBulkCreate < Request # @!attribute number_of_unique_codes - # @return [Integer] The quantity of unique coupon codes to generate + # @return [Integer] The quantity of unique coupon codes to generate. A bulk coupon can have up to 100,000 unique codes (or your site's configured limit). define_attribute :number_of_unique_codes, Integer end end diff --git a/lib/recurly/requests/payment_gateway_references.rb b/lib/recurly/requests/payment_gateway_references.rb new file mode 100644 index 00000000..c20e60a9 --- /dev/null +++ b/lib/recurly/requests/payment_gateway_references.rb @@ -0,0 +1,18 @@ +# This file is automatically created by Recurly's OpenAPI generation process +# and thus any edits you make by hand will be lost. If you wish to make a +# change to this file, please create a Github issue explaining the changes you +# need and we will usher them to the appropriate places. +module Recurly + module Requests + class PaymentGatewayReferences < Request + + # @!attribute reference_type + # @return [String] The type of reference token. Required if token is passed in for Stripe Gateway. + define_attribute :reference_type, String + + # @!attribute token + # @return [String] Reference value used when the external token was created. If Stripe gateway is used, this value will need to be accompanied by its reference_type. + define_attribute :token, String + end + end +end diff --git a/lib/recurly/resources/billing_info.rb b/lib/recurly/resources/billing_info.rb index 06d6dda2..a2aba215 100644 --- a/lib/recurly/resources/billing_info.rb +++ b/lib/recurly/resources/billing_info.rb @@ -46,6 +46,10 @@ class BillingInfo < Resource # @return [String] Object type define_attribute :object, String + # @!attribute payment_gateway_references + # @return [Array[PaymentGatewayReferences]] Array of Payment Gateway References, each a reference to a third-party gateway object of varying types. + define_attribute :payment_gateway_references, Array, { :item_type => :PaymentGatewayReferences } + # @!attribute payment_method # @return [PaymentMethod] define_attribute :payment_method, :PaymentMethod diff --git a/lib/recurly/resources/payment_gateway_references.rb b/lib/recurly/resources/payment_gateway_references.rb new file mode 100644 index 00000000..6e48539c --- /dev/null +++ b/lib/recurly/resources/payment_gateway_references.rb @@ -0,0 +1,18 @@ +# This file is automatically created by Recurly's OpenAPI generation process +# and thus any edits you make by hand will be lost. If you wish to make a +# change to this file, please create a Github issue explaining the changes you +# need and we will usher them to the appropriate places. +module Recurly + module Resources + class PaymentGatewayReferences < Resource + + # @!attribute reference_type + # @return [String] The type of reference token. Required if token is passed in for Stripe Gateway. + define_attribute :reference_type, String + + # @!attribute token + # @return [String] Reference value used when the external token was created. If Stripe gateway is used, this value will need to be accompanied by its reference_type. + define_attribute :token, String + end + end +end diff --git a/openapi/api.yaml b/openapi/api.yaml index 460dd35f..ea3982f5 100644 --- a/openapi/api.yaml +++ b/openapi/api.yaml @@ -6265,8 +6265,7 @@ paths: schema: "$ref": "#/components/schemas/UniqueCouponCodeParams" '400': - description: Invalid or unpermitted parameter; perhaps you tried to generate - more than 200 codes at a time? + description: Invalid or unpermitted parameter. content: application/json: schema: @@ -6348,6 +6347,7 @@ paths: - "$ref": "#/components/parameters/sort_dates" - "$ref": "#/components/parameters/filter_begin_time" - "$ref": "#/components/parameters/filter_end_time" + - "$ref": "#/components/parameters/filter_redeemed" responses: '200': description: A list of unique coupon codes that were generated @@ -17184,6 +17184,13 @@ components: - `type=legacy`, only legacy invoices will be returned. schema: "$ref": "#/components/schemas/FilterInvoiceTypeEnum" + filter_redeemed: + name: redeemed + in: query + description: Filter unique coupon codes by redemption status. `true` for redeemed, + `false` for not redeemed. + schema: + "$ref": "#/components/schemas/FilterRedeemedEnum" export_date: name: export_date in: path @@ -18733,6 +18740,12 @@ components: description: The `backup_payment_method` field is used to indicate a billing info as a backup on the account that will be tried if the initial billing info used for an invoice is declined. + payment_gateway_references: + type: array + description: Array of Payment Gateway References, each a reference to a + third-party gateway object of varying types. + items: + "$ref": "#/components/schemas/PaymentGatewayReferences" created_at: type: string format: date-time @@ -18815,9 +18828,21 @@ components: maxLength: 50 gateway_code: type: string - title: An identifier for a specific payment gateway. Must be used in conjunction - with `gateway_token`. + title: An identifier for a specific payment gateway. maxLength: 12 + payment_gateway_references: + type: array + description: Array of Payment Gateway References, each a reference to a + third-party gateway object of varying types. + items: + "$ref": "#/components/schemas/PaymentGatewayReferences" + properties: + token: + type: strings + maxLength: 50 + reference_type: + type: string + "$ref": "#/components/schemas/PaymentGatewayReferencesEnum" gateway_attributes: type: object description: Additional attributes to send to the gateway. @@ -19282,9 +19307,9 @@ components: number_of_unique_codes: type: integer title: Number of unique codes - description: The quantity of unique coupon codes to generate + description: The quantity of unique coupon codes to generate. A bulk coupon + can have up to 100,000 unique codes (or your site's configured limit). minimum: 1 - maximum: 200 CouponMini: type: object properties: @@ -21285,6 +21310,22 @@ components: - currency - unit_amount - type + PaymentGatewayReferences: + type: object + title: Payment Gateway References Object + description: Array of Payment Gateway References, each a reference to a third-party + gateway object of varying types. + properties: + token: + type: string + title: Token + description: Reference value used when the external token was created. If + Stripe gateway is used, this value will need to be accompanied by its + reference_type. + reference_type: + type: string + title: Reference Type + "$ref": "#/components/schemas/PaymentGatewayReferencesEnum" PlanMini: type: object title: Plan mini details @@ -26430,6 +26471,11 @@ components: - credit - legacy - non-legacy + FilterRedeemedEnum: + type: string + enum: + - true + - false ChannelEnum: type: string enum: @@ -26491,6 +26537,14 @@ components: enum: - email - post + PaymentGatewayReferencesEnum: + type: string + description: The type of reference token. Required if token is passed in for + Stripe Gateway. + enum: + - stripe_confirmation_token + - stripe_customer + - stripe_payment_method GatewayTransactionTypeEnum: type: string enum: