Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generated Latest Changes for v2021-02-25 (External Payment Phases) #257

Merged
merged 1 commit into from
Dec 6, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
168 changes: 168 additions & 0 deletions openapi/api.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -207,6 +207,7 @@ x-tagGroups:
- external_products
- external_accounts
- external_product_references
- external_payment_phases
- name: Products and Promotions
tags:
- item
Expand Down Expand Up @@ -366,6 +367,11 @@ tags:
x-displayName: External Product Reference
description: Associates an external product to a corresponding resource on an external
platform like the Apple App Store or Google Play Store.
- name: external_payment_phases
x-displayName: External Payment Phase
description: Details of payments in the lifecycle of a subscription from an external
resource that is not managed by the Recurly platform, e.g. App Store or Google
Play Store.
- name: gift_cards
x-displayName: Gift Cards
description: Add gift card purchases to your checkout and allow gift card recipients
Expand Down Expand Up @@ -15918,6 +15924,69 @@ paths:
schema:
"$ref": "#/components/schemas/Error"
x-code-samples: []
"/external_subscriptions/{external_subscription_id}/external_payment_phases":
parameters:
- "$ref": "#/components/parameters/external_subscription_id"
get:
tags:
- external_subscriptions
operationId: list_external_subscription_external_payment_phases
summary: List the external payment phases on an external subscription
description: See the [Pagination Guide](/developers/guides/pagination.html)
to learn how to use pagination in the API and Client Libraries.
parameters:
- "$ref": "#/components/parameters/sort_dates"
- "$ref": "#/components/parameters/limit"
- "$ref": "#/components/parameters/order"
responses:
'200':
description: A list of the the external_payment_phases on a site.
content:
application/json:
schema:
"$ref": "#/components/schemas/ExternalPaymentPhaseList"
'404':
description: Incorrect site.
content:
application/json:
schema:
"$ref": "#/components/schemas/Error"
default:
description: Unexpected error.
content:
application/json:
schema:
"$ref": "#/components/schemas/Error"
x-code-samples: []
"/external_subscriptions/{external_subscription_id}/external_payment_phases/{external_payment_phase_id}":
parameters:
- "$ref": "#/components/parameters/external_subscription_id"
- "$ref": "#/components/parameters/external_payment_phase_id"
get:
tags:
- external_payment_phases
operationId: get_external_subscription_external_payment_phase
summary: Fetch an external payment_phase
responses:
'200':
description: Details for an external payment_phase.
content:
application/json:
schema:
"$ref": "#/components/schemas/ExternalPaymentPhase"
'404':
description: Incorrect site or external subscription ID.
content:
application/json:
schema:
"$ref": "#/components/schemas/Error"
default:
description: Unexpected error.
content:
application/json:
schema:
"$ref": "#/components/schemas/Error"
x-code-samples: []
"/accounts/{account_id}/entitlements":
parameters:
- "$ref": "#/components/parameters/account_id"
Expand Down Expand Up @@ -16355,6 +16424,13 @@ components:
required: true
schema:
type: string
external_payment_phase_id:
name: external_payment_phase_id
in: path
description: External payment phase ID, e.g. `a34ypb2ef9w1`.
required: true
schema:
type: string
invoice_template_id:
name: invoice_template_id
in: path
Expand Down Expand Up @@ -21633,6 +21709,7 @@ components:
type: number
format: float
title: Estimated tax
description: Only for merchants using Recurly's In-The-Box taxes.
tax_info:
"$ref": "#/components/schemas/TaxInfo"
total:
Expand Down Expand Up @@ -22464,6 +22541,12 @@ components:
default: 0
net_terms_type:
"$ref": "#/components/schemas/NetTermsTypeEnum"
gateway_code:
type: string
title: Gateway Code
description: If present, this subscription's transactions will use the payment
gateway with this code.
maxLength: 13
transaction_type:
description: An optional type designation for the payment gateway transaction
created by this request. Supports 'moto' value, which is the acronym for
Expand Down Expand Up @@ -22805,6 +22888,7 @@ components:
TaxInfo:
type: object
title: Tax info
description: Only for merchants using Recurly's In-The-Box taxes.
properties:
type:
type: string
Expand Down Expand Up @@ -23646,6 +23730,90 @@ components:
type: string
format: date-time
description: Time the object was last updated
ExternalPaymentPhase:
type: object
description: Details of payments in the lifecycle of a subscription from an
external resource that is not managed by the Recurly platform, e.g. App Store
or Google Play Store.
properties:
id:
type: string
title: External payment phase ID
description: System-generated unique identifier for an external payment
phase ID, e.g. `e28zov4fw0v2`.
object:
type: string
title: Object type
external_subscription:
"$ref": "#/components/schemas/ExternalSubscription"
started_at:
type: string
format: date-time
title: Started At
ends_at:
type: string
format: date-time
title: Ends At
starting_billing_period_index:
type: integer
title: Starting Billing Period Index
ending_billing_period_index:
type: integer
title: Ending Billing Period Index
offer_type:
type: string
title: Offer Type
description: Type of discount offer given, e.g. "FREE_TRIAL"
offer_name:
type: string
title: Offer Name
description: Name of the discount offer given, e.g. "introductory"
period_count:
type: integer
title: Period Count
description: Number of billing periods
period_length:
type: string
title: Period Length
description: Billing cycle length
amount:
type: string
format: decimal
title: Amount
minimum: 0
description: Allows up to 9 decimal places
currency:
type: string
title: Currency
description: 3-letter ISO 4217 currency code.
maxLength: 3
created_at:
type: string
format: date-time
title: Created at
description: When the external subscription was created in Recurly.
updated_at:
type: string
format: date-time
title: Updated at
description: When the external subscription was updated in Recurly.
ExternalPaymentPhaseList:
type: object
properties:
object:
type: string
title: Object type
description: Will always be List.
has_more:
type: boolean
description: Indicates there are more results on subsequent pages.
next:
type: string
description: Path to subsequent page of results.
data:
type: array
items:
"$ref": "#/components/schemas/ExternalPaymentPhase"
ExternalProduct:
type: object
description: Product from an external resource such as Apple App Store or Google
Expand Down
37 changes: 37 additions & 0 deletions src/main/java/com/recurly/v3/Client.java
Original file line number Diff line number Diff line change
Expand Up @@ -2771,6 +2771,43 @@ public ExternalInvoice showExternalInvoice(String externalInvoiceId) {
return this.makeRequest("GET", path, returnType);
}

/**
* List the external payment phases on an external subscription
*
* @see <a href="https://developers.recurly.com/api/v2021-02-25#operation/list_external_subscription_external_payment_phases">list_external_subscription_external_payment_phases api documentation</a>
* @param externalSubscriptionId External subscription id
* @param queryParams The {@link QueryParams} for this endpoint.
* @return A list of the the external_payment_phases on a site.
*/
public Pager<ExternalPaymentPhase> listExternalSubscriptionExternalPaymentPhases(String externalSubscriptionId, QueryParams queryParams) {
final String url = "/external_subscriptions/{external_subscription_id}/external_payment_phases";
final HashMap<String, String> urlParams = new HashMap<String, String>();
urlParams.put("external_subscription_id", externalSubscriptionId);
if (queryParams == null) queryParams = new QueryParams();
final HashMap<String, Object> paramsMap = queryParams.getParams();
final String path = this.interpolatePath(url, urlParams);
Type parameterizedType = TypeToken.getParameterized(Pager.class, ExternalPaymentPhase.class).getType();
return new Pager<>(path, paramsMap, this, parameterizedType);
}

/**
* Fetch an external payment_phase
*
* @see <a href="https://developers.recurly.com/api/v2021-02-25#operation/get_external_subscription_external_payment_phase">get_external_subscription_external_payment_phase api documentation</a>
* @param externalSubscriptionId External subscription id
* @param externalPaymentPhaseId External payment phase ID, e.g. `a34ypb2ef9w1`.
* @return Details for an external payment_phase.
*/
public ExternalPaymentPhase getExternalSubscriptionExternalPaymentPhase(String externalSubscriptionId, String externalPaymentPhaseId) {
final String url = "/external_subscriptions/{external_subscription_id}/external_payment_phases/{external_payment_phase_id}";
final HashMap<String, String> urlParams = new HashMap<String, String>();
urlParams.put("external_subscription_id", externalSubscriptionId);
urlParams.put("external_payment_phase_id", externalPaymentPhaseId);
final String path = this.interpolatePath(url, urlParams);
Type returnType = ExternalPaymentPhase.class;
return this.makeRequest("GET", path, returnType);
}

/**
* List entitlements granted to an account
*
Expand Down
18 changes: 18 additions & 0 deletions src/main/java/com/recurly/v3/requests/SubscriptionCreate.java
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,11 @@ public class SubscriptionCreate extends Request {
@Expose
private String customerNotes;

/** If present, this subscription's transactions will use the payment gateway with this code. */
@SerializedName("gateway_code")
@Expose
private String gatewayCode;

/** A gift card redemption code to be redeemed on the purchase invoice. */
@SerializedName("gift_card_redemption_code")
@Expose
Expand Down Expand Up @@ -374,6 +379,19 @@ public void setCustomerNotes(final String customerNotes) {
this.customerNotes = customerNotes;
}

/** If present, this subscription's transactions will use the payment gateway with this code. */
public String getGatewayCode() {
return this.gatewayCode;
}

/**
* @param gatewayCode If present, this subscription's transactions will use the payment gateway
* with this code.
*/
public void setGatewayCode(final String gatewayCode) {
this.gatewayCode = gatewayCode;
}

/** A gift card redemption code to be redeemed on the purchase invoice. */
public String getGiftCardRedemptionCode() {
return this.giftCardRedemptionCode;
Expand Down
Loading
Loading