Amazon Simple Systems Manager (SSM)

2019/11/25 - Amazon Simple Systems Manager (SSM) - 8 updated api methods

Changes  AWS Systems Manager Documents now supports more Document Types: ApplicationConfiguration, ApplicationConfigurationSchema and DeploymentStrategy. This release also extends Document Permissions capabilities and introduces a new Force flag for DeleteDocument API.

CreateDocument (updated) Link ¶
Changes (request, response)
Request
{'DocumentType': ['ApplicationConfigurationSchema',
                  'DeploymentStrategy',
                  'ApplicationConfiguration'],
 'Requires': [{'Name': 'string', 'Version': 'string'}]}
Response
{'DocumentDescription': {'DocumentType': ['ApplicationConfigurationSchema',
                                          'DeploymentStrategy',
                                          'ApplicationConfiguration'],
                         'Requires': [{'Name': 'string', 'Version': 'string'}]}}

Creates a Systems Manager document.

After you create a document, you can use CreateAssociation to associate it with one or more running instances.

See also: AWS API Documentation

Request Syntax

client.create_document(
    Content='string',
    Requires=[
        {
            'Name': 'string',
            'Version': 'string'
        },
    ],
    Attachments=[
        {
            'Key': 'SourceUrl'|'S3FileUrl',
            'Values': [
                'string',
            ],
            'Name': 'string'
        },
    ],
    Name='string',
    VersionName='string',
    DocumentType='Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy',
    DocumentFormat='YAML'|'JSON',
    TargetType='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type Content

string

param Content

[REQUIRED]

A valid JSON or YAML string.

type Requires

list

param Requires

A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

  • (dict) --

    An SSM document required by the current document.

    • Name (string) -- [REQUIRED]

      The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

    • Version (string) --

      The document version required by the current document.

type Attachments

list

param Attachments

A list of key and value pairs that describe attachments to a version of a document.

  • (dict) --

    Identifying information about a document attachment, including the file name and a key-value pair that identifies the location of an attachment to a document.

    • Key (string) --

      The key of a key-value pair that identifies the location of an attachment to a document.

    • Values (list) --

      The value of a key-value pair that identifies the location of an attachment to a document. The format is the URL of the location of a document attachment, such as the URL of an Amazon S3 bucket.

      • (string) --

    • Name (string) --

      The name of the document attachment file.

type Name

string

param Name

[REQUIRED]

A name for the Systems Manager document.

Warning

Do not use the following to begin the names of documents you create. They are reserved by AWS for use as document prefixes:

  • aws

  • amazon

  • amzn

type VersionName

string

param VersionName

An optional field specifying the version of the artifact you are creating with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

type DocumentType

string

param DocumentType

The type of document to create. Valid document types include: Command , Policy , Automation , Session , and Package .

type DocumentFormat

string

param DocumentFormat

Specify the document format for the request. The document format can be either JSON or YAML. JSON is the default format.

type TargetType

string

param TargetType

Specify a target type to define the kinds of resources the document can run on. For example, to run a document on EC2 instances, specify the following value: /AWS::EC2::Instance. If you specify a value of '/' the document can run on all types of resources. If you don't specify a value, the document can't run on any resources. For a list of valid resource types, see AWS Resource Types Reference in the AWS CloudFormation User Guide .

type Tags

list

param Tags

Optional metadata that you assign to a resource. Tags enable you to categorize a resource in different ways, such as by purpose, owner, or environment. For example, you might want to tag an SSM document to identify the types of targets or the environment where it will run. In this case, you could specify the following key name/value pairs:

  • Key=OS,Value=Windows

  • Key=Environment,Value=Production

Note

To add tags to an existing SSM document, use the AddTagsToResource action.

  • (dict) --

    Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

    • Key (string) -- [REQUIRED]

      The name of the tag.

    • Value (string) -- [REQUIRED]

      The value of the tag.

rtype

dict

returns

Response Syntax

{
    'DocumentDescription': {
        'Sha1': 'string',
        'Hash': 'string',
        'HashType': 'Sha256'|'Sha1',
        'Name': 'string',
        'VersionName': 'string',
        'Owner': 'string',
        'CreatedDate': datetime(2015, 1, 1),
        'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
        'StatusInformation': 'string',
        'DocumentVersion': 'string',
        'Description': 'string',
        'Parameters': [
            {
                'Name': 'string',
                'Type': 'String'|'StringList',
                'Description': 'string',
                'DefaultValue': 'string'
            },
        ],
        'PlatformTypes': [
            'Windows'|'Linux',
        ],
        'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy',
        'SchemaVersion': 'string',
        'LatestVersion': 'string',
        'DefaultVersion': 'string',
        'DocumentFormat': 'YAML'|'JSON',
        'TargetType': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'AttachmentsInformation': [
            {
                'Name': 'string'
            },
        ],
        'Requires': [
            {
                'Name': 'string',
                'Version': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • DocumentDescription (dict) --

      Information about the Systems Manager document.

      • Sha1 (string) --

        The SHA1 hash of the document, which you can use for verification.

      • Hash (string) --

        The Sha256 or Sha1 hash created by the system when the document was created.

        Note

        Sha1 hashes have been deprecated.

      • HashType (string) --

        The hash type of the document. Valid values include Sha256 or Sha1 .

        Note

        Sha1 hashes have been deprecated.

      • Name (string) --

        The name of the Systems Manager document.

      • VersionName (string) --

        The version of the artifact associated with the document.

      • Owner (string) --

        The AWS user account that created the document.

      • CreatedDate (datetime) --

        The date when the document was created.

      • Status (string) --

        The status of the Systems Manager document.

      • StatusInformation (string) --

        A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

      • DocumentVersion (string) --

        The document version.

      • Description (string) --

        A description of the document.

      • Parameters (list) --

        A description of the parameters for a document.

        • (dict) --

          Parameters specified in a System Manager document that run on the server when the command is run.

          • Name (string) --

            The name of the parameter.

          • Type (string) --

            The type of parameter. The type can be either String or StringList.

          • Description (string) --

            A description of what the parameter does, how to use it, the default value, and whether or not the parameter is optional.

          • DefaultValue (string) --

            If specified, the default values for the parameters. Parameters without a default value are required. Parameters with a default value are optional.

      • PlatformTypes (list) --

        The list of OS platforms compatible with this Systems Manager document.

        • (string) --

      • DocumentType (string) --

        The type of document.

      • SchemaVersion (string) --

        The schema version.

      • LatestVersion (string) --

        The latest version of the document.

      • DefaultVersion (string) --

        The default version.

      • DocumentFormat (string) --

        The document format, either JSON or YAML.

      • TargetType (string) --

        The target type which defines the kinds of resources the document can run on. For example, /AWS::EC2::Instance. For a list of valid resource types, see AWS Resource Types Reference in the AWS CloudFormation User Guide .

      • Tags (list) --

        The tags, or metadata, that have been applied to the document.

        • (dict) --

          Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

          • Key (string) --

            The name of the tag.

          • Value (string) --

            The value of the tag.

      • AttachmentsInformation (list) --

        Details about the document attachments, including names, locations, sizes, etc.

        • (dict) --

          An attribute of an attachment, such as the attachment name.

          • Name (string) --

            The name of the attachment.

      • Requires (list) --

        A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

        • (dict) --

          An SSM document required by the current document.

          • Name (string) --

            The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

          • Version (string) --

            The document version required by the current document.

DeleteDocument (updated) Link ¶
Changes (request)
{'Force': 'boolean'}

Deletes the Systems Manager document and all instance associations to the document.

Before you delete the document, we recommend that you use DeleteAssociation to disassociate all instances that are associated with the document.

See also: AWS API Documentation

Request Syntax

client.delete_document(
    Name='string',
    DocumentVersion='string',
    VersionName='string',
    Force=True|False
)
type Name

string

param Name

[REQUIRED]

The name of the document.

type DocumentVersion

string

param DocumentVersion

The version of the document that you want to delete. If not provided, all versions of the document are deleted.

type VersionName

string

param VersionName

The version name of the document that you want to delete. If not provided, all versions of the document are deleted.

type Force

boolean

param Force

Some SSM document types require that you specify a Force flag before you can delete the document. For example, you must specify a Force flag to delete a document of type ApplicationConfigurationSchema . You can restrict access to the Force flag in an AWS Identity and Access Management (IAM) policy.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

DescribeDocument (updated) Link ¶
Changes (response)
{'Document': {'DocumentType': ['ApplicationConfigurationSchema',
                               'DeploymentStrategy',
                               'ApplicationConfiguration'],
              'Requires': [{'Name': 'string', 'Version': 'string'}]}}

Describes the specified Systems Manager document.

See also: AWS API Documentation

Request Syntax

client.describe_document(
    Name='string',
    DocumentVersion='string',
    VersionName='string'
)
type Name

string

param Name

[REQUIRED]

The name of the Systems Manager document.

type DocumentVersion

string

param DocumentVersion

The document version for which you want information. Can be a specific version or the default version.

type VersionName

string

param VersionName

An optional field specifying the version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

rtype

dict

returns

Response Syntax

{
    'Document': {
        'Sha1': 'string',
        'Hash': 'string',
        'HashType': 'Sha256'|'Sha1',
        'Name': 'string',
        'VersionName': 'string',
        'Owner': 'string',
        'CreatedDate': datetime(2015, 1, 1),
        'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
        'StatusInformation': 'string',
        'DocumentVersion': 'string',
        'Description': 'string',
        'Parameters': [
            {
                'Name': 'string',
                'Type': 'String'|'StringList',
                'Description': 'string',
                'DefaultValue': 'string'
            },
        ],
        'PlatformTypes': [
            'Windows'|'Linux',
        ],
        'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy',
        'SchemaVersion': 'string',
        'LatestVersion': 'string',
        'DefaultVersion': 'string',
        'DocumentFormat': 'YAML'|'JSON',
        'TargetType': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'AttachmentsInformation': [
            {
                'Name': 'string'
            },
        ],
        'Requires': [
            {
                'Name': 'string',
                'Version': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • Document (dict) --

      Information about the Systems Manager document.

      • Sha1 (string) --

        The SHA1 hash of the document, which you can use for verification.

      • Hash (string) --

        The Sha256 or Sha1 hash created by the system when the document was created.

        Note

        Sha1 hashes have been deprecated.

      • HashType (string) --

        The hash type of the document. Valid values include Sha256 or Sha1 .

        Note

        Sha1 hashes have been deprecated.

      • Name (string) --

        The name of the Systems Manager document.

      • VersionName (string) --

        The version of the artifact associated with the document.

      • Owner (string) --

        The AWS user account that created the document.

      • CreatedDate (datetime) --

        The date when the document was created.

      • Status (string) --

        The status of the Systems Manager document.

      • StatusInformation (string) --

        A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

      • DocumentVersion (string) --

        The document version.

      • Description (string) --

        A description of the document.

      • Parameters (list) --

        A description of the parameters for a document.

        • (dict) --

          Parameters specified in a System Manager document that run on the server when the command is run.

          • Name (string) --

            The name of the parameter.

          • Type (string) --

            The type of parameter. The type can be either String or StringList.

          • Description (string) --

            A description of what the parameter does, how to use it, the default value, and whether or not the parameter is optional.

          • DefaultValue (string) --

            If specified, the default values for the parameters. Parameters without a default value are required. Parameters with a default value are optional.

      • PlatformTypes (list) --

        The list of OS platforms compatible with this Systems Manager document.

        • (string) --

      • DocumentType (string) --

        The type of document.

      • SchemaVersion (string) --

        The schema version.

      • LatestVersion (string) --

        The latest version of the document.

      • DefaultVersion (string) --

        The default version.

      • DocumentFormat (string) --

        The document format, either JSON or YAML.

      • TargetType (string) --

        The target type which defines the kinds of resources the document can run on. For example, /AWS::EC2::Instance. For a list of valid resource types, see AWS Resource Types Reference in the AWS CloudFormation User Guide .

      • Tags (list) --

        The tags, or metadata, that have been applied to the document.

        • (dict) --

          Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

          • Key (string) --

            The name of the tag.

          • Value (string) --

            The value of the tag.

      • AttachmentsInformation (list) --

        Details about the document attachments, including names, locations, sizes, etc.

        • (dict) --

          An attribute of an attachment, such as the attachment name.

          • Name (string) --

            The name of the attachment.

      • Requires (list) --

        A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

        • (dict) --

          An SSM document required by the current document.

          • Name (string) --

            The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

          • Version (string) --

            The document version required by the current document.

DescribeDocumentPermission (updated) Link ¶
Changes (response)
{'AccountSharingInfoList': [{'AccountId': 'string',
                             'SharedDocumentVersion': 'string'}]}

Describes the permissions for a Systems Manager document. If you created the document, you are the owner. If a document is shared, it can either be shared privately (by specifying a user's AWS account ID) or publicly (All ).

See also: AWS API Documentation

Request Syntax

client.describe_document_permission(
    Name='string',
    PermissionType='Share'
)
type Name

string

param Name

[REQUIRED]

The name of the document for which you are the owner.

type PermissionType

string

param PermissionType

[REQUIRED]

The permission type for the document. The permission type can be Share .

rtype

dict

returns

Response Syntax

{
    'AccountIds': [
        'string',
    ],
    'AccountSharingInfoList': [
        {
            'AccountId': 'string',
            'SharedDocumentVersion': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • AccountIds (list) --

      The account IDs that have permission to use this document. The ID can be either an AWS account or All .

      • (string) --

    • AccountSharingInfoList (list) --

      A list of of AWS accounts where the current document is shared and the version shared with each account.

      • (dict) --

        Information includes the AWS account ID where the current document is shared and the version shared with that account.

        • AccountId (string) --

          The AWS account ID where the current document is shared.

        • SharedDocumentVersion (string) --

          The version of the current document shared with the account.

GetDocument (updated) Link ¶
Changes (response)
{'DocumentType': ['ApplicationConfigurationSchema',
                  'DeploymentStrategy',
                  'ApplicationConfiguration'],
 'Requires': [{'Name': 'string', 'Version': 'string'}]}

Gets the contents of the specified Systems Manager document.

See also: AWS API Documentation

Request Syntax

client.get_document(
    Name='string',
    VersionName='string',
    DocumentVersion='string',
    DocumentFormat='YAML'|'JSON'
)
type Name

string

param Name

[REQUIRED]

The name of the Systems Manager document.

type VersionName

string

param VersionName

An optional field specifying the version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

type DocumentVersion

string

param DocumentVersion

The document version for which you want information.

type DocumentFormat

string

param DocumentFormat

Returns the document in the specified format. The document format can be either JSON or YAML. JSON is the default format.

rtype

dict

returns

Response Syntax

{
    'Name': 'string',
    'VersionName': 'string',
    'DocumentVersion': 'string',
    'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
    'StatusInformation': 'string',
    'Content': 'string',
    'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy',
    'DocumentFormat': 'YAML'|'JSON',
    'Requires': [
        {
            'Name': 'string',
            'Version': 'string'
        },
    ],
    'AttachmentsContent': [
        {
            'Name': 'string',
            'Size': 123,
            'Hash': 'string',
            'HashType': 'Sha256',
            'Url': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the Systems Manager document.

    • VersionName (string) --

      The version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

    • DocumentVersion (string) --

      The document version.

    • Status (string) --

      The status of the Systems Manager document, such as Creating , Active , Updating , Failed , and Deleting .

    • StatusInformation (string) --

      A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

    • Content (string) --

      The contents of the Systems Manager document.

    • DocumentType (string) --

      The document type.

    • DocumentFormat (string) --

      The document format, either JSON or YAML.

    • Requires (list) --

      A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

      • (dict) --

        An SSM document required by the current document.

        • Name (string) --

          The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

        • Version (string) --

          The document version required by the current document.

    • AttachmentsContent (list) --

      A description of the document attachments, including names, locations, sizes, etc.

      • (dict) --

        A structure that includes attributes that describe a document attachment.

        • Name (string) --

          The name of an attachment.

        • Size (integer) --

          The size of an attachment in bytes.

        • Hash (string) --

          The cryptographic hash value of the document content.

        • HashType (string) --

          The hash algorithm used to calculate the hash value.

        • Url (string) --

          The URL location of the attachment content.

ListDocuments (updated) Link ¶
Changes (response)
{'DocumentIdentifiers': {'DocumentType': ['ApplicationConfigurationSchema',
                                          'DeploymentStrategy',
                                          'ApplicationConfiguration'],
                         'Requires': [{'Name': 'string', 'Version': 'string'}]}}

Describes one or more of your Systems Manager documents.

See also: AWS API Documentation

Request Syntax

client.list_documents(
    DocumentFilterList=[
        {
            'key': 'Name'|'Owner'|'PlatformTypes'|'DocumentType',
            'value': 'string'
        },
    ],
    Filters=[
        {
            'Key': 'string',
            'Values': [
                'string',
            ]
        },
    ],
    MaxResults=123,
    NextToken='string'
)
type DocumentFilterList

list

param DocumentFilterList

One or more filters. Use a filter to return a more specific list of results.

  • (dict) --

    Describes a filter.

    • key (string) -- [REQUIRED]

      The name of the filter.

    • value (string) -- [REQUIRED]

      The value of the filter.

type Filters

list

param Filters

One or more filters. Use a filter to return a more specific list of results.

  • (dict) --

    One or more filters. Use a filter to return a more specific list of documents.

    For keys, you can specify one or more tags that have been applied to a document.

    Other valid values include Owner, Name, PlatformTypes, and DocumentType.

    Note that only one Owner can be specified in a request. For example: Key=Owner,Values=Self .

    If you use Name as a key, you can use a name prefix to return a list of documents. For example, in the AWS CLI, to return a list of all documents that begin with Te , run the following command:

    aws ssm list-documents --filters Key=Name,Values=Te

    If you specify more than two keys, only documents that are identified by all the tags are returned in the results. If you specify more than two values for a key, documents that are identified by any of the values are returned in the results.

    To specify a custom key and value pair, use the format Key=tag:[tagName],Values=[valueName] .

    For example, if you created a Key called region and are using the AWS CLI to call the list-documents command:

    aws ssm list-documents --filters Key=tag:region,Values=east,west Key=Owner,Values=Self

    • Key (string) --

      The name of the filter key.

    • Values (list) --

      The value for the filter key.

      • (string) --

type MaxResults

integer

param MaxResults

The maximum number of items to return for this call. The call also returns a token that you can specify in a subsequent call to get the next set of results.

type NextToken

string

param NextToken

The token for the next set of items to return. (You received this token from a previous call.)

rtype

dict

returns

Response Syntax

{
    'DocumentIdentifiers': [
        {
            'Name': 'string',
            'Owner': 'string',
            'VersionName': 'string',
            'PlatformTypes': [
                'Windows'|'Linux',
            ],
            'DocumentVersion': 'string',
            'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy',
            'SchemaVersion': 'string',
            'DocumentFormat': 'YAML'|'JSON',
            'TargetType': 'string',
            'Tags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ],
            'Requires': [
                {
                    'Name': 'string',
                    'Version': 'string'
                },
            ]
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • DocumentIdentifiers (list) --

      The names of the Systems Manager documents.

      • (dict) --

        Describes the name of a Systems Manager document.

        • Name (string) --

          The name of the Systems Manager document.

        • Owner (string) --

          The AWS user account that created the document.

        • VersionName (string) --

          An optional field specifying the version of the artifact associated with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

        • PlatformTypes (list) --

          The operating system platform.

          • (string) --

        • DocumentVersion (string) --

          The document version.

        • DocumentType (string) --

          The document type.

        • SchemaVersion (string) --

          The schema version.

        • DocumentFormat (string) --

          The document format, either JSON or YAML.

        • TargetType (string) --

          The target type which defines the kinds of resources the document can run on. For example, /AWS::EC2::Instance. For a list of valid resource types, see AWS Resource Types Reference in the AWS CloudFormation User Guide .

        • Tags (list) --

          The tags, or metadata, that have been applied to the document.

          • (dict) --

            Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

            • Key (string) --

              The name of the tag.

            • Value (string) --

              The value of the tag.

        • Requires (list) --

          A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

          • (dict) --

            An SSM document required by the current document.

            • Name (string) --

              The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

            • Version (string) --

              The document version required by the current document.

    • NextToken (string) --

      The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

ModifyDocumentPermission (updated) Link ¶
Changes (request)
{'SharedDocumentVersion': 'string'}

Shares a Systems Manager document publicly or privately. If you share a document privately, you must specify the AWS user account IDs for those people who can use the document. If you share a document publicly, you must specify All as the account ID.

See also: AWS API Documentation

Request Syntax

client.modify_document_permission(
    Name='string',
    PermissionType='Share',
    AccountIdsToAdd=[
        'string',
    ],
    AccountIdsToRemove=[
        'string',
    ],
    SharedDocumentVersion='string'
)
type Name

string

param Name

[REQUIRED]

The name of the document that you want to share.

type PermissionType

string

param PermissionType

[REQUIRED]

The permission type for the document. The permission type can be Share .

type AccountIdsToAdd

list

param AccountIdsToAdd

The AWS user accounts that should have access to the document. The account IDs can either be a group of account IDs or All .

  • (string) --

type AccountIdsToRemove

list

param AccountIdsToRemove

The AWS user accounts that should no longer have access to the document. The AWS user account can either be a group of account IDs or All . This action has a higher priority than AccountIdsToAdd . If you specify an account ID to add and the same ID to remove, the system removes access to the document.

  • (string) --

type SharedDocumentVersion

string

param SharedDocumentVersion

(Optional) The version of the document to share. If it's not specified, the system choose the Default version to share.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

UpdateDocument (updated) Link ¶
Changes (response)
{'DocumentDescription': {'DocumentType': ['ApplicationConfigurationSchema',
                                          'DeploymentStrategy',
                                          'ApplicationConfiguration'],
                         'Requires': [{'Name': 'string', 'Version': 'string'}]}}

Updates one or more values for an SSM document.

See also: AWS API Documentation

Request Syntax

client.update_document(
    Content='string',
    Attachments=[
        {
            'Key': 'SourceUrl'|'S3FileUrl',
            'Values': [
                'string',
            ],
            'Name': 'string'
        },
    ],
    Name='string',
    VersionName='string',
    DocumentVersion='string',
    DocumentFormat='YAML'|'JSON',
    TargetType='string'
)
type Content

string

param Content

[REQUIRED]

A valid JSON or YAML string.

type Attachments

list

param Attachments

A list of key and value pairs that describe attachments to a version of a document.

  • (dict) --

    Identifying information about a document attachment, including the file name and a key-value pair that identifies the location of an attachment to a document.

    • Key (string) --

      The key of a key-value pair that identifies the location of an attachment to a document.

    • Values (list) --

      The value of a key-value pair that identifies the location of an attachment to a document. The format is the URL of the location of a document attachment, such as the URL of an Amazon S3 bucket.

      • (string) --

    • Name (string) --

      The name of the document attachment file.

type Name

string

param Name

[REQUIRED]

The name of the document that you want to update.

type VersionName

string

param VersionName

An optional field specifying the version of the artifact you are updating with the document. For example, "Release 12, Update 6". This value is unique across all versions of a document, and cannot be changed.

type DocumentVersion

string

param DocumentVersion

(Required) The version of the document that you want to update.

type DocumentFormat

string

param DocumentFormat

Specify the document format for the new document version. Systems Manager supports JSON and YAML documents. JSON is the default format.

type TargetType

string

param TargetType

Specify a new target type for the document.

rtype

dict

returns

Response Syntax

{
    'DocumentDescription': {
        'Sha1': 'string',
        'Hash': 'string',
        'HashType': 'Sha256'|'Sha1',
        'Name': 'string',
        'VersionName': 'string',
        'Owner': 'string',
        'CreatedDate': datetime(2015, 1, 1),
        'Status': 'Creating'|'Active'|'Updating'|'Deleting'|'Failed',
        'StatusInformation': 'string',
        'DocumentVersion': 'string',
        'Description': 'string',
        'Parameters': [
            {
                'Name': 'string',
                'Type': 'String'|'StringList',
                'Description': 'string',
                'DefaultValue': 'string'
            },
        ],
        'PlatformTypes': [
            'Windows'|'Linux',
        ],
        'DocumentType': 'Command'|'Policy'|'Automation'|'Session'|'Package'|'ApplicationConfiguration'|'ApplicationConfigurationSchema'|'DeploymentStrategy',
        'SchemaVersion': 'string',
        'LatestVersion': 'string',
        'DefaultVersion': 'string',
        'DocumentFormat': 'YAML'|'JSON',
        'TargetType': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        'AttachmentsInformation': [
            {
                'Name': 'string'
            },
        ],
        'Requires': [
            {
                'Name': 'string',
                'Version': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • DocumentDescription (dict) --

      A description of the document that was updated.

      • Sha1 (string) --

        The SHA1 hash of the document, which you can use for verification.

      • Hash (string) --

        The Sha256 or Sha1 hash created by the system when the document was created.

        Note

        Sha1 hashes have been deprecated.

      • HashType (string) --

        The hash type of the document. Valid values include Sha256 or Sha1 .

        Note

        Sha1 hashes have been deprecated.

      • Name (string) --

        The name of the Systems Manager document.

      • VersionName (string) --

        The version of the artifact associated with the document.

      • Owner (string) --

        The AWS user account that created the document.

      • CreatedDate (datetime) --

        The date when the document was created.

      • Status (string) --

        The status of the Systems Manager document.

      • StatusInformation (string) --

        A message returned by AWS Systems Manager that explains the Status value. For example, a Failed status might be explained by the StatusInformation message, "The specified S3 bucket does not exist. Verify that the URL of the S3 bucket is correct."

      • DocumentVersion (string) --

        The document version.

      • Description (string) --

        A description of the document.

      • Parameters (list) --

        A description of the parameters for a document.

        • (dict) --

          Parameters specified in a System Manager document that run on the server when the command is run.

          • Name (string) --

            The name of the parameter.

          • Type (string) --

            The type of parameter. The type can be either String or StringList.

          • Description (string) --

            A description of what the parameter does, how to use it, the default value, and whether or not the parameter is optional.

          • DefaultValue (string) --

            If specified, the default values for the parameters. Parameters without a default value are required. Parameters with a default value are optional.

      • PlatformTypes (list) --

        The list of OS platforms compatible with this Systems Manager document.

        • (string) --

      • DocumentType (string) --

        The type of document.

      • SchemaVersion (string) --

        The schema version.

      • LatestVersion (string) --

        The latest version of the document.

      • DefaultVersion (string) --

        The default version.

      • DocumentFormat (string) --

        The document format, either JSON or YAML.

      • TargetType (string) --

        The target type which defines the kinds of resources the document can run on. For example, /AWS::EC2::Instance. For a list of valid resource types, see AWS Resource Types Reference in the AWS CloudFormation User Guide .

      • Tags (list) --

        The tags, or metadata, that have been applied to the document.

        • (dict) --

          Metadata that you assign to your AWS resources. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment. In Systems Manager, you can apply tags to documents, managed instances, maintenance windows, Parameter Store parameters, and patch baselines.

          • Key (string) --

            The name of the tag.

          • Value (string) --

            The value of the tag.

      • AttachmentsInformation (list) --

        Details about the document attachments, including names, locations, sizes, etc.

        • (dict) --

          An attribute of an attachment, such as the attachment name.

          • Name (string) --

            The name of the attachment.

      • Requires (list) --

        A list of SSM documents required by a document. For example, an ApplicationConfiguration document requires an ApplicationConfigurationSchema document.

        • (dict) --

          An SSM document required by the current document.

          • Name (string) --

            The name of the required SSM document. The name can be an Amazon Resource Name (ARN).

          • Version (string) --

            The document version required by the current document.