POST https://api.ap1.datadoghq.com/api/v2/workflows/{workflow_id}/instances https://api.ap2.datadoghq.com/api/v2/workflows/{workflow_id}/instances https://api.datadoghq.eu/api/v2/workflows/{workflow_id}/instances https://api.ddog-gov.com/api/v2/workflows/{workflow_id}/instances https://api.us2.ddog-gov.com/api/v2/workflows/{workflow_id}/instances https://api.datadoghq.com/api/v2/workflows/{workflow_id}/instances https://api.us3.datadoghq.com/api/v2/workflows/{workflow_id}/instances https://api.us5.datadoghq.com/api/v2/workflows/{workflow_id}/instances
Overview Execute the given workflow. This API requires a registered application key . Alternatively, you can configure these permissions in the UI .
This endpoint requires the workflows_run permission.
OAuth apps require the workflows_run authorization scope to access this endpoint.
Arguments Path Parameters Request Body Data (required)
Expand All
Additional information for creating a workflow instance.
The input parameters to the workflow.
{
"meta" : {
"payload" : {
"input" : "value"
}
}
} Response Created
Response returned upon successful workflow instance creation.
{
"data" : {
"id" : "string"
}
} Bad Request
{
"errors" : [
"Bad Request"
]
} Forbidden
{
"errors" : [
"Bad Request"
]
} Too many requests
{
"errors" : [
"Bad Request"
]
} Code Example Copy
## default
#
# Path parameters export workflow_id = "CHANGE_ME" # Curl command curl -X POST "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/workflows/${workflow_id}/instances " \
-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
{
"meta": {
"payload": {
"input": "value"
}
}
}
EOF
// Execute a workflow returns "Created" response
package main
import (
"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"
)
func main () {
body := datadogV2 . WorkflowInstanceCreateRequest {
Meta : & datadogV2 . WorkflowInstanceCreateMeta {
Payload : map [ string ] interface {}{
"input" : "value" ,
},
},
}
ctx := datadog . NewDefaultContext ( context . Background ())
configuration := datadog . NewConfiguration ()
apiClient := datadog . NewAPIClient ( configuration )
api := datadogV2 . NewWorkflowAutomationApi ( apiClient )
resp , r , err := api . CreateWorkflowInstance ( ctx , "ccf73164-1998-4785-a7a3-8d06c7e5f558" , body )
if err != nil {
fmt . Fprintf ( os . Stderr , "Error when calling `WorkflowAutomationApi.CreateWorkflowInstance`: %v\n" , err )
fmt . Fprintf ( os . Stderr , "Full HTTP response: %v\n" , r )
}
responseContent , _ := json . MarshalIndent ( resp , "" , " " )
fmt . Fprintf ( os . Stdout , "Response from `WorkflowAutomationApi.CreateWorkflowInstance`:\n%s\n" , responseContent )
}
Instructions First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" go run "main.go"
// Execute a workflow returns "Created" response
import com.datadog.api.client.ApiClient ;
import com.datadog.api.client.ApiException ;
import com.datadog.api.client.v2.api.WorkflowAutomationApi ;
import com.datadog.api.client.v2.model.WorkflowInstanceCreateMeta ;
import com.datadog.api.client.v2.model.WorkflowInstanceCreateRequest ;
import com.datadog.api.client.v2.model.WorkflowInstanceCreateResponse ;
import java.util.Map ;
public class Example {
public static void main ( String [] args ) {
ApiClient defaultClient = ApiClient . getDefaultApiClient ();
WorkflowAutomationApi apiInstance = new WorkflowAutomationApi ( defaultClient );
WorkflowInstanceCreateRequest body =
new WorkflowInstanceCreateRequest ()
. meta (
new WorkflowInstanceCreateMeta ()
. payload ( Map . ofEntries ( Map . entry ( "input" , "value" ))));
try {
WorkflowInstanceCreateResponse result =
apiInstance . createWorkflowInstance ( "ccf73164-1998-4785-a7a3-8d06c7e5f558" , body );
System . out . println ( result );
} catch ( ApiException e ) {
System . err . println ( "Exception when calling WorkflowAutomationApi#createWorkflowInstance" );
System . err . println ( "Status code: " + e . getCode ());
System . err . println ( "Reason: " + e . getResponseBody ());
System . err . println ( "Response headers: " + e . getResponseHeaders ());
e . printStackTrace ();
}
}
}
Instructions First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" java "Example.java"
"""
Execute a workflow returns "Created" response
"""
from datadog_api_client import ApiClient , Configuration
from datadog_api_client.v2.api.workflow_automation_api import WorkflowAutomationApi
from datadog_api_client.v2.model.workflow_instance_create_meta import WorkflowInstanceCreateMeta
from datadog_api_client.v2.model.workflow_instance_create_request import WorkflowInstanceCreateRequest
body = WorkflowInstanceCreateRequest (
meta = WorkflowInstanceCreateMeta (
payload = dict ([( "input" , "value" )]),
),
)
configuration = Configuration ()
with ApiClient ( configuration ) as api_client :
api_instance = WorkflowAutomationApi ( api_client )
response = api_instance . create_workflow_instance ( workflow_id = "ccf73164-1998-4785-a7a3-8d06c7e5f558" , body = body )
print ( response )
Instructions First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" python3 "example.py"
# Execute a workflow returns "Created" response
require "datadog_api_client"
api_instance = DatadogAPIClient :: V2 :: WorkflowAutomationAPI . new
body = DatadogAPIClient :: V2 :: WorkflowInstanceCreateRequest . new ({
meta : DatadogAPIClient :: V2 :: WorkflowInstanceCreateMeta . new ({
payload : {
"input" : "value" ,
},
}),
})
p api_instance . create_workflow_instance ( "ccf73164-1998-4785-a7a3-8d06c7e5f558" , body )
Instructions First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" rb "example.rb"
// Execute a workflow returns "Created" response
use datadog_api_client ::datadog ;
use datadog_api_client ::datadogV2 ::api_workflow_automation ::WorkflowAutomationAPI ;
use datadog_api_client ::datadogV2 ::model ::WorkflowInstanceCreateMeta ;
use datadog_api_client ::datadogV2 ::model ::WorkflowInstanceCreateRequest ;
use serde_json ::Value ;
use std ::collections ::BTreeMap ;
#[tokio::main]
async fn main () {
let body =
WorkflowInstanceCreateRequest ::new (). meta ( WorkflowInstanceCreateMeta ::new (). payload (
BTreeMap ::from ([( "input" . to_string (), Value ::from ( "value" ))]),
));
let configuration = datadog ::Configuration ::new ();
let api = WorkflowAutomationAPI ::with_config ( configuration );
let resp = api
. create_workflow_instance ( "ccf73164-1998-4785-a7a3-8d06c7e5f558" . to_string (), body )
. await ;
if let Ok ( value ) = resp {
println! ( " {:#?} " , value );
} else {
println! ( " {:#?} " , resp . unwrap_err ());
}
}
Instructions First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" cargo run
/**
* Execute a workflow returns "Created" response
*/
import { client , v2 } from "@datadog/datadog-api-client" ;
const configuration = client . createConfiguration ();
const apiInstance = new v2 . WorkflowAutomationApi ( configuration );
const params : v2.WorkflowAutomationApiCreateWorkflowInstanceRequest = {
body : {
meta : {
payload : {
input : "value" ,
},
},
},
workflowId : "ccf73164-1998-4785-a7a3-8d06c7e5f558" ,
};
apiInstance
. createWorkflowInstance ( params )
. then (( data : v2.WorkflowInstanceCreateResponse ) => {
console . log (
"API called successfully. Returned data: " + JSON . stringify ( data )
);
})
. catch (( error : any ) => console . error ( error ));
Instructions First install the library and its dependencies and then save the example to example.ts and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" tsc "example.ts"