Runbook - Create Or Update

Create the runbook identified by runbook name.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/runbooks/{runbookName}?api-version=2023-11-01

URI Parameters

Name In Required Type Description
automationAccountName
path True

string

The name of the automation account.

resourceGroupName
path True

string

Name of an Azure Resource group.

Regex pattern: ^[-\w\._]+$

runbookName
path True

string

The runbook name.

Regex pattern: ^[a-zA-Z][a-zA-Z-_0-9]*$

subscriptionId
path True

string

Gets subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.

api-version
query True

string

Client Api Version.

Request Body

Name Required Type Description
properties.runbookType True

RunbookTypeEnum

Gets or sets the type of the runbook.

location

string

Gets or sets the location of the resource.

name

string

Gets or sets the name of the resource.

properties.description

string

Gets or sets the description of the runbook.

properties.draft

RunbookDraft

Gets or sets the draft runbook properties.

properties.logActivityTrace

integer

Gets or sets the activity-level tracing options of the runbook.

properties.logProgress

boolean

Gets or sets progress log option.

properties.logVerbose

boolean

Gets or sets verbose log option.

properties.publishContentLink

ContentLink

Gets or sets the published runbook content link.

tags

object

Gets or sets the tags attached to the resource.

Responses

Name Type Description
200 OK

Runbook

OK

201 Created

Runbook

Created

Other Status Codes

ErrorResponse

Automation error response describing why the operation failed.

Security

azure_auth

Azure Active Directory OAuth2 Flow

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

Create or update runbook and publish it
Create runbook as draft

Create or update runbook and publish it

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Automation/automationAccounts/ContoseAutomationAccount/runbooks/Get-AzureVMTutorial?api-version=2023-11-01

{
  "properties": {
    "logVerbose": false,
    "logProgress": true,
    "runbookType": "PowerShellWorkflow",
    "publishContentLink": {
      "uri": "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-automation-runbook-getvms/Runbooks/Get-AzureVMTutorial.ps1",
      "contentHash": {
        "algorithm": "SHA256",
        "value": "115775B8FF2BE672D8A946BD0B489918C724DDE15A440373CA54461D53010A80"
      }
    },
    "description": "Description of the Runbook",
    "logActivityTrace": 1
  },
  "name": "Get-AzureVMTutorial",
  "location": "East US 2",
  "tags": {
    "tag01": "value01",
    "tag02": "value02"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Automation/automationAccounts/ContoseAutomationAccount/runbooks/Get-AzureVMTutorial",
  "name": "Get-AzureVMTutorial",
  "type": "Microsoft.Automation/AutomationAccounts/Runbooks",
  "location": "East US 2",
  "tags": {
    "tag01": "value01",
    "tag02": "value02"
  },
  "etag": "\"636263318837230000\"",
  "properties": {
    "description": "Description of the Runbook",
    "logVerbose": false,
    "logProgress": true,
    "logActivityTrace": 1,
    "runbookType": "PowerShellWorkflow",
    "parameters": {},
    "state": "Published",
    "jobCount": 0,
    "provisioningState": "Succeeded",
    "outputTypes": [],
    "creationTime": "2017-03-28T21:04:43.66+00:00",
    "lastModifiedBy": "myEmaild@microsoft.com",
    "lastModifiedTime": "2017-03-28T21:04:43.723+00:00"
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Automation/automationAccounts/ContoseAutomationAccount/runbooks/Get-AzureVMTutorial",
  "name": "Get-AzureVMTutorial",
  "type": "Microsoft.Automation/AutomationAccounts/Runbooks",
  "location": "East US 2",
  "tags": {
    "tag01": "value01",
    "tag02": "value02"
  },
  "etag": "\"636263318866000000\"",
  "properties": {
    "description": "Description of the Runbook",
    "logVerbose": true,
    "logProgress": true,
    "logActivityTrace": 1,
    "runbookType": "PowerShellWorkflow",
    "parameters": {},
    "state": "Published",
    "jobCount": 0,
    "provisioningState": "Succeeded",
    "outputTypes": [],
    "creationTime": "2017-03-28T21:04:43.66+00:00",
    "lastModifiedBy": "myEmaild@microsoft.com",
    "lastModifiedTime": "2017-03-28T21:04:46.6+00:00"
  }
}

Create runbook as draft

Sample Request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Automation/automationAccounts/ContoseAutomationAccount/runbooks/Get-AzureVMTutorial?api-version=2023-11-01

{
  "properties": {
    "logVerbose": false,
    "logProgress": false,
    "runbookType": "PowerShellWorkflow",
    "description": "Description of the Runbook",
    "draft": {}
  },
  "name": "Get-AzureVMTutorial",
  "location": "East US 2",
  "tags": {
    "tag01": "value01",
    "tag02": "value02"
  }
}

Sample Response

{
  "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Automation/automationAccounts/ContoseAutomationAccount/runbooks/Get-AzureVMTutorial",
  "name": "Get-AzureVMTutorial",
  "type": "Microsoft.Automation/AutomationAccounts/Runbooks",
  "location": "East US 2",
  "tags": {
    "tag01": "value01",
    "tag02": "value02"
  },
  "etag": "\"636263318837230000\"",
  "properties": {
    "description": "Description of the Runbook",
    "logVerbose": false,
    "logProgress": false,
    "logActivityTrace": 0,
    "runbookType": "Script",
    "parameters": {},
    "state": "New",
    "jobCount": 0,
    "provisioningState": "Succeeded",
    "creationTime": "2018-02-09T03:25:59.097+00:00",
    "lastModifiedTime": "2018-02-09T03:25:59.097+00:00",
    "outputTypes": []
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg/providers/Microsoft.Automation/automationAccounts/ContoseAutomationAccount/runbooks/Get-AzureVMTutorial",
  "name": "Get-AzureVMTutorial",
  "type": "Microsoft.Automation/AutomationAccounts/Runbooks",
  "location": "East US 2",
  "tags": {
    "tag01": "value01",
    "tag02": "value02"
  },
  "etag": "\"636263318866000000\"",
  "properties": {
    "description": "Description of the Runbook",
    "logVerbose": false,
    "logProgress": false,
    "logActivityTrace": 0,
    "runbookType": "Script",
    "parameters": {},
    "state": "New",
    "jobCount": 0,
    "provisioningState": "Succeeded",
    "creationTime": "2018-02-09T03:25:59.097+00:00",
    "lastModifiedTime": "2018-02-09T03:25:59.097+00:00"
  }
}

Definitions

Name Description
ContentHash

Definition of the runbook property type.

ContentLink

Definition of the content link.

ErrorResponse

Error response of an operation failure

Runbook

Definition of the runbook type.

RunbookCreateOrUpdateParameters

The parameters supplied to the create or update runbook operation.

RunbookDraft
RunbookParameter

Definition of the runbook parameter type.

RunbookProvisioningState

Gets or sets the provisioning state of the runbook.

RunbookState

Gets or sets the state of the runbook.

RunbookTypeEnum

Gets or sets the type of the runbook.

ContentHash

Definition of the runbook property type.

Name Type Description
algorithm

string

Gets or sets the content hash algorithm used to hash the content.

value

string

Gets or sets expected hash value of the content.

Definition of the content link.

Name Type Description
contentHash

ContentHash

Sets the hash.

uri

string

Sets the uri of the content.

version

string

Sets the version of the content.

ErrorResponse

Error response of an operation failure

Name Type Description
code

string

Error code

message

string

Error message indicating why the operation failed.

Runbook

Definition of the runbook type.

Name Type Description
etag

string

Gets or sets the etag of the resource.

id

string

Fully qualified resource Id for the resource

location

string

The Azure Region where the resource lives

name

string

The name of the resource

properties.creationTime

string

Gets or sets the creation time.

properties.description

string

Gets or sets the description.

properties.draft

RunbookDraft

Gets or sets the draft runbook properties.

properties.jobCount

integer

Gets or sets the job count of the runbook.

properties.lastModifiedBy

string

Gets or sets the last modified by.

properties.lastModifiedTime

string

Gets or sets the last modified time.

properties.logActivityTrace

integer

Gets or sets the option to log activity trace of the runbook.

properties.logProgress

boolean

Gets or sets progress log option.

properties.logVerbose

boolean

Gets or sets verbose log option.

properties.outputTypes

string[]

Gets or sets the runbook output types.

properties.parameters

<string,  RunbookParameter>

Gets or sets the runbook parameters.

properties.provisioningState

RunbookProvisioningState

Gets or sets the provisioning state of the runbook.

properties.publishContentLink

ContentLink

Gets or sets the published runbook content link.

properties.runbookType

RunbookTypeEnum

Gets or sets the type of the runbook.

properties.state

RunbookState

Gets or sets the state of the runbook.

tags

object

Resource tags.

type

string

The type of the resource.

RunbookCreateOrUpdateParameters

The parameters supplied to the create or update runbook operation.

Name Type Description
location

string

Gets or sets the location of the resource.

name

string

Gets or sets the name of the resource.

properties.description

string

Gets or sets the description of the runbook.

properties.draft

RunbookDraft

Gets or sets the draft runbook properties.

properties.logActivityTrace

integer

Gets or sets the activity-level tracing options of the runbook.

properties.logProgress

boolean

Gets or sets progress log option.

properties.logVerbose

boolean

Gets or sets verbose log option.

properties.publishContentLink

ContentLink

Gets or sets the published runbook content link.

properties.runbookType

RunbookTypeEnum

Gets or sets the type of the runbook.

tags

object

Gets or sets the tags attached to the resource.

RunbookDraft

Name Type Description
creationTime

string

Gets or sets the creation time of the runbook draft.

draftContentLink

ContentLink

Gets or sets the draft runbook content link.

inEdit

boolean

Gets or sets whether runbook is in edit mode.

lastModifiedTime

string

Gets or sets the last modified time of the runbook draft.

outputTypes

string[]

Gets or sets the runbook output types.

parameters

<string,  RunbookParameter>

Gets or sets the runbook draft parameters.

RunbookParameter

Definition of the runbook parameter type.

Name Type Description
defaultValue

string

Gets or sets the default value of parameter.

isMandatory

boolean

Gets or sets a Boolean value to indicate whether the parameter is mandatory or not.

position

integer

Get or sets the position of the parameter.

type

string

Gets or sets the type of the parameter.

RunbookProvisioningState

Gets or sets the provisioning state of the runbook.

Name Type Description
Succeeded

string

RunbookState

Gets or sets the state of the runbook.

Name Type Description
Edit

string

New

string

Published

string

RunbookTypeEnum

Gets or sets the type of the runbook.

Name Type Description
Graph

string

GraphPowerShell

string

GraphPowerShellWorkflow

string

PowerShell

string

PowerShell72

string

PowerShellWorkflow

string

Python2

string

Python3

string

Script

string