Azure Automation Runbook Draft API

The RunbookDraft API from Azure Automation — 3 operation(s) for runbookdraft.

Operations 4

GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/runbooks/{runbookName}/draft Runbook draft get #
GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/runbooks/{runbookName}/draft/content Runbook draft get content #
PUT /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/runbooks/{runbookName}/draft/content Runbook draft replace content #
POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/runbooks/{runbookName}/draft/undoEdit Runbook draft undo edit #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/microsoft-azure-automation:microsoft-azure-automation-runbookdraft-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

microsoft-azure-automation-runbookdraft-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Microsoft Azure Automation Runbook Draft API
  version: '2024-10-23'
  x-typespec-generated:
  - emitter: '@azure-tools/typespec-autorest'
  description: 'Operations tagged RunbookDraft across 2 of this provider''s published API definitions: microsoft-azure-automation-openapi.json, microsoft-azure-automation-management-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://management.azure.com
security:
- azure_auth:
  - user_impersonation
tags:
- name: RunbookDraft
paths:
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/runbooks/{runbookName}/draft
  : get:
      operationId: RunbookDraft_Get
      tags:
      - RunbookDraft
      description: Retrieve the runbook draft identified by runbook name.
      externalDocs:
        url: http://aka.ms/azureautomationsdk/runbookdraftoperations
      parameters:
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
      - name: automationAccountName
        in: path
        description: The name of the automation account.
        required: true
        schema:
          type: string
      - name: runbookName
        in: path
        description: The runbook name.
        required: true
        schema:
          type: string
          pattern: ^[a-zA-Z][a-zA-Z-_0-9]*$
      responses:
        '200':
          description: Azure operation completed successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunbookDraft'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: ../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse
      x-ms-examples:
        Get runbook draft:
          $ref: ./examples/runbook/getRunbookDraft.json
      summary: Runbook draft get
      x-summary-source: derived
    servers:
    - url: https://management.azure.com
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/runbooks/{runbookName}/draft/content
  : get:
      operationId: RunbookDraft_GetContent
      tags:
      - RunbookDraft
      description: Retrieve the content of runbook draft identified by runbook name.
      externalDocs:
        url: http://aka.ms/azureautomationsdk/runbookdraftoperations
      parameters:
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
      - name: automationAccountName
        in: path
        description: The name of the automation account.
        required: true
        schema:
          type: string
      - name: runbookName
        in: path
        description: The runbook name.
        required: true
        schema:
          type: string
          pattern: ^[a-zA-Z][a-zA-Z-_0-9]*$
      responses:
        '200':
          description: Azure operation completed successfully.
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema:
                type: string
        default:
          description: An unexpected error response.
          content:
            text/plain:
              schema:
                $ref: ../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse
            application/json:
              schema:
                $ref: ../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse
      x-ms-examples:
        Get runbook draft content:
          $ref: ./examples/runbook/getRunbookDraftContent.json
      summary: Runbook draft get content
      x-summary-source: derived
    put:
      operationId: RunbookDraft_ReplaceContent
      tags:
      - RunbookDraft
      description: Replaces the runbook draft content.
      externalDocs:
        url: http://aka.ms/azureautomationsdk/runbookdraftoperations
      parameters:
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
      - name: automationAccountName
        in: path
        description: The name of the automation account.
        required: true
        schema:
          type: string
      - name: runbookName
        in: path
        description: The runbook name.
        required: true
        schema:
          type: string
          pattern: ^[a-zA-Z][a-zA-Z-_0-9]*$
      responses:
        '202':
          description: Resource operation accepted.
          headers:
            Azure-AsyncOperation:
              description: A link to the status monitor
              schema:
                type: string
            Location:
              schema:
                type: string
            Retry-After:
              description: The Retry-After header can indicate how long the client should wait before polling the operation status.
              schema:
                type: integer
                format: int32
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: ../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse
      x-ms-examples:
        Create or update runbook draft:
          $ref: ./examples/runbook/replaceRunbookDraftContent.json
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
      x-ms-long-running-operation: true
      requestBody:
        content:
          text/plain:
            schema:
              type: string
        description: The runbook draft content.
        required: true
      summary: Runbook draft replace content
      x-summary-source: derived
    servers:
    - url: https://management.azure.com
  ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Automation/automationAccounts/{automationAccountName}/runbooks/{runbookName}/draft/undoEdit
  : post:
      operationId: RunbookDraft_UndoEdit
      tags:
      - RunbookDraft
      description: Undo draft edit to last known published state identified by runbook name.
      externalDocs:
        url: http://aka.ms/azureautomationsdk/runbookdraftoperations
      parameters:
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
      - $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
      - name: automationAccountName
        in: path
        description: The name of the automation account.
        required: true
        schema:
          type: string
      - name: runbookName
        in: path
        description: The runbook name.
        required: true
        schema:
          type: string
          pattern: ^[a-zA-Z][a-zA-Z-_0-9]*$
      responses:
        '200':
          description: Azure operation completed successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunbookDraftUndoEditResult'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: ../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse
      x-ms-examples:
        Undo draft edit to last known published state:
          $ref: ./examples/runbook/undoDraftEditToLastKnownPublishedState.json
      summary: Runbook draft undo edit
      x-summary-source: derived
    servers:
    - url: https://management.azure.com
components:
  schemas:
    RunbookDraftUndoEditResult:
      type: object
      description: The response model for the undo edit runbook operation.
      properties:
        statusCode:
          $ref: '#/components/schemas/HttpStatusCode'
        requestId:
          type: string
    RunbookDraft:
      type: object
      properties:
        inEdit:
          type: boolean
          description: Gets or sets whether runbook is in edit mode.
        draftContentLink:
          $ref: '#/components/schemas/ContentLink'
          description: Gets or sets the draft runbook content link.
        creationTime:
          type: string
          format: date-time
          description: Gets or sets the creation time of the runbook draft.
        lastModifiedTime:
          type: string
          format: date-time
          description: Gets or sets the last modified time of the runbook draft.
        parameters:
          type: object
          description: Gets or sets the runbook draft parameters.
          additionalProperties:
            $ref: '#/components/schemas/RunbookParameter'
        outputTypes:
          type: array
          description: Gets or sets the runbook output types.
          items:
            type: string
    HttpStatusCode:
      type: string
      enum:
      - Continue
      - SwitchingProtocols
      - OK
      - Created
      - Accepted
      - NonAuthoritativeInformation
      - NoContent
      - ResetContent
      - PartialContent
      - MultipleChoices
      - Ambiguous
      - MovedPermanently
      - Moved
      - Found
      - Redirect
      - SeeOther
      - RedirectMethod
      - NotModified
      - UseProxy
      - Unused
      - TemporaryRedirect
      - RedirectKeepVerb
      - BadRequest
      - Unauthorized
      - PaymentRequired
      - Forbidden
      - NotFound
      - MethodNotAllowed
      - NotAcceptable
      - ProxyAuthenticationRequired
      - RequestTimeout
      - Conflict
      - Gone
      - LengthRequired
      - PreconditionFailed
      - RequestEntityTooLarge
      - RequestUriTooLong
      - UnsupportedMediaType
      - RequestedRangeNotSatisfiable
      - ExpectationFailed
      - UpgradeRequired
      - InternalServerError
      - NotImplemented
      - BadGateway
      - ServiceUnavailable
      - GatewayTimeout
      - HttpVersionNotSupported
      x-ms-enum:
        name: HttpStatusCode
        modelAsString: true
        values:
        - name: Continue
          value: Continue
          description: Continue
        - name: SwitchingProtocols
          value: SwitchingProtocols
          description: SwitchingProtocols
        - name: OK
          value: OK
          description: OK
        - name: Created
          value: Created
          description: Created
        - name: Accepted
          value: Accepted
          description: Accepted
        - name: NonAuthoritativeInformation
          value: NonAuthoritativeInformation
          description: NonAuthoritativeInformation
        - name: NoContent
          value: NoContent
          description: NoContent
        - name: ResetContent
          value: ResetContent
          description: ResetContent
        - name: PartialContent
          value: PartialContent
          description: PartialContent
        - name: MultipleChoices
          value: MultipleChoices
          description: MultipleChoices
        - name: Ambiguous
          value: Ambiguous
          description: Ambiguous
        - name: MovedPermanently
          value: MovedPermanently
          description: MovedPermanently
        - name: Moved
          value: Moved
          description: Moved
        - name: Found
          value: Found
          description: Found
        - name: Redirect
          value: Redirect
          description: Redirect
        - name: SeeOther
          value: SeeOther
          description: SeeOther
        - name: RedirectMethod
          value: RedirectMethod
          description: RedirectMethod
        - name: NotModified
          value: NotModified
          description: NotModified
        - name: UseProxy
          value: UseProxy
          description: UseProxy
        - name: Unused
          value: Unused
          description: Unused
        - name: TemporaryRedirect
          value: TemporaryRedirect
          description: TemporaryRedirect
        - name: RedirectKeepVerb
          value: RedirectKeepVerb
          description: RedirectKeepVerb
        - name: BadRequest
          value: BadRequest
          description: BadRequest
        - name: Unauthorized
          value: Unauthorized
          description: Unauthorized
        - name: PaymentRequired
          value: PaymentRequired
          description: PaymentRequired
        - name: Forbidden
          value: Forbidden
          description: Forbidden
        - name: NotFound
          value: NotFound
          description: NotFound
        - name: MethodNotAllowed
          value: MethodNotAllowed
          description: MethodNotAllowed
        - name: NotAcceptable
          value: NotAcceptable
          description: NotAcceptable
        - name: ProxyAuthenticationRequired
          value: ProxyAuthenticationRequired
          description: ProxyAuthenticationRequired
        - name: RequestTimeout
          value: RequestTimeout
          description: RequestTimeout
        - name: Conflict
          value: Conflict
          description: Conflict
        - name: Gone
          value: Gone
          description: Gone
        - name: LengthRequired
          value: LengthRequired
          description: LengthRequired
        - name: PreconditionFailed
          value: PreconditionFailed
          description: PreconditionFailed
        - name: RequestEntityTooLarge
          value: RequestEntityTooLarge
          description: RequestEntityTooLarge
        - name: RequestUriTooLong
          value: RequestUriTooLong
          description: RequestUriTooLong
        - name: UnsupportedMediaType
          value: UnsupportedMediaType
          description: UnsupportedMediaType
        - name: RequestedRangeNotSatisfiable
          value: RequestedRangeNotSatisfiable
          description: RequestedRangeNotSatisfiable
        - name: ExpectationFailed
          value: ExpectationFailed
          description: ExpectationFailed
        - name: UpgradeRequired
          value: UpgradeRequired
          description: UpgradeRequired
        - name: InternalServerError
          value: InternalServerError
          description: InternalServerError
        - name: NotImplemented
          value: NotImplemented
          description: NotImplemented
        - name: BadGateway
          value: BadGateway
          description: BadGateway
        - name: ServiceUnavailable
          value: ServiceUnavailable
          description: ServiceUnavailable
        - name: GatewayTimeout
          value: GatewayTimeout
          description: GatewayTimeout
        - name: HttpVersionNotSupported
          value: HttpVersionNotSupported
          description: HttpVersionNotSupported
    RunbookParameter:
      type: object
      description: Definition of the runbook parameter type.
      properties:
        type:
          type: string
          description: Gets or sets the type of the parameter.
        isMandatory:
          type: boolean
          description: Gets or sets a Boolean value to indicate whether the parameter is mandatory or not.
        position:
          type: integer
          format: int32
          description: Get or sets the position of the parameter.
        defaultValue:
          type: string
          description: Gets or sets the default value of parameter.
    ContentLink:
      type: object
      description: Definition of the content link.
      properties:
        uri:
          type: string
          description: Gets or sets the uri of content.
        contentHash:
          $ref: '#/components/schemas/ContentHash'
          description: Gets or sets the hash.
        version:
          type: string
          description: Gets or sets the version of the content.
    ContentHash:
      type: object
      description: Definition of the runbook property type.
      properties:
        algorithm:
          type: string
          description: Gets or sets the content hash algorithm used to hash the content.
        value:
          type: string
          description: Gets or sets expected hash value of the content.
      required:
      - algorithm
      - value
  securitySchemes:
    azure_auth:
      type: oauth2
      flows:
        implicit:
          scopes:
            user_impersonation: impersonate your user account
          authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
      description: Azure Active Directory OAuth2 Flow.
x-refined-from:
- microsoft-azure-automation-openapi.json
- microsoft-azure-automation-management-openapi.yml