Amazon Step Functions #X Amz Target=AWSStepFunctions.UpdateStateMachine API

The #X Amz Target=AWSStepFunctions.UpdateStateMachine API from Amazon Step Functions — 1 operation(s) for #x amz target=awsstepfunctions.updatestatemachine.

OpenAPI Specification

amazon-step-functions-x-amz-target-awsstepfunctions-updatestatemachine-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: 'Amazon Step Functions Executions #X Amz Target=AWSStepFunctions.UpdateStateMachine API'
  description: Amazon Step Functions is a serverless workflow orchestration service that lets you coordinate distributed applications and microservices using visual workflows. This API enables you to create and manage state machines, start and monitor executions, and retrieve execution history.
  version: '2016-11-23'
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  termsOfService: https://aws.amazon.com/service-terms/
servers:
- url: https://states.{region}.amazonaws.com
  description: Amazon Step Functions Regional Endpoint
  variables:
    region:
      default: us-east-1
      description: AWS Region
security:
- sigv4Auth: []
tags:
- name: '#X Amz Target=AWSStepFunctions.UpdateStateMachine'
paths:
  /#X-Amz-Target=AWSStepFunctions.UpdateStateMachine:
    parameters:
    - $ref: '#/components/parameters/X-Amz-Content-Sha256'
    - $ref: '#/components/parameters/X-Amz-Date'
    - $ref: '#/components/parameters/X-Amz-Algorithm'
    - $ref: '#/components/parameters/X-Amz-Credential'
    - $ref: '#/components/parameters/X-Amz-Security-Token'
    - $ref: '#/components/parameters/X-Amz-Signature'
    - $ref: '#/components/parameters/X-Amz-SignedHeaders'
    post:
      operationId: UpdateStateMachine
      description: <p>Updates an existing state machine by modifying its <code>definition</code>, <code>roleArn</code>, or <code>loggingConfiguration</code>. Running executions will continue to use the previous <code>definition</code> and <code>roleArn</code>. You must include at least one of <code>definition</code> or <code>roleArn</code> or you will receive a <code>MissingRequiredParameter</code> error.</p> <p>A qualified state machine ARN refers to a <i>Distributed Map state</i> defined within a state machine. For example, the qualified state machine ARN <code>arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel</code> refers to a <i>Distributed Map state</i> with a label <code>mapStateLabel</code> in the state machine named <code>stateMachineName</code>.</p> <p>A qualified state machine ARN can either refer to a <i>Distributed Map state</i> defined within a state machine, a version ARN, or an alias ARN.</p> <p>The following are some examples of qualified and unqualified state machine ARNs:</p> <ul> <li> <p>The following qualified state machine ARN refers to a <i>Distributed Map state</i> with a label <code>mapStateLabel</code> in a state machine named <code>myStateMachine</code>.</p> <p> <code>arn:partition:states:region:account-id:stateMachine:myStateMachine/mapStateLabel</code> </p> <note> <p>If you provide a qualified state machine ARN that refers to a <i>Distributed Map state</i>, the request fails with <code>ValidationException</code>.</p> </note> </li> <li> <p>The following qualified state machine ARN refers to an alias named <code>PROD</code>.</p> <p> <code>arn:&lt;partition&gt;:states:&lt;region&gt;:&lt;account-id&gt;:stateMachine:&lt;myStateMachine:PROD&gt;</code> </p> <note> <p>If you provide a qualified state machine ARN that refers to a version ARN or an alias ARN, the request starts execution for that version or alias.</p> </note> </li> <li> <p>The following unqualified state machine ARN refers to a state machine named <code>myStateMachine</code>.</p> <p> <code>arn:&lt;partition&gt;:states:&lt;region&gt;:&lt;account-id&gt;:stateMachine:&lt;myStateMachine&gt;</code> </p> </li> </ul> <p>After you update your state machine, you can set the <code>publish</code> parameter to <code>true</code> in the same action to publish a new <a href="https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html">version</a>. This way, you can opt-in to strict versioning of your state machine.</p> <note> <p>Step Functions assigns monotonically increasing integers for state machine versions, starting at version number 1.</p> </note> <note> <p>All <code>StartExecution</code> calls within a few seconds use the updated <code>definition</code> and <code>roleArn</code>. Executions started immediately after you call <code>UpdateStateMachine</code> may use the previous state machine <code>definition</code> and <code>roleArn</code>. </p> </note>
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateStateMachineOutput'
              examples:
                UpdateStateMachine200Example:
                  summary: Default UpdateStateMachine 200
                  x-microcks-default: true
                  value:
                    updateDate: example-value
                    revisionId: example-value
                    stateMachineVersionArn: arn:aws:service:us-east-1:123456789012:resource/example
        '480':
          description: InvalidArn
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidArn'
              examples:
                UpdateStateMachine480Example:
                  summary: Default UpdateStateMachine 480
                  x-microcks-default: true
                  value: example-value
        '481':
          description: InvalidDefinition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidDefinition'
              examples:
                UpdateStateMachine481Example:
                  summary: Default UpdateStateMachine 481
                  x-microcks-default: true
                  value: example-value
        '482':
          description: InvalidLoggingConfiguration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidLoggingConfiguration'
              examples:
                UpdateStateMachine482Example:
                  summary: Default UpdateStateMachine 482
                  x-microcks-default: true
                  value: example-value
        '483':
          description: InvalidTracingConfiguration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidTracingConfiguration'
              examples:
                UpdateStateMachine483Example:
                  summary: Default UpdateStateMachine 483
                  x-microcks-default: true
                  value: example-value
        '484':
          description: MissingRequiredParameter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MissingRequiredParameter'
              examples:
                UpdateStateMachine484Example:
                  summary: Default UpdateStateMachine 484
                  x-microcks-default: true
                  value: example-value
        '485':
          description: StateMachineDeleting
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StateMachineDeleting'
              examples:
                UpdateStateMachine485Example:
                  summary: Default UpdateStateMachine 485
                  x-microcks-default: true
                  value: example-value
        '486':
          description: StateMachineDoesNotExist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StateMachineDoesNotExist'
              examples:
                UpdateStateMachine486Example:
                  summary: Default UpdateStateMachine 486
                  x-microcks-default: true
                  value: example-value
        '487':
          description: ServiceQuotaExceededException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceQuotaExceededException'
              examples:
                UpdateStateMachine487Example:
                  summary: Default UpdateStateMachine 487
                  x-microcks-default: true
                  value: example-value
        '488':
          description: ConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictException'
              examples:
                UpdateStateMachine488Example:
                  summary: Default UpdateStateMachine 488
                  x-microcks-default: true
                  value: example-value
        '489':
          description: ValidationException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationException'
              examples:
                UpdateStateMachine489Example:
                  summary: Default UpdateStateMachine 489
                  x-microcks-default: true
                  value: example-value
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateStateMachineInput'
            examples:
              UpdateStateMachineRequestExample:
                summary: Default UpdateStateMachine request
                x-microcks-default: true
                value:
                  stateMachineArn: arn:aws:service:us-east-1:123456789012:resource/example
                  definition: example-value
                  roleArn: arn:aws:service:us-east-1:123456789012:resource/example
                  loggingConfiguration: example-value
                  tracingConfiguration: example-value
                  publish: example-value
                  versionDescription: example-value
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AWSStepFunctions.UpdateStateMachine
      summary: Amazon Update State Machine
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      tags:
      - '#X Amz Target=AWSStepFunctions.UpdateStateMachine'
components:
  schemas:
    LoggingConfiguration:
      type: object
      properties:
        level:
          allOf:
          - $ref: '#/components/schemas/LogLevel'
          - description: Defines which category of execution history events are logged.
        includeExecutionData:
          allOf:
          - $ref: '#/components/schemas/IncludeExecutionData'
          - description: Determines whether execution data is included in your log. When set to <code>false</code>, data is excluded.
        destinations:
          allOf:
          - $ref: '#/components/schemas/LogDestinationList'
          - description: An array of objects that describes where your execution history events will be logged. Limited to size 1. Required, if your log level is not set to <code>OFF</code>.
      description: The <code>LoggingConfiguration</code> data type is used to set CloudWatch Logs options.
    LogDestinationList:
      type: array
      items:
        $ref: '#/components/schemas/LogDestination'
    TracingConfiguration:
      type: object
      properties:
        enabled:
          allOf:
          - $ref: '#/components/schemas/Enabled'
          - description: When set to <code>true</code>, X-Ray tracing is enabled.
      description: 'Selects whether or not the state machine''s X-Ray tracing is enabled. Default is <code>false</code> '
    RevisionId:
      type: string
    UpdateStateMachineOutput:
      type: object
      required:
      - updateDate
      properties:
        updateDate:
          allOf:
          - $ref: '#/components/schemas/Timestamp'
          - description: The date and time the state machine was updated.
        revisionId:
          allOf:
          - $ref: '#/components/schemas/RevisionId'
          - description: The revision identifier for the updated state machine.
        stateMachineVersionArn:
          allOf:
          - $ref: '#/components/schemas/Arn'
          - description: <p>The Amazon Resource Name (ARN) of the published state machine version.</p> <p>If the <code>publish</code> parameter isn't set to <code>true</code>, this field returns null.</p>
    Definition:
      type: string
      minLength: 1
      maxLength: 1048576
      format: password
    LogDestination:
      type: object
      properties:
        cloudWatchLogsLogGroup:
          allOf:
          - $ref: '#/components/schemas/CloudWatchLogsLogGroup'
          - description: An object describing a CloudWatch log group. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html">AWS::Logs::LogGroup</a> in the CloudFormation User Guide.
      description: <p/>
    CloudWatchLogsLogGroup:
      type: object
      properties:
        logGroupArn:
          allOf:
          - $ref: '#/components/schemas/Arn'
          - description: 'The ARN of the the CloudWatch log group to which you want your logs emitted to. The ARN must end with <code>:*</code> '
      description: <p/>
    UpdateStateMachineInput:
      type: object
      required:
      - stateMachineArn
      title: UpdateStateMachineInput
      properties:
        stateMachineArn:
          allOf:
          - $ref: '#/components/schemas/Arn'
          - description: The Amazon Resource Name (ARN) of the state machine.
        definition:
          allOf:
          - $ref: '#/components/schemas/Definition'
          - description: The Amazon States Language definition of the state machine. See <a href="https://docs.aws.amazon.com/step-functions/latest/dg/concepts-amazon-states-language.html">Amazon States Language</a>.
        roleArn:
          allOf:
          - $ref: '#/components/schemas/Arn'
          - description: The Amazon Resource Name (ARN) of the IAM role of the state machine.
        loggingConfiguration:
          allOf:
          - $ref: '#/components/schemas/LoggingConfiguration'
          - description: Use the <code>LoggingConfiguration</code> data type to set CloudWatch Logs options.
        tracingConfiguration:
          allOf:
          - $ref: '#/components/schemas/TracingConfiguration'
          - description: Selects whether X-Ray tracing is enabled.
        publish:
          allOf:
          - $ref: '#/components/schemas/Publish'
          - description: Specifies whether the state machine version is published. The default is <code>false</code>. To publish a version after updating the state machine, set <code>publish</code> to <code>true</code>.
        versionDescription:
          allOf:
          - $ref: '#/components/schemas/VersionDescription'
          - description: <p>An optional description of the state machine version to publish.</p> <p>You can only specify the <code>versionDescription</code> parameter if you've set <code>publish</code> to <code>true</code>.</p>
    InvalidTracingConfiguration: {}
    ValidationException: {}
    InvalidArn: {}
    Enabled:
      type: boolean
    ServiceQuotaExceededException: {}
    Publish:
      type: boolean
    LogLevel:
      type: string
      enum:
      - ALL
      - ERROR
      - FATAL
      - 'OFF'
    InvalidDefinition: {}
    IncludeExecutionData:
      type: boolean
    MissingRequiredParameter: {}
    StateMachineDeleting: {}
    VersionDescription:
      type: string
      maxLength: 256
      format: password
    ConflictException: {}
    InvalidLoggingConfiguration: {}
    StateMachineDoesNotExist: {}
    Timestamp:
      type: string
      format: date-time
    Arn:
      type: string
      minLength: 1
      maxLength: 256
  parameters:
    X-Amz-SignedHeaders:
      name: X-Amz-SignedHeaders
      in: header
      schema:
        type: string
      required: false
    X-Amz-Signature:
      name: X-Amz-Signature
      in: header
      schema:
        type: string
      required: false
    X-Amz-Content-Sha256:
      name: X-Amz-Content-Sha256
      in: header
      schema:
        type: string
      required: false
    X-Amz-Date:
      name: X-Amz-Date
      in: header
      schema:
        type: string
      required: false
    X-Amz-Security-Token:
      name: X-Amz-Security-Token
      in: header
      schema:
        type: string
      required: false
    X-Amz-Credential:
      name: X-Amz-Credential
      in: header
      schema:
        type: string
      required: false
    X-Amz-Algorithm:
      name: X-Amz-Algorithm
      in: header
      schema:
        type: string
      required: false
  securitySchemes:
    sigv4Auth:
      type: apiKey
      name: Authorization
      in: header
      description: AWS Signature Version 4 authentication
externalDocs:
  description: Amazon Step Functions API Reference
  url: https://docs.aws.amazon.com/step-functions/latest/apireference/