Skip to main content

Automation utils

  • Reference

Utility functions for accessing AutomationEngine APIs from the Run JavaScript action.

Latest (V2)
npm install @dynatrace-sdk/automation-utils

Functions​

actionExecution​

actionExecution(id?): Promise<ActionExecution>

Required scope: automation:workflows:read

Retrieves the action execution details for the current workflow. Available for executions of workflows type standard only (simple workflow executions will result in 404)

Parameters​

NameTypeDescription
idstringThe ID of the action execution to retrieve. If not provided, the ID from the caller service metadata is used.

Returns​

Description
The action execution details.

Code example

// To get current action execution detail
import { actionExecution } from '@dynatrace-sdk/automation-utils';
const actionExe = await actionExecution();

Code example

// To get loopItem from current action execution
import { actionExecution } from '@dynatrace-sdk/automation-utils';

const actionExe = await actionExecution();
const loopItem = actionExe.loopItem;
// or
const { loopItem } = actionExe;

execution​

execution(id?): Promise<IExecution>

Required scope: automation:workflows:read

Retrieves the execution details for the current workflow. Available for executions of workflows type standard only (simple workflow executions will result in 404)

Parameters​

NameTypeDescription
idstringThe ID of the execution to retrieve. If not provided, the ID from the caller service metadata is used.

Returns​

Description
The execution details.

Code example

// To get current execution detail
import { execution } from '@dynatrace-sdk/automation-utils';

const exe = await execution();

Code example

// To get event context from current execution
import { execution } from '@dynatrace-sdk/automation-utils';

const exe = await execution();
const eventContext = exe.event();

Code example

// To get current task execution result
import { execution } from '@dynatrace-sdk/automation-utils';

const exe = await execution();
const result = await exe.result();
getExecutionLink(): null | string

Returns​

Description
The link to a workflow execution, or null if called within a simple workflow or outside a workflow.
getTaskExecutionLink(): null | string

Returns​

Description
The link to a workflow execution, including the currently executed task name, or null if called within a simple workflow or outside a workflow.
getWorkflowLink(): null | string

Returns​

Description
The link to a workflow, or null if called outside a workflow.

result​

result(predecessorTaskName): Promise<any>

Required scope: automation:workflows:read

Retrieves the result of a task execution in the current workflow.

Parameters​

NameTypeDescription
predecessorTaskName*requiredstringThe name of the predecessor task.

Returns​

Description
The result of the predecessor task execution.

Code example

//To get a predecessor task execution's result
import { result } from '@dynatrace-sdk/automation-utils';

const taskExecutionResult = await result('predecessor_task_1');

Constants​

actionExecutionId​

ID of the running action execution.

executionId​

ID of the running execution.

taskName​

Name of the running task.

workflowId​

ID of the running workflow.

Types​

IExecution​

Extended execution type. Adds helper methods to the base Execution:

Properties​

NameTypeDescription
actor*requiredstring
endedAtnull | Date
eventTriggernull | string
id*requiredstring
inputExecutionInput
isDraftboolean
paramsExecutionParams
parentExecution*requirednull | string
parentTaskName*requirednull | stringParent task execution's name (subworkflows only)
providedInputnull | ExecutionProvidedInput
rootExecutionnull | string
rootWorkflownull | string
runtime*requirednumber

Calculate the runtime of an execution in seconds. If the execution is not ended, runtime is calculated until now.

schedulenull | string
startedAtDate
state*required"CANCELLED" | "ERROR" | "PAUSED" | "RUNNING" | "SUCCESS" | "UNKNOWN"
stateInfonull | string
title*requiredstring
triggernull | string
triggerType*required"Manual" | "Schedule" | "Event" | "Workflow"
triggerTypeDetailTriggerTypeDetail
usernull | string
workflow*requiredstringExecuted Workflow
workflowType*required"STANDARD" | "SIMPLE"
workflowVersion*requirednull | number

Methods​

event​
event(): null | Record<string | string>

Required scope: automation:workflows:read

Returns the event context payload associated with the execution.

Returns​

Description
A key-value object if event data is available, otherwise null.

Code example

import { execution } from '@dynatrace-sdk/automation-utils';

const exe = await execution();
const eventContext = exe.event();
result​
result(taskId): Promise<any>

Required scope: automation:workflows:read

Retrieves the result of a task execution.

Parameters​

NameTypeDescription
taskId*requiredstringThe ID of the task whose result should be retrieved.

Returns​

Description
A promise resolving with the task execution result.

Code example

import { execution } from '@dynatrace-sdk/automation-utils';

const exe = await execution();
const result = await exe.result("task-id");
Still have questions?
Find answers in the Dynatrace Community