Skip to content
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
13 changes: 11 additions & 2 deletions openapi/api.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1301,6 +1301,15 @@ paths:
and cancels any active subscriptions (canceled subscriptions will remain active
until the end of the current billing cycle before expiring). We recommend
closing accounts only when all business is concluded with a customer.
parameters:
- in: query
name: redact
schema:
type: boolean
description: Permanently removes all personally identifiable information (PII)
from this account after it has been deactivated, to fulfill a data subject's
right to erasure under GDPR and similar privacy regulations (e.g. CCPA).
Cannot be undone.
responses:
'200':
description: An account.
Expand Down Expand Up @@ -16931,7 +16940,7 @@ paths:
content:
application/json:
schema:
"$ref": "#/components/schemas/Entitlements"
"$ref": "#/components/schemas/EntitlementList"
'404':
description: Incorrect site or account ID.
content:
Expand Down Expand Up @@ -25990,7 +25999,7 @@ components:
maxItems: 200
items:
"$ref": "#/components/schemas/Plan"
Entitlements:
EntitlementList:
type: object
description: A list of privileges granted to a customer through the purchase
of a plan or item.
Expand Down
24 changes: 19 additions & 5 deletions src/main/java/com/recurly/v3/Client.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
import com.recurly.v3.resources.*;
import com.recurly.v3.queryparams.*;
import okhttp3.OkHttpClient;
import org.joda.time.DateTime;
import java.time.ZonedDateTime;

import java.lang.reflect.Type;
import java.util.HashMap;
Expand Down Expand Up @@ -154,12 +154,26 @@ public Account updateAccount(String accountId, AccountUpdate body) {
* @return An account.
*/
public Account deactivateAccount(String accountId) {
return deactivateAccount(accountId, new DeactivateAccountParams());
}

/**
* Deactivate an account
*
* @see <a href="https://developers.recurly.com/api/v2021-02-25#operation/deactivate_account">deactivate_account api documentation</a>
* @param accountId Account ID or code. For ID no prefix is used e.g. `e28zov4fw0v2`. For code use prefix `code-`, e.g. `code-bob`.
* @param queryParams The {@link DeactivateAccountParams} for this endpoint.
* @return An account.
*/
public Account deactivateAccount(String accountId, DeactivateAccountParams queryParams) {
final String url = "/accounts/{account_id}";
final HashMap<String, String> urlParams = new HashMap<String, String>();
urlParams.put("account_id", accountId);
if (queryParams == null) queryParams = new DeactivateAccountParams();
final HashMap<String, Object> paramsMap = queryParams.getParams();
final String path = this.interpolatePath(url, urlParams);
Type returnType = Account.class;
return this.makeRequest("DELETE", path, returnType);
return this.makeRequest("DELETE", path, paramsMap, returnType);
}

/**
Expand Down Expand Up @@ -3750,7 +3764,7 @@ public ExternalPaymentPhase getExternalSubscriptionExternalPaymentPhase(String e
* @param accountId Account ID or code. For ID no prefix is used e.g. `e28zov4fw0v2`. For code use prefix `code-`, e.g. `code-bob`.
* @return A list of the entitlements granted to an account.
*/
public Pager<Entitlements> listEntitlements(String accountId) {
public Pager<Entitlement> listEntitlements(String accountId) {
return listEntitlements(accountId, new ListEntitlementsParams());
}

Expand All @@ -3762,14 +3776,14 @@ public Pager<Entitlements> listEntitlements(String accountId) {
* @param queryParams The {@link ListEntitlementsParams} for this endpoint.
* @return A list of the entitlements granted to an account.
*/
public Pager<Entitlements> listEntitlements(String accountId, ListEntitlementsParams queryParams) {
public Pager<Entitlement> listEntitlements(String accountId, ListEntitlementsParams queryParams) {
final String url = "/accounts/{account_id}/entitlements";
final HashMap<String, String> urlParams = new HashMap<String, String>();
urlParams.put("account_id", accountId);
if (queryParams == null) queryParams = new ListEntitlementsParams();
final HashMap<String, Object> paramsMap = queryParams.getParams();
final String path = this.interpolatePath(url, urlParams);
Type parameterizedType = TypeToken.getParameterized(Pager.class, Entitlements.class).getType();
Type parameterizedType = TypeToken.getParameterized(Pager.class, Entitlement.class).getType();
return new Pager<>(path, paramsMap, this, parameterizedType);
}

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
/**
* 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.
*/
package com.recurly.v3.queryparams;

import com.recurly.v3.AbstractQueryParams;

public class DeactivateAccountParams extends AbstractQueryParams {

public void setRedact(final Boolean redact) {
this.add("redact", redact);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListAccountAcquisitionParams extends AbstractQueryParams {

Expand All @@ -28,11 +28,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListAccountCouponRedemptionsParams extends AbstractQueryParams {

Expand All @@ -20,11 +20,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import org.joda.time.DateTime;
import java.time.ZonedDateTime;

public class ListAccountCreditPaymentsParams extends AbstractQueryParams {

Expand All @@ -23,11 +23,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListAccountInvoicesParams extends AbstractQueryParams {

Expand All @@ -32,11 +32,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListAccountLineItemsParams extends AbstractQueryParams {

Expand All @@ -28,11 +28,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListAccountSubscriptionsParams extends AbstractQueryParams {

Expand All @@ -28,11 +28,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListAccountTransactionsParams extends AbstractQueryParams {

Expand All @@ -28,11 +28,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListAccountsParams extends AbstractQueryParams {

Expand All @@ -28,11 +28,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListAddOnsParams extends AbstractQueryParams {

Expand All @@ -28,11 +28,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListBillingInfosParams extends AbstractQueryParams {

Expand All @@ -20,11 +20,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListBusinessEntityInvoicesParams extends AbstractQueryParams {

Expand All @@ -32,11 +32,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

import com.recurly.v3.AbstractQueryParams;
import com.recurly.v3.Constants;
import java.time.ZonedDateTime;
import java.util.List;
import org.joda.time.DateTime;

public class ListChildAccountsParams extends AbstractQueryParams {

Expand All @@ -28,11 +28,11 @@ public void setSort(final Constants.TimestampSort sort) {
this.add("sort", sort);
}

public void setBeginTime(final DateTime beginTime) {
public void setBeginTime(final ZonedDateTime beginTime) {
this.add("begin_time", beginTime);
}

public void setEndTime(final DateTime endTime) {
public void setEndTime(final ZonedDateTime endTime) {
this.add("end_time", endTime);
}

Expand Down
Loading