> getSchemas() {
+ return UpdateFindingExternalRequest.schemas;
+ }
+
+ /**
+ * Set the instance that matches the oneOf child schema, check the instance parameter is valid
+ * against the oneOf child schemas: AcceptFindingRequest, ReopenFindingRequest
+ *
+ * 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(AcceptFindingRequest.class, instance, new HashSet>())) {
+ super.setActualInstance(instance);
+ return;
+ }
+
+ if (JSON.isInstanceOf(ReopenFindingRequest.class, instance, new HashSet>())) {
+ super.setActualInstance(instance);
+ return;
+ }
+
+ throw new RuntimeException(
+ "Invalid instance type. Must be AcceptFindingRequest, ReopenFindingRequest");
+ }
+
+ /**
+ * Get the actual instance, which can be the following: AcceptFindingRequest,
+ * ReopenFindingRequest
+ *
+ * @return The actual instance (AcceptFindingRequest, ReopenFindingRequest)
+ */
+ @Override
+ public Object getActualInstance() {
+ return super.getActualInstance();
+ }
+
+ /**
+ * Get the actual instance of `AcceptFindingRequest`. If the actual instance is not
+ * `AcceptFindingRequest`, the ClassCastException will be thrown.
+ *
+ * @return The actual instance of `AcceptFindingRequest`
+ * @throws ClassCastException if the instance is not `AcceptFindingRequest`
+ */
+ public AcceptFindingRequest getAcceptFindingRequest() throws ClassCastException {
+ return (AcceptFindingRequest) super.getActualInstance();
+ }
+
+ /**
+ * Get the actual instance of `ReopenFindingRequest`. If the actual instance is not
+ * `ReopenFindingRequest`, the ClassCastException will be thrown.
+ *
+ * @return The actual instance of `ReopenFindingRequest`
+ * @throws ClassCastException if the instance is not `ReopenFindingRequest`
+ */
+ public ReopenFindingRequest getReopenFindingRequest() throws ClassCastException {
+ return (ReopenFindingRequest) 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 AcceptFindingRequest) {
+ if (getActualInstance() != null) {
+ joiner.add(
+ ((AcceptFindingRequest) getActualInstance())
+ .toUrlQueryString(prefix + "one_of_0" + suffix));
+ }
+ return joiner.toString();
+ }
+ if (getActualInstance() instanceof ReopenFindingRequest) {
+ if (getActualInstance() != null) {
+ joiner.add(
+ ((ReopenFindingRequest) getActualInstance())
+ .toUrlQueryString(prefix + "one_of_1" + suffix));
+ }
+ return joiner.toString();
+ }
+ return null;
+ }
+}
diff --git a/src/test/java/com/fireblocks/sdk/api/SecurityPostureManagementApiTest.java b/src/test/java/com/fireblocks/sdk/api/SecurityPostureManagementApiTest.java
index 7d3d6ca2..d75d0404 100644
--- a/src/test/java/com/fireblocks/sdk/api/SecurityPostureManagementApiTest.java
+++ b/src/test/java/com/fireblocks/sdk/api/SecurityPostureManagementApiTest.java
@@ -15,6 +15,9 @@
import com.fireblocks.sdk.ApiResponse;
import com.fireblocks.sdk.model.GetFindingsExternalResponse;
+import com.fireblocks.sdk.model.SecurityFindingDetailed;
+import com.fireblocks.sdk.model.UpdateFindingExternalRequest;
+import java.util.UUID;
import java.util.concurrent.CompletableFuture;
import org.junit.Ignore;
import org.junit.Test;
@@ -25,11 +28,24 @@ public class SecurityPostureManagementApiTest {
private final SecurityPostureManagementApi api = new SecurityPostureManagementApi();
+ /**
+ * Get a FSPM security finding by ID
+ *
+ * Returns a single FSPM security finding for the workspace, redacted to the public field
+ * set. Endpoint Roles: Security Admin, Security Auditor.
+ */
+ @Test
+ public void getSecurityFindingByIdTest() {
+ UUID id = null;
+ CompletableFuture> response =
+ api.getSecurityFindingById(id);
+ }
+
/**
* Get FSPM security findings
*
- * Returns a paginated list of FSPM security findings for the workspace. Endpoint
- * Permissions: Security Admin, Security Auditor.
+ *
Returns a paginated list of FSPM security findings for the workspace. Endpoint Roles:
+ * Security Admin, Security Auditor.
*/
@Test
public void getSecurityFindingsTest() {
@@ -41,4 +57,20 @@ public void getSecurityFindingsTest() {
CompletableFuture> response =
api.getSecurityFindings(pageCursor, pageSize, severity, category, status);
}
+
+ /**
+ * Update a FSPM security finding by ID
+ *
+ * Accepts or reopens a finding for the workspace. When accepting a finding (`status:
+ * \"ACCEPTED\"`), `statusUpdatedReason` is required. Endpoint Roles:
+ * Security Admin.
+ */
+ @Test
+ public void updateSecurityFindingByIdTest() {
+ UpdateFindingExternalRequest updateFindingExternalRequest = null;
+ UUID id = null;
+ String idempotencyKey = null;
+ CompletableFuture> response =
+ api.updateSecurityFindingById(updateFindingExternalRequest, id, idempotencyKey);
+ }
}
diff --git a/src/test/java/com/fireblocks/sdk/model/AcceptFindingRequestTest.java b/src/test/java/com/fireblocks/sdk/model/AcceptFindingRequestTest.java
new file mode 100644
index 00000000..cc65b7f4
--- /dev/null
+++ b/src/test/java/com/fireblocks/sdk/model/AcceptFindingRequestTest.java
@@ -0,0 +1,39 @@
+/*
+ * Fireblocks API
+ * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: developers@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 org.junit.jupiter.api.Test;
+
+/** Model tests for AcceptFindingRequest */
+class AcceptFindingRequestTest {
+ private final AcceptFindingRequest model = new AcceptFindingRequest();
+
+ /** Model tests for AcceptFindingRequest */
+ @Test
+ void testAcceptFindingRequest() {
+ // TODO: test AcceptFindingRequest
+ }
+
+ /** Test the property 'status' */
+ @Test
+ void statusTest() {
+ // TODO: test status
+ }
+
+ /** Test the property 'statusUpdatedReason' */
+ @Test
+ void statusUpdatedReasonTest() {
+ // TODO: test statusUpdatedReason
+ }
+}
diff --git a/src/test/java/com/fireblocks/sdk/model/ComplianceRequirementTest.java b/src/test/java/com/fireblocks/sdk/model/ComplianceRequirementTest.java
new file mode 100644
index 00000000..de7a4816
--- /dev/null
+++ b/src/test/java/com/fireblocks/sdk/model/ComplianceRequirementTest.java
@@ -0,0 +1,51 @@
+/*
+ * Fireblocks API
+ * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: developers@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 org.junit.jupiter.api.Test;
+
+/** Model tests for ComplianceRequirement */
+class ComplianceRequirementTest {
+ private final ComplianceRequirement model = new ComplianceRequirement();
+
+ /** Model tests for ComplianceRequirement */
+ @Test
+ void testComplianceRequirement() {
+ // TODO: test ComplianceRequirement
+ }
+
+ /** Test the property 'id' */
+ @Test
+ void idTest() {
+ // TODO: test id
+ }
+
+ /** Test the property 'standard' */
+ @Test
+ void standardTest() {
+ // TODO: test standard
+ }
+
+ /** Test the property 'criteria' */
+ @Test
+ void criteriaTest() {
+ // TODO: test criteria
+ }
+
+ /** Test the property 'description' */
+ @Test
+ void descriptionTest() {
+ // TODO: test description
+ }
+}
diff --git a/src/test/java/com/fireblocks/sdk/model/ReopenFindingRequestTest.java b/src/test/java/com/fireblocks/sdk/model/ReopenFindingRequestTest.java
new file mode 100644
index 00000000..c5b88cf1
--- /dev/null
+++ b/src/test/java/com/fireblocks/sdk/model/ReopenFindingRequestTest.java
@@ -0,0 +1,39 @@
+/*
+ * Fireblocks API
+ * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: developers@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 org.junit.jupiter.api.Test;
+
+/** Model tests for ReopenFindingRequest */
+class ReopenFindingRequestTest {
+ private final ReopenFindingRequest model = new ReopenFindingRequest();
+
+ /** Model tests for ReopenFindingRequest */
+ @Test
+ void testReopenFindingRequest() {
+ // TODO: test ReopenFindingRequest
+ }
+
+ /** Test the property 'status' */
+ @Test
+ void statusTest() {
+ // TODO: test status
+ }
+
+ /** Test the property 'statusUpdatedReason' */
+ @Test
+ void statusUpdatedReasonTest() {
+ // TODO: test statusUpdatedReason
+ }
+}
diff --git a/src/test/java/com/fireblocks/sdk/model/SecurityFindingDetailedTest.java b/src/test/java/com/fireblocks/sdk/model/SecurityFindingDetailedTest.java
new file mode 100644
index 00000000..36ea122c
--- /dev/null
+++ b/src/test/java/com/fireblocks/sdk/model/SecurityFindingDetailedTest.java
@@ -0,0 +1,111 @@
+/*
+ * Fireblocks API
+ * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: developers@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 org.junit.jupiter.api.Test;
+
+/** Model tests for SecurityFindingDetailed */
+class SecurityFindingDetailedTest {
+ private final SecurityFindingDetailed model = new SecurityFindingDetailed();
+
+ /** Model tests for SecurityFindingDetailed */
+ @Test
+ void testSecurityFindingDetailed() {
+ // TODO: test SecurityFindingDetailed
+ }
+
+ /** Test the property 'id' */
+ @Test
+ void idTest() {
+ // TODO: test id
+ }
+
+ /** Test the property 'type' */
+ @Test
+ void typeTest() {
+ // TODO: test type
+ }
+
+ /** Test the property 'status' */
+ @Test
+ void statusTest() {
+ // TODO: test status
+ }
+
+ /** Test the property 'severity' */
+ @Test
+ void severityTest() {
+ // TODO: test severity
+ }
+
+ /** Test the property 'category' */
+ @Test
+ void categoryTest() {
+ // TODO: test category
+ }
+
+ /** Test the property 'createdAt' */
+ @Test
+ void createdAtTest() {
+ // TODO: test createdAt
+ }
+
+ /** Test the property 'title' */
+ @Test
+ void titleTest() {
+ // TODO: test title
+ }
+
+ /** Test the property 'statusUpdatedAt' */
+ @Test
+ void statusUpdatedAtTest() {
+ // TODO: test statusUpdatedAt
+ }
+
+ /** Test the property 'statusUpdatedByUserId' */
+ @Test
+ void statusUpdatedByUserIdTest() {
+ // TODO: test statusUpdatedByUserId
+ }
+
+ /** Test the property 'statusUpdatedReason' */
+ @Test
+ void statusUpdatedReasonTest() {
+ // TODO: test statusUpdatedReason
+ }
+
+ /** Test the property 'info' */
+ @Test
+ void infoTest() {
+ // TODO: test info
+ }
+
+ /** Test the property 'complianceReqs' */
+ @Test
+ void complianceReqsTest() {
+ // TODO: test complianceReqs
+ }
+
+ /** Test the property 'riskExplanation' */
+ @Test
+ void riskExplanationTest() {
+ // TODO: test riskExplanation
+ }
+
+ /** Test the property 'mitigationGuidance' */
+ @Test
+ void mitigationGuidanceTest() {
+ // TODO: test mitigationGuidance
+ }
+}
diff --git a/src/test/java/com/fireblocks/sdk/model/UpdateFindingExternalRequestTest.java b/src/test/java/com/fireblocks/sdk/model/UpdateFindingExternalRequestTest.java
new file mode 100644
index 00000000..ff2b5bf8
--- /dev/null
+++ b/src/test/java/com/fireblocks/sdk/model/UpdateFindingExternalRequestTest.java
@@ -0,0 +1,39 @@
+/*
+ * Fireblocks API
+ * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)
+ *
+ * The version of the OpenAPI document: 1.6.2
+ * Contact: developers@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 org.junit.jupiter.api.Test;
+
+/** Model tests for UpdateFindingExternalRequest */
+class UpdateFindingExternalRequestTest {
+ private final UpdateFindingExternalRequest model = new UpdateFindingExternalRequest();
+
+ /** Model tests for UpdateFindingExternalRequest */
+ @Test
+ void testUpdateFindingExternalRequest() {
+ // TODO: test UpdateFindingExternalRequest
+ }
+
+ /** Test the property 'status' */
+ @Test
+ void statusTest() {
+ // TODO: test status
+ }
+
+ /** Test the property 'statusUpdatedReason' */
+ @Test
+ void statusUpdatedReasonTest() {
+ // TODO: test statusUpdatedReason
+ }
+}