The download endpoint generates a Cloud Workload Security policy file from your currently active
Cloud Workload Security rules, and downloads them as a .policy file. This file can then be deployed to
your Agents to update the policy running in your environment.
/**
* Get the latest Cloud Workload Security policy returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.CloudWorkloadSecurityApi(configuration);apiInstance.downloadCloudWorkloadPolicyFile().then((data: client.HttpFile)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));
"""
Get a Cloud Workload Security Agent rule returns "OK" response
"""fromosimportenvironfromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.cloud_workload_security_apiimportCloudWorkloadSecurityApi# there is a valid "agent_rule" in the systemAGENT_RULE_DATA_ID=environ["AGENT_RULE_DATA_ID"]configuration=Configuration()withApiClient(configuration)asapi_client:api_instance=CloudWorkloadSecurityApi(api_client)response=api_instance.get_cloud_workload_security_agent_rule(agent_rule_id=AGENT_RULE_DATA_ID,)print(response)
# Get a Cloud Workload Security Agent rule returns "OK" responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::CloudWorkloadSecurityAPI.new# there is a valid "agent_rule" in the systemAGENT_RULE_DATA_ID=ENV["AGENT_RULE_DATA_ID"]papi_instance.get_cloud_workload_security_agent_rule(AGENT_RULE_DATA_ID)
// Get a Cloud Workload Security Agent rule returns "OK" response
packagemainimport("context""encoding/json""fmt""os""github.com/DataDog/datadog-api-client-go/v2/api/datadog""github.com/DataDog/datadog-api-client-go/v2/api/datadogV2")funcmain(){// there is a valid "agent_rule" in the system
AgentRuleDataID:=os.Getenv("AGENT_RULE_DATA_ID")ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewCloudWorkloadSecurityApi(apiClient)resp,r,err:=api.GetCloudWorkloadSecurityAgentRule(ctx,AgentRuleDataID)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `CloudWorkloadSecurityApi.GetCloudWorkloadSecurityAgentRule`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `CloudWorkloadSecurityApi.GetCloudWorkloadSecurityAgentRule`:\n%s\n",responseContent)}
// Get a Cloud Workload Security Agent rule returns "OK" response
importcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.CloudWorkloadSecurityApi;importcom.datadog.api.client.v2.model.CloudWorkloadSecurityAgentRuleResponse;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();CloudWorkloadSecurityApiapiInstance=newCloudWorkloadSecurityApi(defaultClient);// there is a valid "agent_rule" in the system
StringAGENT_RULE_DATA_ID=System.getenv("AGENT_RULE_DATA_ID");try{CloudWorkloadSecurityAgentRuleResponseresult=apiInstance.getCloudWorkloadSecurityAgentRule(AGENT_RULE_DATA_ID);System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling CloudWorkloadSecurityApi#getCloudWorkloadSecurityAgentRule");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
/**
* Get a Cloud Workload Security Agent rule returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.CloudWorkloadSecurityApi(configuration);// there is a valid "agent_rule" in the system
constAGENT_RULE_DATA_ID=process.env.AGENT_RULE_DATA_IDasstring;constparams: v2.CloudWorkloadSecurityApiGetCloudWorkloadSecurityAgentRuleRequest={agentRuleId: AGENT_RULE_DATA_ID,};apiInstance.getCloudWorkloadSecurityAgentRule(params).then((data: v2.CloudWorkloadSecurityAgentRuleResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));
/**
* Get all Cloud Workload Security Agent rules returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.CloudWorkloadSecurityApi(configuration);apiInstance.listCloudWorkloadSecurityAgentRules().then((data: v2.CloudWorkloadSecurityAgentRulesListResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));
// Update a Cloud Workload Security Agent rule returns "OK" response
packagemainimport("context""encoding/json""fmt""os""github.com/DataDog/datadog-api-client-go/v2/api/datadog""github.com/DataDog/datadog-api-client-go/v2/api/datadogV2")funcmain(){// there is a valid "agent_rule" in the system
AgentRuleDataID:=os.Getenv("AGENT_RULE_DATA_ID")body:=datadogV2.CloudWorkloadSecurityAgentRuleUpdateRequest{Data:datadogV2.CloudWorkloadSecurityAgentRuleUpdateData{Attributes:datadogV2.CloudWorkloadSecurityAgentRuleUpdateAttributes{Description:datadog.PtrString("Test Agent rule"),Enabled:datadog.PtrBool(true),Expression:datadog.PtrString(`exec.file.name == "sh"`),},Type:datadogV2.CLOUDWORKLOADSECURITYAGENTRULETYPE_AGENT_RULE,},}ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewCloudWorkloadSecurityApi(apiClient)resp,r,err:=api.UpdateCloudWorkloadSecurityAgentRule(ctx,AgentRuleDataID,body)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `CloudWorkloadSecurityApi.UpdateCloudWorkloadSecurityAgentRule`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `CloudWorkloadSecurityApi.UpdateCloudWorkloadSecurityAgentRule`:\n%s\n",responseContent)}
// Update a Cloud Workload Security Agent rule returns "OK" response
importcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.CloudWorkloadSecurityApi;importcom.datadog.api.client.v2.model.CloudWorkloadSecurityAgentRuleResponse;importcom.datadog.api.client.v2.model.CloudWorkloadSecurityAgentRuleType;importcom.datadog.api.client.v2.model.CloudWorkloadSecurityAgentRuleUpdateAttributes;importcom.datadog.api.client.v2.model.CloudWorkloadSecurityAgentRuleUpdateData;importcom.datadog.api.client.v2.model.CloudWorkloadSecurityAgentRuleUpdateRequest;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();CloudWorkloadSecurityApiapiInstance=newCloudWorkloadSecurityApi(defaultClient);// there is a valid "agent_rule" in the system
StringAGENT_RULE_DATA_ID=System.getenv("AGENT_RULE_DATA_ID");CloudWorkloadSecurityAgentRuleUpdateRequestbody=newCloudWorkloadSecurityAgentRuleUpdateRequest().data(newCloudWorkloadSecurityAgentRuleUpdateData().attributes(newCloudWorkloadSecurityAgentRuleUpdateAttributes().description("Test Agent rule").enabled(true).expression("""
exec.file.name == "sh"
""")).type(CloudWorkloadSecurityAgentRuleType.AGENT_RULE));try{CloudWorkloadSecurityAgentRuleResponseresult=apiInstance.updateCloudWorkloadSecurityAgentRule(AGENT_RULE_DATA_ID,body);System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling CloudWorkloadSecurityApi#updateCloudWorkloadSecurityAgentRule");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
"""
Update a Cloud Workload Security Agent rule returns "OK" response
"""fromosimportenvironfromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.cloud_workload_security_apiimportCloudWorkloadSecurityApifromdatadog_api_client.v2.model.cloud_workload_security_agent_rule_typeimportCloudWorkloadSecurityAgentRuleTypefromdatadog_api_client.v2.model.cloud_workload_security_agent_rule_update_attributesimport(CloudWorkloadSecurityAgentRuleUpdateAttributes,)fromdatadog_api_client.v2.model.cloud_workload_security_agent_rule_update_dataimport(CloudWorkloadSecurityAgentRuleUpdateData,)fromdatadog_api_client.v2.model.cloud_workload_security_agent_rule_update_requestimport(CloudWorkloadSecurityAgentRuleUpdateRequest,)# there is a valid "agent_rule" in the systemAGENT_RULE_DATA_ID=environ["AGENT_RULE_DATA_ID"]body=CloudWorkloadSecurityAgentRuleUpdateRequest(data=CloudWorkloadSecurityAgentRuleUpdateData(attributes=CloudWorkloadSecurityAgentRuleUpdateAttributes(description="Test Agent rule",enabled=True,expression='exec.file.name == "sh"',),type=CloudWorkloadSecurityAgentRuleType.AGENT_RULE,),)configuration=Configuration()withApiClient(configuration)asapi_client:api_instance=CloudWorkloadSecurityApi(api_client)response=api_instance.update_cloud_workload_security_agent_rule(agent_rule_id=AGENT_RULE_DATA_ID,body=body)print(response)
# Update a Cloud Workload Security Agent rule returns "OK" responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::CloudWorkloadSecurityAPI.new# there is a valid "agent_rule" in the systemAGENT_RULE_DATA_ID=ENV["AGENT_RULE_DATA_ID"]body=DatadogAPIClient::V2::CloudWorkloadSecurityAgentRuleUpdateRequest.new({data:DatadogAPIClient::V2::CloudWorkloadSecurityAgentRuleUpdateData.new({attributes:DatadogAPIClient::V2::CloudWorkloadSecurityAgentRuleUpdateAttributes.new({description:"Test Agent rule",enabled:true,expression:'exec.file.name == "sh"',}),type:DatadogAPIClient::V2::CloudWorkloadSecurityAgentRuleType::AGENT_RULE,}),})papi_instance.update_cloud_workload_security_agent_rule(AGENT_RULE_DATA_ID,body)
/**
* Update a Cloud Workload Security Agent rule returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.CloudWorkloadSecurityApi(configuration);// there is a valid "agent_rule" in the system
constAGENT_RULE_DATA_ID=process.env.AGENT_RULE_DATA_IDasstring;constparams: v2.CloudWorkloadSecurityApiUpdateCloudWorkloadSecurityAgentRuleRequest={body:{data:{attributes:{description:"Test Agent rule",enabled: true,expression:`exec.file.name == "sh"`,},type:"agent_rule",},},agentRuleId: AGENT_RULE_DATA_ID,};apiInstance.updateCloudWorkloadSecurityAgentRule(params).then((data: v2.CloudWorkloadSecurityAgentRuleResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));
"""
Delete a Cloud Workload Security Agent rule returns "OK" response
"""fromosimportenvironfromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.cloud_workload_security_apiimportCloudWorkloadSecurityApi# there is a valid "agent_rule" in the systemAGENT_RULE_DATA_ID=environ["AGENT_RULE_DATA_ID"]configuration=Configuration()withApiClient(configuration)asapi_client:api_instance=CloudWorkloadSecurityApi(api_client)api_instance.delete_cloud_workload_security_agent_rule(agent_rule_id=AGENT_RULE_DATA_ID,)
# Delete a Cloud Workload Security Agent rule returns "OK" responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::CloudWorkloadSecurityAPI.new# there is a valid "agent_rule" in the systemAGENT_RULE_DATA_ID=ENV["AGENT_RULE_DATA_ID"]api_instance.delete_cloud_workload_security_agent_rule(AGENT_RULE_DATA_ID)
// Delete a Cloud Workload Security Agent rule returns "OK" response
packagemainimport("context""fmt""os""github.com/DataDog/datadog-api-client-go/v2/api/datadog""github.com/DataDog/datadog-api-client-go/v2/api/datadogV2")funcmain(){// there is a valid "agent_rule" in the system
AgentRuleDataID:=os.Getenv("AGENT_RULE_DATA_ID")ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewCloudWorkloadSecurityApi(apiClient)r,err:=api.DeleteCloudWorkloadSecurityAgentRule(ctx,AgentRuleDataID)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `CloudWorkloadSecurityApi.DeleteCloudWorkloadSecurityAgentRule`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}}
// Delete a Cloud Workload Security Agent rule returns "OK" response
importcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.CloudWorkloadSecurityApi;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();CloudWorkloadSecurityApiapiInstance=newCloudWorkloadSecurityApi(defaultClient);// there is a valid "agent_rule" in the system
StringAGENT_RULE_DATA_ID=System.getenv("AGENT_RULE_DATA_ID");try{apiInstance.deleteCloudWorkloadSecurityAgentRule(AGENT_RULE_DATA_ID);}catch(ApiExceptione){System.err.println("Exception when calling CloudWorkloadSecurityApi#deleteCloudWorkloadSecurityAgentRule");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
/**
* Delete a Cloud Workload Security Agent rule returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.CloudWorkloadSecurityApi(configuration);// there is a valid "agent_rule" in the system
constAGENT_RULE_DATA_ID=process.env.AGENT_RULE_DATA_IDasstring;constparams: v2.CloudWorkloadSecurityApiDeleteCloudWorkloadSecurityAgentRuleRequest={agentRuleId: AGENT_RULE_DATA_ID,};apiInstance.deleteCloudWorkloadSecurityAgentRule(params).then((data: any)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));