From d686636ebe42a0043982627f451d015f461c6e89 Mon Sep 17 00:00:00 2001 From: AWS SDK for Ruby Date: Fri, 17 Jun 2022 18:05:10 +0000 Subject: [PATCH] Updated API models and rebuilt service gems. --- README.md | 1 + apis/connect/2017-08-08/api-2.json | 3 +- apis/connectcampaigns/2021-01-30/api-2.json | 1282 +++++++++++++++ apis/connectcampaigns/2021-01-30/docs-2.json | 658 ++++++++ .../2021-01-30/examples-1.json | 5 + .../2021-01-30/paginators-1.json | 10 + apis/dynamodb/2012-08-10/docs-2.json | 42 +- apis/streams.dynamodb/2012-08-10/docs-2.json | 4 +- gems/aws-partitions/CHANGELOG.md | 5 + gems/aws-partitions/VERSION | 2 +- gems/aws-partitions/lib/aws-partitions.rb | 1 + gems/aws-partitions/partitions.json | 8 + gems/aws-sdk-connect/CHANGELOG.md | 5 + gems/aws-sdk-connect/VERSION | 2 +- gems/aws-sdk-connect/lib/aws-sdk-connect.rb | 2 +- .../lib/aws-sdk-connect/client.rb | 10 +- .../lib/aws-sdk-connect/types.rb | 4 +- .../CHANGELOG.md | 8 + .../LICENSE.txt | 202 +++ gems/aws-sdk-connectcampaignservice/VERSION | 1 + .../aws-sdk-connectcampaignservice.gemspec | 32 + .../features/env.rb | 18 + .../features/step_definitions.rb | 8 + .../lib/aws-sdk-connectcampaignservice.rb | 53 + .../aws-sdk-connectcampaignservice/client.rb | 1094 +++++++++++++ .../client_api.rb | 690 ++++++++ .../customizations.rb | 0 .../aws-sdk-connectcampaignservice/errors.rb | 240 +++ .../resource.rb | 26 + .../aws-sdk-connectcampaignservice/types.rb | 1441 +++++++++++++++++ .../spec/spec_helper.rb | 18 + gems/aws-sdk-dynamodb/CHANGELOG.md | 5 + gems/aws-sdk-dynamodb/VERSION | 2 +- gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb.rb | 2 +- .../lib/aws-sdk-dynamodb/client.rb | 96 +- .../lib/aws-sdk-dynamodb/table.rb | 46 +- .../lib/aws-sdk-dynamodb/types.rb | 92 +- gems/aws-sdk-dynamodbstreams/CHANGELOG.md | 5 + gems/aws-sdk-dynamodbstreams/VERSION | 2 +- .../lib/aws-sdk-dynamodbstreams.rb | 2 +- .../lib/aws-sdk-dynamodbstreams/client.rb | 2 +- .../lib/aws-sdk-dynamodbstreams/types.rb | 8 +- gems/aws-sdk-resources/CHANGELOG.md | 5 + gems/aws-sdk-resources/VERSION | 2 +- .../aws-sdk-resources.gemspec | 1 + .../lib/aws-sdk-resources.rb | 1 + services.json | 3 + 47 files changed, 5998 insertions(+), 151 deletions(-) create mode 100644 apis/connectcampaigns/2021-01-30/api-2.json create mode 100644 apis/connectcampaigns/2021-01-30/docs-2.json create mode 100644 apis/connectcampaigns/2021-01-30/examples-1.json create mode 100644 apis/connectcampaigns/2021-01-30/paginators-1.json create mode 100644 gems/aws-sdk-connectcampaignservice/CHANGELOG.md create mode 100644 gems/aws-sdk-connectcampaignservice/LICENSE.txt create mode 100644 gems/aws-sdk-connectcampaignservice/VERSION create mode 100644 gems/aws-sdk-connectcampaignservice/aws-sdk-connectcampaignservice.gemspec create mode 100644 gems/aws-sdk-connectcampaignservice/features/env.rb create mode 100644 gems/aws-sdk-connectcampaignservice/features/step_definitions.rb create mode 100644 gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice.rb create mode 100644 gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/client.rb create mode 100644 gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/client_api.rb create mode 100644 gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/customizations.rb create mode 100644 gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/errors.rb create mode 100644 gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/resource.rb create mode 100644 gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/types.rb create mode 100644 gems/aws-sdk-connectcampaignservice/spec/spec_helper.rb diff --git a/README.md b/README.md index 72cb09aed99..64fbcc8f166 100644 --- a/README.md +++ b/README.md @@ -603,6 +603,7 @@ RubyGems.org page under "LINKS" section. | Amazon WorkSpaces Web | Aws::WorkSpacesWeb | aws-sdk-workspacesweb | 2020-07-08 | | AmazonApiGatewayManagementApi | Aws::ApiGatewayManagementApi | aws-sdk-apigatewaymanagementapi | 2018-11-29 | | AmazonApiGatewayV2 | Aws::ApiGatewayV2 | aws-sdk-apigatewayv2 | 2018-11-29 | +| AmazonConnectCampaignService | Aws::ConnectCampaignService | aws-sdk-connectcampaignservice | 2021-01-30 | | AmazonMQ | Aws::MQ | aws-sdk-mq | 2017-11-27 | | AmazonMWAA | Aws::MWAA | aws-sdk-mwaa | 2020-07-01 | | AmazonNimbleStudio | Aws::NimbleStudio | aws-sdk-nimblestudio | 2020-08-01 | diff --git a/apis/connect/2017-08-08/api-2.json b/apis/connect/2017-08-08/api-2.json index 341dcc835f4..28a0ebe3149 100644 --- a/apis/connect/2017-08-08/api-2.json +++ b/apis/connect/2017-08-08/api-2.json @@ -5098,7 +5098,8 @@ "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", - "MULTI_PARTY_CONFERENCE" + "MULTI_PARTY_CONFERENCE", + "HIGH_VOLUME_OUTBOUND" ] }, "InstanceAttributeValue":{ diff --git a/apis/connectcampaigns/2021-01-30/api-2.json b/apis/connectcampaigns/2021-01-30/api-2.json new file mode 100644 index 00000000000..e454f385393 --- /dev/null +++ b/apis/connectcampaigns/2021-01-30/api-2.json @@ -0,0 +1,1282 @@ +{ + "version":"2.0", + "metadata":{ + "apiVersion":"2021-01-30", + "endpointPrefix":"connect-campaigns", + "jsonVersion":"1.1", + "protocol":"rest-json", + "serviceFullName":"AmazonConnectCampaignService", + "serviceId":"ConnectCampaigns", + "signatureVersion":"v4", + "signingName":"connect-campaigns", + "uid":"connectcampaigns-2021-01-30" + }, + "operations":{ + "CreateCampaign":{ + "name":"CreateCampaign", + "http":{ + "method":"PUT", + "requestUri":"/campaigns", + "responseCode":200 + }, + "input":{"shape":"CreateCampaignRequest"}, + "output":{"shape":"CreateCampaignResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ServiceQuotaExceededException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "DeleteCampaign":{ + "name":"DeleteCampaign", + "http":{ + "method":"DELETE", + "requestUri":"/campaigns/{id}", + "responseCode":200 + }, + "input":{"shape":"DeleteCampaignRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "DeleteConnectInstanceConfig":{ + "name":"DeleteConnectInstanceConfig", + "http":{ + "method":"DELETE", + "requestUri":"/connect-instance/{connectInstanceId}/config", + "responseCode":200 + }, + "input":{"shape":"DeleteConnectInstanceConfigRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InvalidStateException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "DeleteInstanceOnboardingJob":{ + "name":"DeleteInstanceOnboardingJob", + "http":{ + "method":"DELETE", + "requestUri":"/connect-instance/{connectInstanceId}/onboarding", + "responseCode":200 + }, + "input":{"shape":"DeleteInstanceOnboardingJobRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"InvalidStateException"} + ], + "idempotent":true + }, + "DescribeCampaign":{ + "name":"DescribeCampaign", + "http":{ + "method":"GET", + "requestUri":"/campaigns/{id}", + "responseCode":200 + }, + "input":{"shape":"DescribeCampaignRequest"}, + "output":{"shape":"DescribeCampaignResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetCampaignState":{ + "name":"GetCampaignState", + "http":{ + "method":"GET", + "requestUri":"/campaigns/{id}/state", + "responseCode":200 + }, + "input":{"shape":"GetCampaignStateRequest"}, + "output":{"shape":"GetCampaignStateResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetCampaignStateBatch":{ + "name":"GetCampaignStateBatch", + "http":{ + "method":"POST", + "requestUri":"/campaigns-state", + "responseCode":200 + }, + "input":{"shape":"GetCampaignStateBatchRequest"}, + "output":{"shape":"GetCampaignStateBatchResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "GetConnectInstanceConfig":{ + "name":"GetConnectInstanceConfig", + "http":{ + "method":"GET", + "requestUri":"/connect-instance/{connectInstanceId}/config", + "responseCode":200 + }, + "input":{"shape":"GetConnectInstanceConfigRequest"}, + "output":{"shape":"GetConnectInstanceConfigResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "GetInstanceOnboardingJobStatus":{ + "name":"GetInstanceOnboardingJobStatus", + "http":{ + "method":"GET", + "requestUri":"/connect-instance/{connectInstanceId}/onboarding", + "responseCode":200 + }, + "input":{"shape":"GetInstanceOnboardingJobStatusRequest"}, + "output":{"shape":"GetInstanceOnboardingJobStatusResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListCampaigns":{ + "name":"ListCampaigns", + "http":{ + "method":"POST", + "requestUri":"/campaigns-summary", + "responseCode":200 + }, + "input":{"shape":"ListCampaignsRequest"}, + "output":{"shape":"ListCampaignsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"} + ] + }, + "ListTagsForResource":{ + "name":"ListTagsForResource", + "http":{ + "method":"GET", + "requestUri":"/tags/{arn}", + "responseCode":200 + }, + "input":{"shape":"ListTagsForResourceRequest"}, + "output":{"shape":"ListTagsForResourceResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "PauseCampaign":{ + "name":"PauseCampaign", + "http":{ + "method":"POST", + "requestUri":"/campaigns/{id}/pause", + "responseCode":200 + }, + "input":{"shape":"PauseCampaignRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InvalidCampaignStateException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "PutDialRequestBatch":{ + "name":"PutDialRequestBatch", + "http":{ + "method":"PUT", + "requestUri":"/campaigns/{id}/dial-requests", + "responseCode":200 + }, + "input":{"shape":"PutDialRequestBatchRequest"}, + "output":{"shape":"PutDialRequestBatchResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"InvalidCampaignStateException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "ResumeCampaign":{ + "name":"ResumeCampaign", + "http":{ + "method":"POST", + "requestUri":"/campaigns/{id}/resume", + "responseCode":200 + }, + "input":{"shape":"ResumeCampaignRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InvalidCampaignStateException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "StartCampaign":{ + "name":"StartCampaign", + "http":{ + "method":"POST", + "requestUri":"/campaigns/{id}/start", + "responseCode":200 + }, + "input":{"shape":"StartCampaignRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InvalidCampaignStateException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "StartInstanceOnboardingJob":{ + "name":"StartInstanceOnboardingJob", + "http":{ + "method":"PUT", + "requestUri":"/connect-instance/{connectInstanceId}/onboarding", + "responseCode":200 + }, + "input":{"shape":"StartInstanceOnboardingJobRequest"}, + "output":{"shape":"StartInstanceOnboardingJobResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "StopCampaign":{ + "name":"StopCampaign", + "http":{ + "method":"POST", + "requestUri":"/campaigns/{id}/stop", + "responseCode":200 + }, + "input":{"shape":"StopCampaignRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ConflictException"}, + {"shape":"InvalidCampaignStateException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ] + }, + "TagResource":{ + "name":"TagResource", + "http":{ + "method":"POST", + "requestUri":"/tags/{arn}", + "responseCode":200 + }, + "input":{"shape":"TagResourceRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "UntagResource":{ + "name":"UntagResource", + "http":{ + "method":"DELETE", + "requestUri":"/tags/{arn}", + "responseCode":200 + }, + "input":{"shape":"UntagResourceRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + }, + "UpdateCampaignDialerConfig":{ + "name":"UpdateCampaignDialerConfig", + "http":{ + "method":"POST", + "requestUri":"/campaigns/{id}/dialer-config", + "responseCode":200 + }, + "input":{"shape":"UpdateCampaignDialerConfigRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "UpdateCampaignName":{ + "name":"UpdateCampaignName", + "http":{ + "method":"POST", + "requestUri":"/campaigns/{id}/name", + "responseCode":200 + }, + "input":{"shape":"UpdateCampaignNameRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"} + ], + "idempotent":true + }, + "UpdateCampaignOutboundCallConfig":{ + "name":"UpdateCampaignOutboundCallConfig", + "http":{ + "method":"POST", + "requestUri":"/campaigns/{id}/outbound-call-config", + "responseCode":200 + }, + "input":{"shape":"UpdateCampaignOutboundCallConfigRequest"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ResourceNotFoundException"}, + {"shape":"ValidationException"}, + {"shape":"ConflictException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "idempotent":true + } + }, + "shapes":{ + "AccessDeniedException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{ + "httpStatusCode":403, + "senderFault":true + }, + "exception":true + }, + "AnswerMachineDetectionConfig":{ + "type":"structure", + "required":["enableAnswerMachineDetection"], + "members":{ + "enableAnswerMachineDetection":{"shape":"Boolean"} + } + }, + "Arn":{ + "type":"string", + "max":500, + "min":20, + "pattern":"^arn:.*" + }, + "AttributeName":{ + "type":"string", + "max":32767, + "min":0, + "pattern":"^[a-zA-Z0-9\\-_]+$" + }, + "AttributeValue":{ + "type":"string", + "max":32767, + "min":0 + }, + "Attributes":{ + "type":"map", + "key":{"shape":"AttributeName"}, + "value":{"shape":"AttributeValue"}, + "sensitive":true + }, + "BandwidthAllocation":{ + "type":"double", + "box":true, + "max":1, + "min":0 + }, + "Boolean":{ + "type":"boolean", + "box":true + }, + "Campaign":{ + "type":"structure", + "required":[ + "arn", + "connectInstanceId", + "dialerConfig", + "id", + "name", + "outboundCallConfig" + ], + "members":{ + "arn":{"shape":"CampaignArn"}, + "connectInstanceId":{"shape":"InstanceId"}, + "dialerConfig":{"shape":"DialerConfig"}, + "id":{"shape":"CampaignId"}, + "name":{"shape":"CampaignName"}, + "outboundCallConfig":{"shape":"OutboundCallConfig"}, + "tags":{"shape":"TagMap"} + } + }, + "CampaignArn":{ + "type":"string", + "max":500, + "min":20 + }, + "CampaignFilters":{ + "type":"structure", + "members":{ + "instanceIdFilter":{"shape":"InstanceIdFilter"} + } + }, + "CampaignId":{ + "type":"string", + "max":256, + "min":0 + }, + "CampaignName":{ + "type":"string", + "max":127, + "min":1 + }, + "CampaignState":{ + "type":"string", + "enum":[ + "Initialized", + "Running", + "Paused", + "Stopped", + "Failed" + ] + }, + "CampaignSummary":{ + "type":"structure", + "required":[ + "arn", + "connectInstanceId", + "id", + "name" + ], + "members":{ + "arn":{"shape":"CampaignArn"}, + "connectInstanceId":{"shape":"InstanceId"}, + "id":{"shape":"CampaignId"}, + "name":{"shape":"CampaignName"} + } + }, + "CampaignSummaryList":{ + "type":"list", + "member":{"shape":"CampaignSummary"} + }, + "ClientToken":{ + "type":"string", + "max":64, + "min":0 + }, + "ConflictException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "ContactFlowId":{ + "type":"string", + "max":500, + "min":0 + }, + "CreateCampaignRequest":{ + "type":"structure", + "required":[ + "connectInstanceId", + "dialerConfig", + "name", + "outboundCallConfig" + ], + "members":{ + "connectInstanceId":{"shape":"InstanceId"}, + "dialerConfig":{"shape":"DialerConfig"}, + "name":{"shape":"CampaignName"}, + "outboundCallConfig":{"shape":"OutboundCallConfig"}, + "tags":{"shape":"TagMap"} + } + }, + "CreateCampaignResponse":{ + "type":"structure", + "members":{ + "arn":{"shape":"CampaignArn"}, + "id":{"shape":"CampaignId"}, + "tags":{"shape":"TagMap"} + } + }, + "DeleteCampaignRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "DeleteConnectInstanceConfigRequest":{ + "type":"structure", + "required":["connectInstanceId"], + "members":{ + "connectInstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"connectInstanceId" + } + } + }, + "DeleteInstanceOnboardingJobRequest":{ + "type":"structure", + "required":["connectInstanceId"], + "members":{ + "connectInstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"connectInstanceId" + } + } + }, + "DescribeCampaignRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "DescribeCampaignResponse":{ + "type":"structure", + "members":{ + "campaign":{"shape":"Campaign"} + } + }, + "DestinationPhoneNumber":{ + "type":"string", + "max":20, + "min":0, + "sensitive":true + }, + "DialRequest":{ + "type":"structure", + "required":[ + "attributes", + "clientToken", + "expirationTime", + "phoneNumber" + ], + "members":{ + "attributes":{"shape":"Attributes"}, + "clientToken":{"shape":"ClientToken"}, + "expirationTime":{"shape":"TimeStamp"}, + "phoneNumber":{"shape":"DestinationPhoneNumber"} + } + }, + "DialRequestId":{"type":"string"}, + "DialRequestList":{ + "type":"list", + "member":{"shape":"DialRequest"}, + "max":25, + "min":1 + }, + "DialerConfig":{ + "type":"structure", + "members":{ + "predictiveDialerConfig":{"shape":"PredictiveDialerConfig"}, + "progressiveDialerConfig":{"shape":"ProgressiveDialerConfig"} + }, + "union":true + }, + "Enabled":{"type":"boolean"}, + "EncryptionConfig":{ + "type":"structure", + "required":["enabled"], + "members":{ + "enabled":{"shape":"Enabled"}, + "encryptionType":{"shape":"EncryptionType"}, + "keyArn":{"shape":"EncryptionKey"} + } + }, + "EncryptionKey":{ + "type":"string", + "max":500, + "min":0 + }, + "EncryptionType":{ + "type":"string", + "enum":["KMS"] + }, + "FailedCampaignStateResponse":{ + "type":"structure", + "members":{ + "campaignId":{"shape":"CampaignId"}, + "failureCode":{"shape":"GetCampaignStateBatchFailureCode"} + } + }, + "FailedCampaignStateResponseList":{ + "type":"list", + "member":{"shape":"FailedCampaignStateResponse"}, + "max":25, + "min":0 + }, + "FailedRequest":{ + "type":"structure", + "members":{ + "clientToken":{"shape":"ClientToken"}, + "failureCode":{"shape":"FailureCode"}, + "id":{"shape":"DialRequestId"} + } + }, + "FailedRequestList":{ + "type":"list", + "member":{"shape":"FailedRequest"}, + "max":25, + "min":0 + }, + "FailureCode":{ + "type":"string", + "enum":[ + "InvalidInput", + "RequestThrottled", + "UnknownError" + ] + }, + "GetCampaignStateBatchFailureCode":{ + "type":"string", + "enum":[ + "ResourceNotFound", + "UnknownError" + ] + }, + "GetCampaignStateBatchRequest":{ + "type":"structure", + "required":["campaignIds"], + "members":{ + "campaignIds":{"shape":"GetCampaignStateBatchRequestCampaignIdsList"} + } + }, + "GetCampaignStateBatchRequestCampaignIdsList":{ + "type":"list", + "member":{"shape":"CampaignId"}, + "max":25, + "min":1 + }, + "GetCampaignStateBatchResponse":{ + "type":"structure", + "members":{ + "failedRequests":{"shape":"FailedCampaignStateResponseList"}, + "successfulRequests":{"shape":"SuccessfulCampaignStateResponseList"} + } + }, + "GetCampaignStateRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "GetCampaignStateResponse":{ + "type":"structure", + "members":{ + "state":{"shape":"CampaignState"} + } + }, + "GetConnectInstanceConfigRequest":{ + "type":"structure", + "required":["connectInstanceId"], + "members":{ + "connectInstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"connectInstanceId" + } + } + }, + "GetConnectInstanceConfigResponse":{ + "type":"structure", + "members":{ + "connectInstanceConfig":{"shape":"InstanceConfig"} + } + }, + "GetInstanceOnboardingJobStatusRequest":{ + "type":"structure", + "required":["connectInstanceId"], + "members":{ + "connectInstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"connectInstanceId" + } + } + }, + "GetInstanceOnboardingJobStatusResponse":{ + "type":"structure", + "members":{ + "connectInstanceOnboardingJobStatus":{"shape":"InstanceOnboardingJobStatus"} + } + }, + "InstanceConfig":{ + "type":"structure", + "required":[ + "connectInstanceId", + "encryptionConfig", + "serviceLinkedRoleArn" + ], + "members":{ + "connectInstanceId":{"shape":"InstanceId"}, + "encryptionConfig":{"shape":"EncryptionConfig"}, + "serviceLinkedRoleArn":{"shape":"ServiceLinkedRoleArn"} + } + }, + "InstanceId":{ + "type":"string", + "max":256, + "min":0 + }, + "InstanceIdFilter":{ + "type":"structure", + "required":[ + "operator", + "value" + ], + "members":{ + "operator":{"shape":"InstanceIdFilterOperator"}, + "value":{"shape":"InstanceId"} + } + }, + "InstanceIdFilterOperator":{ + "type":"string", + "enum":["Eq"] + }, + "InstanceOnboardingJobFailureCode":{ + "type":"string", + "enum":[ + "EVENT_BRIDGE_ACCESS_DENIED", + "EVENT_BRIDGE_MANAGED_RULE_LIMIT_EXCEEDED", + "IAM_ACCESS_DENIED", + "KMS_ACCESS_DENIED", + "KMS_KEY_NOT_FOUND", + "INTERNAL_FAILURE" + ] + }, + "InstanceOnboardingJobStatus":{ + "type":"structure", + "required":[ + "connectInstanceId", + "status" + ], + "members":{ + "connectInstanceId":{"shape":"InstanceId"}, + "failureCode":{"shape":"InstanceOnboardingJobFailureCode"}, + "status":{"shape":"InstanceOnboardingJobStatusCode"} + } + }, + "InstanceOnboardingJobStatusCode":{ + "type":"string", + "enum":[ + "IN_PROGRESS", + "SUCCEEDED", + "FAILED" + ] + }, + "InternalServerException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{"httpStatusCode":500}, + "exception":true, + "fault":true, + "retryable":{"throttling":false} + }, + "InvalidCampaignStateException":{ + "type":"structure", + "required":[ + "message", + "state" + ], + "members":{ + "message":{"shape":"String"}, + "state":{"shape":"CampaignState"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "InvalidStateException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{ + "httpStatusCode":409, + "senderFault":true + }, + "exception":true + }, + "ListCampaignsRequest":{ + "type":"structure", + "members":{ + "filters":{"shape":"CampaignFilters"}, + "maxResults":{"shape":"MaxResults"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListCampaignsResponse":{ + "type":"structure", + "members":{ + "campaignSummaryList":{"shape":"CampaignSummaryList"}, + "nextToken":{"shape":"NextToken"} + } + }, + "ListTagsForResourceRequest":{ + "type":"structure", + "required":["arn"], + "members":{ + "arn":{ + "shape":"Arn", + "location":"uri", + "locationName":"arn" + } + } + }, + "ListTagsForResourceResponse":{ + "type":"structure", + "members":{ + "tags":{"shape":"TagMap"} + } + }, + "MaxResults":{ + "type":"integer", + "box":true, + "max":50, + "min":1 + }, + "NextToken":{ + "type":"string", + "max":1000, + "min":0 + }, + "OutboundCallConfig":{ + "type":"structure", + "required":[ + "connectContactFlowId", + "connectQueueId" + ], + "members":{ + "answerMachineDetectionConfig":{"shape":"AnswerMachineDetectionConfig"}, + "connectContactFlowId":{"shape":"ContactFlowId"}, + "connectQueueId":{"shape":"QueueId"}, + "connectSourcePhoneNumber":{"shape":"SourcePhoneNumber"} + } + }, + "PauseCampaignRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "PredictiveDialerConfig":{ + "type":"structure", + "required":["bandwidthAllocation"], + "members":{ + "bandwidthAllocation":{"shape":"BandwidthAllocation"} + } + }, + "ProgressiveDialerConfig":{ + "type":"structure", + "required":["bandwidthAllocation"], + "members":{ + "bandwidthAllocation":{"shape":"BandwidthAllocation"} + } + }, + "PutDialRequestBatchRequest":{ + "type":"structure", + "required":[ + "dialRequests", + "id" + ], + "members":{ + "dialRequests":{"shape":"DialRequestList"}, + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "PutDialRequestBatchResponse":{ + "type":"structure", + "members":{ + "failedRequests":{"shape":"FailedRequestList"}, + "successfulRequests":{"shape":"SuccessfulRequestList"} + } + }, + "QueueId":{ + "type":"string", + "max":500, + "min":0 + }, + "ResourceNotFoundException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{ + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "ResumeCampaignRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "ServiceLinkedRoleArn":{ + "type":"string", + "max":256, + "min":0 + }, + "ServiceQuotaExceededException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{ + "httpStatusCode":402, + "senderFault":true + }, + "exception":true + }, + "SourcePhoneNumber":{ + "type":"string", + "max":100, + "min":0 + }, + "StartCampaignRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "StartInstanceOnboardingJobRequest":{ + "type":"structure", + "required":[ + "connectInstanceId", + "encryptionConfig" + ], + "members":{ + "connectInstanceId":{ + "shape":"InstanceId", + "location":"uri", + "locationName":"connectInstanceId" + }, + "encryptionConfig":{"shape":"EncryptionConfig"} + } + }, + "StartInstanceOnboardingJobResponse":{ + "type":"structure", + "members":{ + "connectInstanceOnboardingJobStatus":{"shape":"InstanceOnboardingJobStatus"} + } + }, + "StopCampaignRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "String":{"type":"string"}, + "SuccessfulCampaignStateResponse":{ + "type":"structure", + "members":{ + "campaignId":{"shape":"CampaignId"}, + "state":{"shape":"CampaignState"} + } + }, + "SuccessfulCampaignStateResponseList":{ + "type":"list", + "member":{"shape":"SuccessfulCampaignStateResponse"}, + "max":25, + "min":0 + }, + "SuccessfulRequest":{ + "type":"structure", + "members":{ + "clientToken":{"shape":"ClientToken"}, + "id":{"shape":"DialRequestId"} + } + }, + "SuccessfulRequestList":{ + "type":"list", + "member":{"shape":"SuccessfulRequest"}, + "max":25, + "min":0 + }, + "TagKey":{ + "type":"string", + "max":128, + "min":1, + "pattern":"^(?!aws:)[a-zA-Z+-=._:/]+$" + }, + "TagKeyList":{ + "type":"list", + "member":{"shape":"TagKey"}, + "max":50, + "min":0 + }, + "TagMap":{ + "type":"map", + "key":{"shape":"TagKey"}, + "value":{"shape":"TagValue"} + }, + "TagResourceRequest":{ + "type":"structure", + "required":[ + "arn", + "tags" + ], + "members":{ + "arn":{ + "shape":"Arn", + "location":"uri", + "locationName":"arn" + }, + "tags":{"shape":"TagMap"} + } + }, + "TagValue":{ + "type":"string", + "max":256, + "min":0 + }, + "ThrottlingException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{ + "httpStatusCode":429, + "senderFault":true + }, + "exception":true, + "retryable":{"throttling":false} + }, + "TimeStamp":{ + "type":"timestamp", + "timestampFormat":"iso8601" + }, + "UntagResourceRequest":{ + "type":"structure", + "required":[ + "arn", + "tagKeys" + ], + "members":{ + "arn":{ + "shape":"Arn", + "location":"uri", + "locationName":"arn" + }, + "tagKeys":{ + "shape":"TagKeyList", + "location":"querystring", + "locationName":"tagKeys" + } + } + }, + "UpdateCampaignDialerConfigRequest":{ + "type":"structure", + "required":[ + "dialerConfig", + "id" + ], + "members":{ + "dialerConfig":{"shape":"DialerConfig"}, + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "UpdateCampaignNameRequest":{ + "type":"structure", + "required":[ + "id", + "name" + ], + "members":{ + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + }, + "name":{"shape":"CampaignName"} + } + }, + "UpdateCampaignOutboundCallConfigRequest":{ + "type":"structure", + "required":["id"], + "members":{ + "answerMachineDetectionConfig":{"shape":"AnswerMachineDetectionConfig"}, + "connectContactFlowId":{"shape":"ContactFlowId"}, + "connectSourcePhoneNumber":{"shape":"SourcePhoneNumber"}, + "id":{ + "shape":"CampaignId", + "location":"uri", + "locationName":"id" + } + } + }, + "ValidationException":{ + "type":"structure", + "required":["message"], + "members":{ + "message":{"shape":"String"}, + "xAmzErrorType":{ + "shape":"XAmazonErrorType", + "location":"header", + "locationName":"x-amzn-ErrorType" + } + }, + "error":{ + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "XAmazonErrorType":{"type":"string"} + } +} diff --git a/apis/connectcampaigns/2021-01-30/docs-2.json b/apis/connectcampaigns/2021-01-30/docs-2.json new file mode 100644 index 00000000000..0a631c46ca8 --- /dev/null +++ b/apis/connectcampaigns/2021-01-30/docs-2.json @@ -0,0 +1,658 @@ +{ + "version": "2.0", + "service": "

Provide APIs to create and manage Amazon Connect Campaigns.

", + "operations": { + "CreateCampaign": "

Creates a campaign for the specified Amazon Connect account. This API is idempotent.

", + "DeleteCampaign": "

Deletes a campaign from the specified Amazon Connect account.

", + "DeleteConnectInstanceConfig": "

Deletes a connect instance config from the specified AWS account.

", + "DeleteInstanceOnboardingJob": "

Delete the Connect Campaigns onboarding job for the specified Amazon Connect instance.

", + "DescribeCampaign": "

Describes the specific campaign.

", + "GetCampaignState": "

Get state of a campaign for the specified Amazon Connect account.

", + "GetCampaignStateBatch": "

Get state of campaigns for the specified Amazon Connect account.

", + "GetConnectInstanceConfig": "

Get the specific Connect instance config.

", + "GetInstanceOnboardingJobStatus": "

Get the specific instance onboarding job status.

", + "ListCampaigns": "

Provides summary information about the campaigns under the specified Amazon Connect account.

", + "ListTagsForResource": "

List tags for a resource.

", + "PauseCampaign": "

Pauses a campaign for the specified Amazon Connect account.

", + "PutDialRequestBatch": "

Creates dials requests for the specified campaign Amazon Connect account. This API is idempotent.

", + "ResumeCampaign": "

Stops a campaign for the specified Amazon Connect account.

", + "StartCampaign": "

Starts a campaign for the specified Amazon Connect account.

", + "StartInstanceOnboardingJob": "

Onboard the specific Amazon Connect instance to Connect Campaigns.

", + "StopCampaign": "

Stops a campaign for the specified Amazon Connect account.

", + "TagResource": "

Tag a resource.

", + "UntagResource": "

Untag a resource.

", + "UpdateCampaignDialerConfig": "

Updates the dialer config of a campaign. This API is idempotent.

", + "UpdateCampaignName": "

Updates the name of a campaign. This API is idempotent.

", + "UpdateCampaignOutboundCallConfig": "

Updates the outbound call config of a campaign. This API is idempotent.

" + }, + "shapes": { + "AccessDeniedException": { + "base": "

You do not have sufficient access to perform this action.

", + "refs": { + } + }, + "AnswerMachineDetectionConfig": { + "base": "

Answering Machine Detection config

", + "refs": { + "OutboundCallConfig$answerMachineDetectionConfig": null, + "UpdateCampaignOutboundCallConfigRequest$answerMachineDetectionConfig": null + } + }, + "Arn": { + "base": "

Arn

", + "refs": { + "ListTagsForResourceRequest$arn": null, + "TagResourceRequest$arn": null, + "UntagResourceRequest$arn": null + } + }, + "AttributeName": { + "base": "

The key of the attribute. Attribute keys can include only alphanumeric, dash, and underscore characters.

", + "refs": { + "Attributes$key": null + } + }, + "AttributeValue": { + "base": "

The value of the attribute.

", + "refs": { + "Attributes$value": null + } + }, + "Attributes": { + "base": "

A custom key-value pair using an attribute map. The attributes are standard Amazon Connect attributes, and can be accessed in contact flows just like any other contact attributes.

", + "refs": { + "DialRequest$attributes": null + } + }, + "BandwidthAllocation": { + "base": "

The bandwidth allocation of a queue resource.

", + "refs": { + "PredictiveDialerConfig$bandwidthAllocation": null, + "ProgressiveDialerConfig$bandwidthAllocation": null + } + }, + "Boolean": { + "base": null, + "refs": { + "AnswerMachineDetectionConfig$enableAnswerMachineDetection": "

Enable or disable answering machine detection

" + } + }, + "Campaign": { + "base": "

An Amazon Connect campaign.

", + "refs": { + "DescribeCampaignResponse$campaign": null + } + }, + "CampaignArn": { + "base": "

The resource name of an Amazon Connect campaign.

", + "refs": { + "Campaign$arn": null, + "CampaignSummary$arn": null, + "CreateCampaignResponse$arn": null + } + }, + "CampaignFilters": { + "base": "

Filter model by type

", + "refs": { + "ListCampaignsRequest$filters": null + } + }, + "CampaignId": { + "base": "

Identifier representing a Campaign

", + "refs": { + "Campaign$id": null, + "CampaignSummary$id": null, + "CreateCampaignResponse$id": null, + "DeleteCampaignRequest$id": null, + "DescribeCampaignRequest$id": null, + "FailedCampaignStateResponse$campaignId": null, + "GetCampaignStateBatchRequestCampaignIdsList$member": null, + "GetCampaignStateRequest$id": null, + "PauseCampaignRequest$id": null, + "PutDialRequestBatchRequest$id": null, + "ResumeCampaignRequest$id": null, + "StartCampaignRequest$id": null, + "StopCampaignRequest$id": null, + "SuccessfulCampaignStateResponse$campaignId": null, + "UpdateCampaignDialerConfigRequest$id": null, + "UpdateCampaignNameRequest$id": null, + "UpdateCampaignOutboundCallConfigRequest$id": null + } + }, + "CampaignName": { + "base": "

The name of an Amazon Connect Campaign name.

", + "refs": { + "Campaign$name": null, + "CampaignSummary$name": null, + "CreateCampaignRequest$name": null, + "UpdateCampaignNameRequest$name": null + } + }, + "CampaignState": { + "base": "

State of a campaign

", + "refs": { + "GetCampaignStateResponse$state": null, + "InvalidCampaignStateException$state": null, + "SuccessfulCampaignStateResponse$state": null + } + }, + "CampaignSummary": { + "base": "

An Amazon Connect campaign summary.

", + "refs": { + "CampaignSummaryList$member": null + } + }, + "CampaignSummaryList": { + "base": "

A list of Amazon Connect campaigns.

", + "refs": { + "ListCampaignsResponse$campaignSummaryList": null + } + }, + "ClientToken": { + "base": "

Client provided parameter used for idempotency. Its value must be unique for each request.

", + "refs": { + "DialRequest$clientToken": null, + "FailedRequest$clientToken": null, + "SuccessfulRequest$clientToken": null + } + }, + "ConflictException": { + "base": "

The request could not be processed because of conflict in the current state of the resource.

", + "refs": { + } + }, + "ContactFlowId": { + "base": "

The identifier of the contact flow for the outbound call.

", + "refs": { + "OutboundCallConfig$connectContactFlowId": null, + "UpdateCampaignOutboundCallConfigRequest$connectContactFlowId": null + } + }, + "CreateCampaignRequest": { + "base": "

The request for Create Campaign API.

", + "refs": { + } + }, + "CreateCampaignResponse": { + "base": "

The response for Create Campaign API

", + "refs": { + } + }, + "DeleteCampaignRequest": { + "base": "

DeleteCampaignRequest

", + "refs": { + } + }, + "DeleteConnectInstanceConfigRequest": { + "base": "

DeleteCampaignRequest

", + "refs": { + } + }, + "DeleteInstanceOnboardingJobRequest": { + "base": "

The request for DeleteInstanceOnboardingJob API.

", + "refs": { + } + }, + "DescribeCampaignRequest": { + "base": "

DescribeCampaignRequests

", + "refs": { + } + }, + "DescribeCampaignResponse": { + "base": "

DescribeCampaignResponse

", + "refs": { + } + }, + "DestinationPhoneNumber": { + "base": "

The phone number of the customer, in E.164 format.

", + "refs": { + "DialRequest$phoneNumber": null + } + }, + "DialRequest": { + "base": "

A dial request for a campaign.

", + "refs": { + "DialRequestList$member": null + } + }, + "DialRequestId": { + "base": "

Identifier representing a Dial request

", + "refs": { + "FailedRequest$id": null, + "SuccessfulRequest$id": null + } + }, + "DialRequestList": { + "base": "

A list of dial requests.

", + "refs": { + "PutDialRequestBatchRequest$dialRequests": null + } + }, + "DialerConfig": { + "base": "

The possible types of dialer config parameters

", + "refs": { + "Campaign$dialerConfig": null, + "CreateCampaignRequest$dialerConfig": null, + "UpdateCampaignDialerConfigRequest$dialerConfig": null + } + }, + "Enabled": { + "base": "

Boolean to indicate if custom encryption has been enabled.

", + "refs": { + "EncryptionConfig$enabled": null + } + }, + "EncryptionConfig": { + "base": "

Encryption config for Connect Instance. Note that sensitive data will always be encrypted. If disabled, service will perform encryption with its own key. If enabled, a KMS key id needs to be provided and KMS charges will apply. KMS is only type supported

", + "refs": { + "InstanceConfig$encryptionConfig": null, + "StartInstanceOnboardingJobRequest$encryptionConfig": null + } + }, + "EncryptionKey": { + "base": "

KMS key id/arn for encryption config.

", + "refs": { + "EncryptionConfig$keyArn": null + } + }, + "EncryptionType": { + "base": "

Server-side encryption type.

", + "refs": { + "EncryptionConfig$encryptionType": null + } + }, + "FailedCampaignStateResponse": { + "base": "

Failed response of campaign state

", + "refs": { + "FailedCampaignStateResponseList$member": null + } + }, + "FailedCampaignStateResponseList": { + "base": "

List of failed requests of campaign state

", + "refs": { + "GetCampaignStateBatchResponse$failedRequests": null + } + }, + "FailedRequest": { + "base": "

A failed request identified by the unique client token.

", + "refs": { + "FailedRequestList$member": null + } + }, + "FailedRequestList": { + "base": "

A list of failed requests.

", + "refs": { + "PutDialRequestBatchResponse$failedRequests": null + } + }, + "FailureCode": { + "base": "

A predefined code indicating the error that caused the failure.

", + "refs": { + "FailedRequest$failureCode": null + } + }, + "GetCampaignStateBatchFailureCode": { + "base": "

A predefined code indicating the error that caused the failure in getting state of campaigns

", + "refs": { + "FailedCampaignStateResponse$failureCode": null + } + }, + "GetCampaignStateBatchRequest": { + "base": "

GetCampaignStateBatchRequest

", + "refs": { + } + }, + "GetCampaignStateBatchRequestCampaignIdsList": { + "base": "

List of CampaignId

", + "refs": { + "GetCampaignStateBatchRequest$campaignIds": null + } + }, + "GetCampaignStateBatchResponse": { + "base": "

GetCampaignStateBatchResponse

", + "refs": { + } + }, + "GetCampaignStateRequest": { + "base": "

GetCampaignStateRequest

", + "refs": { + } + }, + "GetCampaignStateResponse": { + "base": "

GetCampaignStateResponse

", + "refs": { + } + }, + "GetConnectInstanceConfigRequest": { + "base": "

GetConnectInstanceConfigRequest

", + "refs": { + } + }, + "GetConnectInstanceConfigResponse": { + "base": "

GetConnectInstanceConfigResponse

", + "refs": { + } + }, + "GetInstanceOnboardingJobStatusRequest": { + "base": "

GetInstanceOnboardingJobStatusRequest

", + "refs": { + } + }, + "GetInstanceOnboardingJobStatusResponse": { + "base": "

GetInstanceOnboardingJobStatusResponse

", + "refs": { + } + }, + "InstanceConfig": { + "base": "

Instance config object

", + "refs": { + "GetConnectInstanceConfigResponse$connectInstanceConfig": null + } + }, + "InstanceId": { + "base": "

Amazon Connect Instance Id

", + "refs": { + "Campaign$connectInstanceId": null, + "CampaignSummary$connectInstanceId": null, + "CreateCampaignRequest$connectInstanceId": null, + "DeleteConnectInstanceConfigRequest$connectInstanceId": null, + "DeleteInstanceOnboardingJobRequest$connectInstanceId": null, + "GetConnectInstanceConfigRequest$connectInstanceId": null, + "GetInstanceOnboardingJobStatusRequest$connectInstanceId": null, + "InstanceConfig$connectInstanceId": null, + "InstanceIdFilter$value": null, + "InstanceOnboardingJobStatus$connectInstanceId": null, + "StartInstanceOnboardingJobRequest$connectInstanceId": null + } + }, + "InstanceIdFilter": { + "base": "

Connect instance identifier filter

", + "refs": { + "CampaignFilters$instanceIdFilter": null + } + }, + "InstanceIdFilterOperator": { + "base": "

Operators for Connect instance identifier filter

", + "refs": { + "InstanceIdFilter$operator": null + } + }, + "InstanceOnboardingJobFailureCode": { + "base": "

Enumeration of the possible failure codes for instance onboarding job

", + "refs": { + "InstanceOnboardingJobStatus$failureCode": null + } + }, + "InstanceOnboardingJobStatus": { + "base": "

Instance onboarding job status object

", + "refs": { + "GetInstanceOnboardingJobStatusResponse$connectInstanceOnboardingJobStatus": null, + "StartInstanceOnboardingJobResponse$connectInstanceOnboardingJobStatus": null + } + }, + "InstanceOnboardingJobStatusCode": { + "base": "

Enumeration of the possible states for instance onboarding job

", + "refs": { + "InstanceOnboardingJobStatus$status": null + } + }, + "InternalServerException": { + "base": "

Request processing failed because of an error or failure with the service.

", + "refs": { + } + }, + "InvalidCampaignStateException": { + "base": "

The request could not be processed because of conflict in the current state of the campaign.

", + "refs": { + } + }, + "InvalidStateException": { + "base": "

The request could not be processed because of conflict in the current state.

", + "refs": { + } + }, + "ListCampaignsRequest": { + "base": "

ListCampaignsRequest

", + "refs": { + } + }, + "ListCampaignsResponse": { + "base": "

ListCampaignsResponse

", + "refs": { + } + }, + "ListTagsForResourceRequest": { + "base": "

ListTagsForResource

", + "refs": { + } + }, + "ListTagsForResourceResponse": { + "base": "

ListTagsForResponse

", + "refs": { + } + }, + "MaxResults": { + "base": "

The maximum number of results to return per page.

", + "refs": { + "ListCampaignsRequest$maxResults": null + } + }, + "NextToken": { + "base": "

The token for the next set of results.

", + "refs": { + "ListCampaignsRequest$nextToken": null, + "ListCampaignsResponse$nextToken": null + } + }, + "OutboundCallConfig": { + "base": "

The configuration used for outbound calls.

", + "refs": { + "Campaign$outboundCallConfig": null, + "CreateCampaignRequest$outboundCallConfig": null + } + }, + "PauseCampaignRequest": { + "base": "

PauseCampaignRequest

", + "refs": { + } + }, + "PredictiveDialerConfig": { + "base": "

Predictive Dialer config

", + "refs": { + "DialerConfig$predictiveDialerConfig": null + } + }, + "ProgressiveDialerConfig": { + "base": "

Progressive Dialer config

", + "refs": { + "DialerConfig$progressiveDialerConfig": null + } + }, + "PutDialRequestBatchRequest": { + "base": "

PutDialRequestBatchRequest

", + "refs": { + } + }, + "PutDialRequestBatchResponse": { + "base": "

PutDialRequestBatchResponse

", + "refs": { + } + }, + "QueueId": { + "base": "

The queue for the call. If you specify a queue, the phone displayed for caller ID is the phone number specified in the queue. If you do not specify a queue, the queue defined in the contact flow is used. If you do not specify a queue, you must specify a source phone number.

", + "refs": { + "OutboundCallConfig$connectQueueId": null + } + }, + "ResourceNotFoundException": { + "base": "

The specified resource was not found.

", + "refs": { + } + }, + "ResumeCampaignRequest": { + "base": "

ResumeCampaignRequest

", + "refs": { + } + }, + "ServiceLinkedRoleArn": { + "base": "

Service linked role arn

", + "refs": { + "InstanceConfig$serviceLinkedRoleArn": null + } + }, + "ServiceQuotaExceededException": { + "base": "

Request would cause a service quota to be exceeded.

", + "refs": { + } + }, + "SourcePhoneNumber": { + "base": "

The phone number associated with the Amazon Connect instance, in E.164 format. If you do not specify a source phone number, you must specify a queue.

", + "refs": { + "OutboundCallConfig$connectSourcePhoneNumber": null, + "UpdateCampaignOutboundCallConfigRequest$connectSourcePhoneNumber": null + } + }, + "StartCampaignRequest": { + "base": "

StartCampaignRequest

", + "refs": { + } + }, + "StartInstanceOnboardingJobRequest": { + "base": "

The request for StartInstanceOnboardingJob API.

", + "refs": { + } + }, + "StartInstanceOnboardingJobResponse": { + "base": "

The response for StartInstanceOnboardingJob API.

", + "refs": { + } + }, + "StopCampaignRequest": { + "base": "

StopCampaignRequest

", + "refs": { + } + }, + "String": { + "base": null, + "refs": { + "AccessDeniedException$message": null, + "ConflictException$message": null, + "InternalServerException$message": null, + "InvalidCampaignStateException$message": null, + "InvalidStateException$message": null, + "ResourceNotFoundException$message": null, + "ServiceQuotaExceededException$message": null, + "ThrottlingException$message": null, + "ValidationException$message": null + } + }, + "SuccessfulCampaignStateResponse": { + "base": "

Successful response of campaign state

", + "refs": { + "SuccessfulCampaignStateResponseList$member": null + } + }, + "SuccessfulCampaignStateResponseList": { + "base": "

List of successful response of campaign state

", + "refs": { + "GetCampaignStateBatchResponse$successfulRequests": null + } + }, + "SuccessfulRequest": { + "base": "

A successful request identified by the unique client token.

", + "refs": { + "SuccessfulRequestList$member": null + } + }, + "SuccessfulRequestList": { + "base": "

A list of successful requests identified by the unique client token.

", + "refs": { + "PutDialRequestBatchResponse$successfulRequests": null + } + }, + "TagKey": { + "base": "

Tag key.

", + "refs": { + "TagKeyList$member": null, + "TagMap$key": null + } + }, + "TagKeyList": { + "base": "

List of tag keys.

", + "refs": { + "UntagResourceRequest$tagKeys": null + } + }, + "TagMap": { + "base": "

Tag map with key and value.

", + "refs": { + "Campaign$tags": null, + "CreateCampaignRequest$tags": null, + "CreateCampaignResponse$tags": null, + "ListTagsForResourceResponse$tags": null, + "TagResourceRequest$tags": null + } + }, + "TagResourceRequest": { + "base": "

TagResourceRequest

", + "refs": { + } + }, + "TagValue": { + "base": "

Tag value.

", + "refs": { + "TagMap$value": null + } + }, + "ThrottlingException": { + "base": "

The request was denied due to request throttling.

", + "refs": { + } + }, + "TimeStamp": { + "base": "

Timestamp with no UTC offset or timezone

", + "refs": { + "DialRequest$expirationTime": null + } + }, + "UntagResourceRequest": { + "base": "

UntagResourceRequest

", + "refs": { + } + }, + "UpdateCampaignDialerConfigRequest": { + "base": "

UpdateCampaignDialerConfigRequest

", + "refs": { + } + }, + "UpdateCampaignNameRequest": { + "base": "

UpdateCampaignNameRequest

", + "refs": { + } + }, + "UpdateCampaignOutboundCallConfigRequest": { + "base": "

UpdateCampaignOutboundCallConfigRequest

", + "refs": { + } + }, + "ValidationException": { + "base": "

The input fails to satisfy the constraints specified by an AWS service.

", + "refs": { + } + }, + "XAmazonErrorType": { + "base": "

A header that defines the error encountered while processing the request.

", + "refs": { + "AccessDeniedException$xAmzErrorType": null, + "ConflictException$xAmzErrorType": null, + "InternalServerException$xAmzErrorType": null, + "InvalidCampaignStateException$xAmzErrorType": null, + "InvalidStateException$xAmzErrorType": null, + "ResourceNotFoundException$xAmzErrorType": null, + "ServiceQuotaExceededException$xAmzErrorType": null, + "ThrottlingException$xAmzErrorType": null, + "ValidationException$xAmzErrorType": null + } + } + } +} diff --git a/apis/connectcampaigns/2021-01-30/examples-1.json b/apis/connectcampaigns/2021-01-30/examples-1.json new file mode 100644 index 00000000000..0ea7e3b0bbe --- /dev/null +++ b/apis/connectcampaigns/2021-01-30/examples-1.json @@ -0,0 +1,5 @@ +{ + "version": "1.0", + "examples": { + } +} diff --git a/apis/connectcampaigns/2021-01-30/paginators-1.json b/apis/connectcampaigns/2021-01-30/paginators-1.json new file mode 100644 index 00000000000..6ab04512590 --- /dev/null +++ b/apis/connectcampaigns/2021-01-30/paginators-1.json @@ -0,0 +1,10 @@ +{ + "pagination": { + "ListCampaigns": { + "input_token": "nextToken", + "output_token": "nextToken", + "limit_key": "maxResults", + "result_key": "campaignSummaryList" + } + } +} diff --git a/apis/dynamodb/2012-08-10/docs-2.json b/apis/dynamodb/2012-08-10/docs-2.json index 32ec7ccf455..32c1c899098 100644 --- a/apis/dynamodb/2012-08-10/docs-2.json +++ b/apis/dynamodb/2012-08-10/docs-2.json @@ -2,7 +2,7 @@ "version": "2.0", "service": "Amazon DynamoDB

Amazon DynamoDB is a fully managed NoSQL database service that provides fast and predictable performance with seamless scalability. DynamoDB lets you offload the administrative burdens of operating and scaling a distributed database, so that you don't have to worry about hardware provisioning, setup and configuration, replication, software patching, or cluster scaling.

With DynamoDB, you can create database tables that can store and retrieve any amount of data, and serve any level of request traffic. You can scale up or scale down your tables' throughput capacity without downtime or performance degradation, and use the Amazon Web Services Management Console to monitor resource utilization and performance metrics.

DynamoDB automatically spreads the data and traffic for your tables over a sufficient number of servers to handle your throughput and storage requirements, while maintaining consistent and fast performance. All of your data is stored on solid state disks (SSDs) and automatically replicated across multiple Availability Zones in an Amazon Web Services Region, providing built-in high availability and data durability.

", "operations": { - "BatchExecuteStatement": "

This operation allows you to perform batch reads or writes on data stored in DynamoDB, using PartiQL.

The entire batch must consist of either read statements or write statements, you cannot mix both in one batch.

", + "BatchExecuteStatement": "

This operation allows you to perform batch reads or writes on data stored in DynamoDB, using PartiQL. Each read statement in a BatchExecuteStatement must specify an equality condition on all key attributes. This enforces that each SELECT statement in a batch returns at most a single item.

The entire batch must consist of either read statements or write statements, you cannot mix both in one batch.

A HTTP 200 response does not mean that all statements in the BatchExecuteStatement succeeded. Error details for individual statements can be found under the Error field of the BatchStatementResponse for each statement.

", "BatchGetItem": "

The BatchGetItem operation returns the attributes of one or more items from one or more tables. You identify requested items by primary key.

A single operation can retrieve up to 16 MB of data, which can contain as many as 100 items. BatchGetItem returns a partial result if the response size limit is exceeded, the table's provisioned throughput is exceeded, or an internal processing failure occurs. If a partial result is returned, the operation returns a value for UnprocessedKeys. You can use this value to retry the operation starting with the next item to get.

If you request more than 100 items, BatchGetItem returns a ValidationException with the message \"Too many items requested for the BatchGetItem call.\"

For example, if you ask to retrieve 100 items, but each individual item is 300 KB in size, the system returns 52 items (so as not to exceed the 16 MB limit). It also returns an appropriate UnprocessedKeys value so you can get the next page of results. If desired, your application can include its own logic to assemble the pages of results into one dataset.

If none of the items can be processed due to insufficient provisioned throughput on all of the tables in the request, then BatchGetItem returns a ProvisionedThroughputExceededException. If at least one of the items is successfully processed, then BatchGetItem completes successfully, while returning the keys of the unread items in UnprocessedKeys.

If DynamoDB returns any unprocessed items, you should retry the batch operation on those items. However, we strongly recommend that you use an exponential backoff algorithm. If you retry the batch operation immediately, the underlying read or write requests can still fail due to throttling on the individual tables. If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed.

For more information, see Batch Operations and Error Handling in the Amazon DynamoDB Developer Guide.

By default, BatchGetItem performs eventually consistent reads on every table in the request. If you want strongly consistent reads instead, you can set ConsistentRead to true for any or all tables.

In order to minimize response latency, BatchGetItem retrieves items in parallel.

When designing your application, keep in mind that DynamoDB does not return items in any particular order. To help parse the response by item, include the primary key values for the items in your request in the ProjectionExpression parameter.

If a requested item does not exist, it is not returned in the result. Requests for nonexistent items consume the minimum read capacity units according to the type of read. For more information, see Working with Tables in the Amazon DynamoDB Developer Guide.

", "BatchWriteItem": "

The BatchWriteItem operation puts or deletes multiple items in one or more tables. A single call to BatchWriteItem can transmit up to 16MB of data over the network, consisting of up to 25 item put or delete operations. While individual items can be up to 400 KB once stored, it's important to note that an item's representation might be greater than 400KB while being sent in DynamoDB's JSON format for the API call. For more details on this distinction, see Naming Rules and Data Types.

BatchWriteItem cannot update items. To update items, use the UpdateItem action.

The individual PutItem and DeleteItem operations specified in BatchWriteItem are atomic; however BatchWriteItem as a whole is not. If any requested operations fail because the table's provisioned throughput is exceeded or an internal processing failure occurs, the failed operations are returned in the UnprocessedItems response parameter. You can investigate and optionally resend the requests. Typically, you would call BatchWriteItem in a loop. Each iteration would check for unprocessed items and submit a new BatchWriteItem request with those unprocessed items until all items have been processed.

If none of the items can be processed due to insufficient provisioned throughput on all of the tables in the request, then BatchWriteItem returns a ProvisionedThroughputExceededException.

If DynamoDB returns any unprocessed items, you should retry the batch operation on those items. However, we strongly recommend that you use an exponential backoff algorithm. If you retry the batch operation immediately, the underlying read or write requests can still fail due to throttling on the individual tables. If you delay the batch operation using exponential backoff, the individual requests in the batch are much more likely to succeed.

For more information, see Batch Operations and Error Handling in the Amazon DynamoDB Developer Guide.

With BatchWriteItem, you can efficiently write or delete large amounts of data, such as from Amazon EMR, or copy data from another database into DynamoDB. In order to improve performance with these large-scale operations, BatchWriteItem does not behave in the same way as individual PutItem and DeleteItem calls would. For example, you cannot specify conditions on individual put and delete requests, and BatchWriteItem does not return deleted items in the response.

If you use a programming language that supports concurrency, you can use threads to write items in parallel. Your application must include the necessary logic to manage the threads. With languages that don't support threading, you must update or delete the specified items one at a time. In both situations, BatchWriteItem performs the specified put and delete operations in parallel, giving you the power of the thread pool approach without having to introduce complexity into your application.

Parallel processing reduces latency, but each specified put and delete request consumes the same number of write capacity units whether it is processed in parallel or not. Delete operations on nonexistent items consume one write capacity unit.

If one or more of the following is true, DynamoDB rejects the entire batch write operation:

", "CreateBackup": "

Creates a backup for an existing table.

Each time you create an on-demand backup, the entire table data is backed up. There is no limit to the number of on-demand backups that can be taken.

When you create an on-demand backup, a time marker of the request is cataloged, and the backup is created asynchronously, by applying all changes until the time of the request to the last full table snapshot. Backup requests are processed instantaneously and become available for restore within minutes.

You can call CreateBackup at a maximum rate of 50 times per second.

All backups in DynamoDB work without consuming any provisioned throughput on the table.

If you submit a backup request on 2018-12-14 at 14:25:00, the backup is guaranteed to contain all data committed to the table up to 14:24:00, and data committed after 14:26:00 will not be. The backup might contain data modifications made between 14:24:00 and 14:26:00. On-demand backup does not support causal consistency.

Along with data, the following are also included on the backups:

", @@ -35,7 +35,7 @@ "ListGlobalTables": "

Lists all global tables that have a replica in the specified Region.

This operation only applies to Version 2017.11.29 of global tables.

", "ListTables": "

Returns an array of table names associated with the current account and endpoint. The output from ListTables is paginated, with each page returning a maximum of 100 table names.

", "ListTagsOfResource": "

List all tags on an Amazon DynamoDB resource. You can call ListTagsOfResource up to 10 times per second, per account.

For an overview on tagging DynamoDB resources, see Tagging for DynamoDB in the Amazon DynamoDB Developer Guide.

", - "PutItem": "

Creates a new item, or replaces an old item with a new item. If an item that has the same primary key as the new item already exists in the specified table, the new item completely replaces the existing item. You can perform a conditional put operation (add a new item if one with the specified primary key doesn't exist), or replace an existing item if it has certain attribute values. You can return the item's attribute values in the same operation, using the ReturnValues parameter.

This topic provides general information about the PutItem API.

For information on how to call the PutItem API using the Amazon Web Services SDK in specific languages, see the following:

When you add an item, the primary key attributes are the only required attributes. Attribute values cannot be null.

Empty String and Binary attribute values are allowed. Attribute values of type String and Binary must have a length greater than zero if the attribute is used as a key attribute for a table or index. Set type attributes cannot be empty.

Invalid Requests with empty values will be rejected with a ValidationException exception.

To prevent a new item from replacing an existing item, use a conditional expression that contains the attribute_not_exists function with the name of the attribute being used as the partition key for the table. Since every record must contain that attribute, the attribute_not_exists function will only succeed if no matching item exists.

For more information about PutItem, see Working with Items in the Amazon DynamoDB Developer Guide.

", + "PutItem": "

Creates a new item, or replaces an old item with a new item. If an item that has the same primary key as the new item already exists in the specified table, the new item completely replaces the existing item. You can perform a conditional put operation (add a new item if one with the specified primary key doesn't exist), or replace an existing item if it has certain attribute values. You can return the item's attribute values in the same operation, using the ReturnValues parameter.

When you add an item, the primary key attributes are the only required attributes. Attribute values cannot be null.

Empty String and Binary attribute values are allowed. Attribute values of type String and Binary must have a length greater than zero if the attribute is used as a key attribute for a table or index. Set type attributes cannot be empty.

Invalid Requests with empty values will be rejected with a ValidationException exception.

To prevent a new item from replacing an existing item, use a conditional expression that contains the attribute_not_exists function with the name of the attribute being used as the partition key for the table. Since every record must contain that attribute, the attribute_not_exists function will only succeed if no matching item exists.

For more information about PutItem, see Working with Items in the Amazon DynamoDB Developer Guide.

", "Query": "

You must provide the name of the partition key attribute and a single value for that attribute. Query returns all items with that partition key value. Optionally, you can provide a sort key attribute and use a comparison operator to refine the search results.

Use the KeyConditionExpression parameter to provide a specific value for the partition key. The Query operation will return all of the items from the table or index with that partition key value. You can optionally narrow the scope of the Query operation by specifying a sort key value and a comparison operator in KeyConditionExpression. To further refine the Query results, you can optionally provide a FilterExpression. A FilterExpression determines which items within the results should be returned to you. All of the other results are discarded.

A Query operation always returns a result set. If no matching items are found, the result set will be empty. Queries that do not return results consume the minimum number of read capacity units for that type of read operation.

DynamoDB calculates the number of read capacity units consumed based on item size, not on the amount of data that is returned to an application. The number of capacity units consumed will be the same whether you request all of the attributes (the default behavior) or just some of them (using a projection expression). The number will also be the same whether or not you use a FilterExpression.

Query results are always sorted by the sort key value. If the data type of the sort key is Number, the results are returned in numeric order; otherwise, the results are returned in order of UTF-8 bytes. By default, the sort order is ascending. To reverse the order, set the ScanIndexForward parameter to false.

A single Query operation will read up to the maximum number of items set (if using the Limit parameter) or a maximum of 1 MB of data and then apply any filtering to the results using FilterExpression. If LastEvaluatedKey is present in the response, you will need to paginate the result set. For more information, see Paginating the Results in the Amazon DynamoDB Developer Guide.

FilterExpression is applied after a Query finishes, but before the results are returned. A FilterExpression cannot contain partition key or sort key attributes. You need to specify those attributes in the KeyConditionExpression.

A Query operation can return an empty result set and a LastEvaluatedKey if all the items read for the page of results are filtered out.

You can query a table, a local secondary index, or a global secondary index. For a query on a table or on a local secondary index, you can set the ConsistentRead parameter to true and obtain a strongly consistent result. Global secondary indexes support eventually consistent reads only, so do not specify ConsistentRead when querying a global secondary index.

", "RestoreTableFromBackup": "

Creates a new table from an existing backup. Any number of users can execute up to 4 concurrent restores (any type of restore) in a given account.

You can call RestoreTableFromBackup at a maximum rate of 10 times per second.

You must manually set up the following on the restored table:

", "RestoreTableToPointInTime": "

Restores the specified table to the specified point in time within EarliestRestorableDateTime and LatestRestorableDateTime. You can restore your table to any point in time during the last 35 days. Any number of users can execute up to 4 concurrent restores (any type of restore) in a given account.

When you restore using point in time recovery, DynamoDB restores your table data to the state based on the selected date and time (day:hour:minute:second) to a new table.

Along with data, the following are also included on the new restored table using point in time recovery:

You must manually set up the following on the restored table:

", @@ -49,7 +49,7 @@ "UpdateGlobalTable": "

Adds or removes replicas in the specified global table. The global table must already exist to be able to use this operation. Any replica to be added must be empty, have the same name as the global table, have the same key schema, have DynamoDB Streams enabled, and have the same provisioned and maximum write capacity units.

Although you can use UpdateGlobalTable to add replicas and remove replicas in a single request, for simplicity we recommend that you issue separate requests for adding or removing replicas.

If global secondary indexes are specified, then the following conditions must also be met:

", "UpdateGlobalTableSettings": "

Updates settings for a global table.

", "UpdateItem": "

Edits an existing item's attributes, or adds a new item to the table if it does not already exist. You can put, delete, or add attribute values. You can also perform a conditional update on an existing item (insert a new attribute name-value pair if it doesn't exist, or replace an existing name-value pair if it has certain expected attribute values).

You can also return the item's attribute values in the same UpdateItem operation using the ReturnValues parameter.

", - "UpdateTable": "

Modifies the provisioned throughput settings, global secondary indexes, or DynamoDB Streams settings for a given table.

You can only perform one of the following operations at once:

UpdateTable is an asynchronous operation; while it is executing, the table status changes from ACTIVE to UPDATING. While it is UPDATING, you cannot issue another UpdateTable request. When the table returns to the ACTIVE state, the UpdateTable operation is complete.

", + "UpdateTable": "

Modifies the provisioned throughput settings, global secondary indexes, or DynamoDB Streams settings for a given table.

You can only perform one of the following operations at once:

UpdateTable is an asynchronous operation; while it is executing, the table status changes from ACTIVE to UPDATING. While it is UPDATING, you cannot issue another UpdateTable request. When the table returns to the ACTIVE state, the UpdateTable operation is complete.

", "UpdateTableReplicaAutoScaling": "

Updates auto scaling settings on your global tables at once.

This operation only applies to Version 2019.11.21 of global tables.

", "UpdateTimeToLive": "

The UpdateTimeToLive method enables or disables Time to Live (TTL) for the specified table. A successful UpdateTimeToLive call returns the current TimeToLiveSpecification. It can take up to one hour for the change to fully process. Any additional UpdateTimeToLive calls for the same table during this one hour duration result in a ValidationException.

TTL compares the current time in epoch time format to the time stored in the TTL attribute of an item. If the epoch time value stored in the attribute is less than the current time, the item is marked as expired and subsequently deleted.

The epoch time format is the number of seconds elapsed since 12:00:00 AM January 1, 1970 UTC.

DynamoDB deletes expired items on a best-effort basis to ensure availability of throughput for other data operations.

DynamoDB typically deletes expired items within two days of expiration. The exact duration within which an item gets deleted after expiration is specific to the nature of the workload. Items that have expired and not been deleted will still show up in reads, queries, and scans.

As items are deleted, they are removed from any local secondary index and global secondary index immediately in the same eventually consistent way as a standard delete operation.

For more information, see Time To Live in the Amazon DynamoDB Developer Guide.

" }, @@ -69,7 +69,7 @@ "AttributeAction": { "base": null, "refs": { - "AttributeValueUpdate$Action": "

Specifies how to perform the update. Valid values are PUT (default), DELETE, and ADD. The behavior depends on whether the specified primary key already exists in the table.

If an item with the specified Key is found in the table:

If no item with the specified Key is found:

" + "AttributeValueUpdate$Action": "

Specifies how to perform the update. Valid values are PUT (default), DELETE, and ADD. The behavior depends on whether the specified primary key already exists in the table.

If an item with the specified Key is found in the table:

If no item with the specified Key is found:

" } }, "AttributeDefinition": { @@ -290,7 +290,7 @@ "BackupSizeBytes": { "base": null, "refs": { - "BackupDetails$BackupSizeBytes": "

Size of the backup in bytes.

", + "BackupDetails$BackupSizeBytes": "

Size of the backup in bytes. DynamoDB updates this value approximately every six hours. Recent changes might not be reflected in this value.

", "BackupSummary$BackupSizeBytes": "

Size of the backup in bytes.

" } }, @@ -323,7 +323,7 @@ "BackupTypeFilter": { "base": null, "refs": { - "ListBackupsInput$BackupType": "

The backups from the table specified by BackupType are listed.

Where BackupType can be:

" + "ListBackupsInput$BackupType": "

The backups from the table specified by BackupType are listed.

Where BackupType can be:

" } }, "BackupsInputLimit": { @@ -530,8 +530,8 @@ "DeleteItemInput$ConditionExpression": "

A condition that must be satisfied in order for a conditional DeleteItem to succeed.

An expression can contain any of the following:

For more information about condition expressions, see Condition Expressions in the Amazon DynamoDB Developer Guide.

", "Put$ConditionExpression": "

A condition that must be satisfied in order for a conditional update to succeed.

", "PutItemInput$ConditionExpression": "

A condition that must be satisfied in order for a conditional PutItem operation to succeed.

An expression can contain any of the following:

For more information on condition expressions, see Condition Expressions in the Amazon DynamoDB Developer Guide.

", - "QueryInput$FilterExpression": "

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

", - "ScanInput$FilterExpression": "

A string that contains conditions that DynamoDB applies after the Scan operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

", + "QueryInput$FilterExpression": "

A string that contains conditions that DynamoDB applies after the Query operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression does not allow key attributes. You cannot define a filter expression based on a partition key or a sort key.

A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

", + "ScanInput$FilterExpression": "

A string that contains conditions that DynamoDB applies after the Scan operation, but before the data is returned to you. Items that do not satisfy the FilterExpression criteria are not returned.

A FilterExpression is applied after the items have already been read; the process of filtering does not consume any additional read capacity units.

For more information, see Filter Expressions in the Amazon DynamoDB Developer Guide.

", "Update$ConditionExpression": "

A condition that must be satisfied in order for a conditional update to succeed.

", "UpdateItemInput$ConditionExpression": "

A condition that must be satisfied in order for a conditional update to succeed.

An expression can contain any of the following:

For more information about condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.

" } @@ -1103,7 +1103,7 @@ "base": null, "refs": { "ExportDescription$ExportTime": "

Point in time from which table data was exported.

", - "ExportTableToPointInTimeInput$ExportTime": "

Time in the past from which to export table data. The table export will be a snapshot of the table's state at this point in time.

" + "ExportTableToPointInTimeInput$ExportTime": "

Time in the past from which to export table data, counted in seconds from the start of the Unix epoch. The table export will be a snapshot of the table's state at this point in time.

" } }, "ExpressionAttributeNameMap": { @@ -1217,7 +1217,7 @@ "GlobalSecondaryIndexDescriptionList": { "base": null, "refs": { - "TableDescription$GlobalSecondaryIndexes": "

The global secondary indexes, if any, on the table. Each index is scoped to a given partition key value. Each element is composed of:

If the table is in the DELETING state, no information about indexes will be returned.

" + "TableDescription$GlobalSecondaryIndexes": "

The global secondary indexes, if any, on the table. Each index is scoped to a given partition key value. Each element is composed of:

If the table is in the DELETING state, no information about indexes will be returned.

" } }, "GlobalSecondaryIndexInfo": { @@ -1582,14 +1582,14 @@ } }, "LimitExceededException": { - "base": "

There is no limit to the number of daily on-demand backups that can be taken.

Up to 50 simultaneous table operations are allowed per account. These operations include CreateTable, UpdateTable, DeleteTable,UpdateTimeToLive, RestoreTableFromBackup, and RestoreTableToPointInTime.

The only exception is when you are creating a table with one or more secondary indexes. You can have up to 25 such requests running at a time; however, if the table or index specifications are complex, DynamoDB might temporarily reduce the number of concurrent operations.

There is a soft account quota of 256 tables.

", + "base": "

There is no limit to the number of daily on-demand backups that can be taken.

Up to 500 simultaneous table operations are allowed per account. These operations include CreateTable, UpdateTable, DeleteTable,UpdateTimeToLive, RestoreTableFromBackup, and RestoreTableToPointInTime.

The only exception is when you are creating a table with one or more secondary indexes. You can have up to 250 such requests running at a time; however, if the table or index specifications are complex, DynamoDB might temporarily reduce the number of concurrent operations.

There is a soft account quota of 2,500 tables.

", "refs": { } }, "ListAttributeValue": { "base": null, "refs": { - "AttributeValue$L": "

An attribute of type List. For example:

\"L\": [ {\"S\": \"Cookies\"} , {\"S\": \"Coffee\"}, {\"N\", \"3.14159\"}]

" + "AttributeValue$L": "

An attribute of type List. For example:

\"L\": [ {\"S\": \"Cookies\"} , {\"S\": \"Coffee\"}, {\"N\": \"3.14159\"}]

" } }, "ListBackupsInput": { @@ -1685,7 +1685,7 @@ "LocalSecondaryIndexDescriptionList": { "base": null, "refs": { - "TableDescription$LocalSecondaryIndexes": "

Represents one or more local secondary indexes on the table. Each index is scoped to a given partition key value. Tables with one or more local secondary indexes are subject to an item collection size limit, where the amount of data within a given item collection cannot exceed 10 GB. Each element is composed of:

If the table is in the DELETING state, no information about indexes will be returned.

" + "TableDescription$LocalSecondaryIndexes": "

Represents one or more local secondary indexes on the table. Each index is scoped to a given partition key value. Tables with one or more local secondary indexes are subject to an item collection size limit, where the amount of data within a given item collection cannot exceed 10 GB. Each element is composed of:

If the table is in the DELETING state, no information about indexes will be returned.

" } }, "LocalSecondaryIndexInfo": { @@ -1745,7 +1745,7 @@ "NonKeyAttributeNameList": { "base": null, "refs": { - "Projection$NonKeyAttributes": "

Represents the non-key attribute names which will be projected into the index.

For local secondary indexes, the total count of NonKeyAttributes summed across all of the local secondary indexes, must not exceed 20. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.

" + "Projection$NonKeyAttributes": "

Represents the non-key attribute names which will be projected into the index.

For local secondary indexes, the total count of NonKeyAttributes summed across all of the local secondary indexes, must not exceed 100. If you project the same attribute into two different indexes, this counts as two distinct attributes when determining the total.

" } }, "NonNegativeLongObject": { @@ -2190,7 +2190,7 @@ } }, "ReplicationGroupUpdate": { - "base": "

Represents one of the following:

", + "base": "

Represents one of the following:

When you manually remove a table or global table replica, you do not automatically remove any associated scalable targets, scaling policies, or CloudWatch alarms.

", "refs": { "ReplicationGroupUpdateList$member": null } @@ -2287,8 +2287,8 @@ "ReturnValue": { "base": null, "refs": { - "DeleteItemInput$ReturnValues": "

Use ReturnValues if you want to get the item attributes as they appeared before they were deleted. For DeleteItem, the valid values are:

The ReturnValues parameter is used by several DynamoDB operations; however, DeleteItem does not recognize any values other than NONE or ALL_OLD.

", - "PutItemInput$ReturnValues": "

Use ReturnValues if you want to get the item attributes as they appeared before they were updated with the PutItem request. For PutItem, the valid values are:

The values returned are strongly consistent.

The ReturnValues parameter is used by several DynamoDB operations; however, PutItem does not recognize any values other than NONE or ALL_OLD.

", + "DeleteItemInput$ReturnValues": "

Use ReturnValues if you want to get the item attributes as they appeared before they were deleted. For DeleteItem, the valid values are:

There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.

The ReturnValues parameter is used by several DynamoDB operations; however, DeleteItem does not recognize any values other than NONE or ALL_OLD.

", + "PutItemInput$ReturnValues": "

Use ReturnValues if you want to get the item attributes as they appeared before they were updated with the PutItem request. For PutItem, the valid values are:

The values returned are strongly consistent.

There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.

The ReturnValues parameter is used by several DynamoDB operations; however, PutItem does not recognize any values other than NONE or ALL_OLD.

", "UpdateItemInput$ReturnValues": "

Use ReturnValues if you want to get the item attributes as they appear before or after they are updated. For UpdateItem, the valid values are:

There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.

The values returned are strongly consistent.

" } }, @@ -2409,8 +2409,8 @@ "Select": { "base": null, "refs": { - "QueryInput$Select": "

The attributes to be returned in the result. You can retrieve all item attributes, specific item attributes, the count of matching items, or in the case of an index, some or all of the attributes projected into the index.

If neither Select nor AttributesToGet are specified, DynamoDB defaults to ALL_ATTRIBUTES when accessing a table, and ALL_PROJECTED_ATTRIBUTES when accessing an index. You cannot use both Select and AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet without any value for Select.)

If you use the ProjectionExpression parameter, then the value for Select can only be SPECIFIC_ATTRIBUTES. Any other value for Select will return an error.

", - "ScanInput$Select": "

The attributes to be returned in the result. You can retrieve all item attributes, specific item attributes, the count of matching items, or in the case of an index, some or all of the attributes projected into the index.

If neither Select nor AttributesToGet are specified, DynamoDB defaults to ALL_ATTRIBUTES when accessing a table, and ALL_PROJECTED_ATTRIBUTES when accessing an index. You cannot use both Select and AttributesToGet together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying AttributesToGet without any value for Select.)

If you use the ProjectionExpression parameter, then the value for Select can only be SPECIFIC_ATTRIBUTES. Any other value for Select will return an error.

" + "QueryInput$Select": "

The attributes to be returned in the result. You can retrieve all item attributes, specific item attributes, the count of matching items, or in the case of an index, some or all of the attributes projected into the index.

If neither Select nor ProjectionExpression are specified, DynamoDB defaults to ALL_ATTRIBUTES when accessing a table, and ALL_PROJECTED_ATTRIBUTES when accessing an index. You cannot use both Select and ProjectionExpression together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying ProjectionExpression without any value for Select.)

If you use the ProjectionExpression parameter, then the value for Select can only be SPECIFIC_ATTRIBUTES. Any other value for Select will return an error.

", + "ScanInput$Select": "

The attributes to be returned in the result. You can retrieve all item attributes, specific item attributes, the count of matching items, or in the case of an index, some or all of the attributes projected into the index.

If neither Select nor ProjectionExpression are specified, DynamoDB defaults to ALL_ATTRIBUTES when accessing a table, and ALL_PROJECTED_ATTRIBUTES when accessing an index. You cannot use both Select and ProjectionExpression together in a single request, unless the value for Select is SPECIFIC_ATTRIBUTES. (This usage is equivalent to specifying ProjectionExpression without any value for Select.)

If you use the ProjectionExpression parameter, then the value for Select can only be SPECIFIC_ATTRIBUTES. Any other value for Select will return an error.

" } }, "SourceTableDetails": { @@ -2628,7 +2628,7 @@ } }, "TableNotFoundException": { - "base": "

A source table with the name TableName does not currently exist within the subscriber's account.

", + "base": "

A source table with the name TableName does not currently exist within the subscriber's account or the subscriber is operating in the wrong Amazon Web Services Region.

", "refs": { } }, @@ -2767,7 +2767,7 @@ } }, "TransactionCanceledException": { - "base": "

The entire transaction request was canceled.

DynamoDB cancels a TransactWriteItems request under the following circumstances:

DynamoDB cancels a TransactGetItems request under the following circumstances:

If using Java, DynamoDB lists the cancellation reasons on the CancellationReasons property. This property is not set for other languages. Transaction cancellation reasons are ordered in the order of requested items, if an item has no error it will have NONE code and Null message.

Cancellation reason codes and possible error messages:

", + "base": "

The entire transaction request was canceled.

DynamoDB cancels a TransactWriteItems request under the following circumstances:

DynamoDB cancels a TransactGetItems request under the following circumstances:

If using Java, DynamoDB lists the cancellation reasons on the CancellationReasons property. This property is not set for other languages. Transaction cancellation reasons are ordered in the order of requested items, if an item has no error it will have None code and Null message.

Cancellation reason codes and possible error messages:

", "refs": { } }, diff --git a/apis/streams.dynamodb/2012-08-10/docs-2.json b/apis/streams.dynamodb/2012-08-10/docs-2.json index 283ecdd99c9..1d7ba8077ae 100644 --- a/apis/streams.dynamodb/2012-08-10/docs-2.json +++ b/apis/streams.dynamodb/2012-08-10/docs-2.json @@ -138,14 +138,14 @@ } }, "LimitExceededException": { - "base": "

There is no limit to the number of daily on-demand backups that can be taken.

Up to 50 simultaneous table operations are allowed per account. These operations include CreateTable, UpdateTable, DeleteTable,UpdateTimeToLive, RestoreTableFromBackup, and RestoreTableToPointInTime.

The only exception is when you are creating a table with one or more secondary indexes. You can have up to 25 such requests running at a time; however, if the table or index specifications are complex, DynamoDB might temporarily reduce the number of concurrent operations.

There is a soft account quota of 256 tables.

", + "base": "

There is no limit to the number of daily on-demand backups that can be taken.

Up to 500 simultaneous table operations are allowed per account. These operations include CreateTable, UpdateTable, DeleteTable,UpdateTimeToLive, RestoreTableFromBackup, and RestoreTableToPointInTime.

The only exception is when you are creating a table with one or more secondary indexes. You can have up to 250 such requests running at a time; however, if the table or index specifications are complex, DynamoDB might temporarily reduce the number of concurrent operations.

There is a soft account quota of 2,500 tables.

", "refs": { } }, "ListAttributeValue": { "base": null, "refs": { - "AttributeValue$L": "

An attribute of type List. For example:

\"L\": [ {\"S\": \"Cookies\"} , {\"S\": \"Coffee\"}, {\"N\", \"3.14159\"}]

" + "AttributeValue$L": "

An attribute of type List. For example:

\"L\": [ {\"S\": \"Cookies\"} , {\"S\": \"Coffee\"}, {\"N\": \"3.14159\"}]

" } }, "ListStreamsInput": { diff --git a/gems/aws-partitions/CHANGELOG.md b/gems/aws-partitions/CHANGELOG.md index 03ad3b7725b..7effca138ae 100644 --- a/gems/aws-partitions/CHANGELOG.md +++ b/gems/aws-partitions/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.600.0 (2022-06-17) +------------------ + +* Feature - Added support for enumerating regions for `Aws::ConnectCampaignService`. + 1.599.0 (2022-06-16) ------------------ diff --git a/gems/aws-partitions/VERSION b/gems/aws-partitions/VERSION index d3013b779d0..dd2500bdf3e 100644 --- a/gems/aws-partitions/VERSION +++ b/gems/aws-partitions/VERSION @@ -1 +1 @@ -1.599.0 +1.600.0 diff --git a/gems/aws-partitions/lib/aws-partitions.rb b/gems/aws-partitions/lib/aws-partitions.rb index 2e42f6845a7..02e12b33184 100644 --- a/gems/aws-partitions/lib/aws-partitions.rb +++ b/gems/aws-partitions/lib/aws-partitions.rb @@ -296,6 +296,7 @@ def service_ids 'ComputeOptimizer' => 'compute-optimizer', 'ConfigService' => 'config', 'Connect' => 'connect', + 'ConnectCampaignService' => 'connect-campaigns', 'ConnectContactLens' => 'contact-lens', 'ConnectParticipant' => 'participant.connect', 'ConnectWisdomService' => 'wisdom', diff --git a/gems/aws-partitions/partitions.json b/gems/aws-partitions/partitions.json index 27c23e5b615..5c173af813f 100644 --- a/gems/aws-partitions/partitions.json +++ b/gems/aws-partitions/partitions.json @@ -2984,6 +2984,14 @@ "us-west-2" : { } } }, + "connect-campaigns" : { + "endpoints" : { + "ap-southeast-2" : { }, + "eu-west-2" : { }, + "us-east-1" : { }, + "us-west-2" : { } + } + }, "contact-lens" : { "endpoints" : { "ap-northeast-1" : { }, diff --git a/gems/aws-sdk-connect/CHANGELOG.md b/gems/aws-sdk-connect/CHANGELOG.md index cccb4dfc49c..75b75b0ec27 100644 --- a/gems/aws-sdk-connect/CHANGELOG.md +++ b/gems/aws-sdk-connect/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.74.0 (2022-06-17) +------------------ + +* Feature - This release updates these APIs: UpdateInstanceAttribute, DescribeInstanceAttribute and ListInstanceAttributes. You can use it to programmatically enable/disable High volume outbound communications using attribute type HIGH_VOLUME_OUTBOUND on the specified Amazon Connect instance. + 1.73.0 (2022-06-06) ------------------ diff --git a/gems/aws-sdk-connect/VERSION b/gems/aws-sdk-connect/VERSION index 5e3a4256626..dc87e8af82f 100644 --- a/gems/aws-sdk-connect/VERSION +++ b/gems/aws-sdk-connect/VERSION @@ -1 +1 @@ -1.73.0 +1.74.0 diff --git a/gems/aws-sdk-connect/lib/aws-sdk-connect.rb b/gems/aws-sdk-connect/lib/aws-sdk-connect.rb index ce4869d58a3..03da3f7756b 100644 --- a/gems/aws-sdk-connect/lib/aws-sdk-connect.rb +++ b/gems/aws-sdk-connect/lib/aws-sdk-connect.rb @@ -48,6 +48,6 @@ # @!group service module Aws::Connect - GEM_VERSION = '1.73.0' + GEM_VERSION = '1.74.0' end diff --git a/gems/aws-sdk-connect/lib/aws-sdk-connect/client.rb b/gems/aws-sdk-connect/lib/aws-sdk-connect/client.rb index 3dca2b64f2f..8c8cca98884 100644 --- a/gems/aws-sdk-connect/lib/aws-sdk-connect/client.rb +++ b/gems/aws-sdk-connect/lib/aws-sdk-connect/client.rb @@ -2473,12 +2473,12 @@ def describe_instance(params = {}, options = {}) # # resp = client.describe_instance_attribute({ # instance_id: "InstanceId", # required - # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE + # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND # }) # # @example Response structure # - # resp.attribute.attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE" + # resp.attribute.attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE", "HIGH_VOLUME_OUTBOUND" # resp.attribute.value #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribeInstanceAttribute AWS API Documentation @@ -4467,7 +4467,7 @@ def list_hours_of_operations(params = {}, options = {}) # @example Response structure # # resp.attributes #=> Array - # resp.attributes[0].attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE" + # resp.attributes[0].attribute_type #=> String, one of "INBOUND_CALLS", "OUTBOUND_CALLS", "CONTACTFLOW_LOGS", "CONTACT_LENS", "AUTO_RESOLVE_BEST_VOICES", "USE_CUSTOM_TTS_VOICES", "EARLY_MEDIA", "MULTI_PARTY_CONFERENCE", "HIGH_VOLUME_OUTBOUND" # resp.attributes[0].value #=> String # resp.next_token #=> String # @@ -7204,7 +7204,7 @@ def update_hours_of_operation(params = {}, options = {}) # # resp = client.update_instance_attribute({ # instance_id: "InstanceId", # required - # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE + # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND # value: "InstanceAttributeValue", # required # }) # @@ -8183,7 +8183,7 @@ def build_request(operation_name, params = {}) params: params, config: config) context[:gem_name] = 'aws-sdk-connect' - context[:gem_version] = '1.73.0' + context[:gem_version] = '1.74.0' Seahorse::Client::Request.new(handlers, context) end diff --git a/gems/aws-sdk-connect/lib/aws-sdk-connect/types.rb b/gems/aws-sdk-connect/lib/aws-sdk-connect/types.rb index 30a332c5e97..e535c6babea 100644 --- a/gems/aws-sdk-connect/lib/aws-sdk-connect/types.rb +++ b/gems/aws-sdk-connect/lib/aws-sdk-connect/types.rb @@ -3154,7 +3154,7 @@ class DescribeHoursOfOperationResponse < Struct.new( # # { # instance_id: "InstanceId", # required - # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE + # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND # } # # @!attribute [rw] instance_id @@ -10537,7 +10537,7 @@ class UpdateHoursOfOperationRequest < Struct.new( # # { # instance_id: "InstanceId", # required - # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE + # attribute_type: "INBOUND_CALLS", # required, accepts INBOUND_CALLS, OUTBOUND_CALLS, CONTACTFLOW_LOGS, CONTACT_LENS, AUTO_RESOLVE_BEST_VOICES, USE_CUSTOM_TTS_VOICES, EARLY_MEDIA, MULTI_PARTY_CONFERENCE, HIGH_VOLUME_OUTBOUND # value: "InstanceAttributeValue", # required # } # diff --git a/gems/aws-sdk-connectcampaignservice/CHANGELOG.md b/gems/aws-sdk-connectcampaignservice/CHANGELOG.md new file mode 100644 index 00000000000..e3f2ce3093b --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/CHANGELOG.md @@ -0,0 +1,8 @@ +Unreleased Changes +------------------ + +1.0.0 (2022-06-17) +------------------ + +* Feature - Initial release of `aws-sdk-connectcampaignservice`. + diff --git a/gems/aws-sdk-connectcampaignservice/LICENSE.txt b/gems/aws-sdk-connectcampaignservice/LICENSE.txt new file mode 100644 index 00000000000..d6456956733 --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/gems/aws-sdk-connectcampaignservice/VERSION b/gems/aws-sdk-connectcampaignservice/VERSION new file mode 100644 index 00000000000..3eefcb9dd5b --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/VERSION @@ -0,0 +1 @@ +1.0.0 diff --git a/gems/aws-sdk-connectcampaignservice/aws-sdk-connectcampaignservice.gemspec b/gems/aws-sdk-connectcampaignservice/aws-sdk-connectcampaignservice.gemspec new file mode 100644 index 00000000000..cfc4c4e6f5c --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/aws-sdk-connectcampaignservice.gemspec @@ -0,0 +1,32 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + +Gem::Specification.new do |spec| + + spec.name = 'aws-sdk-connectcampaignservice' + spec.version = File.read(File.expand_path('../VERSION', __FILE__)).strip + spec.summary = 'AWS SDK for Ruby - AmazonConnectCampaignService' + spec.description = 'Official AWS Ruby gem for AmazonConnectCampaignService. This gem is part of the AWS SDK for Ruby.' + spec.author = 'Amazon Web Services' + spec.homepage = 'https://github.com/aws/aws-sdk-ruby' + spec.license = 'Apache-2.0' + spec.email = ['aws-dr-rubygems@amazon.com'] + spec.require_paths = ['lib'] + spec.files = Dir['LICENSE.txt', 'CHANGELOG.md', 'VERSION', 'lib/**/*.rb'] + + spec.metadata = { + 'source_code_uri' => 'https://github.com/aws/aws-sdk-ruby/tree/version-3/gems/aws-sdk-connectcampaignservice', + 'changelog_uri' => 'https://github.com/aws/aws-sdk-ruby/tree/version-3/gems/aws-sdk-connectcampaignservice/CHANGELOG.md' + } + + spec.add_dependency('aws-sdk-core', '~> 3', '>= 3.127.0') + spec.add_dependency('aws-sigv4', '~> 1.1') + + spec.required_ruby_version = '>= 2.3' +end diff --git a/gems/aws-sdk-connectcampaignservice/features/env.rb b/gems/aws-sdk-connectcampaignservice/features/env.rb new file mode 100644 index 00000000000..e8fe779d907 --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/features/env.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + +$:.unshift(File.expand_path('../../lib', __FILE__)) +$:.unshift(File.expand_path('../../../aws-sdk-core/features', __FILE__)) +$:.unshift(File.expand_path('../../../aws-sdk-core/lib', __FILE__)) +$:.unshift(File.expand_path('../../../aws-sigv4/lib', __FILE__)) + +require 'features_helper' +require 'aws-sdk-connectcampaignservice' + +Aws::ConnectCampaignService::Client.add_plugin(ApiCallTracker) diff --git a/gems/aws-sdk-connectcampaignservice/features/step_definitions.rb b/gems/aws-sdk-connectcampaignservice/features/step_definitions.rb new file mode 100644 index 00000000000..0c690eccc20 --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/features/step_definitions.rb @@ -0,0 +1,8 @@ +Before("@connectcampaignservice") do + @service = Aws::ConnectCampaignService::Resource.new + @client = @service.client +end + +After("@connectcampaignservice") do + # shared cleanup logic +end diff --git a/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice.rb b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice.rb new file mode 100644 index 00000000000..078e3d46ac2 --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice.rb @@ -0,0 +1,53 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + + +require 'aws-sdk-core' +require 'aws-sigv4' + +require_relative 'aws-sdk-connectcampaignservice/types' +require_relative 'aws-sdk-connectcampaignservice/client_api' +require_relative 'aws-sdk-connectcampaignservice/client' +require_relative 'aws-sdk-connectcampaignservice/errors' +require_relative 'aws-sdk-connectcampaignservice/resource' +require_relative 'aws-sdk-connectcampaignservice/customizations' + +# This module provides support for AmazonConnectCampaignService. This module is available in the +# `aws-sdk-connectcampaignservice` gem. +# +# # Client +# +# The {Client} class provides one method for each API operation. Operation +# methods each accept a hash of request parameters and return a response +# structure. +# +# connect_campaign_service = Aws::ConnectCampaignService::Client.new +# resp = connect_campaign_service.create_campaign(params) +# +# See {Client} for more information. +# +# # Errors +# +# Errors returned from AmazonConnectCampaignService are defined in the +# {Errors} module and all extend {Errors::ServiceError}. +# +# begin +# # do stuff +# rescue Aws::ConnectCampaignService::Errors::ServiceError +# # rescues all AmazonConnectCampaignService API errors +# end +# +# See {Errors} for more information. +# +# @!group service +module Aws::ConnectCampaignService + + GEM_VERSION = '1.0.0' + +end diff --git a/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/client.rb b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/client.rb new file mode 100644 index 00000000000..67d2d39435d --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/client.rb @@ -0,0 +1,1094 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + +require 'seahorse/client/plugins/content_length.rb' +require 'aws-sdk-core/plugins/credentials_configuration.rb' +require 'aws-sdk-core/plugins/logging.rb' +require 'aws-sdk-core/plugins/param_converter.rb' +require 'aws-sdk-core/plugins/param_validator.rb' +require 'aws-sdk-core/plugins/user_agent.rb' +require 'aws-sdk-core/plugins/helpful_socket_errors.rb' +require 'aws-sdk-core/plugins/retry_errors.rb' +require 'aws-sdk-core/plugins/global_configuration.rb' +require 'aws-sdk-core/plugins/regional_endpoint.rb' +require 'aws-sdk-core/plugins/endpoint_discovery.rb' +require 'aws-sdk-core/plugins/endpoint_pattern.rb' +require 'aws-sdk-core/plugins/response_paging.rb' +require 'aws-sdk-core/plugins/stub_responses.rb' +require 'aws-sdk-core/plugins/idempotency_token.rb' +require 'aws-sdk-core/plugins/jsonvalue_converter.rb' +require 'aws-sdk-core/plugins/client_metrics_plugin.rb' +require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb' +require 'aws-sdk-core/plugins/transfer_encoding.rb' +require 'aws-sdk-core/plugins/http_checksum.rb' +require 'aws-sdk-core/plugins/checksum_algorithm.rb' +require 'aws-sdk-core/plugins/defaults_mode.rb' +require 'aws-sdk-core/plugins/recursion_detection.rb' +require 'aws-sdk-core/plugins/signature_v4.rb' +require 'aws-sdk-core/plugins/protocols/rest_json.rb' + +Aws::Plugins::GlobalConfiguration.add_identifier(:connectcampaignservice) + +module Aws::ConnectCampaignService + # An API client for ConnectCampaignService. To construct a client, you need to configure a `:region` and `:credentials`. + # + # client = Aws::ConnectCampaignService::Client.new( + # region: region_name, + # credentials: credentials, + # # ... + # ) + # + # For details on configuring region and credentials see + # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html). + # + # See {#initialize} for a full list of supported configuration options. + class Client < Seahorse::Client::Base + + include Aws::ClientStubs + + @identifier = :connectcampaignservice + + set_api(ClientApi::API) + + add_plugin(Seahorse::Client::Plugins::ContentLength) + add_plugin(Aws::Plugins::CredentialsConfiguration) + add_plugin(Aws::Plugins::Logging) + add_plugin(Aws::Plugins::ParamConverter) + add_plugin(Aws::Plugins::ParamValidator) + add_plugin(Aws::Plugins::UserAgent) + add_plugin(Aws::Plugins::HelpfulSocketErrors) + add_plugin(Aws::Plugins::RetryErrors) + add_plugin(Aws::Plugins::GlobalConfiguration) + add_plugin(Aws::Plugins::RegionalEndpoint) + add_plugin(Aws::Plugins::EndpointDiscovery) + add_plugin(Aws::Plugins::EndpointPattern) + add_plugin(Aws::Plugins::ResponsePaging) + add_plugin(Aws::Plugins::StubResponses) + add_plugin(Aws::Plugins::IdempotencyToken) + add_plugin(Aws::Plugins::JsonvalueConverter) + add_plugin(Aws::Plugins::ClientMetricsPlugin) + add_plugin(Aws::Plugins::ClientMetricsSendPlugin) + add_plugin(Aws::Plugins::TransferEncoding) + add_plugin(Aws::Plugins::HttpChecksum) + add_plugin(Aws::Plugins::ChecksumAlgorithm) + add_plugin(Aws::Plugins::DefaultsMode) + add_plugin(Aws::Plugins::RecursionDetection) + add_plugin(Aws::Plugins::SignatureV4) + add_plugin(Aws::Plugins::Protocols::RestJson) + + # @overload initialize(options) + # @param [Hash] options + # @option options [required, Aws::CredentialProvider] :credentials + # Your AWS credentials. This can be an instance of any one of the + # following classes: + # + # * `Aws::Credentials` - Used for configuring static, non-refreshing + # credentials. + # + # * `Aws::SharedCredentials` - Used for loading static credentials from a + # shared file, such as `~/.aws/config`. + # + # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role. + # + # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to + # assume a role after providing credentials via the web. + # + # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an + # access token generated from `aws login`. + # + # * `Aws::ProcessCredentials` - Used for loading credentials from a + # process that outputs to stdout. + # + # * `Aws::InstanceProfileCredentials` - Used for loading credentials + # from an EC2 IMDS on an EC2 instance. + # + # * `Aws::ECSCredentials` - Used for loading credentials from + # instances running in ECS. + # + # * `Aws::CognitoIdentityCredentials` - Used for loading credentials + # from the Cognito Identity service. + # + # When `:credentials` are not configured directly, the following + # locations will be searched for credentials: + # + # * `Aws.config[:credentials]` + # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options. + # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'] + # * `~/.aws/credentials` + # * `~/.aws/config` + # * EC2/ECS IMDS instance profile - When used by default, the timeouts + # are very aggressive. Construct and pass an instance of + # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to + # enable retries and extended timeouts. Instance profile credential + # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED'] + # to true. + # + # @option options [required, String] :region + # The AWS region to connect to. The configured `:region` is + # used to determine the service `:endpoint`. When not passed, + # a default `:region` is searched for in the following locations: + # + # * `Aws.config[:region]` + # * `ENV['AWS_REGION']` + # * `ENV['AMAZON_REGION']` + # * `ENV['AWS_DEFAULT_REGION']` + # * `~/.aws/credentials` + # * `~/.aws/config` + # + # @option options [String] :access_key_id + # + # @option options [Boolean] :active_endpoint_cache (false) + # When set to `true`, a thread polling for endpoints will be running in + # the background every 60 secs (default). Defaults to `false`. + # + # @option options [Boolean] :adaptive_retry_wait_to_fill (true) + # Used only in `adaptive` retry mode. When true, the request will sleep + # until there is sufficent client side capacity to retry the request. + # When false, the request will raise a `RetryCapacityNotAvailableError` and will + # not retry instead of sleeping. + # + # @option options [Boolean] :client_side_monitoring (false) + # When `true`, client-side metrics will be collected for all API requests from + # this client. + # + # @option options [String] :client_side_monitoring_client_id ("") + # Allows you to provide an identifier for this client which will be attached to + # all generated client side metrics. Defaults to an empty string. + # + # @option options [String] :client_side_monitoring_host ("127.0.0.1") + # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client + # side monitoring agent is running on, where client metrics will be published via UDP. + # + # @option options [Integer] :client_side_monitoring_port (31000) + # Required for publishing client metrics. The port that the client side monitoring + # agent is running on, where client metrics will be published via UDP. + # + # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) + # Allows you to provide a custom client-side monitoring publisher class. By default, + # will use the Client Side Monitoring Agent Publisher. + # + # @option options [Boolean] :convert_params (true) + # When `true`, an attempt is made to coerce request parameters into + # the required types. + # + # @option options [Boolean] :correct_clock_skew (true) + # Used only in `standard` and adaptive retry modes. Specifies whether to apply + # a clock skew correction and retry requests with skewed client clocks. + # + # @option options [String] :defaults_mode ("legacy") + # See {Aws::DefaultsModeConfiguration} for a list of the + # accepted modes and the configuration defaults that are included. + # + # @option options [Boolean] :disable_host_prefix_injection (false) + # Set to true to disable SDK automatically adding host prefix + # to default service endpoint when available. + # + # @option options [String] :endpoint + # The client endpoint is normally constructed from the `:region` + # option. You should only configure an `:endpoint` when connecting + # to test or custom endpoints. This should be a valid HTTP(S) URI. + # + # @option options [Integer] :endpoint_cache_max_entries (1000) + # Used for the maximum size limit of the LRU cache storing endpoints data + # for endpoint discovery enabled operations. Defaults to 1000. + # + # @option options [Integer] :endpoint_cache_max_threads (10) + # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10. + # + # @option options [Integer] :endpoint_cache_poll_interval (60) + # When :endpoint_discovery and :active_endpoint_cache is enabled, + # Use this option to config the time interval in seconds for making + # requests fetching endpoints information. Defaults to 60 sec. + # + # @option options [Boolean] :endpoint_discovery (false) + # When set to `true`, endpoint discovery will be enabled for operations when available. + # + # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default) + # The log formatter. + # + # @option options [Symbol] :log_level (:info) + # The log level to send messages to the `:logger` at. + # + # @option options [Logger] :logger + # The Logger instance to send log messages to. If this option + # is not set, logging will be disabled. + # + # @option options [Integer] :max_attempts (3) + # An integer representing the maximum number attempts that will be made for + # a single request, including the initial attempt. For example, + # setting this value to 5 will result in a request being retried up to + # 4 times. Used in `standard` and `adaptive` retry modes. + # + # @option options [String] :profile ("default") + # Used when loading credentials from the shared credentials file + # at HOME/.aws/credentials. When not specified, 'default' is used. + # + # @option options [Proc] :retry_backoff + # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. + # This option is only used in the `legacy` retry mode. + # + # @option options [Float] :retry_base_delay (0.3) + # The base delay in seconds used by the default backoff function. This option + # is only used in the `legacy` retry mode. + # + # @option options [Symbol] :retry_jitter (:none) + # A delay randomiser function used by the default backoff function. + # Some predefined functions can be referenced by name - :none, :equal, :full, + # otherwise a Proc that takes and returns a number. This option is only used + # in the `legacy` retry mode. + # + # @see https://www.awsarchitectureblog.com/2015/03/backoff.html + # + # @option options [Integer] :retry_limit (3) + # The maximum number of times to retry failed requests. Only + # ~ 500 level server errors and certain ~ 400 level client errors + # are retried. Generally, these are throttling errors, data + # checksum errors, networking errors, timeout errors, auth errors, + # endpoint discovery, and errors from expired credentials. + # This option is only used in the `legacy` retry mode. + # + # @option options [Integer] :retry_max_delay (0) + # The maximum number of seconds to delay between retries (0 for no limit) + # used by the default backoff function. This option is only used in the + # `legacy` retry mode. + # + # @option options [String] :retry_mode ("legacy") + # Specifies which retry algorithm to use. Values are: + # + # * `legacy` - The pre-existing retry behavior. This is default value if + # no retry mode is provided. + # + # * `standard` - A standardized set of retry rules across the AWS SDKs. + # This includes support for retry quotas, which limit the number of + # unsuccessful retries a client can make. + # + # * `adaptive` - An experimental retry mode that includes all the + # functionality of `standard` mode along with automatic client side + # throttling. This is a provisional mode that may change behavior + # in the future. + # + # + # @option options [String] :secret_access_key + # + # @option options [String] :session_token + # + # @option options [Boolean] :stub_responses (false) + # Causes the client to return stubbed responses. By default + # fake responses are generated and returned. You can specify + # the response data to return or errors to raise by calling + # {ClientStubs#stub_responses}. See {ClientStubs} for more information. + # + # ** Please note ** When response stubbing is enabled, no HTTP + # requests are made, and retries are disabled. + # + # @option options [Boolean] :use_dualstack_endpoint + # When set to `true`, dualstack enabled endpoints (with `.aws` TLD) + # will be used if available. + # + # @option options [Boolean] :use_fips_endpoint + # When set to `true`, fips compatible endpoints will be used if available. + # When a `fips` region is used, the region is normalized and this config + # is set to `true`. + # + # @option options [Boolean] :validate_params (true) + # When `true`, request parameters are validated before + # sending the request. + # + # @option options [URI::HTTP,String] :http_proxy A proxy to send + # requests through. Formatted like 'http://proxy.com:123'. + # + # @option options [Float] :http_open_timeout (15) The number of + # seconds to wait when opening a HTTP session before raising a + # `Timeout::Error`. + # + # @option options [Float] :http_read_timeout (60) The default + # number of seconds to wait for response data. This value can + # safely be set per-request on the session. + # + # @option options [Float] :http_idle_timeout (5) The number of + # seconds a connection is allowed to sit idle before it is + # considered stale. Stale connections are closed and removed + # from the pool before making a request. + # + # @option options [Float] :http_continue_timeout (1) The number of + # seconds to wait for a 100-continue response before sending the + # request body. This option has no effect unless the request has + # "Expect" header set to "100-continue". Defaults to `nil` which + # disables this behaviour. This value can safely be set per + # request on the session. + # + # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout + # in seconds. + # + # @option options [Boolean] :http_wire_trace (false) When `true`, + # HTTP debug output will be sent to the `:logger`. + # + # @option options [Boolean] :ssl_verify_peer (true) When `true`, + # SSL peer certificates are verified when establishing a + # connection. + # + # @option options [String] :ssl_ca_bundle Full path to the SSL + # certificate authority bundle file that should be used when + # verifying peer certificates. If you do not pass + # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default + # will be used if available. + # + # @option options [String] :ssl_ca_directory Full path of the + # directory that contains the unbundled SSL certificate + # authority files for verifying peer certificates. If you do + # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the + # system default will be used if available. + # + def initialize(*args) + super + end + + # @!group API Operations + + # Creates a campaign for the specified Amazon Connect account. This API + # is idempotent. + # + # @option params [required, String] :connect_instance_id + # Amazon Connect Instance Id + # + # @option params [required, Types::DialerConfig] :dialer_config + # The possible types of dialer config parameters + # + # @option params [required, String] :name + # The name of an Amazon Connect Campaign name. + # + # @option params [required, Types::OutboundCallConfig] :outbound_call_config + # The configuration used for outbound calls. + # + # @option params [Hash] :tags + # Tag map with key and value. + # + # @return [Types::CreateCampaignResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::CreateCampaignResponse#arn #arn} => String + # * {Types::CreateCampaignResponse#id #id} => String + # * {Types::CreateCampaignResponse#tags #tags} => Hash<String,String> + # + # @example Request syntax with placeholder values + # + # resp = client.create_campaign({ + # connect_instance_id: "InstanceId", # required + # dialer_config: { # required + # predictive_dialer_config: { + # bandwidth_allocation: 1.0, # required + # }, + # progressive_dialer_config: { + # bandwidth_allocation: 1.0, # required + # }, + # }, + # name: "CampaignName", # required + # outbound_call_config: { # required + # answer_machine_detection_config: { + # enable_answer_machine_detection: false, # required + # }, + # connect_contact_flow_id: "ContactFlowId", # required + # connect_queue_id: "QueueId", # required + # connect_source_phone_number: "SourcePhoneNumber", + # }, + # tags: { + # "TagKey" => "TagValue", + # }, + # }) + # + # @example Response structure + # + # resp.arn #=> String + # resp.id #=> String + # resp.tags #=> Hash + # resp.tags["TagKey"] #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/CreateCampaign AWS API Documentation + # + # @overload create_campaign(params = {}) + # @param [Hash] params ({}) + def create_campaign(params = {}, options = {}) + req = build_request(:create_campaign, params) + req.send_request(options) + end + + # Deletes a campaign from the specified Amazon Connect account. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.delete_campaign({ + # id: "CampaignId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DeleteCampaign AWS API Documentation + # + # @overload delete_campaign(params = {}) + # @param [Hash] params ({}) + def delete_campaign(params = {}, options = {}) + req = build_request(:delete_campaign, params) + req.send_request(options) + end + + # Deletes a connect instance config from the specified AWS account. + # + # @option params [required, String] :connect_instance_id + # Amazon Connect Instance Id + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.delete_connect_instance_config({ + # connect_instance_id: "InstanceId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DeleteConnectInstanceConfig AWS API Documentation + # + # @overload delete_connect_instance_config(params = {}) + # @param [Hash] params ({}) + def delete_connect_instance_config(params = {}, options = {}) + req = build_request(:delete_connect_instance_config, params) + req.send_request(options) + end + + # Delete the Connect Campaigns onboarding job for the specified Amazon + # Connect instance. + # + # @option params [required, String] :connect_instance_id + # Amazon Connect Instance Id + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.delete_instance_onboarding_job({ + # connect_instance_id: "InstanceId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DeleteInstanceOnboardingJob AWS API Documentation + # + # @overload delete_instance_onboarding_job(params = {}) + # @param [Hash] params ({}) + def delete_instance_onboarding_job(params = {}, options = {}) + req = build_request(:delete_instance_onboarding_job, params) + req.send_request(options) + end + + # Describes the specific campaign. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Types::DescribeCampaignResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::DescribeCampaignResponse#campaign #campaign} => Types::Campaign + # + # @example Request syntax with placeholder values + # + # resp = client.describe_campaign({ + # id: "CampaignId", # required + # }) + # + # @example Response structure + # + # resp.campaign.arn #=> String + # resp.campaign.connect_instance_id #=> String + # resp.campaign.dialer_config.predictive_dialer_config.bandwidth_allocation #=> Float + # resp.campaign.dialer_config.progressive_dialer_config.bandwidth_allocation #=> Float + # resp.campaign.id #=> String + # resp.campaign.name #=> String + # resp.campaign.outbound_call_config.answer_machine_detection_config.enable_answer_machine_detection #=> Boolean + # resp.campaign.outbound_call_config.connect_contact_flow_id #=> String + # resp.campaign.outbound_call_config.connect_queue_id #=> String + # resp.campaign.outbound_call_config.connect_source_phone_number #=> String + # resp.campaign.tags #=> Hash + # resp.campaign.tags["TagKey"] #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DescribeCampaign AWS API Documentation + # + # @overload describe_campaign(params = {}) + # @param [Hash] params ({}) + def describe_campaign(params = {}, options = {}) + req = build_request(:describe_campaign, params) + req.send_request(options) + end + + # Get state of a campaign for the specified Amazon Connect account. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Types::GetCampaignStateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetCampaignStateResponse#state #state} => String + # + # @example Request syntax with placeholder values + # + # resp = client.get_campaign_state({ + # id: "CampaignId", # required + # }) + # + # @example Response structure + # + # resp.state #=> String, one of "Initialized", "Running", "Paused", "Stopped", "Failed" + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetCampaignState AWS API Documentation + # + # @overload get_campaign_state(params = {}) + # @param [Hash] params ({}) + def get_campaign_state(params = {}, options = {}) + req = build_request(:get_campaign_state, params) + req.send_request(options) + end + + # Get state of campaigns for the specified Amazon Connect account. + # + # @option params [required, Array] :campaign_ids + # List of CampaignId + # + # @return [Types::GetCampaignStateBatchResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetCampaignStateBatchResponse#failed_requests #failed_requests} => Array<Types::FailedCampaignStateResponse> + # * {Types::GetCampaignStateBatchResponse#successful_requests #successful_requests} => Array<Types::SuccessfulCampaignStateResponse> + # + # @example Request syntax with placeholder values + # + # resp = client.get_campaign_state_batch({ + # campaign_ids: ["CampaignId"], # required + # }) + # + # @example Response structure + # + # resp.failed_requests #=> Array + # resp.failed_requests[0].campaign_id #=> String + # resp.failed_requests[0].failure_code #=> String, one of "ResourceNotFound", "UnknownError" + # resp.successful_requests #=> Array + # resp.successful_requests[0].campaign_id #=> String + # resp.successful_requests[0].state #=> String, one of "Initialized", "Running", "Paused", "Stopped", "Failed" + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetCampaignStateBatch AWS API Documentation + # + # @overload get_campaign_state_batch(params = {}) + # @param [Hash] params ({}) + def get_campaign_state_batch(params = {}, options = {}) + req = build_request(:get_campaign_state_batch, params) + req.send_request(options) + end + + # Get the specific Connect instance config. + # + # @option params [required, String] :connect_instance_id + # Amazon Connect Instance Id + # + # @return [Types::GetConnectInstanceConfigResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetConnectInstanceConfigResponse#connect_instance_config #connect_instance_config} => Types::InstanceConfig + # + # @example Request syntax with placeholder values + # + # resp = client.get_connect_instance_config({ + # connect_instance_id: "InstanceId", # required + # }) + # + # @example Response structure + # + # resp.connect_instance_config.connect_instance_id #=> String + # resp.connect_instance_config.encryption_config.enabled #=> Boolean + # resp.connect_instance_config.encryption_config.encryption_type #=> String, one of "KMS" + # resp.connect_instance_config.encryption_config.key_arn #=> String + # resp.connect_instance_config.service_linked_role_arn #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetConnectInstanceConfig AWS API Documentation + # + # @overload get_connect_instance_config(params = {}) + # @param [Hash] params ({}) + def get_connect_instance_config(params = {}, options = {}) + req = build_request(:get_connect_instance_config, params) + req.send_request(options) + end + + # Get the specific instance onboarding job status. + # + # @option params [required, String] :connect_instance_id + # Amazon Connect Instance Id + # + # @return [Types::GetInstanceOnboardingJobStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetInstanceOnboardingJobStatusResponse#connect_instance_onboarding_job_status #connect_instance_onboarding_job_status} => Types::InstanceOnboardingJobStatus + # + # @example Request syntax with placeholder values + # + # resp = client.get_instance_onboarding_job_status({ + # connect_instance_id: "InstanceId", # required + # }) + # + # @example Response structure + # + # resp.connect_instance_onboarding_job_status.connect_instance_id #=> String + # resp.connect_instance_onboarding_job_status.failure_code #=> String, one of "EVENT_BRIDGE_ACCESS_DENIED", "EVENT_BRIDGE_MANAGED_RULE_LIMIT_EXCEEDED", "IAM_ACCESS_DENIED", "KMS_ACCESS_DENIED", "KMS_KEY_NOT_FOUND", "INTERNAL_FAILURE" + # resp.connect_instance_onboarding_job_status.status #=> String, one of "IN_PROGRESS", "SUCCEEDED", "FAILED" + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetInstanceOnboardingJobStatus AWS API Documentation + # + # @overload get_instance_onboarding_job_status(params = {}) + # @param [Hash] params ({}) + def get_instance_onboarding_job_status(params = {}, options = {}) + req = build_request(:get_instance_onboarding_job_status, params) + req.send_request(options) + end + + # Provides summary information about the campaigns under the specified + # Amazon Connect account. + # + # @option params [Types::CampaignFilters] :filters + # Filter model by type + # + # @option params [Integer] :max_results + # The maximum number of results to return per page. + # + # @option params [String] :next_token + # The token for the next set of results. + # + # @return [Types::ListCampaignsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::ListCampaignsResponse#campaign_summary_list #campaign_summary_list} => Array<Types::CampaignSummary> + # * {Types::ListCampaignsResponse#next_token #next_token} => String + # + # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. + # + # @example Request syntax with placeholder values + # + # resp = client.list_campaigns({ + # filters: { + # instance_id_filter: { + # operator: "Eq", # required, accepts Eq + # value: "InstanceId", # required + # }, + # }, + # max_results: 1, + # next_token: "NextToken", + # }) + # + # @example Response structure + # + # resp.campaign_summary_list #=> Array + # resp.campaign_summary_list[0].arn #=> String + # resp.campaign_summary_list[0].connect_instance_id #=> String + # resp.campaign_summary_list[0].id #=> String + # resp.campaign_summary_list[0].name #=> String + # resp.next_token #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ListCampaigns AWS API Documentation + # + # @overload list_campaigns(params = {}) + # @param [Hash] params ({}) + def list_campaigns(params = {}, options = {}) + req = build_request(:list_campaigns, params) + req.send_request(options) + end + + # List tags for a resource. + # + # @option params [required, String] :arn + # Arn + # + # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::ListTagsForResourceResponse#tags #tags} => Hash<String,String> + # + # @example Request syntax with placeholder values + # + # resp = client.list_tags_for_resource({ + # arn: "Arn", # required + # }) + # + # @example Response structure + # + # resp.tags #=> Hash + # resp.tags["TagKey"] #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ListTagsForResource AWS API Documentation + # + # @overload list_tags_for_resource(params = {}) + # @param [Hash] params ({}) + def list_tags_for_resource(params = {}, options = {}) + req = build_request(:list_tags_for_resource, params) + req.send_request(options) + end + + # Pauses a campaign for the specified Amazon Connect account. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.pause_campaign({ + # id: "CampaignId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/PauseCampaign AWS API Documentation + # + # @overload pause_campaign(params = {}) + # @param [Hash] params ({}) + def pause_campaign(params = {}, options = {}) + req = build_request(:pause_campaign, params) + req.send_request(options) + end + + # Creates dials requests for the specified campaign Amazon Connect + # account. This API is idempotent. + # + # @option params [required, Array] :dial_requests + # A list of dial requests. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Types::PutDialRequestBatchResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::PutDialRequestBatchResponse#failed_requests #failed_requests} => Array<Types::FailedRequest> + # * {Types::PutDialRequestBatchResponse#successful_requests #successful_requests} => Array<Types::SuccessfulRequest> + # + # @example Request syntax with placeholder values + # + # resp = client.put_dial_request_batch({ + # dial_requests: [ # required + # { + # attributes: { # required + # "AttributeName" => "AttributeValue", + # }, + # client_token: "ClientToken", # required + # expiration_time: Time.now, # required + # phone_number: "DestinationPhoneNumber", # required + # }, + # ], + # id: "CampaignId", # required + # }) + # + # @example Response structure + # + # resp.failed_requests #=> Array + # resp.failed_requests[0].client_token #=> String + # resp.failed_requests[0].failure_code #=> String, one of "InvalidInput", "RequestThrottled", "UnknownError" + # resp.failed_requests[0].id #=> String + # resp.successful_requests #=> Array + # resp.successful_requests[0].client_token #=> String + # resp.successful_requests[0].id #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/PutDialRequestBatch AWS API Documentation + # + # @overload put_dial_request_batch(params = {}) + # @param [Hash] params ({}) + def put_dial_request_batch(params = {}, options = {}) + req = build_request(:put_dial_request_batch, params) + req.send_request(options) + end + + # Stops a campaign for the specified Amazon Connect account. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.resume_campaign({ + # id: "CampaignId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ResumeCampaign AWS API Documentation + # + # @overload resume_campaign(params = {}) + # @param [Hash] params ({}) + def resume_campaign(params = {}, options = {}) + req = build_request(:resume_campaign, params) + req.send_request(options) + end + + # Starts a campaign for the specified Amazon Connect account. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.start_campaign({ + # id: "CampaignId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/StartCampaign AWS API Documentation + # + # @overload start_campaign(params = {}) + # @param [Hash] params ({}) + def start_campaign(params = {}, options = {}) + req = build_request(:start_campaign, params) + req.send_request(options) + end + + # Onboard the specific Amazon Connect instance to Connect Campaigns. + # + # @option params [required, String] :connect_instance_id + # Amazon Connect Instance Id + # + # @option params [required, Types::EncryptionConfig] :encryption_config + # Encryption config for Connect Instance. Note that sensitive data will + # always be encrypted. If disabled, service will perform encryption with + # its own key. If enabled, a KMS key id needs to be provided and KMS + # charges will apply. KMS is only type supported + # + # @return [Types::StartInstanceOnboardingJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::StartInstanceOnboardingJobResponse#connect_instance_onboarding_job_status #connect_instance_onboarding_job_status} => Types::InstanceOnboardingJobStatus + # + # @example Request syntax with placeholder values + # + # resp = client.start_instance_onboarding_job({ + # connect_instance_id: "InstanceId", # required + # encryption_config: { # required + # enabled: false, # required + # encryption_type: "KMS", # accepts KMS + # key_arn: "EncryptionKey", + # }, + # }) + # + # @example Response structure + # + # resp.connect_instance_onboarding_job_status.connect_instance_id #=> String + # resp.connect_instance_onboarding_job_status.failure_code #=> String, one of "EVENT_BRIDGE_ACCESS_DENIED", "EVENT_BRIDGE_MANAGED_RULE_LIMIT_EXCEEDED", "IAM_ACCESS_DENIED", "KMS_ACCESS_DENIED", "KMS_KEY_NOT_FOUND", "INTERNAL_FAILURE" + # resp.connect_instance_onboarding_job_status.status #=> String, one of "IN_PROGRESS", "SUCCEEDED", "FAILED" + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/StartInstanceOnboardingJob AWS API Documentation + # + # @overload start_instance_onboarding_job(params = {}) + # @param [Hash] params ({}) + def start_instance_onboarding_job(params = {}, options = {}) + req = build_request(:start_instance_onboarding_job, params) + req.send_request(options) + end + + # Stops a campaign for the specified Amazon Connect account. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.stop_campaign({ + # id: "CampaignId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/StopCampaign AWS API Documentation + # + # @overload stop_campaign(params = {}) + # @param [Hash] params ({}) + def stop_campaign(params = {}, options = {}) + req = build_request(:stop_campaign, params) + req.send_request(options) + end + + # Tag a resource. + # + # @option params [required, String] :arn + # Arn + # + # @option params [required, Hash] :tags + # Tag map with key and value. + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.tag_resource({ + # arn: "Arn", # required + # tags: { # required + # "TagKey" => "TagValue", + # }, + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/TagResource AWS API Documentation + # + # @overload tag_resource(params = {}) + # @param [Hash] params ({}) + def tag_resource(params = {}, options = {}) + req = build_request(:tag_resource, params) + req.send_request(options) + end + + # Untag a resource. + # + # @option params [required, String] :arn + # Arn + # + # @option params [required, Array] :tag_keys + # List of tag keys. + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.untag_resource({ + # arn: "Arn", # required + # tag_keys: ["TagKey"], # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/UntagResource AWS API Documentation + # + # @overload untag_resource(params = {}) + # @param [Hash] params ({}) + def untag_resource(params = {}, options = {}) + req = build_request(:untag_resource, params) + req.send_request(options) + end + + # Updates the dialer config of a campaign. This API is idempotent. + # + # @option params [required, Types::DialerConfig] :dialer_config + # The possible types of dialer config parameters + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.update_campaign_dialer_config({ + # dialer_config: { # required + # predictive_dialer_config: { + # bandwidth_allocation: 1.0, # required + # }, + # progressive_dialer_config: { + # bandwidth_allocation: 1.0, # required + # }, + # }, + # id: "CampaignId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/UpdateCampaignDialerConfig AWS API Documentation + # + # @overload update_campaign_dialer_config(params = {}) + # @param [Hash] params ({}) + def update_campaign_dialer_config(params = {}, options = {}) + req = build_request(:update_campaign_dialer_config, params) + req.send_request(options) + end + + # Updates the name of a campaign. This API is idempotent. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @option params [required, String] :name + # The name of an Amazon Connect Campaign name. + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.update_campaign_name({ + # id: "CampaignId", # required + # name: "CampaignName", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/UpdateCampaignName AWS API Documentation + # + # @overload update_campaign_name(params = {}) + # @param [Hash] params ({}) + def update_campaign_name(params = {}, options = {}) + req = build_request(:update_campaign_name, params) + req.send_request(options) + end + + # Updates the outbound call config of a campaign. This API is + # idempotent. + # + # @option params [Types::AnswerMachineDetectionConfig] :answer_machine_detection_config + # Answering Machine Detection config + # + # @option params [String] :connect_contact_flow_id + # The identifier of the contact flow for the outbound call. + # + # @option params [String] :connect_source_phone_number + # The phone number associated with the Amazon Connect instance, in E.164 + # format. If you do not specify a source phone number, you must specify + # a queue. + # + # @option params [required, String] :id + # Identifier representing a Campaign + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.update_campaign_outbound_call_config({ + # answer_machine_detection_config: { + # enable_answer_machine_detection: false, # required + # }, + # connect_contact_flow_id: "ContactFlowId", + # connect_source_phone_number: "SourcePhoneNumber", + # id: "CampaignId", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/UpdateCampaignOutboundCallConfig AWS API Documentation + # + # @overload update_campaign_outbound_call_config(params = {}) + # @param [Hash] params ({}) + def update_campaign_outbound_call_config(params = {}, options = {}) + req = build_request(:update_campaign_outbound_call_config, params) + req.send_request(options) + end + + # @!endgroup + + # @param params ({}) + # @api private + def build_request(operation_name, params = {}) + handlers = @handlers.for(operation_name) + context = Seahorse::Client::RequestContext.new( + operation_name: operation_name, + operation: config.api.operation(operation_name), + client: self, + params: params, + config: config) + context[:gem_name] = 'aws-sdk-connectcampaignservice' + context[:gem_version] = '1.0.0' + Seahorse::Client::Request.new(handlers, context) + end + + # @api private + # @deprecated + def waiter_names + [] + end + + class << self + + # @api private + attr_reader :identifier + + # @api private + def errors_module + Errors + end + + end + end +end diff --git a/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/client_api.rb b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/client_api.rb new file mode 100644 index 00000000000..9a565143030 --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/client_api.rb @@ -0,0 +1,690 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + +module Aws::ConnectCampaignService + # @api private + module ClientApi + + include Seahorse::Model + + AccessDeniedException = Shapes::StructureShape.new(name: 'AccessDeniedException') + AnswerMachineDetectionConfig = Shapes::StructureShape.new(name: 'AnswerMachineDetectionConfig') + Arn = Shapes::StringShape.new(name: 'Arn') + AttributeName = Shapes::StringShape.new(name: 'AttributeName') + AttributeValue = Shapes::StringShape.new(name: 'AttributeValue') + Attributes = Shapes::MapShape.new(name: 'Attributes') + BandwidthAllocation = Shapes::FloatShape.new(name: 'BandwidthAllocation') + Boolean = Shapes::BooleanShape.new(name: 'Boolean') + Campaign = Shapes::StructureShape.new(name: 'Campaign') + CampaignArn = Shapes::StringShape.new(name: 'CampaignArn') + CampaignFilters = Shapes::StructureShape.new(name: 'CampaignFilters') + CampaignId = Shapes::StringShape.new(name: 'CampaignId') + CampaignName = Shapes::StringShape.new(name: 'CampaignName') + CampaignState = Shapes::StringShape.new(name: 'CampaignState') + CampaignSummary = Shapes::StructureShape.new(name: 'CampaignSummary') + CampaignSummaryList = Shapes::ListShape.new(name: 'CampaignSummaryList') + ClientToken = Shapes::StringShape.new(name: 'ClientToken') + ConflictException = Shapes::StructureShape.new(name: 'ConflictException') + ContactFlowId = Shapes::StringShape.new(name: 'ContactFlowId') + CreateCampaignRequest = Shapes::StructureShape.new(name: 'CreateCampaignRequest') + CreateCampaignResponse = Shapes::StructureShape.new(name: 'CreateCampaignResponse') + DeleteCampaignRequest = Shapes::StructureShape.new(name: 'DeleteCampaignRequest') + DeleteConnectInstanceConfigRequest = Shapes::StructureShape.new(name: 'DeleteConnectInstanceConfigRequest') + DeleteInstanceOnboardingJobRequest = Shapes::StructureShape.new(name: 'DeleteInstanceOnboardingJobRequest') + DescribeCampaignRequest = Shapes::StructureShape.new(name: 'DescribeCampaignRequest') + DescribeCampaignResponse = Shapes::StructureShape.new(name: 'DescribeCampaignResponse') + DestinationPhoneNumber = Shapes::StringShape.new(name: 'DestinationPhoneNumber') + DialRequest = Shapes::StructureShape.new(name: 'DialRequest') + DialRequestId = Shapes::StringShape.new(name: 'DialRequestId') + DialRequestList = Shapes::ListShape.new(name: 'DialRequestList') + DialerConfig = Shapes::UnionShape.new(name: 'DialerConfig') + Enabled = Shapes::BooleanShape.new(name: 'Enabled') + EncryptionConfig = Shapes::StructureShape.new(name: 'EncryptionConfig') + EncryptionKey = Shapes::StringShape.new(name: 'EncryptionKey') + EncryptionType = Shapes::StringShape.new(name: 'EncryptionType') + FailedCampaignStateResponse = Shapes::StructureShape.new(name: 'FailedCampaignStateResponse') + FailedCampaignStateResponseList = Shapes::ListShape.new(name: 'FailedCampaignStateResponseList') + FailedRequest = Shapes::StructureShape.new(name: 'FailedRequest') + FailedRequestList = Shapes::ListShape.new(name: 'FailedRequestList') + FailureCode = Shapes::StringShape.new(name: 'FailureCode') + GetCampaignStateBatchFailureCode = Shapes::StringShape.new(name: 'GetCampaignStateBatchFailureCode') + GetCampaignStateBatchRequest = Shapes::StructureShape.new(name: 'GetCampaignStateBatchRequest') + GetCampaignStateBatchRequestCampaignIdsList = Shapes::ListShape.new(name: 'GetCampaignStateBatchRequestCampaignIdsList') + GetCampaignStateBatchResponse = Shapes::StructureShape.new(name: 'GetCampaignStateBatchResponse') + GetCampaignStateRequest = Shapes::StructureShape.new(name: 'GetCampaignStateRequest') + GetCampaignStateResponse = Shapes::StructureShape.new(name: 'GetCampaignStateResponse') + GetConnectInstanceConfigRequest = Shapes::StructureShape.new(name: 'GetConnectInstanceConfigRequest') + GetConnectInstanceConfigResponse = Shapes::StructureShape.new(name: 'GetConnectInstanceConfigResponse') + GetInstanceOnboardingJobStatusRequest = Shapes::StructureShape.new(name: 'GetInstanceOnboardingJobStatusRequest') + GetInstanceOnboardingJobStatusResponse = Shapes::StructureShape.new(name: 'GetInstanceOnboardingJobStatusResponse') + InstanceConfig = Shapes::StructureShape.new(name: 'InstanceConfig') + InstanceId = Shapes::StringShape.new(name: 'InstanceId') + InstanceIdFilter = Shapes::StructureShape.new(name: 'InstanceIdFilter') + InstanceIdFilterOperator = Shapes::StringShape.new(name: 'InstanceIdFilterOperator') + InstanceOnboardingJobFailureCode = Shapes::StringShape.new(name: 'InstanceOnboardingJobFailureCode') + InstanceOnboardingJobStatus = Shapes::StructureShape.new(name: 'InstanceOnboardingJobStatus') + InstanceOnboardingJobStatusCode = Shapes::StringShape.new(name: 'InstanceOnboardingJobStatusCode') + InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException') + InvalidCampaignStateException = Shapes::StructureShape.new(name: 'InvalidCampaignStateException') + InvalidStateException = Shapes::StructureShape.new(name: 'InvalidStateException') + ListCampaignsRequest = Shapes::StructureShape.new(name: 'ListCampaignsRequest') + ListCampaignsResponse = Shapes::StructureShape.new(name: 'ListCampaignsResponse') + ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest') + ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse') + MaxResults = Shapes::IntegerShape.new(name: 'MaxResults') + NextToken = Shapes::StringShape.new(name: 'NextToken') + OutboundCallConfig = Shapes::StructureShape.new(name: 'OutboundCallConfig') + PauseCampaignRequest = Shapes::StructureShape.new(name: 'PauseCampaignRequest') + PredictiveDialerConfig = Shapes::StructureShape.new(name: 'PredictiveDialerConfig') + ProgressiveDialerConfig = Shapes::StructureShape.new(name: 'ProgressiveDialerConfig') + PutDialRequestBatchRequest = Shapes::StructureShape.new(name: 'PutDialRequestBatchRequest') + PutDialRequestBatchResponse = Shapes::StructureShape.new(name: 'PutDialRequestBatchResponse') + QueueId = Shapes::StringShape.new(name: 'QueueId') + ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException') + ResumeCampaignRequest = Shapes::StructureShape.new(name: 'ResumeCampaignRequest') + ServiceLinkedRoleArn = Shapes::StringShape.new(name: 'ServiceLinkedRoleArn') + ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException') + SourcePhoneNumber = Shapes::StringShape.new(name: 'SourcePhoneNumber') + StartCampaignRequest = Shapes::StructureShape.new(name: 'StartCampaignRequest') + StartInstanceOnboardingJobRequest = Shapes::StructureShape.new(name: 'StartInstanceOnboardingJobRequest') + StartInstanceOnboardingJobResponse = Shapes::StructureShape.new(name: 'StartInstanceOnboardingJobResponse') + StopCampaignRequest = Shapes::StructureShape.new(name: 'StopCampaignRequest') + String = Shapes::StringShape.new(name: 'String') + SuccessfulCampaignStateResponse = Shapes::StructureShape.new(name: 'SuccessfulCampaignStateResponse') + SuccessfulCampaignStateResponseList = Shapes::ListShape.new(name: 'SuccessfulCampaignStateResponseList') + SuccessfulRequest = Shapes::StructureShape.new(name: 'SuccessfulRequest') + SuccessfulRequestList = Shapes::ListShape.new(name: 'SuccessfulRequestList') + TagKey = Shapes::StringShape.new(name: 'TagKey') + TagKeyList = Shapes::ListShape.new(name: 'TagKeyList') + TagMap = Shapes::MapShape.new(name: 'TagMap') + TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest') + TagValue = Shapes::StringShape.new(name: 'TagValue') + ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException') + TimeStamp = Shapes::TimestampShape.new(name: 'TimeStamp', timestampFormat: "iso8601") + UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest') + UpdateCampaignDialerConfigRequest = Shapes::StructureShape.new(name: 'UpdateCampaignDialerConfigRequest') + UpdateCampaignNameRequest = Shapes::StructureShape.new(name: 'UpdateCampaignNameRequest') + UpdateCampaignOutboundCallConfigRequest = Shapes::StructureShape.new(name: 'UpdateCampaignOutboundCallConfigRequest') + ValidationException = Shapes::StructureShape.new(name: 'ValidationException') + XAmazonErrorType = Shapes::StringShape.new(name: 'XAmazonErrorType') + + AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + AccessDeniedException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + AccessDeniedException.struct_class = Types::AccessDeniedException + + AnswerMachineDetectionConfig.add_member(:enable_answer_machine_detection, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "enableAnswerMachineDetection")) + AnswerMachineDetectionConfig.struct_class = Types::AnswerMachineDetectionConfig + + Attributes.key = Shapes::ShapeRef.new(shape: AttributeName) + Attributes.value = Shapes::ShapeRef.new(shape: AttributeValue) + + Campaign.add_member(:arn, Shapes::ShapeRef.new(shape: CampaignArn, required: true, location_name: "arn")) + Campaign.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "connectInstanceId")) + Campaign.add_member(:dialer_config, Shapes::ShapeRef.new(shape: DialerConfig, required: true, location_name: "dialerConfig")) + Campaign.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location_name: "id")) + Campaign.add_member(:name, Shapes::ShapeRef.new(shape: CampaignName, required: true, location_name: "name")) + Campaign.add_member(:outbound_call_config, Shapes::ShapeRef.new(shape: OutboundCallConfig, required: true, location_name: "outboundCallConfig")) + Campaign.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags")) + Campaign.struct_class = Types::Campaign + + CampaignFilters.add_member(:instance_id_filter, Shapes::ShapeRef.new(shape: InstanceIdFilter, location_name: "instanceIdFilter")) + CampaignFilters.struct_class = Types::CampaignFilters + + CampaignSummary.add_member(:arn, Shapes::ShapeRef.new(shape: CampaignArn, required: true, location_name: "arn")) + CampaignSummary.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "connectInstanceId")) + CampaignSummary.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location_name: "id")) + CampaignSummary.add_member(:name, Shapes::ShapeRef.new(shape: CampaignName, required: true, location_name: "name")) + CampaignSummary.struct_class = Types::CampaignSummary + + CampaignSummaryList.member = Shapes::ShapeRef.new(shape: CampaignSummary) + + ConflictException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + ConflictException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + ConflictException.struct_class = Types::ConflictException + + CreateCampaignRequest.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "connectInstanceId")) + CreateCampaignRequest.add_member(:dialer_config, Shapes::ShapeRef.new(shape: DialerConfig, required: true, location_name: "dialerConfig")) + CreateCampaignRequest.add_member(:name, Shapes::ShapeRef.new(shape: CampaignName, required: true, location_name: "name")) + CreateCampaignRequest.add_member(:outbound_call_config, Shapes::ShapeRef.new(shape: OutboundCallConfig, required: true, location_name: "outboundCallConfig")) + CreateCampaignRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags")) + CreateCampaignRequest.struct_class = Types::CreateCampaignRequest + + CreateCampaignResponse.add_member(:arn, Shapes::ShapeRef.new(shape: CampaignArn, location_name: "arn")) + CreateCampaignResponse.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, location_name: "id")) + CreateCampaignResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags")) + CreateCampaignResponse.struct_class = Types::CreateCampaignResponse + + DeleteCampaignRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + DeleteCampaignRequest.struct_class = Types::DeleteCampaignRequest + + DeleteConnectInstanceConfigRequest.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "connectInstanceId")) + DeleteConnectInstanceConfigRequest.struct_class = Types::DeleteConnectInstanceConfigRequest + + DeleteInstanceOnboardingJobRequest.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "connectInstanceId")) + DeleteInstanceOnboardingJobRequest.struct_class = Types::DeleteInstanceOnboardingJobRequest + + DescribeCampaignRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + DescribeCampaignRequest.struct_class = Types::DescribeCampaignRequest + + DescribeCampaignResponse.add_member(:campaign, Shapes::ShapeRef.new(shape: Campaign, location_name: "campaign")) + DescribeCampaignResponse.struct_class = Types::DescribeCampaignResponse + + DialRequest.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, required: true, location_name: "attributes")) + DialRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, required: true, location_name: "clientToken")) + DialRequest.add_member(:expiration_time, Shapes::ShapeRef.new(shape: TimeStamp, required: true, location_name: "expirationTime")) + DialRequest.add_member(:phone_number, Shapes::ShapeRef.new(shape: DestinationPhoneNumber, required: true, location_name: "phoneNumber")) + DialRequest.struct_class = Types::DialRequest + + DialRequestList.member = Shapes::ShapeRef.new(shape: DialRequest) + + DialerConfig.add_member(:predictive_dialer_config, Shapes::ShapeRef.new(shape: PredictiveDialerConfig, location_name: "predictiveDialerConfig")) + DialerConfig.add_member(:progressive_dialer_config, Shapes::ShapeRef.new(shape: ProgressiveDialerConfig, location_name: "progressiveDialerConfig")) + DialerConfig.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown')) + DialerConfig.add_member_subclass(:predictive_dialer_config, Types::DialerConfig::PredictiveDialerConfig) + DialerConfig.add_member_subclass(:progressive_dialer_config, Types::DialerConfig::ProgressiveDialerConfig) + DialerConfig.add_member_subclass(:unknown, Types::DialerConfig::Unknown) + DialerConfig.struct_class = Types::DialerConfig + + EncryptionConfig.add_member(:enabled, Shapes::ShapeRef.new(shape: Enabled, required: true, location_name: "enabled")) + EncryptionConfig.add_member(:encryption_type, Shapes::ShapeRef.new(shape: EncryptionType, location_name: "encryptionType")) + EncryptionConfig.add_member(:key_arn, Shapes::ShapeRef.new(shape: EncryptionKey, location_name: "keyArn")) + EncryptionConfig.struct_class = Types::EncryptionConfig + + FailedCampaignStateResponse.add_member(:campaign_id, Shapes::ShapeRef.new(shape: CampaignId, location_name: "campaignId")) + FailedCampaignStateResponse.add_member(:failure_code, Shapes::ShapeRef.new(shape: GetCampaignStateBatchFailureCode, location_name: "failureCode")) + FailedCampaignStateResponse.struct_class = Types::FailedCampaignStateResponse + + FailedCampaignStateResponseList.member = Shapes::ShapeRef.new(shape: FailedCampaignStateResponse) + + FailedRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken")) + FailedRequest.add_member(:failure_code, Shapes::ShapeRef.new(shape: FailureCode, location_name: "failureCode")) + FailedRequest.add_member(:id, Shapes::ShapeRef.new(shape: DialRequestId, location_name: "id")) + FailedRequest.struct_class = Types::FailedRequest + + FailedRequestList.member = Shapes::ShapeRef.new(shape: FailedRequest) + + GetCampaignStateBatchRequest.add_member(:campaign_ids, Shapes::ShapeRef.new(shape: GetCampaignStateBatchRequestCampaignIdsList, required: true, location_name: "campaignIds")) + GetCampaignStateBatchRequest.struct_class = Types::GetCampaignStateBatchRequest + + GetCampaignStateBatchRequestCampaignIdsList.member = Shapes::ShapeRef.new(shape: CampaignId) + + GetCampaignStateBatchResponse.add_member(:failed_requests, Shapes::ShapeRef.new(shape: FailedCampaignStateResponseList, location_name: "failedRequests")) + GetCampaignStateBatchResponse.add_member(:successful_requests, Shapes::ShapeRef.new(shape: SuccessfulCampaignStateResponseList, location_name: "successfulRequests")) + GetCampaignStateBatchResponse.struct_class = Types::GetCampaignStateBatchResponse + + GetCampaignStateRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + GetCampaignStateRequest.struct_class = Types::GetCampaignStateRequest + + GetCampaignStateResponse.add_member(:state, Shapes::ShapeRef.new(shape: CampaignState, location_name: "state")) + GetCampaignStateResponse.struct_class = Types::GetCampaignStateResponse + + GetConnectInstanceConfigRequest.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "connectInstanceId")) + GetConnectInstanceConfigRequest.struct_class = Types::GetConnectInstanceConfigRequest + + GetConnectInstanceConfigResponse.add_member(:connect_instance_config, Shapes::ShapeRef.new(shape: InstanceConfig, location_name: "connectInstanceConfig")) + GetConnectInstanceConfigResponse.struct_class = Types::GetConnectInstanceConfigResponse + + GetInstanceOnboardingJobStatusRequest.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "connectInstanceId")) + GetInstanceOnboardingJobStatusRequest.struct_class = Types::GetInstanceOnboardingJobStatusRequest + + GetInstanceOnboardingJobStatusResponse.add_member(:connect_instance_onboarding_job_status, Shapes::ShapeRef.new(shape: InstanceOnboardingJobStatus, location_name: "connectInstanceOnboardingJobStatus")) + GetInstanceOnboardingJobStatusResponse.struct_class = Types::GetInstanceOnboardingJobStatusResponse + + InstanceConfig.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "connectInstanceId")) + InstanceConfig.add_member(:encryption_config, Shapes::ShapeRef.new(shape: EncryptionConfig, required: true, location_name: "encryptionConfig")) + InstanceConfig.add_member(:service_linked_role_arn, Shapes::ShapeRef.new(shape: ServiceLinkedRoleArn, required: true, location_name: "serviceLinkedRoleArn")) + InstanceConfig.struct_class = Types::InstanceConfig + + InstanceIdFilter.add_member(:operator, Shapes::ShapeRef.new(shape: InstanceIdFilterOperator, required: true, location_name: "operator")) + InstanceIdFilter.add_member(:value, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "value")) + InstanceIdFilter.struct_class = Types::InstanceIdFilter + + InstanceOnboardingJobStatus.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "connectInstanceId")) + InstanceOnboardingJobStatus.add_member(:failure_code, Shapes::ShapeRef.new(shape: InstanceOnboardingJobFailureCode, location_name: "failureCode")) + InstanceOnboardingJobStatus.add_member(:status, Shapes::ShapeRef.new(shape: InstanceOnboardingJobStatusCode, required: true, location_name: "status")) + InstanceOnboardingJobStatus.struct_class = Types::InstanceOnboardingJobStatus + + InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + InternalServerException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + InternalServerException.struct_class = Types::InternalServerException + + InvalidCampaignStateException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + InvalidCampaignStateException.add_member(:state, Shapes::ShapeRef.new(shape: CampaignState, required: true, location_name: "state")) + InvalidCampaignStateException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + InvalidCampaignStateException.struct_class = Types::InvalidCampaignStateException + + InvalidStateException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + InvalidStateException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + InvalidStateException.struct_class = Types::InvalidStateException + + ListCampaignsRequest.add_member(:filters, Shapes::ShapeRef.new(shape: CampaignFilters, location_name: "filters")) + ListCampaignsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults")) + ListCampaignsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken")) + ListCampaignsRequest.struct_class = Types::ListCampaignsRequest + + ListCampaignsResponse.add_member(:campaign_summary_list, Shapes::ShapeRef.new(shape: CampaignSummaryList, location_name: "campaignSummaryList")) + ListCampaignsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken")) + ListCampaignsResponse.struct_class = Types::ListCampaignsResponse + + ListTagsForResourceRequest.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location: "uri", location_name: "arn")) + ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest + + ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags")) + ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse + + OutboundCallConfig.add_member(:answer_machine_detection_config, Shapes::ShapeRef.new(shape: AnswerMachineDetectionConfig, location_name: "answerMachineDetectionConfig")) + OutboundCallConfig.add_member(:connect_contact_flow_id, Shapes::ShapeRef.new(shape: ContactFlowId, required: true, location_name: "connectContactFlowId")) + OutboundCallConfig.add_member(:connect_queue_id, Shapes::ShapeRef.new(shape: QueueId, required: true, location_name: "connectQueueId")) + OutboundCallConfig.add_member(:connect_source_phone_number, Shapes::ShapeRef.new(shape: SourcePhoneNumber, location_name: "connectSourcePhoneNumber")) + OutboundCallConfig.struct_class = Types::OutboundCallConfig + + PauseCampaignRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + PauseCampaignRequest.struct_class = Types::PauseCampaignRequest + + PredictiveDialerConfig.add_member(:bandwidth_allocation, Shapes::ShapeRef.new(shape: BandwidthAllocation, required: true, location_name: "bandwidthAllocation")) + PredictiveDialerConfig.struct_class = Types::PredictiveDialerConfig + + ProgressiveDialerConfig.add_member(:bandwidth_allocation, Shapes::ShapeRef.new(shape: BandwidthAllocation, required: true, location_name: "bandwidthAllocation")) + ProgressiveDialerConfig.struct_class = Types::ProgressiveDialerConfig + + PutDialRequestBatchRequest.add_member(:dial_requests, Shapes::ShapeRef.new(shape: DialRequestList, required: true, location_name: "dialRequests")) + PutDialRequestBatchRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + PutDialRequestBatchRequest.struct_class = Types::PutDialRequestBatchRequest + + PutDialRequestBatchResponse.add_member(:failed_requests, Shapes::ShapeRef.new(shape: FailedRequestList, location_name: "failedRequests")) + PutDialRequestBatchResponse.add_member(:successful_requests, Shapes::ShapeRef.new(shape: SuccessfulRequestList, location_name: "successfulRequests")) + PutDialRequestBatchResponse.struct_class = Types::PutDialRequestBatchResponse + + ResourceNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + ResourceNotFoundException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + ResourceNotFoundException.struct_class = Types::ResourceNotFoundException + + ResumeCampaignRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + ResumeCampaignRequest.struct_class = Types::ResumeCampaignRequest + + ServiceQuotaExceededException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + ServiceQuotaExceededException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException + + StartCampaignRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + StartCampaignRequest.struct_class = Types::StartCampaignRequest + + StartInstanceOnboardingJobRequest.add_member(:connect_instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location: "uri", location_name: "connectInstanceId")) + StartInstanceOnboardingJobRequest.add_member(:encryption_config, Shapes::ShapeRef.new(shape: EncryptionConfig, required: true, location_name: "encryptionConfig")) + StartInstanceOnboardingJobRequest.struct_class = Types::StartInstanceOnboardingJobRequest + + StartInstanceOnboardingJobResponse.add_member(:connect_instance_onboarding_job_status, Shapes::ShapeRef.new(shape: InstanceOnboardingJobStatus, location_name: "connectInstanceOnboardingJobStatus")) + StartInstanceOnboardingJobResponse.struct_class = Types::StartInstanceOnboardingJobResponse + + StopCampaignRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + StopCampaignRequest.struct_class = Types::StopCampaignRequest + + SuccessfulCampaignStateResponse.add_member(:campaign_id, Shapes::ShapeRef.new(shape: CampaignId, location_name: "campaignId")) + SuccessfulCampaignStateResponse.add_member(:state, Shapes::ShapeRef.new(shape: CampaignState, location_name: "state")) + SuccessfulCampaignStateResponse.struct_class = Types::SuccessfulCampaignStateResponse + + SuccessfulCampaignStateResponseList.member = Shapes::ShapeRef.new(shape: SuccessfulCampaignStateResponse) + + SuccessfulRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken")) + SuccessfulRequest.add_member(:id, Shapes::ShapeRef.new(shape: DialRequestId, location_name: "id")) + SuccessfulRequest.struct_class = Types::SuccessfulRequest + + SuccessfulRequestList.member = Shapes::ShapeRef.new(shape: SuccessfulRequest) + + TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey) + + TagMap.key = Shapes::ShapeRef.new(shape: TagKey) + TagMap.value = Shapes::ShapeRef.new(shape: TagValue) + + TagResourceRequest.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location: "uri", location_name: "arn")) + TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, required: true, location_name: "tags")) + TagResourceRequest.struct_class = Types::TagResourceRequest + + ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + ThrottlingException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + ThrottlingException.struct_class = Types::ThrottlingException + + UntagResourceRequest.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, required: true, location: "uri", location_name: "arn")) + UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location: "querystring", location_name: "tagKeys")) + UntagResourceRequest.struct_class = Types::UntagResourceRequest + + UpdateCampaignDialerConfigRequest.add_member(:dialer_config, Shapes::ShapeRef.new(shape: DialerConfig, required: true, location_name: "dialerConfig")) + UpdateCampaignDialerConfigRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + UpdateCampaignDialerConfigRequest.struct_class = Types::UpdateCampaignDialerConfigRequest + + UpdateCampaignNameRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + UpdateCampaignNameRequest.add_member(:name, Shapes::ShapeRef.new(shape: CampaignName, required: true, location_name: "name")) + UpdateCampaignNameRequest.struct_class = Types::UpdateCampaignNameRequest + + UpdateCampaignOutboundCallConfigRequest.add_member(:answer_machine_detection_config, Shapes::ShapeRef.new(shape: AnswerMachineDetectionConfig, location_name: "answerMachineDetectionConfig")) + UpdateCampaignOutboundCallConfigRequest.add_member(:connect_contact_flow_id, Shapes::ShapeRef.new(shape: ContactFlowId, location_name: "connectContactFlowId")) + UpdateCampaignOutboundCallConfigRequest.add_member(:connect_source_phone_number, Shapes::ShapeRef.new(shape: SourcePhoneNumber, location_name: "connectSourcePhoneNumber")) + UpdateCampaignOutboundCallConfigRequest.add_member(:id, Shapes::ShapeRef.new(shape: CampaignId, required: true, location: "uri", location_name: "id")) + UpdateCampaignOutboundCallConfigRequest.struct_class = Types::UpdateCampaignOutboundCallConfigRequest + + ValidationException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message")) + ValidationException.add_member(:x_amz_error_type, Shapes::ShapeRef.new(shape: XAmazonErrorType, location: "header", location_name: "x-amzn-ErrorType")) + ValidationException.struct_class = Types::ValidationException + + + # @api private + API = Seahorse::Model::Api.new.tap do |api| + + api.version = "2021-01-30" + + api.metadata = { + "apiVersion" => "2021-01-30", + "endpointPrefix" => "connect-campaigns", + "jsonVersion" => "1.1", + "protocol" => "rest-json", + "serviceFullName" => "AmazonConnectCampaignService", + "serviceId" => "ConnectCampaigns", + "signatureVersion" => "v4", + "signingName" => "connect-campaigns", + "uid" => "connectcampaigns-2021-01-30", + } + + api.add_operation(:create_campaign, Seahorse::Model::Operation.new.tap do |o| + o.name = "CreateCampaign" + o.http_method = "PUT" + o.http_request_uri = "/campaigns" + o.input = Shapes::ShapeRef.new(shape: CreateCampaignRequest) + o.output = Shapes::ShapeRef.new(shape: CreateCampaignResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ServiceQuotaExceededException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:delete_campaign, Seahorse::Model::Operation.new.tap do |o| + o.name = "DeleteCampaign" + o.http_method = "DELETE" + o.http_request_uri = "/campaigns/{id}" + o.input = Shapes::ShapeRef.new(shape: DeleteCampaignRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + end) + + api.add_operation(:delete_connect_instance_config, Seahorse::Model::Operation.new.tap do |o| + o.name = "DeleteConnectInstanceConfig" + o.http_method = "DELETE" + o.http_request_uri = "/connect-instance/{connectInstanceId}/config" + o.input = Shapes::ShapeRef.new(shape: DeleteConnectInstanceConfigRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: InvalidStateException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:delete_instance_onboarding_job, Seahorse::Model::Operation.new.tap do |o| + o.name = "DeleteInstanceOnboardingJob" + o.http_method = "DELETE" + o.http_request_uri = "/connect-instance/{connectInstanceId}/onboarding" + o.input = Shapes::ShapeRef.new(shape: DeleteInstanceOnboardingJobRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: InvalidStateException) + end) + + api.add_operation(:describe_campaign, Seahorse::Model::Operation.new.tap do |o| + o.name = "DescribeCampaign" + o.http_method = "GET" + o.http_request_uri = "/campaigns/{id}" + o.input = Shapes::ShapeRef.new(shape: DescribeCampaignRequest) + o.output = Shapes::ShapeRef.new(shape: DescribeCampaignResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + end) + + api.add_operation(:get_campaign_state, Seahorse::Model::Operation.new.tap do |o| + o.name = "GetCampaignState" + o.http_method = "GET" + o.http_request_uri = "/campaigns/{id}/state" + o.input = Shapes::ShapeRef.new(shape: GetCampaignStateRequest) + o.output = Shapes::ShapeRef.new(shape: GetCampaignStateResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:get_campaign_state_batch, Seahorse::Model::Operation.new.tap do |o| + o.name = "GetCampaignStateBatch" + o.http_method = "POST" + o.http_request_uri = "/campaigns-state" + o.input = Shapes::ShapeRef.new(shape: GetCampaignStateBatchRequest) + o.output = Shapes::ShapeRef.new(shape: GetCampaignStateBatchResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:get_connect_instance_config, Seahorse::Model::Operation.new.tap do |o| + o.name = "GetConnectInstanceConfig" + o.http_method = "GET" + o.http_request_uri = "/connect-instance/{connectInstanceId}/config" + o.input = Shapes::ShapeRef.new(shape: GetConnectInstanceConfigRequest) + o.output = Shapes::ShapeRef.new(shape: GetConnectInstanceConfigResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + end) + + api.add_operation(:get_instance_onboarding_job_status, Seahorse::Model::Operation.new.tap do |o| + o.name = "GetInstanceOnboardingJobStatus" + o.http_method = "GET" + o.http_request_uri = "/connect-instance/{connectInstanceId}/onboarding" + o.input = Shapes::ShapeRef.new(shape: GetInstanceOnboardingJobStatusRequest) + o.output = Shapes::ShapeRef.new(shape: GetInstanceOnboardingJobStatusResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + end) + + api.add_operation(:list_campaigns, Seahorse::Model::Operation.new.tap do |o| + o.name = "ListCampaigns" + o.http_method = "POST" + o.http_request_uri = "/campaigns-summary" + o.input = Shapes::ShapeRef.new(shape: ListCampaignsRequest) + o.output = Shapes::ShapeRef.new(shape: ListCampaignsResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o[:pager] = Aws::Pager.new( + limit_key: "max_results", + tokens: { + "next_token" => "next_token" + } + ) + 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 = "/tags/{arn}" + o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest) + o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:pause_campaign, Seahorse::Model::Operation.new.tap do |o| + o.name = "PauseCampaign" + o.http_method = "POST" + o.http_request_uri = "/campaigns/{id}/pause" + o.input = Shapes::ShapeRef.new(shape: PauseCampaignRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: InvalidCampaignStateException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:put_dial_request_batch, Seahorse::Model::Operation.new.tap do |o| + o.name = "PutDialRequestBatch" + o.http_method = "PUT" + o.http_request_uri = "/campaigns/{id}/dial-requests" + o.input = Shapes::ShapeRef.new(shape: PutDialRequestBatchRequest) + o.output = Shapes::ShapeRef.new(shape: PutDialRequestBatchResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: InvalidCampaignStateException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:resume_campaign, Seahorse::Model::Operation.new.tap do |o| + o.name = "ResumeCampaign" + o.http_method = "POST" + o.http_request_uri = "/campaigns/{id}/resume" + o.input = Shapes::ShapeRef.new(shape: ResumeCampaignRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: InvalidCampaignStateException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:start_campaign, Seahorse::Model::Operation.new.tap do |o| + o.name = "StartCampaign" + o.http_method = "POST" + o.http_request_uri = "/campaigns/{id}/start" + o.input = Shapes::ShapeRef.new(shape: StartCampaignRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: InvalidCampaignStateException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:start_instance_onboarding_job, Seahorse::Model::Operation.new.tap do |o| + o.name = "StartInstanceOnboardingJob" + o.http_method = "PUT" + o.http_request_uri = "/connect-instance/{connectInstanceId}/onboarding" + o.input = Shapes::ShapeRef.new(shape: StartInstanceOnboardingJobRequest) + o.output = Shapes::ShapeRef.new(shape: StartInstanceOnboardingJobResponse) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:stop_campaign, Seahorse::Model::Operation.new.tap do |o| + o.name = "StopCampaign" + o.http_method = "POST" + o.http_request_uri = "/campaigns/{id}/stop" + o.input = Shapes::ShapeRef.new(shape: StopCampaignRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: InvalidCampaignStateException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o| + o.name = "TagResource" + o.http_method = "POST" + o.http_request_uri = "/tags/{arn}" + o.input = Shapes::ShapeRef.new(shape: TagResourceRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o| + o.name = "UntagResource" + o.http_method = "DELETE" + o.http_request_uri = "/tags/{arn}" + o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + + api.add_operation(:update_campaign_dialer_config, Seahorse::Model::Operation.new.tap do |o| + o.name = "UpdateCampaignDialerConfig" + o.http_method = "POST" + o.http_request_uri = "/campaigns/{id}/dialer-config" + o.input = Shapes::ShapeRef.new(shape: UpdateCampaignDialerConfigRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + end) + + api.add_operation(:update_campaign_name, Seahorse::Model::Operation.new.tap do |o| + o.name = "UpdateCampaignName" + o.http_method = "POST" + o.http_request_uri = "/campaigns/{id}/name" + o.input = Shapes::ShapeRef.new(shape: UpdateCampaignNameRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + end) + + api.add_operation(:update_campaign_outbound_call_config, Seahorse::Model::Operation.new.tap do |o| + o.name = "UpdateCampaignOutboundCallConfig" + o.http_method = "POST" + o.http_request_uri = "/campaigns/{id}/outbound-call-config" + o.input = Shapes::ShapeRef.new(shape: UpdateCampaignOutboundCallConfigRequest) + o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure)) + o.errors << Shapes::ShapeRef.new(shape: InternalServerException) + o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException) + o.errors << Shapes::ShapeRef.new(shape: ValidationException) + o.errors << Shapes::ShapeRef.new(shape: ConflictException) + o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException) + o.errors << Shapes::ShapeRef.new(shape: ThrottlingException) + end) + end + + end +end diff --git a/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/customizations.rb b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/customizations.rb new file mode 100644 index 00000000000..e69de29bb2d diff --git a/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/errors.rb b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/errors.rb new file mode 100644 index 00000000000..24ec01a8e4c --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/errors.rb @@ -0,0 +1,240 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + +module Aws::ConnectCampaignService + + # When ConnectCampaignService returns an error response, the Ruby SDK constructs and raises an error. + # These errors all extend Aws::ConnectCampaignService::Errors::ServiceError < {Aws::Errors::ServiceError} + # + # You can rescue all ConnectCampaignService errors using ServiceError: + # + # begin + # # do stuff + # rescue Aws::ConnectCampaignService::Errors::ServiceError + # # rescues all ConnectCampaignService API errors + # end + # + # + # ## Request Context + # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns + # information about the request that generated the error. + # See {Seahorse::Client::RequestContext} for more information. + # + # ## Error Classes + # * {AccessDeniedException} + # * {ConflictException} + # * {InternalServerException} + # * {InvalidCampaignStateException} + # * {InvalidStateException} + # * {ResourceNotFoundException} + # * {ServiceQuotaExceededException} + # * {ThrottlingException} + # * {ValidationException} + # + # Additionally, error classes are dynamically generated for service errors based on the error code + # if they are not defined above. + module Errors + + extend Aws::Errors::DynamicErrors + + class AccessDeniedException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::AccessDeniedException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + end + + class ConflictException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::ConflictException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + end + + class InternalServerException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::InternalServerException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + + def retryable? + true + end + end + + class InvalidCampaignStateException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::InvalidCampaignStateException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def state + @data[:state] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + end + + class InvalidStateException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::InvalidStateException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + end + + class ResourceNotFoundException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::ResourceNotFoundException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + end + + class ServiceQuotaExceededException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::ServiceQuotaExceededException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + end + + class ThrottlingException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::ThrottlingException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + + def retryable? + true + end + end + + class ValidationException < ServiceError + + # @param [Seahorse::Client::RequestContext] context + # @param [String] message + # @param [Aws::ConnectCampaignService::Types::ValidationException] data + def initialize(context, message, data = Aws::EmptyStructure.new) + super(context, message, data) + end + + # @return [String] + def message + @message || @data[:message] + end + + # @return [String] + def x_amz_error_type + @data[:x_amz_error_type] + end + end + + end +end diff --git a/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/resource.rb b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/resource.rb new file mode 100644 index 00000000000..4d1edd35a2c --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/resource.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + +module Aws::ConnectCampaignService + + class Resource + + # @param options ({}) + # @option options [Client] :client + def initialize(options = {}) + @client = options[:client] || Client.new(options) + end + + # @return [Client] + def client + @client + end + + end +end diff --git a/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/types.rb b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/types.rb new file mode 100644 index 00000000000..1025feb21d6 --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/lib/aws-sdk-connectcampaignservice/types.rb @@ -0,0 +1,1441 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + +module Aws::ConnectCampaignService + module Types + + # You do not have sufficient access to perform this action. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/AccessDeniedException AWS API Documentation + # + class AccessDeniedException < Struct.new( + :message, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + # Answering Machine Detection config + # + # @note When making an API call, you may pass AnswerMachineDetectionConfig + # data as a hash: + # + # { + # enable_answer_machine_detection: false, # required + # } + # + # @!attribute [rw] enable_answer_machine_detection + # Enable or disable answering machine detection + # @return [Boolean] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/AnswerMachineDetectionConfig AWS API Documentation + # + class AnswerMachineDetectionConfig < Struct.new( + :enable_answer_machine_detection) + SENSITIVE = [] + include Aws::Structure + end + + # An Amazon Connect campaign. + # + # @!attribute [rw] arn + # The resource name of an Amazon Connect campaign. + # @return [String] + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @!attribute [rw] dialer_config + # The possible types of dialer config parameters + # @return [Types::DialerConfig] + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @!attribute [rw] name + # The name of an Amazon Connect Campaign name. + # @return [String] + # + # @!attribute [rw] outbound_call_config + # The configuration used for outbound calls. + # @return [Types::OutboundCallConfig] + # + # @!attribute [rw] tags + # Tag map with key and value. + # @return [Hash] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/Campaign AWS API Documentation + # + class Campaign < Struct.new( + :arn, + :connect_instance_id, + :dialer_config, + :id, + :name, + :outbound_call_config, + :tags) + SENSITIVE = [] + include Aws::Structure + end + + # Filter model by type + # + # @note When making an API call, you may pass CampaignFilters + # data as a hash: + # + # { + # instance_id_filter: { + # operator: "Eq", # required, accepts Eq + # value: "InstanceId", # required + # }, + # } + # + # @!attribute [rw] instance_id_filter + # Connect instance identifier filter + # @return [Types::InstanceIdFilter] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/CampaignFilters AWS API Documentation + # + class CampaignFilters < Struct.new( + :instance_id_filter) + SENSITIVE = [] + include Aws::Structure + end + + # An Amazon Connect campaign summary. + # + # @!attribute [rw] arn + # The resource name of an Amazon Connect campaign. + # @return [String] + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @!attribute [rw] name + # The name of an Amazon Connect Campaign name. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/CampaignSummary AWS API Documentation + # + class CampaignSummary < Struct.new( + :arn, + :connect_instance_id, + :id, + :name) + SENSITIVE = [] + include Aws::Structure + end + + # The request could not be processed because of conflict in the current + # state of the resource. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ConflictException AWS API Documentation + # + class ConflictException < Struct.new( + :message, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + # The request for Create Campaign API. + # + # @note When making an API call, you may pass CreateCampaignRequest + # data as a hash: + # + # { + # connect_instance_id: "InstanceId", # required + # dialer_config: { # required + # predictive_dialer_config: { + # bandwidth_allocation: 1.0, # required + # }, + # progressive_dialer_config: { + # bandwidth_allocation: 1.0, # required + # }, + # }, + # name: "CampaignName", # required + # outbound_call_config: { # required + # answer_machine_detection_config: { + # enable_answer_machine_detection: false, # required + # }, + # connect_contact_flow_id: "ContactFlowId", # required + # connect_queue_id: "QueueId", # required + # connect_source_phone_number: "SourcePhoneNumber", + # }, + # tags: { + # "TagKey" => "TagValue", + # }, + # } + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @!attribute [rw] dialer_config + # The possible types of dialer config parameters + # @return [Types::DialerConfig] + # + # @!attribute [rw] name + # The name of an Amazon Connect Campaign name. + # @return [String] + # + # @!attribute [rw] outbound_call_config + # The configuration used for outbound calls. + # @return [Types::OutboundCallConfig] + # + # @!attribute [rw] tags + # Tag map with key and value. + # @return [Hash] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/CreateCampaignRequest AWS API Documentation + # + class CreateCampaignRequest < Struct.new( + :connect_instance_id, + :dialer_config, + :name, + :outbound_call_config, + :tags) + SENSITIVE = [] + include Aws::Structure + end + + # The response for Create Campaign API + # + # @!attribute [rw] arn + # The resource name of an Amazon Connect campaign. + # @return [String] + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @!attribute [rw] tags + # Tag map with key and value. + # @return [Hash] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/CreateCampaignResponse AWS API Documentation + # + class CreateCampaignResponse < Struct.new( + :arn, + :id, + :tags) + SENSITIVE = [] + include Aws::Structure + end + + # DeleteCampaignRequest + # + # @note When making an API call, you may pass DeleteCampaignRequest + # data as a hash: + # + # { + # id: "CampaignId", # required + # } + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DeleteCampaignRequest AWS API Documentation + # + class DeleteCampaignRequest < Struct.new( + :id) + SENSITIVE = [] + include Aws::Structure + end + + # DeleteCampaignRequest + # + # @note When making an API call, you may pass DeleteConnectInstanceConfigRequest + # data as a hash: + # + # { + # connect_instance_id: "InstanceId", # required + # } + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DeleteConnectInstanceConfigRequest AWS API Documentation + # + class DeleteConnectInstanceConfigRequest < Struct.new( + :connect_instance_id) + SENSITIVE = [] + include Aws::Structure + end + + # The request for DeleteInstanceOnboardingJob API. + # + # @note When making an API call, you may pass DeleteInstanceOnboardingJobRequest + # data as a hash: + # + # { + # connect_instance_id: "InstanceId", # required + # } + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DeleteInstanceOnboardingJobRequest AWS API Documentation + # + class DeleteInstanceOnboardingJobRequest < Struct.new( + :connect_instance_id) + SENSITIVE = [] + include Aws::Structure + end + + # DescribeCampaignRequests + # + # @note When making an API call, you may pass DescribeCampaignRequest + # data as a hash: + # + # { + # id: "CampaignId", # required + # } + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DescribeCampaignRequest AWS API Documentation + # + class DescribeCampaignRequest < Struct.new( + :id) + SENSITIVE = [] + include Aws::Structure + end + + # DescribeCampaignResponse + # + # @!attribute [rw] campaign + # An Amazon Connect campaign. + # @return [Types::Campaign] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DescribeCampaignResponse AWS API Documentation + # + class DescribeCampaignResponse < Struct.new( + :campaign) + SENSITIVE = [] + include Aws::Structure + end + + # A dial request for a campaign. + # + # @note When making an API call, you may pass DialRequest + # data as a hash: + # + # { + # attributes: { # required + # "AttributeName" => "AttributeValue", + # }, + # client_token: "ClientToken", # required + # expiration_time: Time.now, # required + # phone_number: "DestinationPhoneNumber", # required + # } + # + # @!attribute [rw] attributes + # A custom key-value pair using an attribute map. The attributes are + # standard Amazon Connect attributes, and can be accessed in contact + # flows just like any other contact attributes. + # @return [Hash] + # + # @!attribute [rw] client_token + # Client provided parameter used for idempotency. Its value must be + # unique for each request. + # @return [String] + # + # @!attribute [rw] expiration_time + # Timestamp with no UTC offset or timezone + # @return [Time] + # + # @!attribute [rw] phone_number + # The phone number of the customer, in E.164 format. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DialRequest AWS API Documentation + # + class DialRequest < Struct.new( + :attributes, + :client_token, + :expiration_time, + :phone_number) + SENSITIVE = [:attributes, :phone_number] + include Aws::Structure + end + + # The possible types of dialer config parameters + # + # @note DialerConfig is a union - when making an API calls you must set exactly one of the members. + # + # @note DialerConfig is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of DialerConfig corresponding to the set member. + # + # @!attribute [rw] predictive_dialer_config + # Predictive Dialer config + # @return [Types::PredictiveDialerConfig] + # + # @!attribute [rw] progressive_dialer_config + # Progressive Dialer config + # @return [Types::ProgressiveDialerConfig] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/DialerConfig AWS API Documentation + # + class DialerConfig < Struct.new( + :predictive_dialer_config, + :progressive_dialer_config, + :unknown) + SENSITIVE = [] + include Aws::Structure + include Aws::Structure::Union + + class PredictiveDialerConfig < DialerConfig; end + class ProgressiveDialerConfig < DialerConfig; end + class Unknown < DialerConfig; end + end + + # Encryption config for Connect Instance. Note that sensitive data will + # always be encrypted. If disabled, service will perform encryption with + # its own key. If enabled, a KMS key id needs to be provided and KMS + # charges will apply. KMS is only type supported + # + # @note When making an API call, you may pass EncryptionConfig + # data as a hash: + # + # { + # enabled: false, # required + # encryption_type: "KMS", # accepts KMS + # key_arn: "EncryptionKey", + # } + # + # @!attribute [rw] enabled + # Boolean to indicate if custom encryption has been enabled. + # @return [Boolean] + # + # @!attribute [rw] encryption_type + # Server-side encryption type. + # @return [String] + # + # @!attribute [rw] key_arn + # KMS key id/arn for encryption config. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/EncryptionConfig AWS API Documentation + # + class EncryptionConfig < Struct.new( + :enabled, + :encryption_type, + :key_arn) + SENSITIVE = [] + include Aws::Structure + end + + # Failed response of campaign state + # + # @!attribute [rw] campaign_id + # Identifier representing a Campaign + # @return [String] + # + # @!attribute [rw] failure_code + # A predefined code indicating the error that caused the failure in + # getting state of campaigns + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/FailedCampaignStateResponse AWS API Documentation + # + class FailedCampaignStateResponse < Struct.new( + :campaign_id, + :failure_code) + SENSITIVE = [] + include Aws::Structure + end + + # A failed request identified by the unique client token. + # + # @!attribute [rw] client_token + # Client provided parameter used for idempotency. Its value must be + # unique for each request. + # @return [String] + # + # @!attribute [rw] failure_code + # A predefined code indicating the error that caused the failure. + # @return [String] + # + # @!attribute [rw] id + # Identifier representing a Dial request + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/FailedRequest AWS API Documentation + # + class FailedRequest < Struct.new( + :client_token, + :failure_code, + :id) + SENSITIVE = [] + include Aws::Structure + end + + # GetCampaignStateBatchRequest + # + # @note When making an API call, you may pass GetCampaignStateBatchRequest + # data as a hash: + # + # { + # campaign_ids: ["CampaignId"], # required + # } + # + # @!attribute [rw] campaign_ids + # List of CampaignId + # @return [Array] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetCampaignStateBatchRequest AWS API Documentation + # + class GetCampaignStateBatchRequest < Struct.new( + :campaign_ids) + SENSITIVE = [] + include Aws::Structure + end + + # GetCampaignStateBatchResponse + # + # @!attribute [rw] failed_requests + # List of failed requests of campaign state + # @return [Array] + # + # @!attribute [rw] successful_requests + # List of successful response of campaign state + # @return [Array] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetCampaignStateBatchResponse AWS API Documentation + # + class GetCampaignStateBatchResponse < Struct.new( + :failed_requests, + :successful_requests) + SENSITIVE = [] + include Aws::Structure + end + + # GetCampaignStateRequest + # + # @note When making an API call, you may pass GetCampaignStateRequest + # data as a hash: + # + # { + # id: "CampaignId", # required + # } + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetCampaignStateRequest AWS API Documentation + # + class GetCampaignStateRequest < Struct.new( + :id) + SENSITIVE = [] + include Aws::Structure + end + + # GetCampaignStateResponse + # + # @!attribute [rw] state + # State of a campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetCampaignStateResponse AWS API Documentation + # + class GetCampaignStateResponse < Struct.new( + :state) + SENSITIVE = [] + include Aws::Structure + end + + # GetConnectInstanceConfigRequest + # + # @note When making an API call, you may pass GetConnectInstanceConfigRequest + # data as a hash: + # + # { + # connect_instance_id: "InstanceId", # required + # } + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetConnectInstanceConfigRequest AWS API Documentation + # + class GetConnectInstanceConfigRequest < Struct.new( + :connect_instance_id) + SENSITIVE = [] + include Aws::Structure + end + + # GetConnectInstanceConfigResponse + # + # @!attribute [rw] connect_instance_config + # Instance config object + # @return [Types::InstanceConfig] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetConnectInstanceConfigResponse AWS API Documentation + # + class GetConnectInstanceConfigResponse < Struct.new( + :connect_instance_config) + SENSITIVE = [] + include Aws::Structure + end + + # GetInstanceOnboardingJobStatusRequest + # + # @note When making an API call, you may pass GetInstanceOnboardingJobStatusRequest + # data as a hash: + # + # { + # connect_instance_id: "InstanceId", # required + # } + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetInstanceOnboardingJobStatusRequest AWS API Documentation + # + class GetInstanceOnboardingJobStatusRequest < Struct.new( + :connect_instance_id) + SENSITIVE = [] + include Aws::Structure + end + + # GetInstanceOnboardingJobStatusResponse + # + # @!attribute [rw] connect_instance_onboarding_job_status + # Instance onboarding job status object + # @return [Types::InstanceOnboardingJobStatus] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/GetInstanceOnboardingJobStatusResponse AWS API Documentation + # + class GetInstanceOnboardingJobStatusResponse < Struct.new( + :connect_instance_onboarding_job_status) + SENSITIVE = [] + include Aws::Structure + end + + # Instance config object + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @!attribute [rw] encryption_config + # Encryption config for Connect Instance. Note that sensitive data + # will always be encrypted. If disabled, service will perform + # encryption with its own key. If enabled, a KMS key id needs to be + # provided and KMS charges will apply. KMS is only type supported + # @return [Types::EncryptionConfig] + # + # @!attribute [rw] service_linked_role_arn + # Service linked role arn + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/InstanceConfig AWS API Documentation + # + class InstanceConfig < Struct.new( + :connect_instance_id, + :encryption_config, + :service_linked_role_arn) + SENSITIVE = [] + include Aws::Structure + end + + # Connect instance identifier filter + # + # @note When making an API call, you may pass InstanceIdFilter + # data as a hash: + # + # { + # operator: "Eq", # required, accepts Eq + # value: "InstanceId", # required + # } + # + # @!attribute [rw] operator + # Operators for Connect instance identifier filter + # @return [String] + # + # @!attribute [rw] value + # Amazon Connect Instance Id + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/InstanceIdFilter AWS API Documentation + # + class InstanceIdFilter < Struct.new( + :operator, + :value) + SENSITIVE = [] + include Aws::Structure + end + + # Instance onboarding job status object + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @!attribute [rw] failure_code + # Enumeration of the possible failure codes for instance onboarding + # job + # @return [String] + # + # @!attribute [rw] status + # Enumeration of the possible states for instance onboarding job + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/InstanceOnboardingJobStatus AWS API Documentation + # + class InstanceOnboardingJobStatus < Struct.new( + :connect_instance_id, + :failure_code, + :status) + SENSITIVE = [] + include Aws::Structure + end + + # Request processing failed because of an error or failure with the + # service. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/InternalServerException AWS API Documentation + # + class InternalServerException < Struct.new( + :message, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + # The request could not be processed because of conflict in the current + # state of the campaign. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] state + # State of a campaign + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/InvalidCampaignStateException AWS API Documentation + # + class InvalidCampaignStateException < Struct.new( + :message, + :state, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + # The request could not be processed because of conflict in the current + # state. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/InvalidStateException AWS API Documentation + # + class InvalidStateException < Struct.new( + :message, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + # ListCampaignsRequest + # + # @note When making an API call, you may pass ListCampaignsRequest + # data as a hash: + # + # { + # filters: { + # instance_id_filter: { + # operator: "Eq", # required, accepts Eq + # value: "InstanceId", # required + # }, + # }, + # max_results: 1, + # next_token: "NextToken", + # } + # + # @!attribute [rw] filters + # Filter model by type + # @return [Types::CampaignFilters] + # + # @!attribute [rw] max_results + # The maximum number of results to return per page. + # @return [Integer] + # + # @!attribute [rw] next_token + # The token for the next set of results. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ListCampaignsRequest AWS API Documentation + # + class ListCampaignsRequest < Struct.new( + :filters, + :max_results, + :next_token) + SENSITIVE = [] + include Aws::Structure + end + + # ListCampaignsResponse + # + # @!attribute [rw] campaign_summary_list + # A list of Amazon Connect campaigns. + # @return [Array] + # + # @!attribute [rw] next_token + # The token for the next set of results. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ListCampaignsResponse AWS API Documentation + # + class ListCampaignsResponse < Struct.new( + :campaign_summary_list, + :next_token) + SENSITIVE = [] + include Aws::Structure + end + + # ListTagsForResource + # + # @note When making an API call, you may pass ListTagsForResourceRequest + # data as a hash: + # + # { + # arn: "Arn", # required + # } + # + # @!attribute [rw] arn + # Arn + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ListTagsForResourceRequest AWS API Documentation + # + class ListTagsForResourceRequest < Struct.new( + :arn) + SENSITIVE = [] + include Aws::Structure + end + + # ListTagsForResponse + # + # @!attribute [rw] tags + # Tag map with key and value. + # @return [Hash] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ListTagsForResourceResponse AWS API Documentation + # + class ListTagsForResourceResponse < Struct.new( + :tags) + SENSITIVE = [] + include Aws::Structure + end + + # The configuration used for outbound calls. + # + # @note When making an API call, you may pass OutboundCallConfig + # data as a hash: + # + # { + # answer_machine_detection_config: { + # enable_answer_machine_detection: false, # required + # }, + # connect_contact_flow_id: "ContactFlowId", # required + # connect_queue_id: "QueueId", # required + # connect_source_phone_number: "SourcePhoneNumber", + # } + # + # @!attribute [rw] answer_machine_detection_config + # Answering Machine Detection config + # @return [Types::AnswerMachineDetectionConfig] + # + # @!attribute [rw] connect_contact_flow_id + # The identifier of the contact flow for the outbound call. + # @return [String] + # + # @!attribute [rw] connect_queue_id + # The queue for the call. If you specify a queue, the phone displayed + # for caller ID is the phone number specified in the queue. If you do + # not specify a queue, the queue defined in the contact flow is used. + # If you do not specify a queue, you must specify a source phone + # number. + # @return [String] + # + # @!attribute [rw] connect_source_phone_number + # The phone number associated with the Amazon Connect instance, in + # E.164 format. If you do not specify a source phone number, you must + # specify a queue. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/OutboundCallConfig AWS API Documentation + # + class OutboundCallConfig < Struct.new( + :answer_machine_detection_config, + :connect_contact_flow_id, + :connect_queue_id, + :connect_source_phone_number) + SENSITIVE = [] + include Aws::Structure + end + + # PauseCampaignRequest + # + # @note When making an API call, you may pass PauseCampaignRequest + # data as a hash: + # + # { + # id: "CampaignId", # required + # } + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/PauseCampaignRequest AWS API Documentation + # + class PauseCampaignRequest < Struct.new( + :id) + SENSITIVE = [] + include Aws::Structure + end + + # Predictive Dialer config + # + # @note When making an API call, you may pass PredictiveDialerConfig + # data as a hash: + # + # { + # bandwidth_allocation: 1.0, # required + # } + # + # @!attribute [rw] bandwidth_allocation + # The bandwidth allocation of a queue resource. + # @return [Float] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/PredictiveDialerConfig AWS API Documentation + # + class PredictiveDialerConfig < Struct.new( + :bandwidth_allocation) + SENSITIVE = [] + include Aws::Structure + end + + # Progressive Dialer config + # + # @note When making an API call, you may pass ProgressiveDialerConfig + # data as a hash: + # + # { + # bandwidth_allocation: 1.0, # required + # } + # + # @!attribute [rw] bandwidth_allocation + # The bandwidth allocation of a queue resource. + # @return [Float] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ProgressiveDialerConfig AWS API Documentation + # + class ProgressiveDialerConfig < Struct.new( + :bandwidth_allocation) + SENSITIVE = [] + include Aws::Structure + end + + # PutDialRequestBatchRequest + # + # @note When making an API call, you may pass PutDialRequestBatchRequest + # data as a hash: + # + # { + # dial_requests: [ # required + # { + # attributes: { # required + # "AttributeName" => "AttributeValue", + # }, + # client_token: "ClientToken", # required + # expiration_time: Time.now, # required + # phone_number: "DestinationPhoneNumber", # required + # }, + # ], + # id: "CampaignId", # required + # } + # + # @!attribute [rw] dial_requests + # A list of dial requests. + # @return [Array] + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/PutDialRequestBatchRequest AWS API Documentation + # + class PutDialRequestBatchRequest < Struct.new( + :dial_requests, + :id) + SENSITIVE = [] + include Aws::Structure + end + + # PutDialRequestBatchResponse + # + # @!attribute [rw] failed_requests + # A list of failed requests. + # @return [Array] + # + # @!attribute [rw] successful_requests + # A list of successful requests identified by the unique client token. + # @return [Array] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/PutDialRequestBatchResponse AWS API Documentation + # + class PutDialRequestBatchResponse < Struct.new( + :failed_requests, + :successful_requests) + SENSITIVE = [] + include Aws::Structure + end + + # The specified resource was not found. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ResourceNotFoundException AWS API Documentation + # + class ResourceNotFoundException < Struct.new( + :message, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + # ResumeCampaignRequest + # + # @note When making an API call, you may pass ResumeCampaignRequest + # data as a hash: + # + # { + # id: "CampaignId", # required + # } + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ResumeCampaignRequest AWS API Documentation + # + class ResumeCampaignRequest < Struct.new( + :id) + SENSITIVE = [] + include Aws::Structure + end + + # Request would cause a service quota to be exceeded. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ServiceQuotaExceededException AWS API Documentation + # + class ServiceQuotaExceededException < Struct.new( + :message, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + # StartCampaignRequest + # + # @note When making an API call, you may pass StartCampaignRequest + # data as a hash: + # + # { + # id: "CampaignId", # required + # } + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/StartCampaignRequest AWS API Documentation + # + class StartCampaignRequest < Struct.new( + :id) + SENSITIVE = [] + include Aws::Structure + end + + # The request for StartInstanceOnboardingJob API. + # + # @note When making an API call, you may pass StartInstanceOnboardingJobRequest + # data as a hash: + # + # { + # connect_instance_id: "InstanceId", # required + # encryption_config: { # required + # enabled: false, # required + # encryption_type: "KMS", # accepts KMS + # key_arn: "EncryptionKey", + # }, + # } + # + # @!attribute [rw] connect_instance_id + # Amazon Connect Instance Id + # @return [String] + # + # @!attribute [rw] encryption_config + # Encryption config for Connect Instance. Note that sensitive data + # will always be encrypted. If disabled, service will perform + # encryption with its own key. If enabled, a KMS key id needs to be + # provided and KMS charges will apply. KMS is only type supported + # @return [Types::EncryptionConfig] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/StartInstanceOnboardingJobRequest AWS API Documentation + # + class StartInstanceOnboardingJobRequest < Struct.new( + :connect_instance_id, + :encryption_config) + SENSITIVE = [] + include Aws::Structure + end + + # The response for StartInstanceOnboardingJob API. + # + # @!attribute [rw] connect_instance_onboarding_job_status + # Instance onboarding job status object + # @return [Types::InstanceOnboardingJobStatus] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/StartInstanceOnboardingJobResponse AWS API Documentation + # + class StartInstanceOnboardingJobResponse < Struct.new( + :connect_instance_onboarding_job_status) + SENSITIVE = [] + include Aws::Structure + end + + # StopCampaignRequest + # + # @note When making an API call, you may pass StopCampaignRequest + # data as a hash: + # + # { + # id: "CampaignId", # required + # } + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/StopCampaignRequest AWS API Documentation + # + class StopCampaignRequest < Struct.new( + :id) + SENSITIVE = [] + include Aws::Structure + end + + # Successful response of campaign state + # + # @!attribute [rw] campaign_id + # Identifier representing a Campaign + # @return [String] + # + # @!attribute [rw] state + # State of a campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/SuccessfulCampaignStateResponse AWS API Documentation + # + class SuccessfulCampaignStateResponse < Struct.new( + :campaign_id, + :state) + SENSITIVE = [] + include Aws::Structure + end + + # A successful request identified by the unique client token. + # + # @!attribute [rw] client_token + # Client provided parameter used for idempotency. Its value must be + # unique for each request. + # @return [String] + # + # @!attribute [rw] id + # Identifier representing a Dial request + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/SuccessfulRequest AWS API Documentation + # + class SuccessfulRequest < Struct.new( + :client_token, + :id) + SENSITIVE = [] + include Aws::Structure + end + + # TagResourceRequest + # + # @note When making an API call, you may pass TagResourceRequest + # data as a hash: + # + # { + # arn: "Arn", # required + # tags: { # required + # "TagKey" => "TagValue", + # }, + # } + # + # @!attribute [rw] arn + # Arn + # @return [String] + # + # @!attribute [rw] tags + # Tag map with key and value. + # @return [Hash] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/TagResourceRequest AWS API Documentation + # + class TagResourceRequest < Struct.new( + :arn, + :tags) + SENSITIVE = [] + include Aws::Structure + end + + # The request was denied due to request throttling. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ThrottlingException AWS API Documentation + # + class ThrottlingException < Struct.new( + :message, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + # UntagResourceRequest + # + # @note When making an API call, you may pass UntagResourceRequest + # data as a hash: + # + # { + # arn: "Arn", # required + # tag_keys: ["TagKey"], # required + # } + # + # @!attribute [rw] arn + # Arn + # @return [String] + # + # @!attribute [rw] tag_keys + # List of tag keys. + # @return [Array] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/UntagResourceRequest AWS API Documentation + # + class UntagResourceRequest < Struct.new( + :arn, + :tag_keys) + SENSITIVE = [] + include Aws::Structure + end + + # UpdateCampaignDialerConfigRequest + # + # @note When making an API call, you may pass UpdateCampaignDialerConfigRequest + # data as a hash: + # + # { + # dialer_config: { # required + # predictive_dialer_config: { + # bandwidth_allocation: 1.0, # required + # }, + # progressive_dialer_config: { + # bandwidth_allocation: 1.0, # required + # }, + # }, + # id: "CampaignId", # required + # } + # + # @!attribute [rw] dialer_config + # The possible types of dialer config parameters + # @return [Types::DialerConfig] + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/UpdateCampaignDialerConfigRequest AWS API Documentation + # + class UpdateCampaignDialerConfigRequest < Struct.new( + :dialer_config, + :id) + SENSITIVE = [] + include Aws::Structure + end + + # UpdateCampaignNameRequest + # + # @note When making an API call, you may pass UpdateCampaignNameRequest + # data as a hash: + # + # { + # id: "CampaignId", # required + # name: "CampaignName", # required + # } + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @!attribute [rw] name + # The name of an Amazon Connect Campaign name. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/UpdateCampaignNameRequest AWS API Documentation + # + class UpdateCampaignNameRequest < Struct.new( + :id, + :name) + SENSITIVE = [] + include Aws::Structure + end + + # UpdateCampaignOutboundCallConfigRequest + # + # @note When making an API call, you may pass UpdateCampaignOutboundCallConfigRequest + # data as a hash: + # + # { + # answer_machine_detection_config: { + # enable_answer_machine_detection: false, # required + # }, + # connect_contact_flow_id: "ContactFlowId", + # connect_source_phone_number: "SourcePhoneNumber", + # id: "CampaignId", # required + # } + # + # @!attribute [rw] answer_machine_detection_config + # Answering Machine Detection config + # @return [Types::AnswerMachineDetectionConfig] + # + # @!attribute [rw] connect_contact_flow_id + # The identifier of the contact flow for the outbound call. + # @return [String] + # + # @!attribute [rw] connect_source_phone_number + # The phone number associated with the Amazon Connect instance, in + # E.164 format. If you do not specify a source phone number, you must + # specify a queue. + # @return [String] + # + # @!attribute [rw] id + # Identifier representing a Campaign + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/UpdateCampaignOutboundCallConfigRequest AWS API Documentation + # + class UpdateCampaignOutboundCallConfigRequest < Struct.new( + :answer_machine_detection_config, + :connect_contact_flow_id, + :connect_source_phone_number, + :id) + SENSITIVE = [] + include Aws::Structure + end + + # The input fails to satisfy the constraints specified by an AWS + # service. + # + # @!attribute [rw] message + # @return [String] + # + # @!attribute [rw] x_amz_error_type + # A header that defines the error encountered while processing the + # request. + # @return [String] + # + # @see http://docs.aws.amazon.com/goto/WebAPI/connectcampaigns-2021-01-30/ValidationException AWS API Documentation + # + class ValidationException < Struct.new( + :message, + :x_amz_error_type) + SENSITIVE = [] + include Aws::Structure + end + + end +end diff --git a/gems/aws-sdk-connectcampaignservice/spec/spec_helper.rb b/gems/aws-sdk-connectcampaignservice/spec/spec_helper.rb new file mode 100644 index 00000000000..0d2d1556174 --- /dev/null +++ b/gems/aws-sdk-connectcampaignservice/spec/spec_helper.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +# WARNING ABOUT GENERATED CODE +# +# This file is generated. See the contributing guide for more information: +# https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md +# +# WARNING ABOUT GENERATED CODE + +require_relative '../../aws-sdk-core/spec/shared_spec_helper' + +$:.unshift(File.expand_path('../../lib', __FILE__)) +$:.unshift(File.expand_path('../../../aws-sdk-core/lib', __FILE__)) +$:.unshift(File.expand_path('../../../aws-sigv4/lib', __FILE__)) + +require 'rspec' +require 'webmock/rspec' +require 'aws-sdk-connectcampaignservice' diff --git a/gems/aws-sdk-dynamodb/CHANGELOG.md b/gems/aws-sdk-dynamodb/CHANGELOG.md index ad702ab7a06..dee9476439c 100644 --- a/gems/aws-sdk-dynamodb/CHANGELOG.md +++ b/gems/aws-sdk-dynamodb/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.75.0 (2022-06-17) +------------------ + +* Feature - Doc only update for DynamoDB service + 1.74.0 (2022-02-24) ------------------ diff --git a/gems/aws-sdk-dynamodb/VERSION b/gems/aws-sdk-dynamodb/VERSION index dc87e8af82f..7c7053aa238 100644 --- a/gems/aws-sdk-dynamodb/VERSION +++ b/gems/aws-sdk-dynamodb/VERSION @@ -1 +1 @@ -1.74.0 +1.75.0 diff --git a/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb.rb b/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb.rb index 51d31716cf6..8be8cb6cefd 100644 --- a/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb.rb +++ b/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb.rb @@ -50,6 +50,6 @@ # @!group service module Aws::DynamoDB - GEM_VERSION = '1.74.0' + GEM_VERSION = '1.75.0' end diff --git a/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/client.rb b/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/client.rb index cc98ea22870..b283c1adf73 100644 --- a/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/client.rb +++ b/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/client.rb @@ -381,13 +381,25 @@ def initialize(*args) # @!group API Operations # This operation allows you to perform batch reads or writes on data - # stored in DynamoDB, using PartiQL. + # stored in DynamoDB, using PartiQL. Each read statement in a + # `BatchExecuteStatement` must specify an equality condition on all key + # attributes. This enforces that each `SELECT` statement in a batch + # returns at most a single item. # # The entire batch must consist of either read statements or write # statements, you cannot mix both in one batch. # # # + # A HTTP 200 response does not mean that all statements in the + # BatchExecuteStatement succeeded. Error details for individual + # statements can be found under the [Error][1] field of the + # `BatchStatementResponse` for each statement. + # + # + # + # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchStatementResponse.html#DDB-Type-BatchStatementResponse-Error + # # @option params [required, Array] :statements # The list of PartiQL statements representing the batch to run. # @@ -1762,6 +1774,10 @@ def delete_backup(params = {}, options = {}) # # * `ALL_OLD` - The content of the old item is returned. # + # There is no additional cost associated with requesting a return value + # aside from the small network and processing overhead of receiving a + # larger response. No read capacity units are consumed. + # # The `ReturnValues` parameter is used by several DynamoDB operations; # however, `DeleteItem` does not recognize any values other than `NONE` # or `ALL_OLD`. @@ -3218,8 +3234,9 @@ def execute_transaction(params = {}, options = {}) # The Amazon Resource Name (ARN) associated with the table to export. # # @option params [Time,DateTime,Date,Integer,String] :export_time - # Time in the past from which to export table data. The table export - # will be a snapshot of the table's state at this point in time. + # Time in the past from which to export table data, counted in seconds + # from the start of the Unix epoch. The table export will be a snapshot + # of the table's state at this point in time. # # @option params [String] :client_token # Providing a `ClientToken` makes the call to @@ -3548,7 +3565,8 @@ def get_item(params = {}, options = {}) # # Where `BackupType` can be: # - # * `USER` - On-demand backup created by you. + # * `USER` - On-demand backup created by you. (The default setting if no + # other backup types are specified.) # # * `SYSTEM` - On-demand backup automatically created by DynamoDB. # @@ -3855,29 +3873,6 @@ def list_tags_of_resource(params = {}, options = {}) # item's attribute values in the same operation, using the # `ReturnValues` parameter. # - # This topic provides general information about the `PutItem` API. - # - # For information on how to call the `PutItem` API using the Amazon Web - # Services SDK in specific languages, see the following: - # - # * [ PutItem in the Command Line Interface][1] - # - # * [ PutItem in the SDK for .NET][2] - # - # * [ PutItem in the SDK for C++][3] - # - # * [ PutItem in the SDK for Go][4] - # - # * [ PutItem in the SDK for Java][5] - # - # * [ PutItem in the SDK for JavaScript][6] - # - # * [ PutItem in the SDK for PHP V3][7] - # - # * [ PutItem in the SDK for Python (Boto)][8] - # - # * [ PutItem in the SDK for Ruby V2][9] - # # When you add an item, the primary key attributes are the only required # attributes. Attribute values cannot be null. # @@ -3898,21 +3893,12 @@ def list_tags_of_resource(params = {}, options = {}) # # # - # For more information about `PutItem`, see [Working with Items][10] in + # For more information about `PutItem`, see [Working with Items][1] in # the *Amazon DynamoDB Developer Guide*. # # # - # [1]: http://docs.aws.amazon.com/goto/aws-cli/dynamodb-2012-08-10/PutItem - # [2]: http://docs.aws.amazon.com/goto/DotNetSDKV3/dynamodb-2012-08-10/PutItem - # [3]: http://docs.aws.amazon.com/goto/SdkForCpp/dynamodb-2012-08-10/PutItem - # [4]: http://docs.aws.amazon.com/goto/SdkForGoV1/dynamodb-2012-08-10/PutItem - # [5]: http://docs.aws.amazon.com/goto/SdkForJava/dynamodb-2012-08-10/PutItem - # [6]: http://docs.aws.amazon.com/goto/AWSJavaScriptSDK/dynamodb-2012-08-10/PutItem - # [7]: http://docs.aws.amazon.com/goto/SdkForPHPV3/dynamodb-2012-08-10/PutItem - # [8]: http://docs.aws.amazon.com/goto/boto3/dynamodb-2012-08-10/PutItem - # [9]: http://docs.aws.amazon.com/goto/SdkForRubyV2/dynamodb-2012-08-10/PutItem - # [10]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html + # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html # # @option params [required, String] :table_name # The name of the table to contain the item. @@ -3967,6 +3953,10 @@ def list_tags_of_resource(params = {}, options = {}) # # The values returned are strongly consistent. # + # There is no additional cost associated with requesting a return value + # aside from the small network and processing overhead of receiving a + # larger response. No read capacity units are consumed. + # # The `ReturnValues` parameter is used by several DynamoDB operations; # however, `PutItem` does not recognize any values other than `NONE` or # `ALL_OLD`. @@ -4288,8 +4278,9 @@ def put_item(params = {}, options = {}) # matching items themselves. # # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in - # `AttributesToGet`. This return value is equivalent to specifying - # `AttributesToGet` without specifying any value for `Select`. + # `ProjectionExpression`. This return value is equivalent to + # specifying `ProjectionExpression` without specifying any value for + # `Select`. # # If you query or scan a local secondary index and request only # attributes that are projected into that index, the operation will @@ -4302,12 +4293,12 @@ def put_item(params = {}, options = {}) # attributes that are projected into the index. Global secondary index # queries cannot fetch attributes from the parent table. # - # If neither `Select` nor `AttributesToGet` are specified, DynamoDB + # If neither `Select` nor `ProjectionExpression` are specified, DynamoDB # defaults to `ALL_ATTRIBUTES` when accessing a table, and # `ALL_PROJECTED_ATTRIBUTES` when accessing an index. You cannot use - # both `Select` and `AttributesToGet` together in a single request, + # both `Select` and `ProjectionExpression` together in a single request, # unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. (This usage is - # equivalent to specifying `AttributesToGet` without any value for + # equivalent to specifying `ProjectionExpression` without any value for # `Select`.) # # If you use the `ProjectionExpression` parameter, then the value for @@ -4456,7 +4447,7 @@ def put_item(params = {}, options = {}) # # # - # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults + # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression # # @option params [String] :key_condition_expression # The condition that specifies the key values for items to be retrieved @@ -5241,8 +5232,9 @@ def restore_table_to_point_in_time(params = {}, options = {}) # matching items themselves. # # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in - # `AttributesToGet`. This return value is equivalent to specifying - # `AttributesToGet` without specifying any value for `Select`. + # `ProjectionExpression`. This return value is equivalent to + # specifying `ProjectionExpression` without specifying any value for + # `Select`. # # If you query or scan a local secondary index and request only # attributes that are projected into that index, the operation reads @@ -5255,12 +5247,12 @@ def restore_table_to_point_in_time(params = {}, options = {}) # attributes that are projected into the index. Global secondary index # queries cannot fetch attributes from the parent table. # - # If neither `Select` nor `AttributesToGet` are specified, DynamoDB + # If neither `Select` nor `ProjectionExpression` are specified, DynamoDB # defaults to `ALL_ATTRIBUTES` when accessing a table, and # `ALL_PROJECTED_ATTRIBUTES` when accessing an index. You cannot use - # both `Select` and `AttributesToGet` together in a single request, + # both `Select` and `ProjectionExpression` together in a single request, # unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. (This usage is - # equivalent to specifying `AttributesToGet` without any value for + # equivalent to specifying `ProjectionExpression` without any value for # `Select`.) # # If you use the `ProjectionExpression` parameter, then the value for @@ -5381,7 +5373,7 @@ def restore_table_to_point_in_time(params = {}, options = {}) # # # - # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults + # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression # # @option params [Hash] :expression_attribute_names # One or more substitution tokens for attribute names in an expression. @@ -6754,8 +6746,6 @@ def update_item(params = {}, options = {}) # # * Modify the provisioned throughput settings of the table. # - # * Enable or disable DynamoDB Streams on the table. - # # * Remove a global secondary index from the table. # # * Create a new global secondary index on the table. After the index @@ -7351,7 +7341,7 @@ def build_request(operation_name, params = {}) params: params, config: config) context[:gem_name] = 'aws-sdk-dynamodb' - context[:gem_version] = '1.74.0' + context[:gem_version] = '1.75.0' Seahorse::Client::Request.new(handlers, context) end diff --git a/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/table.rb b/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/table.rb index a23e78e2040..b31aee88b93 100644 --- a/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/table.rb +++ b/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/table.rb @@ -194,9 +194,9 @@ def billing_mode_summary # * `NonKeyAttributes` - A list of one or more non-key attribute names # that are projected into the secondary index. The total count of # attributes provided in `NonKeyAttributes`, summed across all of - # the secondary indexes, must not exceed 20. If you project the same - # attribute into two different indexes, this counts as two distinct - # attributes when determining the total. + # the secondary indexes, must not exceed 100. If you project the + # same attribute into two different indexes, this counts as two + # distinct attributes when determining the total. # # * `IndexSizeBytes` - Represents the total size of the index, in bytes. # DynamoDB updates this value approximately every six hours. Recent @@ -275,9 +275,9 @@ def local_secondary_indexes # * `NonKeyAttributes` - A list of one or more non-key attribute names # that are projected into the secondary index. The total count of # attributes provided in `NonKeyAttributes`, summed across all of - # the secondary indexes, must not exceed 20. If you project the same - # attribute into two different indexes, this counts as two distinct - # attributes when determining the total. + # the secondary indexes, must not exceed 100. If you project the + # same attribute into two different indexes, this counts as two + # distinct attributes when determining the total. # # * `ProvisionedThroughput` - The provisioned throughput settings for # the global secondary index, consisting of read and write capacity @@ -569,6 +569,10 @@ def delete(options = {}) # # * `ALL_OLD` - The content of the old item is returned. # + # There is no additional cost associated with requesting a return value + # aside from the small network and processing overhead of receiving a + # larger response. No read capacity units are consumed. + # # The `ReturnValues` parameter is used by several DynamoDB operations; # however, `DeleteItem` does not recognize any values other than `NONE` # or `ALL_OLD`. @@ -897,6 +901,10 @@ def get_item(options = {}) # # The values returned are strongly consistent. # + # There is no additional cost associated with requesting a return value + # aside from the small network and processing overhead of receiving a + # larger response. No read capacity units are consumed. + # # The `ReturnValues` parameter is used by several DynamoDB operations; # however, `PutItem` does not recognize any values other than `NONE` or # `ALL_OLD`. @@ -1097,8 +1105,9 @@ def put_item(options = {}) # matching items themselves. # # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in - # `AttributesToGet`. This return value is equivalent to specifying - # `AttributesToGet` without specifying any value for `Select`. + # `ProjectionExpression`. This return value is equivalent to + # specifying `ProjectionExpression` without specifying any value for + # `Select`. # # If you query or scan a local secondary index and request only # attributes that are projected into that index, the operation will @@ -1111,12 +1120,12 @@ def put_item(options = {}) # attributes that are projected into the index. Global secondary index # queries cannot fetch attributes from the parent table. # - # If neither `Select` nor `AttributesToGet` are specified, DynamoDB + # If neither `Select` nor `ProjectionExpression` are specified, DynamoDB # defaults to `ALL_ATTRIBUTES` when accessing a table, and # `ALL_PROJECTED_ATTRIBUTES` when accessing an index. You cannot use - # both `Select` and `AttributesToGet` together in a single request, + # both `Select` and `ProjectionExpression` together in a single request, # unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. (This usage is - # equivalent to specifying `AttributesToGet` without any value for + # equivalent to specifying `ProjectionExpression` without any value for # `Select`.) # # If you use the `ProjectionExpression` parameter, then the value for @@ -1254,7 +1263,7 @@ def put_item(options = {}) # # # - # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults + # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression # @option options [String] :key_condition_expression # The condition that specifies the key values for items to be retrieved # by the `Query` action. @@ -1501,8 +1510,9 @@ def query(options = {}) # matching items themselves. # # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in - # `AttributesToGet`. This return value is equivalent to specifying - # `AttributesToGet` without specifying any value for `Select`. + # `ProjectionExpression`. This return value is equivalent to + # specifying `ProjectionExpression` without specifying any value for + # `Select`. # # If you query or scan a local secondary index and request only # attributes that are projected into that index, the operation reads @@ -1515,12 +1525,12 @@ def query(options = {}) # attributes that are projected into the index. Global secondary index # queries cannot fetch attributes from the parent table. # - # If neither `Select` nor `AttributesToGet` are specified, DynamoDB + # If neither `Select` nor `ProjectionExpression` are specified, DynamoDB # defaults to `ALL_ATTRIBUTES` when accessing a table, and # `ALL_PROJECTED_ATTRIBUTES` when accessing an index. You cannot use - # both `Select` and `AttributesToGet` together in a single request, + # both `Select` and `ProjectionExpression` together in a single request, # unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. (This usage is - # equivalent to specifying `AttributesToGet` without any value for + # equivalent to specifying `ProjectionExpression` without any value for # `Select`.) # # If you use the `ProjectionExpression` parameter, then the value for @@ -1633,7 +1643,7 @@ def query(options = {}) # # # - # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults + # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression # @option options [Hash] :expression_attribute_names # One or more substitution tokens for attribute names in an expression. # The following are some use cases for using diff --git a/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb b/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb index 35ba3e73845..6e325e7661b 100644 --- a/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb +++ b/gems/aws-sdk-dynamodb/lib/aws-sdk-dynamodb/types.rb @@ -164,7 +164,7 @@ class AttributeDefinition < Struct.new( # @!attribute [rw] l # An attribute of type List. For example: # - # `"L": [ \{"S": "Cookies"\} , \{"S": "Coffee"\}, \{"N", "3.14159"\}]` + # `"L": [ \{"S": "Cookies"\} , \{"S": "Coffee"\}, \{"N": "3.14159"\}]` # @return [Array] # # @!attribute [rw] null @@ -304,10 +304,9 @@ class AttributeValue < Struct.new( # # * `DELETE` - Nothing happens; there is no attribute to delete. # - # * `ADD` - DynamoDB creates an item with the supplied primary key and - # number (or set of numbers) for the attribute value. The only data - # types allowed are number and number set; no other data types can - # be specified. + # * `ADD` - DynamoDB creates a new item with the supplied primary key + # and number (or set) for the attribute value. The only data types + # allowed are number, number set, string set or binary set. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/AttributeValueUpdate AWS API Documentation @@ -605,7 +604,9 @@ class BackupDescription < Struct.new( # @return [String] # # @!attribute [rw] backup_size_bytes - # Size of the backup in bytes. + # Size of the backup in bytes. DynamoDB updates this value + # approximately every six hours. Recent changes might not be reflected + # in this value. # @return [Integer] # # @!attribute [rw] backup_status @@ -2522,6 +2523,10 @@ class DeleteGlobalSecondaryIndexAction < Struct.new( # # * `ALL_OLD` - The content of the old item is returned. # + # There is no additional cost associated with requesting a return + # value aside from the small network and processing overhead of + # receiving a larger response. No read capacity units are consumed. + # # The `ReturnValues` parameter is used by several DynamoDB operations; # however, `DeleteItem` does not recognize any values other than # `NONE` or `ALL_OLD`. @@ -3958,8 +3963,9 @@ class ExportSummary < Struct.new( # @return [String] # # @!attribute [rw] export_time - # Time in the past from which to export table data. The table export - # will be a snapshot of the table's state at this point in time. + # Time in the past from which to export table data, counted in seconds + # from the start of the Unix epoch. The table export will be a + # snapshot of the table's state at this point in time. # @return [Time] # # @!attribute [rw] client_token @@ -5188,17 +5194,17 @@ class KinesisStreamingDestinationOutput < Struct.new( # There is no limit to the number of daily on-demand backups that can be # taken. # - # Up to 50 simultaneous table operations are allowed per account. These + # Up to 500 simultaneous table operations are allowed per account. These # operations include `CreateTable`, `UpdateTable`, # `DeleteTable`,`UpdateTimeToLive`, `RestoreTableFromBackup`, and # `RestoreTableToPointInTime`. # # The only exception is when you are creating a table with one or more - # secondary indexes. You can have up to 25 such requests running at a + # secondary indexes. You can have up to 250 such requests running at a # time; however, if the table or index specifications are complex, # DynamoDB might temporarily reduce the number of concurrent operations. # - # There is a soft account quota of 256 tables. + # There is a soft account quota of 2,500 tables. # # @!attribute [rw] message # Too many operations for a given subscriber. @@ -5255,7 +5261,8 @@ class LimitExceededException < Struct.new( # # Where `BackupType` can be: # - # * `USER` - On-demand backup created by you. + # * `USER` - On-demand backup created by you. (The default setting if + # no other backup types are specified.) # # * `SYSTEM` - On-demand backup automatically created by DynamoDB. # @@ -5859,7 +5866,7 @@ class PointInTimeRecoveryUnavailableException < Struct.new( # # For local secondary indexes, the total count of `NonKeyAttributes` # summed across all of the local secondary indexes, must not exceed - # 20. If you project the same attribute into two different indexes, + # 100. If you project the same attribute into two different indexes, # this counts as two distinct attributes when determining the total. # @return [Array] # @@ -6180,6 +6187,10 @@ class Put < Struct.new( # # The values returned are strongly consistent. # + # There is no additional cost associated with requesting a return + # value aside from the small network and processing overhead of + # receiving a larger response. No read capacity units are consumed. + # # The `ReturnValues` parameter is used by several DynamoDB operations; # however, `PutItem` does not recognize any values other than `NONE` # or `ALL_OLD`. @@ -6505,8 +6516,9 @@ class PutRequest < Struct.new( # matching items themselves. # # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in - # `AttributesToGet`. This return value is equivalent to specifying - # `AttributesToGet` without specifying any value for `Select`. + # `ProjectionExpression`. This return value is equivalent to + # specifying `ProjectionExpression` without specifying any value for + # `Select`. # # If you query or scan a local secondary index and request only # attributes that are projected into that index, the operation will @@ -6520,13 +6532,13 @@ class PutRequest < Struct.new( # secondary index queries cannot fetch attributes from the parent # table. # - # If neither `Select` nor `AttributesToGet` are specified, DynamoDB - # defaults to `ALL_ATTRIBUTES` when accessing a table, and + # If neither `Select` nor `ProjectionExpression` are specified, + # DynamoDB defaults to `ALL_ATTRIBUTES` when accessing a table, and # `ALL_PROJECTED_ATTRIBUTES` when accessing an index. You cannot use - # both `Select` and `AttributesToGet` together in a single request, - # unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. (This usage - # is equivalent to specifying `AttributesToGet` without any value for - # `Select`.) + # both `Select` and `ProjectionExpression` together in a single + # request, unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. + # (This usage is equivalent to specifying `ProjectionExpression` + # without any value for `Select`.) # # If you use the `ProjectionExpression` parameter, then the value for # `Select` can only be `SPECIFIC_ATTRIBUTES`. Any other value for @@ -6688,7 +6700,7 @@ class PutRequest < Struct.new( # # # - # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults + # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression # @return [String] # # @!attribute [rw] key_condition_expression @@ -7658,6 +7670,12 @@ class ReplicaUpdate < Struct.new( # `DeleteTableReplica` action in the destination Region, deleting the # replica and all if its items in the destination Region. # + # When you manually remove a table or global table replica, you do not + # automatically remove any associated scalable targets, scaling + # policies, or CloudWatch alarms. + # + # + # # @note When making an API call, you may pass ReplicationGroupUpdate # data as a hash: # @@ -8233,8 +8251,9 @@ class SSESpecification < Struct.new( # matching items themselves. # # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in - # `AttributesToGet`. This return value is equivalent to specifying - # `AttributesToGet` without specifying any value for `Select`. + # `ProjectionExpression`. This return value is equivalent to + # specifying `ProjectionExpression` without specifying any value for + # `Select`. # # If you query or scan a local secondary index and request only # attributes that are projected into that index, the operation reads @@ -8248,13 +8267,13 @@ class SSESpecification < Struct.new( # secondary index queries cannot fetch attributes from the parent # table. # - # If neither `Select` nor `AttributesToGet` are specified, DynamoDB - # defaults to `ALL_ATTRIBUTES` when accessing a table, and + # If neither `Select` nor `ProjectionExpression` are specified, + # DynamoDB defaults to `ALL_ATTRIBUTES` when accessing a table, and # `ALL_PROJECTED_ATTRIBUTES` when accessing an index. You cannot use - # both `Select` and `AttributesToGet` together in a single request, - # unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. (This usage - # is equivalent to specifying `AttributesToGet` without any value for - # `Select`.) + # both `Select` and `ProjectionExpression` together in a single + # request, unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. + # (This usage is equivalent to specifying `ProjectionExpression` + # without any value for `Select`.) # # If you use the `ProjectionExpression` parameter, then the value for # `Select` can only be `SPECIFIC_ATTRIBUTES`. Any other value for @@ -8385,7 +8404,7 @@ class SSESpecification < Struct.new( # # # - # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults + # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression # @return [String] # # @!attribute [rw] expression_attribute_names @@ -8943,7 +8962,7 @@ class TableClassSummary < Struct.new( # * `NonKeyAttributes` - A list of one or more non-key attribute # names that are projected into the secondary index. The total # count of attributes provided in `NonKeyAttributes`, summed - # across all of the secondary indexes, must not exceed 20. If you + # across all of the secondary indexes, must not exceed 100. If you # project the same attribute into two different indexes, this # counts as two distinct attributes when determining the total. # @@ -9023,7 +9042,7 @@ class TableClassSummary < Struct.new( # * `NonKeyAttributes` - A list of one or more non-key attribute # names that are projected into the secondary index. The total # count of attributes provided in `NonKeyAttributes`, summed - # across all of the secondary indexes, must not exceed 20. If you + # across all of the secondary indexes, must not exceed 100. If you # project the same attribute into two different indexes, this # counts as two distinct attributes when determining the total. # @@ -9133,7 +9152,8 @@ class TableInUseException < Struct.new( end # A source table with the name `TableName` does not currently exist - # within the subscriber's account. + # within the subscriber's account or the subscriber is operating in the + # wrong Amazon Web Services Region. # # @!attribute [rw] message # @return [String] @@ -9675,7 +9695,7 @@ class TransactWriteItemsOutput < Struct.new( # If using Java, DynamoDB lists the cancellation reasons on the # `CancellationReasons` property. This property is not set for other # languages. Transaction cancellation reasons are ordered in the order - # of requested items, if an item has no error it will have `NONE` code + # of requested items, if an item has no error it will have `None` code # and `Null` message. # # @@ -9684,7 +9704,7 @@ class TransactWriteItemsOutput < Struct.new( # # * No Errors: # - # * Code: `NONE` + # * Code: `None` # # * Message: `null` # diff --git a/gems/aws-sdk-dynamodbstreams/CHANGELOG.md b/gems/aws-sdk-dynamodbstreams/CHANGELOG.md index d4c3d14c833..839b005a010 100644 --- a/gems/aws-sdk-dynamodbstreams/CHANGELOG.md +++ b/gems/aws-sdk-dynamodbstreams/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +1.39.0 (2022-06-17) +------------------ + +* Feature - Doc only update for DynamoDB service + 1.38.0 (2022-02-24) ------------------ diff --git a/gems/aws-sdk-dynamodbstreams/VERSION b/gems/aws-sdk-dynamodbstreams/VERSION index ebeef2f2d61..5edffce6d57 100644 --- a/gems/aws-sdk-dynamodbstreams/VERSION +++ b/gems/aws-sdk-dynamodbstreams/VERSION @@ -1 +1 @@ -1.38.0 +1.39.0 diff --git a/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams.rb b/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams.rb index 3568051c362..e03836a526a 100644 --- a/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams.rb +++ b/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams.rb @@ -48,6 +48,6 @@ # @!group service module Aws::DynamoDBStreams - GEM_VERSION = '1.38.0' + GEM_VERSION = '1.39.0' end diff --git a/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/client.rb b/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/client.rb index 0e84fe459cd..34e896d16b7 100644 --- a/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/client.rb +++ b/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/client.rb @@ -817,7 +817,7 @@ def build_request(operation_name, params = {}) params: params, config: config) context[:gem_name] = 'aws-sdk-dynamodbstreams' - context[:gem_version] = '1.38.0' + context[:gem_version] = '1.39.0' Seahorse::Client::Request.new(handlers, context) end diff --git a/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb b/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb index e799765cef0..ea972a33da3 100644 --- a/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb +++ b/gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb @@ -77,7 +77,7 @@ module Types # @!attribute [rw] l # An attribute of type List. For example: # - # `"L": [ \{"S": "Cookies"\} , \{"S": "Coffee"\}, \{"N", "3.14159"\}]` + # `"L": [ \{"S": "Cookies"\} , \{"S": "Coffee"\}, \{"N": "3.14159"\}]` # @return [Array] # # @!attribute [rw] null @@ -389,17 +389,17 @@ class KeySchemaElement < Struct.new( # There is no limit to the number of daily on-demand backups that can be # taken. # - # Up to 50 simultaneous table operations are allowed per account. These + # Up to 500 simultaneous table operations are allowed per account. These # operations include `CreateTable`, `UpdateTable`, # `DeleteTable`,`UpdateTimeToLive`, `RestoreTableFromBackup`, and # `RestoreTableToPointInTime`. # # The only exception is when you are creating a table with one or more - # secondary indexes. You can have up to 25 such requests running at a + # secondary indexes. You can have up to 250 such requests running at a # time; however, if the table or index specifications are complex, # DynamoDB might temporarily reduce the number of concurrent operations. # - # There is a soft account quota of 256 tables. + # There is a soft account quota of 2,500 tables. # # @!attribute [rw] message # Too many operations for a given subscriber. diff --git a/gems/aws-sdk-resources/CHANGELOG.md b/gems/aws-sdk-resources/CHANGELOG.md index 599b5d260cc..b0fc8bf57b0 100644 --- a/gems/aws-sdk-resources/CHANGELOG.md +++ b/gems/aws-sdk-resources/CHANGELOG.md @@ -1,6 +1,11 @@ Unreleased Changes ------------------ +3.135.0 (2022-06-17) +------------------ + +* Feature - Added a dependency on the new `aws-sdk-connectcampaignservice` gem. + 3.134.0 (2022-06-16) ------------------ diff --git a/gems/aws-sdk-resources/VERSION b/gems/aws-sdk-resources/VERSION index dcfccdd4e62..2ab0dc8a78d 100644 --- a/gems/aws-sdk-resources/VERSION +++ b/gems/aws-sdk-resources/VERSION @@ -1 +1 @@ -3.134.0 +3.135.0 diff --git a/gems/aws-sdk-resources/aws-sdk-resources.gemspec b/gems/aws-sdk-resources/aws-sdk-resources.gemspec index 5e214fb0780..d052a4bc196 100644 --- a/gems/aws-sdk-resources/aws-sdk-resources.gemspec +++ b/gems/aws-sdk-resources/aws-sdk-resources.gemspec @@ -88,6 +88,7 @@ Gem::Specification.new do |spec| spec.add_dependency('aws-sdk-computeoptimizer', '~> 1') spec.add_dependency('aws-sdk-configservice', '~> 1') spec.add_dependency('aws-sdk-connect', '~> 1') + spec.add_dependency('aws-sdk-connectcampaignservice', '~> 1') spec.add_dependency('aws-sdk-connectcontactlens', '~> 1') spec.add_dependency('aws-sdk-connectparticipant', '~> 1') spec.add_dependency('aws-sdk-connectwisdomservice', '~> 1') diff --git a/gems/aws-sdk-resources/lib/aws-sdk-resources.rb b/gems/aws-sdk-resources/lib/aws-sdk-resources.rb index 8ff2e9d0ee8..f8c6c34c98b 100644 --- a/gems/aws-sdk-resources/lib/aws-sdk-resources.rb +++ b/gems/aws-sdk-resources/lib/aws-sdk-resources.rb @@ -78,6 +78,7 @@ module Aws autoload :ComputeOptimizer, 'aws-sdk-computeoptimizer' autoload :ConfigService, 'aws-sdk-configservice' autoload :Connect, 'aws-sdk-connect' + autoload :ConnectCampaignService, 'aws-sdk-connectcampaignservice' autoload :ConnectContactLens, 'aws-sdk-connectcontactlens' autoload :ConnectParticipant, 'aws-sdk-connectparticipant' autoload :ConnectWisdomService, 'aws-sdk-connectwisdomservice' diff --git a/services.json b/services.json index 1874ac3ad4c..91b10959ebe 100644 --- a/services.json +++ b/services.json @@ -232,6 +232,9 @@ "Connect": { "models": "connect/2017-08-08" }, + "ConnectCampaignService": { + "models": "connectcampaigns/2021-01-30" + }, "ConnectContactLens": { "models": "connect-contact-lens/2020-08-21" },