Module: Aws::Pinpoint::ClientApi Private

Includes:
Seahorse::Model
Defined in:
lib/aws-sdk-pinpoint/client_api.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Constant Summary collapse

ADMChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ADMChannelRequest')
ADMChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ADMChannelResponse')
ADMMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ADMMessage')
APNSChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSChannelRequest')
APNSChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSChannelResponse')
APNSMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSMessage')
APNSPushNotificationTemplate =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSPushNotificationTemplate')
APNSSandboxChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSSandboxChannelRequest')
APNSSandboxChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSSandboxChannelResponse')
APNSVoipChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSVoipChannelRequest')
APNSVoipChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSVoipChannelResponse')
APNSVoipSandboxChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSVoipSandboxChannelRequest')
APNSVoipSandboxChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APNSVoipSandboxChannelResponse')
Action =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Action')
ActivitiesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ActivitiesResponse')
Activity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Activity')
ActivityResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ActivityResponse')
AddressConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AddressConfiguration')
Alignment =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Alignment')
AndroidPushNotificationTemplate =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AndroidPushNotificationTemplate')
ApplicationDateRangeKpiResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ApplicationDateRangeKpiResponse')
ApplicationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ApplicationResponse')
ApplicationSettingsJourneyLimits =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ApplicationSettingsJourneyLimits')
ApplicationSettingsResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ApplicationSettingsResource')
ApplicationsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ApplicationsResponse')
AttributeDimension =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AttributeDimension')
AttributeType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AttributeType')
AttributesResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AttributesResource')
BadRequestException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BadRequestException')
BaiduChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BaiduChannelRequest')
BaiduChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BaiduChannelResponse')
BaiduMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BaiduMessage')
BaseKpiResult =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BaseKpiResult')
ButtonAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ButtonAction')
CampaignCustomMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignCustomMessage')
CampaignDateRangeKpiResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignDateRangeKpiResponse')
CampaignEmailMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignEmailMessage')
CampaignEventFilter =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignEventFilter')
CampaignHook =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignHook')
CampaignInAppMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignInAppMessage')
CampaignLimits =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignLimits')
CampaignResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignResponse')
CampaignSmsMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignSmsMessage')
CampaignState =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignState')
CampaignStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'CampaignStatus')
CampaignsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CampaignsResponse')
ChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ChannelResponse')
ChannelType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ChannelType')
ChannelsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ChannelsResponse')
ClosedDays =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ClosedDays')
ClosedDaysRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ClosedDaysRule')
Condition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Condition')
ConditionalSplitActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ConditionalSplitActivity')
ConflictException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ConflictException')
ContactCenterActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ContactCenterActivity')
CreateAppRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateAppRequest')
CreateAppResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateAppResponse')
CreateApplicationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateApplicationRequest')
CreateCampaignRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateCampaignRequest')
CreateCampaignResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateCampaignResponse')
CreateEmailTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateEmailTemplateRequest')
CreateEmailTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateEmailTemplateResponse')
CreateExportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateExportJobRequest')
CreateExportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateExportJobResponse')
CreateImportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateImportJobRequest')
CreateImportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateImportJobResponse')
CreateInAppTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateInAppTemplateRequest')
CreateInAppTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateInAppTemplateResponse')
CreateJourneyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateJourneyRequest')
CreateJourneyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateJourneyResponse')
CreatePushTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreatePushTemplateRequest')
CreatePushTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreatePushTemplateResponse')
CreateRecommenderConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRecommenderConfiguration')
CreateRecommenderConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRecommenderConfigurationRequest')
CreateRecommenderConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRecommenderConfigurationResponse')
CreateSegmentRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateSegmentRequest')
CreateSegmentResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateSegmentResponse')
CreateSmsTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateSmsTemplateRequest')
CreateSmsTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateSmsTemplateResponse')
CreateTemplateMessageBody =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateTemplateMessageBody')
CreateVoiceTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateVoiceTemplateRequest')
CreateVoiceTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateVoiceTemplateResponse')
CustomDeliveryConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CustomDeliveryConfiguration')
CustomMessageActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CustomMessageActivity')
DayOfWeek =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DayOfWeek')
DefaultButtonConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DefaultButtonConfiguration')
DefaultMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DefaultMessage')
DefaultPushNotificationMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DefaultPushNotificationMessage')
DefaultPushNotificationTemplate =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DefaultPushNotificationTemplate')
DeleteAdmChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAdmChannelRequest')
DeleteAdmChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAdmChannelResponse')
DeleteApnsChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteApnsChannelRequest')
DeleteApnsChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteApnsChannelResponse')
DeleteApnsSandboxChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteApnsSandboxChannelRequest')
DeleteApnsSandboxChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteApnsSandboxChannelResponse')
DeleteApnsVoipChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteApnsVoipChannelRequest')
DeleteApnsVoipChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteApnsVoipChannelResponse')
DeleteApnsVoipSandboxChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteApnsVoipSandboxChannelRequest')
DeleteApnsVoipSandboxChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteApnsVoipSandboxChannelResponse')
DeleteAppRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAppRequest')
DeleteAppResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAppResponse')
DeleteBaiduChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBaiduChannelRequest')
DeleteBaiduChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteBaiduChannelResponse')
DeleteCampaignRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteCampaignRequest')
DeleteCampaignResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteCampaignResponse')
DeleteEmailChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEmailChannelRequest')
DeleteEmailChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEmailChannelResponse')
DeleteEmailTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEmailTemplateRequest')
DeleteEmailTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEmailTemplateResponse')
DeleteEndpointRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEndpointRequest')
DeleteEndpointResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEndpointResponse')
DeleteEventStreamRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEventStreamRequest')
DeleteEventStreamResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteEventStreamResponse')
DeleteGcmChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteGcmChannelRequest')
DeleteGcmChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteGcmChannelResponse')
DeleteInAppTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteInAppTemplateRequest')
DeleteInAppTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteInAppTemplateResponse')
DeleteJourneyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteJourneyRequest')
DeleteJourneyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteJourneyResponse')
DeletePushTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeletePushTemplateRequest')
DeletePushTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeletePushTemplateResponse')
DeleteRecommenderConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRecommenderConfigurationRequest')
DeleteRecommenderConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRecommenderConfigurationResponse')
DeleteSegmentRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteSegmentRequest')
DeleteSegmentResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteSegmentResponse')
DeleteSmsChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteSmsChannelRequest')
DeleteSmsChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteSmsChannelResponse')
DeleteSmsTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteSmsTemplateRequest')
DeleteSmsTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteSmsTemplateResponse')
DeleteUserEndpointsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteUserEndpointsRequest')
DeleteUserEndpointsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteUserEndpointsResponse')
DeleteVoiceChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVoiceChannelRequest')
DeleteVoiceChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVoiceChannelResponse')
DeleteVoiceTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVoiceTemplateRequest')
DeleteVoiceTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteVoiceTemplateResponse')
DeliveryStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DeliveryStatus')
DimensionType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DimensionType')
DirectMessageConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DirectMessageConfiguration')
Duration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Duration')
EmailChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EmailChannelRequest')
EmailChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EmailChannelResponse')
EmailMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EmailMessage')
EmailMessageActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EmailMessageActivity')
EmailTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EmailTemplateRequest')
EmailTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EmailTemplateResponse')
EndpointBatchItem =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointBatchItem')
EndpointBatchRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointBatchRequest')
EndpointDemographic =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointDemographic')
EndpointItemResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointItemResponse')
EndpointLocation =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointLocation')
EndpointMessageResult =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointMessageResult')
EndpointRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointRequest')
EndpointResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointResponse')
EndpointSendConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointSendConfiguration')
EndpointUser =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointUser')
EndpointsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EndpointsResponse')
Event =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Event')
EventCondition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventCondition')
EventDimensions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventDimensions')
EventFilter =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventFilter')
EventItemResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventItemResponse')
EventStartCondition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventStartCondition')
EventStream =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventStream')
EventsBatch =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventsBatch')
EventsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventsRequest')
EventsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EventsResponse')
ExportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ExportJobRequest')
ExportJobResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ExportJobResource')
ExportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ExportJobResponse')
ExportJobsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ExportJobsResponse')
FilterType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FilterType')
ForbiddenException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ForbiddenException')
Format =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Format')
Frequency =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Frequency')
GCMChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GCMChannelRequest')
GCMChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GCMChannelResponse')
GCMMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GCMMessage')
GPSCoordinates =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GPSCoordinates')
GPSPointDimension =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GPSPointDimension')
GetAdmChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetAdmChannelRequest')
GetAdmChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetAdmChannelResponse')
GetApnsChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApnsChannelRequest')
GetApnsChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApnsChannelResponse')
GetApnsSandboxChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApnsSandboxChannelRequest')
GetApnsSandboxChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApnsSandboxChannelResponse')
GetApnsVoipChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApnsVoipChannelRequest')
GetApnsVoipChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApnsVoipChannelResponse')
GetApnsVoipSandboxChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApnsVoipSandboxChannelRequest')
GetApnsVoipSandboxChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApnsVoipSandboxChannelResponse')
GetAppRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetAppRequest')
GetAppResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetAppResponse')
GetApplicationDateRangeKpiRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApplicationDateRangeKpiRequest')
GetApplicationDateRangeKpiResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApplicationDateRangeKpiResponse')
GetApplicationSettingsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApplicationSettingsRequest')
GetApplicationSettingsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetApplicationSettingsResponse')
GetAppsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetAppsRequest')
GetAppsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetAppsResponse')
GetBaiduChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBaiduChannelRequest')
GetBaiduChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetBaiduChannelResponse')
GetCampaignActivitiesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignActivitiesRequest')
GetCampaignActivitiesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignActivitiesResponse')
GetCampaignDateRangeKpiRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignDateRangeKpiRequest')
GetCampaignDateRangeKpiResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignDateRangeKpiResponse')
GetCampaignRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignRequest')
GetCampaignResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignResponse')
GetCampaignVersionRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignVersionRequest')
GetCampaignVersionResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignVersionResponse')
GetCampaignVersionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignVersionsRequest')
GetCampaignVersionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignVersionsResponse')
GetCampaignsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignsRequest')
GetCampaignsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetCampaignsResponse')
GetChannelsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetChannelsRequest')
GetChannelsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetChannelsResponse')
GetEmailChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetEmailChannelRequest')
GetEmailChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetEmailChannelResponse')
GetEmailTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetEmailTemplateRequest')
GetEmailTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetEmailTemplateResponse')
GetEndpointRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetEndpointRequest')
GetEndpointResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetEndpointResponse')
GetEventStreamRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetEventStreamRequest')
GetEventStreamResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetEventStreamResponse')
GetExportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetExportJobRequest')
GetExportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetExportJobResponse')
GetExportJobsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetExportJobsRequest')
GetExportJobsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetExportJobsResponse')
GetGcmChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetGcmChannelRequest')
GetGcmChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetGcmChannelResponse')
GetImportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetImportJobRequest')
GetImportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetImportJobResponse')
GetImportJobsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetImportJobsRequest')
GetImportJobsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetImportJobsResponse')
GetInAppMessagesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetInAppMessagesRequest')
GetInAppMessagesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetInAppMessagesResponse')
GetInAppTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetInAppTemplateRequest')
GetInAppTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetInAppTemplateResponse')
GetJourneyDateRangeKpiRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyDateRangeKpiRequest')
GetJourneyDateRangeKpiResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyDateRangeKpiResponse')
GetJourneyExecutionActivityMetricsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyExecutionActivityMetricsRequest')
GetJourneyExecutionActivityMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyExecutionActivityMetricsResponse')
GetJourneyExecutionMetricsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyExecutionMetricsRequest')
GetJourneyExecutionMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyExecutionMetricsResponse')
GetJourneyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyRequest')
GetJourneyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyResponse')
GetJourneyRunExecutionActivityMetricsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyRunExecutionActivityMetricsRequest')
GetJourneyRunExecutionActivityMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyRunExecutionActivityMetricsResponse')
GetJourneyRunExecutionMetricsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyRunExecutionMetricsRequest')
GetJourneyRunExecutionMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyRunExecutionMetricsResponse')
GetJourneyRunsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyRunsRequest')
GetJourneyRunsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetJourneyRunsResponse')
GetPushTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetPushTemplateRequest')
GetPushTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetPushTemplateResponse')
GetRecommenderConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRecommenderConfigurationRequest')
GetRecommenderConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRecommenderConfigurationResponse')
GetRecommenderConfigurationsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRecommenderConfigurationsRequest')
GetRecommenderConfigurationsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRecommenderConfigurationsResponse')
GetSegmentExportJobsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentExportJobsRequest')
GetSegmentExportJobsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentExportJobsResponse')
GetSegmentImportJobsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentImportJobsRequest')
GetSegmentImportJobsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentImportJobsResponse')
GetSegmentRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentRequest')
GetSegmentResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentResponse')
GetSegmentVersionRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentVersionRequest')
GetSegmentVersionResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentVersionResponse')
GetSegmentVersionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentVersionsRequest')
GetSegmentVersionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentVersionsResponse')
GetSegmentsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentsRequest')
GetSegmentsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSegmentsResponse')
GetSmsChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSmsChannelRequest')
GetSmsChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSmsChannelResponse')
GetSmsTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSmsTemplateRequest')
GetSmsTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSmsTemplateResponse')
GetUserEndpointsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetUserEndpointsRequest')
GetUserEndpointsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetUserEndpointsResponse')
GetVoiceChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVoiceChannelRequest')
GetVoiceChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVoiceChannelResponse')
GetVoiceTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVoiceTemplateRequest')
GetVoiceTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetVoiceTemplateResponse')
HoldoutActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'HoldoutActivity')
ImportJobRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ImportJobRequest')
ImportJobResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ImportJobResource')
ImportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ImportJobResponse')
ImportJobsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ImportJobsResponse')
InAppCampaignSchedule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppCampaignSchedule')
InAppMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppMessage')
InAppMessageBodyConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppMessageBodyConfig')
InAppMessageButton =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppMessageButton')
InAppMessageCampaign =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppMessageCampaign')
InAppMessageContent =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppMessageContent')
InAppMessageHeaderConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppMessageHeaderConfig')
InAppMessagesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppMessagesResponse')
InAppTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppTemplateRequest')
InAppTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InAppTemplateResponse')
Include =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Include')
InternalServerErrorException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'InternalServerErrorException')
ItemResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ItemResponse')
JobStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'JobStatus')
JourneyChannelSettings =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyChannelSettings')
JourneyCustomMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyCustomMessage')
JourneyDateRangeKpiResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyDateRangeKpiResponse')
JourneyEmailMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyEmailMessage')
JourneyExecutionActivityMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyExecutionActivityMetricsResponse')
JourneyExecutionMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyExecutionMetricsResponse')
JourneyLimits =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyLimits')
JourneyPushMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyPushMessage')
JourneyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyResponse')
JourneyRunExecutionActivityMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyRunExecutionActivityMetricsResponse')
JourneyRunExecutionMetricsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyRunExecutionMetricsResponse')
JourneyRunResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyRunResponse')
JourneyRunStatus =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'JourneyRunStatus')
JourneyRunsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyRunsResponse')
JourneySMSMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneySMSMessage')
JourneySchedule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneySchedule')
JourneyStateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyStateRequest')
JourneyTimeframeCap =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneyTimeframeCap')
JourneysResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JourneysResponse')
Layout =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Layout')
ListJourneysRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListJourneysRequest')
ListJourneysResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListJourneysResponse')
ListOfActivityResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfActivityResponse')
ListOfApplicationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfApplicationResponse')
ListOfCampaignResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfCampaignResponse')
ListOfClosedDaysRules =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfClosedDaysRules')
ListOfEndpointBatchItem =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfEndpointBatchItem')
ListOfEndpointResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfEndpointResponse')
ListOfExportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfExportJobResponse')
ListOfImportJobResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfImportJobResponse')
ListOfInAppMessageCampaign =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfInAppMessageCampaign')
ListOfInAppMessageContent =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfInAppMessageContent')
ListOfJourneyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfJourneyResponse')
ListOfJourneyRunResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfJourneyRunResponse')
ListOfMessageHeader =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfMessageHeader')
ListOfMultiConditionalBranch =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfMultiConditionalBranch')
ListOfOpenHoursRules =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfOpenHoursRules')
ListOfRandomSplitEntry =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfRandomSplitEntry')
ListOfRecommenderConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfRecommenderConfigurationResponse')
ListOfResultRow =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfResultRow')
ListOfResultRowValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfResultRowValue')
ListOfSegmentDimensions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfSegmentDimensions')
ListOfSegmentGroup =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfSegmentGroup')
ListOfSegmentReference =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfSegmentReference')
ListOfSegmentResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfSegmentResponse')
ListOfSimpleCondition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfSimpleCondition')
ListOfTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfTemplateResponse')
ListOfTemplateVersionResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfTemplateVersionResponse')
ListOfTreatmentResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfTreatmentResource')
ListOfWriteTreatmentResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOfWriteTreatmentResource')
ListOf__EndpointTypesElement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOf__EndpointTypesElement')
ListOf__TimezoneEstimationMethodsElement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOf__TimezoneEstimationMethodsElement')
ListOf__string =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ListOf__string')
ListRecommenderConfigurationsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRecommenderConfigurationsResponse')
ListTagsForResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
ListTagsForResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
ListTemplateVersionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTemplateVersionsRequest')
ListTemplateVersionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTemplateVersionsResponse')
ListTemplatesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTemplatesRequest')
ListTemplatesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTemplatesResponse')
MapOfActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfActivity')
MapOfAddressConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfAddressConfiguration')
MapOfAttributeDimension =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfAttributeDimension')
MapOfChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfChannelResponse')
MapOfEndpointMessageResult =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfEndpointMessageResult')
MapOfEndpointSendConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfEndpointSendConfiguration')
MapOfEvent =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfEvent')
MapOfEventItemResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfEventItemResponse')
MapOfEventsBatch =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfEventsBatch')
MapOfItemResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfItemResponse')
MapOfListOfOpenHoursRules =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfListOfOpenHoursRules')
MapOfListOf__string =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfListOf__string')
MapOfMapOfEndpointMessageResult =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfMapOfEndpointMessageResult')
MapOfMessageResult =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfMessageResult')
MapOfMetricDimension =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOfMetricDimension')
MapOf__double =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOf__double')
MapOf__integer =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOf__integer')
MapOf__string =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'MapOf__string')
Message =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Message')
MessageBody =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MessageBody')
MessageConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MessageConfiguration')
MessageHeader =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MessageHeader')
MessageRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MessageRequest')
MessageResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MessageResponse')
MessageResult =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MessageResult')
MessageType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MessageType')
MethodNotAllowedException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MethodNotAllowedException')
MetricDimension =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MetricDimension')
Mode =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Mode')
MultiConditionalBranch =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MultiConditionalBranch')
MultiConditionalSplitActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MultiConditionalSplitActivity')
NotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'NotFoundException')
NumberValidateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'NumberValidateRequest')
NumberValidateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'NumberValidateResponse')
OpenHours =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'OpenHours')
OpenHoursRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'OpenHoursRule')
Operator =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Operator')
OverrideButtonConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'OverrideButtonConfiguration')
PayloadTooLargeException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PayloadTooLargeException')
PhoneNumberValidateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PhoneNumberValidateRequest')
PhoneNumberValidateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PhoneNumberValidateResponse')
PublicEndpoint =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PublicEndpoint')
PushMessageActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PushMessageActivity')
PushNotificationTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PushNotificationTemplateRequest')
PushNotificationTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PushNotificationTemplateResponse')
PutEventStreamRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutEventStreamRequest')
PutEventStreamResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutEventStreamResponse')
PutEventsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutEventsRequest')
PutEventsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutEventsResponse')
QuietTime =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'QuietTime')
RandomSplitActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RandomSplitActivity')
RandomSplitEntry =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RandomSplitEntry')
RawEmail =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RawEmail')
RecencyDimension =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RecencyDimension')
RecencyType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RecencyType')
RecommenderConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RecommenderConfigurationResponse')
RemoveAttributesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RemoveAttributesRequest')
RemoveAttributesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RemoveAttributesResponse')
ResultRow =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResultRow')
ResultRowValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResultRowValue')
SMSChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SMSChannelRequest')
SMSChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SMSChannelResponse')
SMSMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SMSMessage')
SMSMessageActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SMSMessageActivity')
SMSTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SMSTemplateRequest')
SMSTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SMSTemplateResponse')
Schedule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Schedule')
SegmentBehaviors =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentBehaviors')
SegmentCondition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentCondition')
SegmentDemographics =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentDemographics')
SegmentDimensions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentDimensions')
SegmentGroup =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentGroup')
SegmentGroupList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentGroupList')
SegmentImportResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentImportResource')
SegmentLocation =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentLocation')
SegmentReference =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentReference')
SegmentResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentResponse')
SegmentType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SegmentType')
SegmentsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SegmentsResponse')
SendMessagesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendMessagesRequest')
SendMessagesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendMessagesResponse')
SendOTPMessageRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendOTPMessageRequest')
SendOTPMessageRequestParameters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendOTPMessageRequestParameters')
SendOTPMessageResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendOTPMessageResponse')
SendUsersMessageRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendUsersMessageRequest')
SendUsersMessageResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendUsersMessageResponse')
SendUsersMessagesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendUsersMessagesRequest')
SendUsersMessagesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SendUsersMessagesResponse')
Session =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Session')
SetDimension =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SetDimension')
SimpleCondition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SimpleCondition')
SimpleEmail =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SimpleEmail')
SimpleEmailPart =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SimpleEmailPart')
SourceType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SourceType')
StartCondition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'StartCondition')
State =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'State')
TagResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceRequest')
TagsModel =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagsModel')
Template =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Template')
TemplateActiveVersionRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TemplateActiveVersionRequest')
TemplateConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TemplateConfiguration')
TemplateCreateMessageBody =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TemplateCreateMessageBody')
TemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TemplateResponse')
TemplateType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TemplateType')
TemplateVersionResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TemplateVersionResponse')
TemplateVersionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TemplateVersionsResponse')
TemplatesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TemplatesResponse')
TooManyRequestsException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TooManyRequestsException')
TreatmentResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TreatmentResource')
Type =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Type')
UntagResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceRequest')
UpdateAdmChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateAdmChannelRequest')
UpdateAdmChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateAdmChannelResponse')
UpdateApnsChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApnsChannelRequest')
UpdateApnsChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApnsChannelResponse')
UpdateApnsSandboxChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApnsSandboxChannelRequest')
UpdateApnsSandboxChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApnsSandboxChannelResponse')
UpdateApnsVoipChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApnsVoipChannelRequest')
UpdateApnsVoipChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApnsVoipChannelResponse')
UpdateApnsVoipSandboxChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApnsVoipSandboxChannelRequest')
UpdateApnsVoipSandboxChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApnsVoipSandboxChannelResponse')
UpdateApplicationSettingsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApplicationSettingsRequest')
UpdateApplicationSettingsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateApplicationSettingsResponse')
UpdateAttributesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateAttributesRequest')
UpdateBaiduChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateBaiduChannelRequest')
UpdateBaiduChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateBaiduChannelResponse')
UpdateCampaignRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateCampaignRequest')
UpdateCampaignResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateCampaignResponse')
UpdateEmailChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateEmailChannelRequest')
UpdateEmailChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateEmailChannelResponse')
UpdateEmailTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateEmailTemplateRequest')
UpdateEmailTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateEmailTemplateResponse')
UpdateEndpointRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateEndpointRequest')
UpdateEndpointResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateEndpointResponse')
UpdateEndpointsBatchRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateEndpointsBatchRequest')
UpdateEndpointsBatchResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateEndpointsBatchResponse')
UpdateGcmChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateGcmChannelRequest')
UpdateGcmChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateGcmChannelResponse')
UpdateInAppTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateInAppTemplateRequest')
UpdateInAppTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateInAppTemplateResponse')
UpdateJourneyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateJourneyRequest')
UpdateJourneyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateJourneyResponse')
UpdateJourneyStateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateJourneyStateRequest')
UpdateJourneyStateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateJourneyStateResponse')
UpdatePushTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdatePushTemplateRequest')
UpdatePushTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdatePushTemplateResponse')
UpdateRecommenderConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRecommenderConfiguration')
UpdateRecommenderConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRecommenderConfigurationRequest')
UpdateRecommenderConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRecommenderConfigurationResponse')
UpdateSegmentRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateSegmentRequest')
UpdateSegmentResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateSegmentResponse')
UpdateSmsChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateSmsChannelRequest')
UpdateSmsChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateSmsChannelResponse')
UpdateSmsTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateSmsTemplateRequest')
UpdateSmsTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateSmsTemplateResponse')
UpdateTemplateActiveVersionRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateTemplateActiveVersionRequest')
UpdateTemplateActiveVersionResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateTemplateActiveVersionResponse')
UpdateVoiceChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateVoiceChannelRequest')
UpdateVoiceChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateVoiceChannelResponse')
UpdateVoiceTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateVoiceTemplateRequest')
UpdateVoiceTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateVoiceTemplateResponse')
VerificationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VerificationResponse')
VerifyOTPMessageRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VerifyOTPMessageRequest')
VerifyOTPMessageRequestParameters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VerifyOTPMessageRequestParameters')
VerifyOTPMessageResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VerifyOTPMessageResponse')
VoiceChannelRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VoiceChannelRequest')
VoiceChannelResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VoiceChannelResponse')
VoiceMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VoiceMessage')
VoiceTemplateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VoiceTemplateRequest')
VoiceTemplateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VoiceTemplateResponse')
WaitActivity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WaitActivity')
WaitTime =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WaitTime')
WriteApplicationSettingsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WriteApplicationSettingsRequest')
WriteCampaignRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WriteCampaignRequest')
WriteEventStream =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WriteEventStream')
WriteJourneyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WriteJourneyRequest')
WriteSegmentRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WriteSegmentRequest')
WriteTreatmentResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WriteTreatmentResource')
API =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Seahorse::Model::Api.new.tap do |api|

  api.version = "2016-12-01"

  api. = {
    "apiVersion" => "2016-12-01",
    "auth" => ["aws.auth#sigv4"],
    "endpointPrefix" => "pinpoint",
    "jsonVersion" => "1.1",
    "protocol" => "rest-json",
    "serviceFullName" => "Amazon Pinpoint",
    "serviceId" => "Pinpoint",
    "signatureVersion" => "v4",
    "signingName" => "mobiletargeting",
    "uid" => "pinpoint-2016-12-01",
  }

  api.add_operation(:create_app, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateApp"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps"
    o.input = Shapes::ShapeRef.new(shape: CreateAppRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateAppResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:create_campaign, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateCampaign"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns"
    o.input = Shapes::ShapeRef.new(shape: CreateCampaignRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateCampaignResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:create_email_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateEmailTemplate"
    o.http_method = "POST"
    o.http_request_uri = "/v1/templates/{template-name}/email"
    o.input = Shapes::ShapeRef.new(shape: CreateEmailTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateEmailTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
  end)

  api.add_operation(:create_export_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateExportJob"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/jobs/export"
    o.input = Shapes::ShapeRef.new(shape: CreateExportJobRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateExportJobResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:create_import_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateImportJob"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/jobs/import"
    o.input = Shapes::ShapeRef.new(shape: CreateImportJobRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateImportJobResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:create_in_app_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateInAppTemplate"
    o.http_method = "POST"
    o.http_request_uri = "/v1/templates/{template-name}/inapp"
    o.input = Shapes::ShapeRef.new(shape: CreateInAppTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateInAppTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
  end)

  api.add_operation(:create_journey, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateJourney"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/journeys"
    o.input = Shapes::ShapeRef.new(shape: CreateJourneyRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateJourneyResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:create_push_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreatePushTemplate"
    o.http_method = "POST"
    o.http_request_uri = "/v1/templates/{template-name}/push"
    o.input = Shapes::ShapeRef.new(shape: CreatePushTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: CreatePushTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
  end)

  api.add_operation(:create_recommender_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateRecommenderConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/v1/recommenders"
    o.input = Shapes::ShapeRef.new(shape: CreateRecommenderConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateRecommenderConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:create_segment, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateSegment"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/segments"
    o.input = Shapes::ShapeRef.new(shape: CreateSegmentRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateSegmentResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:create_sms_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateSmsTemplate"
    o.http_method = "POST"
    o.http_request_uri = "/v1/templates/{template-name}/sms"
    o.input = Shapes::ShapeRef.new(shape: CreateSmsTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateSmsTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
  end)

  api.add_operation(:create_voice_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateVoiceTemplate"
    o.http_method = "POST"
    o.http_request_uri = "/v1/templates/{template-name}/voice"
    o.input = Shapes::ShapeRef.new(shape: CreateVoiceTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateVoiceTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
  end)

  api.add_operation(:delete_adm_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteAdmChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/adm"
    o.input = Shapes::ShapeRef.new(shape: DeleteAdmChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteAdmChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_apns_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteApnsChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns"
    o.input = Shapes::ShapeRef.new(shape: DeleteApnsChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteApnsChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_apns_sandbox_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteApnsSandboxChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_sandbox"
    o.input = Shapes::ShapeRef.new(shape: DeleteApnsSandboxChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteApnsSandboxChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_apns_voip_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteApnsVoipChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_voip"
    o.input = Shapes::ShapeRef.new(shape: DeleteApnsVoipChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteApnsVoipChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_apns_voip_sandbox_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteApnsVoipSandboxChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_voip_sandbox"
    o.input = Shapes::ShapeRef.new(shape: DeleteApnsVoipSandboxChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteApnsVoipSandboxChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_app, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteApp"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}"
    o.input = Shapes::ShapeRef.new(shape: DeleteAppRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteAppResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_baidu_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteBaiduChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/baidu"
    o.input = Shapes::ShapeRef.new(shape: DeleteBaiduChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteBaiduChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_campaign, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteCampaign"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns/{campaign-id}"
    o.input = Shapes::ShapeRef.new(shape: DeleteCampaignRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteCampaignResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_email_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteEmailChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/email"
    o.input = Shapes::ShapeRef.new(shape: DeleteEmailChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteEmailChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_email_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteEmailTemplate"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/templates/{template-name}/email"
    o.input = Shapes::ShapeRef.new(shape: DeleteEmailTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteEmailTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_endpoint, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteEndpoint"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/endpoints/{endpoint-id}"
    o.input = Shapes::ShapeRef.new(shape: DeleteEndpointRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteEndpointResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_event_stream, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteEventStream"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/eventstream"
    o.input = Shapes::ShapeRef.new(shape: DeleteEventStreamRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteEventStreamResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_gcm_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteGcmChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/gcm"
    o.input = Shapes::ShapeRef.new(shape: DeleteGcmChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteGcmChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_in_app_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteInAppTemplate"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/templates/{template-name}/inapp"
    o.input = Shapes::ShapeRef.new(shape: DeleteInAppTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteInAppTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_journey, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteJourney"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}"
    o.input = Shapes::ShapeRef.new(shape: DeleteJourneyRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteJourneyResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_push_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeletePushTemplate"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/templates/{template-name}/push"
    o.input = Shapes::ShapeRef.new(shape: DeletePushTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: DeletePushTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_recommender_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteRecommenderConfiguration"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/recommenders/{recommender-id}"
    o.input = Shapes::ShapeRef.new(shape: DeleteRecommenderConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteRecommenderConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_segment, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteSegment"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/segments/{segment-id}"
    o.input = Shapes::ShapeRef.new(shape: DeleteSegmentRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteSegmentResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_sms_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteSmsChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/sms"
    o.input = Shapes::ShapeRef.new(shape: DeleteSmsChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteSmsChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_sms_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteSmsTemplate"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/templates/{template-name}/sms"
    o.input = Shapes::ShapeRef.new(shape: DeleteSmsTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteSmsTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_user_endpoints, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteUserEndpoints"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/users/{user-id}"
    o.input = Shapes::ShapeRef.new(shape: DeleteUserEndpointsRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteUserEndpointsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_voice_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteVoiceChannel"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/apps/{application-id}/channels/voice"
    o.input = Shapes::ShapeRef.new(shape: DeleteVoiceChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteVoiceChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:delete_voice_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteVoiceTemplate"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/templates/{template-name}/voice"
    o.input = Shapes::ShapeRef.new(shape: DeleteVoiceTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteVoiceTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_adm_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetAdmChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/adm"
    o.input = Shapes::ShapeRef.new(shape: GetAdmChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetAdmChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_apns_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetApnsChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns"
    o.input = Shapes::ShapeRef.new(shape: GetApnsChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetApnsChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_apns_sandbox_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetApnsSandboxChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_sandbox"
    o.input = Shapes::ShapeRef.new(shape: GetApnsSandboxChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetApnsSandboxChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_apns_voip_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetApnsVoipChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_voip"
    o.input = Shapes::ShapeRef.new(shape: GetApnsVoipChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetApnsVoipChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_apns_voip_sandbox_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetApnsVoipSandboxChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_voip_sandbox"
    o.input = Shapes::ShapeRef.new(shape: GetApnsVoipSandboxChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetApnsVoipSandboxChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_app, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetApp"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}"
    o.input = Shapes::ShapeRef.new(shape: GetAppRequest)
    o.output = Shapes::ShapeRef.new(shape: GetAppResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_application_date_range_kpi, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetApplicationDateRangeKpi"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/kpis/daterange/{kpi-name}"
    o.input = Shapes::ShapeRef.new(shape: GetApplicationDateRangeKpiRequest)
    o.output = Shapes::ShapeRef.new(shape: GetApplicationDateRangeKpiResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_application_settings, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetApplicationSettings"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/settings"
    o.input = Shapes::ShapeRef.new(shape: GetApplicationSettingsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetApplicationSettingsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_apps, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetApps"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps"
    o.input = Shapes::ShapeRef.new(shape: GetAppsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetAppsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_baidu_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetBaiduChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/baidu"
    o.input = Shapes::ShapeRef.new(shape: GetBaiduChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetBaiduChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_campaign, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetCampaign"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns/{campaign-id}"
    o.input = Shapes::ShapeRef.new(shape: GetCampaignRequest)
    o.output = Shapes::ShapeRef.new(shape: GetCampaignResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_campaign_activities, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetCampaignActivities"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns/{campaign-id}/activities"
    o.input = Shapes::ShapeRef.new(shape: GetCampaignActivitiesRequest)
    o.output = Shapes::ShapeRef.new(shape: GetCampaignActivitiesResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_campaign_date_range_kpi, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetCampaignDateRangeKpi"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns/{campaign-id}/kpis/daterange/{kpi-name}"
    o.input = Shapes::ShapeRef.new(shape: GetCampaignDateRangeKpiRequest)
    o.output = Shapes::ShapeRef.new(shape: GetCampaignDateRangeKpiResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_campaign_version, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetCampaignVersion"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns/{campaign-id}/versions/{version}"
    o.input = Shapes::ShapeRef.new(shape: GetCampaignVersionRequest)
    o.output = Shapes::ShapeRef.new(shape: GetCampaignVersionResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_campaign_versions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetCampaignVersions"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns/{campaign-id}/versions"
    o.input = Shapes::ShapeRef.new(shape: GetCampaignVersionsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetCampaignVersionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_campaigns, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetCampaigns"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns"
    o.input = Shapes::ShapeRef.new(shape: GetCampaignsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetCampaignsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_channels, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetChannels"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels"
    o.input = Shapes::ShapeRef.new(shape: GetChannelsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetChannelsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_email_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetEmailChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/email"
    o.input = Shapes::ShapeRef.new(shape: GetEmailChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetEmailChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_email_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetEmailTemplate"
    o.http_method = "GET"
    o.http_request_uri = "/v1/templates/{template-name}/email"
    o.input = Shapes::ShapeRef.new(shape: GetEmailTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: GetEmailTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_endpoint, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetEndpoint"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/endpoints/{endpoint-id}"
    o.input = Shapes::ShapeRef.new(shape: GetEndpointRequest)
    o.output = Shapes::ShapeRef.new(shape: GetEndpointResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_event_stream, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetEventStream"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/eventstream"
    o.input = Shapes::ShapeRef.new(shape: GetEventStreamRequest)
    o.output = Shapes::ShapeRef.new(shape: GetEventStreamResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_export_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetExportJob"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/jobs/export/{job-id}"
    o.input = Shapes::ShapeRef.new(shape: GetExportJobRequest)
    o.output = Shapes::ShapeRef.new(shape: GetExportJobResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_export_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetExportJobs"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/jobs/export"
    o.input = Shapes::ShapeRef.new(shape: GetExportJobsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetExportJobsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_gcm_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetGcmChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/gcm"
    o.input = Shapes::ShapeRef.new(shape: GetGcmChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetGcmChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_import_job, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetImportJob"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/jobs/import/{job-id}"
    o.input = Shapes::ShapeRef.new(shape: GetImportJobRequest)
    o.output = Shapes::ShapeRef.new(shape: GetImportJobResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_import_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetImportJobs"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/jobs/import"
    o.input = Shapes::ShapeRef.new(shape: GetImportJobsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetImportJobsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_in_app_messages, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetInAppMessages"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/endpoints/{endpoint-id}/inappmessages"
    o.input = Shapes::ShapeRef.new(shape: GetInAppMessagesRequest)
    o.output = Shapes::ShapeRef.new(shape: GetInAppMessagesResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_in_app_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetInAppTemplate"
    o.http_method = "GET"
    o.http_request_uri = "/v1/templates/{template-name}/inapp"
    o.input = Shapes::ShapeRef.new(shape: GetInAppTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: GetInAppTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_journey, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetJourney"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}"
    o.input = Shapes::ShapeRef.new(shape: GetJourneyRequest)
    o.output = Shapes::ShapeRef.new(shape: GetJourneyResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_journey_date_range_kpi, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetJourneyDateRangeKpi"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}/kpis/daterange/{kpi-name}"
    o.input = Shapes::ShapeRef.new(shape: GetJourneyDateRangeKpiRequest)
    o.output = Shapes::ShapeRef.new(shape: GetJourneyDateRangeKpiResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_journey_execution_activity_metrics, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetJourneyExecutionActivityMetrics"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}/activities/{journey-activity-id}/execution-metrics"
    o.input = Shapes::ShapeRef.new(shape: GetJourneyExecutionActivityMetricsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetJourneyExecutionActivityMetricsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_journey_execution_metrics, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetJourneyExecutionMetrics"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}/execution-metrics"
    o.input = Shapes::ShapeRef.new(shape: GetJourneyExecutionMetricsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetJourneyExecutionMetricsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_journey_run_execution_activity_metrics, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetJourneyRunExecutionActivityMetrics"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}/runs/{run-id}/activities/{journey-activity-id}/execution-metrics"
    o.input = Shapes::ShapeRef.new(shape: GetJourneyRunExecutionActivityMetricsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetJourneyRunExecutionActivityMetricsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_journey_run_execution_metrics, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetJourneyRunExecutionMetrics"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}/runs/{run-id}/execution-metrics"
    o.input = Shapes::ShapeRef.new(shape: GetJourneyRunExecutionMetricsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetJourneyRunExecutionMetricsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_journey_runs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetJourneyRuns"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}/runs"
    o.input = Shapes::ShapeRef.new(shape: GetJourneyRunsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetJourneyRunsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_push_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetPushTemplate"
    o.http_method = "GET"
    o.http_request_uri = "/v1/templates/{template-name}/push"
    o.input = Shapes::ShapeRef.new(shape: GetPushTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: GetPushTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_recommender_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRecommenderConfiguration"
    o.http_method = "GET"
    o.http_request_uri = "/v1/recommenders/{recommender-id}"
    o.input = Shapes::ShapeRef.new(shape: GetRecommenderConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: GetRecommenderConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_recommender_configurations, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRecommenderConfigurations"
    o.http_method = "GET"
    o.http_request_uri = "/v1/recommenders"
    o.input = Shapes::ShapeRef.new(shape: GetRecommenderConfigurationsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetRecommenderConfigurationsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_segment, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSegment"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/segments/{segment-id}"
    o.input = Shapes::ShapeRef.new(shape: GetSegmentRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSegmentResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_segment_export_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSegmentExportJobs"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/segments/{segment-id}/jobs/export"
    o.input = Shapes::ShapeRef.new(shape: GetSegmentExportJobsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSegmentExportJobsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_segment_import_jobs, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSegmentImportJobs"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/segments/{segment-id}/jobs/import"
    o.input = Shapes::ShapeRef.new(shape: GetSegmentImportJobsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSegmentImportJobsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_segment_version, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSegmentVersion"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/segments/{segment-id}/versions/{version}"
    o.input = Shapes::ShapeRef.new(shape: GetSegmentVersionRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSegmentVersionResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_segment_versions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSegmentVersions"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/segments/{segment-id}/versions"
    o.input = Shapes::ShapeRef.new(shape: GetSegmentVersionsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSegmentVersionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_segments, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSegments"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/segments"
    o.input = Shapes::ShapeRef.new(shape: GetSegmentsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSegmentsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_sms_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSmsChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/sms"
    o.input = Shapes::ShapeRef.new(shape: GetSmsChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSmsChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_sms_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSmsTemplate"
    o.http_method = "GET"
    o.http_request_uri = "/v1/templates/{template-name}/sms"
    o.input = Shapes::ShapeRef.new(shape: GetSmsTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSmsTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_user_endpoints, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetUserEndpoints"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/users/{user-id}"
    o.input = Shapes::ShapeRef.new(shape: GetUserEndpointsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetUserEndpointsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_voice_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetVoiceChannel"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/channels/voice"
    o.input = Shapes::ShapeRef.new(shape: GetVoiceChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: GetVoiceChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:get_voice_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetVoiceTemplate"
    o.http_method = "GET"
    o.http_request_uri = "/v1/templates/{template-name}/voice"
    o.input = Shapes::ShapeRef.new(shape: GetVoiceTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: GetVoiceTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:list_journeys, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListJourneys"
    o.http_method = "GET"
    o.http_request_uri = "/v1/apps/{application-id}/journeys"
    o.input = Shapes::ShapeRef.new(shape: ListJourneysRequest)
    o.output = Shapes::ShapeRef.new(shape: ListJourneysResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListTagsForResource"
    o.http_method = "GET"
    o.http_request_uri = "/v1/tags/{resource-arn}"
    o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
  end)

  api.add_operation(:list_template_versions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListTemplateVersions"
    o.http_method = "GET"
    o.http_request_uri = "/v1/templates/{template-name}/{template-type}/versions"
    o.input = Shapes::ShapeRef.new(shape: ListTemplateVersionsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListTemplateVersionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:list_templates, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListTemplates"
    o.http_method = "GET"
    o.http_request_uri = "/v1/templates"
    o.input = Shapes::ShapeRef.new(shape: ListTemplatesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListTemplatesResponse)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
  end)

  api.add_operation(:phone_number_validate, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PhoneNumberValidate"
    o.http_method = "POST"
    o.http_request_uri = "/v1/phone/number/validate"
    o.input = Shapes::ShapeRef.new(shape: PhoneNumberValidateRequest)
    o.output = Shapes::ShapeRef.new(shape: PhoneNumberValidateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:put_event_stream, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutEventStream"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/eventstream"
    o.input = Shapes::ShapeRef.new(shape: PutEventStreamRequest)
    o.output = Shapes::ShapeRef.new(shape: PutEventStreamResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:put_events, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutEvents"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/events"
    o.input = Shapes::ShapeRef.new(shape: PutEventsRequest)
    o.output = Shapes::ShapeRef.new(shape: PutEventsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:remove_attributes, Seahorse::Model::Operation.new.tap do |o|
    o.name = "RemoveAttributes"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/attributes/{attribute-type}"
    o.input = Shapes::ShapeRef.new(shape: RemoveAttributesRequest)
    o.output = Shapes::ShapeRef.new(shape: RemoveAttributesResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:send_messages, Seahorse::Model::Operation.new.tap do |o|
    o.name = "SendMessages"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/messages"
    o.input = Shapes::ShapeRef.new(shape: SendMessagesRequest)
    o.output = Shapes::ShapeRef.new(shape: SendMessagesResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:send_otp_message, Seahorse::Model::Operation.new.tap do |o|
    o.name = "SendOTPMessage"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/otp"
    o.input = Shapes::ShapeRef.new(shape: SendOTPMessageRequest)
    o.output = Shapes::ShapeRef.new(shape: SendOTPMessageResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:send_users_messages, Seahorse::Model::Operation.new.tap do |o|
    o.name = "SendUsersMessages"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/users-messages"
    o.input = Shapes::ShapeRef.new(shape: SendUsersMessagesRequest)
    o.output = Shapes::ShapeRef.new(shape: SendUsersMessagesResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "TagResource"
    o.http_method = "POST"
    o.http_request_uri = "/v1/tags/{resource-arn}"
    o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
  end)

  api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UntagResource"
    o.http_method = "DELETE"
    o.http_request_uri = "/v1/tags/{resource-arn}"
    o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
  end)

  api.add_operation(:update_adm_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateAdmChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/adm"
    o.input = Shapes::ShapeRef.new(shape: UpdateAdmChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateAdmChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_apns_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateApnsChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns"
    o.input = Shapes::ShapeRef.new(shape: UpdateApnsChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateApnsChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_apns_sandbox_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateApnsSandboxChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_sandbox"
    o.input = Shapes::ShapeRef.new(shape: UpdateApnsSandboxChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateApnsSandboxChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_apns_voip_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateApnsVoipChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_voip"
    o.input = Shapes::ShapeRef.new(shape: UpdateApnsVoipChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateApnsVoipChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_apns_voip_sandbox_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateApnsVoipSandboxChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/apns_voip_sandbox"
    o.input = Shapes::ShapeRef.new(shape: UpdateApnsVoipSandboxChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateApnsVoipSandboxChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_application_settings, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateApplicationSettings"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/settings"
    o.input = Shapes::ShapeRef.new(shape: UpdateApplicationSettingsRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateApplicationSettingsResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_baidu_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateBaiduChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/baidu"
    o.input = Shapes::ShapeRef.new(shape: UpdateBaiduChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateBaiduChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_campaign, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateCampaign"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/campaigns/{campaign-id}"
    o.input = Shapes::ShapeRef.new(shape: UpdateCampaignRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateCampaignResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_email_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateEmailChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/email"
    o.input = Shapes::ShapeRef.new(shape: UpdateEmailChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateEmailChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_email_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateEmailTemplate"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/templates/{template-name}/email"
    o.input = Shapes::ShapeRef.new(shape: UpdateEmailTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateEmailTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_endpoint, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateEndpoint"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/endpoints/{endpoint-id}"
    o.input = Shapes::ShapeRef.new(shape: UpdateEndpointRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateEndpointResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_endpoints_batch, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateEndpointsBatch"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/endpoints"
    o.input = Shapes::ShapeRef.new(shape: UpdateEndpointsBatchRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateEndpointsBatchResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_gcm_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateGcmChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/gcm"
    o.input = Shapes::ShapeRef.new(shape: UpdateGcmChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateGcmChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_in_app_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateInAppTemplate"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/templates/{template-name}/inapp"
    o.input = Shapes::ShapeRef.new(shape: UpdateInAppTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateInAppTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_journey, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateJourney"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}"
    o.input = Shapes::ShapeRef.new(shape: UpdateJourneyRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateJourneyResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
    o.errors << Shapes::ShapeRef.new(shape: ConflictException)
  end)

  api.add_operation(:update_journey_state, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateJourneyState"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/journeys/{journey-id}/state"
    o.input = Shapes::ShapeRef.new(shape: UpdateJourneyStateRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateJourneyStateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_push_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdatePushTemplate"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/templates/{template-name}/push"
    o.input = Shapes::ShapeRef.new(shape: UpdatePushTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdatePushTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_recommender_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateRecommenderConfiguration"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/recommenders/{recommender-id}"
    o.input = Shapes::ShapeRef.new(shape: UpdateRecommenderConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateRecommenderConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_segment, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateSegment"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/segments/{segment-id}"
    o.input = Shapes::ShapeRef.new(shape: UpdateSegmentRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateSegmentResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_sms_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateSmsChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/sms"
    o.input = Shapes::ShapeRef.new(shape: UpdateSmsChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateSmsChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_sms_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateSmsTemplate"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/templates/{template-name}/sms"
    o.input = Shapes::ShapeRef.new(shape: UpdateSmsTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateSmsTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_template_active_version, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateTemplateActiveVersion"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/templates/{template-name}/{template-type}/active-version"
    o.input = Shapes::ShapeRef.new(shape: UpdateTemplateActiveVersionRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateTemplateActiveVersionResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_voice_channel, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateVoiceChannel"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/apps/{application-id}/channels/voice"
    o.input = Shapes::ShapeRef.new(shape: UpdateVoiceChannelRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateVoiceChannelResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:update_voice_template, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateVoiceTemplate"
    o.http_method = "PUT"
    o.http_request_uri = "/v1/templates/{template-name}/voice"
    o.input = Shapes::ShapeRef.new(shape: UpdateVoiceTemplateRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateVoiceTemplateResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)

  api.add_operation(:verify_otp_message, Seahorse::Model::Operation.new.tap do |o|
    o.name = "VerifyOTPMessage"
    o.http_method = "POST"
    o.http_request_uri = "/v1/apps/{application-id}/verify-otp"
    o.input = Shapes::ShapeRef.new(shape: VerifyOTPMessageRequest)
    o.output = Shapes::ShapeRef.new(shape: VerifyOTPMessageResponse)
    o.errors << Shapes::ShapeRef.new(shape: BadRequestException)
    o.errors << Shapes::ShapeRef.new(shape: InternalServerErrorException)
    o.errors << Shapes::ShapeRef.new(shape: PayloadTooLargeException)
    o.errors << Shapes::ShapeRef.new(shape: ForbiddenException)
    o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: MethodNotAllowedException)
    o.errors << Shapes::ShapeRef.new(shape: TooManyRequestsException)
  end)
end