"documentation":"<p>In a management account, an environment account connection request is accepted. When the environment account connection request is accepted, Proton can use the associated IAM role to provision environment infrastructure resources in the associated environment account.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html\">Environment account connections</a> in the <i>Proton User guide</i>.</p>",
"documentation":"<p>Attempts to cancel a component deployment (for a component that is in the <code>IN_PROGRESS</code> deployment status).</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>Attempts to cancel an environment deployment on an <a>UpdateEnvironment</a> action, if the deployment is <code>IN_PROGRESS</code>. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-update.html\">Update an environment</a> in the <i>Proton User guide</i>.</p> <p>The following list includes potential cancellation scenarios.</p> <ul> <li> <p>If the cancellation attempt succeeds, the resulting deployment state is <code>CANCELLED</code>.</p> </li> <li> <p>If the cancellation attempt fails, the resulting deployment state is <code>FAILED</code>.</p> </li> <li> <p>If the current <a>UpdateEnvironment</a> action succeeds before the cancellation attempt starts, the resulting deployment state is <code>SUCCEEDED</code> and the cancellation attempt has no effect.</p> </li> </ul>"
"documentation":"<p>Attempts to cancel a service instance deployment on an <a>UpdateServiceInstance</a> action, if the deployment is <code>IN_PROGRESS</code>. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-svc-instance-update.html\">Update a service instance</a> in the <i>Proton User guide</i>.</p> <p>The following list includes potential cancellation scenarios.</p> <ul> <li> <p>If the cancellation attempt succeeds, the resulting deployment state is <code>CANCELLED</code>.</p> </li> <li> <p>If the cancellation attempt fails, the resulting deployment state is <code>FAILED</code>.</p> </li> <li> <p>If the current <a>UpdateServiceInstance</a> action succeeds before the cancellation attempt starts, the resulting deployment state is <code>SUCCEEDED</code> and the cancellation attempt has no effect.</p> </li> </ul>"
"documentation":"<p>Attempts to cancel a service pipeline deployment on an <a>UpdateServicePipeline</a> action, if the deployment is <code>IN_PROGRESS</code>. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-svc-pipeline-update.html\">Update a service pipeline</a> in the <i>Proton User guide</i>.</p> <p>The following list includes potential cancellation scenarios.</p> <ul> <li> <p>If the cancellation attempt succeeds, the resulting deployment state is <code>CANCELLED</code>.</p> </li> <li> <p>If the cancellation attempt fails, the resulting deployment state is <code>FAILED</code>.</p> </li> <li> <p>If the current <a>UpdateServicePipeline</a> action succeeds before the cancellation attempt starts, the resulting deployment state is <code>SUCCEEDED</code> and the cancellation attempt has no effect.</p> </li> </ul>"
},
"CreateComponent":{
"name":"CreateComponent",
"http":{
"method":"POST",
"requestUri":"/"
},
"input":{"shape":"CreateComponentInput"},
"output":{"shape":"CreateComponentOutput"},
"errors":[
{"shape":"ServiceQuotaExceededException"},
{"shape":"ValidationException"},
{"shape":"AccessDeniedException"},
{"shape":"ThrottlingException"},
{"shape":"ConflictException"},
{"shape":"ResourceNotFoundException"},
{"shape":"InternalServerException"}
],
"documentation":"<p>Create an Proton component. A component is an infrastructure extension for a service instance.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>Deploy a new environment. An Proton environment is created from an environment template that defines infrastructure and resources that can be shared across services.</p> <p class=\"title\"> <b>You can provision environments using the following methods:</b> </p> <ul> <li> <p>Amazon Web Services-managed provisioning: Proton makes direct calls to provision your resources.</p> </li> <li> <p>Self-managed provisioning: Proton makes pull requests on your repository to provide compiled infrastructure as code (IaC) files that your IaC engine uses to provision resources.</p> </li> </ul> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-environments.html\">Environments</a> and <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html\">Provisioning methods</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>Create an environment account connection in an environment account so that environment infrastructure resources can be provisioned in the environment account from a management account.</p> <p>An environment account connection is a secure bi-directional connection between a <i>management account</i> and an <i>environment account</i> that maintains authorization and permissions. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html\">Environment account connections</a> in the <i>Proton User guide</i>.</p>",
"documentation":"<p>Create an environment template for Proton. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-templates.html\">Environment Templates</a> in the <i>Proton User Guide</i>.</p> <p>You can create an environment template in one of the two following ways:</p> <ul> <li> <p>Register and publish a <i>standard</i> environment template that instructs Proton to deploy and manage environment infrastructure.</p> </li> <li> <p>Register and publish a <i>customer managed</i> environment template that connects Proton to your existing provisioned infrastructure that you manage. Proton <i>doesn't</i> manage your existing provisioned infrastructure. To create an environment template for customer provisioned and managed infrastructure, include the <code>provisioning</code> parameter and set the value to <code>CUSTOMER_MANAGED</code>. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/template-create.html\">Register and publish an environment template</a> in the <i>Proton User Guide</i>.</p> </li> </ul>",
"documentation":"<p>Create a new major or minor version of an environment template. A major version of an environment template is a version that <i>isn't</i> backwards compatible. A minor version of an environment template is a version that's backwards compatible within its major version.</p>",
"documentation":"<p>Create and register a link to a repository. Proton uses the link to repeatedly access the repository, to either push to it (self-managed provisioning) or pull from it (template sync). You can share a linked repository across multiple resources (like environments using self-managed provisioning, or synced templates). When you create a repository link, Proton creates a <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/using-service-linked-roles.html\">service-linked role</a> for you.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html#ag-works-prov-methods-self\">Self-managed provisioning</a>, <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-template-authoring.html#ag-template-bundles\">Template bundles</a>, and <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-template-sync-configs.html\">Template sync configurations</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>Create an Proton service. An Proton service is an instantiation of a service template and often includes several service instances and pipeline. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-services.html\">Services</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>Create a service template. The administrator creates a service template to define standardized infrastructure and an optional CI/CD service pipeline. Developers, in turn, select the service template from Proton. If the selected service template includes a service pipeline definition, they provide a link to their source code repository. Proton then deploys and manages the infrastructure defined by the selected service template. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-templates.html\">Proton templates</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>Create a new major or minor version of a service template. A major version of a service template is a version that <i>isn't</i> backward compatible. A minor version of a service template is a version that's backward compatible within its major version.</p>",
"documentation":"<p>Set up a template to create new template versions automatically by tracking a linked repository. A linked repository is a repository that has been registered with Proton. For more information, see <a>CreateRepository</a>.</p> <p>When a commit is pushed to your linked repository, Proton checks for changes to your repository template bundles. If it detects a template bundle change, a new major or minor version of its template is created, if the version doesn’t already exist. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-template-sync-configs.html\">Template sync configurations</a> in the <i>Proton User Guide</i>.</p>",
"idempotent":true
},
"DeleteComponent":{
"name":"DeleteComponent",
"http":{
"method":"POST",
"requestUri":"/"
},
"input":{"shape":"DeleteComponentInput"},
"output":{"shape":"DeleteComponentOutput"},
"errors":[
{"shape":"ValidationException"},
{"shape":"AccessDeniedException"},
{"shape":"ThrottlingException"},
{"shape":"ConflictException"},
{"shape":"ResourceNotFoundException"},
{"shape":"InternalServerException"}
],
"documentation":"<p>Delete an Proton component resource.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>In an environment account, delete an environment account connection.</p> <p>After you delete an environment account connection that’s in use by an Proton environment, Proton <i>can’t</i> manage the environment infrastructure resources until a new environment account connection is accepted for the environment account and associated environment. You're responsible for cleaning up provisioned resources that remain without an environment connection.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html\">Environment account connections</a> in the <i>Proton User guide</i>.</p>",
"documentation":"<p>If no other minor versions of an environment template exist, delete a major version of the environment template if it's not the <code>Recommended</code> version. Delete the <code>Recommended</code> version of the environment template if no other major versions or minor versions of the environment template exist. A major version of an environment template is a version that's not backward compatible.</p> <p>Delete a minor version of an environment template if it <i>isn't</i> the <code>Recommended</code> version. Delete a <code>Recommended</code> minor version of the environment template if no other minor versions of the environment template exist. A minor version of an environment template is a version that's backward compatible.</p>",
"idempotent":true
},
"DeleteRepository":{
"name":"DeleteRepository",
"http":{
"method":"POST",
"requestUri":"/"
},
"input":{"shape":"DeleteRepositoryInput"},
"output":{"shape":"DeleteRepositoryOutput"},
"errors":[
{"shape":"ValidationException"},
{"shape":"AccessDeniedException"},
{"shape":"ThrottlingException"},
{"shape":"ConflictException"},
{"shape":"ResourceNotFoundException"},
{"shape":"InternalServerException"}
],
"documentation":"<p>De-register and unlink your repository.</p>",
"documentation":"<p>Delete a service, with its instances and pipeline.</p> <note> <p>You can't delete a service if it has any service instances that have components attached to them.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p> </note>",
"documentation":"<p>If no other minor versions of a service template exist, delete a major version of the service template if it's not the <code>Recommended</code> version. Delete the <code>Recommended</code> version of the service template if no other major versions or minor versions of the service template exist. A major version of a service template is a version that <i>isn't</i> backwards compatible.</p> <p>Delete a minor version of a service template if it's not the <code>Recommended</code> version. Delete a <code>Recommended</code> minor version of the service template if no other minor versions of the service template exist. A minor version of a service template is a version that's backwards compatible.</p>",
"documentation":"<p>Get detail data for Proton account-wide settings.</p>"
},
"GetComponent":{
"name":"GetComponent",
"http":{
"method":"POST",
"requestUri":"/"
},
"input":{"shape":"GetComponentInput"},
"output":{"shape":"GetComponentOutput"},
"errors":[
{"shape":"ValidationException"},
{"shape":"AccessDeniedException"},
{"shape":"ThrottlingException"},
{"shape":"ResourceNotFoundException"},
{"shape":"InternalServerException"}
],
"documentation":"<p>Get detailed data for a component.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>In an environment account, get the detailed data for an environment account connection.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html\">Environment account connections</a> in the <i>Proton User guide</i>.</p>"
"documentation":"<p>Get the sync status of a repository used for Proton template sync. For more information about template sync, see .</p> <note> <p>A repository sync status isn't tied to the Proton Repository resource (or any other Proton resource). Therefore, tags on an Proton Repository resource have no effect on this action. Specifically, you can't use these tags to control access to this action using Attribute-based access control (ABAC).</p> <p>For more information about ABAC, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/security_iam_service-with-iam.html#security_iam_service-with-iam-tags\">ABAC</a> in the <i>Proton User Guide</i>.</p> </note>"
"documentation":"<p>Get detailed data for a service instance. A service instance is an instantiation of service template and it runs in a specific environment.</p>"
"documentation":"<p>Get a list of component Infrastructure as Code (IaC) outputs.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>List provisioned resources for a component with details.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
},
"ListComponents":{
"name":"ListComponents",
"http":{
"method":"POST",
"requestUri":"/"
},
"input":{"shape":"ListComponentsInput"},
"output":{"shape":"ListComponentsOutput"},
"errors":[
{"shape":"ValidationException"},
{"shape":"AccessDeniedException"},
{"shape":"ThrottlingException"},
{"shape":"InternalServerException"}
],
"documentation":"<p>List components with summary data. You can filter the result list by environment, service, or a single service instance.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>View a list of environment account connections.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html\">Environment account connections</a> in the <i>Proton User guide</i>.</p>"
"documentation":"<p>List service instances with summary data. This action lists service instances of all services in the Amazon Web Services account.</p>"
"documentation":"<p>List tags for a resource. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>Notify Proton of status changes to a provisioned resource when you use self-managed provisioning.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html#ag-works-prov-methods-self\">Self-managed provisioning</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>In a management account, reject an environment account connection from another environment account.</p> <p>After you reject an environment account connection request, you <i>can't</i> accept or use the rejected environment account connection.</p> <p>You <i>can’t</i> reject an environment account connection that's connected to an environment.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html\">Environment account connections</a> in the <i>Proton User guide</i>.</p>",
"documentation":"<p>Tag a resource. A tag is a key-value pair of metadata that you associate with an Proton resource.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>Remove a customer tag from a resource. A tag is a key-value pair of metadata associated with an Proton resource.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>Update Proton settings that are used for multiple services in the Amazon Web Services account.</p>"
},
"UpdateComponent":{
"name":"UpdateComponent",
"http":{
"method":"POST",
"requestUri":"/"
},
"input":{"shape":"UpdateComponentInput"},
"output":{"shape":"UpdateComponentOutput"},
"errors":[
{"shape":"ServiceQuotaExceededException"},
{"shape":"ValidationException"},
{"shape":"AccessDeniedException"},
{"shape":"ThrottlingException"},
{"shape":"ConflictException"},
{"shape":"ResourceNotFoundException"},
{"shape":"InternalServerException"}
],
"documentation":"<p>Update a component.</p> <p>There are a few modes for updating a component. The <code>deploymentType</code> field defines the mode.</p> <note> <p>You can't update a component while its deployment status, or the deployment status of a service instance attached to it, is <code>IN_PROGRESS</code>.</p> </note> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>Update an environment.</p> <p>If the environment is associated with an environment account connection, <i>don't</i> update or include the <code>protonServiceRoleArn</code> and <code>provisioningRepository</code> parameter to update or connect to an environment account connection.</p> <p>You can only update to a new environment account connection if that connection was created in the same environment account that the current environment account connection was created in. The account connection must also be associated with the current environment.</p> <p>If the environment <i>isn't</i> associated with an environment account connection, <i>don't</i> update or include the <code>environmentAccountConnectionId</code> parameter. You <i>can't</i> update or connect the environment to an environment account connection if it <i>isn't</i> already associated with an environment connection.</p> <p>You can update either the <code>environmentAccountConnectionId</code> or <code>protonServiceRoleArn</code> parameter and value. You can’t update both.</p> <p>If the environment was configured for Amazon Web Services-managed provisioning, omit the <code>provisioningRepository</code> parameter.</p> <p>If the environment was configured for self-managed provisioning, specify the <code>provisioningRepository</code> parameter and omit the <code>protonServiceRoleArn</code> and <code>environmentAccountConnectionId</code> parameters.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-environments.html\">Environments</a> and <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html\">Provisioning methods</a> in the <i>Proton User Guide</i>.</p> <p>There are four modes for updating an environment. The <code>deploymentType</code> field defines the mode.</p> <dl> <dt/> <dd> <p> <code>NONE</code> </p> <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p> </dd> <dt/> <dd> <p> <code>CURRENT_VERSION</code> </p> <p>In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include minor or major version parameters when you use this <code>deployment-type</code>.</p> </dd> <dt/> <dd> <p> <code>MINOR_VERSION</code> </p> <p>In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.</p> </dd> <dt/> <dd> <p> <code>MAJOR_VERSION</code> </p> <p>In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that's higher than the major version in use and a minor version.</p> </dd> </dl>"
"documentation":"<p>In an environment account, update an environment account connection to use a new IAM role.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html\">Environment account connections</a> in the <i>Proton User guide</i>.</p>",
"documentation":"<p>Edit a service description or use a spec to add and delete service instances.</p> <note> <p>Existing service instances and the service pipeline <i>can't</i> be edited using this API. They can only be deleted.</p> </note> <p>Use the <code>description</code> parameter to modify the description.</p> <p>Edit the <code>spec</code> parameter to add or delete instances.</p> <note> <p>You can't delete a service instance (remove it from the spec) if it has an attached component.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p> </note>"
"documentation":"<p>Update a service instance.</p> <p>There are a few modes for updating a service instance. The <code>deploymentType</code> field defines the mode.</p> <note> <p>You can't update a service instance while its deployment status, or the deployment status of a component attached to it, is <code>IN_PROGRESS</code>.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p> </note>"
"documentation":"<p>Update the service pipeline.</p> <p>There are four modes for updating a service pipeline. The <code>deploymentType</code> field defines the mode.</p> <dl> <dt/> <dd> <p> <code>NONE</code> </p> <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p> </dd> <dt/> <dd> <p> <code>CURRENT_VERSION</code> </p> <p>In this mode, the service pipeline is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this <code>deployment-type</code>.</p> </dd> <dt/> <dd> <p> <code>MINOR_VERSION</code> </p> <p>In this mode, the service pipeline is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can specify a different minor version of the current major version in use.</p> </dd> <dt/> <dd> <p> <code>MAJOR_VERSION</code> </p> <p>In this mode, the service pipeline is deployed and updated with the published, recommended (latest) major and minor version of the current template by default. You can specify a different major version that's higher than the major version in use and a minor version.</p> </dd> </dl>"
"documentation":"<p>Update template sync configuration parameters, except for the <code>templateName</code> and <code>templateType</code>. Repository details (branch, name, and provider) should be of a linked repository. A linked repository is a repository that has been registered with Proton. For more information, see <a>CreateRepository</a>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the service role that Proton uses for provisioning pipelines. Proton assumes this role for CodeBuild-based provisioning.</p>"
"documentation":"<p>The linked repository for pipeline provisioning. Required if you have environments configured for self-managed provisioning with services that include pipelines. A linked repository is a repository that has been registered with Proton. For more information, see <a>CreateRepository</a>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the service role you want to use for provisioning pipelines. Assumed by Proton for Amazon Web Services-managed provisioning, and by customer-owned automation for self-managed provisioning.</p>"
"documentation":"<p>The message associated with the component deployment status.</p>"
},
"description":{
"shape":"Description",
"documentation":"<p>A description of the component.</p>"
},
"environmentName":{
"shape":"ResourceName",
"documentation":"<p>The name of the Proton environment that this component is associated with.</p>"
},
"lastDeploymentAttemptedAt":{
"shape":"Timestamp",
"documentation":"<p>The time when a deployment of the component was last attempted.</p>"
},
"lastDeploymentSucceededAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the component was last deployed successfully.</p>"
},
"lastModifiedAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the component was last modified.</p>"
},
"name":{
"shape":"ResourceName",
"documentation":"<p>The name of the component.</p>"
},
"serviceInstanceName":{
"shape":"ResourceName",
"documentation":"<p>The name of the service instance that this component is attached to. Provided when a component is attached to a service instance.</p>"
},
"serviceName":{
"shape":"ResourceName",
"documentation":"<p>The name of the service that <code>serviceInstanceName</code> is associated with. Provided when a component is attached to a service instance.</p>"
},
"serviceSpec":{
"shape":"SpecContents",
"documentation":"<p>The service spec that the component uses to access service inputs. Provided when a component is attached to a service instance.</p>"
}
},
"documentation":"<p>Detailed data of an Proton component resource.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
},
"ComponentArn":{"type":"string"},
"ComponentDeploymentUpdateType":{
"type":"string",
"enum":[
"NONE",
"CURRENT_VERSION"
]
},
"ComponentSummary":{
"type":"structure",
"required":[
"arn",
"createdAt",
"deploymentStatus",
"environmentName",
"lastModifiedAt",
"name"
],
"members":{
"arn":{
"shape":"ComponentArn",
"documentation":"<p>The Amazon Resource Name (ARN) of the component.</p>"
},
"createdAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the component was created.</p>"
"documentation":"<p>The message associated with the component deployment status.</p>"
},
"environmentName":{
"shape":"ResourceName",
"documentation":"<p>The name of the Proton environment that this component is associated with.</p>"
},
"lastDeploymentAttemptedAt":{
"shape":"Timestamp",
"documentation":"<p>The time when a deployment of the component was last attempted.</p>"
},
"lastDeploymentSucceededAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the component was last deployed successfully.</p>"
},
"lastModifiedAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the component was last modified.</p>"
},
"name":{
"shape":"ResourceName",
"documentation":"<p>The name of the component.</p>"
},
"serviceInstanceName":{
"shape":"ResourceName",
"documentation":"<p>The name of the service instance that this component is attached to. Provided when a component is attached to a service instance.</p>"
},
"serviceName":{
"shape":"ResourceName",
"documentation":"<p>The name of the service that <code>serviceInstanceName</code> is associated with. Provided when a component is attached to a service instance.</p>"
}
},
"documentation":"<p>Summary data of an Proton component resource.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>An optional customer-provided description of the component.</p>"
},
"environmentName":{
"shape":"ResourceName",
"documentation":"<p>The name of the Proton environment that you want to associate this component with. You must specify this when you don't specify <code>serviceInstanceName</code> and <code>serviceName</code>.</p>"
},
"manifest":{
"shape":"TemplateManifestContents",
"documentation":"<p>A path to a manifest file that lists the Infrastructure as Code (IaC) file, template language, and rendering engine for infrastructure that a custom component provisions.</p>"
},
"name":{
"shape":"ResourceName",
"documentation":"<p>The customer-provided name of the component.</p>"
},
"serviceInstanceName":{
"shape":"ResourceName",
"documentation":"<p>The name of the service instance that you want to attach this component to. If you don't specify this, the component isn't attached to any service instance. Specify both <code>serviceInstanceName</code> and <code>serviceName</code> or neither of them.</p>"
},
"serviceName":{
"shape":"ResourceName",
"documentation":"<p>The name of the service that <code>serviceInstanceName</code> is associated with. If you don't specify this, the component isn't attached to any service instance. Specify both <code>serviceInstanceName</code> and <code>serviceName</code> or neither of them.</p>"
},
"serviceSpec":{
"shape":"SpecContents",
"documentation":"<p>The service spec that you want the component to use to access service inputs. Set this only when you attach the component to a service instance.</p>"
},
"tags":{
"shape":"TagList",
"documentation":"<p>An optional list of metadata items that you can associate with the Proton component. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
},
"templateFile":{
"shape":"TemplateFileContents",
"documentation":"<p>A path to the Infrastructure as Code (IaC) file describing infrastructure that a custom component provisions.</p> <note> <p>Components support a single IaC file, even if you use Terraform as your template language.</p> </note>"
}
}
},
"CreateComponentOutput":{
"type":"structure",
"required":["component"],
"members":{
"component":{
"shape":"Component",
"documentation":"<p>The detailed data of the created component.</p>"
"documentation":"<p>When included, if two identical requests are made with the same client token, Proton returns the environment account connection that the first request created.</p>",
"documentation":"<p>The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.</p>"
},
"componentRoleArn":{
"shape":"RoleArn",
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.</p> <p>You must specify <code>componentRoleArn</code> to allow directly defined components to be associated with any environments running in this account.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The ID of the management account that accepts or rejects the environment account connection. You create and manage the Proton environment in this account. If the management account accepts the environment account connection, Proton can use the associated IAM role to provision environment infrastructure resources in the associated environment account.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that's created in the environment account. Proton uses this role to provision infrastructure resources in the associated environment account.</p>"
"documentation":"<p>An optional list of metadata items that you can associate with the Proton environment account connection. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.</p> <p>To use CodeBuild-based provisioning for the environment or for any service instance running in the environment, specify either the <code>environmentAccountConnectionId</code> or <code>codebuildRoleArn</code> parameter.</p>"
},
"componentRoleArn":{
"shape":"RoleArn",
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p> <p>You must specify <code>componentRoleArn</code> to allow directly defined components to be associated with this environment.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The ID of the environment account connection that you provide if you're provisioning your environment infrastructure resources to an environment account. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-env-account-connections.html\">Environment account connections</a> in the <i>Proton User guide</i>.</p> <p>To use Amazon Web Services-managed provisioning for the environment, specify either the <code>environmentAccountConnectionId</code> or <code>protonServiceRoleArn</code> parameter and omit the <code>provisioningRepository</code> parameter.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the Proton service role that allows Proton to make calls to other services on your behalf.</p> <p>To use Amazon Web Services-managed provisioning for the environment, specify either the <code>environmentAccountConnectionId</code> or <code>protonServiceRoleArn</code> parameter and omit the <code>provisioningRepository</code> parameter.</p>"
"documentation":"<p>The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see <a>CreateRepository</a>.</p> <p>To use self-managed provisioning for the environment, specify this parameter and omit the <code>environmentAccountConnectionId</code> and <code>protonServiceRoleArn</code> parameters.</p>"
"documentation":"<p>A YAML formatted string that provides inputs as defined in the environment template bundle schema file. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-environments.html\">Environments</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>An optional list of metadata items that you can associate with the Proton environment. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The name of the environment template. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-templates.html\">Environment Templates</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>An optional list of metadata items that you can associate with the Proton environment template. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>When included, if two identical requests are made with the same client token, Proton returns the environment template version that the first request created.</p>",
"documentation":"<p>To create a new minor version of the environment template, include <code>major Version</code>.</p> <p>To create a new major and minor version of the environment template, exclude <code>major Version</code>.</p>"
"documentation":"<p>An optional list of metadata items that you can associate with the Proton environment template version. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of your AWS CodeStar connection that connects Proton to your repository provider account. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/setting-up-for-service.html\">Setting up for Proton</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>An optional list of metadata items that you can associate with the Proton repository. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The name of the code repository branch that holds the code that's deployed in Proton. <i>Don't</i> include this parameter if your service template <i>doesn't</i> include a service pipeline.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the repository connection. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/setting-up-for-service.html#setting-up-vcontrol\">Setting up an AWS CodeStar connection</a> in the <i>Proton User Guide</i>. <i>Don't</i> include this parameter if your service template <i>doesn't</i> include a service pipeline.</p>"
"documentation":"<p>The ID of the code repository. <i>Don't</i> include this parameter if your service template <i>doesn't</i> include a service pipeline.</p>"
"documentation":"<p>A link to a spec file that provides inputs as defined in the service template bundle schema file. The spec file is in YAML format. <i>Don’t</i> include pipeline inputs in the spec if your service template <i>doesn’t</i> include a service pipeline. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-create-svc.html\">Create a service</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>An optional list of metadata items that you can associate with the Proton service. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>By default, Proton provides a service pipeline for your service. When this parameter is included, it indicates that an Proton service pipeline <i>isn't</i> provided for your service. After it's included, it <i>can't</i> be changed. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-template-authoring.html#ag-template-bundles\">Template bundles</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>An optional list of metadata items that you can associate with the Proton service template. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>When included, if two identical requests are made with the same client token, Proton returns the service template version that the first request created.</p>",
"documentation":"<p>An array of environment template objects that are compatible with the new service template version. A service instance based on this service template version can run in environments based on compatible templates.</p>"
"documentation":"<p>To create a new minor version of the service template, include a <code>major Version</code>.</p> <p>To create a new major and minor version of the service template, <i>exclude</i> <code>major Version</code>.</p>"
"documentation":"<p>An array of supported component sources. Components with supported sources can be attached to service instances based on this service template version.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>An optional list of metadata items that you can associate with the Proton service template version. A tag is a key-value pair.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/resources.html\">Proton resources and tagging</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The provider type for your repository.</p>"
},
"subdirectory":{
"shape":"Subdirectory",
"documentation":"<p>A repository subdirectory path to your template bundle directory. When included, Proton limits the template bundle search to this repository directory.</p>"
},
"templateName":{
"shape":"ResourceName",
"documentation":"<p>The name of your registered template.</p>"
},
"templateType":{
"shape":"TemplateType",
"documentation":"<p>The type of the registered template.</p>"
}
}
},
"CreateTemplateSyncConfigOutput":{
"type":"structure",
"members":{
"templateSyncConfig":{
"shape":"TemplateSyncConfig",
"documentation":"<p>The template sync configuration detail data that's returned by Proton.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.</p>"
},
"componentRoleArn":{
"shape":"RoleArn",
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p> <p>The environment must have a <code>componentRoleArn</code> to allow directly defined components to be associated with the environment.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see <a>CreateRepository</a>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.</p>"
},
"componentRoleArn":{
"shape":"RoleArn",
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.</p> <p>The environment account connection must have a <code>componentRoleArn</code> to allow directly defined components to be associated with any environments running in the account.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.</p> <p>The environment account connection must have a <code>componentRoleArn</code> to allow directly defined components to be associated with any environments running in the account.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p> <p>The environment must have a <code>componentRoleArn</code> to allow directly defined components to be associated with the environment.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The name of the component whose outputs you want.</p>"
},
"nextToken":{
"shape":"EmptyNextToken",
"documentation":"<p>A token that indicates the location of the next output in the array of outputs, after the list of outputs that was previously requested.</p>"
}
}
},
"ListComponentOutputsOutput":{
"type":"structure",
"required":["outputs"],
"members":{
"nextToken":{
"shape":"EmptyNextToken",
"documentation":"<p>A token that indicates the location of the next output in the array of outputs, after the list of outputs that was previously requested.</p>"
},
"outputs":{
"shape":"OutputsList",
"documentation":"<p>An array of component Infrastructure as Code (IaC) outputs.</p>"
}
}
},
"ListComponentProvisionedResourcesInput":{
"type":"structure",
"required":["componentName"],
"members":{
"componentName":{
"shape":"ResourceName",
"documentation":"<p>The name of the component whose provisioned resources you want.</p>"
},
"nextToken":{
"shape":"EmptyNextToken",
"documentation":"<p>A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the list of provisioned resources that was previously requested.</p>"
}
}
},
"ListComponentProvisionedResourcesOutput":{
"type":"structure",
"required":["provisionedResources"],
"members":{
"nextToken":{
"shape":"EmptyNextToken",
"documentation":"<p>A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the current requested list of provisioned resources.</p>"
},
"provisionedResources":{
"shape":"ProvisionedResourceList",
"documentation":"<p>An array of provisioned resources for a component.</p>"
}
}
},
"ListComponentsInput":{
"type":"structure",
"members":{
"environmentName":{
"shape":"ResourceName",
"documentation":"<p>The name of an environment for result list filtering. Proton returns components associated with the environment or attached to service instances running in it.</p>"
},
"maxResults":{
"shape":"MaxPageResults",
"documentation":"<p>The maximum number of components to list.</p>"
},
"nextToken":{
"shape":"NextToken",
"documentation":"<p>A token that indicates the location of the next component in the array of components, after the list of components that was previously requested.</p>"
},
"serviceInstanceName":{
"shape":"ResourceName",
"documentation":"<p>The name of a service instance for result list filtering. Proton returns the component attached to the service instance, if any.</p>"
},
"serviceName":{
"shape":"ResourceName",
"documentation":"<p>The name of a service for result list filtering. Proton returns components attached to service instances of the service.</p>"
}
}
},
"ListComponentsOutput":{
"type":"structure",
"required":["components"],
"members":{
"components":{
"shape":"ComponentSummaryList",
"documentation":"<p>An array of components with summary data.</p>"
},
"nextToken":{
"shape":"NextToken",
"documentation":"<p>A token that indicates the location of the next component in the array of components, after the current requested list of components.</p>"
"documentation":"<p>A token that indicates the location of the next environment account connection in the array of environment account connections, after the list of environment account connections that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next environment account connection in the array of environment account connections, after the current requested list of environment account connections.</p>"
"documentation":"<p>A token that indicates the location of the next environment output in the array of environment outputs, after the list of environment outputs that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next environment output in the array of environment outputs, after the current requested list of environment outputs.</p>"
"documentation":"<p>A token that indicates the location of the next environment provisioned resource in the array of environment provisioned resources, after the list of environment provisioned resources that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next environment provisioned resource in the array of provisioned resources, after the current requested list of environment provisioned resources.</p>"
"documentation":"<p>To view a list of minor of versions under a major version of an environment template, include <code>major Version</code>.</p> <p>To view a list of major versions of an environment template, <i>exclude</i> <code>major Version</code>.</p>"
"documentation":"<p>A token that indicates the location of the next major or minor version in the array of major or minor versions of an environment template, after the list of major or minor versions that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next major or minor version in the array of major or minor versions of an environment template, after the list of major or minor versions that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next environment template in the array of environment templates, after the list of environment templates that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next environment template in the array of environment templates, after the current requested list of environment templates.</p>"
"documentation":"<p>A token that indicates the location of the next environment in the array of environments, after the list of environments that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next environment in the array of environments, after the current requested list of environments.</p>"
"documentation":"<p>A token that indicates the location of the next repository in the array of repositories, after the list of repositories previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next repository in the array of repositories, after the current requested list of repositories. </p>"
"documentation":"<p>A token that indicates the location of the next repository sync definition in the array of repository sync definitions, after the list of repository sync definitions previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next repository sync definition in the array of repository sync definitions, after the current requested list of repository sync definitions.</p>"
"documentation":"<p>A token that indicates the location of the next output in the array of outputs, after the list of outputs that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the list of provisioned resources that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the current requested list of provisioned resources.</p>"
"documentation":"<p>The name of a filtering criterion.</p>"
},
"value":{
"shape":"ListServiceInstancesFilterValue",
"documentation":"<p>A value to filter by.</p> <p>With the date/time keys (<code>*At{Before,After}</code>), the value is a valid <a href=\"https://datatracker.ietf.org/doc/html/rfc3339.html\">RFC 3339</a> string with no UTC offset and with an optional fractional precision (for example, <code>1985-04-12T23:20:50.52Z</code>).</p>"
}
},
"documentation":"<p>A filtering criterion to scope down the result list of the <a>ListServiceInstances</a> action.</p>"
"documentation":"<p>An array of filtering criteria that scope down the result list. By default, all service instances in the Amazon Web Services account are returned.</p>"
"documentation":"<p>A token that indicates the location of the next service in the array of service instances, after the list of service instances that was previously requested.</p>"
"documentation":"<p>The field that the result list is sorted by.</p> <p>When you choose to sort by <code>serviceName</code>, service instances within each service are sorted by service instance name.</p> <p>Default: <code>serviceName</code> </p>"
},
"sortOrder":{
"shape":"SortOrder",
"documentation":"<p>Result list sort order.</p> <p>Default: <code>ASCENDING</code> </p>"
"documentation":"<p>A token that indicates the location of the next service instance in the array of service instances, after the current requested list of service instances.</p>"
"documentation":"<p>A token that indicates the location of the next output in the array of outputs, after the list of outputs that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the list of provisioned resources that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next provisioned resource in the array of provisioned resources, after the current requested list of provisioned resources.</p>"
"documentation":"<p>An array of provisioned resources for a service and pipeline.</p>"
}
}
},
"ListServiceTemplateVersionsInput":{
"type":"structure",
"required":["templateName"],
"members":{
"majorVersion":{
"shape":"TemplateVersionPart",
"documentation":"<p>To view a list of minor of versions under a major version of a service template, include <code>major Version</code>.</p> <p>To view a list of major versions of a service template, <i>exclude</i> <code>major Version</code>.</p>"
},
"maxResults":{
"shape":"MaxPageResults",
"documentation":"<p>The maximum number of major or minor versions of a service template to list.</p>"
"documentation":"<p>A token that indicates the location of the next major or minor version in the array of major or minor versions of a service template, after the list of major or minor versions that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next major or minor version in the array of major or minor versions of a service template, after the current requested list of service major or minor versions.</p>"
"documentation":"<p>A token that indicates the location of the next service template in the array of service templates, after the list of service templates previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next service template in the array of service templates, after the current requested list of service templates.</p>"
"documentation":"<p>A token that indicates the location of the next service in the array of services, after the list of services that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next service in the array of services, after the current requested list of services.</p>"
"documentation":"<p>A token that indicates the location of the next resource tag in the array of resource tags, after the list of resource tags that was previously requested.</p>"
"documentation":"<p>A token that indicates the location of the next resource tag in the array of resource tags, after the current requested list of resource tags.</p>"
"documentation":"<p>The resource provisioning engine. At this time, <code>CLOUDFORMATION</code> can be used for Amazon Web Services-managed provisioning, and <code>TERRAFORM</code> can be used for self-managed provisioning.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-works-prov-methods.html#ag-works-prov-methods-self\">Self-managed provisioning</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the repository connection. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/setting-up-for-service.html#setting-up-vcontrol\">Setting up an AWS CodeStar connection</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>A quota was exceeded. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-limits.html\">Proton Quotas</a> in the <i>Proton User Guide</i>.</p>",
"documentation":"<p>The Amazon Resource Name (ARN) of the service template.</p>"
},
"createdAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the service template was created.</p>"
},
"description":{
"shape":"Description",
"documentation":"<p>A description of the service template.</p>"
},
"displayName":{
"shape":"DisplayName",
"documentation":"<p>The service template name as displayed in the developer interface.</p>"
},
"encryptionKey":{
"shape":"Arn",
"documentation":"<p>The customer provided service template encryption key that's used to encrypt data.</p>"
},
"lastModifiedAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the service template was last modified.</p>"
},
"name":{
"shape":"ResourceName",
"documentation":"<p>The name of the service template.</p>"
},
"pipelineProvisioning":{
"shape":"Provisioning",
"documentation":"<p>If <code>pipelineProvisioning</code> is <code>true</code>, a service pipeline is included in the service template. Otherwise, a service pipeline <i>isn't</i> included in the service template.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the service template.</p>"
},
"createdAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the service template was created.</p>"
},
"description":{
"shape":"Description",
"documentation":"<p>A description of the service template.</p>"
},
"displayName":{
"shape":"DisplayName",
"documentation":"<p>The service template name as displayed in the developer interface.</p>"
},
"lastModifiedAt":{
"shape":"Timestamp",
"documentation":"<p>The time when the service template was last modified.</p>"
},
"name":{
"shape":"ResourceName",
"documentation":"<p>The name of the service template.</p>"
},
"pipelineProvisioning":{
"shape":"Provisioning",
"documentation":"<p>If <code>pipelineProvisioning</code> is <code>true</code>, a service pipeline is included in the service template, otherwise a service pipeline <i>isn't</i> included in the service template.</p>"
"documentation":"<p>An array of supported component sources. Components with supported sources can be attached to service instances based on this service template version.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>Set to <code>true</code> to remove a configured pipeline repository from the account settings. Don't set this field if you are updating the configured pipeline repository.</p>"
},
"pipelineCodebuildRoleArn":{
"shape":"RoleArnOrEmptyString",
"documentation":"<p>The Amazon Resource Name (ARN) of the service role you want to use for provisioning pipelines. Proton assumes this role for CodeBuild-based provisioning.</p>"
"documentation":"<p>A linked repository for pipeline provisioning. Specify it if you have environments configured for self-managed provisioning with services that include pipelines. A linked repository is a repository that has been registered with Proton. For more information, see <a>CreateRepository</a>.</p> <p>To remove a previously configured repository, set <code>deletePipelineProvisioningRepository</code> to <code>true</code>, and don't set <code>pipelineProvisioningRepository</code>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the service role you want to use for provisioning pipelines. Assumed by Proton for Amazon Web Services-managed provisioning, and by customer-owned automation for self-managed provisioning.</p> <p>To remove a previously configured ARN, specify an empty string.</p>"
"documentation":"<p>The deployment type. It defines the mode for updating a component, as follows:</p> <dl> <dt/> <dd> <p> <code>NONE</code> </p> <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated. You can only specify <code>description</code> in this mode.</p> </dd> <dt/> <dd> <p> <code>CURRENT_VERSION</code> </p> <p>In this mode, the component is deployed and updated with the new <code>serviceSpec</code>, <code>templateSource</code>, and/or <code>type</code> that you provide. Only requested parameters are updated.</p> </dd> </dl>"
},
"description":{
"shape":"Description",
"documentation":"<p>An optional customer-provided description of the component.</p>"
},
"name":{
"shape":"ResourceName",
"documentation":"<p>The name of the component to update.</p>"
},
"serviceInstanceName":{
"shape":"ResourceNameOrEmpty",
"documentation":"<p>The name of the service instance that you want to attach this component to. Don't specify to keep the component's current service instance attachment. Specify an empty string to detach the component from the service instance it's attached to. Specify non-empty values for both <code>serviceInstanceName</code> and <code>serviceName</code> or for neither of them.</p>"
},
"serviceName":{
"shape":"ResourceNameOrEmpty",
"documentation":"<p>The name of the service that <code>serviceInstanceName</code> is associated with. Don't specify to keep the component's current service instance attachment. Specify an empty string to detach the component from the service instance it's attached to. Specify non-empty values for both <code>serviceInstanceName</code> and <code>serviceName</code> or for neither of them.</p>"
},
"serviceSpec":{
"shape":"SpecContents",
"documentation":"<p>The service spec that you want the component to use to access service inputs. Set this only when the component is attached to a service instance.</p>"
},
"templateFile":{
"shape":"TemplateFileContents",
"documentation":"<p>A path to the Infrastructure as Code (IaC) file describing infrastructure that a custom component provisions.</p> <note> <p>Components support a single IaC file, even if you use Terraform as your template language.</p> </note>"
}
}
},
"UpdateComponentOutput":{
"type":"structure",
"required":["component"],
"members":{
"component":{
"shape":"Component",
"documentation":"<p>The detailed data of the updated component.</p>"
}
}
},
"UpdateEnvironmentAccountConnectionInput":{
"type":"structure",
"required":["id"],
"members":{
"codebuildRoleArn":{
"shape":"RoleArn",
"documentation":"<p>The Amazon Resource Name (ARN) of an IAM service role in the environment account. Proton uses this role to provision infrastructure resources using CodeBuild-based provisioning in the associated environment account.</p>"
},
"componentRoleArn":{
"shape":"RoleArn",
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in the associated environment account. It determines the scope of infrastructure that a component can provision in the account.</p> <p>The environment account connection must have a <code>componentRoleArn</code> to allow directly defined components to be associated with any environments running in the account.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that allows Proton to provision infrastructure using CodeBuild-based provisioning on your behalf.</p>"
},
"componentRoleArn":{
"shape":"RoleArn",
"documentation":"<p>The Amazon Resource Name (ARN) of the IAM service role that Proton uses when provisioning directly defined components in this environment. It determines the scope of infrastructure that a component can provision.</p> <p>The environment must have a <code>componentRoleArn</code> to allow directly defined components to be associated with the environment.</p> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>There are four modes for updating an environment. The <code>deploymentType</code> field defines the mode.</p> <dl> <dt/> <dd> <p> <code>NONE</code> </p> <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p> </dd> <dt/> <dd> <p> <code>CURRENT_VERSION</code> </p> <p>In this mode, the environment is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this <code>deployment-type</code>.</p> </dd> <dt/> <dd> <p> <code>MINOR_VERSION</code> </p> <p>In this mode, the environment is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.</p> </dd> <dt/> <dd> <p> <code>MAJOR_VERSION</code> </p> <p>In this mode, the environment is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can also specify a different major version that is higher than the major version in use and a minor version (optional).</p> </dd> </dl>"
"documentation":"<p>A description of the environment update.</p>"
},
"environmentAccountConnectionId":{
"shape":"EnvironmentAccountConnectionId",
"documentation":"<p>The ID of the environment account connection.</p> <p>You can only update to a new environment account connection if it was created in the same environment account that the current environment account connection was created in and is associated with the current environment.</p>"
},
"name":{
"shape":"ResourceName",
"documentation":"<p>The name of the environment to update.</p>"
"documentation":"<p>The linked repository that you use to host your rendered infrastructure templates for self-managed provisioning. A linked repository is a repository that has been registered with Proton. For more information, see <a>CreateRepository</a>.</p>"
"documentation":"<p>Lists the service instances to add and the existing service instances to remain. Omit the existing service instances to delete from the list. <i>Don't</i> include edits to the existing service instances or pipeline. For more information, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-svc-update.html\">Edit a service</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>The deployment type. It defines the mode for updating a service instance, as follows:</p> <dl> <dt/> <dd> <p> <code>NONE</code> </p> <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p> </dd> <dt/> <dd> <p> <code>CURRENT_VERSION</code> </p> <p>In this mode, the service instance is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this deployment type.</p> </dd> <dt/> <dd> <p> <code>MINOR_VERSION</code> </p> <p>In this mode, the service instance is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can also specify a different minor version of the current major version in use.</p> </dd> <dt/> <dd> <p> <code>MAJOR_VERSION</code> </p> <p>In this mode, the service instance is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can specify a different major version that's higher than the major version in use and a minor version.</p> </dd> </dl>"
"documentation":"<p>The deployment type.</p> <p>There are four modes for updating a service pipeline. The <code>deploymentType</code> field defines the mode.</p> <dl> <dt/> <dd> <p> <code>NONE</code> </p> <p>In this mode, a deployment <i>doesn't</i> occur. Only the requested metadata parameters are updated.</p> </dd> <dt/> <dd> <p> <code>CURRENT_VERSION</code> </p> <p>In this mode, the service pipeline is deployed and updated with the new spec that you provide. Only requested parameters are updated. <i>Don’t</i> include major or minor version parameters when you use this <code>deployment-type</code>.</p> </dd> <dt/> <dd> <p> <code>MINOR_VERSION</code> </p> <p>In this mode, the service pipeline is deployed and updated with the published, recommended (latest) minor version of the current major version in use, by default. You can specify a different minor version of the current major version in use.</p> </dd> <dt/> <dd> <p> <code>MAJOR_VERSION</code> </p> <p>In this mode, the service pipeline is deployed and updated with the published, recommended (latest) major and minor version of the current template, by default. You can specify a different major version that's higher than the major version in use and a minor version.</p> </dd> </dl>"
"documentation":"<p>An array of environment template objects that are compatible with this service template version. A service instance based on this service template version can run in environments based on compatible templates.</p>"
"documentation":"<p>An array of supported component sources. Components with supported sources can be attached to service instances based on this service template version.</p> <note> <p>A change to <code>supportedComponentSources</code> doesn't impact existing component attachments to instances based on this template version. A change only affects later associations.</p> </note> <p>For more information about components, see <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/ag-components.html\">Proton components</a> in the <i>Proton User Guide</i>.</p>"
"documentation":"<p>A subdirectory path to your template bundle version. When included, limits the template bundle search to this repository directory.</p>"
"documentation":"<p>This is the Proton Service API Reference. It provides descriptions, syntax and usage examples for each of the <a href=\"https://docs.aws.amazon.com/proton/latest/APIReference/API_Operations.html\">actions</a> and <a href=\"https://docs.aws.amazon.com/proton/latest/APIReference/API_Types.html\">data types</a> for the Proton service.</p> <p>The documentation for each action shows the Query API request parameters and the XML response.</p> <p>Alternatively, you can use the Amazon Web Services CLI to access an API. For more information, see the <a href=\"https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html\">Amazon Web Services Command Line Interface User Guide</a>.</p> <p>The Proton service is a two-pronged automation framework. Administrators create service templates to provide standardized infrastructure and deployment tooling for serverless and container based applications. Developers, in turn, select from the available service templates to automate their application or service deployments.</p> <p>Because administrators define the infrastructure and tooling that Proton deploys and manages, they need permissions to use all of the listed API operations.</p> <p>When developers select a specific infrastructure and tooling set, Proton deploys their applications. To monitor their applications that are running on Proton, developers need permissions to the service <i>create</i>, <i>list</i>, <i>update</i> and <i>delete</i> API operations and the service instance <i>list</i> and <i>update</i> API operations.</p> <p>To learn more about Proton, see the <a href=\"https://docs.aws.amazon.com/proton/latest/userguide/Welcome.html\">ProtonUserGuide</a>.</p><p><b>EnsuringIdempotency</b></p><p>WhenyoumakeamutatingAPIrequest,therequesttypicallyreturnsaresultbeforetheasynchronousworkflowsoftheoperationarecomplete.Operationsmightalsotimeoutorencounterotherserverissuesbeforethey'recomplete,eveniftherequestalreadyreturnedaresult.Thismightmakeitdifficulttodeterminewhethertherequestsucceeded.Moreover,youmightneedtoretrytherequestmultipletimestoensurethattheoperationcompletessuccessfully.However,iftheoriginalrequestandthesubsequentretriesaresuccessful,theoperationoccursmultipletimes.Thismeansthatyoumightcreatemoreresourcesthanyouintended.</p><p><i>Idempotency</i>ensuresthatanAPIrequestactioncompletesnomorethanonetime.Withanidempotentrequest,iftheoriginalrequestactioncompletessuccessfully,anysubsequentretriescompletesuccessfullywithoutperforminganyfurtheractions.However,theresultmightcontainupdatedinformation,suchasthecurrentcreationstatus.</p><p>ThefollowinglistsofAPIsaregroupedaccordingtomethodsthatensureidempotency.</p><p><b>IdempotentcreateAPIswithaclienttoken</b></p><p>TheAPIactionsinthislistsupportidempotencywiththeuseofa<i>clienttoken</i>.ThecorrespondingAmazonWebServicesCLIcommandsalsosupportidempotencyusingaclienttoken.Aclienttokenisaunique,case-sensitivestringofupto64ASCIIcharacters.TomakeanidempotentAPIrequestusingoneoftheseactions,specifyaclienttokenintherequest.Werecommendthatyou<i>don't</i>reusethesameclienttokenforotherAPIrequests.Ifyoudon’tprovideaclienttokenfortheseAPIs,adefaultclienttokenisautomaticallyprovidedbySDKs.</p><p>Givenarequestactionthathassucceeded:</p><p>Ifyouretrytherequestusingthesameclienttokenandthesameparameters,theretrysucceedswithoutperforminganyfurtheractionsotherthanreturningtheoriginalresourcedetaildataintheresponse.</p><p>Ifyouretrytherequestusingthesameclienttoken,butoneormoreoftheparametersaredifferent,theretrythrowsa<code>ValidationException</code>withan<code>IdempotentParameterMismatch</code>error.</p><p>Clienttokensexpireeighthoursafterarequestismade.Ifyouretrytherequestwiththeexpiredtoken,anewresourceiscrea