IBM Cloud API Docs

Introduction

As of 17 July 2025, you cannot create new instances in this version of this product. All of the functionality is now available in the updated experience of Security and Compliance Center Workload Protection. For more information, see the transition documentation.

With IBM Cloud® Security and Compliance Center, you can embed security checks into your everyday workflows to continuously monitor for security vulnerabilities across multiple cloud environments. You can manage your current account settings such as the location in which the data that is generated by the service is stored and processed.

For highly regulated industries, such as financial services, achieving continuous compliance within a cloud environment is an important first step toward protecting customer and application data. Historically, that process was difficult and manual, which placed your organization at risk. But, with Security and Compliance Center, you can integrate daily, automatic compliance checks into your development lifecycle to help minimize that risk.

Before you get started with this API, you must first complete the initial set up. For help, see Getting started with Security and Compliance Center.

An SDK for Go is available to make it easier to programmatically access the API from your code. The client libraries that are provided by the SDKs implement best practices for using the API and reduce the amount of code that you need to write. The tab for each language includes code examples that demonstrate how to use the client libraries. For more information about using the SDKs, see the IBM Cloud SDK Common project on GitHub.

Installing the Go SDK

Go modules (recommended): Add the following import in your code, and then run go build or go mod tidy.

import (
	"github.com/IBM/scc-go-sdk/v5/securityandcompliancecenterapiv3"
)

Go get

go get -u github.com/IBM/scc-go-sdk/v5/securityandcompliancecenterapiv3

View on GitHub

Installing the Python SDK

pip install --upgrade "ibm-scc"

View on GitHub:

Installing the Java SDK

Maven
<dependency>
    <groupId>com.ibm.cloud</groupId>
    <artifactId>security-and-compliance-center-sdk</artifactId>
    <version>${version}</version>
</dependency>

Gradle
compile 'com.ibm.cloud:security-and-compliance-center-sdk:${version}'

Replace {version} in these examples with the release version.

View on GitHub

Installing the Node SDK

npm install --save ibm-scc

View on GitHub:

Endpoint URLs

Security and Compliance Center supports location-specific endpoint URLs that you can use to interact with the service over the public internet. A location represents the geographic area where your requests are handled and processed. When you call this API, be sure to use the endpoint URL that corresponds with the location settings that are configured in the Security and Compliance Center.

For more information about viewing and managing your location settings, check out the docs.

Endpoint URLs by region

  • Americas:
    • United States
      • Dallas: https://us-south.compliance.cloud.ibm.com/instances/{instance_id}/v3
    • Canada:
      • Toronto: https://ca-tor.compliance.cloud.ibm.com/instances/{instance_id}/v3
  • European Union:
    • Frankfurt: https://eu-de.compliance.cloud.ibm.com/instances/{instance_id}/v3

To find your instance ID, you can look in the settings page of the Security and Compliance UI or in your resource list.

Base URL

https://{region}.compliance.cloud.ibm.com/instances/{instance_id}/v3

Example for the us-south region

import (
    "encoding/json"
    "fmt"
    "github.com/IBM/go-sdk-core/v5/core"
    scc "github.com/IBM/scc-go-sdk/securityandcompliancecenterapiv3"
)

func main() {

    securityAndComplianceCenterService, err := scc.NewSecurityAndComplianceCenterApiV3(&scc.SecurityAndComplianceCenterApiV3Options {
        URL: "https://us-south.compliance.cloud.ibm.com/instances/{instance_id}/v3",
        Authenticator: & core.IamAuthenticator {
            ApiKey: "<IAM_API_KEY>",
        },
    })

    if err != nil {
        panic(err)
    }
}

Example for the us-south region

from ibm_scc.security_and_compliance_center_api_v3 import SecurityAndComplianceCenterApiV3
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator

authenticator = IAMAuthenticator('<IAM_API_KEY>')

service = SecurityAndComplianceCenterApiV3(authenticator=authenticator)

service.set_service_url('https://us-south.compliance.cloud.ibm.com/instances/{instance_id}/v3')

Example for the us-south region

import com.ibm.cloud.security_and_compliance_center_api.v3.SecurityAndComplianceCenterApi;
import com.ibm.cloud.security_and_compliance_center_api.v3.model.*;
import com.ibm.cloud.sdk.core.http.Response;
import com.ibm.cloud.sdk.core.security.IamAuthenticator;

import java.util.Collections;
...

// Create an IAM authenticator
IamAuthenticator iamAuthenticator = new IamAuthenticator.Builder()
        .apikey("<API_KEY>")
        .build();

// Construct the service client
SecurityAndComplianceCenterApi securityAndComplianceCenterService = new SecurityAndComplianceCenterApi("My Security And Compliance Center Service", iamAuthenticator);

// Set the service URL
securityAndComplianceCenterService.setServiceUrl("https://us-south.cloud.ibm.com/instances/{instance_id}/v3");

Example for the us-south region

const { SecurityAndComplianceCenterApiV3 } = require('ibm-scc@4.0.0');
const { IamAuthenticator } = require('ibm-cloud-sdk-core');

const authenticator = new IamAuthenticator({
    apikey: '{apikey}'
});

const securityAndComplianceCenterService = new SecurityAndComplianceCenterApiV3({
    authenticator: authenticator
});

securityAndComplianceCenterService.setServiceUrl('{https://us-south.compliance.cloud.ibm.com/instances/{instance_id}/v3}');

Authentication

Authorization to the Security and Compliance Center API is enforced by using an IBM Cloud Identity and Access Management (IAM) access token. The token is used to determine the actions that a user or service ID has access to when they use the API.

To work with the API, include a valid IAM token in each outgoing request to the service. You can generate an access token by first creating an API key and then exchanging your API key for an IBM Cloud IAM token.

Don't have an API key? Try running ibmcloud iam oauth-tokens in the IBM Cloud Shell to quickly generate a personal access token.

To generate an access token from your API key, use the following cURL command.

curl -X POST \
  "https://iam.cloud.ibm.com/identity/token" \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --header 'Accept: application/json' \
  --data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' \
  --data-urlencode 'apikey=<API_KEY>'

Replace <API_KEY> with your IBM Cloud API key.

When you use the SDK, configure an IAM authenticator with an IBM Cloud IAM API key. The authenticator automatically obtains the IAM access token for the API key and includes it with each request. You can configure an authenticator in either of two ways:

  • Programmatically by constructing an IAM authenticator instance and supplying your IAM API key
  • By defining the API key in external configuration properties and then using the SDK authenticator factory to construct an IAM authenticator that uses the configured IAM API key

For more information, see the Authentication section of the IBM Cloud SDK Common documentation.

Example API request

curl -X {request_method} "https://{region}.compliance.cloud.ibm.com/instances/{instance_id}/v3/{method_endpoint}" --header "Authorization: Bearer {IAM_token}"

Replace {IAM_token} with your access token.

Authentication example

import (
    "encoding/json"
    "fmt"
    "github.com/IBM/go-sdk-core/v5/core"
    scc "github.com/IBM/scc-go-sdk/securityandcompliancecenterapiv3"
)

func main() {

    securityAndComplianceCenterService, err := scc.NewSecurityAndComplianceCenterApiV3(&scc.SecurityAndComplianceCenterApiV3Options {
        URL: "https://{region}.compliance.cloud.ibm.com/instances/{instance_id}/v3",
        Authenticator: & core.IamAuthenticator {
            ApiKey: "<IAM_API_KEY>",
        },
    })

    if err != nil {
        panic(err)
    }
}

Authentication example

from ibm_scc.security_and_compliance_center_api_v3 import SecurityAndComplianceCenterApiV3
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator

authenticator = IAMAuthenticator('<IAM_API_KEY>')

service = SecurityAndComplianceCenterApiV3(authenticator=authenticator)

service.set_service_url('https://us-south.compliance.cloud.ibm.com/instances/{instance_id}/v3')

Authentication example

import com.ibm.cloud.security_and_compliance_center_api.v3.SecurityAndComplianceCenterApi;
import com.ibm.cloud.security_and_compliance_center_api.v3.model.*;
import com.ibm.cloud.sdk.core.http.Response;
import com.ibm.cloud.sdk.core.security.IamAuthenticator;

import java.util.Collections;
...

// Create an IAM authenticator
IamAuthenticator iamAuthenticator = new IamAuthenticator.Builder()
        .apikey("<API_KEY>")
        .build();

// Construct the service client
SecurityAndComplianceCenterApi securityAndComplianceCenterService = new SecurityAndComplianceCenterApi("My Security And Compliance Center Service", iamAuthenticator);

// Set the service URL
securityAndComplianceCenterService.setServiceUrl("https://{region}.cloud.ibm.com/instances/{instance_id}/v3");

Authentication example

const { SecurityAndComplianceCenterApiV3 } = require('ibm-scc@4.0.0');
const { IamAuthenticator } = require('ibm-cloud-sdk-core');

const authenticator = new IamAuthenticator({
    apikey: '{apikey}'
});

const securityAndComplianceCenterService = new SecurityAndComplianceCenterApiV3({
    authenticator: authenticator
});

securityAndComplianceCenterService.setServiceUrl('{url}');

Auditing

You can monitor API activity within your account by using the IBM Cloud Activity Tracker service. Whenever an API method is called, an event is generated that you can then track and audit from within Activity Tracker.

For more information about how to track activity, see Auditing events for Security and Compliance Center.

Error handling

The Security and Compliance Center API use standard HTTP status codes to indicate whether a method was completed successfully. HTTP response codes in the 2xx range indicate success. A response in the 4xx range is a failure, and a response in the 5xx range usually indicates an internal system error.

Status code summary
Status code Description
200 OK Everything worked as expected.
300 Multiple Choices The request has more than one possible responses.
400 Bad Request The request was unsuccessful, often due to a missing required parameter.
401 Unauthorized The parameters were valid but the request failed due to insufficient permissions.
402 Payment Required Your Trial plan is now expired.
403 Forbidden You are not allowed to access this resource.
404 Not Found The requested resource doesn't exist.
409 Conflict The requested resource conflicts with an existing resource.
410 Gone The requested resource was deleted and no longer exists.
429 Too Many Requests Too many requests were sent to the API too quickly.
500 Internal Server Error Something went wrong on Security and Compliance Center's end.

Example error handling

import (
    scc "github.com/IBM/scc-go-sdk/securityandcompliancecenterapiv3"
)

// Instantiate a service
securityAndComplianceCenterService, err := scc.NewSecurityAndComplianceCenterApiV3(options)

// Check for errors
if err != nil {
  panic(err)
}

// Call a method
result, response, err := securityAndComplianceCenterService.MethodName(&methodOptions)

// Check for errors
if err != nil {
  panic(err)
}

Example error handling

from ibm_scc.security_and_compliance_center_api_v3 import SecurityAndComplianceCenterApiV3
from ibm_cloud_sdk_core import ApiException

# Instantiate a service
try:
securityAndComplianceCenterService = SecurityAndComplianceCenterApiV3(authenticator)
except Exception as err:
    raise err

# Call a method
try:
    response = securityAndComplianceCenterService.getmethod(params)
except ApiException as err:
    raise err

Example error handling

import com.ibm.cloud.security_and_compliance_center_api.v3.SecurityAndComplianceCenterApi;

// Instantiate a service
try {
    SecurityAndComplianceCenterApi securityAndComplianceCenterApiService = SecurityAndComplianceCenterApi.newInstance();
}
// Check for errors 
catch (Exception e) {
    logger.error(String.format("Service returned status code %s: %s%nError details: %s",
        e.getStatusCode(), e.getMessage(), e.getDebuggingInfo()), e);
}
// Call a method
try {
    response = securityAndComplianceCenterApiService.getMethod(methodOptions);
}
// Check for errors 
catch (Exception e) {
    logger.error(String.format("Service returned status code %s: %s%nError details: %s",
        e.getStatusCode(), e.getMessage(), e.getDebuggingInfo()), e);
}

Example error handling

securityAndComplianceCenterService.method(params)
  .catch(err => {
    console.log('Error:', err);
  });

Pagination

Some API requests might return a large number of results. To avoid performance issues, the APIs return one page of results at a time, with a limited number of results on each page.

The default page size is 100 objects. To use a different page size, use the limit query parameter.

For any request that uses pagination, the response includes URLs you can use to make subsequent requests:

  • first.href: The URL for requesting the first page of results.
  • last.href: The URL for requesting the last page of results.
  • next: The URL for requesting the next page of results.

You can also use start as a bookmark.

Methods

Get access level for an instance

Retrieve access information about the caller for the specified instance.

GET /instances/{instance_id}/v3/access

Request

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Response

The caller's level of access for the specified home instance.

Status Code

  • The access information was successfully retrieved.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

Example responses
  • {
      "roles": {
        "view": [
          "dashboard",
          "events"
        ],
        "read": [
          "attachments",
          "collectors",
          "control-libraries"
        ],
        "create": [
          "attachments",
          "collectors",
          "control-libraries"
        ],
        "update": [
          "attachments",
          "collectors",
          "control-libraries"
        ],
        "delete": [
          "attachments",
          "collectors",
          "control-libraries"
        ]
      }
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }

List settings

Retrieve the settings of your service instance.

Retrieve the settings of your service instance.

Retrieve the settings of your service instance.

Retrieve the settings of your service instance.

Retrieve the settings of your service instance.

GET /instances/{instance_id}/v3/settings
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetSettings(getSettingsOptions *GetSettingsOptions) (result *Settings, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetSettingsWithContext(ctx context.Context, getSettingsOptions *GetSettingsOptions) (result *Settings, response *core.DetailedResponse, err error)
getSettings(params)
get(
        self,
        instance_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Settings> getSettings(GetSettingsOptions getSettingsOptions)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

  • compliance.admin.settings-read

Auditing

Calling this method generates the following auditing event.

  • compliance.admin-settings.read

Request

Instantiate the GetSettingsOptions struct and set the fields to provide parameter values for the GetSettings method.

Use the GetSettingsOptions.Builder to create a GetSettingsOptions object that contains the parameter values for the getSettings method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

WithContext method only

The GetSettings options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:

The getSettings options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/settings"
  • getSettingsOptions := securityAndComplianceCenterService.NewGetSettingsOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    settings, response, err := securityAndComplianceCenterService.GetSettings(getSettingsOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(settings, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getSettings(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_settings(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    settings = response.get_result()
    
    print(json.dumps(settings, indent=2))
  • GetSettingsOptions getSettingsOptions = new GetSettingsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<Settings> response = securityAndComplianceCenterService.getSettings(getSettingsOptions).execute();
    Settings settings = response.getResult();
    
    System.out.println(settings);

Response

The settings.

The settings.

The settings.

The settings.

The settings.

Status Code

  • The settings were successfully retrieved.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

Example responses
  • {
      "event_notifications": {
        "instance_crn": "crn:v1:public:event-notifications:us-south:a/2411ffdc16844b07a42521c3443f456d:14c58404-b332-4178-86de-83141a7f93af::",
        "updated_on": "2023-04-19T17:39:44.668119908Z",
        "source_id": "crn:v1:bluemix:public:compliance:global:a/2411ffdc16844b07a42521c3443f456d:::"
      },
      "object_storage": {
        "instance_crn": "crn:v1:public:cloud-object-storage:global:a/2411ffdc16844b07a42521c3443f456d:ecca7d23-77d0-4a9b-8a24-3b761c63a460::",
        "bucket": "scc-bucket",
        "bucket_location": "us-south",
        "bucket_endpoint": "s3.us.private.cloud-object-storage.test.appdomain.cloud",
        "updated_on": "2023-03-01T22:00:05.917430784Z"
      }
    }
  • {
      "event_notifications": {
        "instance_crn": "crn:v1:public:event-notifications:us-south:a/2411ffdc16844b07a42521c3443f456d:14c58404-b332-4178-86de-83141a7f93af::",
        "updated_on": "2023-04-19T17:39:44.668119908Z",
        "source_id": "crn:v1:bluemix:public:compliance:global:a/2411ffdc16844b07a42521c3443f456d:::"
      },
      "object_storage": {
        "instance_crn": "crn:v1:public:cloud-object-storage:global:a/2411ffdc16844b07a42521c3443f456d:ecca7d23-77d0-4a9b-8a24-3b761c63a460::",
        "bucket": "scc-bucket",
        "bucket_location": "us-south",
        "bucket_endpoint": "s3.us.private.cloud-object-storage.test.appdomain.cloud",
        "updated_on": "2023-03-01T22:00:05.917430784Z"
      }
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }

Update settings

Update the settings of your service instance.

Update the settings of your service instance.

Update the settings of your service instance.

Update the settings of your service instance.

Update the settings of your service instance.

PATCH /instances/{instance_id}/v3/settings
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpdateSettings(updateSettingsOptions *UpdateSettingsOptions) (result *Settings, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpdateSettingsWithContext(ctx context.Context, updateSettingsOptions *UpdateSettingsOptions) (result *Settings, response *core.DetailedResponse, err error)
updateSettings(params)
update(
        self,
        instance_id: str,
        *,
        object_storage: Optional['ObjectStoragePrototype'] = None,
        event_notifications: Optional['EventNotificationsPrototype'] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Settings> updateSettings(UpdateSettingsOptions updateSettingsOptions)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

  • compliance.admin.settings-update

Auditing

Calling this method generates the following auditing event.

  • compliance.admin-settings.update

Request

Instantiate the UpdateSettingsOptions struct and set the fields to provide parameter values for the UpdateSettings method.

Use the UpdateSettingsOptions.Builder to create a UpdateSettingsOptions object that contains the parameter values for the updateSettings method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

The request body to update your settings.

Examples:
{
  "event_notifications": {
    "instance_crn": "crn:v1:staging:public:event-notifications:us-south:a/ff88f007f9ff4622aac4fbc0eda36255:b8b07245-0bbe-4478-b11c-0dce523105fd::",
    "source_name": "scc-sdk-integration",
    "source_description": "This source is used for integration with IBM Cloud Security and Compliance Center."
  },
  "object_storage": {
    "instance_crn": "crn:v1:staging:public:cloud-object-storage:global:a/ff88f007f9ff4622aac4fbc0eda36255:7199ae60-a214-4dd8-9bf7-ce571de49d01::",
    "bucket": "px-scan-results"
  }
}

WithContext method only

The UpdateSettings options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The payload to connect a Cloud Object Storage instance to an Security and Compliance Center instance.

  • The payload to connect an Event Notification instance with a Security and Compliance Center instance.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The payload to connect a Cloud Object Storage instance to an Security and Compliance Center instance.

  • The payload to connect an Event Notification instance with a Security and Compliance Center instance.

The updateSettings options.

  • curl -X PATCH --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "event_notifications": { "instance_crn": "crn:v1:staging:public:event-notifications:us-south:a/ff88f007f9ff4622aac4fbc0eda36255:b8b07245-0bbe-4478-b11c-0dce523105fd::", "source_name": "scc-sdk-integration", "source_description": "This source is used for integration with IBM Cloud Security and Compliance Center." }, "object_storage": { "instance_crn": "crn:v1:staging:public:cloud-object-storage:global:a/ff88f007f9ff4622aac4fbc0eda36255:7199ae60-a214-4dd8-9bf7-ce571de49d01::", "bucket": "px-scan-results" } }'   "${base_url}/instances/${instance_id}/v3/settings"
  • objectStoragePrototypeModel := &securityandcompliancecenterv3.ObjectStoragePrototype{
      Bucket: core.StringPtr("px-scan-results"),
      InstanceCRN: core.StringPtr("crn:v1:staging:public:cloud-object-storage:global:a/ff88f007f9ff4622aac4fbc0eda36255:7199ae60-a214-4dd8-9bf7-ce571de49d01::"),
    }
    
    eventNotificationsPrototypeModel := &securityandcompliancecenterv3.EventNotificationsPrototype{
      InstanceCRN: core.StringPtr("crn:v1:staging:public:event-notifications:us-south:a/ff88f007f9ff4622aac4fbc0eda36255:b8b07245-0bbe-4478-b11c-0dce523105fd::"),
      SourceDescription: core.StringPtr("This source is used for integration with IBM Cloud Security and Compliance Center."),
      SourceName: core.StringPtr("scc-sdk-integration"),
    }
    
    updateSettingsOptions := securityAndComplianceCenterService.NewUpdateSettingsOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    updateSettingsOptions.SetObjectStorage(objectStoragePrototypeModel)
    updateSettingsOptions.SetEventNotifications(eventNotificationsPrototypeModel)
    
    settings, response, err := securityAndComplianceCenterService.UpdateSettings(updateSettingsOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(settings, "", "  ")
    fmt.Println(string(b))
  • // Request models needed by this operation.
    
    // ObjectStoragePrototype
    const objectStoragePrototypeModel = {
      bucket: 'px-scan-results',
      instance_crn: 'crn:v1:staging:public:cloud-object-storage:global:a/ff88f007f9ff4622aac4fbc0eda36255:7199ae60-a214-4dd8-9bf7-ce571de49d01::',
    };
    
    // EventNotificationsPrototype
    const eventNotificationsPrototypeModel = {
      instance_crn: 'crn:v1:staging:public:event-notifications:us-south:a/ff88f007f9ff4622aac4fbc0eda36255:b8b07245-0bbe-4478-b11c-0dce523105fd::',
      source_description: 'This source is used for integration with IBM Cloud Security and Compliance Center.',
      source_name: 'scc-sdk-integration',
    };
    
    const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      objectStorage: objectStoragePrototypeModel,
      eventNotifications: eventNotificationsPrototypeModel,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.updateSettings(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • object_storage_prototype_model = {
      'bucket': 'px-scan-results',
      'instance_crn': 'crn:v1:staging:public:cloud-object-storage:global:a/ff88f007f9ff4622aac4fbc0eda36255:7199ae60-a214-4dd8-9bf7-ce571de49d01::',
    }
    
    event_notifications_prototype_model = {
      'instance_crn': 'crn:v1:staging:public:event-notifications:us-south:a/ff88f007f9ff4622aac4fbc0eda36255:b8b07245-0bbe-4478-b11c-0dce523105fd::',
      'source_description': 'This source is used for integration with IBM Cloud Security and Compliance Center.',
      'source_name': 'scc-sdk-integration',
    }
    
    response = security_and_compliance_center_service.update_settings(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      object_storage=object_storage_prototype_model,
      event_notifications=event_notifications_prototype_model,
    )
    settings = response.get_result()
    
    print(json.dumps(settings, indent=2))
  • ObjectStoragePrototype objectStoragePrototypeModel = new ObjectStoragePrototype.Builder()
      .bucket("px-scan-results")
      .instanceCrn("crn:v1:staging:public:cloud-object-storage:global:a/ff88f007f9ff4622aac4fbc0eda36255:7199ae60-a214-4dd8-9bf7-ce571de49d01::")
      .build();
    EventNotificationsPrototype eventNotificationsPrototypeModel = new EventNotificationsPrototype.Builder()
      .instanceCrn("crn:v1:staging:public:event-notifications:us-south:a/ff88f007f9ff4622aac4fbc0eda36255:b8b07245-0bbe-4478-b11c-0dce523105fd::")
      .sourceDescription("This source is used for integration with IBM Cloud Security and Compliance Center.")
      .sourceName("scc-sdk-integration")
      .build();
    UpdateSettingsOptions updateSettingsOptions = new UpdateSettingsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .objectStorage(objectStoragePrototypeModel)
      .eventNotifications(eventNotificationsPrototypeModel)
      .build();
    
    Response<Settings> response = securityAndComplianceCenterService.updateSettings(updateSettingsOptions).execute();
    Settings settings = response.getResult();
    
    System.out.println(settings);

Response

The settings.

The settings.

The settings.

The settings.

The settings.

Status Code

  • The settings were successfully updated.

  • The request did not enact any changes. No content is provided.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

Example responses
  • {
      "event_notifications": {
        "instance_crn": "crn:v1:bluemix:public:event-notifications:us-south:a/130003ea8bfa43c5aacea07a86da3000:1c858449-3537-45b8-9d39-2707115b4cc7::",
        "updated_on": "2023-04-19T17:39:44.668119908Z",
        "source_id": "crn:v1:bluemix:public:compliance:global:a/130003ea8bfa43c5aacea07a86da3000:::"
      },
      "object_storage": {
        "instance_crn": "crn:v1:bluemix:public:cloud-object-storage:global:a/130003ea8bfa43c5aacea07a86da3000:1c858449-3537-45b8-9d39-2707115b4cc7::",
        "bucket": "output-bucket",
        "bucket_location": "us-south",
        "bucket_endpoint": "s3.us.private.cloud-object-storage.test.appdomain.cloud",
        "updated_on": "2023-03-01T22:00:05.917430784Z"
      }
    }
  • {
      "event_notifications": {
        "instance_crn": "crn:v1:bluemix:public:event-notifications:us-south:a/130003ea8bfa43c5aacea07a86da3000:1c858449-3537-45b8-9d39-2707115b4cc7::",
        "updated_on": "2023-04-19T17:39:44.668119908Z",
        "source_id": "crn:v1:bluemix:public:compliance:global:a/130003ea8bfa43c5aacea07a86da3000:::"
      },
      "object_storage": {
        "instance_crn": "crn:v1:bluemix:public:cloud-object-storage:global:a/130003ea8bfa43c5aacea07a86da3000:1c858449-3537-45b8-9d39-2707115b4cc7::",
        "bucket": "output-bucket",
        "bucket_location": "us-south",
        "bucket_endpoint": "s3.us.private.cloud-object-storage.test.appdomain.cloud",
        "updated_on": "2023-03-01T22:00:05.917430784Z"
      }
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }

Create a test event

Send a test event to your Event Notifications instance to ensure that the events that are generated by Security and Compliance Center are being forwarded to Event Notifications. For more information, see Enabling event notifications.

Send a test event to your Event Notifications instance to ensure that the events that are generated by Security and Compliance Center are being forwarded to Event Notifications. For more information, see Enabling event notifications.

Send a test event to your Event Notifications instance to ensure that the events that are generated by Security and Compliance Center are being forwarded to Event Notifications. For more information, see Enabling event notifications.

Send a test event to your Event Notifications instance to ensure that the events that are generated by Security and Compliance Center are being forwarded to Event Notifications. For more information, see Enabling event notifications.

Send a test event to your Event Notifications instance to ensure that the events that are generated by Security and Compliance Center are being forwarded to Event Notifications. For more information, see Enabling event notifications.

POST /instances/{instance_id}/v3/test_event
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) PostTestEvent(postTestEventOptions *PostTestEventOptions) (result *TestEvent, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) PostTestEventWithContext(ctx context.Context, postTestEventOptions *PostTestEventOptions) (result *TestEvent, response *core.DetailedResponse, err error)
postTestEvent(params)
post_test_event(
        self,
        instance_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<TestEvent> postTestEvent(PostTestEventOptions postTestEventOptions)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

  • compliance.admin.test-event-send

Auditing

Calling this method generates the following auditing event.

  • compliance.admin-test-event.send

Request

Instantiate the PostTestEventOptions struct and set the fields to provide parameter values for the PostTestEvent method.

Use the PostTestEventOptions.Builder to create a PostTestEventOptions object that contains the parameter values for the postTestEvent method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

WithContext method only

The PostTestEvent options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:

The postTestEvent options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/test_event"
  • postTestEventOptions := securityAndComplianceCenterService.NewPostTestEventOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    testEvent, response, err := securityAndComplianceCenterService.PostTestEvent(postTestEventOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(testEvent, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.postTestEvent(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.post_test_event(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    test_event = response.get_result()
    
    print(json.dumps(test_event, indent=2))
  • PostTestEventOptions postTestEventOptions = new PostTestEventOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<TestEvent> response = securityAndComplianceCenterService.postTestEvent(postTestEventOptions).execute();
    TestEvent testEvent = response.getResult();
    
    System.out.println(testEvent);

Response

The details of a test event response.

The details of a test event response.

The details of a test event response.

The details of a test event response.

The details of a test event response.

Status Code

  • The event was successfully sent to your Event Notifications instance.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

Example responses
  • {
      "success": true
    }
  • {
      "success": true
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }

Get all instance attachments

Retrieve all instance attachments.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve all instance attachments.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve all instance attachments.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve all instance attachments.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve all instance attachments.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

GET /instances/{instance_id}/v3/attachments
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListInstanceAttachments(listInstanceAttachmentsOptions *ListInstanceAttachmentsOptions) (result *ProfileAttachmentCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListInstanceAttachmentsWithContext(ctx context.Context, listInstanceAttachmentsOptions *ListInstanceAttachmentsOptions) (result *ProfileAttachmentCollection, response *core.DetailedResponse, err error)
listInstanceAttachments(params)
instance_attachments_list(
        self,
        instance_id: str,
        *,
        account_id: Optional[str] = None,
        version_group_label: Optional[str] = None,
        limit: Optional[int] = None,
        sort: Optional[str] = None,
        direction: Optional[str] = None,
        start: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileAttachmentCollection> listInstanceAttachments(ListInstanceAttachmentsOptions listInstanceAttachmentsOptions)

Request

Instantiate the ListInstanceAttachmentsOptions struct and set the fields to provide parameter values for the ListInstanceAttachments method.

Use the ListInstanceAttachmentsOptions.Builder to create a ListInstanceAttachmentsOptions object that contains the parameter values for the listInstanceAttachments method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The profile version group label.

  • The number of items that are retrieved in a collection.

    Possible values: 1 ≤ value ≤ 200

    Default: 25

  • The sorted collection of attachments. The available values are created_on and scope_type.

    Allowable values: [created_on,scope_type]

  • The collection of attachments that is sorted in ascending order. To sort the collection in descending order, use the DESC schema.

    Allowable values: [desc,asc]

  • The reference to the first item in the results page. Take the value from the next field that is in the response from the previous page.

WithContext method only

The ListInstanceAttachments options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The profile version group label.

  • The number of items that are retrieved in a collection.

    Possible values: 1 ≤ value ≤ 200

    Default: 25

  • The sorted collection of attachments. The available values are created_on and scope_type.

    Allowable values: [created_on,scope_type]

  • The collection of attachments that is sorted in ascending order. To sort the collection in descending order, use the DESC schema.

    Allowable values: [desc,asc]

  • The reference to the first item in the results page. Take the value from the next field that is in the response from the previous page.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The profile version group label.

  • The number of items that are retrieved in a collection.

    Possible values: 1 ≤ value ≤ 200

    Default: 25

  • The sorted collection of attachments. The available values are created_on and scope_type.

    Allowable values: [created_on,scope_type]

  • The collection of attachments that is sorted in ascending order. To sort the collection in descending order, use the DESC schema.

    Allowable values: [desc,asc]

  • The reference to the first item in the results page. Take the value from the next field that is in the response from the previous page.

The listInstanceAttachments options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/attachments"
  • listInstanceAttachmentsOptions := &securityandcompliancecenterv3.ListInstanceAttachmentsOptions{
      InstanceID: core.StringPtr("acd7032c-15a3-484f-bf5b-67d41534d940"),
      AccountID: &accountIDForReportLink,
      VersionGroupLabel: core.StringPtr("testString"),
      Limit: core.Int64Ptr(int64(10)),
      Sort: core.StringPtr("created_on"),
      Direction: core.StringPtr("desc"),
    }
    
    pager, err := securityAndComplianceCenterService.NewInstanceAttachmentsPager(listInstanceAttachmentsOptions)
    if err != nil {
      panic(err)
    }
    
    var allResults []securityandcompliancecenterv3.ProfileAttachment
    for pager.HasNext() {
      nextPage, err := pager.GetNext()
      if err != nil {
        panic(err)
      }
      allResults = append(allResults, nextPage...)
    }
    b, _ := json.MarshalIndent(allResults, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      accountId: accountIdForReportLink,
      versionGroupLabel: 'testString',
      limit: 10,
      sort: 'created_on',
      direction: 'desc',
    };
    
    const allResults = [];
    try {
      const pager = new SecurityAndComplianceCenterV3.InstanceAttachmentsPager(securityAndComplianceCenterService, params);
      while (pager.hasNext()) {
        const nextPage = await pager.getNext();
        expect(nextPage).not.toBeNull();
        allResults.push(...nextPage);
      }
      console.log(JSON.stringify(allResults, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • all_results = []
    pager = InstanceAttachmentsPager(
      client=security_and_compliance_center_service,
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      account_id=account_id_for_report_link,
      version_group_label='testString',
      limit=10,
      sort='created_on',
      direction='desc',
    )
    while pager.has_next():
      next_page = pager.get_next()
      assert next_page is not None
      all_results.extend(next_page)
    
    print(json.dumps(all_results, indent=2))
  • ListInstanceAttachmentsOptions listInstanceAttachmentsOptions = new ListInstanceAttachmentsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .accountId(accountIdForReportLink)
      .versionGroupLabel("testString")
      .limit(Long.valueOf("10"))
      .sort("created_on")
      .direction("desc")
      .build();
    
    InstanceAttachmentsPager pager = new InstanceAttachmentsPager(securityAndComplianceCenterService, listInstanceAttachmentsOptions);
    List<ProfileAttachment> allResults = new ArrayList<>();
    while (pager.hasNext()) {
      List<ProfileAttachment> nextPage = pager.getNext();
      allResults.addAll(nextPage);
    }
    
    System.out.println(GsonSingleton.getGson().toJson(allResults));

Response

A list of ProfileAttachment tied to a profile or instance.

A list of ProfileAttachment tied to a profile or instance.

A list of ProfileAttachment tied to a profile or instance.

A list of ProfileAttachment tied to a profile or instance.

A list of ProfileAttachment tied to a profile or instance.

Status Code

  • The attachments were retrieved successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Create a profile attachment

Create an attachment to link to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Create an attachment to link to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Create an attachment to link to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Create an attachment to link to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Create an attachment to link to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

POST /instances/{instance_id}/v3/profiles/{profile_id}/attachments
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateProfileAttachment(createProfileAttachmentOptions *CreateProfileAttachmentOptions) (result *ProfileAttachmentResponse, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateProfileAttachmentWithContext(ctx context.Context, createProfileAttachmentOptions *CreateProfileAttachmentOptions) (result *ProfileAttachmentResponse, response *core.DetailedResponse, err error)
createProfileAttachment(params)
profile_attachment_create(
        self,
        instance_id: str,
        profile_id: str,
        *,
        attachments: Optional[List['ProfileAttachmentBase']] = None,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileAttachmentResponse> createProfileAttachment(CreateProfileAttachmentOptions createProfileAttachmentOptions)

Request

Instantiate the CreateProfileAttachmentOptions struct and set the fields to provide parameter values for the CreateProfileAttachment method.

Use the CreateProfileAttachmentOptions.Builder to create a CreateProfileAttachmentOptions object that contains the parameter values for the createProfileAttachment method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The request payload to create an attachment.

Examples:
{
  "attachments": [
    {
      "name": "Profile Attachment for IBM CIS Foundation SDK test",
      "description": "This is a profile attachment targeting IBM CIS Foundation using a SDK",
      "scope": [
        {
          "id": "8baad3b5-2e69-4027-9967-efac19508e1c"
        }
      ],
      "schedule": "daily",
      "status": "disabled",
      "attachment_parameters": [
        {
          "parameter_value": "['1.2', '1.3']",
          "assessment_id": "rule-e16fcfea-fe21-4d30-a721-423611481fea",
          "assessment_type": "automated",
          "parameter_display_name": "IBM Cloud Internet Services TLS version",
          "parameter_name": "tls_version",
          "parameter_type": "string_list"
        },
        {
          "parameter_value": "22",
          "assessment_id": "rule-f9137be8-2490-4afb-8cd5-a201cb167eb2",
          "assessment_type": "automated",
          "parameter_display_name": "Network ACL rule for allowed IPs to SSH port",
          "parameter_name": "ssh_port",
          "parameter_type": "numeric"
        },
        {
          "parameter_value": "3389",
          "assessment_id": "rule-9653d2c7-6290-4128-a5a3-65487ba40370",
          "assessment_type": "automated",
          "parameter_display_name": "Security group rule RDP allow port number",
          "parameter_name": "rdp_port",
          "parameter_type": "numeric"
        },
        {
          "parameter_value": "22",
          "assessment_id": "rule-7c5f6385-67e4-4edf-bec8-c722558b2dec",
          "assessment_type": "automated",
          "parameter_display_name": "Security group rule SSH allow port number",
          "parameter_name": "ssh_port",
          "parameter_type": "numeric"
        },
        {
          "parameter_value": "3389",
          "assessment_id": "rule-f1e80ee7-88d5-4bf2-b42f-c863bb24601c",
          "assessment_type": "automated",
          "parameter_display_name": "Disallowed IPs for ingress to RDP port",
          "parameter_name": "rdp_port",
          "parameter_type": "numeric"
        }
      ],
      "notifications": {
        "enabled": true,
        "controls": {
          "threshold_limit": 15,
          "failed_control_ids": []
        }
      }
    }
  ]
}

WithContext method only

The CreateProfileAttachment options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The Prototype to create a profile attachment.

    Possible values: 1 ≤ number of items ≤ 999

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The Prototype to create a profile attachment.

    Possible values: 1 ≤ number of items ≤ 999

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The createProfileAttachment options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "attachments": [ { "name": "Profile Attachment for IBM CIS Foundation SDK test", "description": "This is a profile attachment targeting IBM CIS Foundation using a SDK", "scope": [ { "id": "8baad3b5-2e69-4027-9967-efac19508e1c" } ], "schedule": "daily", "status": "disabled", "attachment_parameters": [ { "parameter_value": "['1.2', '1.3']", "assessment_id": "rule-e16fcfea-fe21-4d30-a721-423611481fea", "assessment_type": "automated", "parameter_display_name": "IBM Cloud Internet Services TLS version", "parameter_name": "tls_version", "parameter_type": "string_list" }, { "parameter_value": "22", "assessment_id": "rule-f9137be8-2490-4afb-8cd5-a201cb167eb2", "assessment_type": "automated", "parameter_display_name": "Network ACL rule for allowed IPs to SSH port", "parameter_name": "ssh_port", "parameter_type": "numeric" }, { "parameter_value": "3389", "assessment_id": "rule-9653d2c7-6290-4128-a5a3-65487ba40370", "assessment_type": "automated", "parameter_display_name": "Security group rule RDP allow port number", "parameter_name": "rdp_port", "parameter_type": "numeric" }, { "parameter_value": "22", "assessment_id": "rule-7c5f6385-67e4-4edf-bec8-c722558b2dec", "assessment_type": "automated", "parameter_display_name": "Security group rule SSH allow port number", "parameter_name": "ssh_port", "parameter_type": "numeric" }, { "parameter_value": "3389", "assessment_id": "rule-f1e80ee7-88d5-4bf2-b42f-c863bb24601c", "assessment_type": "automated", "parameter_display_name": "Disallowed IPs for ingress to RDP port", "parameter_name": "rdp_port", "parameter_type": "numeric" } ], "notifications": { "enabled": true, "controls": { "threshold_limit": 15, "failed_control_ids":  ] } } } ] }'   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/attachments"
  • parameterModel := &securityandcompliancecenterv3.Parameter{
      AssessmentType: core.StringPtr("automated"),
      AssessmentID: core.StringPtr("rule-e16fcfea-fe21-4d30-a721-423611481fea"),
      ParameterName: core.StringPtr("tls_version"),
      ParameterDisplayName: core.StringPtr("IBM Cloud Internet Services TLS version"),
      ParameterType: core.StringPtr("string_list"),
      ParameterValue: core.StringPtr("['1.2', '1.3']"),
    }
    
    attachmentNotificationsControlsModel := &securityandcompliancecenterv3.AttachmentNotificationsControls{
      ThresholdLimit: core.Int64Ptr(int64(15)),
      FailedControlIds: []string{},
    }
    
    attachmentNotificationsModel := &securityandcompliancecenterv3.AttachmentNotifications{
      Enabled: core.BoolPtr(true),
      Controls: attachmentNotificationsControlsModel,
    }
    
    multiCloudScopePayloadModel := &securityandcompliancecenterv3.MultiCloudScopePayload{
      ID: core.StringPtr("8baad3b5-2e69-4027-9967-efac19508e1c"),
    }
    
    profileAttachmentBaseModel := &securityandcompliancecenterv3.ProfileAttachmentBase{
      AttachmentParameters: []securityandcompliancecenterv3.Parameter{*parameterModel},
      Description: core.StringPtr("This is a profile attachment targeting IBM CIS Foundation using a SDK"),
      Name: core.StringPtr("Profile Attachment for IBM CIS Foundation SDK test"),
      Notifications: attachmentNotificationsModel,
      Schedule: core.StringPtr("daily"),
      Scope: []securityandcompliancecenterv3.MultiCloudScopePayload{*multiCloudScopePayloadModel},
      Status: core.StringPtr("disabled"),
    }
    
    createProfileAttachmentOptions := securityAndComplianceCenterService.NewCreateProfileAttachmentOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
    )
    createProfileAttachmentOptions.SetAttachments([]securityandcompliancecenterv3.ProfileAttachmentBase{*profileAttachmentBaseModel})
    
    profileAttachmentResponse, response, err := securityAndComplianceCenterService.CreateProfileAttachment(createProfileAttachmentOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileAttachmentResponse, "", "  ")
    fmt.Println(string(b))
  • // Request models needed by this operation.
    
    // Parameter
    const parameterModel = {
      assessment_type: 'automated',
      assessment_id: 'rule-e16fcfea-fe21-4d30-a721-423611481fea',
      parameter_name: 'tls_version',
      parameter_display_name: 'IBM Cloud Internet Services TLS version',
      parameter_type: 'string_list',
      parameter_value: '[\'1.2\', \'1.3\']',
    };
    
    // AttachmentNotificationsControls
    const attachmentNotificationsControlsModel = {
      threshold_limit: 15,
      failed_control_ids: [],
    };
    
    // AttachmentNotifications
    const attachmentNotificationsModel = {
      enabled: true,
      controls: attachmentNotificationsControlsModel,
    };
    
    // MultiCloudScopePayload
    const multiCloudScopePayloadModel = {
      id: '8baad3b5-2e69-4027-9967-efac19508e1c',
    };
    
    // ProfileAttachmentBase
    const profileAttachmentBaseModel = {
      attachment_parameters: [parameterModel],
      description: 'This is a profile attachment targeting IBM CIS Foundation using a SDK',
      name: 'Profile Attachment for IBM CIS Foundation SDK test',
      notifications: attachmentNotificationsModel,
      schedule: 'daily',
      scope: [multiCloudScopePayloadModel],
      status: 'disabled',
    };
    
    const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
      attachments: [profileAttachmentBaseModel],
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createProfileAttachment(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • parameter_model = {
      'assessment_type': 'automated',
      'assessment_id': 'rule-e16fcfea-fe21-4d30-a721-423611481fea',
      'parameter_name': 'tls_version',
      'parameter_display_name': 'IBM Cloud Internet Services TLS version',
      'parameter_type': 'string_list',
      'parameter_value': '[\'1.2\', \'1.3\']',
    }
    
    attachment_notifications_controls_model = {
      'threshold_limit': 15,
      'failed_control_ids': [],
    }
    
    attachment_notifications_model = {
      'enabled': True,
      'controls': attachment_notifications_controls_model,
    }
    
    multi_cloud_scope_payload_model = {
      'id': '8baad3b5-2e69-4027-9967-efac19508e1c',
    }
    
    profile_attachment_base_model = {
      'attachment_parameters': [parameter_model],
      'description': 'This is a profile attachment targeting IBM CIS Foundation using a SDK',
      'name': 'Profile Attachment for IBM CIS Foundation SDK test',
      'notifications': attachment_notifications_model,
      'schedule': 'daily',
      'scope': [multi_cloud_scope_payload_model],
      'status': 'disabled',
    }
    
    response = security_and_compliance_center_service.create_profile_attachment(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
      attachments=[profile_attachment_base_model],
    )
    profile_attachment_response = response.get_result()
    
    print(json.dumps(profile_attachment_response, indent=2))
  • Parameter parameterModel = new Parameter.Builder()
      .assessmentType("automated")
      .assessmentId("rule-e16fcfea-fe21-4d30-a721-423611481fea")
      .parameterName("tls_version")
      .parameterDisplayName("IBM Cloud Internet Services TLS version")
      .parameterType("string_list")
      .parameterValue("['1.2', '1.3']")
      .build();
    AttachmentNotificationsControls attachmentNotificationsControlsModel = new AttachmentNotificationsControls.Builder()
      .thresholdLimit(Long.valueOf("15"))
      .failedControlIds(java.util.Arrays.asList())
      .build();
    AttachmentNotifications attachmentNotificationsModel = new AttachmentNotifications.Builder()
      .enabled(true)
      .controls(attachmentNotificationsControlsModel)
      .build();
    MultiCloudScopePayload multiCloudScopePayloadModel = new MultiCloudScopePayload.Builder()
      .id("8baad3b5-2e69-4027-9967-efac19508e1c")
      .build();
    ProfileAttachmentBase profileAttachmentBaseModel = new ProfileAttachmentBase.Builder()
      .attachmentParameters(java.util.Arrays.asList(parameterModel))
      .description("This is a profile attachment targeting IBM CIS Foundation using a SDK")
      .name("Profile Attachment for IBM CIS Foundation SDK test")
      .notifications(attachmentNotificationsModel)
      .schedule("daily")
      .scope(java.util.Arrays.asList(multiCloudScopePayloadModel))
      .status("disabled")
      .build();
    CreateProfileAttachmentOptions createProfileAttachmentOptions = new CreateProfileAttachmentOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .attachments(java.util.Arrays.asList(profileAttachmentBaseModel))
      .build();
    
    Response<ProfileAttachmentResponse> response = securityAndComplianceCenterService.createProfileAttachment(createProfileAttachmentOptions).execute();
    ProfileAttachmentResponse profileAttachmentResponse = response.getResult();
    
    System.out.println(profileAttachmentResponse);

Response

The response coming back from creating a ProfileAttachment

The response coming back from creating a ProfileAttachment.

The response coming back from creating a ProfileAttachment.

The response coming back from creating a ProfileAttachment.

The response coming back from creating a ProfileAttachment.

Status Code

  • The attachment was created successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get all attachments tied to a profile

Retrieve all attachments that are linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve all attachments that are linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve all attachments that are linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve all attachments that are linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve all attachments that are linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

GET /instances/{instance_id}/v3/profiles/{profile_id}/attachments
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProfileAttachments(listProfileAttachmentsOptions *ListProfileAttachmentsOptions) (result *ProfileAttachmentCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProfileAttachmentsWithContext(ctx context.Context, listProfileAttachmentsOptions *ListProfileAttachmentsOptions) (result *ProfileAttachmentCollection, response *core.DetailedResponse, err error)
listProfileAttachments(params)
profile_attachments_list(
        self,
        instance_id: str,
        profile_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileAttachmentCollection> listProfileAttachments(ListProfileAttachmentsOptions listProfileAttachmentsOptions)

Request

Instantiate the ListProfileAttachmentsOptions struct and set the fields to provide parameter values for the ListProfileAttachments method.

Use the ListProfileAttachmentsOptions.Builder to create a ListProfileAttachmentsOptions object that contains the parameter values for the listProfileAttachments method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The ListProfileAttachments options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The listProfileAttachments options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/attachments"
  • listProfileAttachmentsOptions := securityAndComplianceCenterService.NewListProfileAttachmentsOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
    )
    
    profileAttachmentCollection, response, err := securityAndComplianceCenterService.ListProfileAttachments(listProfileAttachmentsOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileAttachmentCollection, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.listProfileAttachments(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.list_profile_attachments(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
    )
    profile_attachment_collection = response.get_result()
    
    print(json.dumps(profile_attachment_collection, indent=2))
  • ListProfileAttachmentsOptions listProfileAttachmentsOptions = new ListProfileAttachmentsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .build();
    
    Response<ProfileAttachmentCollection> response = securityAndComplianceCenterService.listProfileAttachments(listProfileAttachmentsOptions).execute();
    ProfileAttachmentCollection profileAttachmentCollection = response.getResult();
    
    System.out.println(profileAttachmentCollection);

Response

A list of ProfileAttachment tied to a profile or instance.

A list of ProfileAttachment tied to a profile or instance.

A list of ProfileAttachment tied to a profile or instance.

A list of ProfileAttachment tied to a profile or instance.

A list of ProfileAttachment tied to a profile or instance.

Status Code

  • The attachments were retrieved successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get an attachment for a profile

Retrieve an attachment that is linked to a profile by specifying the attachment ID.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve an attachment that is linked to a profile by specifying the attachment ID.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve an attachment that is linked to a profile by specifying the attachment ID.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve an attachment that is linked to a profile by specifying the attachment ID.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Retrieve an attachment that is linked to a profile by specifying the attachment ID.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

GET /instances/{instance_id}/v3/profiles/{profile_id}/attachments/{attachment_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetProfileAttachment(getProfileAttachmentOptions *GetProfileAttachmentOptions) (result *ProfileAttachment, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetProfileAttachmentWithContext(ctx context.Context, getProfileAttachmentOptions *GetProfileAttachmentOptions) (result *ProfileAttachment, response *core.DetailedResponse, err error)
getProfileAttachment(params)
profile_attachment_get(
        self,
        instance_id: str,
        profile_id: str,
        attachment_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileAttachment> getProfileAttachment(GetProfileAttachmentOptions getProfileAttachmentOptions)

Request

Instantiate the GetProfileAttachmentOptions struct and set the fields to provide parameter values for the GetProfileAttachment method.

Use the GetProfileAttachmentOptions.Builder to create a GetProfileAttachmentOptions object that contains the parameter values for the getProfileAttachment method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

  • The attachment ID.

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetProfileAttachment options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The attachment ID.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The attachment ID.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getProfileAttachment options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/attachments/${attachment_id}"
  • getProfileAttachmentOptions := securityAndComplianceCenterService.NewGetProfileAttachmentOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
      attachmentIDLink,
    )
    
    profileAttachment, response, err := securityAndComplianceCenterService.GetProfileAttachment(getProfileAttachmentOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileAttachment, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
      attachmentId: attachmentIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getProfileAttachment(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_profile_attachment(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
      attachment_id=attachment_id_link,
    )
    profile_attachment = response.get_result()
    
    print(json.dumps(profile_attachment, indent=2))
  • GetProfileAttachmentOptions getProfileAttachmentOptions = new GetProfileAttachmentOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .attachmentId(attachmentIdLink)
      .build();
    
    Response<ProfileAttachment> response = securityAndComplianceCenterService.getProfileAttachment(getProfileAttachmentOptions).execute();
    ProfileAttachment profileAttachment = response.getResult();
    
    System.out.println(profileAttachment);

Response

The configuration set when starting a scan against a profile

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

Status Code

  • The attachment was retrieved successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Update an attachment

Update an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Update an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Update an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Update an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Update an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

PUT /instances/{instance_id}/v3/profiles/{profile_id}/attachments/{attachment_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceProfileAttachment(replaceProfileAttachmentOptions *ReplaceProfileAttachmentOptions) (result *ProfileAttachment, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceProfileAttachmentWithContext(ctx context.Context, replaceProfileAttachmentOptions *ReplaceProfileAttachmentOptions) (result *ProfileAttachment, response *core.DetailedResponse, err error)
replaceProfileAttachment(params)
profile_attachment_replace(
        self,
        instance_id: str,
        profile_id: str,
        attachment_id: str,
        *,
        attachments: Optional[List['ProfileAttachmentBase']] = None,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileAttachment> replaceProfileAttachment(ReplaceProfileAttachmentOptions replaceProfileAttachmentOptions)

Request

Instantiate the ReplaceProfileAttachmentOptions struct and set the fields to provide parameter values for the ReplaceProfileAttachment method.

Use the ReplaceProfileAttachmentOptions.Builder to create a ReplaceProfileAttachmentOptions object that contains the parameter values for the replaceProfileAttachment method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

  • The attachment ID.

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The request payload to update an attachment.

WithContext method only

The ReplaceProfileAttachment options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The attachment ID.

  • The Prototype to create a profile attachment.

    Possible values: 1 ≤ number of items ≤ 999

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The attachment ID.

  • The Prototype to create a profile attachment.

    Possible values: 1 ≤ number of items ≤ 999

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The replaceProfileAttachment options.

  • curl -X PUT --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{}'   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/attachments/${attachment_id}"
  • replaceProfileAttachmentOptions := securityAndComplianceCenterService.NewReplaceProfileAttachmentOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
      attachmentIDLink,
    )
    
    profileAttachment, response, err := securityAndComplianceCenterService.ReplaceProfileAttachment(replaceProfileAttachmentOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileAttachment, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
      attachmentId: attachmentIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.replaceProfileAttachment(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.replace_profile_attachment(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
      attachment_id=attachment_id_link,
    )
    profile_attachment = response.get_result()
    
    print(json.dumps(profile_attachment, indent=2))
  • ReplaceProfileAttachmentOptions replaceProfileAttachmentOptions = new ReplaceProfileAttachmentOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .attachmentId(attachmentIdLink)
      .build();
    
    Response<ProfileAttachment> response = securityAndComplianceCenterService.replaceProfileAttachment(replaceProfileAttachmentOptions).execute();
    ProfileAttachment profileAttachment = response.getResult();
    
    System.out.println(profileAttachment);

Response

The configuration set when starting a scan against a profile

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

Status Code

  • The attachment was updated successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Delete an attachment

Delete an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Delete an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Delete an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Delete an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Delete an attachment that is linked to a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

DELETE /instances/{instance_id}/v3/profiles/{profile_id}/attachments/{attachment_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteProfileAttachment(deleteProfileAttachmentOptions *DeleteProfileAttachmentOptions) (result *ProfileAttachment, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteProfileAttachmentWithContext(ctx context.Context, deleteProfileAttachmentOptions *DeleteProfileAttachmentOptions) (result *ProfileAttachment, response *core.DetailedResponse, err error)
deleteProfileAttachment(params)
profile_attachment_delete(
        self,
        instance_id: str,
        profile_id: str,
        attachment_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileAttachment> deleteProfileAttachment(DeleteProfileAttachmentOptions deleteProfileAttachmentOptions)

Request

Instantiate the DeleteProfileAttachmentOptions struct and set the fields to provide parameter values for the DeleteProfileAttachment method.

Use the DeleteProfileAttachmentOptions.Builder to create a DeleteProfileAttachmentOptions object that contains the parameter values for the deleteProfileAttachment method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

  • The attachment ID.

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The DeleteProfileAttachment options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The attachment ID.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The attachment ID.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The deleteProfileAttachment options.

  • curl -X DELETE --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/attachments/${attachment_id}"
  • deleteProfileAttachmentOptions := securityAndComplianceCenterService.NewDeleteProfileAttachmentOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
      attachmentIDLink,
    )
    
    profileAttachment, response, err := securityAndComplianceCenterService.DeleteProfileAttachment(deleteProfileAttachmentOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileAttachment, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
      attachmentId: attachmentIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.deleteProfileAttachment(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.delete_profile_attachment(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
      attachment_id=attachment_id_link,
    )
    profile_attachment = response.get_result()
    
    print(json.dumps(profile_attachment, indent=2))
  • DeleteProfileAttachmentOptions deleteProfileAttachmentOptions = new DeleteProfileAttachmentOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .attachmentId(attachmentIdLink)
      .build();
    
    Response<ProfileAttachment> response = securityAndComplianceCenterService.deleteProfileAttachment(deleteProfileAttachmentOptions).execute();
    ProfileAttachment profileAttachment = response.getResult();
    
    System.out.println(profileAttachment);

Response

The configuration set when starting a scan against a profile

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

Status Code

  • The attachment was deleted successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Upgrade an attachment

Upgrade an attachment to the latest version of a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Upgrade an attachment to the latest version of a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Upgrade an attachment to the latest version of a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Upgrade an attachment to the latest version of a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

Upgrade an attachment to the latest version of a profile.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule or you can initiate a scan at any time. To evaluate your resources, you create an attachment. An attachment is the association between the set of resources that you want to evaluate and a profile that contains the specific controls that you want to use. For more information, see Running an evaluation for IBM Cloud.

POST /instances/{instance_id}/v3/profiles/{profile_id}/attachments/{attachment_id}/upgrade
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpgradeAttachment(upgradeAttachmentOptions *UpgradeAttachmentOptions) (result *ProfileAttachment, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpgradeAttachmentWithContext(ctx context.Context, upgradeAttachmentOptions *UpgradeAttachmentOptions) (result *ProfileAttachment, response *core.DetailedResponse, err error)
upgradeAttachment(params)
upgrade_attachment(
        self,
        instance_id: str,
        profile_id: str,
        attachment_id: str,
        *,
        attachment_parameters: Optional[List['Parameter']] = None,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileAttachment> upgradeAttachment(UpgradeAttachmentOptions upgradeAttachmentOptions)

Request

Instantiate the UpgradeAttachmentOptions struct and set the fields to provide parameter values for the UpgradeAttachment method.

Use the UpgradeAttachmentOptions.Builder to create a UpgradeAttachmentOptions object that contains the parameter values for the upgradeAttachment method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

  • The attachment ID.

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The request payload to upgrade an attachment.

WithContext method only

The UpgradeAttachment options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The attachment ID.

  • The attachment_parameters to set for a Profile Attachment.

    Possible values: 0 ≤ number of items ≤ 99999

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The attachment ID.

  • The attachment_parameters to set for a Profile Attachment.

    Possible values: 0 ≤ number of items ≤ 99999

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The upgradeAttachment options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{}'   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/attachments/${attachment_id}/upgrade"
  • upgradeAttachmentOptions := securityAndComplianceCenterService.NewUpgradeAttachmentOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
      attachmentIDLink,
    )
    
    profileAttachment, response, err := securityAndComplianceCenterService.UpgradeAttachment(upgradeAttachmentOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileAttachment, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
      attachmentId: attachmentIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.upgradeAttachment(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.upgrade_attachment(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
      attachment_id=attachment_id_link,
    )
    profile_attachment = response.get_result()
    
    print(json.dumps(profile_attachment, indent=2))
  • UpgradeAttachmentOptions upgradeAttachmentOptions = new UpgradeAttachmentOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .attachmentId(attachmentIdLink)
      .build();
    
    Response<ProfileAttachment> response = securityAndComplianceCenterService.upgradeAttachment(upgradeAttachmentOptions).execute();
    ProfileAttachment profileAttachment = response.getResult();
    
    System.out.println(profileAttachment);

Response

The configuration set when starting a scan against a profile

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

The configuration set when starting a scan against a profile.

Status Code

  • The attachment was created successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Create a custom control library

Create a custom control library that is specific to your organization's needs.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Create a custom control library that is specific to your organization's needs.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Create a custom control library that is specific to your organization's needs.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Create a custom control library that is specific to your organization's needs.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Create a custom control library that is specific to your organization's needs.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

POST /instances/{instance_id}/v3/control_libraries
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateCustomControlLibrary(createCustomControlLibraryOptions *CreateCustomControlLibraryOptions) (result *ControlLibrary, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateCustomControlLibraryWithContext(ctx context.Context, createCustomControlLibraryOptions *CreateCustomControlLibraryOptions) (result *ControlLibrary, response *core.DetailedResponse, err error)
createCustomControlLibrary(params)
custom_control_library_create(
        self,
        instance_id: str,
        control_library_name: str,
        control_library_description: str,
        control_library_type: str,
        control_library_version: str,
        controls: List['ControlPrototype'],
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ControlLibrary> createCustomControlLibrary(CreateCustomControlLibraryOptions createCustomControlLibraryOptions)

Request

Instantiate the CreateCustomControlLibraryOptions struct and set the fields to provide parameter values for the CreateCustomControlLibrary method.

Use the CreateCustomControlLibraryOptions.Builder to create a CreateCustomControlLibraryOptions object that contains the parameter values for the createCustomControlLibrary method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The request body to create a custom control library.

Examples:
{
  "control_library_description": "This is a custom control library made from the SDK test framework",
  "control_library_name": "custom control library from SDK",
  "control_library_type": "custom",
  "control_library_version": "0.0.1",
  "control_parent": "",
  "controls": [
    {
      "control_description": "This is a description of a control",
      "control_name": "security",
      "control_parent": "",
      "control_category": "test-control",
      "control_requirement": true,
      "control_docs": {},
      "control_specifications": [
        {
          "component_id": "apprapp",
          "control_specification_description": "This field is used to describe a control specification",
          "environment": "ibm-cloud",
          "assessments": [
            {
              "assessment_description": "This rule will check on regulation",
              "assessment_id": "rule-d1bd9f3f-bee1-46c5-9533-da8bba9eed4e"
            }
          ]
        }
      ],
      "status": "disabled"
    }
  ]
}

WithContext method only

The CreateCustomControlLibrary options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The name of the control library.

    Examples:
  • Details of the control library.

    Examples:
  • Details that the control library is a user made(custom) or Security Compliance Center(predefined).

    Allowable values: [custom]

    Examples:
  • The revision number of the control library.

    Examples:
  • The list of rules that the control library attempts to adhere to.

    Possible values: 0 ≤ number of items ≤ 999

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The name of the control library.

    Examples:
  • Details of the control library.

    Examples:
  • Details that the control library is a user made(custom) or Security Compliance Center(predefined).

    Allowable values: [custom]

    Examples:
  • The revision number of the control library.

    Examples:
  • The list of rules that the control library attempts to adhere to.

    Possible values: 0 ≤ number of items ≤ 999

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The createCustomControlLibrary options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "control_library_description": "This is a custom control library made from the SDK test framework", "control_library_name": "custom control library from SDK", "control_library_type": "custom", "control_library_version": "0.0.1", "control_parent": "", "controls": [ { "control_description": "This is a description of a control", "control_name": "security", "control_parent": "", "control_category": "test-control", "control_requirement": true, "control_docs":  }, "control_specifications": [ { "component_id": "apprapp", "control_specification_description": "This field is used to describe a control specification", "environment": "ibm-cloud", "assessments": [ { "assessment_description": "This rule will check on regulation", "assessment_id": "rule-d1bd9f3f-bee1-46c5-9533-da8bba9eed4e" } ] } ], "status": "disabled" } ] }'   "${base_url}/instances/${instance_id}/v3/control_libraries"
  • assessmentPrototypeModel := &securityandcompliancecenterv3.AssessmentPrototype{
      AssessmentID: core.StringPtr("rule-d1bd9f3f-bee1-46c5-9533-da8bba9eed4e"),
      AssessmentDescription: core.StringPtr("This rule will check on regulation"),
    }
    
    controlSpecificationPrototypeModel := &securityandcompliancecenterv3.ControlSpecificationPrototype{
      ComponentID: core.StringPtr("apprapp"),
      Environment: core.StringPtr("ibm-cloud"),
      ControlSpecificationDescription: core.StringPtr("This field is used to describe a control specification"),
      Assessments: []securityandcompliancecenterv3.AssessmentPrototype{*assessmentPrototypeModel},
    }
    
    controlDocModel := &securityandcompliancecenterv3.ControlDoc{
    }
    
    controlPrototypeModel := &securityandcompliancecenterv3.ControlPrototype{
      ControlName: core.StringPtr("security"),
      ControlDescription: core.StringPtr("This is a description of a control"),
      ControlCategory: core.StringPtr("test-control"),
      ControlRequirement: core.BoolPtr(true),
      ControlSpecifications: []securityandcompliancecenterv3.ControlSpecificationPrototype{*controlSpecificationPrototypeModel},
      ControlDocs: controlDocModel,
      Status: core.StringPtr("disabled"),
    }
    
    createCustomControlLibraryOptions := securityAndComplianceCenterService.NewCreateCustomControlLibraryOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "custom control library from SDK",
      "This is a custom control library made from the SDK test framework",
      "custom",
      "0.0.1",
      []securityandcompliancecenterv3.ControlPrototype{*controlPrototypeModel},
    )
    
    controlLibrary, response, err := securityAndComplianceCenterService.CreateCustomControlLibrary(createCustomControlLibraryOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(controlLibrary, "", "  ")
    fmt.Println(string(b))
  • // Request models needed by this operation.
    
    // AssessmentPrototype
    const assessmentPrototypeModel = {
      assessment_id: 'rule-d1bd9f3f-bee1-46c5-9533-da8bba9eed4e',
      assessment_description: 'This rule will check on regulation',
    };
    
    // ControlSpecificationPrototype
    const controlSpecificationPrototypeModel = {
      component_id: 'apprapp',
      environment: 'ibm-cloud',
      control_specification_description: 'This field is used to describe a control specification',
      assessments: [assessmentPrototypeModel],
    };
    
    // ControlDoc
    const controlDocModel = {
    };
    
    // ControlPrototype
    const controlPrototypeModel = {
      control_name: 'security',
      control_description: 'This is a description of a control',
      control_category: 'test-control',
      control_requirement: true,
      control_parent: 'testString',
      control_specifications: [controlSpecificationPrototypeModel],
      control_docs: controlDocModel,
      status: 'disabled',
    };
    
    const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      controlLibraryName: 'custom control library from SDK',
      controlLibraryDescription: 'This is a custom control library made from the SDK test framework',
      controlLibraryType: 'custom',
      controlLibraryVersion: '0.0.1',
      controls: [controlPrototypeModel],
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createCustomControlLibrary(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • assessment_prototype_model = {
      'assessment_id': 'rule-d1bd9f3f-bee1-46c5-9533-da8bba9eed4e',
      'assessment_description': 'This rule will check on regulation',
    }
    
    control_specification_prototype_model = {
      'component_id': 'apprapp',
      'environment': 'ibm-cloud',
      'control_specification_description': 'This field is used to describe a control specification',
      'assessments': [assessment_prototype_model],
    }
    
    control_doc_model = {
    }
    
    control_prototype_model = {
      'control_name': 'security',
      'control_description': 'This is a description of a control',
      'control_category': 'test-control',
      'control_requirement': True,
      'control_parent': 'testString',
      'control_specifications': [control_specification_prototype_model],
      'control_docs': control_doc_model,
      'status': 'disabled',
    }
    
    response = security_and_compliance_center_service.create_custom_control_library(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      control_library_name='custom control library from SDK',
      control_library_description='This is a custom control library made from the SDK test framework',
      control_library_type='custom',
      control_library_version='0.0.1',
      controls=[control_prototype_model],
    )
    control_library = response.get_result()
    
    print(json.dumps(control_library, indent=2))
  • AssessmentPrototype assessmentPrototypeModel = new AssessmentPrototype.Builder()
      .assessmentId("rule-d1bd9f3f-bee1-46c5-9533-da8bba9eed4e")
      .assessmentDescription("This rule will check on regulation")
      .build();
    ControlSpecificationPrototype controlSpecificationPrototypeModel = new ControlSpecificationPrototype.Builder()
      .componentId("apprapp")
      .environment("ibm-cloud")
      .controlSpecificationDescription("This field is used to describe a control specification")
      .assessments(java.util.Arrays.asList(assessmentPrototypeModel))
      .build();
    ControlDoc controlDocModel = new ControlDoc.Builder()
      .build();
    ControlPrototype controlPrototypeModel = new ControlPrototype.Builder()
      .controlName("security")
      .controlDescription("This is a description of a control")
      .controlCategory("test-control")
      .controlRequirement(true)
      .controlSpecifications(java.util.Arrays.asList(controlSpecificationPrototypeModel))
      .controlDocs(controlDocModel)
      .status("disabled")
      .build();
    CreateCustomControlLibraryOptions createCustomControlLibraryOptions = new CreateCustomControlLibraryOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .controlLibraryName("custom control library from SDK")
      .controlLibraryDescription("This is a custom control library made from the SDK test framework")
      .controlLibraryType("custom")
      .controlLibraryVersion("0.0.1")
      .controls(java.util.Arrays.asList(controlPrototypeModel))
      .build();
    
    Response<ControlLibrary> response = securityAndComplianceCenterService.createCustomControlLibrary(createCustomControlLibraryOptions).execute();
    ControlLibrary controlLibrary = response.getResult();
    
    System.out.println(controlLibrary);

Response

A Control Library

A Control Library.

A Control Library.

A Control Library.

A Control Library.

Status Code

  • The control library was created successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get all control libraries

Retrieve all the control libraries, including predefined, and custom libraries.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Retrieve all the control libraries, including predefined, and custom libraries.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Retrieve all the control libraries, including predefined, and custom libraries.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Retrieve all the control libraries, including predefined, and custom libraries.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Retrieve all the control libraries, including predefined, and custom libraries.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

GET /instances/{instance_id}/v3/control_libraries
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListControlLibraries(listControlLibrariesOptions *ListControlLibrariesOptions) (result *ControlLibraryCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListControlLibrariesWithContext(ctx context.Context, listControlLibrariesOptions *ListControlLibrariesOptions) (result *ControlLibraryCollection, response *core.DetailedResponse, err error)
listControlLibraries(params)
list(
        self,
        instance_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ControlLibraryCollection> listControlLibraries(ListControlLibrariesOptions listControlLibrariesOptions)

Request

Instantiate the ListControlLibrariesOptions struct and set the fields to provide parameter values for the ListControlLibraries method.

Use the ListControlLibrariesOptions.Builder to create a ListControlLibrariesOptions object that contains the parameter values for the listControlLibraries method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The ListControlLibraries options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The listControlLibraries options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/control_libraries"
  • listControlLibrariesOptions := securityAndComplianceCenterService.NewListControlLibrariesOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    controlLibraryCollection, response, err := securityAndComplianceCenterService.ListControlLibraries(listControlLibrariesOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(controlLibraryCollection, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.listControlLibraries(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.list_control_libraries(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    control_library_collection = response.get_result()
    
    print(json.dumps(control_library_collection, indent=2))
  • ListControlLibrariesOptions listControlLibrariesOptions = new ListControlLibrariesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<ControlLibraryCollection> response = securityAndComplianceCenterService.listControlLibraries(listControlLibrariesOptions).execute();
    ControlLibraryCollection controlLibraryCollection = response.getResult();
    
    System.out.println(controlLibraryCollection);

Response

A list of control libraries

A list of control libraries.

A list of control libraries.

A list of control libraries.

A list of control libraries.

Status Code

  • The control libraries were successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Update a custom control library

Update a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Update a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Update a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Update a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Update a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

PUT /instances/{instance_id}/v3/control_libraries/{control_library_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceCustomControlLibrary(replaceCustomControlLibraryOptions *ReplaceCustomControlLibraryOptions) (result *ControlLibrary, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceCustomControlLibraryWithContext(ctx context.Context, replaceCustomControlLibraryOptions *ReplaceCustomControlLibraryOptions) (result *ControlLibrary, response *core.DetailedResponse, err error)
replaceCustomControlLibrary(params)
custom_control_library_replace(
        self,
        instance_id: str,
        control_library_id: str,
        control_library_name: str,
        control_library_description: str,
        control_library_type: str,
        control_library_version: str,
        controls: List['ControlPrototype'],
        *,
        bss_account: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ControlLibrary> replaceCustomControlLibrary(ReplaceCustomControlLibraryOptions replaceCustomControlLibraryOptions)

Request

Instantiate the ReplaceCustomControlLibraryOptions struct and set the fields to provide parameter values for the ReplaceCustomControlLibrary method.

Use the ReplaceCustomControlLibraryOptions.Builder to create a ReplaceCustomControlLibraryOptions object that contains the parameter values for the replaceCustomControlLibrary method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The predefined control library ID.

Query Parameters

  • The account id tied to billing.

The request body to update control library.

WithContext method only

The ReplaceCustomControlLibrary options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The predefined control library ID.

  • The name of the control library.

  • Details of the control library.

  • Details that the control library is a user made(custom) or Security Compliance Center(predefined).

    Allowable values: [custom]

  • The revision number of the control library.

  • The list of rules that the control library attempts to adhere to.

    Possible values: 0 ≤ number of items ≤ 999

  • The account id tied to billing.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The predefined control library ID.

  • The name of the control library.

  • Details of the control library.

  • Details that the control library is a user made(custom) or Security Compliance Center(predefined).

    Allowable values: [custom]

  • The revision number of the control library.

  • The list of rules that the control library attempts to adhere to.

    Possible values: 0 ≤ number of items ≤ 999

  • The account id tied to billing.

The replaceCustomControlLibrary options.

  • curl -X PUT --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "control_library_name": "testString", "control_library_description": "testString", "control_library_type": "custom", "control_library_version": "testString", "controls": [] }'   "${base_url}/instances/${instance_id}/v3/control_libraries/${control_library_id}"
  • controlSpecificationPrototypeModel := &securityandcompliancecenterv3.ControlSpecificationPrototype{
    }
    
    controlPrototypeModel := &securityandcompliancecenterv3.ControlPrototype{
      ControlName: core.StringPtr("testString"),
      ControlCategory: core.StringPtr("testString"),
      ControlRequirement: core.BoolPtr(true),
      ControlSpecifications: []securityandcompliancecenterv3.ControlSpecificationPrototype{*controlSpecificationPrototypeModel},
    }
    
    replaceCustomControlLibraryOptions := securityAndComplianceCenterService.NewReplaceCustomControlLibraryOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      controlLibraryIDLink,
      "testString",
      "testString",
      "custom",
      "testString",
      []securityandcompliancecenterv3.ControlPrototype{*controlPrototypeModel},
    )
    
    controlLibrary, response, err := securityAndComplianceCenterService.ReplaceCustomControlLibrary(replaceCustomControlLibraryOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(controlLibrary, "", "  ")
    fmt.Println(string(b))
  • // Request models needed by this operation.
    
    // ControlSpecificationPrototype
    const controlSpecificationPrototypeModel = {
    };
    
    // ControlPrototype
    const controlPrototypeModel = {
      control_name: 'testString',
      control_category: 'testString',
      control_requirement: true,
      control_specifications: [controlSpecificationPrototypeModel],
    };
    
    const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      controlLibraryId: controlLibraryIdLink,
      controlLibraryName: 'testString',
      controlLibraryDescription: 'testString',
      controlLibraryType: 'custom',
      controlLibraryVersion: 'testString',
      controls: [controlPrototypeModel],
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.replaceCustomControlLibrary(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • control_specification_prototype_model = {
    }
    
    control_prototype_model = {
      'control_name': 'testString',
      'control_category': 'testString',
      'control_requirement': True,
      'control_specifications': [control_specification_prototype_model],
    }
    
    response = security_and_compliance_center_service.replace_custom_control_library(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      control_library_id=control_library_id_link,
      control_library_name='testString',
      control_library_description='testString',
      control_library_type='custom',
      control_library_version='testString',
      controls=[control_prototype_model],
    )
    control_library = response.get_result()
    
    print(json.dumps(control_library, indent=2))
  • ControlSpecificationPrototype controlSpecificationPrototypeModel = new ControlSpecificationPrototype.Builder()
      .build();
    ControlPrototype controlPrototypeModel = new ControlPrototype.Builder()
      .controlName("testString")
      .controlCategory("testString")
      .controlRequirement(true)
      .controlSpecifications(java.util.Arrays.asList(controlSpecificationPrototypeModel))
      .build();
    ReplaceCustomControlLibraryOptions replaceCustomControlLibraryOptions = new ReplaceCustomControlLibraryOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .controlLibraryId(controlLibraryIdLink)
      .controlLibraryName("testString")
      .controlLibraryDescription("testString")
      .controlLibraryType("custom")
      .controlLibraryVersion("testString")
      .controls(java.util.Arrays.asList(controlPrototypeModel))
      .build();
    
    Response<ControlLibrary> response = securityAndComplianceCenterService.replaceCustomControlLibrary(replaceCustomControlLibraryOptions).execute();
    ControlLibrary controlLibrary = response.getResult();
    
    System.out.println(controlLibrary);

Response

A Control Library

A Control Library.

A Control Library.

A Control Library.

A Control Library.

Status Code

  • The control library was updated successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get a control library

View the details of a control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

View the details of a control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

View the details of a control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

View the details of a control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

View the details of a control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

GET /instances/{instance_id}/v3/control_libraries/{control_library_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetControlLibrary(getControlLibraryOptions *GetControlLibraryOptions) (result *ControlLibrary, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetControlLibraryWithContext(ctx context.Context, getControlLibraryOptions *GetControlLibraryOptions) (result *ControlLibrary, response *core.DetailedResponse, err error)
getControlLibrary(params)
control_library_get(
        self,
        instance_id: str,
        control_library_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ControlLibrary> getControlLibrary(GetControlLibraryOptions getControlLibraryOptions)

Request

Instantiate the GetControlLibraryOptions struct and set the fields to provide parameter values for the GetControlLibrary method.

Use the GetControlLibraryOptions.Builder to create a GetControlLibraryOptions object that contains the parameter values for the getControlLibrary method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The predefined control library ID.

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetControlLibrary options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The predefined control library ID.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The predefined control library ID.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getControlLibrary options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/control_libraries/${control_library_id}"
  • getControlLibraryOptions := securityAndComplianceCenterService.NewGetControlLibraryOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      controlLibraryIDLink,
    )
    
    controlLibrary, response, err := securityAndComplianceCenterService.GetControlLibrary(getControlLibraryOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(controlLibrary, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      controlLibraryId: controlLibraryIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getControlLibrary(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_control_library(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      control_library_id=control_library_id_link,
    )
    control_library = response.get_result()
    
    print(json.dumps(control_library, indent=2))
  • GetControlLibraryOptions getControlLibraryOptions = new GetControlLibraryOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .controlLibraryId(controlLibraryIdLink)
      .build();
    
    Response<ControlLibrary> response = securityAndComplianceCenterService.getControlLibrary(getControlLibraryOptions).execute();
    ControlLibrary controlLibrary = response.getResult();
    
    System.out.println(controlLibrary);

Response

A Control Library

A Control Library.

A Control Library.

A Control Library.

A Control Library.

Status Code

  • The control library was retrieved successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Delete a custom control library

Delete a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Delete a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Delete a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Delete a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

Delete a custom control library by specifying its ID.

With Security and Compliance Center, you can create a custom control library that is specific to your organization's needs. You define the controls and specifications before you map previously created assessments. Each control has several specifications and assessments that are mapped to it. A specification is a defined requirement that is specific to a component. An assessment, or several, are mapped to each specification with a detailed evaluation that is done to check whether the specification is compliant. For more information, see Creating custom libraries.

DELETE /instances/{instance_id}/v3/control_libraries/{control_library_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteCustomControlLibrary(deleteCustomControlLibraryOptions *DeleteCustomControlLibraryOptions) (result *ControlLibrary, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteCustomControlLibraryWithContext(ctx context.Context, deleteCustomControlLibraryOptions *DeleteCustomControlLibraryOptions) (result *ControlLibrary, response *core.DetailedResponse, err error)
deleteCustomControlLibrary(params)
custom_control_library_delete(
        self,
        instance_id: str,
        control_library_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ControlLibrary> deleteCustomControlLibrary(DeleteCustomControlLibraryOptions deleteCustomControlLibraryOptions)

Request

Instantiate the DeleteCustomControlLibraryOptions struct and set the fields to provide parameter values for the DeleteCustomControlLibrary method.

Use the DeleteCustomControlLibraryOptions.Builder to create a DeleteCustomControlLibraryOptions object that contains the parameter values for the deleteCustomControlLibrary method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The predefined control library ID.

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The DeleteCustomControlLibrary options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The predefined control library ID.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The predefined control library ID.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The deleteCustomControlLibrary options.

  • curl -X DELETE --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/control_libraries/${control_library_id}"
  • deleteCustomControlLibraryOptions := securityAndComplianceCenterService.NewDeleteCustomControlLibraryOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      controlLibraryIDLink,
    )
    
    controlLibrary, response, err := securityAndComplianceCenterService.DeleteCustomControlLibrary(deleteCustomControlLibraryOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(controlLibrary, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      controlLibraryId: controlLibraryIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.deleteCustomControlLibrary(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.delete_custom_control_library(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      control_library_id=control_library_id_link,
    )
    control_library = response.get_result()
    
    print(json.dumps(control_library, indent=2))
  • DeleteCustomControlLibraryOptions deleteCustomControlLibraryOptions = new DeleteCustomControlLibraryOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .controlLibraryId(controlLibraryIdLink)
      .build();
    
    Response<ControlLibrary> response = securityAndComplianceCenterService.deleteCustomControlLibrary(deleteCustomControlLibraryOptions).execute();
    ControlLibrary controlLibrary = response.getResult();
    
    System.out.println(controlLibrary);

Response

A Control Library

A Control Library.

A Control Library.

A Control Library.

A Control Library.

Status Code

  • The control library was deleted successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Create a custom profile

Create a user-defined custom profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Create a user-defined custom profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Create a user-defined custom profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Create a user-defined custom profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Create a user-defined custom profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

POST /instances/{instance_id}/v3/profiles
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateProfile(createProfileOptions *CreateProfileOptions) (result *Profile, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateProfileWithContext(ctx context.Context, createProfileOptions *CreateProfileOptions) (result *Profile, response *core.DetailedResponse, err error)
createProfile(params)
profile_create(
        self,
        instance_id: str,
        *,
        profile_name: Optional[str] = None,
        profile_description: Optional[str] = None,
        profile_version: Optional[str] = None,
        latest: Optional[bool] = None,
        version_group_label: Optional[str] = None,
        controls: Optional[List['ProfileControlsPrototype']] = None,
        default_parameters: Optional[List['DefaultParameters']] = None,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Profile> createProfile(CreateProfileOptions createProfileOptions)

Request

Instantiate the CreateProfileOptions struct and set the fields to provide parameter values for the CreateProfile method.

Use the CreateProfileOptions.Builder to create a CreateProfileOptions object that contains the parameter values for the createProfile method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The request payload to create a profile.

WithContext method only

The CreateProfile options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The name of the profile.

    Possible values: Value must match regular expression /^.*$/

  • A description of what the profile should represent.

    Possible values: Value must match regular expression /^.*$/

  • The version of the profile.

    Possible values: Value must match regular expression /^\\d.\\d.\\d$/

  • Determines if the profile is up to date with the latest revisions.

  • The unique identifier of the revision.

  • List of controls associated with the profile.

  • The default values when using the profile.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The name of the profile.

    Possible values: Value must match regular expression /^.*$/

  • A description of what the profile should represent.

    Possible values: Value must match regular expression /^.*$/

  • The version of the profile.

    Possible values: Value must match regular expression /^\\d.\\d.\\d$/

  • Determines if the profile is up to date with the latest revisions.

  • The unique identifier of the revision.

  • List of controls associated with the profile.

  • The default values when using the profile.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The createProfile options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{}'   "${base_url}/instances/${instance_id}/v3/profiles"
  • createProfileOptions := securityAndComplianceCenterService.NewCreateProfileOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    profile, response, err := securityAndComplianceCenterService.CreateProfile(createProfileOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profile, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createProfile(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.create_profile(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    profile = response.get_result()
    
    print(json.dumps(profile, indent=2))
  • CreateProfileOptions createProfileOptions = new CreateProfileOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<Profile> response = securityAndComplianceCenterService.createProfile(createProfileOptions).execute();
    Profile profile = response.getResult();
    
    System.out.println(profile);

Response

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

Status Code

  • The profile was created successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get all profiles

Retrieve all profiles, including predefined and custom profiles.

With Security and Compliance Center, you can take advantage of predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase by using an existing library as a starting point. For more information, see Building custom profiles.

Retrieve all profiles, including predefined and custom profiles.

With Security and Compliance Center, you can take advantage of predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase by using an existing library as a starting point. For more information, see Building custom profiles.

Retrieve all profiles, including predefined and custom profiles.

With Security and Compliance Center, you can take advantage of predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase by using an existing library as a starting point. For more information, see Building custom profiles.

Retrieve all profiles, including predefined and custom profiles.

With Security and Compliance Center, you can take advantage of predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase by using an existing library as a starting point. For more information, see Building custom profiles.

Retrieve all profiles, including predefined and custom profiles.

With Security and Compliance Center, you can take advantage of predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase by using an existing library as a starting point. For more information, see Building custom profiles.

GET /instances/{instance_id}/v3/profiles
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProfiles(listProfilesOptions *ListProfilesOptions) (result *ProfileCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProfilesWithContext(ctx context.Context, listProfilesOptions *ListProfilesOptions) (result *ProfileCollection, response *core.DetailedResponse, err error)
listProfiles(params)
list(
        self,
        instance_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileCollection> listProfiles(ListProfilesOptions listProfilesOptions)

Request

Instantiate the ListProfilesOptions struct and set the fields to provide parameter values for the ListProfiles method.

Use the ListProfilesOptions.Builder to create a ListProfilesOptions object that contains the parameter values for the listProfiles method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The ListProfiles options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The listProfiles options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/profiles"
  • listProfilesOptions := securityAndComplianceCenterService.NewListProfilesOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    profileCollection, response, err := securityAndComplianceCenterService.ListProfiles(listProfilesOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileCollection, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.listProfiles(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.list_profiles(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    profile_collection = response.get_result()
    
    print(json.dumps(profile_collection, indent=2))
  • ListProfilesOptions listProfilesOptions = new ListProfilesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<ProfileCollection> response = securityAndComplianceCenterService.listProfiles(listProfilesOptions).execute();
    ProfileCollection profileCollection = response.getResult();
    
    System.out.println(profileCollection);

Response

Show a list of Profiles

Show a list of Profiles.

Show a list of Profiles.

Show a list of Profiles.

Show a list of Profiles.

Status Code

  • The profiles were retrieved successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Update a custom profile

Update the details of a user-defined profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Update the details of a user-defined profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Update the details of a user-defined profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Update the details of a user-defined profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Update the details of a user-defined profile.

With Security and Compliance Center, you can create a profile that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

PUT /instances/{instance_id}/v3/profiles/{profile_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceProfile(replaceProfileOptions *ReplaceProfileOptions) (result *Profile, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceProfileWithContext(ctx context.Context, replaceProfileOptions *ReplaceProfileOptions) (result *Profile, response *core.DetailedResponse, err error)
replaceProfile(params)
profile_replace(
        self,
        instance_id: str,
        profile_id: str,
        *,
        profile_name: Optional[str] = None,
        profile_description: Optional[str] = None,
        profile_version: Optional[str] = None,
        latest: Optional[bool] = None,
        version_group_label: Optional[str] = None,
        controls: Optional[List['ProfileControlsPrototype']] = None,
        default_parameters: Optional[List['DefaultParameters']] = None,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Profile> replaceProfile(ReplaceProfileOptions replaceProfileOptions)

Request

Instantiate the ReplaceProfileOptions struct and set the fields to provide parameter values for the ReplaceProfile method.

Use the ReplaceProfileOptions.Builder to create a ReplaceProfileOptions object that contains the parameter values for the replaceProfile method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The request payload to update a profile.

WithContext method only

The ReplaceProfile options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The name of the profile.

    Possible values: Value must match regular expression /^.*$/

  • A description of what the profile should represent.

    Possible values: Value must match regular expression /^.*$/

  • The version of the profile.

    Possible values: Value must match regular expression /^\\d.\\d.\\d$/

  • Determines if the profile is up to date with the latest revisions.

  • The unique identifier of the revision.

  • List of controls associated with the profile.

  • The default values when using the profile.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The name of the profile.

    Possible values: Value must match regular expression /^.*$/

  • A description of what the profile should represent.

    Possible values: Value must match regular expression /^.*$/

  • The version of the profile.

    Possible values: Value must match regular expression /^\\d.\\d.\\d$/

  • Determines if the profile is up to date with the latest revisions.

  • The unique identifier of the revision.

  • List of controls associated with the profile.

  • The default values when using the profile.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The replaceProfile options.

  • curl -X PUT --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{}'   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}"
  • replaceProfileOptions := securityAndComplianceCenterService.NewReplaceProfileOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
    )
    
    profile, response, err := securityAndComplianceCenterService.ReplaceProfile(replaceProfileOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profile, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.replaceProfile(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.replace_profile(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
    )
    profile = response.get_result()
    
    print(json.dumps(profile, indent=2))
  • ReplaceProfileOptions replaceProfileOptions = new ReplaceProfileOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .build();
    
    Response<Profile> response = securityAndComplianceCenterService.replaceProfile(replaceProfileOptions).execute();
    Profile profile = response.getResult();
    
    System.out.println(profile);

Response

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

Status Code

  • The profile was updated successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get a profile

Retrieve a profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Retrieve a profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Retrieve a profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Retrieve a profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Retrieve a profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

GET /instances/{instance_id}/v3/profiles/{profile_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetProfile(getProfileOptions *GetProfileOptions) (result *Profile, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetProfileWithContext(ctx context.Context, getProfileOptions *GetProfileOptions) (result *Profile, response *core.DetailedResponse, err error)
getProfile(params)
profile_get(
        self,
        instance_id: str,
        profile_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Profile> getProfile(GetProfileOptions getProfileOptions)

Request

Instantiate the GetProfileOptions struct and set the fields to provide parameter values for the GetProfile method.

Use the GetProfileOptions.Builder to create a GetProfileOptions object that contains the parameter values for the getProfile method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetProfile options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getProfile options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}"
  • getProfileOptions := securityAndComplianceCenterService.NewGetProfileOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
    )
    
    profile, response, err := securityAndComplianceCenterService.GetProfile(getProfileOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profile, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getProfile(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_profile(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
    )
    profile = response.get_result()
    
    print(json.dumps(profile, indent=2))
  • GetProfileOptions getProfileOptions = new GetProfileOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .build();
    
    Response<Profile> response = securityAndComplianceCenterService.getProfile(getProfileOptions).execute();
    Profile profile = response.getResult();
    
    System.out.println(profile);

Response

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

Status Code

  • The profile was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Delete a custom profile

Delete a custom profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Delete a custom profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Delete a custom profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Delete a custom profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Delete a custom profile by specifying the profile ID.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

DELETE /instances/{instance_id}/v3/profiles/{profile_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteCustomProfile(deleteCustomProfileOptions *DeleteCustomProfileOptions) (result *Profile, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteCustomProfileWithContext(ctx context.Context, deleteCustomProfileOptions *DeleteCustomProfileOptions) (result *Profile, response *core.DetailedResponse, err error)
deleteCustomProfile(params)
custom_profile_delete(
        self,
        instance_id: str,
        profile_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Profile> deleteCustomProfile(DeleteCustomProfileOptions deleteCustomProfileOptions)

Request

Instantiate the DeleteCustomProfileOptions struct and set the fields to provide parameter values for the DeleteCustomProfile method.

Use the DeleteCustomProfileOptions.Builder to create a DeleteCustomProfileOptions object that contains the parameter values for the deleteCustomProfile method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The DeleteCustomProfile options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The deleteCustomProfile options.

  • curl -X DELETE --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}"
  • deleteCustomProfileOptions := securityAndComplianceCenterService.NewDeleteCustomProfileOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
    )
    
    profile, response, err := securityAndComplianceCenterService.DeleteCustomProfile(deleteCustomProfileOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profile, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.deleteCustomProfile(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.delete_custom_profile(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
    )
    profile = response.get_result()
    
    print(json.dumps(profile, indent=2))
  • DeleteCustomProfileOptions deleteCustomProfileOptions = new DeleteCustomProfileOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .build();
    
    Response<Profile> response = securityAndComplianceCenterService.deleteCustomProfile(deleteCustomProfileOptions).execute();
    Profile profile = response.getResult();
    
    System.out.println(profile);

Response

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

A group of controls that are related to a compliance objective.

Status Code

  • The profile was deleted successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The action was not allowed

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 405,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "error",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 405,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "error",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Update custom profile parameters

Update the parameters of a custom profile.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Update the parameters of a custom profile.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Update the parameters of a custom profile.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Update the parameters of a custom profile.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

Update the parameters of a custom profile.

With Security and Compliance Center, you can utilize predefined profiles that are curated based on industry standards. Or you can choose to create one that is specific to your usecase, by using an existing library as a starting point. For more information, see Building custom profiles.

PUT /instances/{instance_id}/v3/profiles/{profile_id}/parameters
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceProfileParameters(replaceProfileParametersOptions *ReplaceProfileParametersOptions) (result *ProfileDefaultParametersResponse, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceProfileParametersWithContext(ctx context.Context, replaceProfileParametersOptions *ReplaceProfileParametersOptions) (result *ProfileDefaultParametersResponse, response *core.DetailedResponse, err error)
replaceProfileParameters(params)
profile_parameters_replace(
        self,
        instance_id: str,
        profile_id: str,
        *,
        id: Optional[str] = None,
        default_parameters: Optional[List['DefaultParameters']] = None,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileDefaultParametersResponse> replaceProfileParameters(ReplaceProfileParametersOptions replaceProfileParametersOptions)

Request

Instantiate the ReplaceProfileParametersOptions struct and set the fields to provide parameter values for the ReplaceProfileParameters method.

Use the ReplaceProfileParametersOptions.Builder to create a ReplaceProfileParametersOptions object that contains the parameter values for the replaceProfileParameters method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The request payload to update a custom profile's parameters.

WithContext method only

The ReplaceProfileParameters options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The ID of the Profile.

  • list of parameters given by default.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The ID of the Profile.

  • list of parameters given by default.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The replaceProfileParameters options.

  • curl -X PUT --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{}'   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/parameters"
  • replaceProfileParametersOptions := securityAndComplianceCenterService.NewReplaceProfileParametersOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
    )
    
    profileDefaultParametersResponse, response, err := securityAndComplianceCenterService.ReplaceProfileParameters(replaceProfileParametersOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileDefaultParametersResponse, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.replaceProfileParameters(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.replace_profile_parameters(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
    )
    profile_default_parameters_response = response.get_result()
    
    print(json.dumps(profile_default_parameters_response, indent=2))
  • ReplaceProfileParametersOptions replaceProfileParametersOptions = new ReplaceProfileParametersOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .build();
    
    Response<ProfileDefaultParametersResponse> response = securityAndComplianceCenterService.replaceProfileParameters(replaceProfileParametersOptions).execute();
    ProfileDefaultParametersResponse profileDefaultParametersResponse = response.getResult();
    
    System.out.println(profileDefaultParametersResponse);

Response

The default parameters of a profile.

The default parameters of a profile.

The default parameters of a profile.

The default parameters of a profile.

The default parameters of a profile.

Status Code

  • The parameters were updated successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

List profile parameters for a given profile

List the parameters used in the Profile

List the parameters used in the Profile.

List the parameters used in the Profile.

List the parameters used in the Profile.

List the parameters used in the Profile.

GET /instances/{instance_id}/v3/profiles/{profile_id}/parameters
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProfileParameters(listProfileParametersOptions *ListProfileParametersOptions) (result *ProfileDefaultParametersResponse, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProfileParametersWithContext(ctx context.Context, listProfileParametersOptions *ListProfileParametersOptions) (result *ProfileDefaultParametersResponse, response *core.DetailedResponse, err error)
listProfileParameters(params)
profile_parameters_list(
        self,
        instance_id: str,
        profile_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProfileDefaultParametersResponse> listProfileParameters(ListProfileParametersOptions listProfileParametersOptions)

Request

Instantiate the ListProfileParametersOptions struct and set the fields to provide parameter values for the ListProfileParameters method.

Use the ListProfileParametersOptions.Builder to create a ListProfileParametersOptions object that contains the parameter values for the listProfileParameters method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

WithContext method only

The ListProfileParameters options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:

The listProfileParameters options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/parameters"
  • listProfileParametersOptions := securityAndComplianceCenterService.NewListProfileParametersOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
    )
    
    profileDefaultParametersResponse, response, err := securityAndComplianceCenterService.ListProfileParameters(listProfileParametersOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(profileDefaultParametersResponse, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.listProfileParameters(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.list_profile_parameters(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
    )
    profile_default_parameters_response = response.get_result()
    
    print(json.dumps(profile_default_parameters_response, indent=2))
  • ListProfileParametersOptions listProfileParametersOptions = new ListProfileParametersOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .build();
    
    Response<ProfileDefaultParametersResponse> response = securityAndComplianceCenterService.listProfileParameters(listProfileParametersOptions).execute();
    ProfileDefaultParametersResponse profileDefaultParametersResponse = response.getResult();
    
    System.out.println(profileDefaultParametersResponse);

Response

The default parameters of a profile.

The default parameters of a profile.

The default parameters of a profile.

The default parameters of a profile.

The default parameters of a profile.

Status Code

  • The profiles retrieval was successful.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Compare profiles

Compare the version of the profile that you're currently using with your attachment to the most recent profile version. By comparing them, you can view what controls were added, removed, or modified. For more information, see Building custom profiles.

Compare the version of the profile that you're currently using with your attachment to the most recent profile version. By comparing them, you can view what controls were added, removed, or modified. For more information, see Building custom profiles.

Compare the version of the profile that you're currently using with your attachment to the most recent profile version. By comparing them, you can view what controls were added, removed, or modified. For more information, see Building custom profiles.

Compare the version of the profile that you're currently using with your attachment to the most recent profile version. By comparing them, you can view what controls were added, removed, or modified. For more information, see Building custom profiles.

Compare the version of the profile that you're currently using with your attachment to the most recent profile version. By comparing them, you can view what controls were added, removed, or modified. For more information, see Building custom profiles.

GET /instances/{instance_id}/v3/profiles/{profile_id}/compare
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CompareProfiles(compareProfilesOptions *CompareProfilesOptions) (result *ComparePredefinedProfilesResponse, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CompareProfilesWithContext(ctx context.Context, compareProfilesOptions *CompareProfilesOptions) (result *ComparePredefinedProfilesResponse, response *core.DetailedResponse, err error)
compareProfiles(params)
compare_profiles(
        self,
        instance_id: str,
        profile_id: str,
        *,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ComparePredefinedProfilesResponse> compareProfiles(CompareProfilesOptions compareProfilesOptions)

Request

Instantiate the CompareProfilesOptions struct and set the fields to provide parameter values for the CompareProfiles method.

Use the CompareProfilesOptions.Builder to create a CompareProfilesOptions object that contains the parameter values for the compareProfiles method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The profile ID.

    Example: 48279384-3d29-4089-8259-8ed354774b4a

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The CompareProfiles options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The profile ID.

    Examples:
  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The compareProfiles options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/profiles/${profile_id}/compare"
  • compareProfilesOptions := securityAndComplianceCenterService.NewCompareProfilesOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      profileIDLink,
    )
    
    comparePredefinedProfilesResponse, response, err := securityAndComplianceCenterService.CompareProfiles(compareProfilesOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(comparePredefinedProfilesResponse, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      profileId: profileIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.compareProfiles(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.compare_profiles(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      profile_id=profile_id_link,
    )
    compare_predefined_profiles_response = response.get_result()
    
    print(json.dumps(compare_predefined_profiles_response, indent=2))
  • CompareProfilesOptions compareProfilesOptions = new CompareProfilesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .profileId(profileIdLink)
      .build();
    
    Response<ComparePredefinedProfilesResponse> response = securityAndComplianceCenterService.compareProfiles(compareProfilesOptions).execute();
    ComparePredefinedProfilesResponse comparePredefinedProfilesResponse = response.getResult();
    
    System.out.println(comparePredefinedProfilesResponse);

Response

The predefined profile comparison response.

The predefined profile comparison response.

The predefined profile comparison response.

The predefined profile comparison response.

The predefined profile comparison response.

Status Code

  • The profile was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Create a scope

Create a scope.

Create a scope.

Create a scope.

Create a scope.

Create a scope.

POST /instances/{instance_id}/v3/scopes
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateScope(createScopeOptions *CreateScopeOptions) (result *Scope, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateScopeWithContext(ctx context.Context, createScopeOptions *CreateScopeOptions) (result *Scope, response *core.DetailedResponse, err error)
createScope(params)
scope_create(
        self,
        instance_id: str,
        *,
        name: Optional[str] = None,
        description: Optional[str] = None,
        environment: Optional[str] = None,
        properties: Optional[List['ScopeProperty']] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Scope> createScope(CreateScopeOptions createScopeOptions)

Request

Instantiate the CreateScopeOptions struct and set the fields to provide parameter values for the CreateScope method.

Use the CreateScopeOptions.Builder to create a CreateScopeOptions object that contains the parameter values for the createScope method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

The request payload to create a scope.

Examples:
{
  "environment": "ibm-cloud",
  "name": "ibm scope",
  "description": "The scope that is defined for IBM resources.",
  "properties": [
    {
      "name": "scope_id",
      "value": "1234567"
    },
    {
      "name": "scope_type",
      "value": "account"
    },
    {
      "name": "exclusions",
      "value": [
        {
          "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
          "scope_type": "account.resource_group"
        }
      ]
    }
  ]
}

WithContext method only

The CreateScope options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The scope name.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The scope description.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The scope environment.

    Possible values: 0 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The properties that are supported for scoping by this environment.

    Possible values: 0 ≤ number of items ≤ 300

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The scope name.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The scope description.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The scope environment.

    Possible values: 0 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The properties that are supported for scoping by this environment.

    Possible values: 0 ≤ number of items ≤ 300

    Examples:

The createScope options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "environment": "ibm-cloud", "name": "ibm scope", "description": "The scope that is defined for IBM resources.", "properties": [ { "name": "scope_id", "value": "1234567" }, { "name": "scope_type", "value": "account" }, { "name": "exclusions", "value": [ { "scope_id": "cg3335893hh1428692d6747cf300yeb5a", "scope_type": "account.resource_group" } ] } ] }'   "${base_url}/instances/${instance_id}/v3/scopes"
  • scopePropertyModel := &securityandcompliancecenterv3.ScopePropertyScopeType{
      Name: core.StringPtr("scope_id"),
      Value: core.StringPtr("1234567"),
    }
    
    createScopeOptions := securityAndComplianceCenterService.NewCreateScopeOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    createScopeOptions.SetName("ibm scope")
    createScopeOptions.SetDescription("The scope that is defined for IBM resources.")
    createScopeOptions.SetEnvironment("ibm-cloud")
    createScopeOptions.SetProperties([]securityandcompliancecenterv3.ScopePropertyIntf{scopePropertyModel})
    
    scope, response, err := securityAndComplianceCenterService.CreateScope(createScopeOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(scope, "", "  ")
    fmt.Println(string(b))
  • // Request models needed by this operation.
    
    // ScopePropertyScopeType
    const scopePropertyModel = {
      name: 'scope_id',
      value: '1234567',
    };
    
    const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      name: 'ibm scope',
      description: 'The scope that is defined for IBM resources.',
      environment: 'ibm-cloud',
      properties: [scopePropertyModel],
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createScope(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • scope_property_model = {
      'name': 'scope_id',
      'value': '1234567',
    }
    
    response = security_and_compliance_center_service.create_scope(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      name='ibm scope',
      description='The scope that is defined for IBM resources.',
      environment='ibm-cloud',
      properties=[scope_property_model],
    )
    scope = response.get_result()
    
    print(json.dumps(scope, indent=2))
  • ScopePropertyScopeType scopePropertyModel = new ScopePropertyScopeType.Builder()
      .name("scope_id")
      .value("1234567")
      .build();
    CreateScopeOptions createScopeOptions = new CreateScopeOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .name("ibm scope")
      .description("The scope that is defined for IBM resources.")
      .environment("ibm-cloud")
      .xProperties(java.util.Arrays.asList(scopePropertyModel))
      .build();
    
    Response<Scope> response = securityAndComplianceCenterService.createScope(createScopeOptions).execute();
    Scope scope = response.getResult();
    
    System.out.println(scope);

Response

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

Status Code

  • The scope was created successfully.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
      "account_id": "130003ea8bfa43c5aacea07a86da3000",
      "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
      "created_by": "IBMid-310002RVBN",
      "created_on": "2024-07-09T13:51:07Z",
      "updated_by": "IBMid-310002RVBN",
      "updated_on": "2024-07-09T13:51:07Z",
      "environment": "ibm-cloud",
      "name": "ibm scope",
      "description": "The scope that is defined for IBM resources.",
      "properties": [
        {
          "name": "scope_id",
          "value": "1234567"
        },
        {
          "name": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ],
      "attachment_count": 1
    }
  • {
      "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
      "account_id": "130003ea8bfa43c5aacea07a86da3000",
      "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
      "created_by": "IBMid-310002RVBN",
      "created_on": "2024-07-09T13:51:07Z",
      "updated_by": "IBMid-310002RVBN",
      "updated_on": "2024-07-09T13:51:07Z",
      "environment": "ibm-cloud",
      "name": "ibm scope",
      "description": "The scope that is defined for IBM resources.",
      "properties": [
        {
          "name": "scope_id",
          "value": "1234567"
        },
        {
          "name": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ],
      "attachment_count": 1
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Get all scopes

Get all scopes.

Get all scopes.

Get all scopes.

Get all scopes.

Get all scopes.

GET /instances/{instance_id}/v3/scopes
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListScopes(listScopesOptions *ListScopesOptions) (result *ScopeCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListScopesWithContext(ctx context.Context, listScopesOptions *ListScopesOptions) (result *ScopeCollection, response *core.DetailedResponse, err error)
listScopes(params)
list(
        self,
        instance_id: str,
        *,
        limit: Optional[int] = None,
        start: Optional[str] = None,
        name: Optional[str] = None,
        description: Optional[str] = None,
        environment: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ScopeCollection> listScopes(ListScopesOptions listScopesOptions)

Request

Instantiate the ListScopesOptions struct and set the fields to provide parameter values for the ListScopes method.

Use the ListScopesOptions.Builder to create a ListScopesOptions object that contains the parameter values for the listScopes method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression ^.*$

  • determine name of scope returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^.*$

  • determine descriptions of scope returned in response.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression ^.*$

  • determine environment of scopes returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^.*$

WithContext method only

The ListScopes options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression /^.*$/

  • determine name of scope returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^.*$/

  • determine descriptions of scope returned in response.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^.*$/

  • determine environment of scopes returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^.*$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression /^.*$/

  • determine name of scope returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^.*$/

  • determine descriptions of scope returned in response.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^.*$/

  • determine environment of scopes returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^.*$/

The listScopes options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/scopes"
  • listScopesOptions := &securityandcompliancecenterv3.ListScopesOptions{
      InstanceID: core.StringPtr("acd7032c-15a3-484f-bf5b-67d41534d940"),
      Limit: core.Int64Ptr(int64(10)),
      Name: core.StringPtr("testString"),
      Description: core.StringPtr("testString"),
      Environment: core.StringPtr("testString"),
    }
    
    pager, err := securityAndComplianceCenterService.NewScopesPager(listScopesOptions)
    if err != nil {
      panic(err)
    }
    
    var allResults []securityandcompliancecenterv3.Scope
    for pager.HasNext() {
      nextPage, err := pager.GetNext()
      if err != nil {
        panic(err)
      }
      allResults = append(allResults, nextPage...)
    }
    b, _ := json.MarshalIndent(allResults, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      limit: 10,
      name: 'testString',
      description: 'testString',
      environment: 'testString',
    };
    
    const allResults = [];
    try {
      const pager = new SecurityAndComplianceCenterV3.ScopesPager(securityAndComplianceCenterService, params);
      while (pager.hasNext()) {
        const nextPage = await pager.getNext();
        expect(nextPage).not.toBeNull();
        allResults.push(...nextPage);
      }
      console.log(JSON.stringify(allResults, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • all_results = []
    pager = ScopesPager(
      client=security_and_compliance_center_service,
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      limit=10,
      name='testString',
      description='testString',
      environment='testString',
    )
    while pager.has_next():
      next_page = pager.get_next()
      assert next_page is not None
      all_results.extend(next_page)
    
    print(json.dumps(all_results, indent=2))
  • ListScopesOptions listScopesOptions = new ListScopesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .limit(Long.valueOf("10"))
      .name("testString")
      .description("testString")
      .environment("testString")
      .build();
    
    ScopesPager pager = new ScopesPager(securityAndComplianceCenterService, listScopesOptions);
    List<Scope> allResults = new ArrayList<>();
    while (pager.hasNext()) {
      List<Scope> nextPage = pager.getNext();
      allResults.addAll(nextPage);
    }
    
    System.out.println(GsonSingleton.getGson().toJson(allResults));

Response

A list of scopes.

A list of scopes.

A list of scopes.

A list of scopes.

A list of scopes.

Status Code

  • The scopes were retrieved successfully.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "limit": 25,
      "total_count": 1,
      "first": {
        "href": "https://us-east.compliance.cloud.ibm.com/instances/6ebd0a20-6508-44f0-96c4-124426da9323/v3/scopes?environment=ibm-cloud&limit=25"
      },
      "next": {
        "href": ""
      },
      "scopes": [
        {
          "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
          "created_by": "IBMid-310002RVBN",
          "created_on": "2024-07-09T13:51:07Z",
          "updated_by": "IBMid-310002RVBN",
          "updated_on": "2024-07-09T13:51:07Z",
          "environment": "ibm-cloud",
          "name": "ibm scope",
          "description": "The scope that is defined for IBM resources.",
          "properties": [
            {
              "name": "scope_id",
              "value": "1234567"
            },
            {
              "name": "scope_type",
              "value": "account"
            },
            {
              "name": "exclusions",
              "value": [
                {
                  "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
                  "scope_type": "account.resource_group"
                }
              ]
            }
          ],
          "attachment_count": 1
        }
      ]
    }
  • {
      "limit": 25,
      "total_count": 1,
      "first": {
        "href": "https://us-east.compliance.cloud.ibm.com/instances/6ebd0a20-6508-44f0-96c4-124426da9323/v3/scopes?environment=ibm-cloud&limit=25"
      },
      "next": {
        "href": ""
      },
      "scopes": [
        {
          "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
          "created_by": "IBMid-310002RVBN",
          "created_on": "2024-07-09T13:51:07Z",
          "updated_by": "IBMid-310002RVBN",
          "updated_on": "2024-07-09T13:51:07Z",
          "environment": "ibm-cloud",
          "name": "ibm scope",
          "description": "The scope that is defined for IBM resources.",
          "properties": [
            {
              "name": "scope_id",
              "value": "1234567"
            },
            {
              "name": "scope_type",
              "value": "account"
            },
            {
              "name": "exclusions",
              "value": [
                {
                  "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
                  "scope_type": "account.resource_group"
                }
              ]
            }
          ],
          "attachment_count": 1
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Update a scope

Update the details of a scope.

Update the details of a scope.

Update the details of a scope.

Update the details of a scope.

Update the details of a scope.

PATCH /instances/{instance_id}/v3/scopes/{scope_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpdateScope(updateScopeOptions *UpdateScopeOptions) (result *Scope, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpdateScopeWithContext(ctx context.Context, updateScopeOptions *UpdateScopeOptions) (result *Scope, response *core.DetailedResponse, err error)
updateScope(params)
scope_update(
        self,
        instance_id: str,
        scope_id: str,
        *,
        name: Optional[str] = None,
        description: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Scope> updateScope(UpdateScopeOptions updateScopeOptions)

Request

Instantiate the UpdateScopeOptions struct and set the fields to provide parameter values for the UpdateScope method.

Use the UpdateScopeOptions.Builder to create a UpdateScopeOptions object that contains the parameter values for the updateScope method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scope being targeted.

The request payload to update a scope.

Examples:
{
  "name": "updated name of scope",
  "description": "updated scope description"
}

WithContext method only

The UpdateScope options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The scope name.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The scope description.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The scope name.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The scope description.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:

The updateScope options.

  • curl -X PATCH --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "name": "updated name of scope", "description": "updated scope description" }'   "${base_url}/instances/${instance_id}/v3/scopes/${scope_id}"
  • updateScopeOptions := securityAndComplianceCenterService.NewUpdateScopeOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
    )
    updateScopeOptions.SetName("updated name of scope")
    updateScopeOptions.SetDescription("updated scope description")
    
    scope, response, err := securityAndComplianceCenterService.UpdateScope(updateScopeOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(scope, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      scopeId: 'testString',
      name: 'updated name of scope',
      description: 'updated scope description',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.updateScope(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.update_scope(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      scope_id='testString',
      name='updated name of scope',
      description='updated scope description',
    )
    scope = response.get_result()
    
    print(json.dumps(scope, indent=2))
  • UpdateScopeOptions updateScopeOptions = new UpdateScopeOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .scopeId("testString")
      .name("updated name of scope")
      .description("updated scope description")
      .build();
    
    Response<Scope> response = securityAndComplianceCenterService.updateScope(updateScopeOptions).execute();
    Scope scope = response.getResult();
    
    System.out.println(scope);

Response

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

Status Code

  • The scope was updated successfully.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
      "account_id": "130003ea8bfa43c5aacea07a86da3000",
      "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
      "created_by": "IBMid-310002RVBN",
      "created_on": "2024-07-09T13:51:07Z",
      "updated_by": "IBMid-310002RVBN",
      "updated_on": "2024-07-09T13:51:07Z",
      "environment": "ibm-cloud",
      "name": "ibm scope",
      "description": "The scope that is defined for IBM resources.",
      "properties": [
        {
          "name": "scope_id",
          "value": "1234567"
        },
        {
          "name": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ],
      "attachment_count": 1
    }
  • {
      "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
      "account_id": "130003ea8bfa43c5aacea07a86da3000",
      "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
      "created_by": "IBMid-310002RVBN",
      "created_on": "2024-07-09T13:51:07Z",
      "updated_by": "IBMid-310002RVBN",
      "updated_on": "2024-07-09T13:51:07Z",
      "environment": "ibm-cloud",
      "name": "ibm scope",
      "description": "The scope that is defined for IBM resources.",
      "properties": [
        {
          "name": "scope_id",
          "value": "1234567"
        },
        {
          "name": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ],
      "attachment_count": 1
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Get a scope

Get a scope by specifying the scope ID.

Get a scope by specifying the scope ID.

Get a scope by specifying the scope ID.

Get a scope by specifying the scope ID.

Get a scope by specifying the scope ID.

GET /instances/{instance_id}/v3/scopes/{scope_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetScope(getScopeOptions *GetScopeOptions) (result *Scope, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetScopeWithContext(ctx context.Context, getScopeOptions *GetScopeOptions) (result *Scope, response *core.DetailedResponse, err error)
getScope(params)
scope_get(
        self,
        instance_id: str,
        scope_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Scope> getScope(GetScopeOptions getScopeOptions)

Request

Instantiate the GetScopeOptions struct and set the fields to provide parameter values for the GetScope method.

Use the GetScopeOptions.Builder to create a GetScopeOptions object that contains the parameter values for the getScope method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scope being targeted.

WithContext method only

The GetScope options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

The getScope options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/scopes/${scope_id}"
  • getScopeOptions := securityAndComplianceCenterService.NewGetScopeOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
    )
    
    scope, response, err := securityAndComplianceCenterService.GetScope(getScopeOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(scope, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      scopeId: 'testString',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getScope(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_scope(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      scope_id='testString',
    )
    scope = response.get_result()
    
    print(json.dumps(scope, indent=2))
  • GetScopeOptions getScopeOptions = new GetScopeOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .scopeId("testString")
      .build();
    
    Response<Scope> response = securityAndComplianceCenterService.getScope(getScopeOptions).execute();
    Scope scope = response.getResult();
    
    System.out.println(scope);

Response

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

The group of resources that you want to evaluate. In the new API-based architecture, a scope can be an Enterprise, Account group, Account, or Resource group.

Status Code

  • The scope was successfully retrieved.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
      "account_id": "130003ea8bfa43c5aacea07a86da3000",
      "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
      "created_by": "IBMid-310002RVBN",
      "created_on": "2024-07-09T13:51:07Z",
      "updated_by": "IBMid-310002RVBN",
      "updated_on": "2024-07-09T13:51:07Z",
      "environment": "ibm-cloud",
      "name": "ibm scope",
      "description": "The scope that is defined for IBM resources.",
      "properties": [
        {
          "name": "scope_id",
          "value": "1234567"
        },
        {
          "name": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ],
      "attachment_count": 1
    }
  • {
      "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
      "account_id": "130003ea8bfa43c5aacea07a86da3000",
      "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
      "created_by": "IBMid-310002RVBN",
      "created_on": "2024-07-09T13:51:07Z",
      "updated_by": "IBMid-310002RVBN",
      "updated_on": "2024-07-09T13:51:07Z",
      "environment": "ibm-cloud",
      "name": "ibm scope",
      "description": "The scope that is defined for IBM resources.",
      "properties": [
        {
          "name": "scope_id",
          "value": "1234567"
        },
        {
          "name": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ],
      "attachment_count": 1
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Delete a scope

Delete a scope by specifying the scope ID.

Delete a scope by specifying the scope ID.

Delete a scope by specifying the scope ID.

Delete a scope by specifying the scope ID.

Delete a scope by specifying the scope ID.

DELETE /instances/{instance_id}/v3/scopes/{scope_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteScope(deleteScopeOptions *DeleteScopeOptions) (response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteScopeWithContext(ctx context.Context, deleteScopeOptions *DeleteScopeOptions) (response *core.DetailedResponse, err error)
deleteScope(params)
scope_delete(
        self,
        instance_id: str,
        scope_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Void> deleteScope(DeleteScopeOptions deleteScopeOptions)

Request

Instantiate the DeleteScopeOptions struct and set the fields to provide parameter values for the DeleteScope method.

Use the DeleteScopeOptions.Builder to create a DeleteScopeOptions object that contains the parameter values for the deleteScope method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scope being targeted.

WithContext method only

The DeleteScope options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

The deleteScope options.

  • curl -X DELETE --location --header "Authorization: Bearer ${iam_token}"   "${base_url}/instances/${instance_id}/v3/scopes/${scope_id}"
  • deleteScopeOptions := securityAndComplianceCenterService.NewDeleteScopeOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
    )
    
    response, err := securityAndComplianceCenterService.DeleteScope(deleteScopeOptions)
    if err != nil {
      panic(err)
    }
    if response.StatusCode != 204 {
      fmt.Printf("\nUnexpected response status code received from DeleteScope(): %d\n", response.StatusCode)
    }
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      scopeId: 'testString',
    };
    
    try {
      await securityAndComplianceCenterService.deleteScope(params);
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.delete_scope(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      scope_id='testString',
    )
  • DeleteScopeOptions deleteScopeOptions = new DeleteScopeOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .scopeId("testString")
      .build();
    
    Response<Void> response = securityAndComplianceCenterService.deleteScope(deleteScopeOptions).execute();

Response

Status Code

  • The scope was deleted successfully.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Create a subscope

Create a subscope.

Create a subscope.

Create a subscope.

Create a subscope.

Create a subscope.

POST /instances/{instance_id}/v3/scopes/{scope_id}/subscopes
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateSubscope(createSubscopeOptions *CreateSubscopeOptions) (result *SubScopeResponse, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateSubscopeWithContext(ctx context.Context, createSubscopeOptions *CreateSubscopeOptions) (result *SubScopeResponse, response *core.DetailedResponse, err error)
createSubscope(params)
subscope_create(
        self,
        instance_id: str,
        scope_id: str,
        *,
        subscopes: Optional[List['ScopePrototype']] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<SubScopeResponse> createSubscope(CreateSubscopeOptions createSubscopeOptions)

Request

Instantiate the CreateSubscopeOptions struct and set the fields to provide parameter values for the CreateSubscope method.

Use the CreateSubscopeOptions.Builder to create a CreateSubscopeOptions object that contains the parameter values for the createSubscope method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scope being targeted.

The request payload to create a subscope.

Examples:
{
  "subscopes": [
    {
      "environment": "ibm-cloud",
      "name": "ibm subscope",
      "description": "The subscope that is defined for IBM resources.",
      "properties": [
        {
          "name": "scope_id",
          "value": "1234567"
        },
        {
          "name": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ]
    }
  ]
}

WithContext method only

The CreateSubscope options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The array of subscopes.

    Possible values: 0 ≤ number of items ≤ 300

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The array of subscopes.

    Possible values: 0 ≤ number of items ≤ 300

    Examples:

The createSubscope options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "subscopes": [ { "environment": "ibm-cloud", "name": "ibm subscope", "description": "The subscope that is defined for IBM resources.", "properties": [ { "name": "scope_id", "value": "1234567" }, { "name": "scope_type", "value": "account" }, { "name": "exclusions", "value": [ { "scope_id": "cg3335893hh1428692d6747cf300yeb5a", "scope_type": "account.resource_group" } ] } ] } ] }'   "${base_url}/instances/${instance_id}/v3/scopes/${scope_id}/subscopes"
  • scopePropertyModel := &securityandcompliancecenterv3.ScopePropertyScopeType{
      Name: core.StringPtr("scope_id"),
      Value: core.StringPtr("1234567"),
    }
    
    scopePrototypeModel := &securityandcompliancecenterv3.ScopePrototype{
      Name: core.StringPtr("ibm subscope"),
      Description: core.StringPtr("The subscope that is defined for IBM resources."),
      Environment: core.StringPtr("ibm-cloud"),
      Properties: []securityandcompliancecenterv3.ScopePropertyIntf{scopePropertyModel},
    }
    
    createSubscopeOptions := securityAndComplianceCenterService.NewCreateSubscopeOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
    )
    createSubscopeOptions.SetSubscopes([]securityandcompliancecenterv3.ScopePrototype{*scopePrototypeModel})
    
    subScopeResponse, response, err := securityAndComplianceCenterService.CreateSubscope(createSubscopeOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(subScopeResponse, "", "  ")
    fmt.Println(string(b))
  • // Request models needed by this operation.
    
    // ScopePropertyScopeType
    const scopePropertyModel = {
      name: 'scope_id',
      value: '1234567',
    };
    
    // ScopePrototype
    const scopePrototypeModel = {
      name: 'ibm subscope',
      description: 'The subscope that is defined for IBM resources.',
      environment: 'ibm-cloud',
      properties: [scopePropertyModel],
    };
    
    const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      scopeId: 'testString',
      subscopes: [scopePrototypeModel],
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createSubscope(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • scope_property_model = {
      'name': 'scope_id',
      'value': '1234567',
    }
    
    scope_prototype_model = {
      'name': 'ibm subscope',
      'description': 'The subscope that is defined for IBM resources.',
      'environment': 'ibm-cloud',
      'properties': [scope_property_model],
    }
    
    response = security_and_compliance_center_service.create_subscope(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      scope_id='testString',
      subscopes=[scope_prototype_model],
    )
    sub_scope_response = response.get_result()
    
    print(json.dumps(sub_scope_response, indent=2))
  • ScopePropertyScopeType scopePropertyModel = new ScopePropertyScopeType.Builder()
      .name("scope_id")
      .value("1234567")
      .build();
    ScopePrototype scopePrototypeModel = new ScopePrototype.Builder()
      .name("ibm subscope")
      .description("The subscope that is defined for IBM resources.")
      .environment("ibm-cloud")
      .xProperties(java.util.Arrays.asList(scopePropertyModel))
      .build();
    CreateSubscopeOptions createSubscopeOptions = new CreateSubscopeOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .scopeId("testString")
      .subscopes(java.util.Arrays.asList(scopePrototypeModel))
      .build();
    
    Response<SubScopeResponse> response = securityAndComplianceCenterService.createSubscope(createSubscopeOptions).execute();
    SubScopeResponse subScopeResponse = response.getResult();
    
    System.out.println(subScopeResponse);

Response

The response body of the subscope.

The response body of the subscope.

The response body of the subscope.

The response body of the subscope.

The response body of the subscope.

Status Code

  • The subscope was created successfully.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "subscopes": [
        {
          "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
          "created_by": "IBMid-310002RVBN",
          "created_on": "2024-07-09T13:51:07Z",
          "updated_by": "IBMid-310002RVBN",
          "updated_on": "2024-07-09T13:51:07Z",
          "environment": "ibm-cloud",
          "name": "ibm subscope",
          "description": "The subscope that is defined for IBM resources.",
          "properties": [
            {
              "name": "scope_id",
              "value": "1234567"
            },
            {
              "name": "scope_type",
              "value": "account"
            },
            {
              "name": "exclusions",
              "value": [
                {
                  "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
                  "scope_type": "account.resource_group"
                }
              ]
            }
          ]
        }
      ]
    }
  • {
      "subscopes": [
        {
          "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "instance_id": "a5044f5a-ec7c-4675-9d06-7bcaab12ab46",
          "created_by": "IBMid-310002RVBN",
          "created_on": "2024-07-09T13:51:07Z",
          "updated_by": "IBMid-310002RVBN",
          "updated_on": "2024-07-09T13:51:07Z",
          "environment": "ibm-cloud",
          "name": "ibm subscope",
          "description": "The subscope that is defined for IBM resources.",
          "properties": [
            {
              "name": "scope_id",
              "value": "1234567"
            },
            {
              "name": "scope_type",
              "value": "account"
            },
            {
              "name": "exclusions",
              "value": [
                {
                  "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
                  "scope_type": "account.resource_group"
                }
              ]
            }
          ]
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Get all subscopes

Get all subscopes.

Get all subscopes.

Get all subscopes.

Get all subscopes.

Get all subscopes.

GET /instances/{instance_id}/v3/scopes/{scope_id}/subscopes
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListSubscopes(listSubscopesOptions *ListSubscopesOptions) (result *SubScopeCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListSubscopesWithContext(ctx context.Context, listSubscopesOptions *ListSubscopesOptions) (result *SubScopeCollection, response *core.DetailedResponse, err error)
listSubscopes(params)
subscopes_list(
        self,
        instance_id: str,
        scope_id: str,
        *,
        limit: Optional[int] = None,
        start: Optional[str] = None,
        name: Optional[str] = None,
        description: Optional[str] = None,
        environment: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<SubScopeCollection> listSubscopes(ListSubscopesOptions listSubscopesOptions)

Request

Instantiate the ListSubscopesOptions struct and set the fields to provide parameter values for the ListSubscopes method.

Use the ListSubscopesOptions.Builder to create a ListSubscopesOptions object that contains the parameter values for the listSubscopes method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scope being targeted.

Query Parameters

  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression ^.*$

  • determine name of subscope returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^.*$

  • determine descriptions of subscopes returned in response.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression ^.*$

  • determine environment of subscopes returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^.*$

WithContext method only

The ListSubscopes options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression /^.*$/

  • determine name of subscope returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^.*$/

  • determine descriptions of subscopes returned in response.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^.*$/

  • determine environment of subscopes returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^.*$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression /^.*$/

  • determine name of subscope returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^.*$/

  • determine descriptions of subscopes returned in response.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^.*$/

  • determine environment of subscopes returned in response.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^.*$/

The listSubscopes options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/scopes/${scope_id}/subscopes"
  • listSubscopesOptions := &securityandcompliancecenterv3.ListSubscopesOptions{
      InstanceID: core.StringPtr("acd7032c-15a3-484f-bf5b-67d41534d940"),
      ScopeID: core.StringPtr("testString"),
      Limit: core.Int64Ptr(int64(10)),
      Name: core.StringPtr("testString"),
      Description: core.StringPtr("testString"),
      Environment: core.StringPtr("testString"),
    }
    
    pager, err := securityAndComplianceCenterService.NewSubscopesPager(listSubscopesOptions)
    if err != nil {
      panic(err)
    }
    
    var allResults []securityandcompliancecenterv3.SubScope
    for pager.HasNext() {
      nextPage, err := pager.GetNext()
      if err != nil {
        panic(err)
      }
      allResults = append(allResults, nextPage...)
    }
    b, _ := json.MarshalIndent(allResults, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      scopeId: 'testString',
      limit: 10,
      name: 'testString',
      description: 'testString',
      environment: 'testString',
    };
    
    const allResults = [];
    try {
      const pager = new SecurityAndComplianceCenterV3.SubscopesPager(securityAndComplianceCenterService, params);
      while (pager.hasNext()) {
        const nextPage = await pager.getNext();
        expect(nextPage).not.toBeNull();
        allResults.push(...nextPage);
      }
      console.log(JSON.stringify(allResults, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • all_results = []
    pager = SubscopesPager(
      client=security_and_compliance_center_service,
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      scope_id='testString',
      limit=10,
      name='testString',
      description='testString',
      environment='testString',
    )
    while pager.has_next():
      next_page = pager.get_next()
      assert next_page is not None
      all_results.extend(next_page)
    
    print(json.dumps(all_results, indent=2))
  • ListSubscopesOptions listSubscopesOptions = new ListSubscopesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .scopeId("testString")
      .limit(Long.valueOf("10"))
      .name("testString")
      .description("testString")
      .environment("testString")
      .build();
    
    SubscopesPager pager = new SubscopesPager(securityAndComplianceCenterService, listSubscopesOptions);
    List<SubScope> allResults = new ArrayList<>();
    while (pager.hasNext()) {
      List<SubScope> nextPage = pager.getNext();
      allResults.addAll(nextPage);
    }
    
    System.out.println(GsonSingleton.getGson().toJson(allResults));

Response

The response body of the subscopes.

The response body of the subscopes.

The response body of the subscopes.

The response body of the subscopes.

The response body of the subscopes.

Status Code

  • The subscopes were retrieved successfully.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "limit": 25,
      "total_count": 1,
      "first": {
        "href": "https://us-east.compliance.cloud.ibm.com/instances/6ebd0a20-6508-44f0-96c4-124426da9323/v3/scopes/f3ed2500-f765-4418-bcbd-afd57de6f57f/subscopes?limit=4"
      },
      "next": {
        "href": ""
      },
      "subscopes": [
        {
          "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
          "environment": "ibm-cloud",
          "name": "ibm scope",
          "description": "The scope that is defined for IBM resources.",
          "properties": [
            {
              "name": "scope_id",
              "value": "1234567"
            },
            {
              "name": "scope_type",
              "value": "account"
            },
            {
              "name": "exclusions",
              "value": [
                {
                  "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
                  "scope_type": "account.resource_group"
                }
              ]
            }
          ]
        }
      ]
    }
  • {
      "limit": 25,
      "total_count": 1,
      "first": {
        "href": "https://us-east.compliance.cloud.ibm.com/instances/6ebd0a20-6508-44f0-96c4-124426da9323/v3/scopes/f3ed2500-f765-4418-bcbd-afd57de6f57f/subscopes?limit=4"
      },
      "next": {
        "href": ""
      },
      "subscopes": [
        {
          "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
          "environment": "ibm-cloud",
          "name": "ibm scope",
          "description": "The scope that is defined for IBM resources.",
          "properties": [
            {
              "name": "scope_id",
              "value": "1234567"
            },
            {
              "name": "scope_type",
              "value": "account"
            },
            {
              "name": "exclusions",
              "value": [
                {
                  "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
                  "scope_type": "account.resource_group"
                }
              ]
            }
          ]
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Get a subscope

Get the subscope details.

Get the subscope details.

Get the subscope details.

Get the subscope details.

Get the subscope details.

GET /instances/{instance_id}/v3/scopes/{scope_id}/subscopes/{subscope_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetSubscope(getSubscopeOptions *GetSubscopeOptions) (result *SubScope, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetSubscopeWithContext(ctx context.Context, getSubscopeOptions *GetSubscopeOptions) (result *SubScope, response *core.DetailedResponse, err error)
getSubscope(params)
subscope_get(
        self,
        instance_id: str,
        scope_id: str,
        subscope_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<SubScope> getSubscope(GetSubscopeOptions getSubscopeOptions)

Request

Instantiate the GetSubscopeOptions struct and set the fields to provide parameter values for the GetSubscope method.

Use the GetSubscopeOptions.Builder to create a GetSubscopeOptions object that contains the parameter values for the getSubscope method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

WithContext method only

The GetSubscope options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

The getSubscope options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/scopes/${scope_id}/subscopes/${subscope_id}"
  • getSubscopeOptions := securityAndComplianceCenterService.NewGetSubscopeOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
      "testString",
    )
    
    subScope, response, err := securityAndComplianceCenterService.GetSubscope(getSubscopeOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(subScope, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      scopeId: 'testString',
      subscopeId: 'testString',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getSubscope(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_subscope(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      scope_id='testString',
      subscope_id='testString',
    )
    sub_scope = response.get_result()
    
    print(json.dumps(sub_scope, indent=2))
  • GetSubscopeOptions getSubscopeOptions = new GetSubscopeOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .scopeId("testString")
      .subscopeId("testString")
      .build();
    
    Response<SubScope> response = securityAndComplianceCenterService.getSubscope(getSubscopeOptions).execute();
    SubScope subScope = response.getResult();
    
    System.out.println(subScope);

Response

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

Status Code

  • The subscope was updated successfully.

Example responses
  • {
      "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
      "environment": "ibm-cloud",
      "name": "ibm scope",
      "description": "The scope that is defined for IBM resources.",
      "properties": [
        {
          "name'": "scope_id",
          "value": "1234567"
        },
        {
          "name'": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ]
    }
  • {
      "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
      "environment": "ibm-cloud",
      "name": "ibm scope",
      "description": "The scope that is defined for IBM resources.",
      "properties": [
        {
          "name'": "scope_id",
          "value": "1234567"
        },
        {
          "name'": "scope_type",
          "value": "account"
        },
        {
          "name": "exclusions",
          "value": [
            {
              "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
              "scope_type": "account.resource_group"
            }
          ]
        }
      ]
    }

Update a subscope

Update the subscope details.

Update the subscope details.

Update the subscope details.

Update the subscope details.

Update the subscope details.

PATCH /instances/{instance_id}/v3/scopes/{scope_id}/subscopes/{subscope_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpdateSubscope(updateSubscopeOptions *UpdateSubscopeOptions) (result *SubScope, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpdateSubscopeWithContext(ctx context.Context, updateSubscopeOptions *UpdateSubscopeOptions) (result *SubScope, response *core.DetailedResponse, err error)
updateSubscope(params)
subscope_update(
        self,
        instance_id: str,
        scope_id: str,
        subscope_id: str,
        *,
        name: Optional[str] = None,
        description: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<SubScope> updateSubscope(UpdateSubscopeOptions updateSubscopeOptions)

Request

Instantiate the UpdateSubscopeOptions struct and set the fields to provide parameter values for the UpdateSubscope method.

Use the UpdateSubscopeOptions.Builder to create a UpdateSubscopeOptions object that contains the parameter values for the updateSubscope method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

The request payload to update a subscope.

Examples:
{
  "name": "updated name of scope",
  "description": "updated scope description"
}

WithContext method only

The UpdateSubscope options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

  • The scope name.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The scope description.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

  • The scope name.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:
  • The scope description.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9_,'\\s\\-\\.]*$/

    Examples:

The updateSubscope options.

  • curl -X PATCH --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "name": "updated name of scope", "description": "updated scope description" }'   "${base_url}/instances/${instance_id}/v3/scopes/${scope_id}/subscopes/${subscope_id}"
  • updateSubscopeOptions := securityAndComplianceCenterService.NewUpdateSubscopeOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
      "testString",
    )
    updateSubscopeOptions.SetName("updated name of scope")
    updateSubscopeOptions.SetDescription("updated scope description")
    
    subScope, response, err := securityAndComplianceCenterService.UpdateSubscope(updateSubscopeOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(subScope, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      scopeId: 'testString',
      subscopeId: 'testString',
      name: 'updated name of scope',
      description: 'updated scope description',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.updateSubscope(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.update_subscope(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      scope_id='testString',
      subscope_id='testString',
      name='updated name of scope',
      description='updated scope description',
    )
    sub_scope = response.get_result()
    
    print(json.dumps(sub_scope, indent=2))
  • UpdateSubscopeOptions updateSubscopeOptions = new UpdateSubscopeOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .scopeId("testString")
      .subscopeId("testString")
      .name("updated name of scope")
      .description("updated scope description")
      .build();
    
    Response<SubScope> response = securityAndComplianceCenterService.updateSubscope(updateSubscopeOptions).execute();
    SubScope subScope = response.getResult();
    
    System.out.println(subScope);

Response

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

A segment of a scope. Subscopes are used to ensure that the members of your teams who review results only have access to the information regarding the instances that they have access to.

Status Code

  • The subscope was updated successfully.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "subscopes": [
        {
          "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
          "environment": "ibm-cloud",
          "name": "ibm scope",
          "description": "The scope that is defined for IBM resources.",
          "properties": [
            {
              "name": "scope_id",
              "value": "1234567"
            },
            {
              "name": "scope_type",
              "value": "account"
            },
            {
              "name": "exclusions",
              "value": [
                {
                  "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
                  "scope_type": "account.resource_group"
                }
              ]
            }
          ]
        }
      ]
    }
  • {
      "subscopes": [
        {
          "id": "0fd7e758-3ab3-492b-8b0d-0cd8ef356990",
          "environment": "ibm-cloud",
          "name": "ibm scope",
          "description": "The scope that is defined for IBM resources.",
          "properties": [
            {
              "name": "scope_id",
              "value": "1234567"
            },
            {
              "name": "scope_type",
              "value": "account"
            },
            {
              "name": "exclusions",
              "value": [
                {
                  "scope_id": "cg3335893hh1428692d6747cf300yeb5a",
                  "scope_type": "account.resource_group"
                }
              ]
            }
          ]
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Delete a subscope

Delete the subscope by specifying the subscope ID.

Delete the subscope by specifying the subscope ID.

Delete the subscope by specifying the subscope ID.

Delete the subscope by specifying the subscope ID.

Delete the subscope by specifying the subscope ID.

DELETE /instances/{instance_id}/v3/scopes/{scope_id}/subscopes/{subscope_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteSubscope(deleteSubscopeOptions *DeleteSubscopeOptions) (response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteSubscopeWithContext(ctx context.Context, deleteSubscopeOptions *DeleteSubscopeOptions) (response *core.DetailedResponse, err error)
deleteSubscope(params)
subscope_delete(
        self,
        instance_id: str,
        scope_id: str,
        subscope_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Void> deleteSubscope(DeleteSubscopeOptions deleteSubscopeOptions)

Request

Instantiate the DeleteSubscopeOptions struct and set the fields to provide parameter values for the DeleteSubscope method.

Use the DeleteSubscopeOptions.Builder to create a DeleteSubscopeOptions object that contains the parameter values for the deleteSubscope method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

WithContext method only

The DeleteSubscope options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope being targeted.

  • The ID of the scope being targeted.

The deleteSubscope options.

  • curl -X DELETE --location --header "Authorization: Bearer ${iam_token}"   "${base_url}/instances/${instance_id}/v3/scopes/${scope_id}/subscopes/${subscope_id}"
  • deleteSubscopeOptions := securityAndComplianceCenterService.NewDeleteSubscopeOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
      "testString",
    )
    
    response, err := securityAndComplianceCenterService.DeleteSubscope(deleteSubscopeOptions)
    if err != nil {
      panic(err)
    }
    if response.StatusCode != 204 {
      fmt.Printf("\nUnexpected response status code received from DeleteSubscope(): %d\n", response.StatusCode)
    }
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      scopeId: 'testString',
      subscopeId: 'testString',
    };
    
    try {
      await securityAndComplianceCenterService.deleteSubscope(params);
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.delete_subscope(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      scope_id='testString',
      subscope_id='testString',
    )
  • DeleteSubscopeOptions deleteSubscopeOptions = new DeleteSubscopeOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .scopeId("testString")
      .subscopeId("testString")
      .build();
    
    Response<Void> response = securityAndComplianceCenterService.deleteSubscope(deleteSubscopeOptions).execute();

Response

Status Code

  • The subscope was deleted successfully.

  • The request failed due to a missing parameter.

  • The access token is either missing or invalid.

  • You don't have the required permissions to access this resource.

  • The requested resource doesn't exist.

  • Internal server error.For assistance, contact the IBM Cloud support team.

  • The service is not available.For assistance, contact the IBM Cloud support team.

Example responses
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of the a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "bad_request",
          "message": "The value of the a parameter is invalid.",
          "more_info": "The request failed due to a missing parameter."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "invalid_token",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The access token is either missing or invalid."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "forbidden",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "You don't have the required permissions to access this resource."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "not_found",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "A resource with the specified scope ID doesn't exist."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "internal_server_error",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "Internal server error.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "errors": [
        {
          "code": "service_unavailable",
          "more_info": "https://cloud.ibm.com/apidocs/security-compliance",
          "message": "The service is not available.For assistance, contact the IBM Cloud support team."
        }
      ]
    }

Create a target

Creates a target to scan against

Creates a target to scan against.

Creates a target to scan against.

Creates a target to scan against.

Creates a target to scan against.

POST /instances/{instance_id}/v3/targets
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateTarget(createTargetOptions *CreateTargetOptions) (result *Target, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateTargetWithContext(ctx context.Context, createTargetOptions *CreateTargetOptions) (result *Target, response *core.DetailedResponse, err error)
createTarget(params)
target_create(
        self,
        instance_id: str,
        account_id: str,
        trusted_profile_id: str,
        name: str,
        *,
        credentials: Optional[List['Credential']] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Target> createTarget(CreateTargetOptions createTargetOptions)

Request

Instantiate the CreateTargetOptions struct and set the fields to provide parameter values for the CreateTarget method.

Use the CreateTargetOptions.Builder to create a CreateTargetOptions object that contains the parameter values for the createTarget method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

The post response of the target account.

WithContext method only

The CreateTarget options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The target account ID.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^[0-9A-Fa-f]{32}$|^$/

    Examples:
  • The trusted profile ID.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^Profile-[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$|^$/

    Examples:
  • The target name.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^.*$/

    Examples:
  • Customer credential to access for a specific service to scan.

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The target account ID.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^[0-9A-Fa-f]{32}$|^$/

    Examples:
  • The trusted profile ID.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^Profile-[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$|^$/

    Examples:
  • The target name.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^.*$/

    Examples:
  • Customer credential to access for a specific service to scan.

    Examples:

The createTarget options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "account_id": "be200c80cabc456e91139e4152327823", "trusted_profile_id": "Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3", "name": "Target accountA" }'   "${base_url}/instances/${instance_id}/v3/targets"
  • createTargetOptions := securityAndComplianceCenterService.NewCreateTargetOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "be200c80cabc456e91139e4152327823",
      "Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3",
      "Target accountA",
    )
    
    target, response, err := securityAndComplianceCenterService.CreateTarget(createTargetOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(target, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      accountId: 'be200c80cabc456e91139e4152327823',
      trustedProfileId: 'Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3',
      name: 'Target accountA',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createTarget(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.create_target(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      account_id='be200c80cabc456e91139e4152327823',
      trusted_profile_id='Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3',
      name='Target accountA',
    )
    target = response.get_result()
    
    print(json.dumps(target, indent=2))
  • CreateTargetOptions createTargetOptions = new CreateTargetOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .accountId("be200c80cabc456e91139e4152327823")
      .trustedProfileId("Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3")
      .name("Target accountA")
      .build();
    
    Response<Target> response = securityAndComplianceCenterService.createTarget(createTargetOptions).execute();
    Target target = response.getResult();
    
    System.out.println(target);

Response

The details of the target account.

The details of the target account.

The details of the target account.

The details of the target account.

The details of the target account.

Status Code

  • The target was successfully created.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get a list of targets with pagination

Returns a list of targets

Returns a list of targets.

Returns a list of targets.

Returns a list of targets.

Returns a list of targets.

GET /instances/{instance_id}/v3/targets
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListTargets(listTargetsOptions *ListTargetsOptions) (result *TargetCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListTargetsWithContext(ctx context.Context, listTargetsOptions *ListTargetsOptions) (result *TargetCollection, response *core.DetailedResponse, err error)
listTargets(params)
list(
        self,
        instance_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<TargetCollection> listTargets(ListTargetsOptions listTargetsOptions)

Request

Instantiate the ListTargetsOptions struct and set the fields to provide parameter values for the ListTargets method.

Use the ListTargetsOptions.Builder to create a ListTargetsOptions object that contains the parameter values for the listTargets method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

WithContext method only

The ListTargets options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:

The listTargets options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/targets"
  • listTargetsOptions := securityAndComplianceCenterService.NewListTargetsOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    targetCollection, response, err := securityAndComplianceCenterService.ListTargets(listTargetsOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(targetCollection, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.listTargets(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.list_targets(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    target_collection = response.get_result()
    
    print(json.dumps(target_collection, indent=2))
  • ListTargetsOptions listTargetsOptions = new ListTargetsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<TargetCollection> response = securityAndComplianceCenterService.listTargets(listTargetsOptions).execute();
    TargetCollection targetCollection = response.getResult();
    
    System.out.println(targetCollection);

Response

The target list collection.

The target list collection.

The target list collection.

The target list collection.

The target list collection.

Status Code

  • The target list response.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get a target by ID

Retrieves a target by its ID association.

Retrieves a target by its ID association.

Retrieves a target by its ID association.

Retrieves a target by its ID association.

Retrieves a target by its ID association.

GET /instances/{instance_id}/v3/targets/{target_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetTarget(getTargetOptions *GetTargetOptions) (result *Target, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetTargetWithContext(ctx context.Context, getTargetOptions *GetTargetOptions) (result *Target, response *core.DetailedResponse, err error)
getTarget(params)
target_get(
        self,
        instance_id: str,
        target_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Target> getTarget(GetTargetOptions getTargetOptions)

Request

Instantiate the GetTargetOptions struct and set the fields to provide parameter values for the GetTarget method.

Use the GetTargetOptions.Builder to create a GetTargetOptions object that contains the parameter values for the getTarget method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The target ID.

WithContext method only

The GetTarget options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The target ID.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The target ID.

The getTarget options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/targets/${target_id}"
  • getTargetOptions := securityAndComplianceCenterService.NewGetTargetOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
    )
    
    target, response, err := securityAndComplianceCenterService.GetTarget(getTargetOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(target, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      targetId: 'testString',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getTarget(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_target(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      target_id='testString',
    )
    target = response.get_result()
    
    print(json.dumps(target, indent=2))
  • GetTargetOptions getTargetOptions = new GetTargetOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .targetId("testString")
      .build();
    
    Response<Target> response = securityAndComplianceCenterService.getTarget(getTargetOptions).execute();
    Target target = response.getResult();
    
    System.out.println(target);

Response

The details of the target account.

The details of the target account.

The details of the target account.

The details of the target account.

The details of the target account.

Status Code

  • The target detail response.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

replace a target by ID

Updates a target by its ID

Updates a target by its ID.

Updates a target by its ID.

Updates a target by its ID.

Updates a target by its ID.

PUT /instances/{instance_id}/v3/targets/{target_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceTarget(replaceTargetOptions *ReplaceTargetOptions) (result *Target, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceTargetWithContext(ctx context.Context, replaceTargetOptions *ReplaceTargetOptions) (result *Target, response *core.DetailedResponse, err error)
replaceTarget(params)
target_replace(
        self,
        instance_id: str,
        target_id: str,
        account_id: str,
        trusted_profile_id: str,
        name: str,
        *,
        credentials: Optional[List['Credential']] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Target> replaceTarget(ReplaceTargetOptions replaceTargetOptions)

Request

Instantiate the ReplaceTargetOptions struct and set the fields to provide parameter values for the ReplaceTarget method.

Use the ReplaceTargetOptions.Builder to create a ReplaceTargetOptions object that contains the parameter values for the replaceTarget method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The target ID.

The post response of the target account.

WithContext method only

The ReplaceTarget options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The target ID.

  • The target account ID.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^[0-9A-Fa-f]{32}$|^$/

    Examples:
  • The trusted profile ID.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^Profile-[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$|^$/

    Examples:
  • The target name.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^.*$/

    Examples:
  • Customer credential to access for a specific service to scan.

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The target ID.

  • The target account ID.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^[0-9A-Fa-f]{32}$|^$/

    Examples:
  • The trusted profile ID.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^Profile-[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$|^$/

    Examples:
  • The target name.

    Possible values: 2 ≤ length ≤ 256, Value must match regular expression /^.*$/

    Examples:
  • Customer credential to access for a specific service to scan.

    Examples:

The replaceTarget options.

  • curl -X PUT --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "account_id": "be200c80cabc456e91139e4152327823", "trusted_profile_id": "Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3", "name": "Target accountA" }'   "${base_url}/instances/${instance_id}/v3/targets/${target_id}"
  • replaceTargetOptions := securityAndComplianceCenterService.NewReplaceTargetOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
      "be200c80cabc456e91139e4152327823",
      "Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3",
      "Target accountA",
    )
    
    target, response, err := securityAndComplianceCenterService.ReplaceTarget(replaceTargetOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(target, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      targetId: 'testString',
      accountId: 'be200c80cabc456e91139e4152327823',
      trustedProfileId: 'Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3',
      name: 'Target accountA',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.replaceTarget(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.replace_target(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      target_id='testString',
      account_id='be200c80cabc456e91139e4152327823',
      trusted_profile_id='Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3',
      name='Target accountA',
    )
    target = response.get_result()
    
    print(json.dumps(target, indent=2))
  • ReplaceTargetOptions replaceTargetOptions = new ReplaceTargetOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .targetId("testString")
      .accountId("be200c80cabc456e91139e4152327823")
      .trustedProfileId("Profile-a0a4c149-4fed-47ff-bfb2-680bcfaa64d3")
      .name("Target accountA")
      .build();
    
    Response<Target> response = securityAndComplianceCenterService.replaceTarget(replaceTargetOptions).execute();
    Target target = response.getResult();
    
    System.out.println(target);

Response

The details of the target account.

The details of the target account.

The details of the target account.

The details of the target account.

The details of the target account.

Status Code

  • The target is updated successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Delete a target by ID

Deletes a target by the ID.

Deletes a target by the ID.

Deletes a target by the ID.

Deletes a target by the ID.

Deletes a target by the ID.

DELETE /instances/{instance_id}/v3/targets/{target_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteTarget(deleteTargetOptions *DeleteTargetOptions) (response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteTargetWithContext(ctx context.Context, deleteTargetOptions *DeleteTargetOptions) (response *core.DetailedResponse, err error)
deleteTarget(params)
target_delete(
        self,
        instance_id: str,
        target_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Void> deleteTarget(DeleteTargetOptions deleteTargetOptions)

Request

Instantiate the DeleteTargetOptions struct and set the fields to provide parameter values for the DeleteTarget method.

Use the DeleteTargetOptions.Builder to create a DeleteTargetOptions object that contains the parameter values for the deleteTarget method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The target ID.

WithContext method only

The DeleteTarget options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The target ID.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The target ID.

The deleteTarget options.

  • curl -X DELETE --location --header "Authorization: Bearer ${iam_token}"   "${base_url}/instances/${instance_id}/v3/targets/${target_id}"
  • deleteTargetOptions := securityAndComplianceCenterService.NewDeleteTargetOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      "testString",
    )
    
    response, err := securityAndComplianceCenterService.DeleteTarget(deleteTargetOptions)
    if err != nil {
      panic(err)
    }
    if response.StatusCode != 204 {
      fmt.Printf("\nUnexpected response status code received from DeleteTarget(): %d\n", response.StatusCode)
    }
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      targetId: 'testString',
    };
    
    try {
      await securityAndComplianceCenterService.deleteTarget(params);
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.delete_target(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      target_id='testString',
    )
  • DeleteTargetOptions deleteTargetOptions = new DeleteTargetOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .targetId("testString")
      .build();
    
    Response<Void> response = securityAndComplianceCenterService.deleteTarget(deleteTargetOptions).execute();

Response

Status Code

  • The request did not enact any changes. No content is provided.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Create a provider type instance

Create an instance of a provider type. For more information about integrations, see Connecting Workload Protection.

Create an instance of a provider type. For more information about integrations, see Connecting Workload Protection.

Create an instance of a provider type. For more information about integrations, see Connecting Workload Protection.

Create an instance of a provider type. For more information about integrations, see Connecting Workload Protection.

Create an instance of a provider type. For more information about integrations, see Connecting Workload Protection.

POST /instances/{instance_id}/v3/provider_types/{provider_type_id}/provider_type_instances
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateProviderTypeInstance(createProviderTypeInstanceOptions *CreateProviderTypeInstanceOptions) (result *ProviderTypeInstance, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateProviderTypeInstanceWithContext(ctx context.Context, createProviderTypeInstanceOptions *CreateProviderTypeInstanceOptions) (result *ProviderTypeInstance, response *core.DetailedResponse, err error)
createProviderTypeInstance(params)
provider_type_instance_create(
        self,
        instance_id: str,
        provider_type_id: str,
        *,
        name: Optional[str] = None,
        attributes: Optional[dict] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProviderTypeInstance> createProviderTypeInstance(CreateProviderTypeInstanceOptions createProviderTypeInstanceOptions)

Request

Instantiate the CreateProviderTypeInstanceOptions struct and set the fields to provide parameter values for the CreateProviderTypeInstance method.

Use the CreateProviderTypeInstanceOptions.Builder to create a CreateProviderTypeInstanceOptions object that contains the parameter values for the createProviderTypeInstance method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

The request body to create a provider type instance.

WithContext method only

The CreateProviderTypeInstance options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance name.

    Possible values: 1 ≤ length ≤ 64, Value must match regular expression /^[A-Za-z0-9-]+$/

    Examples:
  • The attributes for connecting to the provider type instance.

    Possible values: 1 ≤ length ≤ 9999

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance name.

    Possible values: 1 ≤ length ≤ 64, Value must match regular expression /^[A-Za-z0-9-]+$/

    Examples:
  • The attributes for connecting to the provider type instance.

    Possible values: 1 ≤ length ≤ 9999

    Examples:

The createProviderTypeInstance options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{}'   "${base_url}/instances/${instance_id}/v3/provider_types/${provider_type_id}/provider_type_instances"
  • createProviderTypeInstanceOptions := securityAndComplianceCenterService.NewCreateProviderTypeInstanceOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      providerTypeIDLink,
    )
    
    providerTypeInstance, response, err := securityAndComplianceCenterService.CreateProviderTypeInstance(createProviderTypeInstanceOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(providerTypeInstance, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      providerTypeId: providerTypeIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createProviderTypeInstance(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.create_provider_type_instance(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      provider_type_id=provider_type_id_link,
    )
    provider_type_instance = response.get_result()
    
    print(json.dumps(provider_type_instance, indent=2))
  • CreateProviderTypeInstanceOptions createProviderTypeInstanceOptions = new CreateProviderTypeInstanceOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .providerTypeId(providerTypeIdLink)
      .build();
    
    Response<ProviderTypeInstance> response = securityAndComplianceCenterService.createProviderTypeInstance(createProviderTypeInstanceOptions).execute();
    ProviderTypeInstance providerTypeInstance = response.getResult();
    
    System.out.println(providerTypeInstance);

Response

A provider type instance

A provider type instance.

A provider type instance.

A provider type instance.

A provider type instance.

Status Code

  • The provider type instance was created successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • The resource was not found.

  • Internal server error

Example responses
  • {
      "id": "7588190cce3c05ac8f7942ea597dafce",
      "type": "workload-protection",
      "name": "workload-protection-instance-1",
      "attributes": {
        "wp_crn": "crn:v1:staging:public:sysdig-secure:eu-gb:a/14q5SEnVIbwxzvP4AWPCjr2dJg5BAvPb:d1461d1ae-df1eee12fa81812e0-12-aa259::"
      },
      "created_at": "2023-07-24T13:14:18.884Z",
      "updated_at": "2023-07-24T13:14:18.884Z"
    }
  • {
      "id": "7588190cce3c05ac8f7942ea597dafce",
      "type": "workload-protection",
      "name": "workload-protection-instance-1",
      "attributes": {
        "wp_crn": "crn:v1:staging:public:sysdig-secure:eu-gb:a/14q5SEnVIbwxzvP4AWPCjr2dJg5BAvPb:d1461d1ae-df1eee12fa81812e0-12-aa259::"
      },
      "created_at": "2023-07-24T13:14:18.884Z",
      "updated_at": "2023-07-24T13:14:18.884Z"
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

List instances of a specific provider type

Retrieve all instances of a provider type. For more information about integrations, see Connecting Workload Protection.

Retrieve all instances of a provider type. For more information about integrations, see Connecting Workload Protection.

Retrieve all instances of a provider type. For more information about integrations, see Connecting Workload Protection.

Retrieve all instances of a provider type. For more information about integrations, see Connecting Workload Protection.

Retrieve all instances of a provider type. For more information about integrations, see Connecting Workload Protection.

GET /instances/{instance_id}/v3/provider_types/{provider_type_id}/provider_type_instances
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProviderTypeInstances(listProviderTypeInstancesOptions *ListProviderTypeInstancesOptions) (result *ProviderTypeInstanceCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProviderTypeInstancesWithContext(ctx context.Context, listProviderTypeInstancesOptions *ListProviderTypeInstancesOptions) (result *ProviderTypeInstanceCollection, response *core.DetailedResponse, err error)
listProviderTypeInstances(params)
list(
        self,
        instance_id: str,
        provider_type_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProviderTypeInstanceCollection> listProviderTypeInstances(ListProviderTypeInstancesOptions listProviderTypeInstancesOptions)

Request

Instantiate the ListProviderTypeInstancesOptions struct and set the fields to provide parameter values for the ListProviderTypeInstances method.

Use the ListProviderTypeInstancesOptions.Builder to create a ListProviderTypeInstancesOptions object that contains the parameter values for the listProviderTypeInstances method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

WithContext method only

The ListProviderTypeInstances options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

The listProviderTypeInstances options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/provider_types/${provider_type_id}/provider_type_instances"
  • listProviderTypeInstancesOptions := securityAndComplianceCenterService.NewListProviderTypeInstancesOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      providerTypeIDLink,
    )
    
    providerTypeInstanceCollection, response, err := securityAndComplianceCenterService.ListProviderTypeInstances(listProviderTypeInstancesOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(providerTypeInstanceCollection, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      providerTypeId: providerTypeIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.listProviderTypeInstances(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.list_provider_type_instances(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      provider_type_id=provider_type_id_link,
    )
    provider_type_instance_collection = response.get_result()
    
    print(json.dumps(provider_type_instance_collection, indent=2))
  • ListProviderTypeInstancesOptions listProviderTypeInstancesOptions = new ListProviderTypeInstancesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .providerTypeId(providerTypeIdLink)
      .build();
    
    Response<ProviderTypeInstanceCollection> response = securityAndComplianceCenterService.listProviderTypeInstances(listProviderTypeInstancesOptions).execute();
    ProviderTypeInstanceCollection providerTypeInstanceCollection = response.getResult();
    
    System.out.println(providerTypeInstanceCollection);

Response

Provider types instances response.

Provider types instances response.

Provider types instances response.

Provider types instances response.

Provider types instances response.

Status Code

  • The list of provider type instances was successfully retrieved.

  • The request is unauthorized.

  • The resource was not found.

  • Internal server error

Example responses
  • {
      "provider_type_instances": [
        {
          "id": "7588190cce3c05ac8f7942ea597dafce",
          "type": "workload-protection",
          "name": "workload-protection-instance-1",
          "attributes": {
            "wp_crn": "crn:v1:staging:public:sysdig-secure:eu-gb:a/14q5SEnVIbwxzvP4AWPCjr2dJg5BAvPb:d1461d1ae-df1eee12fa81812e0-12-aa259::"
          },
          "created_at": "2023-07-24T13:14:18.884Z",
          "updated_at": "2023-07-24T13:14:18.884Z"
        }
      ]
    }
  • {
      "provider_type_instances": [
        {
          "id": "7588190cce3c05ac8f7942ea597dafce",
          "type": "workload-protection",
          "name": "workload-protection-instance-1",
          "attributes": {
            "wp_crn": "crn:v1:staging:public:sysdig-secure:eu-gb:a/14q5SEnVIbwxzvP4AWPCjr2dJg5BAvPb:d1461d1ae-df1eee12fa81812e0-12-aa259::"
          },
          "created_at": "2023-07-24T13:14:18.884Z",
          "updated_at": "2023-07-24T13:14:18.884Z"
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get a provider type instance

Retrieve a provider type instance by specifying the provider type ID, and Security and Compliance Center instance ID. For more information about integrations, see Connecting Workload Protection.

Retrieve a provider type instance by specifying the provider type ID, and Security and Compliance Center instance ID. For more information about integrations, see Connecting Workload Protection.

Retrieve a provider type instance by specifying the provider type ID, and Security and Compliance Center instance ID. For more information about integrations, see Connecting Workload Protection.

Retrieve a provider type instance by specifying the provider type ID, and Security and Compliance Center instance ID. For more information about integrations, see Connecting Workload Protection.

Retrieve a provider type instance by specifying the provider type ID, and Security and Compliance Center instance ID. For more information about integrations, see Connecting Workload Protection.

GET /instances/{instance_id}/v3/provider_types/{provider_type_id}/provider_type_instances/{provider_type_instance_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetProviderTypeInstance(getProviderTypeInstanceOptions *GetProviderTypeInstanceOptions) (result *ProviderTypeInstance, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetProviderTypeInstanceWithContext(ctx context.Context, getProviderTypeInstanceOptions *GetProviderTypeInstanceOptions) (result *ProviderTypeInstance, response *core.DetailedResponse, err error)
getProviderTypeInstance(params)
provider_type_instance_get(
        self,
        instance_id: str,
        provider_type_id: str,
        provider_type_instance_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProviderTypeInstance> getProviderTypeInstance(GetProviderTypeInstanceOptions getProviderTypeInstanceOptions)

Request

Instantiate the GetProviderTypeInstanceOptions struct and set the fields to provide parameter values for the GetProviderTypeInstance method.

Use the GetProviderTypeInstanceOptions.Builder to create a GetProviderTypeInstanceOptions object that contains the parameter values for the getProviderTypeInstance method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

WithContext method only

The GetProviderTypeInstance options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

The getProviderTypeInstance options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/provider_types/${provider_type_id}/provider_type_instances/${provider_type_instance_id}"
  • getProviderTypeInstanceOptions := securityAndComplianceCenterService.NewGetProviderTypeInstanceOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      providerTypeIDLink,
      providerTypeInstanceIDLink,
    )
    
    providerTypeInstance, response, err := securityAndComplianceCenterService.GetProviderTypeInstance(getProviderTypeInstanceOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(providerTypeInstance, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      providerTypeId: providerTypeIdLink,
      providerTypeInstanceId: providerTypeInstanceIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getProviderTypeInstance(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_provider_type_instance(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      provider_type_id=provider_type_id_link,
      provider_type_instance_id=provider_type_instance_id_link,
    )
    provider_type_instance = response.get_result()
    
    print(json.dumps(provider_type_instance, indent=2))
  • GetProviderTypeInstanceOptions getProviderTypeInstanceOptions = new GetProviderTypeInstanceOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .providerTypeId(providerTypeIdLink)
      .providerTypeInstanceId(providerTypeInstanceIdLink)
      .build();
    
    Response<ProviderTypeInstance> response = securityAndComplianceCenterService.getProviderTypeInstance(getProviderTypeInstanceOptions).execute();
    ProviderTypeInstance providerTypeInstance = response.getResult();
    
    System.out.println(providerTypeInstance);

Response

A provider type instance

A provider type instance.

A provider type instance.

A provider type instance.

A provider type instance.

Status Code

  • The provider type instance was successfully retrieved.

  • The request is unauthorized.

  • The resource was not found.

  • Internal server error

Example responses
  • {
      "id": "7588190cce3c05ac8f7942ea597dafce",
      "type": "workload-protection",
      "name": "workload-protection-instance-1",
      "attributes": {
        "wp_crn": "crn:v1:staging:public:sysdig-secure:eu-gb:a/14q5SEnVIbwxzvP4AWPCjr2dJg5BAvPb:d1461d1ae-df1eee12fa81812e0-12-aa259::"
      },
      "created_at": "2023-07-25T04:44:42.733Z",
      "updated_at": "2023-07-25T04:44:42.733Z"
    }
  • {
      "id": "7588190cce3c05ac8f7942ea597dafce",
      "type": "workload-protection",
      "name": "workload-protection-instance-1",
      "attributes": {
        "wp_crn": "crn:v1:staging:public:sysdig-secure:eu-gb:a/14q5SEnVIbwxzvP4AWPCjr2dJg5BAvPb:d1461d1ae-df1eee12fa81812e0-12-aa259::"
      },
      "created_at": "2023-07-25T04:44:42.733Z",
      "updated_at": "2023-07-25T04:44:42.733Z"
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Update a provider type instance

Update a provider type instance. For more information about integrations, see Connecting Workload Protection.

Update a provider type instance. For more information about integrations, see Connecting Workload Protection.

Update a provider type instance. For more information about integrations, see Connecting Workload Protection.

Update a provider type instance. For more information about integrations, see Connecting Workload Protection.

Update a provider type instance. For more information about integrations, see Connecting Workload Protection.

PATCH /instances/{instance_id}/v3/provider_types/{provider_type_id}/provider_type_instances/{provider_type_instance_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpdateProviderTypeInstance(updateProviderTypeInstanceOptions *UpdateProviderTypeInstanceOptions) (result *ProviderTypeInstance, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) UpdateProviderTypeInstanceWithContext(ctx context.Context, updateProviderTypeInstanceOptions *UpdateProviderTypeInstanceOptions) (result *ProviderTypeInstance, response *core.DetailedResponse, err error)
updateProviderTypeInstance(params)
provider_type_instance_update(
        self,
        instance_id: str,
        provider_type_id: str,
        provider_type_instance_id: str,
        *,
        name: Optional[str] = None,
        attributes: Optional[dict] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProviderTypeInstance> updateProviderTypeInstance(UpdateProviderTypeInstanceOptions updateProviderTypeInstanceOptions)

Request

Instantiate the UpdateProviderTypeInstanceOptions struct and set the fields to provide parameter values for the UpdateProviderTypeInstance method.

Use the UpdateProviderTypeInstanceOptions.Builder to create a UpdateProviderTypeInstanceOptions object that contains the parameter values for the updateProviderTypeInstance method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

Provider type instance object to be patched

WithContext method only

The UpdateProviderTypeInstance options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance name.

    Possible values: 1 ≤ length ≤ 64, Value must match regular expression /^[A-Za-z0-9-]+$/

    Examples:
  • The attributes for connecting to the provider type instance.

    Possible values: 1 ≤ length ≤ 9999

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance name.

    Possible values: 1 ≤ length ≤ 64, Value must match regular expression /^[A-Za-z0-9-]+$/

    Examples:
  • The attributes for connecting to the provider type instance.

    Possible values: 1 ≤ length ≤ 9999

    Examples:

The updateProviderTypeInstance options.

  • curl -X PATCH --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{}'   "${base_url}/instances/${instance_id}/v3/provider_types/${provider_type_id}/provider_type_instances/${provider_type_instance_id}"
  • updateProviderTypeInstanceOptions := securityAndComplianceCenterService.NewUpdateProviderTypeInstanceOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      providerTypeIDLink,
      providerTypeInstanceIDLink,
    )
    
    providerTypeInstance, response, err := securityAndComplianceCenterService.UpdateProviderTypeInstance(updateProviderTypeInstanceOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(providerTypeInstance, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      providerTypeId: providerTypeIdLink,
      providerTypeInstanceId: providerTypeInstanceIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.updateProviderTypeInstance(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.update_provider_type_instance(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      provider_type_id=provider_type_id_link,
      provider_type_instance_id=provider_type_instance_id_link,
    )
    provider_type_instance = response.get_result()
    
    print(json.dumps(provider_type_instance, indent=2))
  • UpdateProviderTypeInstanceOptions updateProviderTypeInstanceOptions = new UpdateProviderTypeInstanceOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .providerTypeId(providerTypeIdLink)
      .providerTypeInstanceId(providerTypeInstanceIdLink)
      .build();
    
    Response<ProviderTypeInstance> response = securityAndComplianceCenterService.updateProviderTypeInstance(updateProviderTypeInstanceOptions).execute();
    ProviderTypeInstance providerTypeInstance = response.getResult();
    
    System.out.println(providerTypeInstance);

Response

A provider type instance

A provider type instance.

A provider type instance.

A provider type instance.

A provider type instance.

Status Code

  • Successfully patched provider type instance

  • The request is unauthorized.

  • The resource was not found.

  • Internal server error

Example responses
  • {
      "id": "7588190cce3c05ac8f7942ea597dafce",
      "type": "workload-protection",
      "name": "workload-protection-instance-1",
      "attributes": {
        "wp_crn": "crn:v1:staging:public:sysdig-secure:eu-gb:a/14q5SEnVIbwxzvP4AWPCjr2dJg5BAvPb:d1461d1ae-df1eee12fa81812e0-12-aa259::"
      },
      "created_at": "2023-07-24T13:14:18.884Z",
      "updated_at": "2023-07-24T13:14:18.884Z"
    }
  • {
      "id": "7588190cce3c05ac8f7942ea597dafce",
      "type": "workload-protection",
      "name": "workload-protection-instance-1",
      "attributes": {
        "wp_crn": "crn:v1:staging:public:sysdig-secure:eu-gb:a/14q5SEnVIbwxzvP4AWPCjr2dJg5BAvPb:d1461d1ae-df1eee12fa81812e0-12-aa259::"
      },
      "created_at": "2023-07-24T13:14:18.884Z",
      "updated_at": "2023-07-24T13:14:18.884Z"
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Delete a provider type instance

Remove a provider type instance. For more information about integrations, see Connecting Workload Protection.

Remove a provider type instance. For more information about integrations, see Connecting Workload Protection.

Remove a provider type instance. For more information about integrations, see Connecting Workload Protection.

Remove a provider type instance. For more information about integrations, see Connecting Workload Protection.

Remove a provider type instance. For more information about integrations, see Connecting Workload Protection.

DELETE /instances/{instance_id}/v3/provider_types/{provider_type_id}/provider_type_instances/{provider_type_instance_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteProviderTypeInstance(deleteProviderTypeInstanceOptions *DeleteProviderTypeInstanceOptions) (response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteProviderTypeInstanceWithContext(ctx context.Context, deleteProviderTypeInstanceOptions *DeleteProviderTypeInstanceOptions) (response *core.DetailedResponse, err error)
deleteProviderTypeInstance(params)
provider_type_instance_delete(
        self,
        instance_id: str,
        provider_type_id: str,
        provider_type_instance_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Void> deleteProviderTypeInstance(DeleteProviderTypeInstanceOptions deleteProviderTypeInstanceOptions)

Request

Instantiate the DeleteProviderTypeInstanceOptions struct and set the fields to provide parameter values for the DeleteProviderTypeInstance method.

Use the DeleteProviderTypeInstanceOptions.Builder to create a DeleteProviderTypeInstanceOptions object that contains the parameter values for the deleteProviderTypeInstance method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

WithContext method only

The DeleteProviderTypeInstance options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

  • The provider type instance ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

The deleteProviderTypeInstance options.

  • curl -X DELETE --location --header "Authorization: Bearer ${iam_token}"   "${base_url}/instances/${instance_id}/v3/provider_types/${provider_type_id}/provider_type_instances/${provider_type_instance_id}"
  • deleteProviderTypeInstanceOptions := securityAndComplianceCenterService.NewDeleteProviderTypeInstanceOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      providerTypeIDLink,
      providerTypeInstanceIDLink,
    )
    
    response, err := securityAndComplianceCenterService.DeleteProviderTypeInstance(deleteProviderTypeInstanceOptions)
    if err != nil {
      panic(err)
    }
    if response.StatusCode != 204 {
      fmt.Printf("\nUnexpected response status code received from DeleteProviderTypeInstance(): %d\n", response.StatusCode)
    }
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      providerTypeId: providerTypeIdLink,
      providerTypeInstanceId: providerTypeInstanceIdLink,
    };
    
    try {
      await securityAndComplianceCenterService.deleteProviderTypeInstance(params);
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.delete_provider_type_instance(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      provider_type_id=provider_type_id_link,
      provider_type_instance_id=provider_type_instance_id_link,
    )
  • DeleteProviderTypeInstanceOptions deleteProviderTypeInstanceOptions = new DeleteProviderTypeInstanceOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .providerTypeId(providerTypeIdLink)
      .providerTypeInstanceId(providerTypeInstanceIdLink)
      .build();
    
    Response<Void> response = securityAndComplianceCenterService.deleteProviderTypeInstance(deleteProviderTypeInstanceOptions).execute();

Response

Status Code

  • Successfully removed specific instance of a provider type

  • The request is unauthorized.

  • The resource was not found.

  • Internal server error

Example responses
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

List provider types

List all the registered provider types or integrations such as Workload Protection available to connect to Security and Compliance Center. For more information about connecting Workload Protection with the Security and Compliance Center, see Connecting Workload Protection.

List all the registered provider types or integrations such as Workload Protection available to connect to Security and Compliance Center. For more information about connecting Workload Protection with the Security and Compliance Center, see Connecting Workload Protection.

List all the registered provider types or integrations such as Workload Protection available to connect to Security and Compliance Center. For more information about connecting Workload Protection with the Security and Compliance Center, see Connecting Workload Protection.

List all the registered provider types or integrations such as Workload Protection available to connect to Security and Compliance Center. For more information about connecting Workload Protection with the Security and Compliance Center, see Connecting Workload Protection.

List all the registered provider types or integrations such as Workload Protection available to connect to Security and Compliance Center. For more information about connecting Workload Protection with the Security and Compliance Center, see Connecting Workload Protection.

GET /instances/{instance_id}/v3/provider_types
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProviderTypes(listProviderTypesOptions *ListProviderTypesOptions) (result *ProviderTypeCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListProviderTypesWithContext(ctx context.Context, listProviderTypesOptions *ListProviderTypesOptions) (result *ProviderTypeCollection, response *core.DetailedResponse, err error)
listProviderTypes(params)
list(
        self,
        instance_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProviderTypeCollection> listProviderTypes(ListProviderTypesOptions listProviderTypesOptions)

Request

Instantiate the ListProviderTypesOptions struct and set the fields to provide parameter values for the ListProviderTypes method.

Use the ListProviderTypesOptions.Builder to create a ListProviderTypesOptions object that contains the parameter values for the listProviderTypes method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

WithContext method only

The ListProviderTypes options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:

The listProviderTypes options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/provider_types"
  • listProviderTypesOptions := securityAndComplianceCenterService.NewListProviderTypesOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    providerTypeCollection, response, err := securityAndComplianceCenterService.ListProviderTypes(listProviderTypesOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(providerTypeCollection, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.listProviderTypes(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.list_provider_types(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    provider_type_collection = response.get_result()
    
    print(json.dumps(provider_type_collection, indent=2))
  • ListProviderTypesOptions listProviderTypesOptions = new ListProviderTypesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<ProviderTypeCollection> response = securityAndComplianceCenterService.listProviderTypes(listProviderTypesOptions).execute();
    ProviderTypeCollection providerTypeCollection = response.getResult();
    
    System.out.println(providerTypeCollection);

Response

The provider types collection

The provider types collection.

The provider types collection.

The provider types collection.

The provider types collection.

Status Code

  • The providers types were successfully retrieved.

  • The request is unauthorized.

  • Internal server error

Example responses
  • {
      "provider_types": [
        {
          "id": "7588190cce3c05ac8f7942ea597dafce",
          "type": "workload-protection",
          "name": "workload-protection",
          "description": "Security and Compliance Center Workload Protection helps you accelerate your Kubernetes and cloud adoption by addressing security and regulatory compliance. Easily identify vulnerabilities, check compliance, block threats and respond faster at every stage of the container and Kubernetes lifecycle.",
          "s2s_enabled": true,
          "instance_limit": 1,
          "mode": "PULL",
          "data_type": "com.sysdig.secure.results",
          "icon": "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBkYXRhLW5hbWU9IkJ1aWxkIGljb24gaGVyZSIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSItMjgxMS4xOTgiIHgyPSItMjgxNC4xOTgiIHkxPSI1NTcuNTE3IiB5Mj0iNTU3LjUxNyIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgyODMxLjE5OCAtNTQyLjAxNykiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xIiBzdG9wLW9wYWNpdHk9IjAiLz48c3RvcCBvZmZzZXQ9Ii44Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgeGxpbms6aHJlZj0iI2EiIGlkPSJiIiB4MT0iLTgwNi4xOTgiIHgyPSItNzk5LjE5OCIgeTE9Ii0yNDE0LjQ4MSIgeTI9Ii0yNDE0LjQ4MSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSg4MjUuMTk4IDI0MjguOTgxKSIvPjxsaW5lYXJHcmFkaWVudCB4bGluazpocmVmPSIjYSIgaWQ9ImMiIHgxPSItODEwLjE5OCIgeDI9Ii03OTguMTk4IiB5MT0iLTI0MTkuOTgxIiB5Mj0iLTI0MTkuOTgxIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDgzMi4xOTggMjQzMi45ODEpIi8+PGxpbmVhckdyYWRpZW50IGlkPSJlIiB4MT0iLTI1MTQiIHgyPSItMjQ4MiIgeTE9Ii0yNDgyIiB5Mj0iLTI1MTQiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgLTEgMjUxNCAtMjQ4MikiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xIiBzdG9wLWNvbG9yPSIjMDhiZGJhIi8+PHN0b3Agb2Zmc2V0PSIuOSIgc3RvcC1jb2xvcj0iIzBmNjJmZSIvPjwvbGluZWFyR3JhZGllbnQ+PG1hc2sgaWQ9ImQiIHdpZHRoPSIyOS4wMTciIGhlaWdodD0iMjcuOTk2IiB4PSIxLjk4MyIgeT0iMiIgZGF0YS1uYW1lPSJtYXNrIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJNMjkuOTc2IDE2YzAtMy43MzktMS40NTYtNy4yNTUtNC4xMDEtOS44OTlTMTkuNzE1IDIgMTUuOTc2IDIgOC43MjEgMy40NTYgNi4wNzcgNi4xMDFjLTUuNDU5IDUuNDU5LTUuNDU5IDE0LjM0IDAgMTkuNzk4QTE0LjA0NCAxNC4wNDQgMCAwIDAgMTYgMjkuOTk1di0yLjAwMWExMi4wNCAxMi4wNCAwIDAgMS04LjUwOS0zLjUxYy00LjY3OS00LjY3OS00LjY3OS0xMi4yOTIgMC0xNi45NzEgMi4yNjctMi4yNjcgNS4yOC0zLjUxNSA4LjQ4NS0zLjUxNXM2LjIxOSAxLjI0OCA4LjQ4NSAzLjUxNSAzLjUxNSA1LjI4IDMuNTE1IDguNDg1YzAgMS4zMDgtLjIxOCAyLjU4LS42MTggMy43ODZsMS44OTcuNjMyYy40NjctMS40MDguNzIyLTIuODkyLjcyMi00LjQxOFoiLz48cGF0aCBkPSJNMjQuNyAxMy42NzVhOC45NCA4Ljk0IDAgMCAwLTQuMTkzLTUuNDY1IDguOTQyIDguOTQyIDAgMCAwLTYuODMtLjg5OSA4Ljk3MSA4Ljk3MSAwIDAgMC01LjQ2MSA0LjE5NSA4Ljk4IDguOTggMCAwIDAtLjkwMyA2LjgyOGMxLjA3NyA0LjAxNiA0LjcyMiA2LjY2IDguNjk1IDYuNjYxdi0xLjk5OGMtMy4wOS0uMDAxLTUuOTI2LTIuMDU4LTYuNzYzLTUuMTgxYTcuMDEgNy4wMSAwIDAgMSA0Ljk1LTguNTc0IDYuOTU4IDYuOTU4IDAgMCAxIDUuMzEyLjY5OSA2Ljk1NCA2Ljk1NCAwIDAgMSAzLjI2MSA0LjI1Yy4zNTkgMS4zNDIuMjc1IDIuNzMyLS4xNTQgNC4wMTNsMS45MDkuNjM2YTguOTU5IDguOTU5IDAgMCAwIC4xNzYtNS4xNjdaIi8+PC9nPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xNCAxNmMwLTEuMTAzLjg5Ny0yIDItMnMyIC44OTcgMiAyYTIgMiAwIDAgMS0uMTExLjYzbDEuODg5LjYzYy4xMzMtLjM5OC4yMjItLjgxNy4yMjItMS4yNTlhNCA0IDAgMSAwLTQgNHYtMmMtMS4xMDMgMC0yLS44OTctMi0yWiIvPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0xNyAxNGgzdjNoLTN6IiB0cmFuc2Zvcm09InJvdGF0ZSgtOTAgMTguNSAxNS41KSIvPjxwYXRoIGZpbGw9InVybCgjYikiIGQ9Ik0xOSAxMmg3djVoLTd6IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCAyMi41IDE0LjUpIi8+PHBhdGggZmlsbD0idXJsKCNjKSIgZD0iTTIyIDEwaDEydjZIMjJ6IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCAyOCAxMykiLz48cGF0aCBkPSJNMjUgMTloNnY0aC02ek0yMCAxOGg1djVoLTV6TTE3IDE3aDN2NmgtM3oiLz48L21hc2s+PC9kZWZzPjxwYXRoIGZpbGw9IiMwMDFkNmMiIGQ9Im0yNSAzMS4wMDEtMi4xMzktMS4wMTNBNS4wMjIgNS4wMjIgMCAwIDEgMjAgMjUuNDY4VjE5aDEwdjYuNDY4YTUuMDIzIDUuMDIzIDAgMCAxLTIuODYxIDQuNTJMMjUgMzEuMDAxWm0tMy0xMHY0LjQ2OGMwIDEuMTUzLjY3NCAyLjIxOCAxLjcxNyAyLjcxMWwxLjI4My42MDcgMS4yODMtLjYwN0EzLjAxMiAzLjAxMiAwIDAgMCAyOCAyNS40Njl2LTQuNDY4aC02WiIgZGF0YS1uYW1lPSJ1dWlkLTU1ODMwNDRiLWZmMjQtNGUyNy05MDU0LTI0MDQzYWRkZmMwNiIvPjxnIG1hc2s9InVybCgjZCkiPjxwYXRoIGZpbGw9InVybCgjZSkiIGQ9Ik0wIDBoMzJ2MzJIMHoiIHRyYW5zZm9ybT0icm90YXRlKC05MCAxNiAxNikiLz48L2c+PC9zdmc+",
          "environments": [
            "ibm-cloud",
            "aws-cloud"
          ],
          "scope_parameters": [
            {
              "environment": "ibm-cloud",
              "parameters": [
                "account_id",
                "resource_group",
                "enterprise",
                "account_group"
              ]
            },
            {
              "environment": "aws-cloud",
              "parameters": [
                "account",
                "subscription",
                "resource_name",
                "location"
              ]
            }
          ],
          "label": {
            "text": "1 per instance",
            "tip": "Only 1 per instance"
          },
          "attributes": {
            "wp_crn": {
              "type": "text",
              "display_name": "Workload Protection Instance CRN"
            }
          },
          "created_at": "2023-07-24T13:14:18.884Z",
          "updated_at": "2023-07-24T13:14:18.884Z"
        }
      ]
    }
  • {
      "provider_types": [
        {
          "id": "7588190cce3c05ac8f7942ea597dafce",
          "type": "workload-protection",
          "name": "workload-protection",
          "description": "Security and Compliance Center Workload Protection helps you accelerate your Kubernetes and cloud adoption by addressing security and regulatory compliance. Easily identify vulnerabilities, check compliance, block threats and respond faster at every stage of the container and Kubernetes lifecycle.",
          "s2s_enabled": true,
          "instance_limit": 1,
          "mode": "PULL",
          "data_type": "com.sysdig.secure.results",
          "icon": "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBkYXRhLW5hbWU9IkJ1aWxkIGljb24gaGVyZSIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSItMjgxMS4xOTgiIHgyPSItMjgxNC4xOTgiIHkxPSI1NTcuNTE3IiB5Mj0iNTU3LjUxNyIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgyODMxLjE5OCAtNTQyLjAxNykiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xIiBzdG9wLW9wYWNpdHk9IjAiLz48c3RvcCBvZmZzZXQ9Ii44Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgeGxpbms6aHJlZj0iI2EiIGlkPSJiIiB4MT0iLTgwNi4xOTgiIHgyPSItNzk5LjE5OCIgeTE9Ii0yNDE0LjQ4MSIgeTI9Ii0yNDE0LjQ4MSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSg4MjUuMTk4IDI0MjguOTgxKSIvPjxsaW5lYXJHcmFkaWVudCB4bGluazpocmVmPSIjYSIgaWQ9ImMiIHgxPSItODEwLjE5OCIgeDI9Ii03OTguMTk4IiB5MT0iLTI0MTkuOTgxIiB5Mj0iLTI0MTkuOTgxIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDgzMi4xOTggMjQzMi45ODEpIi8+PGxpbmVhckdyYWRpZW50IGlkPSJlIiB4MT0iLTI1MTQiIHgyPSItMjQ4MiIgeTE9Ii0yNDgyIiB5Mj0iLTI1MTQiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgLTEgMjUxNCAtMjQ4MikiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xIiBzdG9wLWNvbG9yPSIjMDhiZGJhIi8+PHN0b3Agb2Zmc2V0PSIuOSIgc3RvcC1jb2xvcj0iIzBmNjJmZSIvPjwvbGluZWFyR3JhZGllbnQ+PG1hc2sgaWQ9ImQiIHdpZHRoPSIyOS4wMTciIGhlaWdodD0iMjcuOTk2IiB4PSIxLjk4MyIgeT0iMiIgZGF0YS1uYW1lPSJtYXNrIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJNMjkuOTc2IDE2YzAtMy43MzktMS40NTYtNy4yNTUtNC4xMDEtOS44OTlTMTkuNzE1IDIgMTUuOTc2IDIgOC43MjEgMy40NTYgNi4wNzcgNi4xMDFjLTUuNDU5IDUuNDU5LTUuNDU5IDE0LjM0IDAgMTkuNzk4QTE0LjA0NCAxNC4wNDQgMCAwIDAgMTYgMjkuOTk1di0yLjAwMWExMi4wNCAxMi4wNCAwIDAgMS04LjUwOS0zLjUxYy00LjY3OS00LjY3OS00LjY3OS0xMi4yOTIgMC0xNi45NzEgMi4yNjctMi4yNjcgNS4yOC0zLjUxNSA4LjQ4NS0zLjUxNXM2LjIxOSAxLjI0OCA4LjQ4NSAzLjUxNSAzLjUxNSA1LjI4IDMuNTE1IDguNDg1YzAgMS4zMDgtLjIxOCAyLjU4LS42MTggMy43ODZsMS44OTcuNjMyYy40NjctMS40MDguNzIyLTIuODkyLjcyMi00LjQxOFoiLz48cGF0aCBkPSJNMjQuNyAxMy42NzVhOC45NCA4Ljk0IDAgMCAwLTQuMTkzLTUuNDY1IDguOTQyIDguOTQyIDAgMCAwLTYuODMtLjg5OSA4Ljk3MSA4Ljk3MSAwIDAgMC01LjQ2MSA0LjE5NSA4Ljk4IDguOTggMCAwIDAtLjkwMyA2LjgyOGMxLjA3NyA0LjAxNiA0LjcyMiA2LjY2IDguNjk1IDYuNjYxdi0xLjk5OGMtMy4wOS0uMDAxLTUuOTI2LTIuMDU4LTYuNzYzLTUuMTgxYTcuMDEgNy4wMSAwIDAgMSA0Ljk1LTguNTc0IDYuOTU4IDYuOTU4IDAgMCAxIDUuMzEyLjY5OSA2Ljk1NCA2Ljk1NCAwIDAgMSAzLjI2MSA0LjI1Yy4zNTkgMS4zNDIuMjc1IDIuNzMyLS4xNTQgNC4wMTNsMS45MDkuNjM2YTguOTU5IDguOTU5IDAgMCAwIC4xNzYtNS4xNjdaIi8+PC9nPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xNCAxNmMwLTEuMTAzLjg5Ny0yIDItMnMyIC44OTcgMiAyYTIgMiAwIDAgMS0uMTExLjYzbDEuODg5LjYzYy4xMzMtLjM5OC4yMjItLjgxNy4yMjItMS4yNTlhNCA0IDAgMSAwLTQgNHYtMmMtMS4xMDMgMC0yLS44OTctMi0yWiIvPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0xNyAxNGgzdjNoLTN6IiB0cmFuc2Zvcm09InJvdGF0ZSgtOTAgMTguNSAxNS41KSIvPjxwYXRoIGZpbGw9InVybCgjYikiIGQ9Ik0xOSAxMmg3djVoLTd6IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCAyMi41IDE0LjUpIi8+PHBhdGggZmlsbD0idXJsKCNjKSIgZD0iTTIyIDEwaDEydjZIMjJ6IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCAyOCAxMykiLz48cGF0aCBkPSJNMjUgMTloNnY0aC02ek0yMCAxOGg1djVoLTV6TTE3IDE3aDN2NmgtM3oiLz48L21hc2s+PC9kZWZzPjxwYXRoIGZpbGw9IiMwMDFkNmMiIGQ9Im0yNSAzMS4wMDEtMi4xMzktMS4wMTNBNS4wMjIgNS4wMjIgMCAwIDEgMjAgMjUuNDY4VjE5aDEwdjYuNDY4YTUuMDIzIDUuMDIzIDAgMCAxLTIuODYxIDQuNTJMMjUgMzEuMDAxWm0tMy0xMHY0LjQ2OGMwIDEuMTUzLjY3NCAyLjIxOCAxLjcxNyAyLjcxMWwxLjI4My42MDcgMS4yODMtLjYwN0EzLjAxMiAzLjAxMiAwIDAgMCAyOCAyNS40Njl2LTQuNDY4aC02WiIgZGF0YS1uYW1lPSJ1dWlkLTU1ODMwNDRiLWZmMjQtNGUyNy05MDU0LTI0MDQzYWRkZmMwNiIvPjxnIG1hc2s9InVybCgjZCkiPjxwYXRoIGZpbGw9InVybCgjZSkiIGQ9Ik0wIDBoMzJ2MzJIMHoiIHRyYW5zZm9ybT0icm90YXRlKC05MCAxNiAxNikiLz48L2c+PC9zdmc+",
          "environments": [
            "ibm-cloud",
            "aws-cloud"
          ],
          "scope_parameters": [
            {
              "environment": "ibm-cloud",
              "parameters": [
                "account_id",
                "resource_group",
                "enterprise",
                "account_group"
              ]
            },
            {
              "environment": "aws-cloud",
              "parameters": [
                "account",
                "subscription",
                "resource_name",
                "location"
              ]
            }
          ],
          "label": {
            "text": "1 per instance",
            "tip": "Only 1 per instance"
          },
          "attributes": {
            "wp_crn": {
              "type": "text",
              "display_name": "Workload Protection Instance CRN"
            }
          },
          "created_at": "2023-07-24T13:14:18.884Z",
          "updated_at": "2023-07-24T13:14:18.884Z"
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get a provider type

Retrieve a provider type by specifying its ID. For more information about integrations, see Connecting Workload Protection.

Retrieve a provider type by specifying its ID. For more information about integrations, see Connecting Workload Protection.

Retrieve a provider type by specifying its ID. For more information about integrations, see Connecting Workload Protection.

Retrieve a provider type by specifying its ID. For more information about integrations, see Connecting Workload Protection.

Retrieve a provider type by specifying its ID. For more information about integrations, see Connecting Workload Protection.

GET /instances/{instance_id}/v3/provider_types/{provider_type_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetProviderTypeByID(getProviderTypeByIDOptions *GetProviderTypeByIDOptions) (result *ProviderType, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetProviderTypeByIDWithContext(ctx context.Context, getProviderTypeByIDOptions *GetProviderTypeByIDOptions) (result *ProviderType, response *core.DetailedResponse, err error)
getProviderTypeById(params)
provider_type_by_id_get(
        self,
        instance_id: str,
        provider_type_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ProviderType> getProviderTypeById(GetProviderTypeByIdOptions getProviderTypeByIdOptions)

Request

Instantiate the GetProviderTypeByIDOptions struct and set the fields to provide parameter values for the GetProviderTypeByID method.

Use the GetProviderTypeByIdOptions.Builder to create a GetProviderTypeByIdOptions object that contains the parameter values for the getProviderTypeById method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression ^[a-zA-Z0-9 ,\-_]+$

WithContext method only

The GetProviderTypeByID options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The provider type ID.

    Possible values: 32 ≤ length ≤ 36, Value must match regular expression /^[a-zA-Z0-9 ,\\-_]+$/

The getProviderTypeById options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/provider_types/${provider_type_id}"
  • getProviderTypeByIDOptions := securityAndComplianceCenterService.NewGetProviderTypeByIDOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      providerTypeIDLink,
    )
    
    providerType, response, err := securityAndComplianceCenterService.GetProviderTypeByID(getProviderTypeByIDOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(providerType, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      providerTypeId: providerTypeIdLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getProviderTypeById(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_provider_type_by_id(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      provider_type_id=provider_type_id_link,
    )
    provider_type = response.get_result()
    
    print(json.dumps(provider_type, indent=2))
  • GetProviderTypeByIdOptions getProviderTypeByIdOptions = new GetProviderTypeByIdOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .providerTypeId(providerTypeIdLink)
      .build();
    
    Response<ProviderType> response = securityAndComplianceCenterService.getProviderTypeById(getProviderTypeByIdOptions).execute();
    ProviderType providerType = response.getResult();
    
    System.out.println(providerType);

Response

The provider type item

The provider type item.

The provider type item.

The provider type item.

The provider type item.

Status Code

  • The provider type was retrieved successfully.

  • The request is unauthorized.

  • The resource was not found.

  • Internal server error

Example responses
  • {
      "id": "7588190cce3c05ac8f7942ea597dafce",
      "type": "workload-protection",
      "name": "workload-protection",
      "description": "Security and Compliance Center Workload Protection helps you accelerate your Kubernetes and cloud adoption by addressing security and regulatory compliance. Easily identify vulnerabilities, check compliance, block threats and respond faster at every stage of the container and Kubernetes lifecycle.",
      "s2s_enabled": true,
      "instance_limit": 1,
      "mode": "PULL",
      "data_type": "com.sysdig.secure.results",
      "icon": "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBkYXRhLW5hbWU9IkJ1aWxkIGljb24gaGVyZSIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSItMjgxMS4xOTgiIHgyPSItMjgxNC4xOTgiIHkxPSI1NTcuNTE3IiB5Mj0iNTU3LjUxNyIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgyODMxLjE5OCAtNTQyLjAxNykiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xIiBzdG9wLW9wYWNpdHk9IjAiLz48c3RvcCBvZmZzZXQ9Ii44Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgeGxpbms6aHJlZj0iI2EiIGlkPSJiIiB4MT0iLTgwNi4xOTgiIHgyPSItNzk5LjE5OCIgeTE9Ii0yNDE0LjQ4MSIgeTI9Ii0yNDE0LjQ4MSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSg4MjUuMTk4IDI0MjguOTgxKSIvPjxsaW5lYXJHcmFkaWVudCB4bGluazpocmVmPSIjYSIgaWQ9ImMiIHgxPSItODEwLjE5OCIgeDI9Ii03OTguMTk4IiB5MT0iLTI0MTkuOTgxIiB5Mj0iLTI0MTkuOTgxIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDgzMi4xOTggMjQzMi45ODEpIi8+PGxpbmVhckdyYWRpZW50IGlkPSJlIiB4MT0iLTI1MTQiIHgyPSItMjQ4MiIgeTE9Ii0yNDgyIiB5Mj0iLTI1MTQiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgLTEgMjUxNCAtMjQ4MikiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xIiBzdG9wLWNvbG9yPSIjMDhiZGJhIi8+PHN0b3Agb2Zmc2V0PSIuOSIgc3RvcC1jb2xvcj0iIzBmNjJmZSIvPjwvbGluZWFyR3JhZGllbnQ+PG1hc2sgaWQ9ImQiIHdpZHRoPSIyOS4wMTciIGhlaWdodD0iMjcuOTk2IiB4PSIxLjk4MyIgeT0iMiIgZGF0YS1uYW1lPSJtYXNrIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJNMjkuOTc2IDE2YzAtMy43MzktMS40NTYtNy4yNTUtNC4xMDEtOS44OTlTMTkuNzE1IDIgMTUuOTc2IDIgOC43MjEgMy40NTYgNi4wNzcgNi4xMDFjLTUuNDU5IDUuNDU5LTUuNDU5IDE0LjM0IDAgMTkuNzk4QTE0LjA0NCAxNC4wNDQgMCAwIDAgMTYgMjkuOTk1di0yLjAwMWExMi4wNCAxMi4wNCAwIDAgMS04LjUwOS0zLjUxYy00LjY3OS00LjY3OS00LjY3OS0xMi4yOTIgMC0xNi45NzEgMi4yNjctMi4yNjcgNS4yOC0zLjUxNSA4LjQ4NS0zLjUxNXM2LjIxOSAxLjI0OCA4LjQ4NSAzLjUxNSAzLjUxNSA1LjI4IDMuNTE1IDguNDg1YzAgMS4zMDgtLjIxOCAyLjU4LS42MTggMy43ODZsMS44OTcuNjMyYy40NjctMS40MDguNzIyLTIuODkyLjcyMi00LjQxOFoiLz48cGF0aCBkPSJNMjQuNyAxMy42NzVhOC45NCA4Ljk0IDAgMCAwLTQuMTkzLTUuNDY1IDguOTQyIDguOTQyIDAgMCAwLTYuODMtLjg5OSA4Ljk3MSA4Ljk3MSAwIDAgMC01LjQ2MSA0LjE5NSA4Ljk4IDguOTggMCAwIDAtLjkwMyA2LjgyOGMxLjA3NyA0LjAxNiA0LjcyMiA2LjY2IDguNjk1IDYuNjYxdi0xLjk5OGMtMy4wOS0uMDAxLTUuOTI2LTIuMDU4LTYuNzYzLTUuMTgxYTcuMDEgNy4wMSAwIDAgMSA0Ljk1LTguNTc0IDYuOTU4IDYuOTU4IDAgMCAxIDUuMzEyLjY5OSA2Ljk1NCA2Ljk1NCAwIDAgMSAzLjI2MSA0LjI1Yy4zNTkgMS4zNDIuMjc1IDIuNzMyLS4xNTQgNC4wMTNsMS45MDkuNjM2YTguOTU5IDguOTU5IDAgMCAwIC4xNzYtNS4xNjdaIi8+PC9nPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xNCAxNmMwLTEuMTAzLjg5Ny0yIDItMnMyIC44OTcgMiAyYTIgMiAwIDAgMS0uMTExLjYzbDEuODg5LjYzYy4xMzMtLjM5OC4yMjItLjgxNy4yMjItMS4yNTlhNCA0IDAgMSAwLTQgNHYtMmMtMS4xMDMgMC0yLS44OTctMi0yWiIvPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0xNyAxNGgzdjNoLTN6IiB0cmFuc2Zvcm09InJvdGF0ZSgtOTAgMTguNSAxNS41KSIvPjxwYXRoIGZpbGw9InVybCgjYikiIGQ9Ik0xOSAxMmg3djVoLTd6IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCAyMi41IDE0LjUpIi8+PHBhdGggZmlsbD0idXJsKCNjKSIgZD0iTTIyIDEwaDEydjZIMjJ6IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCAyOCAxMykiLz48cGF0aCBkPSJNMjUgMTloNnY0aC02ek0yMCAxOGg1djVoLTV6TTE3IDE3aDN2NmgtM3oiLz48L21hc2s+PC9kZWZzPjxwYXRoIGZpbGw9IiMwMDFkNmMiIGQ9Im0yNSAzMS4wMDEtMi4xMzktMS4wMTNBNS4wMjIgNS4wMjIgMCAwIDEgMjAgMjUuNDY4VjE5aDEwdjYuNDY4YTUuMDIzIDUuMDIzIDAgMCAxLTIuODYxIDQuNTJMMjUgMzEuMDAxWm0tMy0xMHY0LjQ2OGMwIDEuMTUzLjY3NCAyLjIxOCAxLjcxNyAyLjcxMWwxLjI4My42MDcgMS4yODMtLjYwN0EzLjAxMiAzLjAxMiAwIDAgMCAyOCAyNS40Njl2LTQuNDY4aC02WiIgZGF0YS1uYW1lPSJ1dWlkLTU1ODMwNDRiLWZmMjQtNGUyNy05MDU0LTI0MDQzYWRkZmMwNiIvPjxnIG1hc2s9InVybCgjZCkiPjxwYXRoIGZpbGw9InVybCgjZSkiIGQ9Ik0wIDBoMzJ2MzJIMHoiIHRyYW5zZm9ybT0icm90YXRlKC05MCAxNiAxNikiLz48L2c+PC9zdmc+",
      "label": {
        "text": "1 per instance",
        "tip": "Only 1 per instance"
      },
      "attributes": {
        "wp_crn": {
          "type": "text",
          "display_name": "Workload Protection Instance CRN"
        }
      },
      "created_at": "2023-07-24T13:14:18.884Z",
      "updated_at": "2023-07-24T13:14:18.884Z"
    }
  • {
      "id": "7588190cce3c05ac8f7942ea597dafce",
      "type": "workload-protection",
      "name": "workload-protection",
      "description": "Security and Compliance Center Workload Protection helps you accelerate your Kubernetes and cloud adoption by addressing security and regulatory compliance. Easily identify vulnerabilities, check compliance, block threats and respond faster at every stage of the container and Kubernetes lifecycle.",
      "s2s_enabled": true,
      "instance_limit": 1,
      "mode": "PULL",
      "data_type": "com.sysdig.secure.results",
      "icon": "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBkYXRhLW5hbWU9IkJ1aWxkIGljb24gaGVyZSIgdmlld0JveD0iMCAwIDMyIDMyIj48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSItMjgxMS4xOTgiIHgyPSItMjgxNC4xOTgiIHkxPSI1NTcuNTE3IiB5Mj0iNTU3LjUxNyIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSgyODMxLjE5OCAtNTQyLjAxNykiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xIiBzdG9wLW9wYWNpdHk9IjAiLz48c3RvcCBvZmZzZXQ9Ii44Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgeGxpbms6aHJlZj0iI2EiIGlkPSJiIiB4MT0iLTgwNi4xOTgiIHgyPSItNzk5LjE5OCIgeTE9Ii0yNDE0LjQ4MSIgeTI9Ii0yNDE0LjQ4MSIgZ3JhZGllbnRUcmFuc2Zvcm09InRyYW5zbGF0ZSg4MjUuMTk4IDI0MjguOTgxKSIvPjxsaW5lYXJHcmFkaWVudCB4bGluazpocmVmPSIjYSIgaWQ9ImMiIHgxPSItODEwLjE5OCIgeDI9Ii03OTguMTk4IiB5MT0iLTI0MTkuOTgxIiB5Mj0iLTI0MTkuOTgxIiBncmFkaWVudFRyYW5zZm9ybT0idHJhbnNsYXRlKDgzMi4xOTggMjQzMi45ODEpIi8+PGxpbmVhckdyYWRpZW50IGlkPSJlIiB4MT0iLTI1MTQiIHgyPSItMjQ4MiIgeTE9Ii0yNDgyIiB5Mj0iLTI1MTQiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMSAwIDAgLTEgMjUxNCAtMjQ4MikiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xIiBzdG9wLWNvbG9yPSIjMDhiZGJhIi8+PHN0b3Agb2Zmc2V0PSIuOSIgc3RvcC1jb2xvcj0iIzBmNjJmZSIvPjwvbGluZWFyR3JhZGllbnQ+PG1hc2sgaWQ9ImQiIHdpZHRoPSIyOS4wMTciIGhlaWdodD0iMjcuOTk2IiB4PSIxLjk4MyIgeT0iMiIgZGF0YS1uYW1lPSJtYXNrIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIj48ZyBmaWxsPSIjZmZmIj48cGF0aCBkPSJNMjkuOTc2IDE2YzAtMy43MzktMS40NTYtNy4yNTUtNC4xMDEtOS44OTlTMTkuNzE1IDIgMTUuOTc2IDIgOC43MjEgMy40NTYgNi4wNzcgNi4xMDFjLTUuNDU5IDUuNDU5LTUuNDU5IDE0LjM0IDAgMTkuNzk4QTE0LjA0NCAxNC4wNDQgMCAwIDAgMTYgMjkuOTk1di0yLjAwMWExMi4wNCAxMi4wNCAwIDAgMS04LjUwOS0zLjUxYy00LjY3OS00LjY3OS00LjY3OS0xMi4yOTIgMC0xNi45NzEgMi4yNjctMi4yNjcgNS4yOC0zLjUxNSA4LjQ4NS0zLjUxNXM2LjIxOSAxLjI0OCA4LjQ4NSAzLjUxNSAzLjUxNSA1LjI4IDMuNTE1IDguNDg1YzAgMS4zMDgtLjIxOCAyLjU4LS42MTggMy43ODZsMS44OTcuNjMyYy40NjctMS40MDguNzIyLTIuODkyLjcyMi00LjQxOFoiLz48cGF0aCBkPSJNMjQuNyAxMy42NzVhOC45NCA4Ljk0IDAgMCAwLTQuMTkzLTUuNDY1IDguOTQyIDguOTQyIDAgMCAwLTYuODMtLjg5OSA4Ljk3MSA4Ljk3MSAwIDAgMC01LjQ2MSA0LjE5NSA4Ljk4IDguOTggMCAwIDAtLjkwMyA2LjgyOGMxLjA3NyA0LjAxNiA0LjcyMiA2LjY2IDguNjk1IDYuNjYxdi0xLjk5OGMtMy4wOS0uMDAxLTUuOTI2LTIuMDU4LTYuNzYzLTUuMTgxYTcuMDEgNy4wMSAwIDAgMSA0Ljk1LTguNTc0IDYuOTU4IDYuOTU4IDAgMCAxIDUuMzEyLjY5OSA2Ljk1NCA2Ljk1NCAwIDAgMSAzLjI2MSA0LjI1Yy4zNTkgMS4zNDIuMjc1IDIuNzMyLS4xNTQgNC4wMTNsMS45MDkuNjM2YTguOTU5IDguOTU5IDAgMCAwIC4xNzYtNS4xNjdaIi8+PC9nPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xNCAxNmMwLTEuMTAzLjg5Ny0yIDItMnMyIC44OTcgMiAyYTIgMiAwIDAgMS0uMTExLjYzbDEuODg5LjYzYy4xMzMtLjM5OC4yMjItLjgxNy4yMjItMS4yNTlhNCA0IDAgMSAwLTQgNHYtMmMtMS4xMDMgMC0yLS44OTctMi0yWiIvPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0xNyAxNGgzdjNoLTN6IiB0cmFuc2Zvcm09InJvdGF0ZSgtOTAgMTguNSAxNS41KSIvPjxwYXRoIGZpbGw9InVybCgjYikiIGQ9Ik0xOSAxMmg3djVoLTd6IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCAyMi41IDE0LjUpIi8+PHBhdGggZmlsbD0idXJsKCNjKSIgZD0iTTIyIDEwaDEydjZIMjJ6IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCAyOCAxMykiLz48cGF0aCBkPSJNMjUgMTloNnY0aC02ek0yMCAxOGg1djVoLTV6TTE3IDE3aDN2NmgtM3oiLz48L21hc2s+PC9kZWZzPjxwYXRoIGZpbGw9IiMwMDFkNmMiIGQ9Im0yNSAzMS4wMDEtMi4xMzktMS4wMTNBNS4wMjIgNS4wMjIgMCAwIDEgMjAgMjUuNDY4VjE5aDEwdjYuNDY4YTUuMDIzIDUuMDIzIDAgMCAxLTIuODYxIDQuNTJMMjUgMzEuMDAxWm0tMy0xMHY0LjQ2OGMwIDEuMTUzLjY3NCAyLjIxOCAxLjcxNyAyLjcxMWwxLjI4My42MDcgMS4yODMtLjYwN0EzLjAxMiAzLjAxMiAwIDAgMCAyOCAyNS40Njl2LTQuNDY4aC02WiIgZGF0YS1uYW1lPSJ1dWlkLTU1ODMwNDRiLWZmMjQtNGUyNy05MDU0LTI0MDQzYWRkZmMwNiIvPjxnIG1hc2s9InVybCgjZCkiPjxwYXRoIGZpbGw9InVybCgjZSkiIGQ9Ik0wIDBoMzJ2MzJIMHoiIHRyYW5zZm9ybT0icm90YXRlKC05MCAxNiAxNikiLz48L2c+PC9zdmc+",
      "label": {
        "text": "1 per instance",
        "tip": "Only 1 per instance"
      },
      "attributes": {
        "wp_crn": {
          "type": "text",
          "display_name": "Workload Protection Instance CRN"
        }
      },
      "created_at": "2023-07-24T13:14:18.884Z",
      "updated_at": "2023-07-24T13:14:18.884Z"
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get a scan report

Retrieve the scan report by specifying the ID. For more information, see Viewing results.

Retrieve the scan report by specifying the ID. For more information, see Viewing results.

Retrieve the scan report by specifying the ID. For more information, see Viewing results.

Retrieve the scan report by specifying the ID. For more information, see Viewing results.

Retrieve the scan report by specifying the ID. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/scan_reports/{job_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetScanReport(getScanReportOptions *GetScanReportOptions) (result *ScanReport, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetScanReportWithContext(ctx context.Context, getScanReportOptions *GetScanReportOptions) (result *ScanReport, response *core.DetailedResponse, err error)
getScanReport(params)
scan_report_get(
        self,
        instance_id: str,
        report_id: str,
        job_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ScanReport> getScanReport(GetScanReportOptions getScanReportOptions)

Request

Instantiate the GetScanReportOptions struct and set the fields to provide parameter values for the GetScanReport method.

Use the GetScanReportOptions.Builder to create a GetScanReportOptions object that contains the parameter values for the getScanReport method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the scan_result.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetScanReport options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the scan_result.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the scan_result.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getScanReport options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/scan_reports/${job_id}"
  • getScanReportOptions := securityAndComplianceCenterService.NewGetScanReportOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
      "testString",
    )
    
    scanReport, response, err := securityAndComplianceCenterService.GetScanReport(getScanReportOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(scanReport, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
      jobId: 'testString',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getScanReport(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_scan_report(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
      job_id='testString',
    )
    scan_report = response.get_result()
    
    print(json.dumps(scan_report, indent=2))
  • GetScanReportOptions getScanReportOptions = new GetScanReportOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .jobId("testString")
      .build();
    
    Response<ScanReport> response = securityAndComplianceCenterService.getScanReport(getScanReportOptions).execute();
    ScanReport scanReport = response.getResult();
    
    System.out.println(scanReport);

Response

A report detailing the evaluations related to a specific control

A report detailing the evaluations related to a specific control.

A report detailing the evaluations related to a specific control.

A report detailing the evaluations related to a specific control.

A report detailing the evaluations related to a specific control.

Status Code

  • The scan report was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "id": "d110e28f-9969-4bdc-86e7-f1e3debd4e44",
      "scan_id": "e44316e3-53bc-449b-a808-c16df680d462",
      "instance_id": "d7b0e35d-3bd8-43bd-8809-af238907559e",
      "scope_id": "132009ff-b982-412e-a110-ad8797e10f84",
      "subscope_id": "c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a",
      "status": "completed",
      "created_on": "2024-05-08T21:20:16.008Z",
      "format": "csv",
      "href": "https://us-south.compliance.cloud.ibm.com/instances/d7b0e35d-3bd8-43bd-8809-af238907559e/v3/reports/e44316e3-53bc-449b-a808-c16df680d462/scan_reports/d110e28f-9969-4bdc-86e7-f1e3debd4e44/download"
    }
  • {
      "id": "d110e28f-9969-4bdc-86e7-f1e3debd4e44",
      "scan_id": "e44316e3-53bc-449b-a808-c16df680d462",
      "instance_id": "d7b0e35d-3bd8-43bd-8809-af238907559e",
      "scope_id": "132009ff-b982-412e-a110-ad8797e10f84",
      "subscope_id": "c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a",
      "status": "completed",
      "created_on": "2024-05-08T21:20:16.008Z",
      "format": "csv",
      "href": "https://us-south.compliance.cloud.ibm.com/instances/d7b0e35d-3bd8-43bd-8809-af238907559e/v3/reports/e44316e3-53bc-449b-a808-c16df680d462/scan_reports/d110e28f-9969-4bdc-86e7-f1e3debd4e44/download"
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Get a scan report details

Download the scan report with evaluation details for the specified ID. For more information, see Viewing results.

Download the scan report with evaluation details for the specified ID. For more information, see Viewing results.

Download the scan report with evaluation details for the specified ID. For more information, see Viewing results.

Download the scan report with evaluation details for the specified ID. For more information, see Viewing results.

Download the scan report with evaluation details for the specified ID. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/scan_reports/{job_id}/download
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetScanReportDownloadFile(getScanReportDownloadFileOptions *GetScanReportDownloadFileOptions) (result io.ReadCloser, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetScanReportDownloadFileWithContext(ctx context.Context, getScanReportDownloadFileOptions *GetScanReportDownloadFileOptions) (result io.ReadCloser, response *core.DetailedResponse, err error)
getScanReportDownloadFile(params)
scan_report_download_file_get(
        self,
        instance_id: str,
        report_id: str,
        job_id: str,
        *,
        accept: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<InputStream> getScanReportDownloadFile(GetScanReportDownloadFileOptions getScanReportDownloadFileOptions)

Request

Instantiate the GetScanReportDownloadFileOptions struct and set the fields to provide parameter values for the GetScanReportDownloadFile method.

Use the GetScanReportDownloadFileOptions.Builder to create a GetScanReportDownloadFileOptions object that contains the parameter values for the getScanReportDownloadFile method.

Custom Headers

  • Allowable values: [application/csv,application/pdf]

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the scan_result.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetScanReportDownloadFile options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the scan_result.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The type of the response: application/csv or application/pdf.

    Allowable values: [application/csv,application/pdf]

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the scan_result.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The type of the response: application/csv or application/pdf.

    Allowable values: [application/csv,application/pdf]

The getScanReportDownloadFile options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/csv"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/scan_reports/${job_id}/download"
  • getScanReportDownloadFileOptions := securityAndComplianceCenterService.NewGetScanReportDownloadFileOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
      "testString",
    )
    
    result, response, err := securityAndComplianceCenterService.GetScanReportDownloadFile(getScanReportDownloadFileOptions)
    if err != nil {
      panic(err)
    }
    if result != nil {
      defer result.Close()
      outFile, err := os.Create("result.out")
      if err != nil { panic(err) }
      defer outFile.Close()
      _, err = io.Copy(outFile, result)
      if err != nil { panic(err) }
    }
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
      jobId: 'testString',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getScanReportDownloadFile(params);
      // response is binary
      // fs.writeFileSync('result.out', res.result);
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_scan_report_download_file(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
      job_id='testString',
    )
    result = response.get_result()
    
    with open('/tmp/result.out', 'wb') as fp:
      fp.write(result)
  • GetScanReportDownloadFileOptions getScanReportDownloadFileOptions = new GetScanReportDownloadFileOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .jobId("testString")
      .build();
    
    Response<InputStream> response = securityAndComplianceCenterService.getScanReportDownloadFile(getScanReportDownloadFileOptions).execute();
    try (InputStream inputStream = response.getResult();) {
        inputStream.transferTo(new java.io.FileOutputStream("result.out"));
    }

Response

Response type: io.ReadCloser

Response type: NodeJS.ReadableStream

Response type: BinaryIO

Response type: InputStream

The scan report in cvs format.

Status Code

  • The scan report was successfully downloaded.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

List latest reports

Retrieve the latest reports, which are grouped by profile ID, scope ID, and attachment ID. For more information, see Viewing results.

Retrieve the latest reports, which are grouped by profile ID, scope ID, and attachment ID. For more information, see Viewing results.

Retrieve the latest reports, which are grouped by profile ID, scope ID, and attachment ID. For more information, see Viewing results.

Retrieve the latest reports, which are grouped by profile ID, scope ID, and attachment ID. For more information, see Viewing results.

Retrieve the latest reports, which are grouped by profile ID, scope ID, and attachment ID. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/latest
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetLatestReports(getLatestReportsOptions *GetLatestReportsOptions) (result *ReportLatest, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetLatestReportsWithContext(ctx context.Context, getLatestReportsOptions *GetLatestReportsOptions) (result *ReportLatest, response *core.DetailedResponse, err error)
getLatestReports(params)
latest_reports_get(
        self,
        instance_id: str,
        *,
        sort: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ReportLatest> getLatestReports(GetLatestReportsOptions getLatestReportsOptions)

Request

Instantiate the GetLatestReportsOptions struct and set the fields to provide parameter values for the GetLatestReports method.

Use the GetLatestReportsOptions.Builder to create a GetLatestReportsOptions object that contains the parameter values for the getLatestReports method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression ^[\-]?[a-z0-9_]+$

    Example: profile_name

WithContext method only

The GetLatestReports options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression /^[\\-]?[a-z0-9_]+$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression /^[\\-]?[a-z0-9_]+$/

    Examples:

The getLatestReports options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/latest?sort=profile_name"
  • getLatestReportsOptions := securityAndComplianceCenterService.NewGetLatestReportsOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    getLatestReportsOptions.SetSort("profile_name")
    
    reportLatest, response, err := securityAndComplianceCenterService.GetLatestReports(getLatestReportsOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(reportLatest, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      sort: 'profile_name',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getLatestReports(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_latest_reports(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      sort='profile_name',
    )
    report_latest = response.get_result()
    
    print(json.dumps(report_latest, indent=2))
  • GetLatestReportsOptions getLatestReportsOptions = new GetLatestReportsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .sort("profile_name")
      .build();
    
    Response<ReportLatest> response = securityAndComplianceCenterService.getLatestReports(getLatestReportsOptions).execute();
    ReportLatest reportLatest = response.getResult();
    
    System.out.println(reportLatest);

Response

The response body of the get_latest_reports operation.

The response body of the get_latest_reports operation.

The response body of the get_latest_reports operation.

The response body of the get_latest_reports operation.

The response body of the get_latest_reports operation.

Status Code

  • The reports were successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "controls_summary": {
        "status": "not_compliant",
        "total_count": 6,
        "compliant_count": 4,
        "not_compliant_count": 2,
        "unable_to_perform_count": 0,
        "user_evaluation_required_count": 0,
        "not_applicable_count": 0,
        "not_compliant_controls": [
          {
            "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
            "control_name": "1.19",
            "control_description": "Ensure security questions are registered by the account owner"
          },
          {
            "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
            "control_name": "1.20",
            "control_description": "Ensure authorized IP ranges are configured for the account"
          }
        ]
      },
      "evaluations_summary": {
        "status": "not_compliant",
        "total_count": 6,
        "pass_count": 4,
        "failure_count": 2,
        "error_count": 0,
        "skipped_count": 0,
        "completed_count": 56
      },
      "score": {
        "pass_count": 4,
        "total_count": 6,
        "percent": 66
      },
      "reports": [
        {
          "id": "8271c6e3-12fb-4ae6-a05d-a64cfd2e838f",
          "type": "scheduled",
          "group_id": "13204dec1928aa4739e928c5475557e8a5351f8547403bd1e6c67a0fd3a8cc51",
          "created_on": "2023-04-28T18:29:52.606240842Z",
          "scan_time": "2023-04-28T18:24:06Z",
          "cos_object": "scc-bucket",
          "instance_id": "84644a08-31b6-4988-b504-49a46ca69ccd",
          "account": {
            "id": "f88fd4aa842b46b08652b650370b917c"
          },
          "profile": {
            "id": "84644a08-31b6-4988-b504-49a46ca69ccd",
            "name": "IBM Cloud Security Best Practices",
            "version": "1.0.0"
          },
          "scope": {
            "id": "f88fd4aa842b46b08652b650370b917c",
            "type": "account"
          },
          "attachment": {
            "id": "f88fd4aa842b46b08652b650370b917c",
            "name": "resource group - Default",
            "description": "Scoped to the Default resource group",
            "schedule": "24H",
            "notifications": {
              "enabled": true,
              "controls": {
                "threshold_limit": 15
              }
            },
            "scope": [
              {
                "id": "ca0941aa-b7e2-43a3-9794-1b3d322474d9",
                "environment": "ibm-cloud",
                "properties": [
                  {
                    "name": "scope_id",
                    "value": "18d32a4430e54c81a6668952609763b2"
                  },
                  {
                    "name": "scope_type",
                    "value": "account"
                  }
                ]
              }
            ]
          },
          "controls_summary": {
            "status": "not_compliant",
            "total_count": 6,
            "compliant_count": 4,
            "not_compliant_count": 2,
            "unable_to_perform_count": 0,
            "user_evaluation_required_count": 0,
            "not_applicable_count": 0,
            "not_compliant_controls": [
              {
                "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
                "control_name": "1.19",
                "control_description": "Ensure security questions are registered by the account owner"
              },
              {
                "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
                "control_name": "1.20",
                "control_description": "Ensure authorized IP ranges are configured for the account"
              }
            ],
            "evaluations_summary": {
              "status": "not_compliant",
              "total_count": 6,
              "pass_count": 4,
              "failure_count": 2,
              "error_count": 0,
              "skipped_count": 0,
              "completed_count": 56
            },
            "tags": {
              "user": [],
              "access": [],
              "service": []
            }
          }
        }
      ]
    }
  • {
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "controls_summary": {
        "status": "not_compliant",
        "total_count": 6,
        "compliant_count": 4,
        "not_compliant_count": 2,
        "unable_to_perform_count": 0,
        "user_evaluation_required_count": 0,
        "not_applicable_count": 0,
        "not_compliant_controls": [
          {
            "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
            "control_name": "1.19",
            "control_description": "Ensure security questions are registered by the account owner"
          },
          {
            "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
            "control_name": "1.20",
            "control_description": "Ensure authorized IP ranges are configured for the account"
          }
        ]
      },
      "evaluations_summary": {
        "status": "not_compliant",
        "total_count": 6,
        "pass_count": 4,
        "failure_count": 2,
        "error_count": 0,
        "skipped_count": 0,
        "completed_count": 56
      },
      "score": {
        "pass_count": 4,
        "total_count": 6,
        "percent": 66
      },
      "reports": [
        {
          "id": "8271c6e3-12fb-4ae6-a05d-a64cfd2e838f",
          "type": "scheduled",
          "group_id": "13204dec1928aa4739e928c5475557e8a5351f8547403bd1e6c67a0fd3a8cc51",
          "created_on": "2023-04-28T18:29:52.606240842Z",
          "scan_time": "2023-04-28T18:24:06Z",
          "cos_object": "scc-bucket",
          "instance_id": "84644a08-31b6-4988-b504-49a46ca69ccd",
          "account": {
            "id": "f88fd4aa842b46b08652b650370b917c"
          },
          "profile": {
            "id": "84644a08-31b6-4988-b504-49a46ca69ccd",
            "name": "IBM Cloud Security Best Practices",
            "version": "1.0.0"
          },
          "scope": {
            "id": "f88fd4aa842b46b08652b650370b917c",
            "type": "account"
          },
          "attachment": {
            "id": "f88fd4aa842b46b08652b650370b917c",
            "name": "resource group - Default",
            "description": "Scoped to the Default resource group",
            "schedule": "24H",
            "notifications": {
              "enabled": true,
              "controls": {
                "threshold_limit": 15
              }
            },
            "scope": [
              {
                "id": "ca0941aa-b7e2-43a3-9794-1b3d322474d9",
                "environment": "ibm-cloud",
                "properties": [
                  {
                    "name": "scope_id",
                    "value": "18d32a4430e54c81a6668952609763b2"
                  },
                  {
                    "name": "scope_type",
                    "value": "account"
                  }
                ]
              }
            ]
          },
          "controls_summary": {
            "status": "not_compliant",
            "total_count": 6,
            "compliant_count": 4,
            "not_compliant_count": 2,
            "unable_to_perform_count": 0,
            "user_evaluation_required_count": 0,
            "not_applicable_count": 0,
            "not_compliant_controls": [
              {
                "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
                "control_name": "1.19",
                "control_description": "Ensure security questions are registered by the account owner"
              },
              {
                "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
                "control_name": "1.20",
                "control_description": "Ensure authorized IP ranges are configured for the account"
              }
            ],
            "evaluations_summary": {
              "status": "not_compliant",
              "total_count": 6,
              "pass_count": 4,
              "failure_count": 2,
              "error_count": 0,
              "skipped_count": 0,
              "completed_count": 56
            },
            "tags": {
              "user": [],
              "access": [],
              "service": []
            }
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

List reports

Retrieve a page of reports that are filtered by the specified parameters. For more information, see Viewing results.

Retrieve a page of reports that are filtered by the specified parameters. For more information, see Viewing results.

Retrieve a page of reports that are filtered by the specified parameters. For more information, see Viewing results.

Retrieve a page of reports that are filtered by the specified parameters. For more information, see Viewing results.

Retrieve a page of reports that are filtered by the specified parameters. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListReports(listReportsOptions *ListReportsOptions) (result *ReportCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListReportsWithContext(ctx context.Context, listReportsOptions *ListReportsOptions) (result *ReportCollection, response *core.DetailedResponse, err error)
listReports(params)
list(
        self,
        instance_id: str,
        *,
        attachment_id: Optional[str] = None,
        group_id: Optional[str] = None,
        profile_id: Optional[str] = None,
        type: Optional[str] = None,
        start: Optional[str] = None,
        limit: Optional[int] = None,
        sort: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ReportCollection> listReports(ListReportsOptions listReportsOptions)

Request

Instantiate the ListReportsOptions struct and set the fields to provide parameter values for the ListReports method.

Use the ListReportsOptions.Builder to create a ListReportsOptions object that contains the parameter values for the listReports method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The ID of the attachment.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The report group ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the profile.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The type of the scan.

    Allowable values: [ondemand,scheduled]

    Example: scheduled

  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression ^[\-]?[a-z0-9_]+$

    Example: profile_name

WithContext method only

The ListReports options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the attachment.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The report group ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the profile.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The type of the scan.

    Allowable values: [ondemand,scheduled]

    Examples:
  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression /^[\\-]?[a-z0-9_]+$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the attachment.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The report group ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the profile.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The type of the scan.

    Allowable values: [ondemand,scheduled]

    Examples:
  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression /^[\\-]?[a-z0-9_]+$/

    Examples:

The listReports options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports?type=scheduled&sort=profile_name"
  • listReportsOptions := &securityandcompliancecenterv3.ListReportsOptions{
      InstanceID: core.StringPtr("acd7032c-15a3-484f-bf5b-67d41534d940"),
      AttachmentID: &attachmentIDForReportLink,
      GroupID: &groupIDForReportLink,
      ProfileID: &profileIDForReportLink,
      Type: &typeForReportLink,
      Limit: core.Int64Ptr(int64(10)),
      Sort: core.StringPtr("profile_name"),
    }
    
    pager, err := securityAndComplianceCenterService.NewReportsPager(listReportsOptions)
    if err != nil {
      panic(err)
    }
    
    var allResults []securityandcompliancecenterv3.Report
    for pager.HasNext() {
      nextPage, err := pager.GetNext()
      if err != nil {
        panic(err)
      }
      allResults = append(allResults, nextPage...)
    }
    b, _ := json.MarshalIndent(allResults, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      attachmentId: attachmentIdForReportLink,
      groupId: groupIdForReportLink,
      profileId: profileIdForReportLink,
      type: typeForReportLink,
      limit: 10,
      sort: 'profile_name',
    };
    
    const allResults = [];
    try {
      const pager = new SecurityAndComplianceCenterV3.ReportsPager(securityAndComplianceCenterService, params);
      while (pager.hasNext()) {
        const nextPage = await pager.getNext();
        expect(nextPage).not.toBeNull();
        allResults.push(...nextPage);
      }
      console.log(JSON.stringify(allResults, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • all_results = []
    pager = ReportsPager(
      client=security_and_compliance_center_service,
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      attachment_id=attachment_id_for_report_link,
      group_id=group_id_for_report_link,
      profile_id=profile_id_for_report_link,
      type=type_for_report_link,
      limit=10,
      sort='profile_name',
    )
    while pager.has_next():
      next_page = pager.get_next()
      assert next_page is not None
      all_results.extend(next_page)
    
    print(json.dumps(all_results, indent=2))
  • ListReportsOptions listReportsOptions = new ListReportsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .attachmentId(attachmentIdForReportLink)
      .groupId(groupIdForReportLink)
      .profileId(profileIdForReportLink)
      .type(typeForReportLink)
      .limit(Long.valueOf("10"))
      .sort("profile_name")
      .build();
    
    ReportsPager pager = new ReportsPager(securityAndComplianceCenterService, listReportsOptions);
    List<Report> allResults = new ArrayList<>();
    while (pager.hasNext()) {
      List<Report> nextPage = pager.getNext();
      allResults.addAll(nextPage);
    }
    
    System.out.println(GsonSingleton.getGson().toJson(allResults));

Response

The page of reports.

The page of reports.

The page of reports.

The page of reports.

The page of reports.

Status Code

  • The reports were successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "limit": 50,
      "total_count": 1,
      "first": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/5c0663bc-eee3-4b0d-bb43-e9de2af927be/v3/reports?limit=50"
      },
      "next": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/5c0663bc-eee3-4b0d-bb43-e9de2af927be/v3/reports?limit=50&start=WzE2ODI1MzAwMDA0NjUsIjgzMjYxYjI0LTk4ZDctNGU1My05MjI1LTgxNTc5NzZjYzczZSJd",
        "start": "WzE2ODI1MzAwMDA0NjUsIjgzMjYxYjI0LTk4ZDctNGU1My05MjI1LTgxNTc5NzZjYzczZSJd"
      },
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "reports": [
        {
          "id": "8271c6e3-12fb-4ae6-a05d-a64cfd2e838f",
          "type": "scheduled",
          "group_id": "13204dec1928aa4739e928c5475557e8a5351f8547403bd1e6c67a0fd3a8cc51",
          "created_on": "2023-04-28T18:29:52.606240842Z",
          "scan_time": "2023-04-28T18:24:06Z",
          "cos_object": "scc-bucket",
          "instance_id": "84644a08-31b6-4988-b504-49a46ca69ccd",
          "account": {
            "id": "f88fd4aa842b46b08652b650370b917c"
          },
          "profile": {
            "id": "84644a08-31b6-4988-b504-49a46ca69ccd",
            "name": "IBM Cloud Security Best Practices",
            "version": "1.0.0"
          },
          "scope": {
            "id": "",
            "type": ""
          },
          "attachment": {
            "id": "f88fd4aa842b46b08652b650370b917c",
            "name": "resource group - Default",
            "description": "Scoped to the Default resource group",
            "schedule": "24H",
            "notifications": {
              "enabled": true,
              "controls": {
                "threshold_limit": 15
              }
            },
            "scope": [
              {
                "id": "ca0941aa-b7e2-43a3-9794-1b3d322474d9",
                "environment": "ibm-cloud",
                "properties": [
                  {
                    "name": "scope_id",
                    "value": "18d32a4430e54c81a6668952609763b2"
                  },
                  {
                    "name": "scope_type",
                    "value": "account"
                  }
                ]
              }
            ]
          },
          "controls_summary": {
            "status": "not_compliant",
            "total_count": 6,
            "compliant_count": 4,
            "not_compliant_count": 2,
            "unable_to_perform_count": 0,
            "user_evaluation_required_count": 0,
            "not_applicable_count": 0,
            "not_compliant_controls": [
              {
                "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
                "control_name": "1.19",
                "control_description": "Ensure security questions are registered by the account owner"
              },
              {
                "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
                "control_name": "1.20",
                "control_description": "Ensure authorized IP ranges are configured for the account"
              }
            ]
          },
          "evaluations_summary": {
            "status": "not_compliant",
            "total_count": 6,
            "pass_count": 4,
            "failure_count": 2,
            "error_count": 0,
            "skipped_count": 0,
            "completed_count": 56
          },
          "tags": {
            "user": [],
            "access": [],
            "service": []
          }
        }
      ]
    }
  • {
      "limit": 50,
      "total_count": 1,
      "first": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/5c0663bc-eee3-4b0d-bb43-e9de2af927be/v3/reports?limit=50"
      },
      "next": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/5c0663bc-eee3-4b0d-bb43-e9de2af927be/v3/reports?limit=50&start=WzE2ODI1MzAwMDA0NjUsIjgzMjYxYjI0LTk4ZDctNGU1My05MjI1LTgxNTc5NzZjYzczZSJd",
        "start": "WzE2ODI1MzAwMDA0NjUsIjgzMjYxYjI0LTk4ZDctNGU1My05MjI1LTgxNTc5NzZjYzczZSJd"
      },
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "reports": [
        {
          "id": "8271c6e3-12fb-4ae6-a05d-a64cfd2e838f",
          "type": "scheduled",
          "group_id": "13204dec1928aa4739e928c5475557e8a5351f8547403bd1e6c67a0fd3a8cc51",
          "created_on": "2023-04-28T18:29:52.606240842Z",
          "scan_time": "2023-04-28T18:24:06Z",
          "cos_object": "scc-bucket",
          "instance_id": "84644a08-31b6-4988-b504-49a46ca69ccd",
          "account": {
            "id": "f88fd4aa842b46b08652b650370b917c"
          },
          "profile": {
            "id": "84644a08-31b6-4988-b504-49a46ca69ccd",
            "name": "IBM Cloud Security Best Practices",
            "version": "1.0.0"
          },
          "scope": {
            "id": "",
            "type": ""
          },
          "attachment": {
            "id": "f88fd4aa842b46b08652b650370b917c",
            "name": "resource group - Default",
            "description": "Scoped to the Default resource group",
            "schedule": "24H",
            "notifications": {
              "enabled": true,
              "controls": {
                "threshold_limit": 15
              }
            },
            "scope": [
              {
                "id": "ca0941aa-b7e2-43a3-9794-1b3d322474d9",
                "environment": "ibm-cloud",
                "properties": [
                  {
                    "name": "scope_id",
                    "value": "18d32a4430e54c81a6668952609763b2"
                  },
                  {
                    "name": "scope_type",
                    "value": "account"
                  }
                ]
              }
            ]
          },
          "controls_summary": {
            "status": "not_compliant",
            "total_count": 6,
            "compliant_count": 4,
            "not_compliant_count": 2,
            "unable_to_perform_count": 0,
            "user_evaluation_required_count": 0,
            "not_applicable_count": 0,
            "not_compliant_controls": [
              {
                "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
                "control_name": "1.19",
                "control_description": "Ensure security questions are registered by the account owner"
              },
              {
                "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
                "control_name": "1.20",
                "control_description": "Ensure authorized IP ranges are configured for the account"
              }
            ]
          },
          "evaluations_summary": {
            "status": "not_compliant",
            "total_count": 6,
            "pass_count": 4,
            "failure_count": 2,
            "error_count": 0,
            "skipped_count": 0,
            "completed_count": 56
          },
          "tags": {
            "user": [],
            "access": [],
            "service": []
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Get a report

Retrieve a specified report and filter the report details by the specified scope ID and/or subscope ID. For more information, see Viewing results.

Retrieve a specified report and filter the report details by the specified scope ID and/or subscope ID. For more information, see Viewing results.

Retrieve a specified report and filter the report details by the specified scope ID and/or subscope ID. For more information, see Viewing results.

Retrieve a specified report and filter the report details by the specified scope ID and/or subscope ID. For more information, see Viewing results.

Retrieve a specified report and filter the report details by the specified scope ID and/or subscope ID. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReport(getReportOptions *GetReportOptions) (result *Report, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportWithContext(ctx context.Context, getReportOptions *GetReportOptions) (result *Report, response *core.DetailedResponse, err error)
getReport(params)
report_get(
        self,
        report_id: str,
        instance_id: str,
        *,
        scope_id: Optional[str] = None,
        subscope_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Report> getReport(GetReportOptions getReportOptions)

Request

Instantiate the GetReportOptions struct and set the fields to provide parameter values for the GetReport method.

Use the GetReportOptions.Builder to create a GetReportOptions object that contains the parameter values for the getReport method.

Path Parameters

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetReport options.

parameters

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getReport options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}"
  • getReportOptions := securityAndComplianceCenterService.NewGetReportOptions(
      reportIDForReportLink,
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    report, response, err := securityAndComplianceCenterService.GetReport(getReportOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(report, "", "  ")
    fmt.Println(string(b))
  • const params = {
      reportId: reportIdForReportLink,
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getReport(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_report(
      report_id=report_id_for_report_link,
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    report = response.get_result()
    
    print(json.dumps(report, indent=2))
  • GetReportOptions getReportOptions = new GetReportOptions.Builder()
      .reportId(reportIdForReportLink)
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<Report> response = securityAndComplianceCenterService.getReport(getReportOptions).execute();
    Report report = response.getResult();
    
    System.out.println(report);

Response

The report.

The report.

The report.

The report.

The report.

Status Code

  • The report was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "id": "2f9cbb25-f89a-4658-bf8a-2eb497c6df71",
      "type": "scheduled",
      "group_id": "4a7999a6ec735d4b355f44f546d2795d89c54df159f2cf14169ccebb4ae25be3",
      "created_on": "2023-05-02T21:20:16.00850988Z",
      "scan_time": "2023-05-02T21:12:56Z",
      "cos_object": "scc-bucket",
      "instance_id": "84644a08-31b6-4988-b504-49a46ca69ccd",
      "account": {
        "id": "f88fd4aa842b46b08652b650370b917c"
      },
      "profile": {
        "id": "f88fd4aa842b46b08652b650370b917c",
        "name": "IBM Cloud Security Best Practices",
        "version": "1.1.0"
      },
      "scope": {
        "id": "f88fd4aa842b46b08652b650370b917c",
        "type": "account"
      },
      "attachment": {
        "id": "f88fd4aa842b46b08652b650370b917c",
        "name": "resource group - Default",
        "description": "Scoped to the Default resource group",
        "schedule": "daily",
        "notifications": {
          "enabled": false,
          "controls": {
            "threshold_limit": 15
          }
        },
        "scope": [
          {
            "id": "ca0941aa-b7e2-43a3-9794-1b3d322474d9",
            "environment": "ibm-cloud",
            "properties": [
              {
                "name": "scope_id",
                "value": "18d32a4430e54c81a6668952609763b2"
              },
              {
                "name": "scope_type",
                "value": "account"
              }
            ]
          }
        ]
      },
      "controls_summary": {
        "status": "not_compliant",
        "total_count": 6,
        "compliant_count": 4,
        "not_compliant_count": 2,
        "unable_to_perform_count": 0,
        "user_evaluation_required_count": 0,
        "not_applicable_count": 0,
        "not_compliant_controls": [
          {
            "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
            "control_name": "1.19",
            "control_description": "Ensure security questions are registered by the account owner"
          },
          {
            "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
            "control_name": "1.20",
            "control_description": "Ensure authorized IP ranges are configured for the account"
          }
        ]
      },
      "evaluations_summary": {
        "status": "not_compliant",
        "total_count": 6,
        "pass_count": 4,
        "failure_count": 2,
        "error_count": 0,
        "skipped_count": 0,
        "completed_count": 56
      },
      "tags": {
        "user": [],
        "access": [],
        "service": []
      }
    }
  • {
      "id": "2f9cbb25-f89a-4658-bf8a-2eb497c6df71",
      "type": "scheduled",
      "group_id": "4a7999a6ec735d4b355f44f546d2795d89c54df159f2cf14169ccebb4ae25be3",
      "created_on": "2023-05-02T21:20:16.00850988Z",
      "scan_time": "2023-05-02T21:12:56Z",
      "cos_object": "scc-bucket",
      "instance_id": "84644a08-31b6-4988-b504-49a46ca69ccd",
      "account": {
        "id": "f88fd4aa842b46b08652b650370b917c"
      },
      "profile": {
        "id": "f88fd4aa842b46b08652b650370b917c",
        "name": "IBM Cloud Security Best Practices",
        "version": "1.1.0"
      },
      "scope": {
        "id": "f88fd4aa842b46b08652b650370b917c",
        "type": "account"
      },
      "attachment": {
        "id": "f88fd4aa842b46b08652b650370b917c",
        "name": "resource group - Default",
        "description": "Scoped to the Default resource group",
        "schedule": "daily",
        "notifications": {
          "enabled": false,
          "controls": {
            "threshold_limit": 15
          }
        },
        "scope": [
          {
            "id": "ca0941aa-b7e2-43a3-9794-1b3d322474d9",
            "environment": "ibm-cloud",
            "properties": [
              {
                "name": "scope_id",
                "value": "18d32a4430e54c81a6668952609763b2"
              },
              {
                "name": "scope_type",
                "value": "account"
              }
            ]
          }
        ]
      },
      "controls_summary": {
        "status": "not_compliant",
        "total_count": 6,
        "compliant_count": 4,
        "not_compliant_count": 2,
        "unable_to_perform_count": 0,
        "user_evaluation_required_count": 0,
        "not_applicable_count": 0,
        "not_compliant_controls": [
          {
            "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
            "control_name": "1.19",
            "control_description": "Ensure security questions are registered by the account owner"
          },
          {
            "id": "812197b3-9c5b-4742-94d9-66a6155ade60",
            "control_name": "1.20",
            "control_description": "Ensure authorized IP ranges are configured for the account"
          }
        ]
      },
      "evaluations_summary": {
        "status": "not_compliant",
        "total_count": 6,
        "pass_count": 4,
        "failure_count": 2,
        "error_count": 0,
        "skipped_count": 0,
        "completed_count": 56
      },
      "tags": {
        "user": [],
        "access": [],
        "service": []
      }
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Get a report summary

Retrieve the complete summarized information for a report. For more information, see Viewing results.

Retrieve the complete summarized information for a report. For more information, see Viewing results.

Retrieve the complete summarized information for a report. For more information, see Viewing results.

Retrieve the complete summarized information for a report. For more information, see Viewing results.

Retrieve the complete summarized information for a report. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/summary
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportSummary(getReportSummaryOptions *GetReportSummaryOptions) (result *ReportSummary, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportSummaryWithContext(ctx context.Context, getReportSummaryOptions *GetReportSummaryOptions) (result *ReportSummary, response *core.DetailedResponse, err error)
getReportSummary(params)
report_summary_get(
        self,
        instance_id: str,
        report_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ReportSummary> getReportSummary(GetReportSummaryOptions getReportSummaryOptions)

Request

Instantiate the GetReportSummaryOptions struct and set the fields to provide parameter values for the GetReportSummary method.

Use the GetReportSummaryOptions.Builder to create a GetReportSummaryOptions object that contains the parameter values for the getReportSummary method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetReportSummary options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getReportSummary options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/summary"
  • getReportSummaryOptions := securityAndComplianceCenterService.NewGetReportSummaryOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
    )
    
    reportSummary, response, err := securityAndComplianceCenterService.GetReportSummary(getReportSummaryOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(reportSummary, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getReportSummary(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_report_summary(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
    )
    report_summary = response.get_result()
    
    print(json.dumps(report_summary, indent=2))
  • GetReportSummaryOptions getReportSummaryOptions = new GetReportSummaryOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .build();
    
    Response<ReportSummary> response = securityAndComplianceCenterService.getReportSummary(getReportSummaryOptions).execute();
    ReportSummary reportSummary = response.getResult();
    
    System.out.println(reportSummary);

Response

The report summary.

The report summary.

The report summary.

The report summary.

The report summary.

Status Code

  • The information was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "report_id": "812197b3-9c5b-4742-94d9-66a6155ade60",
      "instance_id": "84644a08-31b6-4988-b504-49a46ca69ccd",
      "account": {
        "id": "f88fd4aa842b46b08652b650370b917c"
      },
      "score": {
        "pass_count": 10,
        "total_count": 8,
        "percent": 80
      },
      "evaluations": {
        "status": "not_compliant",
        "total_count": 10,
        "pass_count": 7,
        "failure_count": 2,
        "error_count": 0,
        "skipped_count": 0,
        "completed_count": 70
      },
      "controls": {
        "status": "not_compliant",
        "total_count": 5,
        "compliant_count": 3,
        "not_compliant_count": 2,
        "unable_to_perform_count": 0,
        "user_evaluation_required_count": 0,
        "not_applicable_count": 0,
        "not_compliant_controls": [
          {
            "id": "7a02f514-261d-4632-aa38-69a924c64e04",
            "control_name": "1.19",
            "control_description": "Ensure security questions are registered by the account owner"
          },
          {
            "id": "52ae63cf-6202-492f-a031-428d1417b056",
            "control_name": "1.20",
            "control_description": "Ensure authorized IP ranges are configured for the account"
          }
        ]
      },
      "resources": {
        "status": "not_compliant",
        "total_count": 3,
        "compliant_count": 2,
        "not_compliant_count": 1,
        "unable_to_perform_count": 0,
        "user_evaluation_required_count": 0,
        "not_applicable_count": 0,
        "top_failed": [
          {
            "id": "crn:v1:staging:public:cloud-object-storage:global:a/f88fd4aa842b46b08652b650370b917c:812197b3-9c5b-4742-94d9-66a6155ade60:bucket:scc-bucket",
            "name": "scc-bucket",
            "account": "f88fd4aa842b46b08652b650370b917c",
            "service": "cloud-object-storage",
            "service_display_name": "Cloud Object Storage",
            "tags": {
              "user": [],
              "access": [],
              "service": []
            },
            "status": "not_compliant",
            "total_count": 8,
            "pass_count": 3,
            "failure_count": 5,
            "error_count": 0,
            "skipped_count": 0,
            "completed_count": 8
          }
        ]
      }
    }
  • {
      "report_id": "812197b3-9c5b-4742-94d9-66a6155ade60",
      "instance_id": "84644a08-31b6-4988-b504-49a46ca69ccd",
      "account": {
        "id": "f88fd4aa842b46b08652b650370b917c"
      },
      "score": {
        "pass_count": 10,
        "total_count": 8,
        "percent": 80
      },
      "evaluations": {
        "status": "not_compliant",
        "total_count": 10,
        "pass_count": 7,
        "failure_count": 2,
        "error_count": 0,
        "skipped_count": 0,
        "completed_count": 70
      },
      "controls": {
        "status": "not_compliant",
        "total_count": 5,
        "compliant_count": 3,
        "not_compliant_count": 2,
        "unable_to_perform_count": 0,
        "user_evaluation_required_count": 0,
        "not_applicable_count": 0,
        "not_compliant_controls": [
          {
            "id": "7a02f514-261d-4632-aa38-69a924c64e04",
            "control_name": "1.19",
            "control_description": "Ensure security questions are registered by the account owner"
          },
          {
            "id": "52ae63cf-6202-492f-a031-428d1417b056",
            "control_name": "1.20",
            "control_description": "Ensure authorized IP ranges are configured for the account"
          }
        ]
      },
      "resources": {
        "status": "not_compliant",
        "total_count": 3,
        "compliant_count": 2,
        "not_compliant_count": 1,
        "unable_to_perform_count": 0,
        "user_evaluation_required_count": 0,
        "not_applicable_count": 0,
        "top_failed": [
          {
            "id": "crn:v1:staging:public:cloud-object-storage:global:a/f88fd4aa842b46b08652b650370b917c:812197b3-9c5b-4742-94d9-66a6155ade60:bucket:scc-bucket",
            "name": "scc-bucket",
            "account": "f88fd4aa842b46b08652b650370b917c",
            "service": "cloud-object-storage",
            "service_display_name": "Cloud Object Storage",
            "tags": {
              "user": [],
              "access": [],
              "service": []
            },
            "status": "not_compliant",
            "total_count": 8,
            "pass_count": 3,
            "failure_count": 5,
            "error_count": 0,
            "skipped_count": 0,
            "completed_count": 8
          }
        ]
      }
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Get report evaluation details

Download a .csv file to inspect the evaluation details of a specified report. For more information, see Viewing results.

Download a .csv file to inspect the evaluation details of a specified report. For more information, see Viewing results.

Download a .csv file to inspect the evaluation details of a specified report. For more information, see Viewing results.

Download a .csv file to inspect the evaluation details of a specified report. For more information, see Viewing results.

Download a .csv file to inspect the evaluation details of a specified report. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/download
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportDownloadFile(getReportDownloadFileOptions *GetReportDownloadFileOptions) (result io.ReadCloser, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportDownloadFileWithContext(ctx context.Context, getReportDownloadFileOptions *GetReportDownloadFileOptions) (result io.ReadCloser, response *core.DetailedResponse, err error)
getReportDownloadFile(params)
report_download_file_get(
        self,
        instance_id: str,
        report_id: str,
        *,
        accept: Optional[str] = None,
        exclude_summary: Optional[bool] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<InputStream> getReportDownloadFile(GetReportDownloadFileOptions getReportDownloadFileOptions)

Request

Instantiate the GetReportDownloadFileOptions struct and set the fields to provide parameter values for the GetReportDownloadFile method.

Use the GetReportDownloadFileOptions.Builder to create a GetReportDownloadFileOptions object that contains the parameter values for the getReportDownloadFile method.

Custom Headers

  • Determines the file format for downloading the report

    Possible values: 1 ≤ length ≤ 256, Value must match regular expression ^.*$

  • Allowable values: [application/csv,application/pdf]

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

Query Parameters

  • The indication of whether report summary metadata must be excluded.

WithContext method only

The GetReportDownloadFile options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The type of the response: application/csv or application/pdf.

    Allowable values: [application/csv,application/pdf]

  • The indication of whether report summary metadata must be excluded.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The type of the response: application/csv or application/pdf.

    Allowable values: [application/csv,application/pdf]

  • The indication of whether report summary metadata must be excluded.

The getReportDownloadFile options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/csv"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/download"
  • getReportDownloadFileOptions := securityAndComplianceCenterService.NewGetReportDownloadFileOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
    )
    
    result, response, err := securityAndComplianceCenterService.GetReportDownloadFile(getReportDownloadFileOptions)
    if err != nil {
      panic(err)
    }
    if result != nil {
      defer result.Close()
      outFile, err := os.Create("result.out")
      if err != nil { panic(err) }
      defer outFile.Close()
      _, err = io.Copy(outFile, result)
      if err != nil { panic(err) }
    }
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getReportDownloadFile(params);
      // response is binary
      // fs.writeFileSync('result.out', res.result);
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_report_download_file(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
    )
    result = response.get_result()
    
    with open('/tmp/result.out', 'wb') as fp:
      fp.write(result)
  • GetReportDownloadFileOptions getReportDownloadFileOptions = new GetReportDownloadFileOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .build();
    
    Response<InputStream> response = securityAndComplianceCenterService.getReportDownloadFile(getReportDownloadFileOptions).execute();
    try (InputStream inputStream = response.getResult();) {
        inputStream.transferTo(new java.io.FileOutputStream("result.out"));
    }

Response

Response type: io.ReadCloser

Response type: NodeJS.ReadableStream

Response type: BinaryIO

Response type: InputStream

Returns the report in a csv file format

Status Code

  • The details were successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Get report controls

Retrieve a sorted and filtered list of controls for the specified report. For more information, see Viewing results.

Retrieve a sorted and filtered list of controls for the specified report. For more information, see Viewing results.

Retrieve a sorted and filtered list of controls for the specified report. For more information, see Viewing results.

Retrieve a sorted and filtered list of controls for the specified report. For more information, see Viewing results.

Retrieve a sorted and filtered list of controls for the specified report. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/controls
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportControls(getReportControlsOptions *GetReportControlsOptions) (result *ReportControls, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportControlsWithContext(ctx context.Context, getReportControlsOptions *GetReportControlsOptions) (result *ReportControls, response *core.DetailedResponse, err error)
getReportControls(params)
report_controls_get(
        self,
        instance_id: str,
        report_id: str,
        *,
        control_id: Optional[str] = None,
        control_name: Optional[str] = None,
        control_description: Optional[str] = None,
        control_category: Optional[str] = None,
        status: Optional[str] = None,
        sort: Optional[str] = None,
        scope_id: Optional[str] = None,
        subscope_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ReportControls> getReportControls(GetReportControlsOptions getReportControlsOptions)

Request

Instantiate the GetReportControlsOptions struct and set the fields to provide parameter values for the GetReportControls method.

Use the GetReportControlsOptions.Builder to create a GetReportControlsOptions object that contains the parameter values for the getReportControls method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

Query Parameters

  • The ID of the control.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The name of the control.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The description of the control.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression ^[a-zA-Z0-9\s]+$

  • A control category value.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The compliance status value.

    Allowable values: [compliant,not_compliant,unable_to_perform,user_evaluation_required,not_applicable]

    Example: compliant

  • This field sorts controls by using a valid sort field. To learn more, see Sorting.

    Allowable values: [control_name,control_category,status]

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetReportControls options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the control.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The name of the control.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The description of the control.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\s]+$/

  • A control category value.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The compliance status value.

    Allowable values: [compliant,not_compliant,unable_to_perform,user_evaluation_required,not_applicable]

    Examples:
  • This field sorts controls by using a valid sort field. To learn more, see Sorting.

    Allowable values: [control_name,control_category,status]

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the control.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The name of the control.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The description of the control.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\s]+$/

  • A control category value.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The compliance status value.

    Allowable values: [compliant,not_compliant,unable_to_perform,user_evaluation_required,not_applicable]

    Examples:
  • This field sorts controls by using a valid sort field. To learn more, see Sorting.

    Allowable values: [control_name,control_category,status]

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getReportControls options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/controls?status=compliant"
  • getReportControlsOptions := securityAndComplianceCenterService.NewGetReportControlsOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
    )
    getReportControlsOptions.SetStatus("compliant")
    
    reportControls, response, err := securityAndComplianceCenterService.GetReportControls(getReportControlsOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(reportControls, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
      status: 'compliant',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getReportControls(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_report_controls(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
      status='compliant',
    )
    report_controls = response.get_result()
    
    print(json.dumps(report_controls, indent=2))
  • GetReportControlsOptions getReportControlsOptions = new GetReportControlsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .status("compliant")
      .build();
    
    Response<ReportControls> response = securityAndComplianceCenterService.getReportControls(getReportControlsOptions).execute();
    ReportControls reportControls = response.getResult();
    
    System.out.println(reportControls);

Response

The list of controls.

The list of controls.

The list of controls.

The list of controls.

The list of controls.

Status Code

  • The list was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "report_id": "812197b3-9c5b-4742-94d9-66a6155ade60",
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "controls": [
        {
          "report_id": "812197b3-9c5b-4742-94d9-66a6155ade60",
          "home_account_id": "f88fd4aa842b46b08652b650370b917c",
          "id": "a4cccdf8-f73a-46a2-8bd2-211d74cbcf3e",
          "control_library_id": "2db4d946-836a-4c63-865e-c3b48d9f1232",
          "control_library_version": "1.1.0",
          "control_name": "1.1",
          "control_description": "Ensure IBMid password policy requires at least one uppercase letter",
          "control_category": "Identity and Access Management",
          "control_specifications": [
            {
              "control_specification_id": "a4cccdf8-f73a-46a2-8bd2-211d74cbcf3e",
              "control_specification_description": "Check whether IBMid password policy requires at least one uppercase letter",
              "component_id": "iam-identity",
              "component_name": "IAM Identity Service",
              "environment": "ibm-cloud",
              "responsibility": "user",
              "assessments": [
                {
                  "assessment_id": "rule-9a6242a8-39e6-4ab6-9232-4402291e24fe",
                  "assessment_type": "automated",
                  "assessment_method": "ibm-cloud-rule",
                  "assessment_description": "Check whether IBMid password policy requires at least one uppercase letter",
                  "parameter_count": 0,
                  "parameters": [],
                  "status": "compliant",
                  "total_count": 1,
                  "pass_count": 1,
                  "failure_count": 0,
                  "error_count": 0,
                  "skipped_count": 0,
                  "completed_count": 1
                }
              ],
              "status": "compliant",
              "total_count": 1,
              "compliant_count": 1,
              "not_compliant_count": 0,
              "unable_to_perform_count": 0,
              "user_evaluation_required_count": 0,
              "not_applicable_count": 0
            }
          ],
          "status": "compliant",
          "total_count": 1,
          "compliant_count": 1,
          "not_compliant_count": 0,
          "unable_to_perform_count": 0,
          "user_evaluation_required_count": 0,
          "not_applicable_count": 0
        }
      ]
    }
  • {
      "report_id": "812197b3-9c5b-4742-94d9-66a6155ade60",
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "controls": [
        {
          "report_id": "812197b3-9c5b-4742-94d9-66a6155ade60",
          "home_account_id": "f88fd4aa842b46b08652b650370b917c",
          "id": "a4cccdf8-f73a-46a2-8bd2-211d74cbcf3e",
          "control_library_id": "2db4d946-836a-4c63-865e-c3b48d9f1232",
          "control_library_version": "1.1.0",
          "control_name": "1.1",
          "control_description": "Ensure IBMid password policy requires at least one uppercase letter",
          "control_category": "Identity and Access Management",
          "control_specifications": [
            {
              "control_specification_id": "a4cccdf8-f73a-46a2-8bd2-211d74cbcf3e",
              "control_specification_description": "Check whether IBMid password policy requires at least one uppercase letter",
              "component_id": "iam-identity",
              "component_name": "IAM Identity Service",
              "environment": "ibm-cloud",
              "responsibility": "user",
              "assessments": [
                {
                  "assessment_id": "rule-9a6242a8-39e6-4ab6-9232-4402291e24fe",
                  "assessment_type": "automated",
                  "assessment_method": "ibm-cloud-rule",
                  "assessment_description": "Check whether IBMid password policy requires at least one uppercase letter",
                  "parameter_count": 0,
                  "parameters": [],
                  "status": "compliant",
                  "total_count": 1,
                  "pass_count": 1,
                  "failure_count": 0,
                  "error_count": 0,
                  "skipped_count": 0,
                  "completed_count": 1
                }
              ],
              "status": "compliant",
              "total_count": 1,
              "compliant_count": 1,
              "not_compliant_count": 0,
              "unable_to_perform_count": 0,
              "user_evaluation_required_count": 0,
              "not_applicable_count": 0
            }
          ],
          "status": "compliant",
          "total_count": 1,
          "compliant_count": 1,
          "not_compliant_count": 0,
          "unable_to_perform_count": 0,
          "user_evaluation_required_count": 0,
          "not_applicable_count": 0
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Get a report rule

Retrieve the rule by specifying the report ID and rule ID. For more information, see Viewing results.

Retrieve the rule by specifying the report ID and rule ID. For more information, see Viewing results.

Retrieve the rule by specifying the report ID and rule ID. For more information, see Viewing results.

Retrieve the rule by specifying the report ID and rule ID. For more information, see Viewing results.

Retrieve the rule by specifying the report ID and rule ID. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/rules/{rule_id}
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportRule(getReportRuleOptions *GetReportRuleOptions) (result *RuleInfo, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportRuleWithContext(ctx context.Context, getReportRuleOptions *GetReportRuleOptions) (result *RuleInfo, response *core.DetailedResponse, err error)
getReportRule(params)
report_rule_get(
        self,
        instance_id: str,
        report_id: str,
        rule_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<RuleInfo> getReportRule(GetReportRuleOptions getReportRuleOptions)

Request

Instantiate the GetReportRuleOptions struct and set the fields to provide parameter values for the GetReportRule method.

Use the GetReportRuleOptions.Builder to create a GetReportRuleOptions object that contains the parameter values for the getReportRule method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of a rule/assessment

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

    Example: rule-8d444f8c-fd1d-48de-bcaa-f43732568761

WithContext method only

The GetReportRule options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of a rule/assessment.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of a rule/assessment.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

    Examples:

The getReportRule options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/rules/${rule_id}"
  • getReportRuleOptions := securityAndComplianceCenterService.NewGetReportRuleOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
      "rule-8d444f8c-fd1d-48de-bcaa-f43732568761",
    )
    
    ruleInfo, response, err := securityAndComplianceCenterService.GetReportRule(getReportRuleOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(ruleInfo, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
      ruleId: 'rule-8d444f8c-fd1d-48de-bcaa-f43732568761',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getReportRule(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_report_rule(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
      rule_id='rule-8d444f8c-fd1d-48de-bcaa-f43732568761',
    )
    rule_info = response.get_result()
    
    print(json.dumps(rule_info, indent=2))
  • GetReportRuleOptions getReportRuleOptions = new GetReportRuleOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .ruleId("rule-8d444f8c-fd1d-48de-bcaa-f43732568761")
      .build();
    
    Response<RuleInfo> response = securityAndComplianceCenterService.getReportRule(getReportRuleOptions).execute();
    RuleInfo ruleInfo = response.getResult();
    
    System.out.println(ruleInfo);

Response

The rule.

The rule.

The rule.

The rule.

The rule.

Status Code

  • The rule was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "id": "rule-9a6242a8-39e6-4ab6-9232-4402291e24fe",
      "type": "system_defined",
      "description": "Check whether Key Protect encryption keys that are generated by the service are enabled with automatic rotation",
      "version": "1.0.1",
      "account_id": "IBM",
      "created_on": "2022-09-27T13:26:46Z",
      "created_by": "IBM",
      "updated_on": "2023-02-08T11:19:42Z",
      "updated_by": "IBM",
      "required_config": {
        "and": [
          {
            "operator": "is_true",
            "property": "rotation.rotation_enabled"
          },
          {
            "operator": "num_greater_than",
            "property": "rotation.interval_month",
            "value": "0"
          }
        ]
      },
      "target": {
        "additional_target_attributes": [],
        "resource_kind": "key",
        "service_name": "kms"
      },
      "labels": []
    }
  • {
      "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "id": "rule-9a6242a8-39e6-4ab6-9232-4402291e24fe",
      "type": "system_defined",
      "description": "Check whether Key Protect encryption keys that are generated by the service are enabled with automatic rotation",
      "version": "1.0.1",
      "account_id": "IBM",
      "created_on": "2022-09-27T13:26:46Z",
      "created_by": "IBM",
      "updated_on": "2023-02-08T11:19:42Z",
      "updated_by": "IBM",
      "required_config": {
        "and": [
          {
            "operator": "is_true",
            "property": "rotation.rotation_enabled"
          },
          {
            "operator": "num_greater_than",
            "property": "rotation.interval_month",
            "value": "0"
          }
        ]
      },
      "target": {
        "additional_target_attributes": [],
        "resource_kind": "key",
        "service_name": "kms"
      },
      "labels": []
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

List report evaluations

Get a paginated list of evaluations for the specified report. For more information, see Viewing results.

Get a paginated list of evaluations for the specified report. For more information, see Viewing results.

Get a paginated list of evaluations for the specified report. For more information, see Viewing results.

Get a paginated list of evaluations for the specified report. For more information, see Viewing results.

Get a paginated list of evaluations for the specified report. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/evaluations
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListReportEvaluations(listReportEvaluationsOptions *ListReportEvaluationsOptions) (result *EvaluationPage, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListReportEvaluationsWithContext(ctx context.Context, listReportEvaluationsOptions *ListReportEvaluationsOptions) (result *EvaluationPage, response *core.DetailedResponse, err error)
listReportEvaluations(params)
report_evaluations_list(
        self,
        instance_id: str,
        report_id: str,
        *,
        assessment_id: Optional[str] = None,
        assessment_method: Optional[str] = None,
        component_id: Optional[str] = None,
        target_id: Optional[str] = None,
        target_env: Optional[str] = None,
        target_name: Optional[str] = None,
        status: Optional[str] = None,
        start: Optional[str] = None,
        limit: Optional[int] = None,
        sort: Optional[str] = None,
        scope_id: Optional[str] = None,
        subscope_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<EvaluationPage> listReportEvaluations(ListReportEvaluationsOptions listReportEvaluationsOptions)

Request

Instantiate the ListReportEvaluationsOptions struct and set the fields to provide parameter values for the ListReportEvaluations method.

Use the ListReportEvaluationsOptions.Builder to create a ListReportEvaluationsOptions object that contains the parameter values for the listReportEvaluations method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

Query Parameters

  • The ID of the assessment.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The assessment method.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z\-]+$

  • The ID of component.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9.\-]+$

  • The ID of the evaluation target.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The environment of the evaluation target.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The name of the evaluation target.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The evaluation status value.

    Allowable values: [pass,failure,error,skipped]

    Example: failure

  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression ^[\-]?[a-z0-9_]+$

    Example: profile_name

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The ListReportEvaluations options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the assessment.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The assessment method.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z\\-]+$/

  • The ID of component.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9.\\-]+$/

  • The ID of the evaluation target.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The environment of the evaluation target.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The name of the evaluation target.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The evaluation status value.

    Allowable values: [pass,failure,error,skipped]

    Examples:
  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression /^[\\-]?[a-z0-9_]+$/

    Examples:
  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the assessment.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The assessment method.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z\\-]+$/

  • The ID of component.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9.\\-]+$/

  • The ID of the evaluation target.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The environment of the evaluation target.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The name of the evaluation target.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The evaluation status value.

    Allowable values: [pass,failure,error,skipped]

    Examples:
  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • This field sorts results by using a valid sort field. To learn more, see Sorting.

    Possible values: 1 ≤ length ≤ 32, Value must match regular expression /^[\\-]?[a-z0-9_]+$/

    Examples:
  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The listReportEvaluations options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/evaluations?status=failure&sort=profile_name"
  • listReportEvaluationsOptions := &securityandcompliancecenterv3.ListReportEvaluationsOptions{
      InstanceID: core.StringPtr("acd7032c-15a3-484f-bf5b-67d41534d940"),
      ReportID: &reportIDForReportLink,
      AssessmentID: core.StringPtr("testString"),
      AssessmentMethod: core.StringPtr("testString"),
      ComponentID: core.StringPtr("testString"),
      TargetID: core.StringPtr("testString"),
      TargetEnv: core.StringPtr("testString"),
      TargetName: core.StringPtr("testString"),
      Status: core.StringPtr("failure"),
      Limit: core.Int64Ptr(int64(10)),
      Sort: core.StringPtr("profile_name"),
      ScopeID: core.StringPtr("testString"),
      SubscopeID: core.StringPtr("testString"),
    }
    
    pager, err := securityAndComplianceCenterService.NewReportEvaluationsPager(listReportEvaluationsOptions)
    if err != nil {
      panic(err)
    }
    
    var allResults []securityandcompliancecenterv3.Evaluation
    for pager.HasNext() {
      nextPage, err := pager.GetNext()
      if err != nil {
        panic(err)
      }
      allResults = append(allResults, nextPage...)
    }
    b, _ := json.MarshalIndent(allResults, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
      assessmentId: 'testString',
      assessmentMethod: 'testString',
      componentId: 'testString',
      targetId: 'testString',
      targetEnv: 'testString',
      targetName: 'testString',
      status: 'failure',
      limit: 10,
      sort: 'profile_name',
      scopeId: 'testString',
      subscopeId: 'testString',
    };
    
    const allResults = [];
    try {
      const pager = new SecurityAndComplianceCenterV3.ReportEvaluationsPager(securityAndComplianceCenterService, params);
      while (pager.hasNext()) {
        const nextPage = await pager.getNext();
        expect(nextPage).not.toBeNull();
        allResults.push(...nextPage);
      }
      console.log(JSON.stringify(allResults, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • all_results = []
    pager = ReportEvaluationsPager(
      client=security_and_compliance_center_service,
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
      assessment_id='testString',
      assessment_method='testString',
      component_id='testString',
      target_id='testString',
      target_env='testString',
      target_name='testString',
      status='failure',
      limit=10,
      sort='profile_name',
      scope_id='testString',
      subscope_id='testString',
    )
    while pager.has_next():
      next_page = pager.get_next()
      assert next_page is not None
      all_results.extend(next_page)
    
    print(json.dumps(all_results, indent=2))
  • ListReportEvaluationsOptions listReportEvaluationsOptions = new ListReportEvaluationsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .assessmentId("testString")
      .assessmentMethod("testString")
      .componentId("testString")
      .targetId("testString")
      .targetEnv("testString")
      .targetName("testString")
      .status("failure")
      .limit(Long.valueOf("10"))
      .sort("profile_name")
      .scopeId("testString")
      .subscopeId("testString")
      .build();
    
    ReportEvaluationsPager pager = new ReportEvaluationsPager(securityAndComplianceCenterService, listReportEvaluationsOptions);
    List<Evaluation> allResults = new ArrayList<>();
    while (pager.hasNext()) {
      List<Evaluation> nextPage = pager.getNext();
      allResults.addAll(nextPage);
    }
    
    System.out.println(GsonSingleton.getGson().toJson(allResults));

Response

The page of assessment evaluations.

The page of assessment evaluations.

The page of assessment evaluations.

The page of assessment evaluations.

The page of assessment evaluations.

Status Code

  • The list was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "limit": 50,
      "total_count": 1,
      "first": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/7e9d0235-4d21-4c21-9c2d-da0ecb0b22f6/v3/reports/2f9cbb25-f89a-4658-bf8a-2eb497c6df71/evaluations?limit=50"
      },
      "next": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/7e9d0235-4d21-4c21-9c2d-da0ecb0b22f6/v3/reports/2f9cbb25-f89a-4658-bf8a-2eb497c6df71/evaluations?limit=50&start=WyJpYW0taWRlbnRpdHkiLCJydWxlLWZmNWRkYzg2LTI0NTQtNDFlMi04ZTRkLWQ3OTk4OGVlN2NkYyIsImNybjp2MTpzdGFnaW5nOnB1YmxpYzppYW0taWRlbnRpdHk6OmEvMjQxMWZmZGMxNjg0NGIwN2E0MjUyMWMzNDQzZjQ1NmQ6OjoiXQ%3D%3D",
        "start": "WyJpYW0taWRlbnRpdHkiLCJydWxlLWZmNWRkYzg2LTI0NTQtNDFlMi04ZTRkLWQ3OTk4OGVlN2NkYyIsImNybjp2MTpzdGFnaW5nOnB1YmxpYzppYW0taWRlbnRpdHk6OmEvMjQxMWZmZGMxNjg0NGIwN2E0MjUyMWMzNDQzZjQ1NmQ6OjoiXQ=="
      },
      "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "evaluations": [
        {
          "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
          "home_account_id": "f88fd4aa842b46b08652b650370b917c",
          "component_id": "user-management",
          "component_name": "User Management",
          "assessment": {
            "assessment_id": "rule-9a6242a8-39e6-4ab6-9232-4402291e24fe",
            "assessment_type": "automated",
            "assessment_method": "ibm-cloud-rule",
            "assessment_description": "Check whether IAM users are attached to at least one access group",
            "parameter_count": 0,
            "parameters": []
          },
          "evaluate_time": "2023-05-02T21:17:03.648002564Z",
          "target": {
            "id": "account/f88fd4aa842b46b08652b650370b917c/component/user-management/user/IBMid-6650024F54",
            "account_id": "f88fd4aa842b46b08652b650370b917c",
            "environment": "ibm-cloud",
            "service_name": "user-management",
            "service_display_name": "User Management",
            "resource_crn": "crn:v1:staging:public:user-management::a/f88fd4aa842b46b08652b650370b917c:::",
            "resource_name": "IBMid-6650024F54",
            "tags": {
              "user": [],
              "access": [],
              "service": []
            }
          },
          "status": "pass",
          "reason": "",
          "details": {
            "properties": [],
            "provider_type": "IBM"
          },
          "evaluated_by": "abc@ibm.com"
        }
      ]
    }
  • {
      "limit": 50,
      "total_count": 1,
      "first": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/7e9d0235-4d21-4c21-9c2d-da0ecb0b22f6/v3/reports/2f9cbb25-f89a-4658-bf8a-2eb497c6df71/evaluations?limit=50"
      },
      "next": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/7e9d0235-4d21-4c21-9c2d-da0ecb0b22f6/v3/reports/2f9cbb25-f89a-4658-bf8a-2eb497c6df71/evaluations?limit=50&start=WyJpYW0taWRlbnRpdHkiLCJydWxlLWZmNWRkYzg2LTI0NTQtNDFlMi04ZTRkLWQ3OTk4OGVlN2NkYyIsImNybjp2MTpzdGFnaW5nOnB1YmxpYzppYW0taWRlbnRpdHk6OmEvMjQxMWZmZGMxNjg0NGIwN2E0MjUyMWMzNDQzZjQ1NmQ6OjoiXQ%3D%3D",
        "start": "WyJpYW0taWRlbnRpdHkiLCJydWxlLWZmNWRkYzg2LTI0NTQtNDFlMi04ZTRkLWQ3OTk4OGVlN2NkYyIsImNybjp2MTpzdGFnaW5nOnB1YmxpYzppYW0taWRlbnRpdHk6OmEvMjQxMWZmZGMxNjg0NGIwN2E0MjUyMWMzNDQzZjQ1NmQ6OjoiXQ=="
      },
      "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "evaluations": [
        {
          "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
          "home_account_id": "f88fd4aa842b46b08652b650370b917c",
          "component_id": "user-management",
          "component_name": "User Management",
          "assessment": {
            "assessment_id": "rule-9a6242a8-39e6-4ab6-9232-4402291e24fe",
            "assessment_type": "automated",
            "assessment_method": "ibm-cloud-rule",
            "assessment_description": "Check whether IAM users are attached to at least one access group",
            "parameter_count": 0,
            "parameters": []
          },
          "evaluate_time": "2023-05-02T21:17:03.648002564Z",
          "target": {
            "id": "account/f88fd4aa842b46b08652b650370b917c/component/user-management/user/IBMid-6650024F54",
            "account_id": "f88fd4aa842b46b08652b650370b917c",
            "environment": "ibm-cloud",
            "service_name": "user-management",
            "service_display_name": "User Management",
            "resource_crn": "crn:v1:staging:public:user-management::a/f88fd4aa842b46b08652b650370b917c:::",
            "resource_name": "IBMid-6650024F54",
            "tags": {
              "user": [],
              "access": [],
              "service": []
            }
          },
          "status": "pass",
          "reason": "",
          "details": {
            "properties": [],
            "provider_type": "IBM"
          },
          "evaluated_by": "abc@ibm.com"
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

List report resources

Get a paginated list of resources for the specified report. For more information, see Viewing results.

Get a paginated list of resources for the specified report. For more information, see Viewing results.

Get a paginated list of resources for the specified report. For more information, see Viewing results.

Get a paginated list of resources for the specified report. For more information, see Viewing results.

Get a paginated list of resources for the specified report. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/resources
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListReportResources(listReportResourcesOptions *ListReportResourcesOptions) (result *ResourcePage, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListReportResourcesWithContext(ctx context.Context, listReportResourcesOptions *ListReportResourcesOptions) (result *ResourcePage, response *core.DetailedResponse, err error)
listReportResources(params)
report_resources_list(
        self,
        instance_id: str,
        report_id: str,
        *,
        id: Optional[str] = None,
        resource_name: Optional[str] = None,
        account_id: Optional[str] = None,
        component_id: Optional[str] = None,
        status: Optional[str] = None,
        sort: Optional[str] = None,
        start: Optional[str] = None,
        limit: Optional[int] = None,
        scope_id: Optional[str] = None,
        subscope_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ResourcePage> listReportResources(ListReportResourcesOptions listReportResourcesOptions)

Request

Instantiate the ListReportResourcesOptions struct and set the fields to provide parameter values for the ListReportResources method.

Use the ListReportResourcesOptions.Builder to create a ListReportResourcesOptions object that contains the parameter values for the listReportResources method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

Query Parameters

  • The ID of the resource.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The name of the resource.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of component.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9.\-]+$

  • The compliance status value.

    Allowable values: [compliant,not_compliant,unable_to_perform,user_evaluation_required,not_applicable]

    Example: compliant

  • This field sorts resources by using a valid sort field. To learn more, see Sorting.

    Allowable values: [account_id,component_id,resource_name,status]

  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The ListReportResources options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the resource.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The name of the resource.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of component.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9.\\-]+$/

  • The compliance status value.

    Allowable values: [compliant,not_compliant,unable_to_perform,user_evaluation_required,not_applicable]

    Examples:
  • This field sorts resources by using a valid sort field. To learn more, see Sorting.

    Allowable values: [account_id,component_id,resource_name,status]

  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the resource.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The name of the resource.

    Possible values: 1 ≤ length ≤ 1024, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of component.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9.\\-]+$/

  • The compliance status value.

    Allowable values: [compliant,not_compliant,unable_to_perform,user_evaluation_required,not_applicable]

    Examples:
  • This field sorts resources by using a valid sort field. To learn more, see Sorting.

    Allowable values: [account_id,component_id,resource_name,status]

  • The indication of what resource to start the page on.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The indication of many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The listReportResources options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/resources?status=compliant"
  • listReportResourcesOptions := &securityandcompliancecenterv3.ListReportResourcesOptions{
      InstanceID: core.StringPtr("acd7032c-15a3-484f-bf5b-67d41534d940"),
      ReportID: &reportIDForReportLink,
      ID: core.StringPtr("testString"),
      ResourceName: core.StringPtr("testString"),
      AccountID: &accountIDForReportLink,
      ComponentID: core.StringPtr("testString"),
      Status: core.StringPtr("compliant"),
      Sort: core.StringPtr("account_id"),
      Limit: core.Int64Ptr(int64(10)),
      ScopeID: core.StringPtr("testString"),
      SubscopeID: core.StringPtr("testString"),
    }
    
    pager, err := securityAndComplianceCenterService.NewReportResourcesPager(listReportResourcesOptions)
    if err != nil {
      panic(err)
    }
    
    var allResults []securityandcompliancecenterv3.Resource
    for pager.HasNext() {
      nextPage, err := pager.GetNext()
      if err != nil {
        panic(err)
      }
      allResults = append(allResults, nextPage...)
    }
    b, _ := json.MarshalIndent(allResults, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
      id: 'testString',
      resourceName: 'testString',
      accountId: accountIdForReportLink,
      componentId: 'testString',
      status: 'compliant',
      sort: 'account_id',
      limit: 10,
      scopeId: 'testString',
      subscopeId: 'testString',
    };
    
    const allResults = [];
    try {
      const pager = new SecurityAndComplianceCenterV3.ReportResourcesPager(securityAndComplianceCenterService, params);
      while (pager.hasNext()) {
        const nextPage = await pager.getNext();
        expect(nextPage).not.toBeNull();
        allResults.push(...nextPage);
      }
      console.log(JSON.stringify(allResults, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • all_results = []
    pager = ReportResourcesPager(
      client=security_and_compliance_center_service,
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
      id='testString',
      resource_name='testString',
      account_id=account_id_for_report_link,
      component_id='testString',
      status='compliant',
      sort='account_id',
      limit=10,
      scope_id='testString',
      subscope_id='testString',
    )
    while pager.has_next():
      next_page = pager.get_next()
      assert next_page is not None
      all_results.extend(next_page)
    
    print(json.dumps(all_results, indent=2))
  • ListReportResourcesOptions listReportResourcesOptions = new ListReportResourcesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .id("testString")
      .resourceName("testString")
      .accountId(accountIdForReportLink)
      .componentId("testString")
      .status("compliant")
      .sort("account_id")
      .limit(Long.valueOf("10"))
      .scopeId("testString")
      .subscopeId("testString")
      .build();
    
    ReportResourcesPager pager = new ReportResourcesPager(securityAndComplianceCenterService, listReportResourcesOptions);
    List<Resource> allResults = new ArrayList<>();
    while (pager.hasNext()) {
      List<Resource> nextPage = pager.getNext();
      allResults.addAll(nextPage);
    }
    
    System.out.println(GsonSingleton.getGson().toJson(allResults));

Response

The page of resource evaluation summaries.

The page of resource evaluation summaries.

The page of resource evaluation summaries.

The page of resource evaluation summaries.

The page of resource evaluation summaries.

Status Code

  • The list was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "limit": 50,
      "total_count": 13,
      "first": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/9a6242a8-39e6-4ab6-9232-4402291e24fe/v3/reports/9a6242a8-39e6-4ab6-9232-4402291e24fe/resources?limit=50"
      },
      "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "resources": [
        {
          "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
          "home_account_id": "f88fd4aa842b46b08652b650370b917c",
          "id": "account/f88fd4aa842b46b08652b650370b917c/component/user-management/user/IBMid-6650024F54",
          "resource_name": "IBMid-6650024F54",
          "account": {
            "id": "f88fd4aa842b46b08652b650370b917c"
          },
          "component_id": "user-management",
          "component_name": "User Management",
          "environment": "ibm-cloud",
          "tags": {
            "user": [],
            "access": [],
            "service": []
          },
          "status": "compliant",
          "total_count": 1,
          "pass_count": 1,
          "failure_count": 0,
          "error_count": 0,
          "skipped_count": 0,
          "completed_count": 1
        }
      ]
    }
  • {
      "limit": 50,
      "total_count": 13,
      "first": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/9a6242a8-39e6-4ab6-9232-4402291e24fe/v3/reports/9a6242a8-39e6-4ab6-9232-4402291e24fe/resources?limit=50"
      },
      "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "resources": [
        {
          "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
          "home_account_id": "f88fd4aa842b46b08652b650370b917c",
          "id": "account/f88fd4aa842b46b08652b650370b917c/component/user-management/user/IBMid-6650024F54",
          "resource_name": "IBMid-6650024F54",
          "account": {
            "id": "f88fd4aa842b46b08652b650370b917c"
          },
          "component_id": "user-management",
          "component_name": "User Management",
          "environment": "ibm-cloud",
          "tags": {
            "user": [],
            "access": [],
            "service": []
          },
          "status": "compliant",
          "total_count": 1,
          "pass_count": 1,
          "failure_count": 0,
          "error_count": 0,
          "skipped_count": 0,
          "completed_count": 1
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

List report tags

Retrieve a list of tags for the specified report. For more information, see Viewing results.

Retrieve a list of tags for the specified report. For more information, see Viewing results.

Retrieve a list of tags for the specified report. For more information, see Viewing results.

Retrieve a list of tags for the specified report. For more information, see Viewing results.

Retrieve a list of tags for the specified report. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/tags
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportTags(getReportTagsOptions *GetReportTagsOptions) (result *ReportTags, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportTagsWithContext(ctx context.Context, getReportTagsOptions *GetReportTagsOptions) (result *ReportTags, response *core.DetailedResponse, err error)
getReportTags(params)
report_tags_get(
        self,
        instance_id: str,
        report_id: str,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ReportTags> getReportTags(GetReportTagsOptions getReportTagsOptions)

Request

Instantiate the GetReportTagsOptions struct and set the fields to provide parameter values for the GetReportTags method.

Use the GetReportTagsOptions.Builder to create a GetReportTagsOptions object that contains the parameter values for the getReportTags method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetReportTags options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getReportTags options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/tags"
  • getReportTagsOptions := securityAndComplianceCenterService.NewGetReportTagsOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
    )
    
    reportTags, response, err := securityAndComplianceCenterService.GetReportTags(getReportTagsOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(reportTags, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getReportTags(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_report_tags(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
    )
    report_tags = response.get_result()
    
    print(json.dumps(report_tags, indent=2))
  • GetReportTagsOptions getReportTagsOptions = new GetReportTagsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .build();
    
    Response<ReportTags> response = securityAndComplianceCenterService.getReportTags(getReportTagsOptions).execute();
    ReportTags reportTags = response.getResult();
    
    System.out.println(reportTags);

Response

The response body of the get_tags operation.

The response body of the get_tags operation.

The response body of the get_tags operation.

The response body of the get_tags operation.

The response body of the get_tags operation.

Status Code

  • The tags were successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • Internal server error

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "report_id": "2f9cbb25-f89a-4658-bf8a-2eb497c6df81",
      "tags": {
        "user": [],
        "access": [],
        "service": []
      }
    }
  • {
      "report_id": "2f9cbb25-f89a-4658-bf8a-2eb497c6df81",
      "tags": {
        "user": [],
        "access": [],
        "service": []
      }
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Get report violations drift

Get a list of report violation data points for the specified report and time frame. For more information, see Viewing results.

Get a list of report violation data points for the specified report and time frame. For more information, see Viewing results.

Get a list of report violation data points for the specified report and time frame. For more information, see Viewing results.

Get a list of report violation data points for the specified report and time frame. For more information, see Viewing results.

Get a list of report violation data points for the specified report and time frame. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/violations_drift
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportViolationsDrift(getReportViolationsDriftOptions *GetReportViolationsDriftOptions) (result *ReportViolationsDrift, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetReportViolationsDriftWithContext(ctx context.Context, getReportViolationsDriftOptions *GetReportViolationsDriftOptions) (result *ReportViolationsDrift, response *core.DetailedResponse, err error)
getReportViolationsDrift(params)
report_violations_drift_get(
        self,
        instance_id: str,
        report_id: str,
        *,
        scan_time_duration: Optional[int] = None,
        scope_id: Optional[str] = None,
        subscope_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ReportViolationsDrift> getReportViolationsDrift(GetReportViolationsDriftOptions getReportViolationsDriftOptions)

Request

Instantiate the GetReportViolationsDriftOptions struct and set the fields to provide parameter values for the GetReportViolationsDrift method.

Use the GetReportViolationsDriftOptions.Builder to create a GetReportViolationsDriftOptions object that contains the parameter values for the getReportViolationsDrift method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

Query Parameters

  • The duration of the scan_time timestamp in number of days.

    Possible values: 0 ≤ value ≤ 366

    Default: 0

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The GetReportViolationsDrift options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The duration of the scan_time timestamp in number of days.

    Possible values: 0 ≤ value ≤ 366

    Default: 0

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The duration of the scan_time timestamp in number of days.

    Possible values: 0 ≤ value ≤ 366

    Default: 0

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The getReportViolationsDrift options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/violations_drift"
  • getReportViolationsDriftOptions := securityAndComplianceCenterService.NewGetReportViolationsDriftOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
    )
    
    reportViolationsDrift, response, err := securityAndComplianceCenterService.GetReportViolationsDrift(getReportViolationsDriftOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(reportViolationsDrift, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.getReportViolationsDrift(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.get_report_violations_drift(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
    )
    report_violations_drift = response.get_result()
    
    print(json.dumps(report_violations_drift, indent=2))
  • GetReportViolationsDriftOptions getReportViolationsDriftOptions = new GetReportViolationsDriftOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .build();
    
    Response<ReportViolationsDrift> response = securityAndComplianceCenterService.getReportViolationsDrift(getReportViolationsDriftOptions).execute();
    ReportViolationsDrift reportViolationsDrift = response.getResult();
    
    System.out.println(reportViolationsDrift);

Response

The response body of the get_report_violations_drift operation.

The response body of the get_report_violations_drift operation.

The response body of the get_report_violations_drift operation.

The response body of the get_report_violations_drift operation.

The response body of the get_report_violations_drift operation.

Status Code

  • The list was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "report_group_id": "4a7999a6ec735d4b355f44f546d2795d89c54df159f2cf14169ccebb4ae25be3",
      "data_points": [
        {
          "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
          "report_group_id": "4a7999a6ec735d4b355f44f546d2795d89c54df159f2cf14169ccebb4ae25be3",
          "scan_time": "2023-05-02T21:12:56Z",
          "controls_summary": {
            "status": "not_compliant",
            "total_count": 240,
            "compliant_count": 225,
            "not_compliant_count": 15,
            "unable_to_perform_count": 0,
            "user_evaluation_required_count": 0,
            "not_applicable_count": 0
          }
        }
      ]
    }
  • {
      "home_account_id": "f88fd4aa842b46b08652b650370b917c",
      "report_group_id": "4a7999a6ec735d4b355f44f546d2795d89c54df159f2cf14169ccebb4ae25be3",
      "data_points": [
        {
          "report_id": "9a6242a8-39e6-4ab6-9232-4402291e24fe",
          "report_group_id": "4a7999a6ec735d4b355f44f546d2795d89c54df159f2cf14169ccebb4ae25be3",
          "scan_time": "2023-05-02T21:12:56Z",
          "controls_summary": {
            "status": "not_compliant",
            "total_count": 240,
            "compliant_count": 225,
            "not_compliant_count": 15,
            "unable_to_perform_count": 0,
            "user_evaluation_required_count": 0,
            "not_applicable_count": 0
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

List scan reports

Get a list of scan reports and view the status of report generation in progress. For more information, see Viewing results.

Get a list of scan reports and view the status of report generation in progress. For more information, see Viewing results.

Get a list of scan reports and view the status of report generation in progress. For more information, see Viewing results.

Get a list of scan reports and view the status of report generation in progress. For more information, see Viewing results.

Get a list of scan reports and view the status of report generation in progress. For more information, see Viewing results.

GET /instances/{instance_id}/v3/reports/{report_id}/scan_reports
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListScanReports(listScanReportsOptions *ListScanReportsOptions) (result *ScanReportCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListScanReportsWithContext(ctx context.Context, listScanReportsOptions *ListScanReportsOptions) (result *ScanReportCollection, response *core.DetailedResponse, err error)
listScanReports(params)
scan_reports_list(
        self,
        instance_id: str,
        report_id: str,
        *,
        scope_id: Optional[str] = None,
        subscope_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<ScanReportCollection> listScanReports(ListScanReportsOptions listScanReportsOptions)

Request

Instantiate the ListScanReportsOptions struct and set the fields to provide parameter values for the ListScanReports method.

Use the ListScanReportsOptions.Builder to create a ListScanReportsOptions object that contains the parameter values for the listScanReports method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

Query Parameters

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

WithContext method only

The ListScanReports options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the scope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The ID of the subscope.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The listScanReports options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/scan_reports"
  • listScanReportsOptions := securityAndComplianceCenterService.NewListScanReportsOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
    )
    
    scanReportCollection, response, err := securityAndComplianceCenterService.ListScanReports(listScanReportsOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(scanReportCollection, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.listScanReports(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.list_scan_reports(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
    )
    scan_report_collection = response.get_result()
    
    print(json.dumps(scan_report_collection, indent=2))
  • ListScanReportsOptions listScanReportsOptions = new ListScanReportsOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .build();
    
    Response<ScanReportCollection> response = securityAndComplianceCenterService.listScanReports(listScanReportsOptions).execute();
    ScanReportCollection scanReportCollection = response.getResult();
    
    System.out.println(scanReportCollection);

Response

The page of scan reports.

The page of scan reports.

The page of scan reports.

The page of scan reports.

The page of scan reports.

Status Code

  • The list of scan reports was successfully retrieved.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "limit": 50,
      "total_count": 1,
      "first": {
        "href": "https://us-south.compliance.test.cloud.ibm.com/instances/6dd72c8b-3f73-4d29-a405-ed05d60208c0/v3/reports/0708d8c0-088c-4290-b115-3428949e5eed/scan_reports?limit=50"
      },
      "scan_reports": [
        {
          "id": "d110e28f-9969-4bdc-86e7-f1e3debd4e44",
          "scan_id": "e44316e3-53bc-449b-a808-c16df680d462",
          "instance_id": "6dd72c8b-3f73-4d29-a405-ed05d60208c0",
          "scope_id": "132009ff-b982-412e-a110-ad8797e10f84",
          "subscope_id": "c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a",
          "status": "completed",
          "created_on": "2024-05-08T21:20:16.00850988Z",
          "format": "csv",
          "href": "https://us-south.compliance.cloud.ibm.com/instances/6dd72c8b-3f73-4d29-a405-ed05d60208c0/v3/reports/0708d8c0-088c-4290-b115-3428949e5eed/scan_reports/d110e28f-9969-4bdc-86e7-f1e3debd4e44"
        }
      ]
    }
  • {
      "limit": 50,
      "total_count": 1,
      "first": {
        "href": "https://us-south.compliance.test.cloud.ibm.com/instances/6dd72c8b-3f73-4d29-a405-ed05d60208c0/v3/reports/0708d8c0-088c-4290-b115-3428949e5eed/scan_reports?limit=50"
      },
      "scan_reports": [
        {
          "id": "d110e28f-9969-4bdc-86e7-f1e3debd4e44",
          "scan_id": "e44316e3-53bc-449b-a808-c16df680d462",
          "instance_id": "6dd72c8b-3f73-4d29-a405-ed05d60208c0",
          "scope_id": "132009ff-b982-412e-a110-ad8797e10f84",
          "subscope_id": "c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a",
          "status": "completed",
          "created_on": "2024-05-08T21:20:16.00850988Z",
          "format": "csv",
          "href": "https://us-south.compliance.cloud.ibm.com/instances/6dd72c8b-3f73-4d29-a405-ed05d60208c0/v3/reports/0708d8c0-088c-4290-b115-3428949e5eed/scan_reports/d110e28f-9969-4bdc-86e7-f1e3debd4e44"
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Create a scan report

Create a scan report for a specific scope or sub-scope. For more information, see Defining custom rules.

Create a scan report for a specific scope or sub-scope. For more information, see Defining custom rules.

Create a scan report for a specific scope or sub-scope. For more information, see Defining custom rules.

Create a scan report for a specific scope or sub-scope. For more information, see Defining custom rules.

Create a scan report for a specific scope or sub-scope. For more information, see Defining custom rules.

POST /instances/{instance_id}/v3/reports/{report_id}/scan_reports
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateScanReport(createScanReportOptions *CreateScanReportOptions) (result *CreateScanReport, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateScanReportWithContext(ctx context.Context, createScanReportOptions *CreateScanReportOptions) (result *CreateScanReport, response *core.DetailedResponse, err error)
createScanReport(params)
scan_report_create(
        self,
        instance_id: str,
        report_id: str,
        format: str,
        *,
        scope_id: Optional[str] = None,
        subscope_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<CreateScanReport> createScanReport(CreateScanReportOptions createScanReportOptions)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

  • compliance.posture-management-reports.create

Auditing

Calling this method generates the following auditing event.

  • compliance.posture-management-reports.create

Request

Instantiate the CreateScanReportOptions struct and set the fields to provide parameter values for the CreateScanReport method.

Use the CreateScanReportOptions.Builder to create a CreateScanReportOptions object that contains the parameter values for the createScanReport method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The scan report request body.

Examples:
{
  "scope_id": "132009ff-b982-412e-a110-ad8797e10f84",
  "subscope_id": "c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a",
  "format": "csv"
}

WithContext method only

The CreateScanReport options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The enum of different report format types.

    Allowable values: [csv,pdf]

    Examples:
  • The ID of the scope.

    Possible values: 0 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

    Examples:
  • The ID of the sub-scope.

    Possible values: 0 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the scan that is associated with a report.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

  • The enum of different report format types.

    Allowable values: [csv,pdf]

    Examples:
  • The ID of the scope.

    Possible values: 0 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

    Examples:
  • The ID of the sub-scope.

    Possible values: 0 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

    Examples:

The createScanReport options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "scope_id": "132009ff-b982-412e-a110-ad8797e10f84", "subscope_id": "c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a", "format": "csv" }'   "${base_url}/instances/${instance_id}/v3/reports/${report_id}/scan_reports"
  • createScanReportOptions := securityAndComplianceCenterService.NewCreateScanReportOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
      reportIDForReportLink,
      "csv",
    )
    createScanReportOptions.SetScopeID("132009ff-b982-412e-a110-ad8797e10f84")
    createScanReportOptions.SetSubscopeID("c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a")
    
    createScanReport, response, err := securityAndComplianceCenterService.CreateScanReport(createScanReportOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(createScanReport, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      reportId: reportIdForReportLink,
      format: 'csv',
      scopeId: '132009ff-b982-412e-a110-ad8797e10f84',
      subscopeId: 'c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createScanReport(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.create_scan_report(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      report_id=report_id_for_report_link,
      format='csv',
      scope_id='132009ff-b982-412e-a110-ad8797e10f84',
      subscope_id='c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a',
    )
    create_scan_report = response.get_result()
    
    print(json.dumps(create_scan_report, indent=2))
  • CreateScanReportOptions createScanReportOptions = new CreateScanReportOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .reportId(reportIdForReportLink)
      .format("csv")
      .scopeId("132009ff-b982-412e-a110-ad8797e10f84")
      .subscopeId("c7ddcbcc-6a43-4ab3-b6a7-b2d8f65cd54a")
      .build();
    
    Response<CreateScanReport> response = securityAndComplianceCenterService.createScanReport(createScanReportOptions).execute();
    CreateScanReport createScanReport = response.getResult();
    
    System.out.println(createScanReport);

Response

The scan report ID.

The scan report ID.

The scan report ID.

The scan report ID.

The scan report ID.

Status Code

  • The scan report was created successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

  • The client sent too many requests in a short amount of time.

  • A backend service that is required to complete the operation is unavailable. Try again later.

Example responses
  • {
      "id": "98ecda62-da96-4fb7-aec8-f0cc7e43eb65"
    }
  • {
      "id": "98ecda62-da96-4fb7-aec8-f0cc7e43eb65"
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 429,
      "errors": [
        {
          "code": "rate_limit_exceeded",
          "message": "The client has sent too many requests in a given amount of time."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }
  • {
      "trace": "b05ed07e-c4d9-4285-841c-1e954c0b4a0e",
      "status_code": 503,
      "errors": [
        {
          "code": "internal_error",
          "message": "A backend service is unavailable. Try again later."
        }
      ]
    }

Create a scan

Create a scan to evaluate your resources.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule. If your attachment exists, but you don't want to wait for the next scan to see your posture, you can initiate an on-demand scan. For more information, see Running a scan on demand.

Create a scan to evaluate your resources.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule. If your attachment exists, but you don't want to wait for the next scan to see your posture, you can initiate an on-demand scan. For more information, see Running a scan on demand.

Create a scan to evaluate your resources.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule. If your attachment exists, but you don't want to wait for the next scan to see your posture, you can initiate an on-demand scan. For more information, see Running a scan on demand.

Create a scan to evaluate your resources.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule. If your attachment exists, but you don't want to wait for the next scan to see your posture, you can initiate an on-demand scan. For more information, see Running a scan on demand.

Create a scan to evaluate your resources.

With Security and Compliance Center, you can evaluate your resources on a recurring schedule. If your attachment exists, but you don't want to wait for the next scan to see your posture, you can initiate an on-demand scan. For more information, see Running a scan on demand.

POST /instances/{instance_id}/v3/scans
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateScan(createScanOptions *CreateScanOptions) (result *CreateScanResponse, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateScanWithContext(ctx context.Context, createScanOptions *CreateScanOptions) (result *CreateScanResponse, response *core.DetailedResponse, err error)
createScan(params)
scan_create(
        self,
        instance_id: str,
        *,
        attachment_id: Optional[str] = None,
        account_id: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<CreateScanResponse> createScan(CreateScanOptions createScanOptions)

Request

Instantiate the CreateScanOptions struct and set the fields to provide parameter values for the CreateScan method.

Use the CreateScanOptions.Builder to create a CreateScanOptions object that contains the parameter values for the createScan method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

The request body to create a scan.

WithContext method only

The CreateScan options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the profile attachment.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The ID of the profile attachment.

  • The user account ID.

    Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

The createScan options.

  • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{}'   "${base_url}/instances/${instance_id}/v3/scans"
  • createScanOptions := securityAndComplianceCenterService.NewCreateScanOptions(
      "acd7032c-15a3-484f-bf5b-67d41534d940",
    )
    
    createScanResponse, response, err := securityAndComplianceCenterService.CreateScan(createScanOptions)
    if err != nil {
      panic(err)
    }
    b, _ := json.MarshalIndent(createScanResponse, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
    };
    
    let res;
    try {
      res = await securityAndComplianceCenterService.createScan(params);
      console.log(JSON.stringify(res.result, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • response = security_and_compliance_center_service.create_scan(
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
    )
    create_scan_response = response.get_result()
    
    print(json.dumps(create_scan_response, indent=2))
  • CreateScanOptions createScanOptions = new CreateScanOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .build();
    
    Response<CreateScanResponse> response = securityAndComplianceCenterService.createScan(createScanOptions).execute();
    CreateScanResponse createScanResponse = response.getResult();
    
    System.out.println(createScanResponse);

Response

The response that details the whether starting a scan was successful

The response that details the whether starting a scan was successful.

The response that details the whether starting a scan was successful.

The response that details the whether starting a scan was successful.

The response that details the whether starting a scan was successful.

Status Code

  • The scan was created successfully.

  • The request body is invalid.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • Internal server error

Example responses
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 400,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "bad_request",
          "message": "Invaild sort parameter",
          "target": {
            "type": "parameter",
            "name": "sort",
            "value": "non_existant_parameter"
          }
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }
  • {
      "status_code": 500,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "internal_error",
          "message": "Internal server error"
        }
      ]
    }

Get all rules

Retrieve all the rules that you use to target the exact configuration properties that you need to ensure are compliant. For more information, see Defining custom rules.

Retrieve all the rules that you use to target the exact configuration properties that you need to ensure are compliant. For more information, see Defining custom rules.

Retrieve all the rules that you use to target the exact configuration properties that you need to ensure are compliant. For more information, see Defining custom rules.

Retrieve all the rules that you use to target the exact configuration properties that you need to ensure are compliant. For more information, see Defining custom rules.

Retrieve all the rules that you use to target the exact configuration properties that you need to ensure are compliant. For more information, see Defining custom rules.

GET /instances/{instance_id}/v3/rules
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListRules(listRulesOptions *ListRulesOptions) (result *RuleCollection, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListRulesWithContext(ctx context.Context, listRulesOptions *ListRulesOptions) (result *RuleCollection, response *core.DetailedResponse, err error)
listRules(params)
list(
        self,
        instance_id: str,
        *,
        limit: Optional[int] = None,
        start: Optional[str] = None,
        type: Optional[str] = None,
        search: Optional[str] = None,
        service_name: Optional[str] = None,
        sort: Optional[str] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<RuleCollection> listRules(ListRulesOptions listRulesOptions)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

  • compliance.configuration-governance.rules-read

Auditing

Calling this method generates the following auditing event.

  • compliance.configuration-governance-rules.list

Request

Instantiate the ListRulesOptions struct and set the fields to provide parameter values for the ListRules method.

Use the ListRulesOptions.Builder to create a ListRulesOptions object that contains the parameter values for the listRules method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

Query Parameters

  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression ^.*$

  • The list of only user-defined, or system-defined rules.

    Allowable values: [user_defined,system_defined]

    Example: system_defined

  • The indication of whether to search for rules with a specific string string in the name, description, or labels.

    Possible values: 0 ≤ length ≤ 256, Value must match regular expression ^.*$

  • Searches for rules targeting corresponding service.

    Possible values: 0 ≤ length ≤ 64, Value must match regular expression ^.*$

  • Field used to sort rules. Rules can be sorted in ascending or descending order.

    Allowable values: [description,service_display_name,type,updated_on]

    Example: updated_on

WithContext method only

The ListRules options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression /^.*$/

  • The list of only user-defined, or system-defined rules.

    Allowable values: [user_defined,system_defined]

    Examples:
  • The indication of whether to search for rules with a specific string string in the name, description, or labels.

    Possible values: 0 ≤ length ≤ 256, Value must match regular expression /^.*$/

  • Searches for rules targeting corresponding service.

    Possible values: 0 ≤ length ≤ 64, Value must match regular expression /^.*$/

  • Field used to sort rules. Rules can be sorted in ascending or descending order.

    Allowable values: [description,service_display_name,type,updated_on]

    Examples:

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The indication of how many resources to return, unless the response is the last page of resources.

    Possible values: 0 ≤ value ≤ 100

    Default: 50

  • Determine what resource to start the page on or after.

    Possible values: 0 ≤ length ≤ 1024, Value must match regular expression /^.*$/

  • The list of only user-defined, or system-defined rules.

    Allowable values: [user_defined,system_defined]

    Examples:
  • The indication of whether to search for rules with a specific string string in the name, description, or labels.

    Possible values: 0 ≤ length ≤ 256, Value must match regular expression /^.*$/

  • Searches for rules targeting corresponding service.

    Possible values: 0 ≤ length ≤ 64, Value must match regular expression /^.*$/

  • Field used to sort rules. Rules can be sorted in ascending or descending order.

    Allowable values: [description,service_display_name,type,updated_on]

    Examples:

The listRules options.

  • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/rules?type=system_defined&sort=updated_on"
  • listRulesOptions := &securityandcompliancecenterv3.ListRulesOptions{
      InstanceID: core.StringPtr("acd7032c-15a3-484f-bf5b-67d41534d940"),
      Limit: core.Int64Ptr(int64(10)),
      Type: core.StringPtr("system_defined"),
      Search: core.StringPtr("testString"),
      ServiceName: core.StringPtr("testString"),
      Sort: core.StringPtr("updated_on"),
    }
    
    pager, err := securityAndComplianceCenterService.NewRulesPager(listRulesOptions)
    if err != nil {
      panic(err)
    }
    
    var allResults []securityandcompliancecenterv3.Rule
    for pager.HasNext() {
      nextPage, err := pager.GetNext()
      if err != nil {
        panic(err)
      }
      allResults = append(allResults, nextPage...)
    }
    b, _ := json.MarshalIndent(allResults, "", "  ")
    fmt.Println(string(b))
  • const params = {
      instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
      limit: 10,
      type: 'system_defined',
      search: 'testString',
      serviceName: 'testString',
      sort: 'updated_on',
    };
    
    const allResults = [];
    try {
      const pager = new SecurityAndComplianceCenterV3.RulesPager(securityAndComplianceCenterService, params);
      while (pager.hasNext()) {
        const nextPage = await pager.getNext();
        expect(nextPage).not.toBeNull();
        allResults.push(...nextPage);
      }
      console.log(JSON.stringify(allResults, null, 2));
    } catch (err) {
      console.warn(err);
    }
  • all_results = []
    pager = RulesPager(
      client=security_and_compliance_center_service,
      instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
      limit=10,
      type='system_defined',
      search='testString',
      service_name='testString',
      sort='updated_on',
    )
    while pager.has_next():
      next_page = pager.get_next()
      assert next_page is not None
      all_results.extend(next_page)
    
    print(json.dumps(all_results, indent=2))
  • ListRulesOptions listRulesOptions = new ListRulesOptions.Builder()
      .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
      .limit(Long.valueOf("10"))
      .type("system_defined")
      .search("testString")
      .serviceName("testString")
      .sort("updated_on")
      .build();
    
    RulesPager pager = new RulesPager(securityAndComplianceCenterService, listRulesOptions);
    List<Rule> allResults = new ArrayList<>();
    while (pager.hasNext()) {
      List<Rule> nextPage = pager.getNext();
      allResults.addAll(nextPage);
    }
    
    System.out.println(GsonSingleton.getGson().toJson(allResults));

Response

The page of rules.

The page of rules.

The page of rules.

The page of rules.

The page of rules.

Status Code

  • The rules were retrieved successfully.

  • The request is unauthorized.

  • You are not authorized to access this resource.

  • The resource was not found.

Example responses
  • {
      "limit": 50,
      "total_count": 2,
      "first": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/7e9d0235-4d21-4c21-9c2d-da0ecb0b22f6/v3/rules?"
      },
      "next": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/7e9d0235-4d21-4c21-9c2d-da0ecb0b22f6/v3/rules?start=g1AAAAGSeJzLYWBgYM1gTmHQSklKzi9KdUhJMtJLytVNTtZNSU3JTE4sSU0xtDDSS87JL01JzCvRy0styQHqYUoyAJJJ9v___8_KYHKzf7BZ5wFQINGYHLPyWIAkQwOQAhrXDzbv0TwXkFiiA_nmTYCYNx9kngPD7VMOIPOcyDdvA8S8_WD33bNibACZJ0G-eR8g5kHC7xFbxgFw-GUBAIJ_f4I",
        "start": "g1AAAAGSeJzLYWBgYM1gTmHQSklKzi9KdUhJMtJLytVNTtZNSU3JTE4sSU0xtDDSS87JL01JzCvRy0styQHqYUoyAJJJ9v___8_KYHKzf7BZ5wFQINGYHLPyWIAkQwOQAhrXDzbv0TwXkFiiA_nmTYCYNx9kngPD7VMOIPOcyDdvA8S8_WD33bNibACZJ0G-eR8g5kHC7xFbxgFw-GUBAIJ_f4I"
      },
      "rules": [
        {
          "created_on": "2023-03-15T18:20:16Z",
          "created_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "updated_on": "2023-03-15T18:20:16Z",
          "updated_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "id": "rule-e701edb3-376c-47cf-9209-e75bdb702e19",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "description": "Example rule",
          "type": "user_defined",
          "version": "1.0.0",
          "import": {
            "parameters": [
              {
                "name": "hard_quota",
                "display_name": "The Cloud Object Storage bucket quota.",
                "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
                "type": "numeric"
              }
            ]
          },
          "target": {
            "service_name": "cloud-object-storage",
            "service_display_name": "Cloud Object Storage",
            "resource_kind": "bucket",
            "additional_target_attributes": []
          },
          "required_config": {
            "description": "The Cloud Object Storage rule.",
            "and": [
              {
                "property": "hard_quota",
                "operator": "num_equals",
                "value": 2
              }
            ]
          },
          "labels": []
        },
        {
          "created_on": "2022-10-04T12:31:19Z",
          "created_by": "IBM",
          "updated_on": "2023-03-10T13:05:47Z",
          "updated_by": "IBM",
          "id": "rule-4b059036-699f-4522-89ed-54c672cb7e65",
          "account_id": "IBM",
          "description": "IBM Cloud IAM establishes minimum and maximum lifetime restrictions, and reuse conditions for authenticators, such as API keys.",
          "type": "system_defined",
          "version": "1.0.0",
          "target": {
            "service_name": "iam-identity",
            "service_display_name": "IAM Identity Service",
            "resource_kind": "accountsettings",
            "additional_target_attributes": []
          },
          "required_config": {
            "and": [
              {
                "property": "ibm_iam_ibmid_lifetime_restrictions_enabled",
                "operator": "is_true",
                "value": true
              }
            ]
          },
          "labels": []
        }
      ]
    }
  • {
      "limit": 50,
      "total_count": 2,
      "first": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/7e9d0235-4d21-4c21-9c2d-da0ecb0b22f6/v3/rules?"
      },
      "next": {
        "href": "https://us-south.compliance.cloud.ibm.com/instances/7e9d0235-4d21-4c21-9c2d-da0ecb0b22f6/v3/rules?start=g1AAAAGSeJzLYWBgYM1gTmHQSklKzi9KdUhJMtJLytVNTtZNSU3JTE4sSU0xtDDSS87JL01JzCvRy0styQHqYUoyAJJJ9v___8_KYHKzf7BZ5wFQINGYHLPyWIAkQwOQAhrXDzbv0TwXkFiiA_nmTYCYNx9kngPD7VMOIPOcyDdvA8S8_WD33bNibACZJ0G-eR8g5kHC7xFbxgFw-GUBAIJ_f4I",
        "start": "g1AAAAGSeJzLYWBgYM1gTmHQSklKzi9KdUhJMtJLytVNTtZNSU3JTE4sSU0xtDDSS87JL01JzCvRy0styQHqYUoyAJJJ9v___8_KYHKzf7BZ5wFQINGYHLPyWIAkQwOQAhrXDzbv0TwXkFiiA_nmTYCYNx9kngPD7VMOIPOcyDdvA8S8_WD33bNibACZJ0G-eR8g5kHC7xFbxgFw-GUBAIJ_f4I"
      },
      "rules": [
        {
          "created_on": "2023-03-15T18:20:16Z",
          "created_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "updated_on": "2023-03-15T18:20:16Z",
          "updated_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "id": "rule-e701edb3-376c-47cf-9209-e75bdb702e19",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "description": "Example rule",
          "type": "user_defined",
          "version": "1.0.0",
          "import": {
            "parameters": [
              {
                "name": "hard_quota",
                "display_name": "The Cloud Object Storage bucket quota.",
                "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
                "type": "numeric"
              }
            ]
          },
          "target": {
            "service_name": "cloud-object-storage",
            "service_display_name": "Cloud Object Storage",
            "resource_kind": "bucket",
            "additional_target_attributes": []
          },
          "required_config": {
            "description": "The Cloud Object Storage rule.",
            "and": [
              {
                "property": "hard_quota",
                "operator": "num_equals",
                "value": 2
              }
            ]
          },
          "labels": []
        },
        {
          "created_on": "2022-10-04T12:31:19Z",
          "created_by": "IBM",
          "updated_on": "2023-03-10T13:05:47Z",
          "updated_by": "IBM",
          "id": "rule-4b059036-699f-4522-89ed-54c672cb7e65",
          "account_id": "IBM",
          "description": "IBM Cloud IAM establishes minimum and maximum lifetime restrictions, and reuse conditions for authenticators, such as API keys.",
          "type": "system_defined",
          "version": "1.0.0",
          "target": {
            "service_name": "iam-identity",
            "service_display_name": "IAM Identity Service",
            "resource_kind": "accountsettings",
            "additional_target_attributes": []
          },
          "required_config": {
            "and": [
              {
                "property": "ibm_iam_ibmid_lifetime_restrictions_enabled",
                "operator": "is_true",
                "value": true
              }
            ]
          },
          "labels": []
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 401,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "missing_s2s_auth",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 403,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "forbidden",
          "message": "You are not authorized."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }
  • {
      "status_code": 404,
      "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
      "errors": [
        {
          "code": "not_found",
          "message": "Resource cannot be found."
        }
      ]
    }

Create a custom rule

Create a custom rule to to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

Create a custom rule to to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

Create a custom rule to to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

Create a custom rule to to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

Create a custom rule to to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

POST /instances/{instance_id}/v3/rules
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateRule(createRuleOptions *CreateRuleOptions) (result *Rule, response *core.DetailedResponse, err error)
(securityAndComplianceCenter *SecurityAndComplianceCenterV3) CreateRuleWithContext(ctx context.Context, createRuleOptions *CreateRuleOptions) (result *Rule, response *core.DetailedResponse, err error)
createRule(params)
rule_create(
        self,
        instance_id: str,
        description: str,
        target: 'RuleTargetPrototype',
        required_config: 'RequiredConfig',
        *,
        version: Optional[str] = None,
        import_: Optional['Import'] = None,
        labels: Optional[List[str]] = None,
        **kwargs,
    ) -> DetailedResponse
ServiceCall<Rule> createRule(CreateRuleOptions createRuleOptions)

Authorization

To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

  • compliance.configuration-governance.rules-create

Auditing

Calling this method generates the following auditing event.

  • compliance.configuration-governance-rules.create

Request

Instantiate the CreateRuleOptions struct and set the fields to provide parameter values for the CreateRule method.

Use the CreateRuleOptions.Builder to create a CreateRuleOptions object that contains the parameter values for the createRule method.

Path Parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

    Example: acd7032c-15a3-484f-bf5b-67d41534d940

The request body to create a custom rule.

Examples:
{
  "description": "Example rule",
  "import": {
    "parameters": [
      {
        "name": "hard_quota",
        "display_name": "The Cloud Object Storage bucket quota.",
        "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
        "type": "numeric"
      }
    ]
  },
  "target": {
    "service_name": "cloud-object-storage",
    "resource_kind": "bucket",
    "additional_target_attributes": [
      {
        "name": "location",
        "operator": "string_equals",
        "value": "us-east"
      }
    ]
  },
  "required_config": {
    "description": "The Cloud Object Storage rule.",
    "and": [
      {
        "property": "hard_quota",
        "operator": "num_equals",
        "value": "${hard_quota}"
      }
    ]
  },
  "labels": [],
  "version": "1.0.0"
}

WithContext method only

The CreateRule options.

parameters

  • The ID of the Security and Compliance Center instance.

    Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

    Examples:
  • The rule description.

    Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^.*$/

    Examples:
  • The rule target.

  • The required configuration base object.

    • The rule version number.

      Possible values: 5 ≤ length ≤ 10, Value must match regular expression /^[0-9][0-9.]*$/

      Examples:
    • The collection of import parameters.

    • The list of labels that correspond to a rule.

      Possible values: 0 ≤ number of items ≤ 32, 0 ≤ length ≤ 128, Value must match regular expression /^[A-Za-z0-9]+$/

      Examples:

    parameters

    • The ID of the Security and Compliance Center instance.

      Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

      Examples:
    • The rule description.

      Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^.*$/

      Examples:
    • The rule target.

    • The required configuration base object.

      • The rule version number.

        Possible values: 5 ≤ length ≤ 10, Value must match regular expression /^[0-9][0-9.]*$/

        Examples:
      • The collection of import parameters.

      • The list of labels that correspond to a rule.

        Possible values: 0 ≤ number of items ≤ 32, 0 ≤ length ≤ 128, Value must match regular expression /^[A-Za-z0-9]+$/

        Examples:

      The createRule options.

      • curl -X POST --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "Content-Type: application/json"   --data '{ "description": "Example rule", "import": { "parameters": [ { "name": "hard_quota", "display_name": "The Cloud Object Storage bucket quota.", "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.", "type": "numeric" } ] }, "target": { "service_name": "cloud-object-storage", "resource_kind": "bucket", "additional_target_attributes": [ { "name": "location", "operator": "string_equals", "value": "us-east" } ] }, "required_config": { "description": "The Cloud Object Storage rule.", "and": [ { "property": "hard_quota", "operator": "num_equals", "value": "${hard_quota}" } ] }, "labels":  ], "version": "1.0.0" }'   "${base_url}/instances/${instance_id}/v3/rules"
      • additionalTargetAttributeModel := &securityandcompliancecenterv3.AdditionalTargetAttribute{
          Name: core.StringPtr("location"),
          Operator: core.StringPtr("string_equals"),
          Value: core.StringPtr("us-east"),
        }
        
        ruleTargetPrototypeModel := &securityandcompliancecenterv3.RuleTargetPrototype{
          ServiceName: core.StringPtr("cloud-object-storage"),
          ResourceKind: core.StringPtr("bucket"),
          AdditionalTargetAttributes: []securityandcompliancecenterv3.AdditionalTargetAttribute{*additionalTargetAttributeModel},
        }
        
        conditionItemModel := &securityandcompliancecenterv3.ConditionItemConditionBase{
          Property: core.StringPtr("hard_quota"),
          Operator: core.StringPtr("num_equals"),
          Value: core.StringPtr("{hard_quota}"),
        }
        
        requiredConfigModel := &securityandcompliancecenterv3.RequiredConfigConditionListConditionListConditionAnd{
          Description: core.StringPtr("The Cloud Object Storage rule."),
          And: []securityandcompliancecenterv3.ConditionItemIntf{conditionItemModel},
        }
        
        ruleParameterModel := &securityandcompliancecenterv3.RuleParameter{
          Name: core.StringPtr("hard_quota"),
          DisplayName: core.StringPtr("The Cloud Object Storage bucket quota."),
          Description: core.StringPtr("The maximum bytes that are allocated to the Cloud Object Storage bucket."),
          Type: core.StringPtr("numeric"),
        }
        
        importModel := &securityandcompliancecenterv3.Import{
          Parameters: []securityandcompliancecenterv3.RuleParameter{*ruleParameterModel},
        }
        
        createRuleOptions := securityAndComplianceCenterService.NewCreateRuleOptions(
          "acd7032c-15a3-484f-bf5b-67d41534d940",
          "Example rule",
          ruleTargetPrototypeModel,
          requiredConfigModel,
        )
        createRuleOptions.SetVersion("1.0.0")
        createRuleOptions.SetImport(importModel)
        createRuleOptions.SetLabels([]string{})
        
        rule, response, err := securityAndComplianceCenterService.CreateRule(createRuleOptions)
        if err != nil {
          panic(err)
        }
        b, _ := json.MarshalIndent(rule, "", "  ")
        fmt.Println(string(b))
      • // Request models needed by this operation.
        
        // AdditionalTargetAttribute
        const additionalTargetAttributeModel = {
          name: 'location',
          operator: 'string_equals',
          value: 'us-east',
        };
        
        // RuleTargetPrototype
        const ruleTargetPrototypeModel = {
          service_name: 'cloud-object-storage',
          resource_kind: 'bucket',
          additional_target_attributes: [additionalTargetAttributeModel],
        };
        
        // RequiredConfigConditionBase
        const requiredConfigModel = {
          description: 'The Cloud Object Storage rule.',
          property: 'testString',
          operator: 'string_equals',
        };
        
        // RuleParameter
        const ruleParameterModel = {
          name: 'hard_quota',
          display_name: 'The Cloud Object Storage bucket quota.',
          description: 'The maximum bytes that are allocated to the Cloud Object Storage bucket.',
          type: 'numeric',
        };
        
        // Import
        const importModel = {
          parameters: [ruleParameterModel],
        };
        
        const params = {
          instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
          description: 'Example rule',
          target: ruleTargetPrototypeModel,
          requiredConfig: requiredConfigModel,
          version: '1.0.0',
          _import: importModel,
          labels: [],
        };
        
        let res;
        try {
          res = await securityAndComplianceCenterService.createRule(params);
          console.log(JSON.stringify(res.result, null, 2));
        } catch (err) {
          console.warn(err);
        }
      • additional_target_attribute_model = {
          'name': 'location',
          'operator': 'string_equals',
          'value': 'us-east',
        }
        
        rule_target_prototype_model = {
          'service_name': 'cloud-object-storage',
          'resource_kind': 'bucket',
          'additional_target_attributes': [additional_target_attribute_model],
        }
        
        required_config_model = {
          'description': 'The Cloud Object Storage rule.',
          'property': 'testString',
          'operator': 'string_equals',
        }
        
        rule_parameter_model = {
          'name': 'hard_quota',
          'display_name': 'The Cloud Object Storage bucket quota.',
          'description': 'The maximum bytes that are allocated to the Cloud Object Storage bucket.',
          'type': 'numeric',
        }
        
        import_model = {
          'parameters': [rule_parameter_model],
        }
        
        response = security_and_compliance_center_service.create_rule(
          instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
          description='Example rule',
          target=rule_target_prototype_model,
          required_config=required_config_model,
          version='1.0.0',
          import_=import_model,
          labels=[],
        )
        rule = response.get_result()
        
        print(json.dumps(rule, indent=2))
      • AdditionalTargetAttribute additionalTargetAttributeModel = new AdditionalTargetAttribute.Builder()
          .name("location")
          .operator("string_equals")
          .value("us-east")
          .build();
        RuleTargetPrototype ruleTargetPrototypeModel = new RuleTargetPrototype.Builder()
          .serviceName("cloud-object-storage")
          .resourceKind("bucket")
          .additionalTargetAttributes(java.util.Arrays.asList(additionalTargetAttributeModel))
          .build();
        ConditionItemConditionBase conditionItemModel = new ConditionItemConditionBase.Builder()
          .property("hard_quota")
          .operator("num_equals")
          .value("{hard_quota}")
          .build();
        RequiredConfigConditionListConditionListConditionAnd requiredConfigModel = new RequiredConfigConditionListConditionListConditionAnd.Builder()
          .description("The Cloud Object Storage rule.")
          .and(java.util.Arrays.asList(conditionItemModel))
          .build();
        RuleParameter ruleParameterModel = new RuleParameter.Builder()
          .name("hard_quota")
          .displayName("The Cloud Object Storage bucket quota.")
          .description("The maximum bytes that are allocated to the Cloud Object Storage bucket.")
          .type("numeric")
          .build();
        Import importModel = new Import.Builder()
          .parameters(java.util.Arrays.asList(ruleParameterModel))
          .build();
        CreateRuleOptions createRuleOptions = new CreateRuleOptions.Builder()
          .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
          .description("Example rule")
          .target(ruleTargetPrototypeModel)
          .requiredConfig(requiredConfigModel)
          .version("1.0.0")
          .xImport(importModel)
          .labels(java.util.Arrays.asList())
          .build();
        
        Response<Rule> response = securityAndComplianceCenterService.createRule(createRuleOptions).execute();
        Rule rule = response.getResult();
        
        System.out.println(rule);

      Response

      The rule response that corresponds to an account instance.

      The rule response that corresponds to an account instance.

      The rule response that corresponds to an account instance.

      The rule response that corresponds to an account instance.

      The rule response that corresponds to an account instance.

      Status Code

      • The rule was created successfully.

      • The request is unauthorized.

      • You are not authorized to access this resource.

      • The resource was not found.

      Example responses
      • {
          "created_on": "2023-04-21T14:58:27Z",
          "created_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "updated_on": "2023-04-21T14:58:27Z",
          "updated_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "id": "rule-cd6f5601-a008-4f6f-bcd6-9af884eea2d6",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "description": "Example rule",
          "type": "user_defined",
          "version": "1.0.0",
          "import": {
            "parameters": [
              {
                "name": "hard_quota",
                "display_name": "The Cloud Object Storage bucket quota.",
                "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
                "type": "numeric"
              }
            ]
          },
          "target": {
            "service_name": "cloud-object-storage",
            "resource_kind": "bucket",
            "additional_target_attributes": []
          },
          "required_config": {
            "description": "The Cloud Object Storage rule.",
            "and": [
              {
                "property": "hard_quota",
                "operator": "num_equals",
                "value": 2
              }
            ]
          },
          "labels": []
        }
      • {
          "created_on": "2023-04-21T14:58:27Z",
          "created_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "updated_on": "2023-04-21T14:58:27Z",
          "updated_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "id": "rule-cd6f5601-a008-4f6f-bcd6-9af884eea2d6",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "description": "Example rule",
          "type": "user_defined",
          "version": "1.0.0",
          "import": {
            "parameters": [
              {
                "name": "hard_quota",
                "display_name": "The Cloud Object Storage bucket quota.",
                "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
                "type": "numeric"
              }
            ]
          },
          "target": {
            "service_name": "cloud-object-storage",
            "resource_kind": "bucket",
            "additional_target_attributes": []
          },
          "required_config": {
            "description": "The Cloud Object Storage rule.",
            "and": [
              {
                "property": "hard_quota",
                "operator": "num_equals",
                "value": 2
              }
            ]
          },
          "labels": []
        }
      • {
          "status_code": 401,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "missing_s2s_auth",
              "message": "You are not authorized."
            }
          ]
        }
      • {
          "status_code": 401,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "missing_s2s_auth",
              "message": "You are not authorized."
            }
          ]
        }
      • {
          "status_code": 403,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "forbidden",
              "message": "You are not authorized."
            }
          ]
        }
      • {
          "status_code": 403,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "forbidden",
              "message": "You are not authorized."
            }
          ]
        }
      • {
          "status_code": 404,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "not_found",
              "message": "Resource cannot be found."
            }
          ]
        }
      • {
          "status_code": 404,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "not_found",
              "message": "Resource cannot be found."
            }
          ]
        }

      Get a custom rule

      Retrieve a rule that you created to evaluate your resources. For more information, see Defining custom rules.

      Retrieve a rule that you created to evaluate your resources. For more information, see Defining custom rules.

      Retrieve a rule that you created to evaluate your resources. For more information, see Defining custom rules.

      Retrieve a rule that you created to evaluate your resources. For more information, see Defining custom rules.

      Retrieve a rule that you created to evaluate your resources. For more information, see Defining custom rules.

      GET /instances/{instance_id}/v3/rules/{rule_id}
      (securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetRule(getRuleOptions *GetRuleOptions) (result *Rule, response *core.DetailedResponse, err error)
      (securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetRuleWithContext(ctx context.Context, getRuleOptions *GetRuleOptions) (result *Rule, response *core.DetailedResponse, err error)
      getRule(params)
      rule_get(
              self,
              instance_id: str,
              rule_id: str,
              **kwargs,
          ) -> DetailedResponse
      ServiceCall<Rule> getRule(GetRuleOptions getRuleOptions)

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

      • compliance.configuration-governance.rules-read

      Auditing

      Calling this method generates the following auditing event.

      • compliance.configuration-governance-rules.read

      Request

      Instantiate the GetRuleOptions struct and set the fields to provide parameter values for the GetRule method.

      Use the GetRuleOptions.Builder to create a GetRuleOptions object that contains the parameter values for the getRule method.

      Path Parameters

      • The ID of the Security and Compliance Center instance.

        Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

        Example: acd7032c-15a3-484f-bf5b-67d41534d940

      • The ID of a rule/assessment

        Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

        Example: rule-8d444f8c-fd1d-48de-bcaa-f43732568761

      WithContext method only

      The GetRule options.

      parameters

      • The ID of the Security and Compliance Center instance.

        Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

        Examples:
      • The ID of a rule/assessment.

        Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

        Examples:

      parameters

      • The ID of the Security and Compliance Center instance.

        Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

        Examples:
      • The ID of a rule/assessment.

        Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

        Examples:

      The getRule options.

      • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/instances/${instance_id}/v3/rules/${rule_id}"
      • getRuleOptions := securityAndComplianceCenterService.NewGetRuleOptions(
          "acd7032c-15a3-484f-bf5b-67d41534d940",
          "rule-8d444f8c-fd1d-48de-bcaa-f43732568761",
        )
        
        rule, response, err := securityAndComplianceCenterService.GetRule(getRuleOptions)
        if err != nil {
          panic(err)
        }
        b, _ := json.MarshalIndent(rule, "", "  ")
        fmt.Println(string(b))
      • const params = {
          instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
          ruleId: 'rule-8d444f8c-fd1d-48de-bcaa-f43732568761',
        };
        
        let res;
        try {
          res = await securityAndComplianceCenterService.getRule(params);
          console.log(JSON.stringify(res.result, null, 2));
        } catch (err) {
          console.warn(err);
        }
      • response = security_and_compliance_center_service.get_rule(
          instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
          rule_id='rule-8d444f8c-fd1d-48de-bcaa-f43732568761',
        )
        rule = response.get_result()
        
        print(json.dumps(rule, indent=2))
      • GetRuleOptions getRuleOptions = new GetRuleOptions.Builder()
          .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
          .ruleId("rule-8d444f8c-fd1d-48de-bcaa-f43732568761")
          .build();
        
        Response<Rule> response = securityAndComplianceCenterService.getRule(getRuleOptions).execute();
        Rule rule = response.getResult();
        
        System.out.println(rule);

      Response

      The rule response that corresponds to an account instance.

      The rule response that corresponds to an account instance.

      The rule response that corresponds to an account instance.

      The rule response that corresponds to an account instance.

      The rule response that corresponds to an account instance.

      Status Code

      • The rule was retrieved successfully.

      • The request is unauthorized.

      • You are not authorized to access this resource.

      • The resource was not found.

      Example responses
      • {
          "created_on": "2023-03-15T18:20:16Z",
          "created_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "updated_on": "2023-03-15T18:20:16Z",
          "updated_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "id": "rule-e701edb3-376c-47cf-9209-e75bdb702e19",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "description": "Example rule",
          "type": "user_defined",
          "version": "1.0.0",
          "import": {
            "parameters": [
              {
                "name": "hard_quota",
                "display_name": "The Cloud Object Storage bucket quota.",
                "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
                "type": "numeric"
              }
            ]
          },
          "target": {
            "service_name": "cloud-object-storage",
            "service_display_name": "Cloud Object Storage",
            "resource_kind": "bucket",
            "additional_target_attributes": []
          },
          "required_config": {
            "description": "The Cloud Object Storage rule.",
            "and": [
              {
                "property": "hard_quota",
                "operator": "num_equals",
                "value": "${hard_quota}"
              }
            ]
          },
          "labels": []
        }
      • {
          "created_on": "2023-03-15T18:20:16Z",
          "created_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "updated_on": "2023-03-15T18:20:16Z",
          "updated_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
          "id": "rule-e701edb3-376c-47cf-9209-e75bdb702e19",
          "account_id": "130003ea8bfa43c5aacea07a86da3000",
          "description": "Example rule",
          "type": "user_defined",
          "version": "1.0.0",
          "import": {
            "parameters": [
              {
                "name": "hard_quota",
                "display_name": "The Cloud Object Storage bucket quota.",
                "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
                "type": "numeric"
              }
            ]
          },
          "target": {
            "service_name": "cloud-object-storage",
            "service_display_name": "Cloud Object Storage",
            "resource_kind": "bucket",
            "additional_target_attributes": []
          },
          "required_config": {
            "description": "The Cloud Object Storage rule.",
            "and": [
              {
                "property": "hard_quota",
                "operator": "num_equals",
                "value": "${hard_quota}"
              }
            ]
          },
          "labels": []
        }
      • {
          "status_code": 401,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "missing_s2s_auth",
              "message": "You are not authorized."
            }
          ]
        }
      • {
          "status_code": 401,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "missing_s2s_auth",
              "message": "You are not authorized."
            }
          ]
        }
      • {
          "status_code": 403,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "forbidden",
              "message": "You are not authorized."
            }
          ]
        }
      • {
          "status_code": 403,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "forbidden",
              "message": "You are not authorized."
            }
          ]
        }
      • {
          "status_code": 404,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "not_found",
              "message": "Resource cannot be found."
            }
          ]
        }
      • {
          "status_code": 404,
          "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
          "errors": [
            {
              "code": "not_found",
              "message": "Resource cannot be found."
            }
          ]
        }

      Update a custom rule

      Update a custom rule that you use to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

      Update a custom rule that you use to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

      Update a custom rule that you use to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

      Update a custom rule that you use to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

      Update a custom rule that you use to target the exact configuration properties that you need to evaluate your resources for compliance. For more information, see Defining custom rules.

      PUT /instances/{instance_id}/v3/rules/{rule_id}
      (securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceRule(replaceRuleOptions *ReplaceRuleOptions) (result *Rule, response *core.DetailedResponse, err error)
      (securityAndComplianceCenter *SecurityAndComplianceCenterV3) ReplaceRuleWithContext(ctx context.Context, replaceRuleOptions *ReplaceRuleOptions) (result *Rule, response *core.DetailedResponse, err error)
      replaceRule(params)
      rule_replace(
              self,
              instance_id: str,
              rule_id: str,
              if_match: str,
              description: str,
              target: 'RuleTargetPrototype',
              required_config: 'RequiredConfig',
              *,
              version: Optional[str] = None,
              import_: Optional['Import'] = None,
              labels: Optional[List[str]] = None,
              **kwargs,
          ) -> DetailedResponse
      ServiceCall<Rule> replaceRule(ReplaceRuleOptions replaceRuleOptions)

      Authorization

      To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

      • compliance.configuration-governance.rules-update

      Auditing

      Calling this method generates the following auditing event.

      • compliance.configuration-governance-rules.update

      Request

      Instantiate the ReplaceRuleOptions struct and set the fields to provide parameter values for the ReplaceRule method.

      Use the ReplaceRuleOptions.Builder to create a ReplaceRuleOptions object that contains the parameter values for the replaceRule method.

      Custom Headers

      • This field compares a supplied Etag value with the version that is stored for the requested resource. If the values match, the server allows the request method to continue.

        To find the Etag value, run a GET request on the resource that you want to modify, and check the response headers.

        Possible values: 4 ≤ length ≤ 128, Value must match regular expression ^W/"[^"]*"$

      Path Parameters

      • The ID of the Security and Compliance Center instance.

        Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

        Example: acd7032c-15a3-484f-bf5b-67d41534d940

      • The ID of a rule/assessment

        Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

        Example: rule-8d444f8c-fd1d-48de-bcaa-f43732568761

      The request body to update a custom rule.

      Examples:
      {
        "description": "Example rule",
        "import": {
          "parameters": [
            {
              "name": "hard_quota",
              "display_name": "The Cloud Object Storage bucket quota.",
              "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
              "type": "numeric"
            }
          ]
        },
        "target": {
          "service_name": "cloud-object-storage",
          "service_display_name": "Cloud Object Storage",
          "resource_kind": "bucket",
          "additional_target_attributes": [
            {
              "name": "location",
              "operator": "string_equals",
              "value": "us-south"
            }
          ]
        },
        "required_config": {
          "description": "The Cloud Object Storage rule.",
          "and": [
            {
              "property": "hard_quota",
              "operator": "num_equals",
              "value": "${hard_quota}"
            }
          ]
        },
        "labels": [],
        "version": "1.0.1"
      }

      WithContext method only

      The ReplaceRule options.

      parameters

      • The ID of the Security and Compliance Center instance.

        Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

        Examples:
      • The ID of a rule/assessment.

        Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

        Examples:
      • This field compares a supplied Etag value with the version that is stored for the requested resource. If the values match, the server allows the request method to continue.

        To find the Etag value, run a GET request on the resource that you want to modify, and check the response headers.

        Possible values: 4 ≤ length ≤ 128, Value must match regular expression /^W\/\"[^\"]*\"$/

      • The rule description.

        Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^.*$/

        Examples:
      • The rule target.

      • The required configuration base object.

        • The rule version number.

          Possible values: 5 ≤ length ≤ 10, Value must match regular expression /^[0-9][0-9.]*$/

          Examples:
        • The collection of import parameters.

        • The list of labels that correspond to a rule.

          Possible values: 0 ≤ number of items ≤ 32, 0 ≤ length ≤ 128, Value must match regular expression /^[A-Za-z0-9]+$/

          Examples:

        parameters

        • The ID of the Security and Compliance Center instance.

          Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

          Examples:
        • The ID of a rule/assessment.

          Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

          Examples:
        • This field compares a supplied Etag value with the version that is stored for the requested resource. If the values match, the server allows the request method to continue.

          To find the Etag value, run a GET request on the resource that you want to modify, and check the response headers.

          Possible values: 4 ≤ length ≤ 128, Value must match regular expression /^W\/\"[^\"]*\"$/

        • The rule description.

          Possible values: 0 ≤ length ≤ 512, Value must match regular expression /^.*$/

          Examples:
        • The rule target.

        • The required configuration base object.

          • The rule version number.

            Possible values: 5 ≤ length ≤ 10, Value must match regular expression /^[0-9][0-9.]*$/

            Examples:
          • The collection of import parameters.

          • The list of labels that correspond to a rule.

            Possible values: 0 ≤ number of items ≤ 32, 0 ≤ length ≤ 128, Value must match regular expression /^[A-Za-z0-9]+$/

            Examples:

          The replaceRule options.

          • curl -X PUT --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   --header "If-Match: ${if_match}"   --header "Content-Type: application/json"   --data '{ "description": "Example rule", "import": { "parameters": [ { "name": "hard_quota", "display_name": "The Cloud Object Storage bucket quota.", "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.", "type": "numeric" } ] }, "target": { "service_name": "cloud-object-storage", "service_display_name": "Cloud Object Storage", "resource_kind": "bucket", "additional_target_attributes": [ { "name": "location", "operator": "string_equals", "value": "us-south" } ] }, "required_config": { "description": "The Cloud Object Storage rule.", "and": [ { "property": "hard_quota", "operator": "num_equals", "value": "${hard_quota}" } ] }, "labels":  ], "version": "1.0.1" }'   "${base_url}/instances/${instance_id}/v3/rules/${rule_id}"
          • additionalTargetAttributeModel := &securityandcompliancecenterv3.AdditionalTargetAttribute{
              Name: core.StringPtr("location"),
              Operator: core.StringPtr("string_equals"),
              Value: core.StringPtr("us-south"),
            }
            
            ruleTargetPrototypeModel := &securityandcompliancecenterv3.RuleTargetPrototype{
              ServiceName: core.StringPtr("cloud-object-storage"),
              ResourceKind: core.StringPtr("bucket"),
              AdditionalTargetAttributes: []securityandcompliancecenterv3.AdditionalTargetAttribute{*additionalTargetAttributeModel},
            }
            
            conditionItemModel := &securityandcompliancecenterv3.ConditionItemConditionBase{
              Property: core.StringPtr("hard_quota"),
              Operator: core.StringPtr("num_equals"),
              Value: core.StringPtr("{hard_quota}"),
            }
            
            requiredConfigModel := &securityandcompliancecenterv3.RequiredConfigConditionListConditionListConditionAnd{
              Description: core.StringPtr("The Cloud Object Storage rule."),
              And: []securityandcompliancecenterv3.ConditionItemIntf{conditionItemModel},
            }
            
            ruleParameterModel := &securityandcompliancecenterv3.RuleParameter{
              Name: core.StringPtr("hard_quota"),
              DisplayName: core.StringPtr("The Cloud Object Storage bucket quota."),
              Description: core.StringPtr("The maximum bytes that are allocated to the Cloud Object Storage bucket."),
              Type: core.StringPtr("numeric"),
            }
            
            importModel := &securityandcompliancecenterv3.Import{
              Parameters: []securityandcompliancecenterv3.RuleParameter{*ruleParameterModel},
            }
            
            replaceRuleOptions := securityAndComplianceCenterService.NewReplaceRuleOptions(
              "acd7032c-15a3-484f-bf5b-67d41534d940",
              "rule-8d444f8c-fd1d-48de-bcaa-f43732568761",
              "testString",
              "Example rule",
              ruleTargetPrototypeModel,
              requiredConfigModel,
            )
            replaceRuleOptions.SetVersion("1.0.1")
            replaceRuleOptions.SetImport(importModel)
            replaceRuleOptions.SetLabels([]string{})
            
            rule, response, err := securityAndComplianceCenterService.ReplaceRule(replaceRuleOptions)
            if err != nil {
              panic(err)
            }
            b, _ := json.MarshalIndent(rule, "", "  ")
            fmt.Println(string(b))
          • // Request models needed by this operation.
            
            // AdditionalTargetAttribute
            const additionalTargetAttributeModel = {
              name: 'location',
              operator: 'string_equals',
              value: 'us-south',
            };
            
            // RuleTargetPrototype
            const ruleTargetPrototypeModel = {
              service_name: 'cloud-object-storage',
              resource_kind: 'bucket',
              additional_target_attributes: [additionalTargetAttributeModel],
            };
            
            // RequiredConfigConditionBase
            const requiredConfigModel = {
              description: 'The Cloud Object Storage rule.',
              property: 'testString',
              operator: 'string_equals',
            };
            
            // RuleParameter
            const ruleParameterModel = {
              name: 'hard_quota',
              display_name: 'The Cloud Object Storage bucket quota.',
              description: 'The maximum bytes that are allocated to the Cloud Object Storage bucket.',
              type: 'numeric',
            };
            
            // Import
            const importModel = {
              parameters: [ruleParameterModel],
            };
            
            const params = {
              instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
              ruleId: 'rule-8d444f8c-fd1d-48de-bcaa-f43732568761',
              ifMatch: 'testString',
              description: 'Example rule',
              target: ruleTargetPrototypeModel,
              requiredConfig: requiredConfigModel,
              version: '1.0.1',
              _import: importModel,
              labels: [],
            };
            
            let res;
            try {
              res = await securityAndComplianceCenterService.replaceRule(params);
              console.log(JSON.stringify(res.result, null, 2));
            } catch (err) {
              console.warn(err);
            }
          • additional_target_attribute_model = {
              'name': 'location',
              'operator': 'string_equals',
              'value': 'us-south',
            }
            
            rule_target_prototype_model = {
              'service_name': 'cloud-object-storage',
              'resource_kind': 'bucket',
              'additional_target_attributes': [additional_target_attribute_model],
            }
            
            required_config_model = {
              'description': 'The Cloud Object Storage rule.',
              'property': 'testString',
              'operator': 'string_equals',
            }
            
            rule_parameter_model = {
              'name': 'hard_quota',
              'display_name': 'The Cloud Object Storage bucket quota.',
              'description': 'The maximum bytes that are allocated to the Cloud Object Storage bucket.',
              'type': 'numeric',
            }
            
            import_model = {
              'parameters': [rule_parameter_model],
            }
            
            response = security_and_compliance_center_service.replace_rule(
              instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
              rule_id='rule-8d444f8c-fd1d-48de-bcaa-f43732568761',
              if_match='testString',
              description='Example rule',
              target=rule_target_prototype_model,
              required_config=required_config_model,
              version='1.0.1',
              import_=import_model,
              labels=[],
            )
            rule = response.get_result()
            
            print(json.dumps(rule, indent=2))
          • AdditionalTargetAttribute additionalTargetAttributeModel = new AdditionalTargetAttribute.Builder()
              .name("location")
              .operator("string_equals")
              .value("us-south")
              .build();
            RuleTargetPrototype ruleTargetPrototypeModel = new RuleTargetPrototype.Builder()
              .serviceName("cloud-object-storage")
              .resourceKind("bucket")
              .additionalTargetAttributes(java.util.Arrays.asList(additionalTargetAttributeModel))
              .build();
            ConditionItemConditionBase conditionItemModel = new ConditionItemConditionBase.Builder()
              .property("hard_quota")
              .operator("num_equals")
              .value("{hard_quota}")
              .build();
            RequiredConfigConditionListConditionListConditionAnd requiredConfigModel = new RequiredConfigConditionListConditionListConditionAnd.Builder()
              .description("The Cloud Object Storage rule.")
              .and(java.util.Arrays.asList(conditionItemModel))
              .build();
            RuleParameter ruleParameterModel = new RuleParameter.Builder()
              .name("hard_quota")
              .displayName("The Cloud Object Storage bucket quota.")
              .description("The maximum bytes that are allocated to the Cloud Object Storage bucket.")
              .type("numeric")
              .build();
            Import importModel = new Import.Builder()
              .parameters(java.util.Arrays.asList(ruleParameterModel))
              .build();
            ReplaceRuleOptions replaceRuleOptions = new ReplaceRuleOptions.Builder()
              .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
              .ruleId("rule-8d444f8c-fd1d-48de-bcaa-f43732568761")
              .ifMatch("testString")
              .description("Example rule")
              .target(ruleTargetPrototypeModel)
              .requiredConfig(requiredConfigModel)
              .version("1.0.1")
              .xImport(importModel)
              .labels(java.util.Arrays.asList())
              .build();
            
            Response<Rule> response = securityAndComplianceCenterService.replaceRule(replaceRuleOptions).execute();
            Rule rule = response.getResult();
            
            System.out.println(rule);

          Response

          The rule response that corresponds to an account instance.

          The rule response that corresponds to an account instance.

          The rule response that corresponds to an account instance.

          The rule response that corresponds to an account instance.

          The rule response that corresponds to an account instance.

          Status Code

          • The rule was updated successfully.

          • The request is unauthorized.

          • You are not authorized to access this resource.

          • The resource was not found.

          Example responses
          • {
              "created_on": "2023-03-15T18:20:16Z",
              "created_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
              "updated_on": "2023-03-15T18:20:16Z",
              "updated_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
              "id": "rule-e701edb3-376c-47cf-9209-e75bdb702e19",
              "account_id": "130003ea8bfa43c5aacea07a86da3000",
              "description": "Example rule",
              "type": "user_defined",
              "version": "1.0.1",
              "import": {
                "parameters": [
                  {
                    "name": "hard_quota",
                    "display_name": "The Cloud Object Storage bucket quota.",
                    "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
                    "type": "numeric"
                  }
                ]
              },
              "target": {
                "service_name": "cloud-object-storage",
                "service_display_name": "Cloud Object Storage",
                "resource_kind": "bucket",
                "additional_target_attributes": []
              },
              "required_config": {
                "description": "The Cloud Object Storage rule.",
                "and": [
                  {
                    "property": "hard_quota",
                    "operator": "num_equals",
                    "value": 2
                  }
                ]
              },
              "labels": []
            }
          • {
              "created_on": "2023-03-15T18:20:16Z",
              "created_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
              "updated_on": "2023-03-15T18:20:16Z",
              "updated_by": "iam-ServiceId-1c858449-3537-45b8-9d39-2707115b4cc7",
              "id": "rule-e701edb3-376c-47cf-9209-e75bdb702e19",
              "account_id": "130003ea8bfa43c5aacea07a86da3000",
              "description": "Example rule",
              "type": "user_defined",
              "version": "1.0.1",
              "import": {
                "parameters": [
                  {
                    "name": "hard_quota",
                    "display_name": "The Cloud Object Storage bucket quota.",
                    "description": "The maximum bytes that are allocated to the Cloud Object Storage bucket.",
                    "type": "numeric"
                  }
                ]
              },
              "target": {
                "service_name": "cloud-object-storage",
                "service_display_name": "Cloud Object Storage",
                "resource_kind": "bucket",
                "additional_target_attributes": []
              },
              "required_config": {
                "description": "The Cloud Object Storage rule.",
                "and": [
                  {
                    "property": "hard_quota",
                    "operator": "num_equals",
                    "value": 2
                  }
                ]
              },
              "labels": []
            }
          • {
              "status_code": 401,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "missing_s2s_auth",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 401,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "missing_s2s_auth",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 403,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "forbidden",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 403,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "forbidden",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 404,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "not_found",
                  "message": "Resource cannot be found."
                }
              ]
            }
          • {
              "status_code": 404,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "not_found",
                  "message": "Resource cannot be found."
                }
              ]
            }

          Delete a custom rule

          Delete a custom rule that you no longer require to evaluate your resources. For more information, see Defining custom rules.

          Delete a custom rule that you no longer require to evaluate your resources. For more information, see Defining custom rules.

          Delete a custom rule that you no longer require to evaluate your resources. For more information, see Defining custom rules.

          Delete a custom rule that you no longer require to evaluate your resources. For more information, see Defining custom rules.

          Delete a custom rule that you no longer require to evaluate your resources. For more information, see Defining custom rules.

          DELETE /instances/{instance_id}/v3/rules/{rule_id}
          (securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteRule(deleteRuleOptions *DeleteRuleOptions) (response *core.DetailedResponse, err error)
          (securityAndComplianceCenter *SecurityAndComplianceCenterV3) DeleteRuleWithContext(ctx context.Context, deleteRuleOptions *DeleteRuleOptions) (response *core.DetailedResponse, err error)
          deleteRule(params)
          rule_delete(
                  self,
                  instance_id: str,
                  rule_id: str,
                  **kwargs,
              ) -> DetailedResponse
          ServiceCall<Void> deleteRule(DeleteRuleOptions deleteRuleOptions)

          Authorization

          To call this method, you must be assigned one or more IAM access roles that include the following action. You can check your access by going to Users > User > Access.

          • compliance.configuration-governance.rules-delete

          Auditing

          Calling this method generates the following auditing event.

          • compliance.configuration-governance-rules.delete

          Request

          Instantiate the DeleteRuleOptions struct and set the fields to provide parameter values for the DeleteRule method.

          Use the DeleteRuleOptions.Builder to create a DeleteRuleOptions object that contains the parameter values for the deleteRule method.

          Path Parameters

          • The ID of the Security and Compliance Center instance.

            Possible values: length = 36, Value must match regular expression ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$

            Example: acd7032c-15a3-484f-bf5b-67d41534d940

          • The ID of a rule/assessment

            Possible values: 1 ≤ length ≤ 128, Value must match regular expression ^[a-zA-Z0-9\-]+$

            Example: rule-8d444f8c-fd1d-48de-bcaa-f43732568761

          WithContext method only

          The DeleteRule options.

          parameters

          • The ID of the Security and Compliance Center instance.

            Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

            Examples:
          • The ID of a rule/assessment.

            Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

            Examples:

          parameters

          • The ID of the Security and Compliance Center instance.

            Possible values: length = 36, Value must match regular expression /^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$/

            Examples:
          • The ID of a rule/assessment.

            Possible values: 1 ≤ length ≤ 128, Value must match regular expression /^[a-zA-Z0-9\\-]+$/

            Examples:

          The deleteRule options.

          • curl -X DELETE --location --header "Authorization: Bearer ${iam_token}"   "${base_url}/instances/${instance_id}/v3/rules/${rule_id}"
          • deleteRuleOptions := securityAndComplianceCenterService.NewDeleteRuleOptions(
              "acd7032c-15a3-484f-bf5b-67d41534d940",
              "rule-8d444f8c-fd1d-48de-bcaa-f43732568761",
            )
            
            response, err := securityAndComplianceCenterService.DeleteRule(deleteRuleOptions)
            if err != nil {
              panic(err)
            }
            if response.StatusCode != 204 {
              fmt.Printf("\nUnexpected response status code received from DeleteRule(): %d\n", response.StatusCode)
            }
          • const params = {
              instanceId: 'acd7032c-15a3-484f-bf5b-67d41534d940',
              ruleId: 'rule-8d444f8c-fd1d-48de-bcaa-f43732568761',
            };
            
            try {
              await securityAndComplianceCenterService.deleteRule(params);
            } catch (err) {
              console.warn(err);
            }
          • response = security_and_compliance_center_service.delete_rule(
              instance_id='acd7032c-15a3-484f-bf5b-67d41534d940',
              rule_id='rule-8d444f8c-fd1d-48de-bcaa-f43732568761',
            )
          • DeleteRuleOptions deleteRuleOptions = new DeleteRuleOptions.Builder()
              .instanceId("acd7032c-15a3-484f-bf5b-67d41534d940")
              .ruleId("rule-8d444f8c-fd1d-48de-bcaa-f43732568761")
              .build();
            
            Response<Void> response = securityAndComplianceCenterService.deleteRule(deleteRuleOptions).execute();

          Response

          Status Code

          • The rule was deleted successfully.

          • The request is unauthorized.

          • You are not authorized to access this resource.

          • The resource was not found.

          Example responses
          • {
              "status_code": 401,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "missing_s2s_auth",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 401,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "missing_s2s_auth",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 403,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "forbidden",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 403,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "forbidden",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 404,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "not_found",
                  "message": "Resource cannot be found."
                }
              ]
            }
          • {
              "status_code": 404,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "not_found",
                  "message": "Resource cannot be found."
                }
              ]
            }

          List services

          List all the services that you use to evaluate the configuration of your resources for security and compliance. Learn more.

          List all the services that you use to evaluate the configuration of your resources for security and compliance. Learn more.

          List all the services that you use to evaluate the configuration of your resources for security and compliance. Learn more.

          List all the services that you use to evaluate the configuration of your resources for security and compliance. Learn more.

          List all the services that you use to evaluate the configuration of your resources for security and compliance. Learn more.

          GET /v3/services
          (securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListServices(listServicesOptions *ListServicesOptions) (result *ServiceCollection, response *core.DetailedResponse, err error)
          (securityAndComplianceCenter *SecurityAndComplianceCenterV3) ListServicesWithContext(ctx context.Context, listServicesOptions *ListServicesOptions) (result *ServiceCollection, response *core.DetailedResponse, err error)
          listServices(params)
          list(
                  self,
                  **kwargs,
              ) -> DetailedResponse
          ServiceCall<ServiceCollection> listServices()

          Request

          No Request Parameters

          This method does not accept any request parameters.

          WithContext method only

          No Request Parameters

          This method does not accept any request parameters.

          No Request Parameters

          This method does not accept any request parameters.

          No Request Parameters

          This method does not accept any request parameters.

          No Request Parameters

          This method does not accept any request parameters.

          • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/v3/services"
          • listServicesOptions := securityAndComplianceCenterService.NewListServicesOptions()
            
            serviceCollection, response, err := securityAndComplianceCenterService.ListServices(listServicesOptions)
            if err != nil {
              panic(err)
            }
            b, _ := json.MarshalIndent(serviceCollection, "", "  ")
            fmt.Println(string(b))
          • let res;
            try {
              res = await securityAndComplianceCenterService.listServices({});
              console.log(JSON.stringify(res.result, null, 2));
            } catch (err) {
              console.warn(err);
            }
          • response = security_and_compliance_center_service.list_services()
            service_collection = response.get_result()
            
            print(json.dumps(service_collection, indent=2))
          • ListServicesOptions listServicesOptions = new ListServicesOptions();
            
            Response<ServiceCollection> response = securityAndComplianceCenterService.listServices(listServicesOptions).execute();
            ServiceCollection serviceCollection = response.getResult();
            
            System.out.println(serviceCollection);

          Response

          The services.

          The services.

          The services.

          The services.

          The services.

          Status Code

          • The services were listed successfully.

          • The request is unauthorized.

          • You are not authorized to access this resource.

          • The resource was not found.

          Example responses
          • {
              "limit": 100,
              "offset": 0,
              "total_count": 1,
              "first": {
                "href": "https://us-south.compliance.cloud.ibm.com/v3/services?limit=100"
              },
              "last": {
                "href": "https://us-south.compliance.cloud.ibm.com/v3/services?offset=0&limit=100"
              },
              "services": [
                {
                  "created_on": "2022-10-04T12:17:12Z",
                  "created_by": "iam-ServiceId-cc1069ec-bbd3-480f-87ce-eea46b189232",
                  "updated_on": "2023-04-20T18:35:54Z",
                  "updated_by": "iam-ServiceId-cc1069ec-bbd3-480f-87ce-eea46b189232",
                  "service_name": "appid",
                  "service_display_name": "App ID",
                  "description": "App ID",
                  "monitoring_enabled": true,
                  "enforcement_enabled": true,
                  "service_listing_enabled": true,
                  "config_information_point": {
                    "type": "sync",
                    "endpoints": [
                      {
                        "host": "http://papia.compliance.svc.cluster.local:8080",
                        "path": "/papia/appid/v1/config",
                        "region": "global",
                        "advisory_call_limit": 500
                      }
                    ]
                  },
                  "supported_configs": [
                    {
                      "resource_kind": "instance",
                      "additional_target_attributes": [
                        {
                          "name": "resource_name",
                          "description": "The service instance name."
                        }
                      ],
                      "properties": [
                        {
                          "name": "monitor_runtime_activity_enabled",
                          "description": "A boolean that enables, or disables the monitoring of runtime activity that is made by application users.",
                          "type": "boolean"
                        },
                        {
                          "name": "user_profile_updates_enabled",
                          "description": "A boolean value that represents the status of user profile updates.",
                          "type": "boolean"
                        },
                        {
                          "name": "any_social_identity_enabled",
                          "description": "A boolean value that represents the configuration status of identity providers (IdPs).",
                          "type": "boolean"
                        }
                      ],
                      "description": "The App ID instance.",
                      "cip_requires_service_instance": true,
                      "resource_group_support": true,
                      "tagging_support": true,
                      "inherit_tags": false
                    },
                    {
                      "resource_kind": "cloud-directory-advanced-password-policy",
                      "additional_target_attributes": [
                        {
                          "name": "resource_name",
                          "description": "The service instance name."
                        }
                      ],
                      "properties": [
                        {
                          "name": "password_reuse_policy_enabled",
                          "description": "A boolean value that represents whether password reuse policy is enabled, or not.",
                          "type": "boolean"
                        },
                        {
                          "name": "lockout_policy_config_minutes",
                          "description": "A numeric value that represents the specified time of the password lockout policy in minutes.",
                          "type": "numeric"
                        }
                      ],
                      "description": "The App ID Cloud Directory password policies.",
                      "cip_requires_service_instance": true,
                      "resource_group_support": true,
                      "tagging_support": false,
                      "inherit_tags": true
                    }
                  ]
                }
              ]
            }
          • {
              "limit": 100,
              "offset": 0,
              "total_count": 1,
              "first": {
                "href": "https://us-south.compliance.cloud.ibm.com/v3/services?limit=100"
              },
              "last": {
                "href": "https://us-south.compliance.cloud.ibm.com/v3/services?offset=0&limit=100"
              },
              "services": [
                {
                  "created_on": "2022-10-04T12:17:12Z",
                  "created_by": "iam-ServiceId-cc1069ec-bbd3-480f-87ce-eea46b189232",
                  "updated_on": "2023-04-20T18:35:54Z",
                  "updated_by": "iam-ServiceId-cc1069ec-bbd3-480f-87ce-eea46b189232",
                  "service_name": "appid",
                  "service_display_name": "App ID",
                  "description": "App ID",
                  "monitoring_enabled": true,
                  "enforcement_enabled": true,
                  "service_listing_enabled": true,
                  "config_information_point": {
                    "type": "sync",
                    "endpoints": [
                      {
                        "host": "http://papia.compliance.svc.cluster.local:8080",
                        "path": "/papia/appid/v1/config",
                        "region": "global",
                        "advisory_call_limit": 500
                      }
                    ]
                  },
                  "supported_configs": [
                    {
                      "resource_kind": "instance",
                      "additional_target_attributes": [
                        {
                          "name": "resource_name",
                          "description": "The service instance name."
                        }
                      ],
                      "properties": [
                        {
                          "name": "monitor_runtime_activity_enabled",
                          "description": "A boolean that enables, or disables the monitoring of runtime activity that is made by application users.",
                          "type": "boolean"
                        },
                        {
                          "name": "user_profile_updates_enabled",
                          "description": "A boolean value that represents the status of user profile updates.",
                          "type": "boolean"
                        },
                        {
                          "name": "any_social_identity_enabled",
                          "description": "A boolean value that represents the configuration status of identity providers (IdPs).",
                          "type": "boolean"
                        }
                      ],
                      "description": "The App ID instance.",
                      "cip_requires_service_instance": true,
                      "resource_group_support": true,
                      "tagging_support": true,
                      "inherit_tags": false
                    },
                    {
                      "resource_kind": "cloud-directory-advanced-password-policy",
                      "additional_target_attributes": [
                        {
                          "name": "resource_name",
                          "description": "The service instance name."
                        }
                      ],
                      "properties": [
                        {
                          "name": "password_reuse_policy_enabled",
                          "description": "A boolean value that represents whether password reuse policy is enabled, or not.",
                          "type": "boolean"
                        },
                        {
                          "name": "lockout_policy_config_minutes",
                          "description": "A numeric value that represents the specified time of the password lockout policy in minutes.",
                          "type": "numeric"
                        }
                      ],
                      "description": "The App ID Cloud Directory password policies.",
                      "cip_requires_service_instance": true,
                      "resource_group_support": true,
                      "tagging_support": false,
                      "inherit_tags": true
                    }
                  ]
                }
              ]
            }
          • {
              "status_code": 401,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "missing_s2s_auth",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 401,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "missing_s2s_auth",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 403,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "forbidden",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 403,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "forbidden",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 404,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "not_found",
                  "message": "Resource cannot be found."
                }
              ]
            }
          • {
              "status_code": 404,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "not_found",
                  "message": "Resource cannot be found."
                }
              ]
            }

          Get a service

          Retrieve a service configuration that you monitor. Learn more.

          Retrieve a service configuration that you monitor. Learn more.

          Retrieve a service configuration that you monitor. Learn more.

          Retrieve a service configuration that you monitor. Learn more.

          Retrieve a service configuration that you monitor. Learn more.

          GET /v3/services/{services_name}
          (securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetService(getServiceOptions *GetServiceOptions) (result *Service, response *core.DetailedResponse, err error)
          (securityAndComplianceCenter *SecurityAndComplianceCenterV3) GetServiceWithContext(ctx context.Context, getServiceOptions *GetServiceOptions) (result *Service, response *core.DetailedResponse, err error)
          getService(params)
          service_get(
                  self,
                  services_name: str,
                  **kwargs,
              ) -> DetailedResponse
          ServiceCall<Service> getService(GetServiceOptions getServiceOptions)

          Request

          Instantiate the GetServiceOptions struct and set the fields to provide parameter values for the GetService method.

          Use the GetServiceOptions.Builder to create a GetServiceOptions object that contains the parameter values for the getService method.

          Path Parameters

          • The name of the corresponding service.

            Possible values: 1 ≤ length ≤ 64, Value must match regular expression ^[(a-zA-Z)(?=.|\-)]+|[a-zA-Z]+$

            Example: cloud-object-storage

          WithContext method only

          The GetService options.

          parameters

          • The name of the corresponding service.

            Possible values: 1 ≤ length ≤ 64, Value must match regular expression /^[(a-zA-Z)(?=.|\\-)]+|[a-zA-Z]+$/

            Examples:

          parameters

          • The name of the corresponding service.

            Possible values: 1 ≤ length ≤ 64, Value must match regular expression /^[(a-zA-Z)(?=.|\\-)]+|[a-zA-Z]+$/

            Examples:

          The getService options.

          • curl -X GET --location --header "Authorization: Bearer ${iam_token}"   --header "Accept: application/json"   "${base_url}/v3/services/${services_name}"
          • getServiceOptions := securityAndComplianceCenterService.NewGetServiceOptions(
              "cloud-object-storage",
            )
            
            service, response, err := securityAndComplianceCenterService.GetService(getServiceOptions)
            if err != nil {
              panic(err)
            }
            b, _ := json.MarshalIndent(service, "", "  ")
            fmt.Println(string(b))
          • const params = {
              servicesName: 'cloud-object-storage',
            };
            
            let res;
            try {
              res = await securityAndComplianceCenterService.getService(params);
              console.log(JSON.stringify(res.result, null, 2));
            } catch (err) {
              console.warn(err);
            }
          • response = security_and_compliance_center_service.get_service(
              services_name='cloud-object-storage',
            )
            service = response.get_result()
            
            print(json.dumps(service, indent=2))
          • GetServiceOptions getServiceOptions = new GetServiceOptions.Builder()
              .servicesName("cloud-object-storage")
              .build();
            
            Response<Service> response = securityAndComplianceCenterService.getService(getServiceOptions).execute();
            Service service = response.getResult();
            
            System.out.println(service);

          Response

          The response body for creating a service instance.

          The response body for creating a service instance.

          The response body for creating a service instance.

          The response body for creating a service instance.

          The response body for creating a service instance.

          Status Code

          • The service was retrieved successfully.

          • The request is unauthorized.

          • You are not authorized to access this resource.

          • The resource was not found.

          Example responses
          • {
              "created_on": "2022-08-02T05:47:21Z",
              "created_by": "iam-ServiceId-cc1069ec-bbd3-480f-87ce-eea46b189232",
              "updated_on": "2023-04-27T12:22:33Z",
              "updated_by": "iam-ServiceId-cc1069ec-bbd3-480f-87ce-eea46b189232",
              "service_name": "my-test-service",
              "description": "My service description.",
              "monitoring_enabled": true,
              "enforcement_enabled": false,
              "service_listing_enabled": true,
              "config_information_point": {
                "type": "sync",
                "endpoints": [
                  {
                    "host": "http://papia.compliance.svc.cluster.local:8080",
                    "path": "/papia/sample-service/v1/config",
                    "region": "region-1",
                    "advisory_call_limit": 10
                  },
                  {
                    "host": "http://papia.compliance.svc.cluster.local:8080",
                    "path": "/papia/sample-service/v1/config",
                    "region": "region-2",
                    "advisory_call_limit": 10
                  }
                ]
              },
              "supported_configs": [
                {
                  "resource_kind": "resource_A",
                  "additional_target_attributes": [],
                  "properties": [
                    {
                      "name": "custom_attr_1",
                      "description": "The numeric value.",
                      "type": "numeric"
                    },
                    {
                      "name": "custom_attr_2",
                      "description": "The boolean value.",
                      "type": "boolean"
                    },
                    {
                      "name": "custom_attr_3",
                      "description": "The string value.",
                      "type": "string"
                    },
                    {
                      "name": "custom_attr_4",
                      "description": "The array value.",
                      "type": "string_list"
                    }
                  ],
                  "description": "The resource_A description.",
                  "cip_requires_service_instance": true,
                  "resource_group_support": true
                },
                {
                  "resource_kind": "resource_B",
                  "additional_target_attributes": [],
                  "properties": [
                    {
                      "name": "custom_attr_1",
                      "description": "The numeric value.",
                      "type": "numeric"
                    },
                    {
                      "name": "complex_property",
                      "description": "The boolean value.",
                      "type": "boolean",
                      "properties": [
                        {
                          "name": "nested_attr_1",
                          "description": "The numeric value.",
                          "type": "numeric"
                        },
                        {
                          "name": "nested_attr_2",
                          "description": "The numeric value.",
                          "type": "string_list"
                        }
                      ]
                    }
                  ],
                  "description": "The resource_B description.",
                  "cip_requires_service_instance": true,
                  "resource_group_support": true
                }
              ]
            }
          • {
              "created_on": "2022-08-02T05:47:21Z",
              "created_by": "iam-ServiceId-cc1069ec-bbd3-480f-87ce-eea46b189232",
              "updated_on": "2023-04-27T12:22:33Z",
              "updated_by": "iam-ServiceId-cc1069ec-bbd3-480f-87ce-eea46b189232",
              "service_name": "my-test-service",
              "description": "My service description.",
              "monitoring_enabled": true,
              "enforcement_enabled": false,
              "service_listing_enabled": true,
              "config_information_point": {
                "type": "sync",
                "endpoints": [
                  {
                    "host": "http://papia.compliance.svc.cluster.local:8080",
                    "path": "/papia/sample-service/v1/config",
                    "region": "region-1",
                    "advisory_call_limit": 10
                  },
                  {
                    "host": "http://papia.compliance.svc.cluster.local:8080",
                    "path": "/papia/sample-service/v1/config",
                    "region": "region-2",
                    "advisory_call_limit": 10
                  }
                ]
              },
              "supported_configs": [
                {
                  "resource_kind": "resource_A",
                  "additional_target_attributes": [],
                  "properties": [
                    {
                      "name": "custom_attr_1",
                      "description": "The numeric value.",
                      "type": "numeric"
                    },
                    {
                      "name": "custom_attr_2",
                      "description": "The boolean value.",
                      "type": "boolean"
                    },
                    {
                      "name": "custom_attr_3",
                      "description": "The string value.",
                      "type": "string"
                    },
                    {
                      "name": "custom_attr_4",
                      "description": "The array value.",
                      "type": "string_list"
                    }
                  ],
                  "description": "The resource_A description.",
                  "cip_requires_service_instance": true,
                  "resource_group_support": true
                },
                {
                  "resource_kind": "resource_B",
                  "additional_target_attributes": [],
                  "properties": [
                    {
                      "name": "custom_attr_1",
                      "description": "The numeric value.",
                      "type": "numeric"
                    },
                    {
                      "name": "complex_property",
                      "description": "The boolean value.",
                      "type": "boolean",
                      "properties": [
                        {
                          "name": "nested_attr_1",
                          "description": "The numeric value.",
                          "type": "numeric"
                        },
                        {
                          "name": "nested_attr_2",
                          "description": "The numeric value.",
                          "type": "string_list"
                        }
                      ]
                    }
                  ],
                  "description": "The resource_B description.",
                  "cip_requires_service_instance": true,
                  "resource_group_support": true
                }
              ]
            }
          • {
              "status_code": 401,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "missing_s2s_auth",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 401,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "missing_s2s_auth",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 403,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "forbidden",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 403,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "forbidden",
                  "message": "You are not authorized."
                }
              ]
            }
          • {
              "status_code": 404,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "not_found",
                  "message": "Resource cannot be found."
                }
              ]
            }
          • {
              "status_code": 404,
              "trace": "d753c94b-c0ce-4109-9f25-518b8395c5b8",
              "errors": [
                {
                  "code": "not_found",
                  "message": "Resource cannot be found."
                }
              ]
            }
          id=curlclassName=tab-item-selected