---
title: Workflow Automation API reference
source: https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/using-workflow-automation-api
---

The Workflow Automation API enables you to programmatically create, manage, and execute workflows in New Relic. Use these APIs to automate repetitive tasks, orchestrate complex operations, and integrate workflows into your development and operations processes.

## Before you begin

To use the Workflow Automation APIs, you'll need:

-   A New Relic account with appropriate permissions
-   Access to the [NerdGraph API explorer](https://one.newrelic.com/nerdgraph-graphiql?state=c8579e50-f154-fec6-22b8-f9fdcfc1990a) to create and test your API calls
-   Understanding of [NerdGraph](https://docs.newrelic.com/docs/apis/nerdgraph/get-started/introduction-new-relic-nerdgraph) (New Relic's GraphQL API)

For additional help:

-   Learn how to use the GraphiQL IDE in the [NerdGraph API explorer tutorial](https://docs.newrelic.com/docs/apis/nerdgraph/get-started/nerdgraph-explorer)
-   See [Introduction to APIs](https://docs.newrelic.com/docs/apis/intro-apis/introduction-new-relic-apis) for an overview of all New Relic APIs

### Authentication and secrets

Workflow Automation uses Customer Secret Storage for managing sensitive information like API keys and credentials. Secrets are managed through [our GraphQL API](https://docs.newrelic.com/docs/apis/nerdgraph/get-started/introduction-new-relic-nerdgraph). For authentication details related to secret management, refer to the [NerdGraph documentation](https://docs.newrelic.com/docs/apis/nerdgraph/get-started/introduction-new-relic-nerdgraph).

## Create and manage workflows

Use these APIs to create, update, validate, and delete workflow definitions:

-   [CreateWorkflowDefinition](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/create-workflow-definition) - Create a new workflow definition
-   [UpdateWorkflowDefinition](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/update-workflow-definition) - Update an existing workflow definition
-   [ValidateWorkflowDefinition](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/validate-workflow-definition) - Validate workflow definition YAML before creating or updating
-   [DeleteWorkflowDefinition](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/delete-workflow-definition) - Delete all versions of a workflow definition with the specified name

## Query workflows and actions

Use these APIs to retrieve information about workflows and available actions:

-   [GetWorkflowDefinition](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/get-workflow-definition) - Get and return a specific workflow definition
-   [GetWorkflowDefinitions](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/get-workflow-definitions) - Get and return a list of workflow definitions under your account scope
-   [GetActionDefinitions](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/get-action-definitions) - Return all available action definitions

## Run workflows

Use these APIs to control workflow execution:

-   [StartWorkflowRun](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/start-workflow-run) - Start a workflow run for a specified workflow definition
-   [SignalWorkflowRun](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/signal-workflow-run) - Trigger a signal to an existing running workflow
-   [StopWorkflowRun](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/stop-workflow-run) - Stop a running workflow instance
-   [WorkflowRunInfo](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/workflow-run-info) - Retrieve information about a specific workflow run

## Schedule workflows

Use these APIs to create and manage workflow schedules:

-   [CreateSchedule](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/create-schedule) - Create a schedule for a workflow definition
-   [GetSchedule](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/get-schedule) - Get and return schedule details
-   [GetSchedules](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/get-schedules) - Return information about all schedules
-   [DeleteSchedule](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/delete-schedule) - Delete the schedule of a workflow definition

> #### ⚠️ IMPORTANT
>
> Deleting a schedule doesn't stop already running workflow instances.

### Reference documentation

-   [Definition Schema](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/definition-schema) - Workflow definition structure and syntax reference

## Related topics [#related-topics]

[Definition schema](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/definition-schema)

Complete YAML schema reference for workflow definitions

[Validate workflow definition](https://docs.newrelic.com/docs/workflow-automation/workflow-automation-apis/validate-workflow-definition)

Test your workflow YAML syntax before deployment

[Actions catalog](https://docs.newrelic.com/docs/workflow-automation/setup-and-configure/actions-catalog/actions-catalog)

View all available actions with their API input requirements
