diff --git a/clients/client-amplify/src/commands/CreateAppCommand.ts b/clients/client-amplify/src/commands/CreateAppCommand.ts index 5818d7f32d21..68fca6fa4291 100644 --- a/clients/client-amplify/src/commands/CreateAppCommand.ts +++ b/clients/client-amplify/src/commands/CreateAppCommand.ts @@ -152,6 +152,12 @@ export interface CreateAppCommandOutput extends CreateAppResult, __MetadataBeare * // cacheConfig: { // CacheConfig * // type: "AMPLIFY_MANAGED" || "AMPLIFY_MANAGED_NO_COOKIES", // required * // }, + * // webhookCreateTime: new Date("TIMESTAMP"), + * // wafConfiguration: { // WafConfiguration + * // webAclArn: "STRING_VALUE", + * // wafStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ASSOCIATION_SUCCESS" || "DISASSOCIATING" || "DISASSOCIATION_FAILED", + * // statusReason: "STRING_VALUE", + * // }, * // }, * // }; * diff --git a/clients/client-amplify/src/commands/DeleteAppCommand.ts b/clients/client-amplify/src/commands/DeleteAppCommand.ts index f1f9c29ae32e..55c5f9c1c449 100644 --- a/clients/client-amplify/src/commands/DeleteAppCommand.ts +++ b/clients/client-amplify/src/commands/DeleteAppCommand.ts @@ -100,6 +100,12 @@ export interface DeleteAppCommandOutput extends DeleteAppResult, __MetadataBeare * // cacheConfig: { // CacheConfig * // type: "AMPLIFY_MANAGED" || "AMPLIFY_MANAGED_NO_COOKIES", // required * // }, + * // webhookCreateTime: new Date("TIMESTAMP"), + * // wafConfiguration: { // WafConfiguration + * // webAclArn: "STRING_VALUE", + * // wafStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ASSOCIATION_SUCCESS" || "DISASSOCIATING" || "DISASSOCIATION_FAILED", + * // statusReason: "STRING_VALUE", + * // }, * // }, * // }; * diff --git a/clients/client-amplify/src/commands/DeleteJobCommand.ts b/clients/client-amplify/src/commands/DeleteJobCommand.ts index 621311a554e4..c8f0c74ca998 100644 --- a/clients/client-amplify/src/commands/DeleteJobCommand.ts +++ b/clients/client-amplify/src/commands/DeleteJobCommand.ts @@ -50,7 +50,7 @@ export interface DeleteJobCommandOutput extends DeleteJobResult, __MetadataBeare * // commitMessage: "STRING_VALUE", // required * // commitTime: new Date("TIMESTAMP"), // required * // startTime: new Date("TIMESTAMP"), // required - * // status: "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required + * // status: "CREATED" || "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required * // endTime: new Date("TIMESTAMP"), * // jobType: "RELEASE" || "RETRY" || "MANUAL" || "WEB_HOOK", // required * // sourceUrl: "STRING_VALUE", diff --git a/clients/client-amplify/src/commands/GetAppCommand.ts b/clients/client-amplify/src/commands/GetAppCommand.ts index 012d4e99fffe..49bbc214e746 100644 --- a/clients/client-amplify/src/commands/GetAppCommand.ts +++ b/clients/client-amplify/src/commands/GetAppCommand.ts @@ -100,6 +100,12 @@ export interface GetAppCommandOutput extends GetAppResult, __MetadataBearer {} * // cacheConfig: { // CacheConfig * // type: "AMPLIFY_MANAGED" || "AMPLIFY_MANAGED_NO_COOKIES", // required * // }, + * // webhookCreateTime: new Date("TIMESTAMP"), + * // wafConfiguration: { // WafConfiguration + * // webAclArn: "STRING_VALUE", + * // wafStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ASSOCIATION_SUCCESS" || "DISASSOCIATING" || "DISASSOCIATION_FAILED", + * // statusReason: "STRING_VALUE", + * // }, * // }, * // }; * diff --git a/clients/client-amplify/src/commands/GetJobCommand.ts b/clients/client-amplify/src/commands/GetJobCommand.ts index 5d63c32e10d6..90b6fbbcfb18 100644 --- a/clients/client-amplify/src/commands/GetJobCommand.ts +++ b/clients/client-amplify/src/commands/GetJobCommand.ts @@ -51,7 +51,7 @@ export interface GetJobCommandOutput extends GetJobResult, __MetadataBearer {} * // commitMessage: "STRING_VALUE", // required * // commitTime: new Date("TIMESTAMP"), // required * // startTime: new Date("TIMESTAMP"), // required - * // status: "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required + * // status: "CREATED" || "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required * // endTime: new Date("TIMESTAMP"), * // jobType: "RELEASE" || "RETRY" || "MANUAL" || "WEB_HOOK", // required * // sourceUrl: "STRING_VALUE", @@ -61,7 +61,7 @@ export interface GetJobCommandOutput extends GetJobResult, __MetadataBearer {} * // { // Step * // stepName: "STRING_VALUE", // required * // startTime: new Date("TIMESTAMP"), // required - * // status: "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required + * // status: "CREATED" || "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required * // endTime: new Date("TIMESTAMP"), // required * // logUrl: "STRING_VALUE", * // artifactsUrl: "STRING_VALUE", diff --git a/clients/client-amplify/src/commands/ListAppsCommand.ts b/clients/client-amplify/src/commands/ListAppsCommand.ts index 1365189f67c7..f9289fbb8eb4 100644 --- a/clients/client-amplify/src/commands/ListAppsCommand.ts +++ b/clients/client-amplify/src/commands/ListAppsCommand.ts @@ -102,6 +102,12 @@ export interface ListAppsCommandOutput extends ListAppsResult, __MetadataBearer * // cacheConfig: { // CacheConfig * // type: "AMPLIFY_MANAGED" || "AMPLIFY_MANAGED_NO_COOKIES", // required * // }, + * // webhookCreateTime: new Date("TIMESTAMP"), + * // wafConfiguration: { // WafConfiguration + * // webAclArn: "STRING_VALUE", + * // wafStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ASSOCIATION_SUCCESS" || "DISASSOCIATING" || "DISASSOCIATION_FAILED", + * // statusReason: "STRING_VALUE", + * // }, * // }, * // ], * // nextToken: "STRING_VALUE", diff --git a/clients/client-amplify/src/commands/ListJobsCommand.ts b/clients/client-amplify/src/commands/ListJobsCommand.ts index bab94adb53e3..5bd1848560ea 100644 --- a/clients/client-amplify/src/commands/ListJobsCommand.ts +++ b/clients/client-amplify/src/commands/ListJobsCommand.ts @@ -52,7 +52,7 @@ export interface ListJobsCommandOutput extends ListJobsResult, __MetadataBearer * // commitMessage: "STRING_VALUE", // required * // commitTime: new Date("TIMESTAMP"), // required * // startTime: new Date("TIMESTAMP"), // required - * // status: "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required + * // status: "CREATED" || "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required * // endTime: new Date("TIMESTAMP"), * // jobType: "RELEASE" || "RETRY" || "MANUAL" || "WEB_HOOK", // required * // sourceUrl: "STRING_VALUE", diff --git a/clients/client-amplify/src/commands/StartDeploymentCommand.ts b/clients/client-amplify/src/commands/StartDeploymentCommand.ts index 6e0fb674105f..871d0fc4dcb2 100644 --- a/clients/client-amplify/src/commands/StartDeploymentCommand.ts +++ b/clients/client-amplify/src/commands/StartDeploymentCommand.ts @@ -57,7 +57,7 @@ export interface StartDeploymentCommandOutput extends StartDeploymentResult, __M * // commitMessage: "STRING_VALUE", // required * // commitTime: new Date("TIMESTAMP"), // required * // startTime: new Date("TIMESTAMP"), // required - * // status: "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required + * // status: "CREATED" || "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required * // endTime: new Date("TIMESTAMP"), * // jobType: "RELEASE" || "RETRY" || "MANUAL" || "WEB_HOOK", // required * // sourceUrl: "STRING_VALUE", diff --git a/clients/client-amplify/src/commands/StartJobCommand.ts b/clients/client-amplify/src/commands/StartJobCommand.ts index a8c649591849..609c55a29f96 100644 --- a/clients/client-amplify/src/commands/StartJobCommand.ts +++ b/clients/client-amplify/src/commands/StartJobCommand.ts @@ -55,7 +55,7 @@ export interface StartJobCommandOutput extends StartJobResult, __MetadataBearer * // commitMessage: "STRING_VALUE", // required * // commitTime: new Date("TIMESTAMP"), // required * // startTime: new Date("TIMESTAMP"), // required - * // status: "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required + * // status: "CREATED" || "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required * // endTime: new Date("TIMESTAMP"), * // jobType: "RELEASE" || "RETRY" || "MANUAL" || "WEB_HOOK", // required * // sourceUrl: "STRING_VALUE", diff --git a/clients/client-amplify/src/commands/StopJobCommand.ts b/clients/client-amplify/src/commands/StopJobCommand.ts index 81c270b5ba77..f4a3aacd7d68 100644 --- a/clients/client-amplify/src/commands/StopJobCommand.ts +++ b/clients/client-amplify/src/commands/StopJobCommand.ts @@ -50,7 +50,7 @@ export interface StopJobCommandOutput extends StopJobResult, __MetadataBearer {} * // commitMessage: "STRING_VALUE", // required * // commitTime: new Date("TIMESTAMP"), // required * // startTime: new Date("TIMESTAMP"), // required - * // status: "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required + * // status: "CREATED" || "PENDING" || "PROVISIONING" || "RUNNING" || "FAILED" || "SUCCEED" || "CANCELLING" || "CANCELLED", // required * // endTime: new Date("TIMESTAMP"), * // jobType: "RELEASE" || "RETRY" || "MANUAL" || "WEB_HOOK", // required * // sourceUrl: "STRING_VALUE", diff --git a/clients/client-amplify/src/commands/UpdateAppCommand.ts b/clients/client-amplify/src/commands/UpdateAppCommand.ts index 3f6671bbc531..49317ab521c4 100644 --- a/clients/client-amplify/src/commands/UpdateAppCommand.ts +++ b/clients/client-amplify/src/commands/UpdateAppCommand.ts @@ -150,6 +150,12 @@ export interface UpdateAppCommandOutput extends UpdateAppResult, __MetadataBeare * // cacheConfig: { // CacheConfig * // type: "AMPLIFY_MANAGED" || "AMPLIFY_MANAGED_NO_COOKIES", // required * // }, + * // webhookCreateTime: new Date("TIMESTAMP"), + * // wafConfiguration: { // WafConfiguration + * // webAclArn: "STRING_VALUE", + * // wafStatus: "ASSOCIATING" || "ASSOCIATION_FAILED" || "ASSOCIATION_SUCCESS" || "DISASSOCIATING" || "DISASSOCIATION_FAILED", + * // statusReason: "STRING_VALUE", + * // }, * // }, * // }; * diff --git a/clients/client-amplify/src/models/models_0.ts b/clients/client-amplify/src/models/models_0.ts index f306aee2c3b8..6cda5c28ee23 100644 --- a/clients/client-amplify/src/models/models_0.ts +++ b/clients/client-amplify/src/models/models_0.ts @@ -421,6 +421,51 @@ export const RepositoryCloneMethod = { */ export type RepositoryCloneMethod = (typeof RepositoryCloneMethod)[keyof typeof RepositoryCloneMethod]; +/** + * @public + * @enum + */ +export const WafStatus = { + ASSOCIATING: "ASSOCIATING", + ASSOCIATION_FAILED: "ASSOCIATION_FAILED", + ASSOCIATION_SUCCESS: "ASSOCIATION_SUCCESS", + DISASSOCIATING: "DISASSOCIATING", + DISASSOCIATION_FAILED: "DISASSOCIATION_FAILED", +} as const; + +/** + * @public + */ +export type WafStatus = (typeof WafStatus)[keyof typeof WafStatus]; + +/** + *
Describes the Firewall configuration for a hosted Amplify application. + * Firewall support enables you to protect your web applications with a direct integration + * with WAF. For more information about using WAF protections for an Amplify application, see + * Firewall support for hosted sites in the Amplify + * User Guide.
+ * @public + */ +export interface WafConfiguration { + /** + *The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
+ * @public + */ + webAclArn?: string | undefined; + + /** + *The status of the process to associate or disassociate a web ACL to an Amplify app.
+ * @public + */ + wafStatus?: WafStatus | undefined; + + /** + *The reason for the current status of the Firewall configuration.
+ * @public + */ + statusReason?: string | undefined; +} + /** *Represents the different branches of a repository for building, deploying, and hosting * an Amplify app.
@@ -475,13 +520,13 @@ export interface App { platform: Platform | undefined; /** - *Creates a date and time for the Amplify app.
+ *A timestamp of when Amplify created the application.
* @public */ createTime: Date | undefined; /** - *Updates the date and time for the Amplify app.
+ *A timestamp of when Amplify updated the application.
* @public */ updateTime: Date | undefined; @@ -598,6 +643,19 @@ export interface App { * @public */ cacheConfig?: CacheConfig | undefined; + + /** + *A timestamp of when Amplify created the webhook in your Git repository.
+ * @public + */ + webhookCreateTime?: Date | undefined; + + /** + *Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration + * with WAF.
+ * @public + */ + wafConfiguration?: WafConfiguration | undefined; } /** @@ -999,13 +1057,13 @@ export interface Branch { enableNotification: boolean | undefined; /** - *The creation date and time for a branch that is part of an Amplify app.
+ *A timestamp of when Amplify created the branch.
* @public */ createTime: Date | undefined; /** - *The last updated date and time for a branch that is part of an Amplify app.
+ *A timestamp for the last updated time for a branch.
* @public */ updateTime: Date | undefined; @@ -1615,13 +1673,13 @@ export interface Webhook { description: string | undefined; /** - *The create date and time for a webhook.
+ *A timestamp of when Amplify created the webhook in your Git repository.
* @public */ createTime: Date | undefined; /** - *Updates the date and time for a webhook.
+ *A timestamp of when Amplify updated the webhook in your Git repository.
* @public */ updateTime: Date | undefined; @@ -1814,6 +1872,7 @@ export type SourceUrlType = (typeof SourceUrlType)[keyof typeof SourceUrlType]; export const JobStatus = { CANCELLED: "CANCELLED", CANCELLING: "CANCELLING", + CREATED: "CREATED", FAILED: "FAILED", PENDING: "PENDING", PROVISIONING: "PROVISIONING", @@ -1856,7 +1915,7 @@ export interface JobSummary { commitMessage: string | undefined; /** - *The commit date and time for the job.
+ *The commit date and time for the job.
* @public */ commitTime: Date | undefined; diff --git a/clients/client-amplify/src/protocols/Aws_restJson1.ts b/clients/client-amplify/src/protocols/Aws_restJson1.ts index 78b7d14d0af3..e203c1ebd98a 100644 --- a/clients/client-amplify/src/protocols/Aws_restJson1.ts +++ b/clients/client-amplify/src/protocols/Aws_restJson1.ts @@ -1953,6 +1953,8 @@ const de_App = (output: any, context: __SerdeContext): App => { repositoryCloneMethod: __expectString, tags: _json, updateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + wafConfiguration: _json, + webhookCreateTime: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), }) as any; }; @@ -2168,6 +2170,8 @@ const de_Steps = (output: any, context: __SerdeContext): Step[] => { // de_TagMap omitted. +// de_WafConfiguration omitted. + /** * deserializeAws_restJson1Webhook */ diff --git a/codegen/sdk-codegen/aws-models/amplify.json b/codegen/sdk-codegen/aws-models/amplify.json index dd89d76dac5f..51511a7f38c7 100644 --- a/codegen/sdk-codegen/aws-models/amplify.json +++ b/codegen/sdk-codegen/aws-models/amplify.json @@ -1100,14 +1100,14 @@ "createTime": { "target": "com.amazonaws.amplify#CreateTime", "traits": { - "smithy.api#documentation": "Creates a date and time for the Amplify app.
", + "smithy.api#documentation": "A timestamp of when Amplify created the application.
", "smithy.api#required": {} } }, "updateTime": { "target": "com.amazonaws.amplify#UpdateTime", "traits": { - "smithy.api#documentation": "Updates the date and time for the Amplify app.
", + "smithy.api#documentation": "A timestamp of when Amplify updated the application.
", "smithy.api#required": {} } }, @@ -1210,6 +1210,18 @@ "traits": { "smithy.api#documentation": "The cache configuration for the Amplify app. If you don't specify the\n cache configuration type
, Amplify uses the default\n AMPLIFY_MANAGED
setting.
A timestamp of when Amplify created the webhook in your Git repository.
" + } + }, + "wafConfiguration": { + "target": "com.amazonaws.amplify#WafConfiguration", + "traits": { + "smithy.api#documentation": "Describes the Firewall configuration for the Amplify app. Firewall support enables you to protect your hosted applications with a direct integration\n with WAF.
" + } } }, "traits": { @@ -1587,14 +1599,14 @@ "createTime": { "target": "com.amazonaws.amplify#CreateTime", "traits": { - "smithy.api#documentation": "The creation date and time for a branch that is part of an Amplify app.
", + "smithy.api#documentation": "A timestamp of when Amplify created the branch.
", "smithy.api#required": {} } }, "updateTime": { "target": "com.amazonaws.amplify#UpdateTime", "traits": { - "smithy.api#documentation": "The last updated date and time for a branch that is part of an Amplify app.
", + "smithy.api#documentation": "A timestamp for the last updated time for a branch.
", "smithy.api#required": {} } }, @@ -4169,6 +4181,12 @@ "com.amazonaws.amplify#JobStatus": { "type": "enum", "members": { + "CREATED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CREATED" + } + }, "PENDING": { "target": "smithy.api#Unit", "traits": { @@ -4253,7 +4271,7 @@ "commitTime": { "target": "com.amazonaws.amplify#CommitTime", "traits": { - "smithy.api#documentation": "The commit date and time for the job.
", + "smithy.api#documentation": "The commit date and time for the job.
", "smithy.api#required": {} } }, @@ -6686,6 +6704,77 @@ "com.amazonaws.amplify#Verified": { "type": "boolean" }, + "com.amazonaws.amplify#WafConfiguration": { + "type": "structure", + "members": { + "webAclArn": { + "target": "com.amazonaws.amplify#WebAclArn", + "traits": { + "smithy.api#documentation": "The Amazon Resource Name (ARN) for the web ACL associated with an Amplify app.
" + } + }, + "wafStatus": { + "target": "com.amazonaws.amplify#WafStatus", + "traits": { + "smithy.api#documentation": "The status of the process to associate or disassociate a web ACL to an Amplify app.
" + } + }, + "statusReason": { + "target": "com.amazonaws.amplify#StatusReason", + "traits": { + "smithy.api#documentation": "The reason for the current status of the Firewall configuration.
" + } + } + }, + "traits": { + "smithy.api#documentation": "Describes the Firewall configuration for a hosted Amplify application.\n Firewall support enables you to protect your web applications with a direct integration\n with WAF. For more information about using WAF protections for an Amplify application, see\n Firewall support for hosted sites in the Amplify\n User Guide.
" + } + }, + "com.amazonaws.amplify#WafStatus": { + "type": "enum", + "members": { + "ASSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASSOCIATING" + } + }, + "ASSOCIATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASSOCIATION_FAILED" + } + }, + "ASSOCIATION_SUCCESS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASSOCIATION_SUCCESS" + } + }, + "DISASSOCIATING": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISASSOCIATING" + } + }, + "DISASSOCIATION_FAILED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISASSOCIATION_FAILED" + } + } + } + }, + "com.amazonaws.amplify#WebAclArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 512 + }, + "smithy.api#pattern": "^arn:aws:wafv2:" + } + }, "com.amazonaws.amplify#Webhook": { "type": "structure", "members": { @@ -6727,14 +6816,14 @@ "createTime": { "target": "com.amazonaws.amplify#CreateTime", "traits": { - "smithy.api#documentation": "The create date and time for a webhook.
", + "smithy.api#documentation": "A timestamp of when Amplify created the webhook in your Git repository.
", "smithy.api#required": {} } }, "updateTime": { "target": "com.amazonaws.amplify#UpdateTime", "traits": { - "smithy.api#documentation": "Updates the date and time for a webhook.
", + "smithy.api#documentation": "A timestamp of when Amplify updated the webhook in your Git repository.
", "smithy.api#required": {} } } @@ -6776,6 +6865,9 @@ "member": { "target": "com.amazonaws.amplify#Webhook" } + }, + "com.amazonaws.amplify#webhookCreateTime": { + "type": "timestamp" } } }