com.plaid.client.model.TransferIntentCreateRequest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of plaid-java Show documentation
Show all versions of plaid-java Show documentation
Bindings for the Plaid (plaid.com) API.
/*
* The Plaid API
* The Plaid REST API. Please see https://plaid.com/docs/api for more details.
*
* The version of the OpenAPI document: 2020-09-14_1.161.5
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
package com.plaid.client.model;
import java.util.Objects;
import java.util.Arrays;
import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import com.plaid.client.model.ACHClass;
import com.plaid.client.model.TransferIntentCreateMode;
import com.plaid.client.model.TransferUserInRequest;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* Defines the request schema for `/transfer/intent/create`
*/
@ApiModel(description = "Defines the request schema for `/transfer/intent/create`")
@javax.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", date = "2022-08-03T20:38:07.102590Z[Etc/UTC]")
public class TransferIntentCreateRequest {
public static final String SERIALIZED_NAME_CLIENT_ID = "client_id";
@SerializedName(SERIALIZED_NAME_CLIENT_ID)
private String clientId;
public static final String SERIALIZED_NAME_SECRET = "secret";
@SerializedName(SERIALIZED_NAME_SECRET)
private String secret;
public static final String SERIALIZED_NAME_ACCOUNT_ID = "account_id";
@SerializedName(SERIALIZED_NAME_ACCOUNT_ID)
private String accountId;
public static final String SERIALIZED_NAME_MODE = "mode";
@SerializedName(SERIALIZED_NAME_MODE)
private TransferIntentCreateMode mode;
public static final String SERIALIZED_NAME_AMOUNT = "amount";
@SerializedName(SERIALIZED_NAME_AMOUNT)
private String amount;
public static final String SERIALIZED_NAME_DESCRIPTION = "description";
@SerializedName(SERIALIZED_NAME_DESCRIPTION)
private String description;
public static final String SERIALIZED_NAME_ACH_CLASS = "ach_class";
@SerializedName(SERIALIZED_NAME_ACH_CLASS)
private ACHClass achClass;
public static final String SERIALIZED_NAME_ORIGINATION_ACCOUNT_ID = "origination_account_id";
@SerializedName(SERIALIZED_NAME_ORIGINATION_ACCOUNT_ID)
private String originationAccountId;
public static final String SERIALIZED_NAME_USER = "user";
@SerializedName(SERIALIZED_NAME_USER)
private TransferUserInRequest user;
public static final String SERIALIZED_NAME_METADATA = "metadata";
@SerializedName(SERIALIZED_NAME_METADATA)
private Map metadata = null;
public static final String SERIALIZED_NAME_ISO_CURRENCY_CODE = "iso_currency_code";
@SerializedName(SERIALIZED_NAME_ISO_CURRENCY_CODE)
private String isoCurrencyCode;
public static final String SERIALIZED_NAME_REQUIRE_GUARANTEE = "require_guarantee";
@SerializedName(SERIALIZED_NAME_REQUIRE_GUARANTEE)
private Boolean requireGuarantee = false;
public TransferIntentCreateRequest clientId(String clientId) {
this.clientId = clientId;
return this;
}
/**
* Your Plaid API `client_id`. The `client_id` is required and may be provided either in the `PLAID-CLIENT-ID` header or as part of a request body.
* @return clientId
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Your Plaid API `client_id`. The `client_id` is required and may be provided either in the `PLAID-CLIENT-ID` header or as part of a request body.")
public String getClientId() {
return clientId;
}
public void setClientId(String clientId) {
this.clientId = clientId;
}
public TransferIntentCreateRequest secret(String secret) {
this.secret = secret;
return this;
}
/**
* Your Plaid API `secret`. The `secret` is required and may be provided either in the `PLAID-SECRET` header or as part of a request body.
* @return secret
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Your Plaid API `secret`. The `secret` is required and may be provided either in the `PLAID-SECRET` header or as part of a request body.")
public String getSecret() {
return secret;
}
public void setSecret(String secret) {
this.secret = secret;
}
public TransferIntentCreateRequest accountId(String accountId) {
this.accountId = accountId;
return this;
}
/**
* The Plaid `account_id` for the account that will be debited or credited.
* @return accountId
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "The Plaid `account_id` for the account that will be debited or credited.")
public String getAccountId() {
return accountId;
}
public void setAccountId(String accountId) {
this.accountId = accountId;
}
public TransferIntentCreateRequest mode(TransferIntentCreateMode mode) {
this.mode = mode;
return this;
}
/**
* Get mode
* @return mode
**/
@ApiModelProperty(required = true, value = "")
public TransferIntentCreateMode getMode() {
return mode;
}
public void setMode(TransferIntentCreateMode mode) {
this.mode = mode;
}
public TransferIntentCreateRequest amount(String amount) {
this.amount = amount;
return this;
}
/**
* The amount of the transfer (decimal string with two digits of precision e.g. \"10.00\").
* @return amount
**/
@ApiModelProperty(required = true, value = "The amount of the transfer (decimal string with two digits of precision e.g. \"10.00\").")
public String getAmount() {
return amount;
}
public void setAmount(String amount) {
this.amount = amount;
}
public TransferIntentCreateRequest description(String description) {
this.description = description;
return this;
}
/**
* A description for the underlying transfer. Maximum of 8 characters.
* @return description
**/
@ApiModelProperty(required = true, value = "A description for the underlying transfer. Maximum of 8 characters.")
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public TransferIntentCreateRequest achClass(ACHClass achClass) {
this.achClass = achClass;
return this;
}
/**
* Get achClass
* @return achClass
**/
@ApiModelProperty(required = true, value = "")
public ACHClass getAchClass() {
return achClass;
}
public void setAchClass(ACHClass achClass) {
this.achClass = achClass;
}
public TransferIntentCreateRequest originationAccountId(String originationAccountId) {
this.originationAccountId = originationAccountId;
return this;
}
/**
* Plaid’s unique identifier for the origination account for the intent. If not provided, the default account will be used.
* @return originationAccountId
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Plaid’s unique identifier for the origination account for the intent. If not provided, the default account will be used.")
public String getOriginationAccountId() {
return originationAccountId;
}
public void setOriginationAccountId(String originationAccountId) {
this.originationAccountId = originationAccountId;
}
public TransferIntentCreateRequest user(TransferUserInRequest user) {
this.user = user;
return this;
}
/**
* Get user
* @return user
**/
@ApiModelProperty(required = true, value = "")
public TransferUserInRequest getUser() {
return user;
}
public void setUser(TransferUserInRequest user) {
this.user = user;
}
public TransferIntentCreateRequest metadata(Map metadata) {
this.metadata = metadata;
return this;
}
public TransferIntentCreateRequest putMetadataItem(String key, String metadataItem) {
if (this.metadata == null) {
this.metadata = new HashMap<>();
}
this.metadata.put(key, metadataItem);
return this;
}
/**
* The Metadata object is a mapping of client-provided string fields to any string value. The following limitations apply: - The JSON values must be Strings (no nested JSON objects allowed) - Only ASCII characters may be used - Maximum of 50 key/value pairs - Maximum key length of 40 characters - Maximum value length of 500 characters
* @return metadata
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "The Metadata object is a mapping of client-provided string fields to any string value. The following limitations apply: - The JSON values must be Strings (no nested JSON objects allowed) - Only ASCII characters may be used - Maximum of 50 key/value pairs - Maximum key length of 40 characters - Maximum value length of 500 characters ")
public Map getMetadata() {
return metadata;
}
public void setMetadata(Map metadata) {
this.metadata = metadata;
}
public TransferIntentCreateRequest isoCurrencyCode(String isoCurrencyCode) {
this.isoCurrencyCode = isoCurrencyCode;
return this;
}
/**
* The currency of the transfer amount, e.g. \"USD\"
* @return isoCurrencyCode
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "The currency of the transfer amount, e.g. \"USD\"")
public String getIsoCurrencyCode() {
return isoCurrencyCode;
}
public void setIsoCurrencyCode(String isoCurrencyCode) {
this.isoCurrencyCode = isoCurrencyCode;
}
public TransferIntentCreateRequest requireGuarantee(Boolean requireGuarantee) {
this.requireGuarantee = requireGuarantee;
return this;
}
/**
* When `true`, the transfer requires a `GUARANTEED` decision by Plaid to proceed (Guaranteed ACH customers only).
* @return requireGuarantee
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "When `true`, the transfer requires a `GUARANTEED` decision by Plaid to proceed (Guaranteed ACH customers only).")
public Boolean getRequireGuarantee() {
return requireGuarantee;
}
public void setRequireGuarantee(Boolean requireGuarantee) {
this.requireGuarantee = requireGuarantee;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
TransferIntentCreateRequest transferIntentCreateRequest = (TransferIntentCreateRequest) o;
return Objects.equals(this.clientId, transferIntentCreateRequest.clientId) &&
Objects.equals(this.secret, transferIntentCreateRequest.secret) &&
Objects.equals(this.accountId, transferIntentCreateRequest.accountId) &&
Objects.equals(this.mode, transferIntentCreateRequest.mode) &&
Objects.equals(this.amount, transferIntentCreateRequest.amount) &&
Objects.equals(this.description, transferIntentCreateRequest.description) &&
Objects.equals(this.achClass, transferIntentCreateRequest.achClass) &&
Objects.equals(this.originationAccountId, transferIntentCreateRequest.originationAccountId) &&
Objects.equals(this.user, transferIntentCreateRequest.user) &&
Objects.equals(this.metadata, transferIntentCreateRequest.metadata) &&
Objects.equals(this.isoCurrencyCode, transferIntentCreateRequest.isoCurrencyCode) &&
Objects.equals(this.requireGuarantee, transferIntentCreateRequest.requireGuarantee);
}
@Override
public int hashCode() {
return Objects.hash(clientId, secret, accountId, mode, amount, description, achClass, originationAccountId, user, metadata, isoCurrencyCode, requireGuarantee);
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class TransferIntentCreateRequest {\n");
sb.append(" clientId: ").append(toIndentedString(clientId)).append("\n");
sb.append(" secret: ").append(toIndentedString(secret)).append("\n");
sb.append(" accountId: ").append(toIndentedString(accountId)).append("\n");
sb.append(" mode: ").append(toIndentedString(mode)).append("\n");
sb.append(" amount: ").append(toIndentedString(amount)).append("\n");
sb.append(" description: ").append(toIndentedString(description)).append("\n");
sb.append(" achClass: ").append(toIndentedString(achClass)).append("\n");
sb.append(" originationAccountId: ").append(toIndentedString(originationAccountId)).append("\n");
sb.append(" user: ").append(toIndentedString(user)).append("\n");
sb.append(" metadata: ").append(toIndentedString(metadata)).append("\n");
sb.append(" isoCurrencyCode: ").append(toIndentedString(isoCurrencyCode)).append("\n");
sb.append(" requireGuarantee: ").append(toIndentedString(requireGuarantee)).append("\n");
sb.append("}");
return sb.toString();
}
/**
* Convert the given object to string with each line indented by 4 spaces
* (except the first line).
*/
private String toIndentedString(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy