> getSchemas() {
+ return ContractDataDecodeRequestData.schemas;
+ }
+
+ /**
+ * Set the instance that matches the oneOf child schema, check the instance parameter is valid
+ * against the oneOf child schemas: ContractDataLogDataParam, String
+ *
+ * It could be an instance of the 'oneOf' schemas. The oneOf child schemas may themselves be
+ * a composed schema (allOf, anyOf, oneOf).
+ */
+ @Override
+ public void setActualInstance(Object instance) {
+ if (JSON.isInstanceOf(ContractDataLogDataParam.class, instance, new HashSet>())) {
+ super.setActualInstance(instance);
+ return;
+ }
+
+ if (JSON.isInstanceOf(String.class, instance, new HashSet>())) {
+ super.setActualInstance(instance);
+ return;
+ }
+
+ throw new RuntimeException(
+ "Invalid instance type. Must be ContractDataLogDataParam, String");
+ }
+
+ /**
+ * Get the actual instance, which can be the following: ContractDataLogDataParam, String
+ *
+ * @return The actual instance (ContractDataLogDataParam, String)
+ */
+ @Override
+ public Object getActualInstance() {
+ return super.getActualInstance();
+ }
+
+ /**
+ * Get the actual instance of `ContractDataLogDataParam`. If the actual instance is not
+ * `ContractDataLogDataParam`, the ClassCastException will be thrown.
+ *
+ * @return The actual instance of `ContractDataLogDataParam`
+ * @throws ClassCastException if the instance is not `ContractDataLogDataParam`
+ */
+ public ContractDataLogDataParam getContractDataLogDataParam() throws ClassCastException {
+ return (ContractDataLogDataParam) super.getActualInstance();
+ }
+
+ /**
+ * Get the actual instance of `String`. If the actual instance is not `String`, the
+ * ClassCastException will be thrown.
+ *
+ * @return The actual instance of `String`
+ * @throws ClassCastException if the instance is not `String`
+ */
+ public String getString() throws ClassCastException {
+ return (String) super.getActualInstance();
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ if (getActualInstance() instanceof String) {
+ if (getActualInstance() != null) {
+ joiner.add(
+ String.format(
+ "%sone_of_0%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(
+ String.valueOf(getActualInstance()),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+ return joiner.toString();
+ }
+ if (getActualInstance() instanceof ContractDataLogDataParam) {
+ if (getActualInstance() != null) {
+ joiner.add(
+ ((ContractDataLogDataParam) getActualInstance())
+ .toUrlQueryString(prefix + "one_of_1" + suffix));
+ }
+ return joiner.toString();
+ }
+ return null;
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/ContractDataDecodeResponseParams.java b/src/main/java/com/fireblocks/sdk/model/ContractDataDecodeResponseParams.java
new file mode 100644
index 00000000..d38c7820
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/ContractDataDecodeResponseParams.java
@@ -0,0 +1,245 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.StringJoiner;
+
+/** ContractDataDecodeResponseParams */
+@JsonPropertyOrder({
+ ContractDataDecodeResponseParams.JSON_PROPERTY_NAME,
+ ContractDataDecodeResponseParams.JSON_PROPERTY_SIGNATURE,
+ ContractDataDecodeResponseParams.JSON_PROPERTY_ARGS
+})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class ContractDataDecodeResponseParams {
+ public static final String JSON_PROPERTY_NAME = "name";
+ private String name;
+
+ public static final String JSON_PROPERTY_SIGNATURE = "signature";
+ private String signature;
+
+ public static final String JSON_PROPERTY_ARGS = "args";
+ private List args = new ArrayList<>();
+
+ public ContractDataDecodeResponseParams() {}
+
+ public ContractDataDecodeResponseParams name(String name) {
+ this.name = name;
+ return this;
+ }
+
+ /**
+ * The name of the contract function.
+ *
+ * @return name
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_NAME)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getName() {
+ return name;
+ }
+
+ @JsonProperty(JSON_PROPERTY_NAME)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public ContractDataDecodeResponseParams signature(String signature) {
+ this.signature = signature;
+ return this;
+ }
+
+ /**
+ * The signature of the contract function.
+ *
+ * @return signature
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_SIGNATURE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getSignature() {
+ return signature;
+ }
+
+ @JsonProperty(JSON_PROPERTY_SIGNATURE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setSignature(String signature) {
+ this.signature = signature;
+ }
+
+ public ContractDataDecodeResponseParams args(List args) {
+ this.args = args;
+ return this;
+ }
+
+ public ContractDataDecodeResponseParams addArgsItem(ParameterWithValue argsItem) {
+ if (this.args == null) {
+ this.args = new ArrayList<>();
+ }
+ this.args.add(argsItem);
+ return this;
+ }
+
+ /**
+ * Get args
+ *
+ * @return args
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_ARGS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getArgs() {
+ return args;
+ }
+
+ @JsonProperty(JSON_PROPERTY_ARGS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setArgs(List args) {
+ this.args = args;
+ }
+
+ /** Return true if this ContractDataDecodeResponseParams object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ ContractDataDecodeResponseParams contractDataDecodeResponseParams =
+ (ContractDataDecodeResponseParams) o;
+ return Objects.equals(this.name, contractDataDecodeResponseParams.name)
+ && Objects.equals(this.signature, contractDataDecodeResponseParams.signature)
+ && Objects.equals(this.args, contractDataDecodeResponseParams.args);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name, signature, args);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class ContractDataDecodeResponseParams {\n");
+ sb.append(" name: ").append(toIndentedString(name)).append("\n");
+ sb.append(" signature: ").append(toIndentedString(signature)).append("\n");
+ sb.append(" args: ").append(toIndentedString(args)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `name` to the URL query string
+ if (getName() != null) {
+ joiner.add(
+ String.format(
+ "%sname%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getName()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `signature` to the URL query string
+ if (getSignature() != null) {
+ joiner.add(
+ String.format(
+ "%ssignature%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(
+ String.valueOf(getSignature()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `args` to the URL query string
+ if (getArgs() != null) {
+ for (int i = 0; i < getArgs().size(); i++) {
+ if (getArgs().get(i) != null) {
+ joiner.add(
+ getArgs()
+ .get(i)
+ .toUrlQueryString(
+ String.format(
+ "%sargs%s%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s",
+ containerPrefix,
+ i,
+ containerSuffix))));
+ }
+ }
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/ContractDataDecodedResponse.java b/src/main/java/com/fireblocks/sdk/model/ContractDataDecodedResponse.java
new file mode 100644
index 00000000..6d1ef626
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/ContractDataDecodedResponse.java
@@ -0,0 +1,203 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.StringJoiner;
+
+/** ContractDataDecodedResponse */
+@JsonPropertyOrder({
+ ContractDataDecodedResponse.JSON_PROPERTY_RESULT,
+ ContractDataDecodedResponse.JSON_PROPERTY_TYPE
+})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class ContractDataDecodedResponse {
+ public static final String JSON_PROPERTY_RESULT = "result";
+ private List result = new ArrayList<>();
+
+ public static final String JSON_PROPERTY_TYPE = "type";
+ private ContractDataDecodeDataType type;
+
+ public ContractDataDecodedResponse() {}
+
+ public ContractDataDecodedResponse result(List result) {
+ this.result = result;
+ return this;
+ }
+
+ public ContractDataDecodedResponse addResultItem(ContractDataDecodeResponseParams resultItem) {
+ if (this.result == null) {
+ this.result = new ArrayList<>();
+ }
+ this.result.add(resultItem);
+ return this;
+ }
+
+ /**
+ * The decoded parameters of the contract function call.
+ *
+ * @return result
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_RESULT)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getResult() {
+ return result;
+ }
+
+ @JsonProperty(JSON_PROPERTY_RESULT)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setResult(List result) {
+ this.result = result;
+ }
+
+ public ContractDataDecodedResponse type(ContractDataDecodeDataType type) {
+ this.type = type;
+ return this;
+ }
+
+ /**
+ * Get type
+ *
+ * @return type
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public ContractDataDecodeDataType getType() {
+ return type;
+ }
+
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setType(ContractDataDecodeDataType type) {
+ this.type = type;
+ }
+
+ /** Return true if this ContractDataDecodedResponse object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ ContractDataDecodedResponse contractDataDecodedResponse = (ContractDataDecodedResponse) o;
+ return Objects.equals(this.result, contractDataDecodedResponse.result)
+ && Objects.equals(this.type, contractDataDecodedResponse.type);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(result, type);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class ContractDataDecodedResponse {\n");
+ sb.append(" result: ").append(toIndentedString(result)).append("\n");
+ sb.append(" type: ").append(toIndentedString(type)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `result` to the URL query string
+ if (getResult() != null) {
+ for (int i = 0; i < getResult().size(); i++) {
+ if (getResult().get(i) != null) {
+ joiner.add(
+ getResult()
+ .get(i)
+ .toUrlQueryString(
+ String.format(
+ "%sresult%s%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s",
+ containerPrefix,
+ i,
+ containerSuffix))));
+ }
+ }
+ }
+
+ // add `type` to the URL query string
+ if (getType() != null) {
+ joiner.add(
+ String.format(
+ "%stype%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getType()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/ContractDataLogDataParam.java b/src/main/java/com/fireblocks/sdk/model/ContractDataLogDataParam.java
new file mode 100644
index 00000000..b0a3c68e
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/ContractDataLogDataParam.java
@@ -0,0 +1,199 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.StringJoiner;
+
+/** ContractDataLogDataParam */
+@JsonPropertyOrder({
+ ContractDataLogDataParam.JSON_PROPERTY_DATA,
+ ContractDataLogDataParam.JSON_PROPERTY_TOPICS
+})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class ContractDataLogDataParam {
+ public static final String JSON_PROPERTY_DATA = "data";
+ private String data;
+
+ public static final String JSON_PROPERTY_TOPICS = "topics";
+ private List topics = new ArrayList<>();
+
+ public ContractDataLogDataParam() {}
+
+ public ContractDataLogDataParam data(String data) {
+ this.data = data;
+ return this;
+ }
+
+ /**
+ * The data to decode, which can be a string or an object containing the data and its type.
+ *
+ * @return data
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getData() {
+ return data;
+ }
+
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setData(String data) {
+ this.data = data;
+ }
+
+ public ContractDataLogDataParam topics(List topics) {
+ this.topics = topics;
+ return this;
+ }
+
+ public ContractDataLogDataParam addTopicsItem(String topicsItem) {
+ if (this.topics == null) {
+ this.topics = new ArrayList<>();
+ }
+ this.topics.add(topicsItem);
+ return this;
+ }
+
+ /**
+ * The topics of the log, which is an array of strings.
+ *
+ * @return topics
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_TOPICS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getTopics() {
+ return topics;
+ }
+
+ @JsonProperty(JSON_PROPERTY_TOPICS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setTopics(List topics) {
+ this.topics = topics;
+ }
+
+ /** Return true if this ContractDataLogDataParam object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ ContractDataLogDataParam contractDataLogDataParam = (ContractDataLogDataParam) o;
+ return Objects.equals(this.data, contractDataLogDataParam.data)
+ && Objects.equals(this.topics, contractDataLogDataParam.topics);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, topics);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class ContractDataLogDataParam {\n");
+ sb.append(" data: ").append(toIndentedString(data)).append("\n");
+ sb.append(" topics: ").append(toIndentedString(topics)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `data` to the URL query string
+ if (getData() != null) {
+ joiner.add(
+ String.format(
+ "%sdata%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getData()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `topics` to the URL query string
+ if (getTopics() != null) {
+ for (int i = 0; i < getTopics().size(); i++) {
+ joiner.add(
+ String.format(
+ "%stopics%s%s=%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s", containerPrefix, i, containerSuffix),
+ URLEncoder.encode(
+ String.valueOf(getTopics().get(i)),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/CreateMultipleAccountsRequest.java b/src/main/java/com/fireblocks/sdk/model/CreateMultipleAccountsRequest.java
index af13300e..d0d099ed 100644
--- a/src/main/java/com/fireblocks/sdk/model/CreateMultipleAccountsRequest.java
+++ b/src/main/java/com/fireblocks/sdk/model/CreateMultipleAccountsRequest.java
@@ -26,15 +26,28 @@
/** CreateMultipleAccountsRequest */
@JsonPropertyOrder({
CreateMultipleAccountsRequest.JSON_PROPERTY_COUNT,
- CreateMultipleAccountsRequest.JSON_PROPERTY_ASSET_IDS
+ CreateMultipleAccountsRequest.JSON_PROPERTY_BASE_ASSET_IDS,
+ CreateMultipleAccountsRequest.JSON_PROPERTY_NAMES,
+ CreateMultipleAccountsRequest.JSON_PROPERTY_VAULT_ACCOUNT_NAMES_STARTING_INDEX,
+ CreateMultipleAccountsRequest.JSON_PROPERTY_PREFIX
})
@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class CreateMultipleAccountsRequest {
public static final String JSON_PROPERTY_COUNT = "count";
private Integer count;
- public static final String JSON_PROPERTY_ASSET_IDS = "assetIds";
- private List assetIds;
+ public static final String JSON_PROPERTY_BASE_ASSET_IDS = "baseAssetIds";
+ private List baseAssetIds = new ArrayList<>();
+
+ public static final String JSON_PROPERTY_NAMES = "names";
+ private List names;
+
+ public static final String JSON_PROPERTY_VAULT_ACCOUNT_NAMES_STARTING_INDEX =
+ "vaultAccountNamesStartingIndex";
+ private Integer vaultAccountNamesStartingIndex;
+
+ public static final String JSON_PROPERTY_PREFIX = "prefix";
+ private String prefix;
public CreateMultipleAccountsRequest() {}
@@ -48,48 +61,128 @@ public CreateMultipleAccountsRequest count(Integer count) {
*
* @return count
*/
- @jakarta.annotation.Nullable
+ @jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_COUNT)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
public Integer getCount() {
return count;
}
@JsonProperty(JSON_PROPERTY_COUNT)
- @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
public void setCount(Integer count) {
this.count = count;
}
- public CreateMultipleAccountsRequest assetIds(List assetIds) {
- this.assetIds = assetIds;
+ public CreateMultipleAccountsRequest baseAssetIds(List baseAssetIds) {
+ this.baseAssetIds = baseAssetIds;
return this;
}
- public CreateMultipleAccountsRequest addAssetIdsItem(String assetIdsItem) {
- if (this.assetIds == null) {
- this.assetIds = new ArrayList<>();
+ public CreateMultipleAccountsRequest addBaseAssetIdsItem(String baseAssetIdsItem) {
+ if (this.baseAssetIds == null) {
+ this.baseAssetIds = new ArrayList<>();
}
- this.assetIds.add(assetIdsItem);
+ this.baseAssetIds.add(baseAssetIdsItem);
+ return this;
+ }
+
+ /**
+ * Array of base asset IDs
+ *
+ * @return baseAssetIds
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_BASE_ASSET_IDS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getBaseAssetIds() {
+ return baseAssetIds;
+ }
+
+ @JsonProperty(JSON_PROPERTY_BASE_ASSET_IDS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setBaseAssetIds(List baseAssetIds) {
+ this.baseAssetIds = baseAssetIds;
+ }
+
+ public CreateMultipleAccountsRequest names(List names) {
+ this.names = names;
+ return this;
+ }
+
+ public CreateMultipleAccountsRequest addNamesItem(String namesItem) {
+ if (this.names == null) {
+ this.names = new ArrayList<>();
+ }
+ this.names.add(namesItem);
+ return this;
+ }
+
+ /**
+ * Names to assign to vault accounts. if vaultAccountNamesStartingIndex or prefix is used
+ * it'll fail
+ *
+ * @return names
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_NAMES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getNames() {
+ return names;
+ }
+
+ @JsonProperty(JSON_PROPERTY_NAMES)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setNames(List names) {
+ this.names = names;
+ }
+
+ public CreateMultipleAccountsRequest vaultAccountNamesStartingIndex(
+ Integer vaultAccountNamesStartingIndex) {
+ this.vaultAccountNamesStartingIndex = vaultAccountNamesStartingIndex;
+ return this;
+ }
+
+ /**
+ * Copy vault accounts names starting from this index. If names array is used it'll fail
+ *
+ * @return vaultAccountNamesStartingIndex
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_NAMES_STARTING_INDEX)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Integer getVaultAccountNamesStartingIndex() {
+ return vaultAccountNamesStartingIndex;
+ }
+
+ @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_NAMES_STARTING_INDEX)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setVaultAccountNamesStartingIndex(Integer vaultAccountNamesStartingIndex) {
+ this.vaultAccountNamesStartingIndex = vaultAccountNamesStartingIndex;
+ }
+
+ public CreateMultipleAccountsRequest prefix(String prefix) {
+ this.prefix = prefix;
return this;
}
/**
- * Array of asset IDs
+ * When copying from existing vault accounts (vaultAccountNamesStartingIndex) then adding a
+ * prefix to the names. If names array is used it'll fail
*
- * @return assetIds
+ * @return prefix
*/
@jakarta.annotation.Nullable
- @JsonProperty(JSON_PROPERTY_ASSET_IDS)
+ @JsonProperty(JSON_PROPERTY_PREFIX)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public List getAssetIds() {
- return assetIds;
+ public String getPrefix() {
+ return prefix;
}
- @JsonProperty(JSON_PROPERTY_ASSET_IDS)
+ @JsonProperty(JSON_PROPERTY_PREFIX)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public void setAssetIds(List assetIds) {
- this.assetIds = assetIds;
+ public void setPrefix(String prefix) {
+ this.prefix = prefix;
}
/** Return true if this CreateMultipleAccountsRequest object is equal to o. */
@@ -104,12 +197,17 @@ public boolean equals(Object o) {
CreateMultipleAccountsRequest createMultipleAccountsRequest =
(CreateMultipleAccountsRequest) o;
return Objects.equals(this.count, createMultipleAccountsRequest.count)
- && Objects.equals(this.assetIds, createMultipleAccountsRequest.assetIds);
+ && Objects.equals(this.baseAssetIds, createMultipleAccountsRequest.baseAssetIds)
+ && Objects.equals(this.names, createMultipleAccountsRequest.names)
+ && Objects.equals(
+ this.vaultAccountNamesStartingIndex,
+ createMultipleAccountsRequest.vaultAccountNamesStartingIndex)
+ && Objects.equals(this.prefix, createMultipleAccountsRequest.prefix);
}
@Override
public int hashCode() {
- return Objects.hash(count, assetIds);
+ return Objects.hash(count, baseAssetIds, names, vaultAccountNamesStartingIndex, prefix);
}
@Override
@@ -117,7 +215,12 @@ public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class CreateMultipleAccountsRequest {\n");
sb.append(" count: ").append(toIndentedString(count)).append("\n");
- sb.append(" assetIds: ").append(toIndentedString(assetIds)).append("\n");
+ sb.append(" baseAssetIds: ").append(toIndentedString(baseAssetIds)).append("\n");
+ sb.append(" names: ").append(toIndentedString(names)).append("\n");
+ sb.append(" vaultAccountNamesStartingIndex: ")
+ .append(toIndentedString(vaultAccountNamesStartingIndex))
+ .append("\n");
+ sb.append(" prefix: ").append(toIndentedString(prefix)).append("\n");
sb.append("}");
return sb.toString();
}
@@ -176,12 +279,12 @@ public String toUrlQueryString(String prefix) {
.replaceAll("\\+", "%20")));
}
- // add `assetIds` to the URL query string
- if (getAssetIds() != null) {
- for (int i = 0; i < getAssetIds().size(); i++) {
+ // add `baseAssetIds` to the URL query string
+ if (getBaseAssetIds() != null) {
+ for (int i = 0; i < getBaseAssetIds().size(); i++) {
joiner.add(
String.format(
- "%sassetIds%s%s=%s",
+ "%sbaseAssetIds%s%s=%s",
prefix,
suffix,
"".equals(suffix)
@@ -189,12 +292,55 @@ public String toUrlQueryString(String prefix) {
: String.format(
"%s%d%s", containerPrefix, i, containerSuffix),
URLEncoder.encode(
- String.valueOf(getAssetIds().get(i)),
+ String.valueOf(getBaseAssetIds().get(i)),
StandardCharsets.UTF_8)
.replaceAll("\\+", "%20")));
}
}
+ // add `names` to the URL query string
+ if (getNames() != null) {
+ for (int i = 0; i < getNames().size(); i++) {
+ joiner.add(
+ String.format(
+ "%snames%s%s=%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s", containerPrefix, i, containerSuffix),
+ URLEncoder.encode(
+ String.valueOf(getNames().get(i)),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+ }
+
+ // add `vaultAccountNamesStartingIndex` to the URL query string
+ if (getVaultAccountNamesStartingIndex() != null) {
+ joiner.add(
+ String.format(
+ "%svaultAccountNamesStartingIndex%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(
+ String.valueOf(getVaultAccountNamesStartingIndex()),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `prefix` to the URL query string
+ if (getPrefix() != null) {
+ joiner.add(
+ String.format(
+ "%sprefix%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getPrefix()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
return joiner.toString();
}
}
diff --git a/src/main/java/com/fireblocks/sdk/model/CreateMultipleVaultAccountsJobStatus.java b/src/main/java/com/fireblocks/sdk/model/CreateMultipleVaultAccountsJobStatus.java
new file mode 100644
index 00000000..f14e27d4
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/CreateMultipleVaultAccountsJobStatus.java
@@ -0,0 +1,247 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Objects;
+import java.util.StringJoiner;
+
+/** CreateMultipleVaultAccountsJobStatus */
+@JsonPropertyOrder({
+ CreateMultipleVaultAccountsJobStatus.JSON_PROPERTY_STATUS,
+ CreateMultipleVaultAccountsJobStatus.JSON_PROPERTY_VAULT_ACCOUNTS,
+ CreateMultipleVaultAccountsJobStatus.JSON_PROPERTY_ERROR_MESSAGE
+})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class CreateMultipleVaultAccountsJobStatus {
+ public static final String JSON_PROPERTY_STATUS = "status";
+ private String status;
+
+ public static final String JSON_PROPERTY_VAULT_ACCOUNTS = "vaultAccounts";
+ private Map> vaultAccounts = new HashMap<>();
+
+ public static final String JSON_PROPERTY_ERROR_MESSAGE = "errorMessage";
+ private String errorMessage;
+
+ public CreateMultipleVaultAccountsJobStatus() {}
+
+ public CreateMultipleVaultAccountsJobStatus status(String status) {
+ this.status = status;
+ return this;
+ }
+
+ /**
+ * Get status
+ *
+ * @return status
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_STATUS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getStatus() {
+ return status;
+ }
+
+ @JsonProperty(JSON_PROPERTY_STATUS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setStatus(String status) {
+ this.status = status;
+ }
+
+ public CreateMultipleVaultAccountsJobStatus vaultAccounts(
+ Map> vaultAccounts) {
+ this.vaultAccounts = vaultAccounts;
+ return this;
+ }
+
+ public CreateMultipleVaultAccountsJobStatus putVaultAccountsItem(
+ String key, Map vaultAccountsItem) {
+ if (this.vaultAccounts == null) {
+ this.vaultAccounts = new HashMap<>();
+ }
+ this.vaultAccounts.put(key, vaultAccountsItem);
+ return this;
+ }
+
+ /**
+ * Mapping between VaultAccountId to a mapping of asset to address
+ *
+ * @return vaultAccounts
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNTS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public Map> getVaultAccounts() {
+ return vaultAccounts;
+ }
+
+ @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNTS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setVaultAccounts(Map> vaultAccounts) {
+ this.vaultAccounts = vaultAccounts;
+ }
+
+ public CreateMultipleVaultAccountsJobStatus errorMessage(String errorMessage) {
+ this.errorMessage = errorMessage;
+ return this;
+ }
+
+ /**
+ * Get errorMessage
+ *
+ * @return errorMessage
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_ERROR_MESSAGE)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getErrorMessage() {
+ return errorMessage;
+ }
+
+ @JsonProperty(JSON_PROPERTY_ERROR_MESSAGE)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setErrorMessage(String errorMessage) {
+ this.errorMessage = errorMessage;
+ }
+
+ /** Return true if this CreateMultipleVaultAccountsJobStatus object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateMultipleVaultAccountsJobStatus createMultipleVaultAccountsJobStatus =
+ (CreateMultipleVaultAccountsJobStatus) o;
+ return Objects.equals(this.status, createMultipleVaultAccountsJobStatus.status)
+ && Objects.equals(
+ this.vaultAccounts, createMultipleVaultAccountsJobStatus.vaultAccounts)
+ && Objects.equals(
+ this.errorMessage, createMultipleVaultAccountsJobStatus.errorMessage);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(status, vaultAccounts, errorMessage);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateMultipleVaultAccountsJobStatus {\n");
+ sb.append(" status: ").append(toIndentedString(status)).append("\n");
+ sb.append(" vaultAccounts: ").append(toIndentedString(vaultAccounts)).append("\n");
+ sb.append(" errorMessage: ").append(toIndentedString(errorMessage)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `status` to the URL query string
+ if (getStatus() != null) {
+ joiner.add(
+ String.format(
+ "%sstatus%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getStatus()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `vaultAccounts` to the URL query string
+ if (getVaultAccounts() != null) {
+ for (String _key : getVaultAccounts().keySet()) {
+ joiner.add(
+ String.format(
+ "%svaultAccounts%s%s=%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s", containerPrefix, _key, containerSuffix),
+ getVaultAccounts().get(_key),
+ URLEncoder.encode(
+ String.valueOf(getVaultAccounts().get(_key)),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+ }
+
+ // add `errorMessage` to the URL query string
+ if (getErrorMessage() != null) {
+ joiner.add(
+ String.format(
+ "%serrorMessage%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(
+ String.valueOf(getErrorMessage()),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/CreateTagRequest.java b/src/main/java/com/fireblocks/sdk/model/CreateTagRequest.java
new file mode 100644
index 00000000..99f463f6
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/CreateTagRequest.java
@@ -0,0 +1,183 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.Objects;
+import java.util.StringJoiner;
+
+/** CreateTagRequest */
+@JsonPropertyOrder({
+ CreateTagRequest.JSON_PROPERTY_LABEL,
+ CreateTagRequest.JSON_PROPERTY_DESCRIPTION
+})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class CreateTagRequest {
+ public static final String JSON_PROPERTY_LABEL = "label";
+ private String label;
+
+ public static final String JSON_PROPERTY_DESCRIPTION = "description";
+ private String description;
+
+ public CreateTagRequest() {}
+
+ public CreateTagRequest label(String label) {
+ this.label = label;
+ return this;
+ }
+
+ /**
+ * The tag label
+ *
+ * @return label
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_LABEL)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getLabel() {
+ return label;
+ }
+
+ @JsonProperty(JSON_PROPERTY_LABEL)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setLabel(String label) {
+ this.label = label;
+ }
+
+ public CreateTagRequest description(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Description for the tag
+ *
+ * @return description
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DESCRIPTION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDescription() {
+ return description;
+ }
+
+ @JsonProperty(JSON_PROPERTY_DESCRIPTION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ /** Return true if this CreateTagRequest object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ CreateTagRequest createTagRequest = (CreateTagRequest) o;
+ return Objects.equals(this.label, createTagRequest.label)
+ && Objects.equals(this.description, createTagRequest.description);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(label, description);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class CreateTagRequest {\n");
+ sb.append(" label: ").append(toIndentedString(label)).append("\n");
+ sb.append(" description: ").append(toIndentedString(description)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `label` to the URL query string
+ if (getLabel() != null) {
+ joiner.add(
+ String.format(
+ "%slabel%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getLabel()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `description` to the URL query string
+ if (getDescription() != null) {
+ joiner.add(
+ String.format(
+ "%sdescription%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(
+ String.valueOf(getDescription()),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/SwapOperation.java b/src/main/java/com/fireblocks/sdk/model/SwapOperation.java
index b6c897f3..93585949 100644
--- a/src/main/java/com/fireblocks/sdk/model/SwapOperation.java
+++ b/src/main/java/com/fireblocks/sdk/model/SwapOperation.java
@@ -58,7 +58,7 @@ public class SwapOperation {
private String accountId;
public static final String JSON_PROPERTY_PROVIDER_ID = "providerId";
- private String providerId;
+ private UUID providerId;
public static final String JSON_PROPERTY_CATEGORY = "category";
private ProviderCategoryEnum category;
@@ -201,26 +201,26 @@ public void setAccountId(String accountId) {
this.accountId = accountId;
}
- public SwapOperation providerId(String providerId) {
+ public SwapOperation providerId(UUID providerId) {
this.providerId = providerId;
return this;
}
/**
- * The ID of the provider
+ * The uuid that identifies the provider
*
* @return providerId
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_PROVIDER_ID)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
- public String getProviderId() {
+ public UUID getProviderId() {
return providerId;
}
@JsonProperty(JSON_PROPERTY_PROVIDER_ID)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
- public void setProviderId(String providerId) {
+ public void setProviderId(UUID providerId) {
this.providerId = providerId;
}
diff --git a/src/main/java/com/fireblocks/sdk/model/SwapProvider.java b/src/main/java/com/fireblocks/sdk/model/SwapProvider.java
index eb5f9f54..7317b13b 100644
--- a/src/main/java/com/fireblocks/sdk/model/SwapProvider.java
+++ b/src/main/java/com/fireblocks/sdk/model/SwapProvider.java
@@ -22,6 +22,7 @@
import java.util.List;
import java.util.Objects;
import java.util.StringJoiner;
+import java.util.UUID;
/** SwapProvider */
@JsonPropertyOrder({
@@ -36,7 +37,7 @@
@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class SwapProvider {
public static final String JSON_PROPERTY_ID = "id";
- private String id;
+ private UUID id;
public static final String JSON_PROPERTY_NAME = "name";
private String name;
@@ -59,26 +60,26 @@ public class SwapProvider {
public SwapProvider() {}
- public SwapProvider id(String id) {
+ public SwapProvider id(UUID id) {
this.id = id;
return this;
}
/**
- * The ID of the provider
+ * The uuid that identifies the provider
*
* @return id
*/
@jakarta.annotation.Nonnull
@JsonProperty(JSON_PROPERTY_ID)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
- public String getId() {
+ public UUID getId() {
return id;
}
@JsonProperty(JSON_PROPERTY_ID)
@JsonInclude(value = JsonInclude.Include.ALWAYS)
- public void setId(String id) {
+ public void setId(UUID id) {
this.id = id;
}
diff --git a/src/main/java/com/fireblocks/sdk/model/Tag.java b/src/main/java/com/fireblocks/sdk/model/Tag.java
new file mode 100644
index 00000000..7efca3a7
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/Tag.java
@@ -0,0 +1,220 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.Objects;
+import java.util.StringJoiner;
+import java.util.UUID;
+
+/** Tag */
+@JsonPropertyOrder({Tag.JSON_PROPERTY_ID, Tag.JSON_PROPERTY_LABEL, Tag.JSON_PROPERTY_DESCRIPTION})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class Tag {
+ public static final String JSON_PROPERTY_ID = "id";
+ private UUID id;
+
+ public static final String JSON_PROPERTY_LABEL = "label";
+ private String label;
+
+ public static final String JSON_PROPERTY_DESCRIPTION = "description";
+ private String description;
+
+ public Tag() {}
+
+ public Tag id(UUID id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * The unique identifier of the tag
+ *
+ * @return id
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public UUID getId() {
+ return id;
+ }
+
+ @JsonProperty(JSON_PROPERTY_ID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setId(UUID id) {
+ this.id = id;
+ }
+
+ public Tag label(String label) {
+ this.label = label;
+ return this;
+ }
+
+ /**
+ * The tag label
+ *
+ * @return label
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_LABEL)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getLabel() {
+ return label;
+ }
+
+ @JsonProperty(JSON_PROPERTY_LABEL)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setLabel(String label) {
+ this.label = label;
+ }
+
+ public Tag description(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Description for the tag
+ *
+ * @return description
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DESCRIPTION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDescription() {
+ return description;
+ }
+
+ @JsonProperty(JSON_PROPERTY_DESCRIPTION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ /** Return true if this Tag object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ Tag tag = (Tag) o;
+ return Objects.equals(this.id, tag.id)
+ && Objects.equals(this.label, tag.label)
+ && Objects.equals(this.description, tag.description);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(id, label, description);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class Tag {\n");
+ sb.append(" id: ").append(toIndentedString(id)).append("\n");
+ sb.append(" label: ").append(toIndentedString(label)).append("\n");
+ sb.append(" description: ").append(toIndentedString(description)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `id` to the URL query string
+ if (getId() != null) {
+ joiner.add(
+ String.format(
+ "%sid%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getId()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `label` to the URL query string
+ if (getLabel() != null) {
+ joiner.add(
+ String.format(
+ "%slabel%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getLabel()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `description` to the URL query string
+ if (getDescription() != null) {
+ joiner.add(
+ String.format(
+ "%sdescription%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(
+ String.valueOf(getDescription()),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/TagsPagedResponse.java b/src/main/java/com/fireblocks/sdk/model/TagsPagedResponse.java
new file mode 100644
index 00000000..27b81033
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/TagsPagedResponse.java
@@ -0,0 +1,200 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.StringJoiner;
+
+/** TagsPagedResponse */
+@JsonPropertyOrder({TagsPagedResponse.JSON_PROPERTY_DATA, TagsPagedResponse.JSON_PROPERTY_NEXT})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class TagsPagedResponse {
+ public static final String JSON_PROPERTY_DATA = "data";
+ private List data = new ArrayList<>();
+
+ public static final String JSON_PROPERTY_NEXT = "next";
+ private String next;
+
+ public TagsPagedResponse() {}
+
+ public TagsPagedResponse data(List data) {
+ this.data = data;
+ return this;
+ }
+
+ public TagsPagedResponse addDataItem(Tag dataItem) {
+ if (this.data == null) {
+ this.data = new ArrayList<>();
+ }
+ this.data.add(dataItem);
+ return this;
+ }
+
+ /**
+ * Get data
+ *
+ * @return data
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getData() {
+ return data;
+ }
+
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setData(List data) {
+ this.data = data;
+ }
+
+ public TagsPagedResponse next(String next) {
+ this.next = next;
+ return this;
+ }
+
+ /**
+ * Cursor to the next page
+ *
+ * @return next
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_NEXT)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getNext() {
+ return next;
+ }
+
+ @JsonProperty(JSON_PROPERTY_NEXT)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setNext(String next) {
+ this.next = next;
+ }
+
+ /** Return true if this TagsPagedResponse object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ TagsPagedResponse tagsPagedResponse = (TagsPagedResponse) o;
+ return Objects.equals(this.data, tagsPagedResponse.data)
+ && Objects.equals(this.next, tagsPagedResponse.next);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, next);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class TagsPagedResponse {\n");
+ sb.append(" data: ").append(toIndentedString(data)).append("\n");
+ sb.append(" next: ").append(toIndentedString(next)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `data` to the URL query string
+ if (getData() != null) {
+ for (int i = 0; i < getData().size(); i++) {
+ if (getData().get(i) != null) {
+ joiner.add(
+ getData()
+ .get(i)
+ .toUrlQueryString(
+ String.format(
+ "%sdata%s%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s",
+ containerPrefix,
+ i,
+ containerSuffix))));
+ }
+ }
+ }
+
+ // add `next` to the URL query string
+ if (getNext() != null) {
+ joiner.add(
+ String.format(
+ "%snext%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getNext()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/TransactionRequest.java b/src/main/java/com/fireblocks/sdk/model/TransactionRequest.java
index 85dc402f..f792588e 100644
--- a/src/main/java/com/fireblocks/sdk/model/TransactionRequest.java
+++ b/src/main/java/com/fireblocks/sdk/model/TransactionRequest.java
@@ -690,7 +690,14 @@ public TransactionRequest extraParameters(Object extraParameters) {
* value set to the Ethereum smart contract Application Binary Interface (ABI) payload. The
* Fireblocks [development
* libraries](https://developers.fireblocks.com/docs/ethereum-development#convenience-libraries)
- * are recommended for building contract call transactions.
+ * are recommended for building contract call transactions. For **exchange compliance (e.g.,
+ * Binance) and Travel Rule purposes**, include the key `piiData` containing a
+ * **custom JSON structure** with Personally Identifiable Information (PII) relevant to the
+ * transaction. This data must be fully **encrypted by the sender** before being submitted to
+ * the Fireblocks API. The recommended encryption method is **hybrid encryption** using
+ * AES-256-GCM for the payload and RSA-OAEP for key exchange, with the recipient exchange’s
+ * public key. [development
+ * libraries](https://developers.fireblocks.com/docs/a-developers-guide-to-constructing-encrypted-pii-messages-for-binance-via-fireblocks)
*
* @return extraParameters
*/
diff --git a/src/main/java/com/fireblocks/sdk/model/TransactionResponse.java b/src/main/java/com/fireblocks/sdk/model/TransactionResponse.java
index a97ce26b..00fcc5c6 100644
--- a/src/main/java/com/fireblocks/sdk/model/TransactionResponse.java
+++ b/src/main/java/com/fireblocks/sdk/model/TransactionResponse.java
@@ -1084,7 +1084,14 @@ public TransactionResponse extraParameters(Object extraParameters) {
* value set to the Ethereum smart contract Application Binary Interface (ABI) payload. The
* Fireblocks [development
* libraries](https://developers.fireblocks.com/docs/ethereum-development#convenience-libraries)
- * are recommended for building contract call transactions.
+ * are recommended for building contract call transactions. For **exchange compliance (e.g.,
+ * Binance) and Travel Rule purposes**, include the key `piiData` containing a
+ * **custom JSON structure** with Personally Identifiable Information (PII) relevant to the
+ * transaction. This data must be fully **encrypted by the sender** before being submitted to
+ * the Fireblocks API. The recommended encryption method is **hybrid encryption** using
+ * AES-256-GCM for the payload and RSA-OAEP for key exchange, with the recipient exchange’s
+ * public key. [development
+ * libraries](https://developers.fireblocks.com/docs/a-developers-guide-to-constructing-encrypted-pii-messages-for-binance-via-fireblocks)
*
* @return extraParameters
*/
diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRuleCreateTransactionRequest.java b/src/main/java/com/fireblocks/sdk/model/TravelRuleCreateTransactionRequest.java
index 4b0a0cb5..65786d23 100644
--- a/src/main/java/com/fireblocks/sdk/model/TravelRuleCreateTransactionRequest.java
+++ b/src/main/java/com/fireblocks/sdk/model/TravelRuleCreateTransactionRequest.java
@@ -13,9 +13,11 @@
package com.fireblocks.sdk.model;
+import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import com.fasterxml.jackson.annotation.JsonValue;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.Objects;
@@ -33,6 +35,7 @@
TravelRuleCreateTransactionRequest.JSON_PROPERTY_BENEFICIARY,
TravelRuleCreateTransactionRequest.JSON_PROPERTY_ENCRYPTED,
TravelRuleCreateTransactionRequest.JSON_PROPERTY_PROTOCOL,
+ TravelRuleCreateTransactionRequest.JSON_PROPERTY_TARGET_PROTOCOL,
TravelRuleCreateTransactionRequest.JSON_PROPERTY_SKIP_BENEFICIARY_DATA_VALIDATION,
TravelRuleCreateTransactionRequest.JSON_PROPERTY_TRAVEL_RULE_BEHAVIOR,
TravelRuleCreateTransactionRequest.JSON_PROPERTY_ORIGINATOR_REF,
@@ -74,8 +77,50 @@ public class TravelRuleCreateTransactionRequest {
public static final String JSON_PROPERTY_ENCRYPTED = "encrypted";
private String encrypted;
+ /** The protocol used to perform the travel rule. */
+ public enum ProtocolEnum {
+ IVMS101("IVMS101"),
+
+ TRLIGHT("TRLight"),
+
+ TRP("TRP"),
+
+ OPENVASP("OpenVASP"),
+
+ GTR("GTR");
+
+ private String value;
+
+ ProtocolEnum(String value) {
+ this.value = value;
+ }
+
+ @JsonValue
+ public String getValue() {
+ return value;
+ }
+
+ @Override
+ public String toString() {
+ return String.valueOf(value);
+ }
+
+ @JsonCreator
+ public static ProtocolEnum fromValue(String value) {
+ for (ProtocolEnum b : ProtocolEnum.values()) {
+ if (b.value.equals(value)) {
+ return b;
+ }
+ }
+ throw new IllegalArgumentException("Unexpected value '" + value + "'");
+ }
+ }
+
public static final String JSON_PROPERTY_PROTOCOL = "protocol";
- private String protocol;
+ private ProtocolEnum protocol;
+
+ public static final String JSON_PROPERTY_TARGET_PROTOCOL = "targetProtocol";
+ private String targetProtocol;
public static final String JSON_PROPERTY_SKIP_BENEFICIARY_DATA_VALIDATION =
"skipBeneficiaryDataValidation";
@@ -324,7 +369,7 @@ public void setEncrypted(String encrypted) {
this.encrypted = encrypted;
}
- public TravelRuleCreateTransactionRequest protocol(String protocol) {
+ public TravelRuleCreateTransactionRequest protocol(ProtocolEnum protocol) {
this.protocol = protocol;
return this;
}
@@ -337,16 +382,39 @@ public TravelRuleCreateTransactionRequest protocol(String protocol) {
@jakarta.annotation.Nullable
@JsonProperty(JSON_PROPERTY_PROTOCOL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public String getProtocol() {
+ public ProtocolEnum getProtocol() {
return protocol;
}
@JsonProperty(JSON_PROPERTY_PROTOCOL)
@JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
- public void setProtocol(String protocol) {
+ public void setProtocol(ProtocolEnum protocol) {
this.protocol = protocol;
}
+ public TravelRuleCreateTransactionRequest targetProtocol(String targetProtocol) {
+ this.targetProtocol = targetProtocol;
+ return this;
+ }
+
+ /**
+ * The target protocol for GTR (Global Travel Rule) transfers.
+ *
+ * @return targetProtocol
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_TARGET_PROTOCOL)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getTargetProtocol() {
+ return targetProtocol;
+ }
+
+ @JsonProperty(JSON_PROPERTY_TARGET_PROTOCOL)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setTargetProtocol(String targetProtocol) {
+ this.targetProtocol = targetProtocol;
+ }
+
public TravelRuleCreateTransactionRequest skipBeneficiaryDataValidation(
Boolean skipBeneficiaryDataValidation) {
this.skipBeneficiaryDataValidation = skipBeneficiaryDataValidation;
@@ -622,6 +690,8 @@ public boolean equals(Object o) {
&& Objects.equals(this.beneficiary, travelRuleCreateTransactionRequest.beneficiary)
&& Objects.equals(this.encrypted, travelRuleCreateTransactionRequest.encrypted)
&& Objects.equals(this.protocol, travelRuleCreateTransactionRequest.protocol)
+ && Objects.equals(
+ this.targetProtocol, travelRuleCreateTransactionRequest.targetProtocol)
&& Objects.equals(
this.skipBeneficiaryDataValidation,
travelRuleCreateTransactionRequest.skipBeneficiaryDataValidation)
@@ -660,6 +730,7 @@ public int hashCode() {
beneficiary,
encrypted,
protocol,
+ targetProtocol,
skipBeneficiaryDataValidation,
travelRuleBehavior,
originatorRef,
@@ -698,6 +769,7 @@ public String toString() {
sb.append(" beneficiary: ").append(toIndentedString(beneficiary)).append("\n");
sb.append(" encrypted: ").append(toIndentedString(encrypted)).append("\n");
sb.append(" protocol: ").append(toIndentedString(protocol)).append("\n");
+ sb.append(" targetProtocol: ").append(toIndentedString(targetProtocol)).append("\n");
sb.append(" skipBeneficiaryDataValidation: ")
.append(toIndentedString(skipBeneficiaryDataValidation))
.append("\n");
@@ -866,6 +938,19 @@ public String toUrlQueryString(String prefix) {
.replaceAll("\\+", "%20")));
}
+ // add `targetProtocol` to the URL query string
+ if (getTargetProtocol() != null) {
+ joiner.add(
+ String.format(
+ "%stargetProtocol%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(
+ String.valueOf(getTargetProtocol()),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
// add `skipBeneficiaryDataValidation` to the URL query string
if (getSkipBeneficiaryDataValidation() != null) {
joiner.add(
diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRuleValidateFullTransactionRequest.java b/src/main/java/com/fireblocks/sdk/model/TravelRuleValidateFullTransactionRequest.java
index 0267f896..726498d6 100644
--- a/src/main/java/com/fireblocks/sdk/model/TravelRuleValidateFullTransactionRequest.java
+++ b/src/main/java/com/fireblocks/sdk/model/TravelRuleValidateFullTransactionRequest.java
@@ -89,7 +89,9 @@ public enum ProtocolEnum {
TRP("TRP"),
- OPENVASP("OpenVASP");
+ OPENVASP("OpenVASP"),
+
+ GTR("GTR");
private String value;
diff --git a/src/main/java/com/fireblocks/sdk/model/UpdateAssetUserMetadataRequest.java b/src/main/java/com/fireblocks/sdk/model/UpdateAssetUserMetadataRequest.java
new file mode 100644
index 00000000..296bd773
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/UpdateAssetUserMetadataRequest.java
@@ -0,0 +1,132 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.util.Objects;
+import java.util.StringJoiner;
+
+/** UpdateAssetUserMetadataRequest */
+@JsonPropertyOrder({UpdateAssetUserMetadataRequest.JSON_PROPERTY_METADATA})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class UpdateAssetUserMetadataRequest {
+ public static final String JSON_PROPERTY_METADATA = "metadata";
+ private AssetMetadataRequest metadata;
+
+ public UpdateAssetUserMetadataRequest() {}
+
+ public UpdateAssetUserMetadataRequest metadata(AssetMetadataRequest metadata) {
+ this.metadata = metadata;
+ return this;
+ }
+
+ /**
+ * Get metadata
+ *
+ * @return metadata
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_METADATA)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public AssetMetadataRequest getMetadata() {
+ return metadata;
+ }
+
+ @JsonProperty(JSON_PROPERTY_METADATA)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setMetadata(AssetMetadataRequest metadata) {
+ this.metadata = metadata;
+ }
+
+ /** Return true if this UpdateAssetUserMetadataRequest object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ UpdateAssetUserMetadataRequest updateAssetUserMetadataRequest =
+ (UpdateAssetUserMetadataRequest) o;
+ return Objects.equals(this.metadata, updateAssetUserMetadataRequest.metadata);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(metadata);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class UpdateAssetUserMetadataRequest {\n");
+ sb.append(" metadata: ").append(toIndentedString(metadata)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `metadata` to the URL query string
+ if (getMetadata() != null) {
+ joiner.add(getMetadata().toUrlQueryString(prefix + "metadata" + suffix));
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/UpdateTagRequest.java b/src/main/java/com/fireblocks/sdk/model/UpdateTagRequest.java
new file mode 100644
index 00000000..2a7cf33f
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/UpdateTagRequest.java
@@ -0,0 +1,183 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.Objects;
+import java.util.StringJoiner;
+
+/** UpdateTagRequest */
+@JsonPropertyOrder({
+ UpdateTagRequest.JSON_PROPERTY_LABEL,
+ UpdateTagRequest.JSON_PROPERTY_DESCRIPTION
+})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class UpdateTagRequest {
+ public static final String JSON_PROPERTY_LABEL = "label";
+ private String label;
+
+ public static final String JSON_PROPERTY_DESCRIPTION = "description";
+ private String description;
+
+ public UpdateTagRequest() {}
+
+ public UpdateTagRequest label(String label) {
+ this.label = label;
+ return this;
+ }
+
+ /**
+ * The tag label
+ *
+ * @return label
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_LABEL)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getLabel() {
+ return label;
+ }
+
+ @JsonProperty(JSON_PROPERTY_LABEL)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setLabel(String label) {
+ this.label = label;
+ }
+
+ public UpdateTagRequest description(String description) {
+ this.description = description;
+ return this;
+ }
+
+ /**
+ * Description for the tag
+ *
+ * @return description
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_DESCRIPTION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public String getDescription() {
+ return description;
+ }
+
+ @JsonProperty(JSON_PROPERTY_DESCRIPTION)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ /** Return true if this UpdateTagRequest object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ UpdateTagRequest updateTagRequest = (UpdateTagRequest) o;
+ return Objects.equals(this.label, updateTagRequest.label)
+ && Objects.equals(this.description, updateTagRequest.description);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(label, description);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class UpdateTagRequest {\n");
+ sb.append(" label: ").append(toIndentedString(label)).append("\n");
+ sb.append(" description: ").append(toIndentedString(description)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `label` to the URL query string
+ if (getLabel() != null) {
+ joiner.add(
+ String.format(
+ "%slabel%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(String.valueOf(getLabel()), StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ // add `description` to the URL query string
+ if (getDescription() != null) {
+ joiner.add(
+ String.format(
+ "%sdescription%s=%s",
+ prefix,
+ suffix,
+ URLEncoder.encode(
+ String.valueOf(getDescription()),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/main/java/com/fireblocks/sdk/model/VaultAccount.java b/src/main/java/com/fireblocks/sdk/model/VaultAccount.java
index bb749567..d29f94ae 100644
--- a/src/main/java/com/fireblocks/sdk/model/VaultAccount.java
+++ b/src/main/java/com/fireblocks/sdk/model/VaultAccount.java
@@ -30,7 +30,8 @@
VaultAccount.JSON_PROPERTY_ASSETS,
VaultAccount.JSON_PROPERTY_HIDDEN_ON_U_I,
VaultAccount.JSON_PROPERTY_CUSTOMER_REF_ID,
- VaultAccount.JSON_PROPERTY_AUTO_FUEL
+ VaultAccount.JSON_PROPERTY_AUTO_FUEL,
+ VaultAccount.JSON_PROPERTY_TAGS
})
@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
public class VaultAccount {
@@ -52,6 +53,9 @@ public class VaultAccount {
public static final String JSON_PROPERTY_AUTO_FUEL = "autoFuel";
private Boolean autoFuel;
+ public static final String JSON_PROPERTY_TAGS = "tags";
+ private List tags;
+
public VaultAccount() {}
public VaultAccount id(String id) {
@@ -200,6 +204,37 @@ public void setAutoFuel(Boolean autoFuel) {
this.autoFuel = autoFuel;
}
+ public VaultAccount tags(List tags) {
+ this.tags = tags;
+ return this;
+ }
+
+ public VaultAccount addTagsItem(Tag tagsItem) {
+ if (this.tags == null) {
+ this.tags = new ArrayList<>();
+ }
+ this.tags.add(tagsItem);
+ return this;
+ }
+
+ /**
+ * List of tags attached to the vault account
+ *
+ * @return tags
+ */
+ @jakarta.annotation.Nullable
+ @JsonProperty(JSON_PROPERTY_TAGS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public List getTags() {
+ return tags;
+ }
+
+ @JsonProperty(JSON_PROPERTY_TAGS)
+ @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS)
+ public void setTags(List tags) {
+ this.tags = tags;
+ }
+
/** Return true if this VaultAccount object is equal to o. */
@Override
public boolean equals(Object o) {
@@ -215,12 +250,13 @@ public boolean equals(Object o) {
&& Objects.equals(this.assets, vaultAccount.assets)
&& Objects.equals(this.hiddenOnUI, vaultAccount.hiddenOnUI)
&& Objects.equals(this.customerRefId, vaultAccount.customerRefId)
- && Objects.equals(this.autoFuel, vaultAccount.autoFuel);
+ && Objects.equals(this.autoFuel, vaultAccount.autoFuel)
+ && Objects.equals(this.tags, vaultAccount.tags);
}
@Override
public int hashCode() {
- return Objects.hash(id, name, assets, hiddenOnUI, customerRefId, autoFuel);
+ return Objects.hash(id, name, assets, hiddenOnUI, customerRefId, autoFuel, tags);
}
@Override
@@ -233,6 +269,7 @@ public String toString() {
sb.append(" hiddenOnUI: ").append(toIndentedString(hiddenOnUI)).append("\n");
sb.append(" customerRefId: ").append(toIndentedString(customerRefId)).append("\n");
sb.append(" autoFuel: ").append(toIndentedString(autoFuel)).append("\n");
+ sb.append(" tags: ").append(toIndentedString(tags)).append("\n");
sb.append("}");
return sb.toString();
}
@@ -361,6 +398,29 @@ public String toUrlQueryString(String prefix) {
.replaceAll("\\+", "%20")));
}
+ // add `tags` to the URL query string
+ if (getTags() != null) {
+ for (int i = 0; i < getTags().size(); i++) {
+ if (getTags().get(i) != null) {
+ joiner.add(
+ getTags()
+ .get(i)
+ .toUrlQueryString(
+ String.format(
+ "%stags%s%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s",
+ containerPrefix,
+ i,
+ containerSuffix))));
+ }
+ }
+ }
+
return joiner.toString();
}
}
diff --git a/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentsRequest.java b/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentsRequest.java
new file mode 100644
index 00000000..b1ada40b
--- /dev/null
+++ b/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentsRequest.java
@@ -0,0 +1,220 @@
+/*
+ * Fireblocks API
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: support@fireblocks.com
+ *
+ * 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.fireblocks.sdk.model;
+
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+import java.util.StringJoiner;
+import java.util.UUID;
+
+/** VaultAccountsTagAttachmentsRequest */
+@JsonPropertyOrder({
+ VaultAccountsTagAttachmentsRequest.JSON_PROPERTY_TAG_IDS,
+ VaultAccountsTagAttachmentsRequest.JSON_PROPERTY_VAULT_ACCOUNT_IDS
+})
+@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen")
+public class VaultAccountsTagAttachmentsRequest {
+ public static final String JSON_PROPERTY_TAG_IDS = "tagIds";
+ private List tagIds = new ArrayList<>();
+
+ public static final String JSON_PROPERTY_VAULT_ACCOUNT_IDS = "vaultAccountIds";
+ private List vaultAccountIds = new ArrayList<>();
+
+ public VaultAccountsTagAttachmentsRequest() {}
+
+ public VaultAccountsTagAttachmentsRequest tagIds(List tagIds) {
+ this.tagIds = tagIds;
+ return this;
+ }
+
+ public VaultAccountsTagAttachmentsRequest addTagIdsItem(UUID tagIdsItem) {
+ if (this.tagIds == null) {
+ this.tagIds = new ArrayList<>();
+ }
+ this.tagIds.add(tagIdsItem);
+ return this;
+ }
+
+ /**
+ * The IDs of the tags to attach
+ *
+ * @return tagIds
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_TAG_IDS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getTagIds() {
+ return tagIds;
+ }
+
+ @JsonProperty(JSON_PROPERTY_TAG_IDS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setTagIds(List tagIds) {
+ this.tagIds = tagIds;
+ }
+
+ public VaultAccountsTagAttachmentsRequest vaultAccountIds(List vaultAccountIds) {
+ this.vaultAccountIds = vaultAccountIds;
+ return this;
+ }
+
+ public VaultAccountsTagAttachmentsRequest addVaultAccountIdsItem(String vaultAccountIdsItem) {
+ if (this.vaultAccountIds == null) {
+ this.vaultAccountIds = new ArrayList<>();
+ }
+ this.vaultAccountIds.add(vaultAccountIdsItem);
+ return this;
+ }
+
+ /**
+ * The IDs of the vault accounts to attach tags to
+ *
+ * @return vaultAccountIds
+ */
+ @jakarta.annotation.Nonnull
+ @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_IDS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public List getVaultAccountIds() {
+ return vaultAccountIds;
+ }
+
+ @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_IDS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public void setVaultAccountIds(List vaultAccountIds) {
+ this.vaultAccountIds = vaultAccountIds;
+ }
+
+ /** Return true if this VaultAccountsTagAttachmentsRequest object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ VaultAccountsTagAttachmentsRequest vaultAccountsTagAttachmentsRequest =
+ (VaultAccountsTagAttachmentsRequest) o;
+ return Objects.equals(this.tagIds, vaultAccountsTagAttachmentsRequest.tagIds)
+ && Objects.equals(
+ this.vaultAccountIds, vaultAccountsTagAttachmentsRequest.vaultAccountIds);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(tagIds, vaultAccountIds);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class VaultAccountsTagAttachmentsRequest {\n");
+ sb.append(" tagIds: ").append(toIndentedString(tagIds)).append("\n");
+ sb.append(" vaultAccountIds: ").append(toIndentedString(vaultAccountIds)).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 ");
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @return URL query string
+ */
+ public String toUrlQueryString() {
+ return toUrlQueryString(null);
+ }
+
+ /**
+ * Convert the instance into URL query string.
+ *
+ * @param prefix prefix of the query string
+ * @return URL query string
+ */
+ public String toUrlQueryString(String prefix) {
+ String suffix = "";
+ String containerSuffix = "";
+ String containerPrefix = "";
+ if (prefix == null) {
+ // style=form, explode=true, e.g. /pet?name=cat&type=manx
+ prefix = "";
+ } else {
+ // deepObject style e.g. /pet?id[name]=cat&id[type]=manx
+ prefix = prefix + "[";
+ suffix = "]";
+ containerSuffix = "]";
+ containerPrefix = "[";
+ }
+
+ StringJoiner joiner = new StringJoiner("&");
+
+ // add `tagIds` to the URL query string
+ if (getTagIds() != null) {
+ for (int i = 0; i < getTagIds().size(); i++) {
+ if (getTagIds().get(i) != null) {
+ joiner.add(
+ String.format(
+ "%stagIds%s%s=%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s", containerPrefix, i, containerSuffix),
+ URLEncoder.encode(
+ String.valueOf(getTagIds().get(i)),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+ }
+ }
+
+ // add `vaultAccountIds` to the URL query string
+ if (getVaultAccountIds() != null) {
+ for (int i = 0; i < getVaultAccountIds().size(); i++) {
+ joiner.add(
+ String.format(
+ "%svaultAccountIds%s%s=%s",
+ prefix,
+ suffix,
+ "".equals(suffix)
+ ? ""
+ : String.format(
+ "%s%d%s", containerPrefix, i, containerSuffix),
+ URLEncoder.encode(
+ String.valueOf(getVaultAccountIds().get(i)),
+ StandardCharsets.UTF_8)
+ .replaceAll("\\+", "%20")));
+ }
+ }
+
+ return joiner.toString();
+ }
+}
diff --git a/src/test/java/com/fireblocks/sdk/FireblocksTest.java b/src/test/java/com/fireblocks/sdk/FireblocksTest.java
index c33dee55..d3aec3a3 100644
--- a/src/test/java/com/fireblocks/sdk/FireblocksTest.java
+++ b/src/test/java/com/fireblocks/sdk/FireblocksTest.java
@@ -605,6 +605,14 @@ public void testGetSwapBetaApi() {
Assert.assertSame(swapBeta, fireblocks.swapBeta());
}
+ @Test
+ public void testGetTagsApi() {
+ setupFireblocks(true, null, null);
+ TagsApi tags = fireblocks.tags();
+ Assert.assertNotNull(tags);
+ Assert.assertSame(tags, fireblocks.tags());
+ }
+
@Test
public void testGetTokenizationApi() {
setupFireblocks(true, null, null);
diff --git a/src/test/java/com/fireblocks/sdk/api/BlockchainsAssetsApiTest.java b/src/test/java/com/fireblocks/sdk/api/BlockchainsAssetsApiTest.java
index 013b977b..479cbd0f 100644
--- a/src/test/java/com/fireblocks/sdk/api/BlockchainsAssetsApiTest.java
+++ b/src/test/java/com/fireblocks/sdk/api/BlockchainsAssetsApiTest.java
@@ -26,6 +26,7 @@
import com.fireblocks.sdk.model.ListBlockchainsResponse;
import com.fireblocks.sdk.model.RegisterNewAssetRequest;
import com.fireblocks.sdk.model.SetAssetPriceRequest;
+import com.fireblocks.sdk.model.UpdateAssetUserMetadataRequest;
import java.math.BigDecimal;
import java.util.List;
import java.util.concurrent.CompletableFuture;
@@ -169,4 +170,21 @@ public void setAssetPriceTest() throws ApiException {
CompletableFuture