Create a publish request to ask for approval to publish an app whose protection level is approval_required. Publishing happens automatically once the request is approved by a user with the appropriate permissions.
This endpoint requires the apps_write permission.
## default
#
# Path parameters exportapp_id="65bb1f25-52e1-4510-9f8d-22d1516ed693" # Curl command curl-XPOST"https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.us2.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/app-builder/apps/${app_id}/publish-request" \
-H"Accept: application/json" \
-H"Content-Type: application/json" \
-H"DD-API-KEY: ${DD_API_KEY}" \
-H"DD-APPLICATION-KEY: ${DD_APP_KEY}" \
-d@-<<EOF{
"data": {
"attributes": {
"description": "Adds new dashboard widgets and a few bug fixes.",
"title": "Release v1.2 to production"
},
"type": "publishRequest"
}
}EOF
"""
Create Publish Request returns "Created" response
"""fromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.app_builder_apiimportAppBuilderApifromdatadog_api_client.v2.model.create_publish_request_requestimportCreatePublishRequestRequestfromdatadog_api_client.v2.model.create_publish_request_request_dataimportCreatePublishRequestRequestDatafromdatadog_api_client.v2.model.create_publish_request_request_data_attributesimport(CreatePublishRequestRequestDataAttributes,)fromdatadog_api_client.v2.model.publish_request_typeimportPublishRequestTypefromuuidimportUUIDbody=CreatePublishRequestRequest(data=CreatePublishRequestRequestData(attributes=CreatePublishRequestRequestDataAttributes(description="Adds new dashboard widgets and a few bug fixes.",title="Release v1.2 to production",),type=PublishRequestType.PUBLISHREQUEST,),)configuration=Configuration()withApiClient(configuration)asapi_client:api_instance=AppBuilderApi(api_client)response=api_instance.create_publish_request(app_id=UUID("9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"),body=body)print(response)
# Create Publish Request returns "Created" responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::AppBuilderAPI.newbody=DatadogAPIClient::V2::CreatePublishRequestRequest.new({data:DatadogAPIClient::V2::CreatePublishRequestRequestData.new({attributes:DatadogAPIClient::V2::CreatePublishRequestRequestDataAttributes.new({description:"Adds new dashboard widgets and a few bug fixes.",title:"Release v1.2 to production",}),type:DatadogAPIClient::V2::PublishRequestType::PUBLISHREQUEST,}),})papi_instance.create_publish_request("9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",body)
// Create Publish Request 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""github.com/google/uuid")funcmain(){body:=datadogV2.CreatePublishRequestRequest{Data:&datadogV2.CreatePublishRequestRequestData{Attributes:&datadogV2.CreatePublishRequestRequestDataAttributes{Description:datadog.PtrString("Adds new dashboard widgets and a few bug fixes."),Title:"Release v1.2 to production",},Type:datadogV2.PUBLISHREQUESTTYPE_PUBLISHREQUEST.Ptr(),},}ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewAppBuilderApi(apiClient)resp,r,err:=api.CreatePublishRequest(ctx,uuid.MustParse("9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"),body)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `AppBuilderApi.CreatePublishRequest`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `AppBuilderApi.CreatePublishRequest`:\n%s\n",responseContent)}
// Create Publish Request returns "Created" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.AppBuilderApi;importcom.datadog.api.client.v2.model.CreatePublishRequestRequest;importcom.datadog.api.client.v2.model.CreatePublishRequestRequestData;importcom.datadog.api.client.v2.model.CreatePublishRequestRequestDataAttributes;importcom.datadog.api.client.v2.model.PublishAppResponse;importcom.datadog.api.client.v2.model.PublishRequestType;importjava.util.UUID;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();AppBuilderApiapiInstance=newAppBuilderApi(defaultClient);CreatePublishRequestRequestbody=newCreatePublishRequestRequest().data(newCreatePublishRequestRequestData().attributes(newCreatePublishRequestRequestDataAttributes().description("Adds new dashboard widgets and a few bug fixes.").title("Release v1.2 to production")).type(PublishRequestType.PUBLISHREQUEST));try{PublishAppResponseresult=apiInstance.createPublishRequest(UUID.fromString("65bb1f25-52e1-4510-9f8d-22d1516ed693"),body);System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling AppBuilderApi#createPublishRequest");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
// Create Publish Request returns "Created" response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_app_builder::AppBuilderAPI;usedatadog_api_client::datadogV2::model::CreatePublishRequestRequest;usedatadog_api_client::datadogV2::model::CreatePublishRequestRequestData;usedatadog_api_client::datadogV2::model::CreatePublishRequestRequestDataAttributes;usedatadog_api_client::datadogV2::model::PublishRequestType;useuuid::Uuid;#[tokio::main]asyncfnmain(){letbody=CreatePublishRequestRequest::new().data(CreatePublishRequestRequestData::new().attributes(CreatePublishRequestRequestDataAttributes::new("Release v1.2 to production".to_string(),).description("Adds new dashboard widgets and a few bug fixes.".to_string()),).type_(PublishRequestType::PUBLISHREQUEST),);letconfiguration=datadog::Configuration::new();letapi=AppBuilderAPI::with_config(configuration);letresp=api.create_publish_request(Uuid::parse_str("00000000-0000-0000-0000-000000000000").expect("invalid UUID"),body,).await;ifletOk(value)=resp{println!("{:#?}",value);}else{println!("{:#?}",resp.unwrap_err());}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<API-KEY>"DD_APP_KEY="<APP-KEY>"cargo run
/**
* Create Publish Request returns "Created" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.AppBuilderApi(configuration);constparams: v2.AppBuilderApiCreatePublishRequestRequest={body:{data:{attributes:{description:"Adds new dashboard widgets and a few bug fixes.",title:"Release v1.2 to production",},type:"publishRequest",},},appId:"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",};apiInstance.createPublishRequest(params).then((data: v2.PublishAppResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));