diff --git a/clients/client-customer-profiles/README.md b/clients/client-customer-profiles/README.md index 65440bcbcd08d..128133018b760 100644 --- a/clients/client-customer-profiles/README.md +++ b/clients/client-customer-profiles/README.md @@ -269,6 +269,14 @@ CreateEventStream [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/CreateEventStreamCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/CreateEventStreamCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/CreateEventStreamCommandOutput/) + +
+ +CreateEventTrigger + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/CreateEventTriggerCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/CreateEventTriggerCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/CreateEventTriggerCommandOutput/) +
@@ -333,6 +341,14 @@ DeleteEventStream [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/DeleteEventStreamCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/DeleteEventStreamCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/DeleteEventStreamCommandOutput/) +
+
+ +DeleteEventTrigger + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/DeleteEventTriggerCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/DeleteEventTriggerCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/DeleteEventTriggerCommandOutput/) +
@@ -437,6 +453,14 @@ GetEventStream [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/GetEventStreamCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/GetEventStreamCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/GetEventStreamCommandOutput/) +
+
+ +GetEventTrigger + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/GetEventTriggerCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/GetEventTriggerCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/GetEventTriggerCommandOutput/) +
@@ -573,6 +597,14 @@ ListEventStreams [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/ListEventStreamsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/ListEventStreamsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/ListEventStreamsCommandOutput/) +
+
+ +ListEventTriggers + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/ListEventTriggersCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/ListEventTriggersCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/ListEventTriggersCommandOutput/) +
@@ -733,6 +765,14 @@ UpdateDomain [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/UpdateDomainCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/UpdateDomainCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/UpdateDomainCommandOutput/) +
+
+ +UpdateEventTrigger + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/customer-profiles/command/UpdateEventTriggerCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/UpdateEventTriggerCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-customer-profiles/Interface/UpdateEventTriggerCommandOutput/) +
diff --git a/clients/client-customer-profiles/src/CustomerProfiles.ts b/clients/client-customer-profiles/src/CustomerProfiles.ts index 447da29695da8..cba5e565d676a 100644 --- a/clients/client-customer-profiles/src/CustomerProfiles.ts +++ b/clients/client-customer-profiles/src/CustomerProfiles.ts @@ -32,6 +32,11 @@ import { CreateEventStreamCommandInput, CreateEventStreamCommandOutput, } from "./commands/CreateEventStreamCommand"; +import { + CreateEventTriggerCommand, + CreateEventTriggerCommandInput, + CreateEventTriggerCommandOutput, +} from "./commands/CreateEventTriggerCommand"; import { CreateIntegrationWorkflowCommand, CreateIntegrationWorkflowCommandInput, @@ -72,6 +77,11 @@ import { DeleteEventStreamCommandInput, DeleteEventStreamCommandOutput, } from "./commands/DeleteEventStreamCommand"; +import { + DeleteEventTriggerCommand, + DeleteEventTriggerCommandInput, + DeleteEventTriggerCommandOutput, +} from "./commands/DeleteEventTriggerCommand"; import { DeleteIntegrationCommand, DeleteIntegrationCommandInput, @@ -133,6 +143,11 @@ import { GetEventStreamCommandInput, GetEventStreamCommandOutput, } from "./commands/GetEventStreamCommand"; +import { + GetEventTriggerCommand, + GetEventTriggerCommandInput, + GetEventTriggerCommandOutput, +} from "./commands/GetEventTriggerCommand"; import { GetIdentityResolutionJobCommand, GetIdentityResolutionJobCommandInput, @@ -206,6 +221,11 @@ import { ListEventStreamsCommandInput, ListEventStreamsCommandOutput, } from "./commands/ListEventStreamsCommand"; +import { + ListEventTriggersCommand, + ListEventTriggersCommandInput, + ListEventTriggersCommandOutput, +} from "./commands/ListEventTriggersCommand"; import { ListIdentityResolutionJobsCommand, ListIdentityResolutionJobsCommandInput, @@ -302,6 +322,11 @@ import { UpdateDomainCommandInput, UpdateDomainCommandOutput, } from "./commands/UpdateDomainCommand"; +import { + UpdateEventTriggerCommand, + UpdateEventTriggerCommandInput, + UpdateEventTriggerCommandOutput, +} from "./commands/UpdateEventTriggerCommand"; import { UpdateProfileCommand, UpdateProfileCommandInput, @@ -316,6 +341,7 @@ const commands = { CreateCalculatedAttributeDefinitionCommand, CreateDomainCommand, CreateEventStreamCommand, + CreateEventTriggerCommand, CreateIntegrationWorkflowCommand, CreateProfileCommand, CreateSegmentDefinitionCommand, @@ -324,6 +350,7 @@ const commands = { DeleteCalculatedAttributeDefinitionCommand, DeleteDomainCommand, DeleteEventStreamCommand, + DeleteEventTriggerCommand, DeleteIntegrationCommand, DeleteProfileCommand, DeleteProfileKeyCommand, @@ -337,6 +364,7 @@ const commands = { GetCalculatedAttributeForProfileCommand, GetDomainCommand, GetEventStreamCommand, + GetEventTriggerCommand, GetIdentityResolutionJobCommand, GetIntegrationCommand, GetMatchesCommand, @@ -354,6 +382,7 @@ const commands = { ListCalculatedAttributesForProfileCommand, ListDomainsCommand, ListEventStreamsCommand, + ListEventTriggersCommand, ListIdentityResolutionJobsCommand, ListIntegrationsCommand, ListObjectTypeAttributesCommand, @@ -374,6 +403,7 @@ const commands = { UntagResourceCommand, UpdateCalculatedAttributeDefinitionCommand, UpdateDomainCommand, + UpdateEventTriggerCommand, UpdateProfileCommand, }; @@ -465,6 +495,23 @@ export interface CustomerProfiles { cb: (err: any, data?: CreateEventStreamCommandOutput) => void ): void; + /** + * @see {@link CreateEventTriggerCommand} + */ + createEventTrigger( + args: CreateEventTriggerCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createEventTrigger( + args: CreateEventTriggerCommandInput, + cb: (err: any, data?: CreateEventTriggerCommandOutput) => void + ): void; + createEventTrigger( + args: CreateEventTriggerCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateEventTriggerCommandOutput) => void + ): void; + /** * @see {@link CreateIntegrationWorkflowCommand} */ @@ -589,6 +636,23 @@ export interface CustomerProfiles { cb: (err: any, data?: DeleteEventStreamCommandOutput) => void ): void; + /** + * @see {@link DeleteEventTriggerCommand} + */ + deleteEventTrigger( + args: DeleteEventTriggerCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteEventTrigger( + args: DeleteEventTriggerCommandInput, + cb: (err: any, data?: DeleteEventTriggerCommandOutput) => void + ): void; + deleteEventTrigger( + args: DeleteEventTriggerCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteEventTriggerCommandOutput) => void + ): void; + /** * @see {@link DeleteIntegrationCommand} */ @@ -792,6 +856,20 @@ export interface CustomerProfiles { cb: (err: any, data?: GetEventStreamCommandOutput) => void ): void; + /** + * @see {@link GetEventTriggerCommand} + */ + getEventTrigger( + args: GetEventTriggerCommandInput, + options?: __HttpHandlerOptions + ): Promise; + getEventTrigger(args: GetEventTriggerCommandInput, cb: (err: any, data?: GetEventTriggerCommandOutput) => void): void; + getEventTrigger( + args: GetEventTriggerCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetEventTriggerCommandOutput) => void + ): void; + /** * @see {@link GetIdentityResolutionJobCommand} */ @@ -1061,6 +1139,23 @@ export interface CustomerProfiles { cb: (err: any, data?: ListEventStreamsCommandOutput) => void ): void; + /** + * @see {@link ListEventTriggersCommand} + */ + listEventTriggers( + args: ListEventTriggersCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listEventTriggers( + args: ListEventTriggersCommandInput, + cb: (err: any, data?: ListEventTriggersCommandOutput) => void + ): void; + listEventTriggers( + args: ListEventTriggersCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListEventTriggersCommandOutput) => void + ): void; + /** * @see {@link ListIdentityResolutionJobsCommand} */ @@ -1366,6 +1461,23 @@ export interface CustomerProfiles { cb: (err: any, data?: UpdateDomainCommandOutput) => void ): void; + /** + * @see {@link UpdateEventTriggerCommand} + */ + updateEventTrigger( + args: UpdateEventTriggerCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateEventTrigger( + args: UpdateEventTriggerCommandInput, + cb: (err: any, data?: UpdateEventTriggerCommandOutput) => void + ): void; + updateEventTrigger( + args: UpdateEventTriggerCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateEventTriggerCommandOutput) => void + ): void; + /** * @see {@link UpdateProfileCommand} */ diff --git a/clients/client-customer-profiles/src/CustomerProfilesClient.ts b/clients/client-customer-profiles/src/CustomerProfilesClient.ts index 4ce697e0a6f01..99c6437928070 100644 --- a/clients/client-customer-profiles/src/CustomerProfilesClient.ts +++ b/clients/client-customer-profiles/src/CustomerProfilesClient.ts @@ -65,6 +65,7 @@ import { } from "./commands/CreateCalculatedAttributeDefinitionCommand"; import { CreateDomainCommandInput, CreateDomainCommandOutput } from "./commands/CreateDomainCommand"; import { CreateEventStreamCommandInput, CreateEventStreamCommandOutput } from "./commands/CreateEventStreamCommand"; +import { CreateEventTriggerCommandInput, CreateEventTriggerCommandOutput } from "./commands/CreateEventTriggerCommand"; import { CreateIntegrationWorkflowCommandInput, CreateIntegrationWorkflowCommandOutput, @@ -88,6 +89,7 @@ import { } from "./commands/DeleteCalculatedAttributeDefinitionCommand"; import { DeleteDomainCommandInput, DeleteDomainCommandOutput } from "./commands/DeleteDomainCommand"; import { DeleteEventStreamCommandInput, DeleteEventStreamCommandOutput } from "./commands/DeleteEventStreamCommand"; +import { DeleteEventTriggerCommandInput, DeleteEventTriggerCommandOutput } from "./commands/DeleteEventTriggerCommand"; import { DeleteIntegrationCommandInput, DeleteIntegrationCommandOutput } from "./commands/DeleteIntegrationCommand"; import { DeleteProfileCommandInput, DeleteProfileCommandOutput } from "./commands/DeleteProfileCommand"; import { DeleteProfileKeyCommandInput, DeleteProfileKeyCommandOutput } from "./commands/DeleteProfileKeyCommand"; @@ -122,6 +124,7 @@ import { } from "./commands/GetCalculatedAttributeForProfileCommand"; import { GetDomainCommandInput, GetDomainCommandOutput } from "./commands/GetDomainCommand"; import { GetEventStreamCommandInput, GetEventStreamCommandOutput } from "./commands/GetEventStreamCommand"; +import { GetEventTriggerCommandInput, GetEventTriggerCommandOutput } from "./commands/GetEventTriggerCommand"; import { GetIdentityResolutionJobCommandInput, GetIdentityResolutionJobCommandOutput, @@ -163,6 +166,7 @@ import { } from "./commands/ListCalculatedAttributesForProfileCommand"; import { ListDomainsCommandInput, ListDomainsCommandOutput } from "./commands/ListDomainsCommand"; import { ListEventStreamsCommandInput, ListEventStreamsCommandOutput } from "./commands/ListEventStreamsCommand"; +import { ListEventTriggersCommandInput, ListEventTriggersCommandOutput } from "./commands/ListEventTriggersCommand"; import { ListIdentityResolutionJobsCommandInput, ListIdentityResolutionJobsCommandOutput, @@ -213,6 +217,7 @@ import { UpdateCalculatedAttributeDefinitionCommandOutput, } from "./commands/UpdateCalculatedAttributeDefinitionCommand"; import { UpdateDomainCommandInput, UpdateDomainCommandOutput } from "./commands/UpdateDomainCommand"; +import { UpdateEventTriggerCommandInput, UpdateEventTriggerCommandOutput } from "./commands/UpdateEventTriggerCommand"; import { UpdateProfileCommandInput, UpdateProfileCommandOutput } from "./commands/UpdateProfileCommand"; import { ClientInputEndpointParameters, @@ -235,6 +240,7 @@ export type ServiceInputTypes = | CreateCalculatedAttributeDefinitionCommandInput | CreateDomainCommandInput | CreateEventStreamCommandInput + | CreateEventTriggerCommandInput | CreateIntegrationWorkflowCommandInput | CreateProfileCommandInput | CreateSegmentDefinitionCommandInput @@ -243,6 +249,7 @@ export type ServiceInputTypes = | DeleteCalculatedAttributeDefinitionCommandInput | DeleteDomainCommandInput | DeleteEventStreamCommandInput + | DeleteEventTriggerCommandInput | DeleteIntegrationCommandInput | DeleteProfileCommandInput | DeleteProfileKeyCommandInput @@ -256,6 +263,7 @@ export type ServiceInputTypes = | GetCalculatedAttributeForProfileCommandInput | GetDomainCommandInput | GetEventStreamCommandInput + | GetEventTriggerCommandInput | GetIdentityResolutionJobCommandInput | GetIntegrationCommandInput | GetMatchesCommandInput @@ -273,6 +281,7 @@ export type ServiceInputTypes = | ListCalculatedAttributesForProfileCommandInput | ListDomainsCommandInput | ListEventStreamsCommandInput + | ListEventTriggersCommandInput | ListIdentityResolutionJobsCommandInput | ListIntegrationsCommandInput | ListObjectTypeAttributesCommandInput @@ -293,6 +302,7 @@ export type ServiceInputTypes = | UntagResourceCommandInput | UpdateCalculatedAttributeDefinitionCommandInput | UpdateDomainCommandInput + | UpdateEventTriggerCommandInput | UpdateProfileCommandInput; /** @@ -305,6 +315,7 @@ export type ServiceOutputTypes = | CreateCalculatedAttributeDefinitionCommandOutput | CreateDomainCommandOutput | CreateEventStreamCommandOutput + | CreateEventTriggerCommandOutput | CreateIntegrationWorkflowCommandOutput | CreateProfileCommandOutput | CreateSegmentDefinitionCommandOutput @@ -313,6 +324,7 @@ export type ServiceOutputTypes = | DeleteCalculatedAttributeDefinitionCommandOutput | DeleteDomainCommandOutput | DeleteEventStreamCommandOutput + | DeleteEventTriggerCommandOutput | DeleteIntegrationCommandOutput | DeleteProfileCommandOutput | DeleteProfileKeyCommandOutput @@ -326,6 +338,7 @@ export type ServiceOutputTypes = | GetCalculatedAttributeForProfileCommandOutput | GetDomainCommandOutput | GetEventStreamCommandOutput + | GetEventTriggerCommandOutput | GetIdentityResolutionJobCommandOutput | GetIntegrationCommandOutput | GetMatchesCommandOutput @@ -343,6 +356,7 @@ export type ServiceOutputTypes = | ListCalculatedAttributesForProfileCommandOutput | ListDomainsCommandOutput | ListEventStreamsCommandOutput + | ListEventTriggersCommandOutput | ListIdentityResolutionJobsCommandOutput | ListIntegrationsCommandOutput | ListObjectTypeAttributesCommandOutput @@ -363,6 +377,7 @@ export type ServiceOutputTypes = | UntagResourceCommandOutput | UpdateCalculatedAttributeDefinitionCommandOutput | UpdateDomainCommandOutput + | UpdateEventTriggerCommandOutput | UpdateProfileCommandOutput; /** diff --git a/clients/client-customer-profiles/src/commands/CreateEventTriggerCommand.ts b/clients/client-customer-profiles/src/commands/CreateEventTriggerCommand.ts new file mode 100644 index 0000000000000..76a15bcd9119b --- /dev/null +++ b/clients/client-customer-profiles/src/commands/CreateEventTriggerCommand.ts @@ -0,0 +1,190 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { CustomerProfilesClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CustomerProfilesClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + CreateEventTriggerRequest, + CreateEventTriggerRequestFilterSensitiveLog, + CreateEventTriggerResponse, + CreateEventTriggerResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_CreateEventTriggerCommand, se_CreateEventTriggerCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreateEventTriggerCommand}. + */ +export interface CreateEventTriggerCommandInput extends CreateEventTriggerRequest {} +/** + * @public + * + * The output of {@link CreateEventTriggerCommand}. + */ +export interface CreateEventTriggerCommandOutput extends CreateEventTriggerResponse, __MetadataBearer {} + +/** + *

Creates an event trigger, which specifies the rules when to perform action based on + * customer's ingested data.

+ *

Each event stream can be associated with only one integration in the same region and AWS + * account as the event stream.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CustomerProfilesClient, CreateEventTriggerCommand } from "@aws-sdk/client-customer-profiles"; // ES Modules import + * // const { CustomerProfilesClient, CreateEventTriggerCommand } = require("@aws-sdk/client-customer-profiles"); // CommonJS import + * const client = new CustomerProfilesClient(config); + * const input = { // CreateEventTriggerRequest + * DomainName: "STRING_VALUE", // required + * EventTriggerName: "STRING_VALUE", // required + * ObjectTypeName: "STRING_VALUE", // required + * Description: "STRING_VALUE", + * EventTriggerConditions: [ // EventTriggerConditions // required + * { // EventTriggerCondition + * EventTriggerDimensions: [ // EventTriggerDimensions // required + * { // EventTriggerDimension + * ObjectAttributes: [ // ObjectAttributes // required + * { // ObjectAttribute + * Source: "STRING_VALUE", + * FieldName: "STRING_VALUE", + * ComparisonOperator: "INCLUSIVE" || "EXCLUSIVE" || "CONTAINS" || "BEGINS_WITH" || "ENDS_WITH" || "GREATER_THAN" || "LESS_THAN" || "GREATER_THAN_OR_EQUAL" || "LESS_THAN_OR_EQUAL" || "EQUAL" || "BEFORE" || "AFTER" || "ON" || "BETWEEN" || "NOT_BETWEEN", // required + * Values: [ // EventTriggerValues // required + * "STRING_VALUE", + * ], + * }, + * ], + * }, + * ], + * LogicalOperator: "ANY" || "ALL" || "NONE", // required + * }, + * ], + * SegmentFilter: "STRING_VALUE", + * EventTriggerLimits: { // EventTriggerLimits + * EventExpiration: Number("long"), + * Periods: [ // Periods + * { // Period + * Unit: "HOURS" || "DAYS" || "WEEKS" || "MONTHS", // required + * Value: Number("int"), // required + * MaxInvocationsPerProfile: Number("int"), + * Unlimited: true || false, + * }, + * ], + * }, + * Tags: { // TagMap + * "": "STRING_VALUE", + * }, + * }; + * const command = new CreateEventTriggerCommand(input); + * const response = await client.send(command); + * // { // CreateEventTriggerResponse + * // EventTriggerName: "STRING_VALUE", + * // ObjectTypeName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // EventTriggerConditions: [ // EventTriggerConditions + * // { // EventTriggerCondition + * // EventTriggerDimensions: [ // EventTriggerDimensions // required + * // { // EventTriggerDimension + * // ObjectAttributes: [ // ObjectAttributes // required + * // { // ObjectAttribute + * // Source: "STRING_VALUE", + * // FieldName: "STRING_VALUE", + * // ComparisonOperator: "INCLUSIVE" || "EXCLUSIVE" || "CONTAINS" || "BEGINS_WITH" || "ENDS_WITH" || "GREATER_THAN" || "LESS_THAN" || "GREATER_THAN_OR_EQUAL" || "LESS_THAN_OR_EQUAL" || "EQUAL" || "BEFORE" || "AFTER" || "ON" || "BETWEEN" || "NOT_BETWEEN", // required + * // Values: [ // EventTriggerValues // required + * // "STRING_VALUE", + * // ], + * // }, + * // ], + * // }, + * // ], + * // LogicalOperator: "ANY" || "ALL" || "NONE", // required + * // }, + * // ], + * // SegmentFilter: "STRING_VALUE", + * // EventTriggerLimits: { // EventTriggerLimits + * // EventExpiration: Number("long"), + * // Periods: [ // Periods + * // { // Period + * // Unit: "HOURS" || "DAYS" || "WEEKS" || "MONTHS", // required + * // Value: Number("int"), // required + * // MaxInvocationsPerProfile: Number("int"), + * // Unlimited: true || false, + * // }, + * // ], + * // }, + * // CreatedAt: new Date("TIMESTAMP"), + * // LastUpdatedAt: new Date("TIMESTAMP"), + * // Tags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param CreateEventTriggerCommandInput - {@link CreateEventTriggerCommandInput} + * @returns {@link CreateEventTriggerCommandOutput} + * @see {@link CreateEventTriggerCommandInput} for command's `input` shape. + * @see {@link CreateEventTriggerCommandOutput} for command's `response` shape. + * @see {@link CustomerProfilesClientResolvedConfig | config} for CustomerProfilesClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient access to perform this action.

+ * + * @throws {@link BadRequestException} (client fault) + *

The input you provided is invalid.

+ * + * @throws {@link InternalServerException} (server fault) + *

An internal service error occurred.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The requested resource does not exist, or access was denied.

+ * + * @throws {@link ThrottlingException} (client fault) + *

You exceeded the maximum number of requests.

+ * + * @throws {@link CustomerProfilesServiceException} + *

Base exception class for all service exceptions from CustomerProfiles service.

+ * + * @public + */ +export class CreateEventTriggerCommand extends $Command + .classBuilder< + CreateEventTriggerCommandInput, + CreateEventTriggerCommandOutput, + CustomerProfilesClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CustomerProfilesClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CustomerProfiles_20200815", "CreateEventTrigger", {}) + .n("CustomerProfilesClient", "CreateEventTriggerCommand") + .f(CreateEventTriggerRequestFilterSensitiveLog, CreateEventTriggerResponseFilterSensitiveLog) + .ser(se_CreateEventTriggerCommand) + .de(de_CreateEventTriggerCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: CreateEventTriggerRequest; + output: CreateEventTriggerResponse; + }; + sdk: { + input: CreateEventTriggerCommandInput; + output: CreateEventTriggerCommandOutput; + }; + }; +} diff --git a/clients/client-customer-profiles/src/commands/DeleteEventTriggerCommand.ts b/clients/client-customer-profiles/src/commands/DeleteEventTriggerCommand.ts new file mode 100644 index 0000000000000..e805515338730 --- /dev/null +++ b/clients/client-customer-profiles/src/commands/DeleteEventTriggerCommand.ts @@ -0,0 +1,111 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { CustomerProfilesClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CustomerProfilesClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { DeleteEventTriggerRequest, DeleteEventTriggerResponse } from "../models/models_0"; +import { de_DeleteEventTriggerCommand, se_DeleteEventTriggerCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeleteEventTriggerCommand}. + */ +export interface DeleteEventTriggerCommandInput extends DeleteEventTriggerRequest {} +/** + * @public + * + * The output of {@link DeleteEventTriggerCommand}. + */ +export interface DeleteEventTriggerCommandOutput extends DeleteEventTriggerResponse, __MetadataBearer {} + +/** + *

Disable and deletes the Event Trigger.

+ * + *

You cannot delete an Event Trigger with an active Integration associated.

+ *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CustomerProfilesClient, DeleteEventTriggerCommand } from "@aws-sdk/client-customer-profiles"; // ES Modules import + * // const { CustomerProfilesClient, DeleteEventTriggerCommand } = require("@aws-sdk/client-customer-profiles"); // CommonJS import + * const client = new CustomerProfilesClient(config); + * const input = { // DeleteEventTriggerRequest + * DomainName: "STRING_VALUE", // required + * EventTriggerName: "STRING_VALUE", // required + * }; + * const command = new DeleteEventTriggerCommand(input); + * const response = await client.send(command); + * // { // DeleteEventTriggerResponse + * // Message: "STRING_VALUE", // required + * // }; + * + * ``` + * + * @param DeleteEventTriggerCommandInput - {@link DeleteEventTriggerCommandInput} + * @returns {@link DeleteEventTriggerCommandOutput} + * @see {@link DeleteEventTriggerCommandInput} for command's `input` shape. + * @see {@link DeleteEventTriggerCommandOutput} for command's `response` shape. + * @see {@link CustomerProfilesClientResolvedConfig | config} for CustomerProfilesClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient access to perform this action.

+ * + * @throws {@link BadRequestException} (client fault) + *

The input you provided is invalid.

+ * + * @throws {@link InternalServerException} (server fault) + *

An internal service error occurred.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The requested resource does not exist, or access was denied.

+ * + * @throws {@link ThrottlingException} (client fault) + *

You exceeded the maximum number of requests.

+ * + * @throws {@link CustomerProfilesServiceException} + *

Base exception class for all service exceptions from CustomerProfiles service.

+ * + * @public + */ +export class DeleteEventTriggerCommand extends $Command + .classBuilder< + DeleteEventTriggerCommandInput, + DeleteEventTriggerCommandOutput, + CustomerProfilesClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CustomerProfilesClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CustomerProfiles_20200815", "DeleteEventTrigger", {}) + .n("CustomerProfilesClient", "DeleteEventTriggerCommand") + .f(void 0, void 0) + .ser(se_DeleteEventTriggerCommand) + .de(de_DeleteEventTriggerCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DeleteEventTriggerRequest; + output: DeleteEventTriggerResponse; + }; + sdk: { + input: DeleteEventTriggerCommandInput; + output: DeleteEventTriggerCommandOutput; + }; + }; +} diff --git a/clients/client-customer-profiles/src/commands/GetEventTriggerCommand.ts b/clients/client-customer-profiles/src/commands/GetEventTriggerCommand.ts new file mode 100644 index 0000000000000..640841e52fd2c --- /dev/null +++ b/clients/client-customer-profiles/src/commands/GetEventTriggerCommand.ts @@ -0,0 +1,150 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { CustomerProfilesClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CustomerProfilesClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + GetEventTriggerRequest, + GetEventTriggerResponse, + GetEventTriggerResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_GetEventTriggerCommand, se_GetEventTriggerCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetEventTriggerCommand}. + */ +export interface GetEventTriggerCommandInput extends GetEventTriggerRequest {} +/** + * @public + * + * The output of {@link GetEventTriggerCommand}. + */ +export interface GetEventTriggerCommandOutput extends GetEventTriggerResponse, __MetadataBearer {} + +/** + *

Get a specific Event Trigger from the domain.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CustomerProfilesClient, GetEventTriggerCommand } from "@aws-sdk/client-customer-profiles"; // ES Modules import + * // const { CustomerProfilesClient, GetEventTriggerCommand } = require("@aws-sdk/client-customer-profiles"); // CommonJS import + * const client = new CustomerProfilesClient(config); + * const input = { // GetEventTriggerRequest + * DomainName: "STRING_VALUE", // required + * EventTriggerName: "STRING_VALUE", // required + * }; + * const command = new GetEventTriggerCommand(input); + * const response = await client.send(command); + * // { // GetEventTriggerResponse + * // EventTriggerName: "STRING_VALUE", + * // ObjectTypeName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // EventTriggerConditions: [ // EventTriggerConditions + * // { // EventTriggerCondition + * // EventTriggerDimensions: [ // EventTriggerDimensions // required + * // { // EventTriggerDimension + * // ObjectAttributes: [ // ObjectAttributes // required + * // { // ObjectAttribute + * // Source: "STRING_VALUE", + * // FieldName: "STRING_VALUE", + * // ComparisonOperator: "INCLUSIVE" || "EXCLUSIVE" || "CONTAINS" || "BEGINS_WITH" || "ENDS_WITH" || "GREATER_THAN" || "LESS_THAN" || "GREATER_THAN_OR_EQUAL" || "LESS_THAN_OR_EQUAL" || "EQUAL" || "BEFORE" || "AFTER" || "ON" || "BETWEEN" || "NOT_BETWEEN", // required + * // Values: [ // EventTriggerValues // required + * // "STRING_VALUE", + * // ], + * // }, + * // ], + * // }, + * // ], + * // LogicalOperator: "ANY" || "ALL" || "NONE", // required + * // }, + * // ], + * // SegmentFilter: "STRING_VALUE", + * // EventTriggerLimits: { // EventTriggerLimits + * // EventExpiration: Number("long"), + * // Periods: [ // Periods + * // { // Period + * // Unit: "HOURS" || "DAYS" || "WEEKS" || "MONTHS", // required + * // Value: Number("int"), // required + * // MaxInvocationsPerProfile: Number("int"), + * // Unlimited: true || false, + * // }, + * // ], + * // }, + * // CreatedAt: new Date("TIMESTAMP"), + * // LastUpdatedAt: new Date("TIMESTAMP"), + * // Tags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param GetEventTriggerCommandInput - {@link GetEventTriggerCommandInput} + * @returns {@link GetEventTriggerCommandOutput} + * @see {@link GetEventTriggerCommandInput} for command's `input` shape. + * @see {@link GetEventTriggerCommandOutput} for command's `response` shape. + * @see {@link CustomerProfilesClientResolvedConfig | config} for CustomerProfilesClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient access to perform this action.

+ * + * @throws {@link BadRequestException} (client fault) + *

The input you provided is invalid.

+ * + * @throws {@link InternalServerException} (server fault) + *

An internal service error occurred.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The requested resource does not exist, or access was denied.

+ * + * @throws {@link ThrottlingException} (client fault) + *

You exceeded the maximum number of requests.

+ * + * @throws {@link CustomerProfilesServiceException} + *

Base exception class for all service exceptions from CustomerProfiles service.

+ * + * @public + */ +export class GetEventTriggerCommand extends $Command + .classBuilder< + GetEventTriggerCommandInput, + GetEventTriggerCommandOutput, + CustomerProfilesClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CustomerProfilesClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CustomerProfiles_20200815", "GetEventTrigger", {}) + .n("CustomerProfilesClient", "GetEventTriggerCommand") + .f(void 0, GetEventTriggerResponseFilterSensitiveLog) + .ser(se_GetEventTriggerCommand) + .de(de_GetEventTriggerCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: GetEventTriggerRequest; + output: GetEventTriggerResponse; + }; + sdk: { + input: GetEventTriggerCommandInput; + output: GetEventTriggerCommandOutput; + }; + }; +} diff --git a/clients/client-customer-profiles/src/commands/GetIntegrationCommand.ts b/clients/client-customer-profiles/src/commands/GetIntegrationCommand.ts index 9cd7645f1cb11..e4a21544df2ec 100644 --- a/clients/client-customer-profiles/src/commands/GetIntegrationCommand.ts +++ b/clients/client-customer-profiles/src/commands/GetIntegrationCommand.ts @@ -56,6 +56,9 @@ export interface GetIntegrationCommandOutput extends GetIntegrationResponse, __M * // WorkflowId: "STRING_VALUE", * // IsUnstructured: true || false, * // RoleArn: "STRING_VALUE", + * // EventTriggerNames: [ // EventTriggerNames + * // "STRING_VALUE", + * // ], * // }; * * ``` diff --git a/clients/client-customer-profiles/src/commands/ListAccountIntegrationsCommand.ts b/clients/client-customer-profiles/src/commands/ListAccountIntegrationsCommand.ts index 4df4bac1124d9..48090a78e2cca 100644 --- a/clients/client-customer-profiles/src/commands/ListAccountIntegrationsCommand.ts +++ b/clients/client-customer-profiles/src/commands/ListAccountIntegrationsCommand.ts @@ -60,6 +60,9 @@ export interface ListAccountIntegrationsCommandOutput extends ListAccountIntegra * // WorkflowId: "STRING_VALUE", * // IsUnstructured: true || false, * // RoleArn: "STRING_VALUE", + * // EventTriggerNames: [ // EventTriggerNames + * // "STRING_VALUE", + * // ], * // }, * // ], * // NextToken: "STRING_VALUE", diff --git a/clients/client-customer-profiles/src/commands/ListEventTriggersCommand.ts b/clients/client-customer-profiles/src/commands/ListEventTriggersCommand.ts new file mode 100644 index 0000000000000..bca6a814938ef --- /dev/null +++ b/clients/client-customer-profiles/src/commands/ListEventTriggersCommand.ts @@ -0,0 +1,125 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { CustomerProfilesClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CustomerProfilesClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + ListEventTriggersRequest, + ListEventTriggersResponse, + ListEventTriggersResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_ListEventTriggersCommand, se_ListEventTriggersCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListEventTriggersCommand}. + */ +export interface ListEventTriggersCommandInput extends ListEventTriggersRequest {} +/** + * @public + * + * The output of {@link ListEventTriggersCommand}. + */ +export interface ListEventTriggersCommandOutput extends ListEventTriggersResponse, __MetadataBearer {} + +/** + *

List all Event Triggers under a domain.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CustomerProfilesClient, ListEventTriggersCommand } from "@aws-sdk/client-customer-profiles"; // ES Modules import + * // const { CustomerProfilesClient, ListEventTriggersCommand } = require("@aws-sdk/client-customer-profiles"); // CommonJS import + * const client = new CustomerProfilesClient(config); + * const input = { // ListEventTriggersRequest + * DomainName: "STRING_VALUE", // required + * NextToken: "STRING_VALUE", + * MaxResults: Number("int"), + * }; + * const command = new ListEventTriggersCommand(input); + * const response = await client.send(command); + * // { // ListEventTriggersResponse + * // Items: [ // EventTriggerSummaryList + * // { // EventTriggerSummaryItem + * // ObjectTypeName: "STRING_VALUE", + * // EventTriggerName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // CreatedAt: new Date("TIMESTAMP"), + * // LastUpdatedAt: new Date("TIMESTAMP"), + * // Tags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListEventTriggersCommandInput - {@link ListEventTriggersCommandInput} + * @returns {@link ListEventTriggersCommandOutput} + * @see {@link ListEventTriggersCommandInput} for command's `input` shape. + * @see {@link ListEventTriggersCommandOutput} for command's `response` shape. + * @see {@link CustomerProfilesClientResolvedConfig | config} for CustomerProfilesClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient access to perform this action.

+ * + * @throws {@link BadRequestException} (client fault) + *

The input you provided is invalid.

+ * + * @throws {@link InternalServerException} (server fault) + *

An internal service error occurred.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The requested resource does not exist, or access was denied.

+ * + * @throws {@link ThrottlingException} (client fault) + *

You exceeded the maximum number of requests.

+ * + * @throws {@link CustomerProfilesServiceException} + *

Base exception class for all service exceptions from CustomerProfiles service.

+ * + * @public + */ +export class ListEventTriggersCommand extends $Command + .classBuilder< + ListEventTriggersCommandInput, + ListEventTriggersCommandOutput, + CustomerProfilesClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CustomerProfilesClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CustomerProfiles_20200815", "ListEventTriggers", {}) + .n("CustomerProfilesClient", "ListEventTriggersCommand") + .f(void 0, ListEventTriggersResponseFilterSensitiveLog) + .ser(se_ListEventTriggersCommand) + .de(de_ListEventTriggersCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListEventTriggersRequest; + output: ListEventTriggersResponse; + }; + sdk: { + input: ListEventTriggersCommandInput; + output: ListEventTriggersCommandOutput; + }; + }; +} diff --git a/clients/client-customer-profiles/src/commands/ListIntegrationsCommand.ts b/clients/client-customer-profiles/src/commands/ListIntegrationsCommand.ts index d9f1f64be81ca..6ac4ca6913b3b 100644 --- a/clients/client-customer-profiles/src/commands/ListIntegrationsCommand.ts +++ b/clients/client-customer-profiles/src/commands/ListIntegrationsCommand.ts @@ -60,6 +60,9 @@ export interface ListIntegrationsCommandOutput extends ListIntegrationsResponse, * // WorkflowId: "STRING_VALUE", * // IsUnstructured: true || false, * // RoleArn: "STRING_VALUE", + * // EventTriggerNames: [ // EventTriggerNames + * // "STRING_VALUE", + * // ], * // }, * // ], * // NextToken: "STRING_VALUE", diff --git a/clients/client-customer-profiles/src/commands/PutIntegrationCommand.ts b/clients/client-customer-profiles/src/commands/PutIntegrationCommand.ts index 1dd8894e27526..b24c4967eed40 100644 --- a/clients/client-customer-profiles/src/commands/PutIntegrationCommand.ts +++ b/clients/client-customer-profiles/src/commands/PutIntegrationCommand.ts @@ -120,6 +120,9 @@ export interface PutIntegrationCommandOutput extends PutIntegrationResponse, __M * "": "STRING_VALUE", * }, * RoleArn: "STRING_VALUE", + * EventTriggerNames: [ // EventTriggerNames + * "STRING_VALUE", + * ], * }; * const command = new PutIntegrationCommand(input); * const response = await client.send(command); @@ -138,6 +141,9 @@ export interface PutIntegrationCommandOutput extends PutIntegrationResponse, __M * // WorkflowId: "STRING_VALUE", * // IsUnstructured: true || false, * // RoleArn: "STRING_VALUE", + * // EventTriggerNames: [ // EventTriggerNames + * // "STRING_VALUE", + * // ], * // }; * * ``` diff --git a/clients/client-customer-profiles/src/commands/UpdateEventTriggerCommand.ts b/clients/client-customer-profiles/src/commands/UpdateEventTriggerCommand.ts new file mode 100644 index 0000000000000..ad7c126c30350 --- /dev/null +++ b/clients/client-customer-profiles/src/commands/UpdateEventTriggerCommand.ts @@ -0,0 +1,184 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { CustomerProfilesClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../CustomerProfilesClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + UpdateEventTriggerRequest, + UpdateEventTriggerRequestFilterSensitiveLog, + UpdateEventTriggerResponse, + UpdateEventTriggerResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_UpdateEventTriggerCommand, se_UpdateEventTriggerCommand } from "../protocols/Aws_restJson1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdateEventTriggerCommand}. + */ +export interface UpdateEventTriggerCommandInput extends UpdateEventTriggerRequest {} +/** + * @public + * + * The output of {@link UpdateEventTriggerCommand}. + */ +export interface UpdateEventTriggerCommandOutput extends UpdateEventTriggerResponse, __MetadataBearer {} + +/** + *

Update the properties of an Event Trigger.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CustomerProfilesClient, UpdateEventTriggerCommand } from "@aws-sdk/client-customer-profiles"; // ES Modules import + * // const { CustomerProfilesClient, UpdateEventTriggerCommand } = require("@aws-sdk/client-customer-profiles"); // CommonJS import + * const client = new CustomerProfilesClient(config); + * const input = { // UpdateEventTriggerRequest + * DomainName: "STRING_VALUE", // required + * EventTriggerName: "STRING_VALUE", // required + * ObjectTypeName: "STRING_VALUE", + * Description: "STRING_VALUE", + * EventTriggerConditions: [ // EventTriggerConditions + * { // EventTriggerCondition + * EventTriggerDimensions: [ // EventTriggerDimensions // required + * { // EventTriggerDimension + * ObjectAttributes: [ // ObjectAttributes // required + * { // ObjectAttribute + * Source: "STRING_VALUE", + * FieldName: "STRING_VALUE", + * ComparisonOperator: "INCLUSIVE" || "EXCLUSIVE" || "CONTAINS" || "BEGINS_WITH" || "ENDS_WITH" || "GREATER_THAN" || "LESS_THAN" || "GREATER_THAN_OR_EQUAL" || "LESS_THAN_OR_EQUAL" || "EQUAL" || "BEFORE" || "AFTER" || "ON" || "BETWEEN" || "NOT_BETWEEN", // required + * Values: [ // EventTriggerValues // required + * "STRING_VALUE", + * ], + * }, + * ], + * }, + * ], + * LogicalOperator: "ANY" || "ALL" || "NONE", // required + * }, + * ], + * SegmentFilter: "STRING_VALUE", + * EventTriggerLimits: { // EventTriggerLimits + * EventExpiration: Number("long"), + * Periods: [ // Periods + * { // Period + * Unit: "HOURS" || "DAYS" || "WEEKS" || "MONTHS", // required + * Value: Number("int"), // required + * MaxInvocationsPerProfile: Number("int"), + * Unlimited: true || false, + * }, + * ], + * }, + * }; + * const command = new UpdateEventTriggerCommand(input); + * const response = await client.send(command); + * // { // UpdateEventTriggerResponse + * // EventTriggerName: "STRING_VALUE", + * // ObjectTypeName: "STRING_VALUE", + * // Description: "STRING_VALUE", + * // EventTriggerConditions: [ // EventTriggerConditions + * // { // EventTriggerCondition + * // EventTriggerDimensions: [ // EventTriggerDimensions // required + * // { // EventTriggerDimension + * // ObjectAttributes: [ // ObjectAttributes // required + * // { // ObjectAttribute + * // Source: "STRING_VALUE", + * // FieldName: "STRING_VALUE", + * // ComparisonOperator: "INCLUSIVE" || "EXCLUSIVE" || "CONTAINS" || "BEGINS_WITH" || "ENDS_WITH" || "GREATER_THAN" || "LESS_THAN" || "GREATER_THAN_OR_EQUAL" || "LESS_THAN_OR_EQUAL" || "EQUAL" || "BEFORE" || "AFTER" || "ON" || "BETWEEN" || "NOT_BETWEEN", // required + * // Values: [ // EventTriggerValues // required + * // "STRING_VALUE", + * // ], + * // }, + * // ], + * // }, + * // ], + * // LogicalOperator: "ANY" || "ALL" || "NONE", // required + * // }, + * // ], + * // SegmentFilter: "STRING_VALUE", + * // EventTriggerLimits: { // EventTriggerLimits + * // EventExpiration: Number("long"), + * // Periods: [ // Periods + * // { // Period + * // Unit: "HOURS" || "DAYS" || "WEEKS" || "MONTHS", // required + * // Value: Number("int"), // required + * // MaxInvocationsPerProfile: Number("int"), + * // Unlimited: true || false, + * // }, + * // ], + * // }, + * // CreatedAt: new Date("TIMESTAMP"), + * // LastUpdatedAt: new Date("TIMESTAMP"), + * // Tags: { // TagMap + * // "": "STRING_VALUE", + * // }, + * // }; + * + * ``` + * + * @param UpdateEventTriggerCommandInput - {@link UpdateEventTriggerCommandInput} + * @returns {@link UpdateEventTriggerCommandOutput} + * @see {@link UpdateEventTriggerCommandInput} for command's `input` shape. + * @see {@link UpdateEventTriggerCommandOutput} for command's `response` shape. + * @see {@link CustomerProfilesClientResolvedConfig | config} for CustomerProfilesClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You do not have sufficient access to perform this action.

+ * + * @throws {@link BadRequestException} (client fault) + *

The input you provided is invalid.

+ * + * @throws {@link InternalServerException} (server fault) + *

An internal service error occurred.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The requested resource does not exist, or access was denied.

+ * + * @throws {@link ThrottlingException} (client fault) + *

You exceeded the maximum number of requests.

+ * + * @throws {@link CustomerProfilesServiceException} + *

Base exception class for all service exceptions from CustomerProfiles service.

+ * + * @public + */ +export class UpdateEventTriggerCommand extends $Command + .classBuilder< + UpdateEventTriggerCommandInput, + UpdateEventTriggerCommandOutput, + CustomerProfilesClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CustomerProfilesClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("CustomerProfiles_20200815", "UpdateEventTrigger", {}) + .n("CustomerProfilesClient", "UpdateEventTriggerCommand") + .f(UpdateEventTriggerRequestFilterSensitiveLog, UpdateEventTriggerResponseFilterSensitiveLog) + .ser(se_UpdateEventTriggerCommand) + .de(de_UpdateEventTriggerCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: UpdateEventTriggerRequest; + output: UpdateEventTriggerResponse; + }; + sdk: { + input: UpdateEventTriggerCommandInput; + output: UpdateEventTriggerCommandOutput; + }; + }; +} diff --git a/clients/client-customer-profiles/src/commands/index.ts b/clients/client-customer-profiles/src/commands/index.ts index 3fc679176eb88..cfcb0300cff33 100644 --- a/clients/client-customer-profiles/src/commands/index.ts +++ b/clients/client-customer-profiles/src/commands/index.ts @@ -5,6 +5,7 @@ export * from "./BatchGetProfileCommand"; export * from "./CreateCalculatedAttributeDefinitionCommand"; export * from "./CreateDomainCommand"; export * from "./CreateEventStreamCommand"; +export * from "./CreateEventTriggerCommand"; export * from "./CreateIntegrationWorkflowCommand"; export * from "./CreateProfileCommand"; export * from "./CreateSegmentDefinitionCommand"; @@ -13,6 +14,7 @@ export * from "./CreateSegmentSnapshotCommand"; export * from "./DeleteCalculatedAttributeDefinitionCommand"; export * from "./DeleteDomainCommand"; export * from "./DeleteEventStreamCommand"; +export * from "./DeleteEventTriggerCommand"; export * from "./DeleteIntegrationCommand"; export * from "./DeleteProfileCommand"; export * from "./DeleteProfileKeyCommand"; @@ -26,6 +28,7 @@ export * from "./GetCalculatedAttributeDefinitionCommand"; export * from "./GetCalculatedAttributeForProfileCommand"; export * from "./GetDomainCommand"; export * from "./GetEventStreamCommand"; +export * from "./GetEventTriggerCommand"; export * from "./GetIdentityResolutionJobCommand"; export * from "./GetIntegrationCommand"; export * from "./GetMatchesCommand"; @@ -43,6 +46,7 @@ export * from "./ListCalculatedAttributeDefinitionsCommand"; export * from "./ListCalculatedAttributesForProfileCommand"; export * from "./ListDomainsCommand"; export * from "./ListEventStreamsCommand"; +export * from "./ListEventTriggersCommand"; export * from "./ListIdentityResolutionJobsCommand"; export * from "./ListIntegrationsCommand"; export * from "./ListObjectTypeAttributesCommand"; @@ -63,4 +67,5 @@ export * from "./TagResourceCommand"; export * from "./UntagResourceCommand"; export * from "./UpdateCalculatedAttributeDefinitionCommand"; export * from "./UpdateDomainCommand"; +export * from "./UpdateEventTriggerCommand"; export * from "./UpdateProfileCommand"; diff --git a/clients/client-customer-profiles/src/models/models_0.ts b/clients/client-customer-profiles/src/models/models_0.ts index af17003997d14..fca7945b2596b 100644 --- a/clients/client-customer-profiles/src/models/models_0.ts +++ b/clients/client-customer-profiles/src/models/models_0.ts @@ -1224,7 +1224,8 @@ export const FilterDimensionType = { export type FilterDimensionType = (typeof FilterDimensionType)[keyof typeof FilterDimensionType]; /** - *

Object that defines how to filter the incoming objects for the calculated attribute.

+ *

Object that defines how to filter the incoming objects for the calculated + * attribute.

* @public */ export interface FilterAttributeDimension { @@ -1499,7 +1500,8 @@ export interface RangeOverride { */ export interface ConditionOverrides { /** - *

The relative time period over which data is included in the aggregation for this override.

+ *

The relative time period over which data is included in the aggregation for this + * override.

* @public */ Range?: RangeOverride | undefined; @@ -1528,7 +1530,8 @@ export interface BatchGetCalculatedAttributeForProfileRequest { ProfileIds: string[] | undefined; /** - *

Overrides the condition block within the original calculated attribute definition.

+ *

Overrides the condition block within the original calculated attribute + * definition.

* @public */ ConditionOverrides?: ConditionOverrides | undefined; @@ -1552,7 +1555,8 @@ export interface CalculatedAttributeValue { DisplayName?: string | undefined; /** - *

Indicates whether the calculated attribute's value is based on partial data. If the data is partial, it is set to true.

+ *

Indicates whether the calculated attribute's value is based on partial data. If the data + * is partial, it is set to true.

* @public */ IsDataPartial?: string | undefined; @@ -1611,7 +1615,8 @@ export interface BatchGetCalculatedAttributeForProfileResponse { CalculatedAttributeValues?: CalculatedAttributeValue[] | undefined; /** - *

Overrides the condition block within the original calculated attribute definition.

+ *

Overrides the condition block within the original calculated attribute + * definition.

* @public */ ConditionOverrides?: ConditionOverrides | undefined; @@ -1898,7 +1903,8 @@ export interface Profile { */ export interface BatchGetProfileResponse { /** - *

For information about the errors that are common to all actions, see Common Errors.

+ *

For information about the errors that are common to all actions, see Common + * Errors.

* @public */ Errors?: BatchGetProfileError[] | undefined; @@ -2008,6 +2014,33 @@ export interface ListCalculatedAttributeForProfileItem { Value?: string | undefined; } +/** + * @public + * @enum + */ +export const ComparisonOperator = { + AFTER: "AFTER", + BEFORE: "BEFORE", + BEGINS_WITH: "BEGINS_WITH", + BETWEEN: "BETWEEN", + CONTAINS: "CONTAINS", + ENDS_WITH: "ENDS_WITH", + EQUAL: "EQUAL", + EXCLUSIVE: "EXCLUSIVE", + GREATER_THAN: "GREATER_THAN", + GREATER_THAN_OR_EQUAL: "GREATER_THAN_OR_EQUAL", + INCLUSIVE: "INCLUSIVE", + LESS_THAN: "LESS_THAN", + LESS_THAN_OR_EQUAL: "LESS_THAN_OR_EQUAL", + NOT_BETWEEN: "NOT_BETWEEN", + ON: "ON", +} as const; + +/** + * @public + */ +export type ComparisonOperator = (typeof ComparisonOperator)[keyof typeof ComparisonOperator]; + /** * @public * @enum @@ -2164,7 +2197,8 @@ export type Include = (typeof Include)[keyof typeof Include]; */ export interface Filter { /** - *

Define whether to include or exclude objects for Calculated Attributed calculation that fit the filter groups criteria.

+ *

Define whether to include or exclude objects for Calculated Attributed calculation that + * fit the filter groups criteria.

* @public */ Include: Include | undefined; @@ -2239,7 +2273,8 @@ export interface CreateCalculatedAttributeDefinitionRequest { Conditions?: Conditions | undefined; /** - *

Defines how to filter incoming objects to include part of the Calculated Attribute.

+ *

Defines how to filter incoming objects to include part of the Calculated + * Attribute.

* @public */ Filter?: Filter | undefined; @@ -2871,6 +2906,262 @@ export interface CreateEventStreamResponse { Tags?: Record | undefined; } +/** + *

The criteria that a specific object attribute must meet to trigger the destination.

+ * @public + */ +export interface ObjectAttribute { + /** + *

An attribute contained within a source object.

+ * @public + */ + Source?: string | undefined; + + /** + *

A field defined within an object type.

+ * @public + */ + FieldName?: string | undefined; + + /** + *

The operator used to compare an attribute against a list of values.

+ * @public + */ + ComparisonOperator: ComparisonOperator | undefined; + + /** + *

A list of attribute values used for comparison.

+ * @public + */ + Values: string[] | undefined; +} + +/** + *

A specific event dimension to be assessed.

+ * @public + */ +export interface EventTriggerDimension { + /** + *

A list of object attributes to be evaluated.

+ * @public + */ + ObjectAttributes: ObjectAttribute[] | undefined; +} + +/** + * @public + * @enum + */ +export const EventTriggerLogicalOperator = { + ALL: "ALL", + ANY: "ANY", + NONE: "NONE", +} as const; + +/** + * @public + */ +export type EventTriggerLogicalOperator = + (typeof EventTriggerLogicalOperator)[keyof typeof EventTriggerLogicalOperator]; + +/** + *

Specifies the circumstances under which the event should trigger the destination.

+ * @public + */ +export interface EventTriggerCondition { + /** + *

A list of dimensions to be evaluated for the event.

+ * @public + */ + EventTriggerDimensions: EventTriggerDimension[] | undefined; + + /** + *

The operator used to combine multiple dimensions.

+ * @public + */ + LogicalOperator: EventTriggerLogicalOperator | undefined; +} + +/** + * @public + * @enum + */ +export const PeriodUnit = { + DAYS: "DAYS", + HOURS: "HOURS", + MONTHS: "MONTHS", + WEEKS: "WEEKS", +} as const; + +/** + * @public + */ +export type PeriodUnit = (typeof PeriodUnit)[keyof typeof PeriodUnit]; + +/** + *

Defines a limit and the time period during which it is enforced.

+ * @public + */ +export interface Period { + /** + *

The unit of time.

+ * @public + */ + Unit: PeriodUnit | undefined; + + /** + *

The amount of time of the specified unit.

+ * @public + */ + Value: number | undefined; + + /** + *

The maximum allowed number of destination invocations per profile.

+ * @public + */ + MaxInvocationsPerProfile?: number | undefined; + + /** + *

If set to true, there is no limit on the number of destination invocations per profile. The default is false.

+ * @public + */ + Unlimited?: boolean | undefined; +} + +/** + *

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

+ * @public + */ +export interface EventTriggerLimits { + /** + *

In milliseconds. Specifies that an event will only trigger the destination if it is processed within a certain latency period.

+ * @public + */ + EventExpiration?: number | undefined; + + /** + *

A list of time periods during which the limits apply.

+ * @public + */ + Periods?: Period[] | undefined; +} + +/** + * @public + */ +export interface CreateEventTriggerRequest { + /** + *

The unique name of the domain.

+ * @public + */ + DomainName: string | undefined; + + /** + *

The unique name of the event trigger.

+ * @public + */ + EventTriggerName: string | undefined; + + /** + *

The unique name of the object type.

+ * @public + */ + ObjectTypeName: string | undefined; + + /** + *

The description of the event trigger.

+ * @public + */ + Description?: string | undefined; + + /** + *

A list of conditions that determine when an event should trigger the destination.

+ * @public + */ + EventTriggerConditions: EventTriggerCondition[] | undefined; + + /** + *

The destination is triggered only for profiles that meet the criteria of a segment + * definition.

+ * @public + */ + SegmentFilter?: string | undefined; + + /** + *

Defines limits controlling whether an event triggers the destination, based on ingestion + * latency and the number of invocations per profile over specific time periods.

+ * @public + */ + EventTriggerLimits?: EventTriggerLimits | undefined; + + /** + *

An array of key-value pairs to apply to this resource.

+ * @public + */ + Tags?: Record | undefined; +} + +/** + * @public + */ +export interface CreateEventTriggerResponse { + /** + *

The unique name of the event trigger.

+ * @public + */ + EventTriggerName?: string | undefined; + + /** + *

The unique name of the object type.

+ * @public + */ + ObjectTypeName?: string | undefined; + + /** + *

The description of the event trigger.

+ * @public + */ + Description?: string | undefined; + + /** + *

A list of conditions that determine when an event should trigger the destination.

+ * @public + */ + EventTriggerConditions?: EventTriggerCondition[] | undefined; + + /** + *

The destination is triggered only for profiles that meet the criteria of a segment + * definition.

+ * @public + */ + SegmentFilter?: string | undefined; + + /** + *

Defines limits controlling whether an event triggers the destination, based on ingestion + * latency and the number of invocations per profile over specific time periods.

+ * @public + */ + EventTriggerLimits?: EventTriggerLimits | undefined; + + /** + *

The timestamp of when the event trigger was created.

+ * @public + */ + CreatedAt?: Date | undefined; + + /** + *

The timestamp of when the event trigger was most recently updated.

+ * @public + */ + LastUpdatedAt?: Date | undefined; + + /** + *

An array of key-value pairs to apply to this resource.

+ * @public + */ + Tags?: Record | undefined; +} + /** *

Configuration data for integration workflow.

* @public @@ -3122,7 +3413,8 @@ export interface CreateProfileResponse { } /** - *

Object that segments on various Customer profile's fields that are larger than normal.

+ *

Object that segments on various Customer profile's fields that are larger than + * normal.

* @public */ export interface ExtraLengthValueProfileDimension { @@ -3465,7 +3757,8 @@ export interface CreateSegmentDefinitionRequest { Description?: string | undefined; /** - *

Specifies the base segments and dimensions for a segment definition along with their respective relationship.

+ *

Specifies the base segments and dimensions for a segment definition along with their + * respective relationship.

* @public */ SegmentGroups: SegmentGroup | undefined; @@ -3564,7 +3857,9 @@ export interface CreateSegmentEstimateResponse { DomainName?: string | undefined; /** - *

A unique identifier for the resource. The value can be passed to GetSegmentEstimate to retrieve the result of segment estimate status.

+ *

A unique identifier for the resource. The value can be passed to + * GetSegmentEstimate to retrieve the result of segment estimate + * status.

* @public */ EstimateId?: string | undefined; @@ -3614,19 +3909,22 @@ export interface CreateSegmentSnapshotRequest { DataFormat: DataFormat | undefined; /** - *

The Amazon Resource Name (ARN) of the KMS key used to encrypt the exported segment.

+ *

The Amazon Resource Name (ARN) of the KMS key used to encrypt the exported + * segment.

* @public */ EncryptionKey?: string | undefined; /** - *

The Amazon Resource Name (ARN) of the IAM role that allows Customer Profiles service principal to assume the role for conducting KMS and S3 operations.

+ *

The Amazon Resource Name (ARN) of the IAM role that allows Customer Profiles service + * principal to assume the role for conducting KMS and S3 operations.

* @public */ RoleArn?: string | undefined; /** - *

The destination to which the segment will be exported. This field must be provided if the request is not submitted from the Amazon Connect Admin Website.

+ *

The destination to which the segment will be exported. This field must be provided if + * the request is not submitted from the Amazon Connect Admin Website.

* @public */ DestinationUri?: string | undefined; @@ -3709,6 +4007,34 @@ export interface DeleteEventStreamRequest { */ export interface DeleteEventStreamResponse {} +/** + * @public + */ +export interface DeleteEventTriggerRequest { + /** + *

The unique name of the domain.

+ * @public + */ + DomainName: string | undefined; + + /** + *

The unique name of the event trigger.

+ * @public + */ + EventTriggerName: string | undefined; +} + +/** + * @public + */ +export interface DeleteEventTriggerResponse { + /** + *

A message that indicates the delete request is done.

+ * @public + */ + Message: string | undefined; +} + /** * @public */ @@ -4514,6 +4840,83 @@ export interface GetEventStreamResponse { Tags?: Record | undefined; } +/** + * @public + */ +export interface GetEventTriggerRequest { + /** + *

The unique name of the domain.

+ * @public + */ + DomainName: string | undefined; + + /** + *

The unique name of the event trigger.

+ * @public + */ + EventTriggerName: string | undefined; +} + +/** + * @public + */ +export interface GetEventTriggerResponse { + /** + *

The unique name of the event trigger.

+ * @public + */ + EventTriggerName?: string | undefined; + + /** + *

The unique name of the object type.

+ * @public + */ + ObjectTypeName?: string | undefined; + + /** + *

The description of the event trigger.

+ * @public + */ + Description?: string | undefined; + + /** + *

A list of conditions that determine when an event should trigger the destination.

+ * @public + */ + EventTriggerConditions?: EventTriggerCondition[] | undefined; + + /** + *

The destination is triggered only for profiles that meet the criteria of a segment + * definition.

+ * @public + */ + SegmentFilter?: string | undefined; + + /** + *

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

+ * @public + */ + EventTriggerLimits?: EventTriggerLimits | undefined; + + /** + *

The timestamp of when the event trigger was created.

+ * @public + */ + CreatedAt?: Date | undefined; + + /** + *

The timestamp of when the event trigger was most recently updated.

+ * @public + */ + LastUpdatedAt?: Date | undefined; + + /** + *

An array of key-value pairs to apply to this resource.

+ * @public + */ + Tags?: Record | undefined; +} + /** * @public */ @@ -4796,6 +5199,13 @@ export interface GetIntegrationResponse { * @public */ RoleArn?: string | undefined; + + /** + *

A list of unique names for active event triggers associated with the integration. This + * list would be empty if no Event Trigger is associated with the integration.

+ * @public + */ + EventTriggerNames?: string[] | undefined; } /** @@ -5163,7 +5573,8 @@ export interface GetSegmentEstimateResponse { DomainName?: string | undefined; /** - *

The QueryId which is the same as the value passed in QueryId.

+ *

The QueryId which is the same as the value passed in + * QueryId.

* @public */ EstimateId?: string | undefined; @@ -5295,7 +5706,8 @@ export interface GetSegmentMembershipResponse { Profiles?: ProfileQueryResult[] | undefined; /** - *

An array of maps where each contains a response per profile failed for the request.

+ *

An array of maps where each contains a response per profile failed for the + * request.

* @public */ Failures?: ProfileQueryFailures[] | undefined; @@ -5368,19 +5780,22 @@ export interface GetSegmentSnapshotResponse { DataFormat: DataFormat | undefined; /** - *

The Amazon Resource Name (ARN) of the KMS key used to encrypt the exported segment.

+ *

The Amazon Resource Name (ARN) of the KMS key used to encrypt the exported + * segment.

* @public */ EncryptionKey?: string | undefined; /** - *

The Amazon Resource Name (ARN) of the IAM role that allows Customer Profiles service principal to assume the role for conducting KMS and S3 operations.

+ *

The Amazon Resource Name (ARN) of the IAM role that allows Customer Profiles service + * principal to assume the role for conducting KMS and S3 operations.

* @public */ RoleArn?: string | undefined; /** - *

The destination to which the segment will be exported. This field must be provided if the request is not submitted from the Amazon Connect Admin Website.

+ *

The destination to which the segment will be exported. This field must be provided if + * the request is not submitted from the Amazon Connect Admin Website.

* @public */ DestinationUri?: string | undefined; @@ -5752,6 +6167,12 @@ export interface ListIntegrationItem { * @public */ RoleArn?: string | undefined; + + /** + *

A list of unique names for active event triggers associated with the integration.

+ * @public + */ + EventTriggerNames?: string[] | undefined; } /** @@ -6038,6 +6459,88 @@ export interface ListEventStreamsResponse { NextToken?: string | undefined; } +/** + * @public + */ +export interface ListEventTriggersRequest { + /** + *

The unique name of the domain.

+ * @public + */ + DomainName: string | undefined; + + /** + *

The pagination token to use with ListEventTriggers.

+ * @public + */ + NextToken?: string | undefined; + + /** + *

The maximum number of results to return per page.

+ * @public + */ + MaxResults?: number | undefined; +} + +/** + *

The summary of the event trigger.

+ * @public + */ +export interface EventTriggerSummaryItem { + /** + *

The unique name of the object type.

+ * @public + */ + ObjectTypeName?: string | undefined; + + /** + *

The unique name of the event trigger.

+ * @public + */ + EventTriggerName?: string | undefined; + + /** + *

The description of the event trigger.

+ * @public + */ + Description?: string | undefined; + + /** + *

The timestamp of when the event trigger was created.

+ * @public + */ + CreatedAt?: Date | undefined; + + /** + *

The timestamp of when the event trigger was most recently updated.

+ * @public + */ + LastUpdatedAt?: Date | undefined; + + /** + *

An array of key-value pairs to apply to this resource.

+ * @public + */ + Tags?: Record | undefined; +} + +/** + * @public + */ +export interface ListEventTriggersResponse { + /** + *

The list of Event Triggers.

+ * @public + */ + Items?: EventTriggerSummaryItem[] | undefined; + + /** + *

The pagination token from the previous call to ListEventTriggers.

+ * @public + */ + NextToken?: string | undefined; +} + /** * @public */ @@ -7053,6 +7556,12 @@ export interface PutIntegrationRequest { * @public */ RoleArn?: string | undefined; + + /** + *

A list of unique names for active event triggers associated with the integration.

+ * @public + */ + EventTriggerNames?: string[] | undefined; } /** @@ -7123,6 +7632,13 @@ export interface PutIntegrationResponse { * @public */ RoleArn?: string | undefined; + + /** + *

A list of unique names for active event triggers associated with the integration. This + * list would be empty if no Event Trigger is associated with the integration.

+ * @public + */ + EventTriggerNames?: string[] | undefined; } /** @@ -7733,6 +8249,114 @@ export interface UpdateDomainResponse { Tags?: Record | undefined; } +/** + * @public + */ +export interface UpdateEventTriggerRequest { + /** + *

The unique name of the domain.

+ * @public + */ + DomainName: string | undefined; + + /** + *

The unique name of the event trigger.

+ * @public + */ + EventTriggerName: string | undefined; + + /** + *

The unique name of the object type.

+ * @public + */ + ObjectTypeName?: string | undefined; + + /** + *

The description of the event trigger.

+ * @public + */ + Description?: string | undefined; + + /** + *

A list of conditions that determine when an event should trigger the destination.

+ * @public + */ + EventTriggerConditions?: EventTriggerCondition[] | undefined; + + /** + *

The destination is triggered only for profiles that meet the criteria of a segment + * definition.

+ * @public + */ + SegmentFilter?: string | undefined; + + /** + *

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

+ * @public + */ + EventTriggerLimits?: EventTriggerLimits | undefined; +} + +/** + * @public + */ +export interface UpdateEventTriggerResponse { + /** + *

The unique name of the event trigger.

+ * @public + */ + EventTriggerName?: string | undefined; + + /** + *

The unique name of the object type.

+ * @public + */ + ObjectTypeName?: string | undefined; + + /** + *

The description of the event trigger.

+ * @public + */ + Description?: string | undefined; + + /** + *

A list of conditions that determine when an event should trigger the destination.

+ * @public + */ + EventTriggerConditions?: EventTriggerCondition[] | undefined; + + /** + *

The destination is triggered only for profiles that meet the criteria of a segment + * definition.

+ * @public + */ + SegmentFilter?: string | undefined; + + /** + *

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

+ * @public + */ + EventTriggerLimits?: EventTriggerLimits | undefined; + + /** + *

The timestamp of when the event trigger was created.

+ * @public + */ + CreatedAt?: Date | undefined; + + /** + *

The timestamp of when the event trigger was most recently updated.

+ * @public + */ + LastUpdatedAt?: Date | undefined; + + /** + *

An array of key-value pairs to apply to this resource.

+ * @public + */ + Tags?: Record | undefined; +} + /** *

Updates associated with the address properties of a customer profile.

* @public @@ -8117,6 +8741,24 @@ export const CreateCalculatedAttributeDefinitionResponseFilterSensitiveLog = ( ...(obj.Statistic && { Statistic: SENSITIVE_STRING }), }); +/** + * @internal + */ +export const CreateEventTriggerRequestFilterSensitiveLog = (obj: CreateEventTriggerRequest): any => ({ + ...obj, + ...(obj.Description && { Description: SENSITIVE_STRING }), + ...(obj.EventTriggerConditions && { EventTriggerConditions: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const CreateEventTriggerResponseFilterSensitiveLog = (obj: CreateEventTriggerResponse): any => ({ + ...obj, + ...(obj.Description && { Description: SENSITIVE_STRING }), + ...(obj.EventTriggerConditions && { EventTriggerConditions: SENSITIVE_STRING }), +}); + /** * @internal */ @@ -8278,6 +8920,15 @@ export const GetCalculatedAttributeDefinitionResponseFilterSensitiveLog = ( ...(obj.AttributeDetails && { AttributeDetails: SENSITIVE_STRING }), }); +/** + * @internal + */ +export const GetEventTriggerResponseFilterSensitiveLog = (obj: GetEventTriggerResponse): any => ({ + ...obj, + ...(obj.Description && { Description: SENSITIVE_STRING }), + ...(obj.EventTriggerConditions && { EventTriggerConditions: SENSITIVE_STRING }), +}); + /** * @internal */ @@ -8334,6 +8985,14 @@ export const ListCalculatedAttributeDefinitionsResponseFilterSensitiveLog = ( ...(obj.Items && { Items: SENSITIVE_STRING }), }); +/** + * @internal + */ +export const ListEventTriggersResponseFilterSensitiveLog = (obj: ListEventTriggersResponse): any => ({ + ...obj, + ...(obj.Items && { Items: SENSITIVE_STRING }), +}); + /** * @internal */ @@ -8442,6 +9101,24 @@ export const UpdateCalculatedAttributeDefinitionResponseFilterSensitiveLog = ( ...(obj.AttributeDetails && { AttributeDetails: SENSITIVE_STRING }), }); +/** + * @internal + */ +export const UpdateEventTriggerRequestFilterSensitiveLog = (obj: UpdateEventTriggerRequest): any => ({ + ...obj, + ...(obj.Description && { Description: SENSITIVE_STRING }), + ...(obj.EventTriggerConditions && { EventTriggerConditions: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const UpdateEventTriggerResponseFilterSensitiveLog = (obj: UpdateEventTriggerResponse): any => ({ + ...obj, + ...(obj.Description && { Description: SENSITIVE_STRING }), + ...(obj.EventTriggerConditions && { EventTriggerConditions: SENSITIVE_STRING }), +}); + /** * @internal */ diff --git a/clients/client-customer-profiles/src/pagination/ListEventTriggersPaginator.ts b/clients/client-customer-profiles/src/pagination/ListEventTriggersPaginator.ts new file mode 100644 index 0000000000000..7de48ccb77f9a --- /dev/null +++ b/clients/client-customer-profiles/src/pagination/ListEventTriggersPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { + ListEventTriggersCommand, + ListEventTriggersCommandInput, + ListEventTriggersCommandOutput, +} from "../commands/ListEventTriggersCommand"; +import { CustomerProfilesClient } from "../CustomerProfilesClient"; +import { CustomerProfilesPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListEventTriggers: ( + config: CustomerProfilesPaginationConfiguration, + input: ListEventTriggersCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + CustomerProfilesPaginationConfiguration, + ListEventTriggersCommandInput, + ListEventTriggersCommandOutput +>(CustomerProfilesClient, ListEventTriggersCommand, "NextToken", "NextToken", "MaxResults"); diff --git a/clients/client-customer-profiles/src/pagination/index.ts b/clients/client-customer-profiles/src/pagination/index.ts index c1400ec33e80a..add5a42531ad4 100644 --- a/clients/client-customer-profiles/src/pagination/index.ts +++ b/clients/client-customer-profiles/src/pagination/index.ts @@ -2,6 +2,7 @@ export * from "./GetSimilarProfilesPaginator"; // smithy-typescript generated code export * from "./Interfaces"; export * from "./ListEventStreamsPaginator"; +export * from "./ListEventTriggersPaginator"; export * from "./ListObjectTypeAttributesPaginator"; export * from "./ListRuleBasedMatchesPaginator"; export * from "./ListSegmentDefinitionsPaginator"; diff --git a/clients/client-customer-profiles/src/protocols/Aws_restJson1.ts b/clients/client-customer-profiles/src/protocols/Aws_restJson1.ts index b46a40a429a29..b2793f65b25c1 100644 --- a/clients/client-customer-profiles/src/protocols/Aws_restJson1.ts +++ b/clients/client-customer-profiles/src/protocols/Aws_restJson1.ts @@ -45,6 +45,7 @@ import { } from "../commands/CreateCalculatedAttributeDefinitionCommand"; import { CreateDomainCommandInput, CreateDomainCommandOutput } from "../commands/CreateDomainCommand"; import { CreateEventStreamCommandInput, CreateEventStreamCommandOutput } from "../commands/CreateEventStreamCommand"; +import { CreateEventTriggerCommandInput, CreateEventTriggerCommandOutput } from "../commands/CreateEventTriggerCommand"; import { CreateIntegrationWorkflowCommandInput, CreateIntegrationWorkflowCommandOutput, @@ -68,6 +69,7 @@ import { } from "../commands/DeleteCalculatedAttributeDefinitionCommand"; import { DeleteDomainCommandInput, DeleteDomainCommandOutput } from "../commands/DeleteDomainCommand"; import { DeleteEventStreamCommandInput, DeleteEventStreamCommandOutput } from "../commands/DeleteEventStreamCommand"; +import { DeleteEventTriggerCommandInput, DeleteEventTriggerCommandOutput } from "../commands/DeleteEventTriggerCommand"; import { DeleteIntegrationCommandInput, DeleteIntegrationCommandOutput } from "../commands/DeleteIntegrationCommand"; import { DeleteProfileCommandInput, DeleteProfileCommandOutput } from "../commands/DeleteProfileCommand"; import { DeleteProfileKeyCommandInput, DeleteProfileKeyCommandOutput } from "../commands/DeleteProfileKeyCommand"; @@ -102,6 +104,7 @@ import { } from "../commands/GetCalculatedAttributeForProfileCommand"; import { GetDomainCommandInput, GetDomainCommandOutput } from "../commands/GetDomainCommand"; import { GetEventStreamCommandInput, GetEventStreamCommandOutput } from "../commands/GetEventStreamCommand"; +import { GetEventTriggerCommandInput, GetEventTriggerCommandOutput } from "../commands/GetEventTriggerCommand"; import { GetIdentityResolutionJobCommandInput, GetIdentityResolutionJobCommandOutput, @@ -143,6 +146,7 @@ import { } from "../commands/ListCalculatedAttributesForProfileCommand"; import { ListDomainsCommandInput, ListDomainsCommandOutput } from "../commands/ListDomainsCommand"; import { ListEventStreamsCommandInput, ListEventStreamsCommandOutput } from "../commands/ListEventStreamsCommand"; +import { ListEventTriggersCommandInput, ListEventTriggersCommandOutput } from "../commands/ListEventTriggersCommand"; import { ListIdentityResolutionJobsCommandInput, ListIdentityResolutionJobsCommandOutput, @@ -193,6 +197,7 @@ import { UpdateCalculatedAttributeDefinitionCommandOutput, } from "../commands/UpdateCalculatedAttributeDefinitionCommand"; import { UpdateDomainCommandInput, UpdateDomainCommandOutput } from "../commands/UpdateDomainCommand"; +import { UpdateEventTriggerCommandInput, UpdateEventTriggerCommandOutput } from "../commands/UpdateEventTriggerCommand"; import { UpdateProfileCommandInput, UpdateProfileCommandOutput } from "../commands/UpdateProfileCommand"; import { CustomerProfilesServiceException as __BaseException } from "../models/CustomerProfilesServiceException"; import { @@ -220,6 +225,10 @@ import { Dimension, EventStreamDestinationDetails, EventStreamSummary, + EventTriggerCondition, + EventTriggerDimension, + EventTriggerLimits, + EventTriggerSummaryItem, ExportingConfig, ExtraLengthValueProfileDimension, FieldSourceProfileIds, @@ -245,10 +254,12 @@ import { MatchingResponse, MatchingRule, MatchItem, + ObjectAttribute, ObjectFilter, ObjectTypeField, ObjectTypeKey, OperatorPropertiesKeys, + Period, ProfileAttributes, ProfileDimension, ProfileQueryFailures, @@ -435,6 +446,35 @@ export const se_CreateEventStreamCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1CreateEventTriggerCommand + */ +export const se_CreateEventTriggerCommand = async ( + input: CreateEventTriggerCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/domains/{DomainName}/event-triggers/{EventTriggerName}"); + b.p("DomainName", () => input.DomainName!, "{DomainName}", false); + b.p("EventTriggerName", () => input.EventTriggerName!, "{EventTriggerName}", false); + let body: any; + body = JSON.stringify( + take(input, { + Description: [], + EventTriggerConditions: (_) => _json(_), + EventTriggerLimits: (_) => _json(_), + ObjectTypeName: [], + SegmentFilter: [], + Tags: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1CreateIntegrationWorkflowCommand */ @@ -634,6 +674,23 @@ export const se_DeleteEventStreamCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1DeleteEventTriggerCommand + */ +export const se_DeleteEventTriggerCommand = async ( + input: DeleteEventTriggerCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/domains/{DomainName}/event-triggers/{EventTriggerName}"); + b.p("DomainName", () => input.DomainName!, "{DomainName}", false); + b.p("EventTriggerName", () => input.EventTriggerName!, "{EventTriggerName}", false); + let body: any; + b.m("DELETE").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1DeleteIntegrationCommand */ @@ -897,6 +954,23 @@ export const se_GetEventStreamCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1GetEventTriggerCommand + */ +export const se_GetEventTriggerCommand = async ( + input: GetEventTriggerCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/domains/{DomainName}/event-triggers/{EventTriggerName}"); + b.p("DomainName", () => input.DomainName!, "{DomainName}", false); + b.p("EventTriggerName", () => input.EventTriggerName!, "{EventTriggerName}", false); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1GetIdentityResolutionJobCommand */ @@ -1240,6 +1314,26 @@ export const se_ListEventStreamsCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1ListEventTriggersCommand + */ +export const se_ListEventTriggersCommand = async ( + input: ListEventTriggersCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/domains/{DomainName}/event-triggers"); + b.p("DomainName", () => input.DomainName!, "{DomainName}", false); + const query: any = map({ + [_nt]: [, input[_NT]!], + [_mr]: [() => input.MaxResults !== void 0, () => input[_MR]!.toString()], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1ListIdentityResolutionJobsCommand */ @@ -1514,6 +1608,7 @@ export const se_PutIntegrationCommand = async ( let body: any; body = JSON.stringify( take(input, { + EventTriggerNames: (_) => _json(_), FlowDefinition: (_) => se_FlowDefinition(_, context), ObjectTypeName: [], ObjectTypeNames: (_) => _json(_), @@ -1709,6 +1804,34 @@ export const se_UpdateDomainCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1UpdateEventTriggerCommand + */ +export const se_UpdateEventTriggerCommand = async ( + input: UpdateEventTriggerCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/domains/{DomainName}/event-triggers/{EventTriggerName}"); + b.p("DomainName", () => input.DomainName!, "{DomainName}", false); + b.p("EventTriggerName", () => input.EventTriggerName!, "{EventTriggerName}", false); + let body: any; + body = JSON.stringify( + take(input, { + Description: [], + EventTriggerConditions: (_) => _json(_), + EventTriggerLimits: (_) => _json(_), + ObjectTypeName: [], + SegmentFilter: [], + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1UpdateProfileCommand */ @@ -1903,6 +2026,35 @@ export const de_CreateEventStreamCommand = async ( return contents; }; +/** + * deserializeAws_restJson1CreateEventTriggerCommand + */ +export const de_CreateEventTriggerCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + CreatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + Description: __expectString, + EventTriggerConditions: _json, + EventTriggerLimits: _json, + EventTriggerName: __expectString, + LastUpdatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + ObjectTypeName: __expectString, + SegmentFilter: __expectString, + Tags: _json, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1CreateIntegrationWorkflowCommand */ @@ -2073,6 +2225,27 @@ export const de_DeleteEventStreamCommand = async ( return contents; }; +/** + * deserializeAws_restJson1DeleteEventTriggerCommand + */ +export const de_DeleteEventTriggerCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + Message: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1DeleteIntegrationCommand */ @@ -2372,6 +2545,35 @@ export const de_GetEventStreamCommand = async ( return contents; }; +/** + * deserializeAws_restJson1GetEventTriggerCommand + */ +export const de_GetEventTriggerCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + CreatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + Description: __expectString, + EventTriggerConditions: _json, + EventTriggerLimits: _json, + EventTriggerName: __expectString, + LastUpdatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + ObjectTypeName: __expectString, + SegmentFilter: __expectString, + Tags: _json, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1GetIdentityResolutionJobCommand */ @@ -2420,6 +2622,7 @@ export const de_GetIntegrationCommand = async ( const doc = take(data, { CreatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), DomainName: __expectString, + EventTriggerNames: _json, IsUnstructured: __expectBoolean, LastUpdatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), ObjectTypeName: __expectString, @@ -2811,6 +3014,28 @@ export const de_ListEventStreamsCommand = async ( return contents; }; +/** + * deserializeAws_restJson1ListEventTriggersCommand + */ +export const de_ListEventTriggersCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + Items: (_) => de_EventTriggerSummaryList(_, context), + NextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1ListIdentityResolutionJobsCommand */ @@ -3094,6 +3319,7 @@ export const de_PutIntegrationCommand = async ( const doc = take(data, { CreatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), DomainName: __expectString, + EventTriggerNames: _json, IsUnstructured: __expectBoolean, LastUpdatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), ObjectTypeName: __expectString, @@ -3276,6 +3502,35 @@ export const de_UpdateDomainCommand = async ( return contents; }; +/** + * deserializeAws_restJson1UpdateEventTriggerCommand + */ +export const de_UpdateEventTriggerCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + CreatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + Description: __expectString, + EventTriggerConditions: _json, + EventTriggerLimits: _json, + EventTriggerName: __expectString, + LastUpdatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + ObjectTypeName: __expectString, + SegmentFilter: __expectString, + Tags: _json, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1UpdateProfileCommand */ @@ -3606,6 +3861,20 @@ const se_DimensionList = (input: Dimension[], context: __SerdeContext): any => { // se_EmailList omitted. +// se_EventTriggerCondition omitted. + +// se_EventTriggerConditions omitted. + +// se_EventTriggerDimension omitted. + +// se_EventTriggerDimensions omitted. + +// se_EventTriggerLimits omitted. + +// se_EventTriggerNames omitted. + +// se_EventTriggerValues omitted. + // se_ExportingConfig omitted. /** @@ -3703,6 +3972,10 @@ const se_MatchingRequest = (input: MatchingRequest, context: __SerdeContext): an // se_MatchingRules omitted. +// se_ObjectAttribute omitted. + +// se_ObjectAttributes omitted. + // se_ObjectFilter omitted. // se_Objects omitted. @@ -3715,6 +3988,10 @@ const se_MatchingRequest = (input: MatchingRequest, context: __SerdeContext): an // se_ObjectTypeNames omitted. +// se_Period omitted. + +// se_Periods omitted. + // se_PhoneNumberList omitted. /** @@ -4156,6 +4433,46 @@ const de_EventStreamSummaryList = (output: any, context: __SerdeContext): EventS return retVal; }; +// de_EventTriggerCondition omitted. + +// de_EventTriggerConditions omitted. + +// de_EventTriggerDimension omitted. + +// de_EventTriggerDimensions omitted. + +// de_EventTriggerLimits omitted. + +// de_EventTriggerNames omitted. + +/** + * deserializeAws_restJson1EventTriggerSummaryItem + */ +const de_EventTriggerSummaryItem = (output: any, context: __SerdeContext): EventTriggerSummaryItem => { + return take(output, { + CreatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + Description: __expectString, + EventTriggerName: __expectString, + LastUpdatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + ObjectTypeName: __expectString, + Tags: _json, + }) as any; +}; + +/** + * deserializeAws_restJson1EventTriggerSummaryList + */ +const de_EventTriggerSummaryList = (output: any, context: __SerdeContext): EventTriggerSummaryItem[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_EventTriggerSummaryItem(entry, context); + }); + return retVal; +}; + +// de_EventTriggerValues omitted. + // de_ExportingConfig omitted. // de_ExportingLocation omitted. @@ -4303,6 +4620,7 @@ const de_ListIntegrationItem = (output: any, context: __SerdeContext): ListInteg return take(output, { CreatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), DomainName: __expectString, + EventTriggerNames: _json, IsUnstructured: __expectBoolean, LastUpdatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), ObjectTypeName: __expectString, @@ -4416,6 +4734,10 @@ const de_MatchItem = (output: any, context: __SerdeContext): MatchItem => { }) as any; }; +// de_ObjectAttribute omitted. + +// de_ObjectAttributes omitted. + // de_ObjectTypeField omitted. // de_ObjectTypeKey omitted. @@ -4424,6 +4746,10 @@ const de_MatchItem = (output: any, context: __SerdeContext): MatchItem => { // de_ObjectTypeNames omitted. +// de_Period omitted. + +// de_Periods omitted. + // de_PhoneNumberList omitted. // de_Profile omitted. diff --git a/codegen/sdk-codegen/aws-models/customer-profiles.json b/codegen/sdk-codegen/aws-models/customer-profiles.json index b62f5d09ac8ea..f537785b99ae5 100644 --- a/codegen/sdk-codegen/aws-models/customer-profiles.json +++ b/codegen/sdk-codegen/aws-models/customer-profiles.json @@ -878,7 +878,7 @@ "ConditionOverrides": { "target": "com.amazonaws.customerprofiles#ConditionOverrides", "traits": { - "smithy.api#documentation": "

Overrides the condition block within the original calculated attribute definition.

" + "smithy.api#documentation": "

Overrides the condition block within the original calculated attribute\n definition.

" } } }, @@ -904,7 +904,7 @@ "ConditionOverrides": { "target": "com.amazonaws.customerprofiles#ConditionOverrides", "traits": { - "smithy.api#documentation": "

Overrides the condition block within the original calculated attribute definition.

" + "smithy.api#documentation": "

Overrides the condition block within the original calculated attribute\n definition.

" } } }, @@ -1022,7 +1022,7 @@ "Errors": { "target": "com.amazonaws.customerprofiles#BatchGetProfileErrorList", "traits": { - "smithy.api#documentation": "

For information about the errors that are common to all actions, see Common Errors.

" + "smithy.api#documentation": "

For information about the errors that are common to all actions, see Common\n Errors.

" } }, "Profiles": { @@ -1120,7 +1120,7 @@ "IsDataPartial": { "target": "com.amazonaws.customerprofiles#string1To255", "traits": { - "smithy.api#documentation": "

Indicates whether the calculated attribute's value is based on partial data. If the data is partial, it is set to true.

" + "smithy.api#documentation": "

Indicates whether the calculated attribute's value is based on partial data. If the data\n is partial, it is set to true.

" } }, "ProfileId": { @@ -1161,13 +1161,108 @@ "target": "com.amazonaws.customerprofiles#CalculatedAttributeDimension" } }, + "com.amazonaws.customerprofiles#ComparisonOperator": { + "type": "enum", + "members": { + "INCLUSIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "INCLUSIVE" + } + }, + "EXCLUSIVE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EXCLUSIVE" + } + }, + "CONTAINS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "CONTAINS" + } + }, + "BEGINS_WITH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BEGINS_WITH" + } + }, + "ENDS_WITH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ENDS_WITH" + } + }, + "GREATER_THAN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GREATER_THAN" + } + }, + "LESS_THAN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LESS_THAN" + } + }, + "GREATER_THAN_OR_EQUAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GREATER_THAN_OR_EQUAL" + } + }, + "LESS_THAN_OR_EQUAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LESS_THAN_OR_EQUAL" + } + }, + "EQUAL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EQUAL" + } + }, + "BEFORE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BEFORE" + } + }, + "AFTER": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AFTER" + } + }, + "ON": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ON" + } + }, + "BETWEEN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BETWEEN" + } + }, + "NOT_BETWEEN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_BETWEEN" + } + } + } + }, "com.amazonaws.customerprofiles#ConditionOverrides": { "type": "structure", "members": { "Range": { "target": "com.amazonaws.customerprofiles#RangeOverride", "traits": { - "smithy.api#documentation": "

The relative time period over which data is included in the aggregation for this override.

" + "smithy.api#documentation": "

The relative time period over which data is included in the aggregation for this\n override.

" } } }, @@ -1385,7 +1480,7 @@ "Filter": { "target": "com.amazonaws.customerprofiles#Filter", "traits": { - "smithy.api#documentation": "

Defines how to filter incoming objects to include part of the Calculated Attribute.

" + "smithy.api#documentation": "

Defines how to filter incoming objects to include part of the Calculated\n Attribute.

" } }, "Statistic": { @@ -1719,6 +1814,164 @@ "smithy.api#output": {} } }, + "com.amazonaws.customerprofiles#CreateEventTrigger": { + "type": "operation", + "input": { + "target": "com.amazonaws.customerprofiles#CreateEventTriggerRequest" + }, + "output": { + "target": "com.amazonaws.customerprofiles#CreateEventTriggerResponse" + }, + "errors": [ + { + "target": "com.amazonaws.customerprofiles#AccessDeniedException" + }, + { + "target": "com.amazonaws.customerprofiles#BadRequestException" + }, + { + "target": "com.amazonaws.customerprofiles#InternalServerException" + }, + { + "target": "com.amazonaws.customerprofiles#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.customerprofiles#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Creates an event trigger, which specifies the rules when to perform action based on\n customer's ingested data.

\n

Each event stream can be associated with only one integration in the same region and AWS\n account as the event stream.

", + "smithy.api#http": { + "method": "POST", + "uri": "/domains/{DomainName}/event-triggers/{EventTriggerName}", + "code": 200 + } + } + }, + "com.amazonaws.customerprofiles#CreateEventTriggerRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the domain.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "EventTriggerName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the event trigger.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ObjectTypeName": { + "target": "com.amazonaws.customerprofiles#typeName", + "traits": { + "smithy.api#documentation": "

The unique name of the object type.

", + "smithy.api#required": {} + } + }, + "Description": { + "target": "com.amazonaws.customerprofiles#sensitiveText", + "traits": { + "smithy.api#documentation": "

The description of the event trigger.

" + } + }, + "EventTriggerConditions": { + "target": "com.amazonaws.customerprofiles#EventTriggerConditions", + "traits": { + "smithy.api#documentation": "

A list of conditions that determine when an event should trigger the destination.

", + "smithy.api#required": {} + } + }, + "SegmentFilter": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The destination is triggered only for profiles that meet the criteria of a segment\n definition.

" + } + }, + "EventTriggerLimits": { + "target": "com.amazonaws.customerprofiles#EventTriggerLimits", + "traits": { + "smithy.api#documentation": "

Defines limits controlling whether an event triggers the destination, based on ingestion\n latency and the number of invocations per profile over specific time periods.

" + } + }, + "Tags": { + "target": "com.amazonaws.customerprofiles#TagMap", + "traits": { + "smithy.api#documentation": "

An array of key-value pairs to apply to this resource.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.customerprofiles#CreateEventTriggerResponse": { + "type": "structure", + "members": { + "EventTriggerName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the event trigger.

" + } + }, + "ObjectTypeName": { + "target": "com.amazonaws.customerprofiles#typeName", + "traits": { + "smithy.api#documentation": "

The unique name of the object type.

" + } + }, + "Description": { + "target": "com.amazonaws.customerprofiles#sensitiveText", + "traits": { + "smithy.api#documentation": "

The description of the event trigger.

" + } + }, + "EventTriggerConditions": { + "target": "com.amazonaws.customerprofiles#EventTriggerConditions", + "traits": { + "smithy.api#documentation": "

A list of conditions that determine when an event should trigger the destination.

" + } + }, + "SegmentFilter": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The destination is triggered only for profiles that meet the criteria of a segment\n definition.

" + } + }, + "EventTriggerLimits": { + "target": "com.amazonaws.customerprofiles#EventTriggerLimits", + "traits": { + "smithy.api#documentation": "

Defines limits controlling whether an event triggers the destination, based on ingestion\n latency and the number of invocations per profile over specific time periods.

" + } + }, + "CreatedAt": { + "target": "com.amazonaws.customerprofiles#timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the event trigger was created.

" + } + }, + "LastUpdatedAt": { + "target": "com.amazonaws.customerprofiles#timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the event trigger was most recently updated.

" + } + }, + "Tags": { + "target": "com.amazonaws.customerprofiles#TagMap", + "traits": { + "smithy.api#documentation": "

An array of key-value pairs to apply to this resource.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.customerprofiles#CreateIntegrationWorkflow": { "type": "operation", "input": { @@ -2098,7 +2351,7 @@ "SegmentGroups": { "target": "com.amazonaws.customerprofiles#SegmentGroup", "traits": { - "smithy.api#documentation": "

Specifies the base segments and dimensions for a segment definition along with their respective relationship.

", + "smithy.api#documentation": "

Specifies the base segments and dimensions for a segment definition along with their\n respective relationship.

", "smithy.api#required": {} } }, @@ -2233,7 +2486,7 @@ "EstimateId": { "target": "com.amazonaws.customerprofiles#string1To255", "traits": { - "smithy.api#documentation": "

A unique identifier for the resource. The value can be passed to GetSegmentEstimate to retrieve the result of segment estimate status.

" + "smithy.api#documentation": "

A unique identifier for the resource. The value can be passed to\n GetSegmentEstimate to retrieve the result of segment estimate\n status.

" } }, "StatusCode": { @@ -2312,19 +2565,19 @@ "EncryptionKey": { "target": "com.amazonaws.customerprofiles#encryptionKey", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the KMS key used to encrypt the exported segment.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the KMS key used to encrypt the exported\n segment.

" } }, "RoleArn": { "target": "com.amazonaws.customerprofiles#RoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role that allows Customer Profiles service principal to assume the role for conducting KMS and S3 operations.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role that allows Customer Profiles service\n principal to assume the role for conducting KMS and S3 operations.

" } }, "DestinationUri": { "target": "com.amazonaws.customerprofiles#string1To255", "traits": { - "smithy.api#documentation": "

The destination to which the segment will be exported. This field must be provided if the request is not submitted from the Amazon Connect Admin Website.

" + "smithy.api#documentation": "

The destination to which the segment will be exported. This field must be provided if\n the request is not submitted from the Amazon Connect Admin Website.

" } } }, @@ -2378,6 +2631,9 @@ { "target": "com.amazonaws.customerprofiles#CreateEventStream" }, + { + "target": "com.amazonaws.customerprofiles#CreateEventTrigger" + }, { "target": "com.amazonaws.customerprofiles#CreateIntegrationWorkflow" }, @@ -2402,6 +2658,9 @@ { "target": "com.amazonaws.customerprofiles#DeleteEventStream" }, + { + "target": "com.amazonaws.customerprofiles#DeleteEventTrigger" + }, { "target": "com.amazonaws.customerprofiles#DeleteIntegration" }, @@ -2441,6 +2700,9 @@ { "target": "com.amazonaws.customerprofiles#GetEventStream" }, + { + "target": "com.amazonaws.customerprofiles#GetEventTrigger" + }, { "target": "com.amazonaws.customerprofiles#GetIdentityResolutionJob" }, @@ -2492,6 +2754,9 @@ { "target": "com.amazonaws.customerprofiles#ListEventStreams" }, + { + "target": "com.amazonaws.customerprofiles#ListEventTriggers" + }, { "target": "com.amazonaws.customerprofiles#ListIdentityResolutionJobs" }, @@ -2552,6 +2817,9 @@ { "target": "com.amazonaws.customerprofiles#UpdateDomain" }, + { + "target": "com.amazonaws.customerprofiles#UpdateEventTrigger" + }, { "target": "com.amazonaws.customerprofiles#UpdateProfile" } @@ -3637,6 +3905,79 @@ "smithy.api#output": {} } }, + "com.amazonaws.customerprofiles#DeleteEventTrigger": { + "type": "operation", + "input": { + "target": "com.amazonaws.customerprofiles#DeleteEventTriggerRequest" + }, + "output": { + "target": "com.amazonaws.customerprofiles#DeleteEventTriggerResponse" + }, + "errors": [ + { + "target": "com.amazonaws.customerprofiles#AccessDeniedException" + }, + { + "target": "com.amazonaws.customerprofiles#BadRequestException" + }, + { + "target": "com.amazonaws.customerprofiles#InternalServerException" + }, + { + "target": "com.amazonaws.customerprofiles#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.customerprofiles#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Disable and deletes the Event Trigger.

\n \n

You cannot delete an Event Trigger with an active Integration associated.

\n
", + "smithy.api#http": { + "method": "DELETE", + "uri": "/domains/{DomainName}/event-triggers/{EventTriggerName}", + "code": 200 + } + } + }, + "com.amazonaws.customerprofiles#DeleteEventTriggerRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the domain.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "EventTriggerName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the event trigger.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.customerprofiles#DeleteEventTriggerResponse": { + "type": "structure", + "members": { + "Message": { + "target": "com.amazonaws.customerprofiles#message", + "traits": { + "smithy.api#documentation": "

A message that indicates the delete request is done.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.customerprofiles#DeleteIntegration": { "type": "operation", "input": { @@ -4487,75 +4828,257 @@ "RUNNING": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "RUNNING" + "smithy.api#enumValue": "RUNNING" + } + }, + "STOPPED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "STOPPED" + } + } + } + }, + "com.amazonaws.customerprofiles#EventStreamSummary": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the domain.

", + "smithy.api#required": {} + } + }, + "EventStreamName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The name of the event stream.

", + "smithy.api#required": {} + } + }, + "EventStreamArn": { + "target": "com.amazonaws.customerprofiles#string1To255", + "traits": { + "smithy.api#documentation": "

A unique identifier for the event stream.

", + "smithy.api#required": {} + } + }, + "State": { + "target": "com.amazonaws.customerprofiles#EventStreamState", + "traits": { + "smithy.api#documentation": "

The operational state of destination stream for export.

", + "smithy.api#required": {} + } + }, + "StoppedSince": { + "target": "com.amazonaws.customerprofiles#timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the State changed to STOPPED.

" + } + }, + "DestinationSummary": { + "target": "com.amazonaws.customerprofiles#DestinationSummary", + "traits": { + "smithy.api#documentation": "

Summary information about the Kinesis data stream.

" + } + }, + "Tags": { + "target": "com.amazonaws.customerprofiles#TagMap", + "traits": { + "smithy.api#documentation": "

The tags used to organize, track, or control access for this resource.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

An instance of EventStream in a list of EventStreams.

" + } + }, + "com.amazonaws.customerprofiles#EventStreamSummaryList": { + "type": "list", + "member": { + "target": "com.amazonaws.customerprofiles#EventStreamSummary" + } + }, + "com.amazonaws.customerprofiles#EventTriggerCondition": { + "type": "structure", + "members": { + "EventTriggerDimensions": { + "target": "com.amazonaws.customerprofiles#EventTriggerDimensions", + "traits": { + "smithy.api#documentation": "

A list of dimensions to be evaluated for the event.

", + "smithy.api#required": {} + } + }, + "LogicalOperator": { + "target": "com.amazonaws.customerprofiles#EventTriggerLogicalOperator", + "traits": { + "smithy.api#documentation": "

The operator used to combine multiple dimensions.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the circumstances under which the event should trigger the destination.

" + } + }, + "com.amazonaws.customerprofiles#EventTriggerConditions": { + "type": "list", + "member": { + "target": "com.amazonaws.customerprofiles#EventTriggerCondition" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 5 + }, + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.customerprofiles#EventTriggerDimension": { + "type": "structure", + "members": { + "ObjectAttributes": { + "target": "com.amazonaws.customerprofiles#ObjectAttributes", + "traits": { + "smithy.api#documentation": "

A list of object attributes to be evaluated.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

A specific event dimension to be assessed.

" + } + }, + "com.amazonaws.customerprofiles#EventTriggerDimensions": { + "type": "list", + "member": { + "target": "com.amazonaws.customerprofiles#EventTriggerDimension" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.customerprofiles#EventTriggerLimits": { + "type": "structure", + "members": { + "EventExpiration": { + "target": "com.amazonaws.customerprofiles#optionalLong", + "traits": { + "smithy.api#documentation": "

In milliseconds. Specifies that an event will only trigger the destination if it is processed within a certain latency period.

" + } + }, + "Periods": { + "target": "com.amazonaws.customerprofiles#Periods", + "traits": { + "smithy.api#documentation": "

A list of time periods during which the limits apply.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

" + } + }, + "com.amazonaws.customerprofiles#EventTriggerLogicalOperator": { + "type": "enum", + "members": { + "ANY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ANY" + } + }, + "ALL": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALL" } }, - "STOPPED": { + "NONE": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "STOPPED" + "smithy.api#enumValue": "NONE" } } } }, - "com.amazonaws.customerprofiles#EventStreamSummary": { + "com.amazonaws.customerprofiles#EventTriggerNames": { + "type": "list", + "member": { + "target": "com.amazonaws.customerprofiles#name" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1 + } + } + }, + "com.amazonaws.customerprofiles#EventTriggerSummaryItem": { "type": "structure", "members": { - "DomainName": { - "target": "com.amazonaws.customerprofiles#name", + "ObjectTypeName": { + "target": "com.amazonaws.customerprofiles#typeName", "traits": { - "smithy.api#documentation": "

The unique name of the domain.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The unique name of the object type.

" } }, - "EventStreamName": { + "EventTriggerName": { "target": "com.amazonaws.customerprofiles#name", "traits": { - "smithy.api#documentation": "

The name of the event stream.

", - "smithy.api#required": {} - } - }, - "EventStreamArn": { - "target": "com.amazonaws.customerprofiles#string1To255", - "traits": { - "smithy.api#documentation": "

A unique identifier for the event stream.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The unique name of the event trigger.

" } }, - "State": { - "target": "com.amazonaws.customerprofiles#EventStreamState", + "Description": { + "target": "com.amazonaws.customerprofiles#text", "traits": { - "smithy.api#documentation": "

The operational state of destination stream for export.

", - "smithy.api#required": {} + "smithy.api#documentation": "

The description of the event trigger.

" } }, - "StoppedSince": { + "CreatedAt": { "target": "com.amazonaws.customerprofiles#timestamp", "traits": { - "smithy.api#documentation": "

The timestamp when the State changed to STOPPED.

" + "smithy.api#documentation": "

The timestamp of when the event trigger was created.

" } }, - "DestinationSummary": { - "target": "com.amazonaws.customerprofiles#DestinationSummary", + "LastUpdatedAt": { + "target": "com.amazonaws.customerprofiles#timestamp", "traits": { - "smithy.api#documentation": "

Summary information about the Kinesis data stream.

" + "smithy.api#documentation": "

The timestamp of when the event trigger was most recently updated.

" } }, "Tags": { "target": "com.amazonaws.customerprofiles#TagMap", "traits": { - "smithy.api#documentation": "

The tags used to organize, track, or control access for this resource.

" + "smithy.api#documentation": "

An array of key-value pairs to apply to this resource.

" } } }, "traits": { - "smithy.api#documentation": "

An instance of EventStream in a list of EventStreams.

" + "smithy.api#documentation": "

The summary of the event trigger.

" } }, - "com.amazonaws.customerprofiles#EventStreamSummaryList": { + "com.amazonaws.customerprofiles#EventTriggerSummaryList": { "type": "list", "member": { - "target": "com.amazonaws.customerprofiles#EventStreamSummary" + "target": "com.amazonaws.customerprofiles#EventTriggerSummaryItem" + }, + "traits": { + "smithy.api#sensitive": {} + } + }, + "com.amazonaws.customerprofiles#EventTriggerValues": { + "type": "list", + "member": { + "target": "com.amazonaws.customerprofiles#string1To255" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } } }, "com.amazonaws.customerprofiles#ExportingConfig": { @@ -4607,7 +5130,7 @@ } }, "traits": { - "smithy.api#documentation": "

Object that segments on various Customer profile's fields that are larger than normal.

" + "smithy.api#documentation": "

Object that segments on various Customer profile's fields that are larger than\n normal.

" } }, "com.amazonaws.customerprofiles#ExtraLengthValues": { @@ -4821,7 +5344,7 @@ "Include": { "target": "com.amazonaws.customerprofiles#Include", "traits": { - "smithy.api#documentation": "

Define whether to include or exclude objects for Calculated Attributed calculation that fit the filter groups criteria.

", + "smithy.api#documentation": "

Define whether to include or exclude objects for Calculated Attributed calculation that\n fit the filter groups criteria.

", "smithy.api#required": {} } }, @@ -4856,7 +5379,7 @@ } }, "traits": { - "smithy.api#documentation": "

Object that defines how to filter the incoming objects for the calculated attribute.

" + "smithy.api#documentation": "

Object that defines how to filter the incoming objects for the calculated\n attribute.

" } }, "com.amazonaws.customerprofiles#FilterDimension": { @@ -5684,6 +6207,126 @@ "smithy.api#output": {} } }, + "com.amazonaws.customerprofiles#GetEventTrigger": { + "type": "operation", + "input": { + "target": "com.amazonaws.customerprofiles#GetEventTriggerRequest" + }, + "output": { + "target": "com.amazonaws.customerprofiles#GetEventTriggerResponse" + }, + "errors": [ + { + "target": "com.amazonaws.customerprofiles#AccessDeniedException" + }, + { + "target": "com.amazonaws.customerprofiles#BadRequestException" + }, + { + "target": "com.amazonaws.customerprofiles#InternalServerException" + }, + { + "target": "com.amazonaws.customerprofiles#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.customerprofiles#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Get a specific Event Trigger from the domain.

", + "smithy.api#http": { + "method": "GET", + "uri": "/domains/{DomainName}/event-triggers/{EventTriggerName}", + "code": 200 + } + } + }, + "com.amazonaws.customerprofiles#GetEventTriggerRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the domain.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "EventTriggerName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the event trigger.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.customerprofiles#GetEventTriggerResponse": { + "type": "structure", + "members": { + "EventTriggerName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the event trigger.

" + } + }, + "ObjectTypeName": { + "target": "com.amazonaws.customerprofiles#typeName", + "traits": { + "smithy.api#documentation": "

The unique name of the object type.

" + } + }, + "Description": { + "target": "com.amazonaws.customerprofiles#sensitiveText", + "traits": { + "smithy.api#documentation": "

The description of the event trigger.

" + } + }, + "EventTriggerConditions": { + "target": "com.amazonaws.customerprofiles#EventTriggerConditions", + "traits": { + "smithy.api#documentation": "

A list of conditions that determine when an event should trigger the destination.

" + } + }, + "SegmentFilter": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The destination is triggered only for profiles that meet the criteria of a segment\n definition.

" + } + }, + "EventTriggerLimits": { + "target": "com.amazonaws.customerprofiles#EventTriggerLimits", + "traits": { + "smithy.api#documentation": "

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

" + } + }, + "CreatedAt": { + "target": "com.amazonaws.customerprofiles#timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the event trigger was created.

" + } + }, + "LastUpdatedAt": { + "target": "com.amazonaws.customerprofiles#timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the event trigger was most recently updated.

" + } + }, + "Tags": { + "target": "com.amazonaws.customerprofiles#TagMap", + "traits": { + "smithy.api#documentation": "

An array of key-value pairs to apply to this resource.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.customerprofiles#GetIdentityResolutionJob": { "type": "operation", "input": { @@ -5939,6 +6582,12 @@ "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make\n Customer Profiles requests on your behalf.

" } + }, + "EventTriggerNames": { + "target": "com.amazonaws.customerprofiles#EventTriggerNames", + "traits": { + "smithy.api#documentation": "

A list of unique names for active event triggers associated with the integration. This\n list would be empty if no Event Trigger is associated with the integration.

" + } } }, "traits": { @@ -6481,7 +7130,7 @@ "EstimateId": { "target": "com.amazonaws.customerprofiles#string1To255", "traits": { - "smithy.api#documentation": "

The QueryId which is the same as the value passed in QueryId.

" + "smithy.api#documentation": "

The QueryId which is the same as the value passed in\n QueryId.

" } }, "Status": { @@ -6605,7 +7254,7 @@ "Failures": { "target": "com.amazonaws.customerprofiles#Failures", "traits": { - "smithy.api#documentation": "

An array of maps where each contains a response per profile failed for the request.

", + "smithy.api#documentation": "

An array of maps where each contains a response per profile failed for the\n request.

", "smithy.api#jsonName": "Failures" } } @@ -6716,19 +7365,19 @@ "EncryptionKey": { "target": "com.amazonaws.customerprofiles#encryptionKey", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the KMS key used to encrypt the exported segment.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the KMS key used to encrypt the exported\n segment.

" } }, "RoleArn": { "target": "com.amazonaws.customerprofiles#RoleArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role that allows Customer Profiles service principal to assume the role for conducting KMS and S3 operations.

" + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role that allows Customer Profiles service\n principal to assume the role for conducting KMS and S3 operations.

" } }, "DestinationUri": { "target": "com.amazonaws.customerprofiles#string1To255", "traits": { - "smithy.api#documentation": "

The destination to which the segment will be exported. This field must be provided if the request is not submitted from the Amazon Connect Admin Website.

" + "smithy.api#documentation": "

The destination to which the segment will be exported. This field must be provided if\n the request is not submitted from the Amazon Connect Admin Website.

" } } }, @@ -7916,7 +8565,97 @@ "NextToken": { "target": "com.amazonaws.customerprofiles#token", "traits": { - "smithy.api#documentation": "

The pagination token from the previous ListDomains API call.

" + "smithy.api#documentation": "

The pagination token from the previous ListDomains API call.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.customerprofiles#ListEventStreams": { + "type": "operation", + "input": { + "target": "com.amazonaws.customerprofiles#ListEventStreamsRequest" + }, + "output": { + "target": "com.amazonaws.customerprofiles#ListEventStreamsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.customerprofiles#AccessDeniedException" + }, + { + "target": "com.amazonaws.customerprofiles#BadRequestException" + }, + { + "target": "com.amazonaws.customerprofiles#InternalServerException" + }, + { + "target": "com.amazonaws.customerprofiles#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.customerprofiles#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Returns a list of all the event streams in a specific domain.

", + "smithy.api#http": { + "method": "GET", + "uri": "/domains/{DomainName}/event-streams", + "code": 200 + }, + "smithy.api#paginated": { + "inputToken": "NextToken", + "outputToken": "NextToken", + "items": "Items", + "pageSize": "MaxResults" + } + } + }, + "com.amazonaws.customerprofiles#ListEventStreamsRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the domain.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.customerprofiles#token", + "traits": { + "smithy.api#documentation": "

Identifies the next page of results to return.

", + "smithy.api#httpQuery": "next-token" + } + }, + "MaxResults": { + "target": "com.amazonaws.customerprofiles#maxSize100", + "traits": { + "smithy.api#documentation": "

The maximum number of objects returned per page.

", + "smithy.api#httpQuery": "max-results" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.customerprofiles#ListEventStreamsResponse": { + "type": "structure", + "members": { + "Items": { + "target": "com.amazonaws.customerprofiles#EventStreamSummaryList", + "traits": { + "smithy.api#documentation": "

Contains summary information about an EventStream.

" + } + }, + "NextToken": { + "target": "com.amazonaws.customerprofiles#token", + "traits": { + "smithy.api#documentation": "

Identifies the next page of results to return.

" } } }, @@ -7924,13 +8663,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.customerprofiles#ListEventStreams": { + "com.amazonaws.customerprofiles#ListEventTriggers": { "type": "operation", "input": { - "target": "com.amazonaws.customerprofiles#ListEventStreamsRequest" + "target": "com.amazonaws.customerprofiles#ListEventTriggersRequest" }, "output": { - "target": "com.amazonaws.customerprofiles#ListEventStreamsResponse" + "target": "com.amazonaws.customerprofiles#ListEventTriggersResponse" }, "errors": [ { @@ -7950,10 +8689,10 @@ } ], "traits": { - "smithy.api#documentation": "

Returns a list of all the event streams in a specific domain.

", + "smithy.api#documentation": "

List all Event Triggers under a domain.

", "smithy.api#http": { "method": "GET", - "uri": "/domains/{DomainName}/event-streams", + "uri": "/domains/{DomainName}/event-triggers", "code": 200 }, "smithy.api#paginated": { @@ -7964,7 +8703,7 @@ } } }, - "com.amazonaws.customerprofiles#ListEventStreamsRequest": { + "com.amazonaws.customerprofiles#ListEventTriggersRequest": { "type": "structure", "members": { "DomainName": { @@ -7978,14 +8717,14 @@ "NextToken": { "target": "com.amazonaws.customerprofiles#token", "traits": { - "smithy.api#documentation": "

Identifies the next page of results to return.

", + "smithy.api#documentation": "

The pagination token to use with ListEventTriggers.

", "smithy.api#httpQuery": "next-token" } }, "MaxResults": { "target": "com.amazonaws.customerprofiles#maxSize100", "traits": { - "smithy.api#documentation": "

The maximum number of objects returned per page.

", + "smithy.api#documentation": "

The maximum number of results to return per page.

", "smithy.api#httpQuery": "max-results" } } @@ -7994,19 +8733,19 @@ "smithy.api#input": {} } }, - "com.amazonaws.customerprofiles#ListEventStreamsResponse": { + "com.amazonaws.customerprofiles#ListEventTriggersResponse": { "type": "structure", "members": { "Items": { - "target": "com.amazonaws.customerprofiles#EventStreamSummaryList", + "target": "com.amazonaws.customerprofiles#EventTriggerSummaryList", "traits": { - "smithy.api#documentation": "

Contains summary information about an EventStream.

" + "smithy.api#documentation": "

The list of Event Triggers.

" } }, "NextToken": { "target": "com.amazonaws.customerprofiles#token", "traits": { - "smithy.api#documentation": "

Identifies the next page of results to return.

" + "smithy.api#documentation": "

The pagination token from the previous call to ListEventTriggers.

" } } }, @@ -8164,6 +8903,12 @@ "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make\n Customer Profiles requests on your behalf.

" } + }, + "EventTriggerNames": { + "target": "com.amazonaws.customerprofiles#EventTriggerNames", + "traits": { + "smithy.api#documentation": "

A list of unique names for active event triggers associated with the integration.

" + } } }, "traits": { @@ -9604,6 +10349,52 @@ "smithy.api#pattern": "^\\S+$" } }, + "com.amazonaws.customerprofiles#ObjectAttribute": { + "type": "structure", + "members": { + "Source": { + "target": "com.amazonaws.customerprofiles#text", + "traits": { + "smithy.api#documentation": "

An attribute contained within a source object.

" + } + }, + "FieldName": { + "target": "com.amazonaws.customerprofiles#fieldName", + "traits": { + "smithy.api#documentation": "

A field defined within an object type.

" + } + }, + "ComparisonOperator": { + "target": "com.amazonaws.customerprofiles#ComparisonOperator", + "traits": { + "smithy.api#documentation": "

The operator used to compare an attribute against a list of values.

", + "smithy.api#required": {} + } + }, + "Values": { + "target": "com.amazonaws.customerprofiles#EventTriggerValues", + "traits": { + "smithy.api#documentation": "

A list of attribute values used for comparison.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The criteria that a specific object attribute must meet to trigger the destination.

" + } + }, + "com.amazonaws.customerprofiles#ObjectAttributes": { + "type": "list", + "member": { + "target": "com.amazonaws.customerprofiles#ObjectAttribute" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, "com.amazonaws.customerprofiles#ObjectCount": { "type": "integer", "traits": { @@ -9854,6 +10645,82 @@ "smithy.api#sensitive": {} } }, + "com.amazonaws.customerprofiles#Period": { + "type": "structure", + "members": { + "Unit": { + "target": "com.amazonaws.customerprofiles#PeriodUnit", + "traits": { + "smithy.api#documentation": "

The unit of time.

", + "smithy.api#required": {} + } + }, + "Value": { + "target": "com.amazonaws.customerprofiles#maxSize24", + "traits": { + "smithy.api#documentation": "

The amount of time of the specified unit.

", + "smithy.api#required": {} + } + }, + "MaxInvocationsPerProfile": { + "target": "com.amazonaws.customerprofiles#maxSize1000", + "traits": { + "smithy.api#documentation": "

The maximum allowed number of destination invocations per profile.

" + } + }, + "Unlimited": { + "target": "com.amazonaws.customerprofiles#boolean", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

If set to true, there is no limit on the number of destination invocations per profile. The default is false.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Defines a limit and the time period during which it is enforced.

" + } + }, + "com.amazonaws.customerprofiles#PeriodUnit": { + "type": "enum", + "members": { + "HOURS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HOURS" + } + }, + "DAYS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DAYS" + } + }, + "WEEKS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WEEKS" + } + }, + "MONTHS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MONTHS" + } + } + } + }, + "com.amazonaws.customerprofiles#Periods": { + "type": "list", + "member": { + "target": "com.amazonaws.customerprofiles#Period" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 4 + } + } + }, "com.amazonaws.customerprofiles#PhoneNumberList": { "type": "list", "member": { @@ -10479,6 +11346,12 @@ "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make\n Customer Profiles requests on your behalf.

" } + }, + "EventTriggerNames": { + "target": "com.amazonaws.customerprofiles#EventTriggerNames", + "traits": { + "smithy.api#documentation": "

A list of unique names for active event triggers associated with the integration.

" + } } }, "traits": { @@ -10551,6 +11424,12 @@ "traits": { "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make\n Customer Profiles requests on your behalf.

" } + }, + "EventTriggerNames": { + "target": "com.amazonaws.customerprofiles#EventTriggerNames", + "traits": { + "smithy.api#documentation": "

A list of unique names for active event triggers associated with the integration. This\n list would be empty if no Event Trigger is associated with the integration.

" + } } }, "traits": { @@ -13027,6 +13906,156 @@ "smithy.api#output": {} } }, + "com.amazonaws.customerprofiles#UpdateEventTrigger": { + "type": "operation", + "input": { + "target": "com.amazonaws.customerprofiles#UpdateEventTriggerRequest" + }, + "output": { + "target": "com.amazonaws.customerprofiles#UpdateEventTriggerResponse" + }, + "errors": [ + { + "target": "com.amazonaws.customerprofiles#AccessDeniedException" + }, + { + "target": "com.amazonaws.customerprofiles#BadRequestException" + }, + { + "target": "com.amazonaws.customerprofiles#InternalServerException" + }, + { + "target": "com.amazonaws.customerprofiles#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.customerprofiles#ThrottlingException" + } + ], + "traits": { + "smithy.api#documentation": "

Update the properties of an Event Trigger.

", + "smithy.api#http": { + "method": "PUT", + "uri": "/domains/{DomainName}/event-triggers/{EventTriggerName}", + "code": 200 + } + } + }, + "com.amazonaws.customerprofiles#UpdateEventTriggerRequest": { + "type": "structure", + "members": { + "DomainName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the domain.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "EventTriggerName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the event trigger.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "ObjectTypeName": { + "target": "com.amazonaws.customerprofiles#typeName", + "traits": { + "smithy.api#documentation": "

The unique name of the object type.

" + } + }, + "Description": { + "target": "com.amazonaws.customerprofiles#sensitiveText", + "traits": { + "smithy.api#documentation": "

The description of the event trigger.

" + } + }, + "EventTriggerConditions": { + "target": "com.amazonaws.customerprofiles#EventTriggerConditions", + "traits": { + "smithy.api#documentation": "

A list of conditions that determine when an event should trigger the destination.

" + } + }, + "SegmentFilter": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The destination is triggered only for profiles that meet the criteria of a segment\n definition.

" + } + }, + "EventTriggerLimits": { + "target": "com.amazonaws.customerprofiles#EventTriggerLimits", + "traits": { + "smithy.api#documentation": "

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.customerprofiles#UpdateEventTriggerResponse": { + "type": "structure", + "members": { + "EventTriggerName": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The unique name of the event trigger.

" + } + }, + "ObjectTypeName": { + "target": "com.amazonaws.customerprofiles#typeName", + "traits": { + "smithy.api#documentation": "

The unique name of the object type.

" + } + }, + "Description": { + "target": "com.amazonaws.customerprofiles#sensitiveText", + "traits": { + "smithy.api#documentation": "

The description of the event trigger.

" + } + }, + "EventTriggerConditions": { + "target": "com.amazonaws.customerprofiles#EventTriggerConditions", + "traits": { + "smithy.api#documentation": "

A list of conditions that determine when an event should trigger the destination.

" + } + }, + "SegmentFilter": { + "target": "com.amazonaws.customerprofiles#name", + "traits": { + "smithy.api#documentation": "

The destination is triggered only for profiles that meet the criteria of a segment\n definition.

" + } + }, + "EventTriggerLimits": { + "target": "com.amazonaws.customerprofiles#EventTriggerLimits", + "traits": { + "smithy.api#documentation": "

Defines limits controlling whether an event triggers the destination, based on ingestion latency and the number of invocations per profile over specific time periods.

" + } + }, + "CreatedAt": { + "target": "com.amazonaws.customerprofiles#timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the event trigger was created.

" + } + }, + "LastUpdatedAt": { + "target": "com.amazonaws.customerprofiles#timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp of when the event trigger was most recently updated.

" + } + }, + "Tags": { + "target": "com.amazonaws.customerprofiles#TagMap", + "traits": { + "smithy.api#documentation": "

An array of key-value pairs to apply to this resource.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.customerprofiles#UpdateProfile": { "type": "operation", "input": { @@ -13495,6 +14524,16 @@ } } }, + "com.amazonaws.customerprofiles#fieldName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_.-]+$" + } + }, "com.amazonaws.customerprofiles#foundByList": { "type": "list", "member": { @@ -13547,6 +14586,24 @@ } } }, + "com.amazonaws.customerprofiles#maxSize1000": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 1000 + } + } + }, + "com.amazonaws.customerprofiles#maxSize24": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 24 + } + } + }, "com.amazonaws.customerprofiles#message": { "type": "string" }, @@ -13579,6 +14636,9 @@ "com.amazonaws.customerprofiles#optionalBoolean": { "type": "boolean" }, + "com.amazonaws.customerprofiles#optionalLong": { + "type": "long" + }, "com.amazonaws.customerprofiles#requestValueList": { "type": "list", "member": {