> ## Documentation Index
> Fetch the complete documentation index at: https://developers.myhero.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Update an automation

> Owner or project admin only: a run executes with the owner's credentials, so changing what it does is a different act from reading it.



## OpenAPI

````yaml patch /automation/{id}
openapi: 3.1.0
info:
  title: HERO API
  version: current
  description: |-
    The HERO REST API.

    See https://developers.myhero.so for the rendered docs.
servers:
  - url: https://app.myhero.so
security: []
paths:
  /automation/{id}:
    patch:
      tags:
        - Automations
      summary: Update an automation
      description: >-
        Owner or project admin only: a run executes with the owner's
        credentials, so changing what it does is a different act from reading
        it.
      operationId: updateAutomation
      parameters:
        - schema:
            type: string
            minLength: 1
          required: true
          name: id
          in: path
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                projectId:
                  type: string
                  minLength: 1
                workspaceId:
                  type: string
                  minLength: 1
                name:
                  type: string
                  minLength: 1
                description:
                  type:
                    - string
                    - 'null'
                prompt:
                  type:
                    - string
                    - 'null'
                  maxLength: 4000
                promptDoc: {}
                icon:
                  type:
                    - object
                    - 'null'
                  additionalProperties: {}
                triggers:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                        enum:
                          - schedule
                          - event
                          - manual
                          - api
                          - webhook
                          - button
                          - connector
                      mode:
                        type: string
                        enum:
                          - recurring
                          - once
                      cron:
                        type: string
                      timezone:
                        type: string
                      runAt:
                        type: number
                      event:
                        type: string
                        enum:
                          - row.created
                          - row.updated
                          - row.deleted
                          - cell.changed
                          - row.enteredView
                          - row.leftView
                          - clause.added
                          - clause.edited
                          - clause.deleted
                          - term.defined
                          - term.removed
                          - signature.signed
                          - document.fullySigned
                          - document.signaturesVoided
                          - document.created
                          - document.updated
                          - document.moved
                          - document.published
                          - document.duplicated
                          - document.deleted
                          - document.renamed
                          - document.newVersion
                          - document.restoreVersion
                          - workspace.memberJoined
                          - workspace.memberLeft
                          - document.collaboratorAdded
                          - document.collaboratorRemoved
                          - table.created
                          - table.deleted
                          - column.added
                          - column.deleted
                          - project.created
                      projectId:
                        type: string
                      filter:
                        type: object
                        properties:
                          tableId:
                            type: string
                          columnId:
                            type: string
                          documentId:
                            type: string
                          documentIds:
                            type: array
                            items:
                              type: string
                      askForData:
                        type: boolean
                      dataPrompt:
                        type: string
                        maxLength: 2000
                      provider:
                        type: string
                        enum:
                          - gmail
                          - outlook
                      query:
                        type: string
                    required:
                      - type
                  minItems: 1
                conditions:
                  type:
                    - object
                    - 'null'
                  properties:
                    kind:
                      type: string
                      enum:
                        - rowFilter
                        - fields
                        - value
                    group:
                      type: object
                      additionalProperties: {}
                    conjunction:
                      type: string
                      enum:
                        - and
                        - or
                    predicates:
                      type: array
                      items:
                        type: object
                        additionalProperties: {}
                  required:
                    - kind
                actions:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                      condition:
                        type: object
                        properties:
                          kind:
                            type: string
                            enum:
                              - rowFilter
                              - fields
                              - value
                          group:
                            type: object
                            additionalProperties: {}
                          conjunction:
                            type: string
                            enum:
                              - and
                              - or
                          predicates:
                            type: array
                            items:
                              type: object
                              additionalProperties: {}
                        required:
                          - kind
                      continueOnError:
                        type: boolean
                      spec:
                        type: object
                        properties:
                          kind:
                            type: string
                            minLength: 1
                        required:
                          - kind
                        additionalProperties: {}
                    required:
                      - id
                      - spec
                  minItems: 1
                behavior:
                  type:
                    - object
                    - 'null'
                  properties:
                    maxDurationMs:
                      type: integer
                      exclusiveMinimum: 0
                    operationBudget:
                      type: integer
                      minimum: 0
                    maxAffectedRows:
                      type: integer
                      minimum: 0
                    allowDocumentWrites:
                      type: boolean
                    externalWriteBudget:
                      type: integer
                      minimum: 0
                notify:
                  type:
                    - object
                    - 'null'
                  properties:
                    inApp:
                      type: boolean
                    email:
                      type: boolean
                  required:
                    - inApp
                    - email
                onMissingReference:
                  type:
                    - string
                    - 'null'
                  enum:
                    - fail
                    - skip
                    - null
                enabled:
                  type:
                    - boolean
                    - 'null'
                runFromButton:
                  type:
                    - boolean
                    - 'null'
      responses:
        '200':
          description: 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      _id:
                        type: string
                      publicId:
                        type: string
                      projectId:
                        type: string
                      scope:
                        type: object
                        properties:
                          projectIds:
                            type: array
                            items:
                              type: string
                        required:
                          - projectIds
                      workspaceId:
                        type: string
                      ownerId:
                        type: string
                      createdBy:
                        type: string
                      name:
                        type: string
                      description:
                        type: string
                      prompt:
                        type: string
                      promptDoc: {}
                      triggers:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - schedule
                                - event
                                - manual
                                - api
                                - webhook
                                - button
                                - connector
                            mode:
                              type: string
                              enum:
                                - recurring
                                - once
                            cron:
                              type: string
                            timezone:
                              type: string
                            runAt:
                              type: number
                            event:
                              type: string
                              enum:
                                - row.created
                                - row.updated
                                - row.deleted
                                - cell.changed
                                - row.enteredView
                                - row.leftView
                                - clause.added
                                - clause.edited
                                - clause.deleted
                                - term.defined
                                - term.removed
                                - signature.signed
                                - document.fullySigned
                                - document.signaturesVoided
                                - document.created
                                - document.updated
                                - document.moved
                                - document.published
                                - document.duplicated
                                - document.deleted
                                - document.renamed
                                - document.newVersion
                                - document.restoreVersion
                                - workspace.memberJoined
                                - workspace.memberLeft
                                - document.collaboratorAdded
                                - document.collaboratorRemoved
                                - table.created
                                - table.deleted
                                - column.added
                                - column.deleted
                                - project.created
                            projectId:
                              type: string
                            filter:
                              type: object
                              properties:
                                tableId:
                                  type: string
                                columnId:
                                  type: string
                                documentId:
                                  type: string
                                documentIds:
                                  type: array
                                  items:
                                    type: string
                            askForData:
                              type: boolean
                            dataPrompt:
                              type: string
                              maxLength: 2000
                            provider:
                              type: string
                              enum:
                                - gmail
                                - outlook
                            query:
                              type: string
                          required:
                            - type
                      conditions:
                        type: object
                        properties:
                          kind:
                            type: string
                            enum:
                              - rowFilter
                              - fields
                              - value
                          group:
                            type: object
                            additionalProperties: {}
                          conjunction:
                            type: string
                            enum:
                              - and
                              - or
                          predicates:
                            type: array
                            items:
                              type: object
                              additionalProperties: {}
                        required:
                          - kind
                      actions:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                              minLength: 1
                            condition:
                              type: object
                              properties:
                                kind:
                                  type: string
                                  enum:
                                    - rowFilter
                                    - fields
                                    - value
                                group:
                                  type: object
                                  additionalProperties: {}
                                conjunction:
                                  type: string
                                  enum:
                                    - and
                                    - or
                                predicates:
                                  type: array
                                  items:
                                    type: object
                                    additionalProperties: {}
                              required:
                                - kind
                            continueOnError:
                              type: boolean
                            spec:
                              type: object
                              properties:
                                kind:
                                  type: string
                                  minLength: 1
                              required:
                                - kind
                              additionalProperties: {}
                          required:
                            - id
                            - spec
                      references:
                        type: array
                        items:
                          type: object
                          additionalProperties: {}
                      onMissingReference:
                        type: string
                        enum:
                          - fail
                          - skip
                      behavior:
                        type: object
                        properties:
                          maxDurationMs:
                            type: integer
                            exclusiveMinimum: 0
                          operationBudget:
                            type: integer
                            minimum: 0
                          maxAffectedRows:
                            type: integer
                            minimum: 0
                          allowDocumentWrites:
                            type: boolean
                          externalWriteBudget:
                            type: integer
                            minimum: 0
                      notify:
                        type: object
                        properties:
                          inApp:
                            type: boolean
                          email:
                            type: boolean
                        required:
                          - inApp
                          - email
                      enabled:
                        type: boolean
                      runFromButton:
                        type: boolean
                      createdAt:
                        type: number
                      updatedAt:
                        type: number
                      lastRunAt:
                        type: number
                      nextRunAt:
                        type: number
                      consecutiveFailures:
                        type: number
                    required:
                      - _id
                      - publicId
                      - projectId
                      - scope
                      - workspaceId
                      - ownerId
                      - createdBy
                      - name
                      - triggers
                      - actions
                      - references
                      - onMissingReference
                      - behavior
                      - notify
                      - enabled
                      - createdAt
                      - updatedAt
                      - consecutiveFailures
                required:
                  - data
        '400':
          description: 400 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: |-
                      Error class name (e.g.

                      ValidationError, NotFound)
                  message:
                    type: string
                    description: Human-readable error message
                  details:
                    type: array
                    items: {}
                required:
                  - error
                  - message
        '403':
          description: 403 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: |-
                      Error class name (e.g.

                      ValidationError, NotFound)
                  message:
                    type: string
                    description: Human-readable error message
                  details:
                    type: array
                    items: {}
                required:
                  - error
                  - message
        '404':
          description: 404 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: |-
                      Error class name (e.g.

                      ValidationError, NotFound)
                  message:
                    type: string
                    description: Human-readable error message
                  details:
                    type: array
                    items: {}
                required:
                  - error
                  - message
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: HERO personal access token

````