Submit feedback on the current ownership inference for a resource and owner type. Valid actions are confirm, reject, correct, and persist.
The request must include the current inference checksum in inference_checksum. If the checksum does not match the current inference state, the endpoint returns 409 Conflict.
When action is correct, corrected_owner_handle and corrected_owner_type are required.
Arguments
Path Parameters
Name
Type
Description
resource_id [required]
string
The identifier of the resource that the feedback applies to.
The data wrapper for an ownership feedback request.
attributes [required]
object
The attributes of an ownership feedback request.
action [required]
enum
The feedback action to apply to an inference.
Allowed enum values: confirm,reject,correct,persist
actor_handle [required]
string
The handle of the actor submitting the feedback.
actor_type [required]
string
The type of actor submitting the feedback, for example user or service.
corrected_owner_handle
string
The corrected owner handle. Required when action is correct.
corrected_owner_type
string
The corrected owner type. Required when action is correct.
inference_checksum [required]
string
The checksum of the inference being acted upon. Must match the current inference checksum or the request returns a conflict.
reason
string
An optional free-form reason explaining the feedback.
type [required]
enum
The type of the ownership feedback request resource. The value should always be ownership_feedback.
Allowed enum values: ownership_feedback
default: ownership_feedback
{"data":{"attributes":{"action":"confirm","actor_handle":"user@example.com","actor_type":"user","corrected_owner_handle":"team-b","corrected_owner_type":"team","inference_checksum":"abc123","reason":"Confirmed by team lead."},"type":"ownership_feedback"}}
The response returned after applying ownership feedback to an inference.
Expand All
Field
Type
Description
data [required]
object
The data wrapper for an ownership feedback result response.
attributes [required]
object
The attributes of an ownership feedback result.
action [required]
enum
The feedback action to apply to an inference.
Allowed enum values: confirm,reject,correct,persist
checksum [required]
string
The checksum of the inference after the feedback was applied.
new_status [required]
enum
The lifecycle status of an ownership inference.
Allowed enum values: suggested,persisted,overridden,failed,unknown
owner_type [required]
enum
The owner type for an ownership inference.
Allowed enum values: user,team,service,unknown
previous_status [required]
enum
The lifecycle status of an ownership inference.
Allowed enum values: suggested,persisted,overridden,failed,unknown
primary_contact_ref
string
The primary contact reference for the inferred owner after the feedback was applied, formatted as ref:handle/<owner_handle>.
updated_at [required]
date-time
The time when the inference was updated by the feedback.
id [required]
string
The identifier of the resource that the feedback was applied to.
type [required]
enum
The type of the ownership feedback result resource. The value should always be ownership_feedback_result.
Allowed enum values: ownership_feedback_result
"""
Submit feedback on an ownership inference returns "Created" response
"""fromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.csm_ownership_apiimportCSMOwnershipApifromdatadog_api_client.v2.model.ownership_feedback_actionimportOwnershipFeedbackActionfromdatadog_api_client.v2.model.ownership_feedback_requestimportOwnershipFeedbackRequestfromdatadog_api_client.v2.model.ownership_feedback_request_attributesimportOwnershipFeedbackRequestAttributesfromdatadog_api_client.v2.model.ownership_feedback_request_dataimportOwnershipFeedbackRequestDatafromdatadog_api_client.v2.model.ownership_feedback_typeimportOwnershipFeedbackTypefromdatadog_api_client.v2.model.ownership_owner_typeimportOwnershipOwnerTypebody=OwnershipFeedbackRequest(data=OwnershipFeedbackRequestData(attributes=OwnershipFeedbackRequestAttributes(action=OwnershipFeedbackAction.CONFIRM,actor_handle="user@example.com",actor_type="user",corrected_owner_handle="team-b",corrected_owner_type="team",inference_checksum="abc123",reason="Confirmed by team lead.",),type=OwnershipFeedbackType.OWNERSHIP_FEEDBACK,),)configuration=Configuration()configuration.unstable_operations["create_ownership_feedback"]=TruewithApiClient(configuration)asapi_client:api_instance=CSMOwnershipApi(api_client)response=api_instance.create_ownership_feedback(resource_id="res-1",owner_type=OwnershipOwnerType.TEAM,body=body)print(response)
# Submit feedback on an ownership inference returns "Created" responserequire"datadog_api_client"DatadogAPIClient.configuredo|config|config.unstable_operations["v2.create_ownership_feedback".to_sym]=trueendapi_instance=DatadogAPIClient::V2::CSMOwnershipAPI.newbody=DatadogAPIClient::V2::OwnershipFeedbackRequest.new({data:DatadogAPIClient::V2::OwnershipFeedbackRequestData.new({attributes:DatadogAPIClient::V2::OwnershipFeedbackRequestAttributes.new({action:DatadogAPIClient::V2::OwnershipFeedbackAction::CONFIRM,actor_handle:"user@example.com",actor_type:"user",corrected_owner_handle:"team-b",corrected_owner_type:"team",inference_checksum:"abc123",reason:"Confirmed by team lead.",}),type:DatadogAPIClient::V2::OwnershipFeedbackType::OWNERSHIP_FEEDBACK,}),})papi_instance.create_ownership_feedback("res-1",OwnershipOwnerType::TEAM,body)
// Submit feedback on an ownership inference returns "Created" responsepackagemainimport("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(){body:=datadogV2.OwnershipFeedbackRequest{Data:datadogV2.OwnershipFeedbackRequestData{Attributes:datadogV2.OwnershipFeedbackRequestAttributes{Action:datadogV2.OWNERSHIPFEEDBACKACTION_CONFIRM,ActorHandle:"user@example.com",ActorType:"user",CorrectedOwnerHandle:*datadog.NewNullableString(datadog.PtrString("team-b")),CorrectedOwnerType:*datadog.NewNullableString(datadog.PtrString("team")),InferenceChecksum:"abc123",Reason:*datadog.NewNullableString(datadog.PtrString("Confirmed by team lead.")),},Type:datadogV2.OWNERSHIPFEEDBACKTYPE_OWNERSHIP_FEEDBACK,},}ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()configuration.SetUnstableOperationEnabled("v2.CreateOwnershipFeedback",true)apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewCSMOwnershipApi(apiClient)resp,r,err:=api.CreateOwnershipFeedback(ctx,"res-1",datadogV2.OWNERSHIPOWNERTYPE_TEAM,body)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `CSMOwnershipApi.CreateOwnershipFeedback`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `CSMOwnershipApi.CreateOwnershipFeedback`:\n%s\n",responseContent)}
// Submit feedback on an ownership inference returns "Created" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.CsmOwnershipApi;importcom.datadog.api.client.v2.model.OwnershipFeedbackAction;importcom.datadog.api.client.v2.model.OwnershipFeedbackRequest;importcom.datadog.api.client.v2.model.OwnershipFeedbackRequestAttributes;importcom.datadog.api.client.v2.model.OwnershipFeedbackRequestData;importcom.datadog.api.client.v2.model.OwnershipFeedbackResponse;importcom.datadog.api.client.v2.model.OwnershipFeedbackType;importcom.datadog.api.client.v2.model.OwnershipOwnerType;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();defaultClient.setUnstableOperationEnabled("v2.createOwnershipFeedback",true);CsmOwnershipApiapiInstance=newCsmOwnershipApi(defaultClient);OwnershipFeedbackRequestbody=newOwnershipFeedbackRequest().data(newOwnershipFeedbackRequestData().attributes(newOwnershipFeedbackRequestAttributes().action(OwnershipFeedbackAction.CONFIRM).actorHandle("user@example.com").actorType("user").correctedOwnerHandle("team-b").correctedOwnerType("team").inferenceChecksum("abc123").reason("Confirmed by team lead.")).type(OwnershipFeedbackType.OWNERSHIP_FEEDBACK));try{OwnershipFeedbackResponseresult=apiInstance.createOwnershipFeedback("res-1",OwnershipOwnerType.TEAM,body);System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling CsmOwnershipApi#createOwnershipFeedback");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
// Submit feedback on an ownership inference returns "Created" response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_csm_ownership::CSMOwnershipAPI;usedatadog_api_client::datadogV2::model::OwnershipFeedbackAction;usedatadog_api_client::datadogV2::model::OwnershipFeedbackRequest;usedatadog_api_client::datadogV2::model::OwnershipFeedbackRequestAttributes;usedatadog_api_client::datadogV2::model::OwnershipFeedbackRequestData;usedatadog_api_client::datadogV2::model::OwnershipFeedbackType;usedatadog_api_client::datadogV2::model::OwnershipOwnerType;#[tokio::main]asyncfnmain(){letbody=OwnershipFeedbackRequest::new(OwnershipFeedbackRequestData::new(OwnershipFeedbackRequestAttributes::new(OwnershipFeedbackAction::CONFIRM,"user@example.com".to_string(),"user".to_string(),"abc123".to_string(),).corrected_owner_handle(Some("team-b".to_string())).corrected_owner_type(Some("team".to_string())).reason(Some("Confirmed by team lead.".to_string())),OwnershipFeedbackType::OWNERSHIP_FEEDBACK,));letmutconfiguration=datadog::Configuration::new();configuration.set_unstable_operation_enabled("v2.CreateOwnershipFeedback",true);letapi=CSMOwnershipAPI::with_config(configuration);letresp=api.create_ownership_feedback("res-1".to_string(),OwnershipOwnerType::TEAM,body).await;ifletOk(value)=resp{println!("{:#?}",value);}else{println!("{:#?}",resp.unwrap_err());}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<API-KEY>"DD_APP_KEY="<APP-KEY>"cargo run
/**
* Submit feedback on an ownership inference returns "Created" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();configuration.unstableOperations["v2.createOwnershipFeedback"]=true;constapiInstance=newv2.CSMOwnershipApi(configuration);constparams: v2.CSMOwnershipApiCreateOwnershipFeedbackRequest={body:{data:{attributes:{action:"confirm",actorHandle:"user@example.com",actorType:"user",correctedOwnerHandle:"team-b",correctedOwnerType:"team",inferenceChecksum:"abc123",reason:"Confirmed by team lead.",},type:"ownership_feedback",},},resourceId:"res-1",ownerType:"team",};apiInstance.createOwnershipFeedback(params).then((data: v2.OwnershipFeedbackResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));