{
    "smithy": "1.0",
    "metadata": {
        "suppressions": [
            {
                "id": "HttpMethodSemantics",
                "namespace": "*"
            },
            {
                "id": "HttpResponseCodeSemantics",
                "namespace": "*"
            },
            {
                "id": "PaginatedTrait",
                "namespace": "*"
            },
            {
                "id": "HttpHeaderTrait",
                "namespace": "*"
            },
            {
                "id": "HttpUriConflict",
                "namespace": "*"
            },
            {
                "id": "Service",
                "namespace": "*"
            }
        ]
    },
    "shapes": {
        "com.amazonaws.alexaforbusiness#Address": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 500
                }
            }
        },
        "com.amazonaws.alexaforbusiness#AddressBook": {
            "type": "structure",
            "members": {
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the address book.</p>"
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the address book.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the address book.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>An address book with attributes.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AddressBookData": {
            "type": "structure",
            "members": {
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the address book.</p>"
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the address book.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the address book.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Information related to an address book.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AddressBookDataList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#AddressBookData"
            }
        },
        "com.amazonaws.alexaforbusiness#AddressBookDescription": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 200
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#AddressBookName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#AlexaForBusiness": {
            "type": "service",
            "version": "2017-11-09",
            "operations": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ApproveSkill"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#AssociateContactWithAddressBook"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#AssociateDeviceWithNetworkProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#AssociateDeviceWithRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#AssociateSkillGroupWithRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#AssociateSkillWithSkillGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#AssociateSkillWithUsers"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateAddressBook"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateBusinessReportSchedule"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateConferenceProvider"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateContact"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateGatewayGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateNetworkProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateSkillGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#CreateUser"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteAddressBook"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteBusinessReportSchedule"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteConferenceProvider"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteContact"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteDevice"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteDeviceUsageData"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteGatewayGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteNetworkProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteRoomSkillParameter"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteSkillAuthorization"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteSkillGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeleteUser"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DisassociateContactFromAddressBook"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DisassociateDeviceFromRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DisassociateSkillFromSkillGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DisassociateSkillFromUsers"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DisassociateSkillGroupFromRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ForgetSmartHomeAppliances"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetAddressBook"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetConferencePreference"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetConferenceProvider"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetContact"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetDevice"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetGateway"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetGatewayGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetInvitationConfiguration"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetNetworkProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetRoomSkillParameter"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#GetSkillGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListBusinessReportSchedules"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListConferenceProviders"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListDeviceEvents"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListGatewayGroups"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListGateways"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListSkills"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListSkillsStoreCategories"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListSkillsStoreSkillsByCategory"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListSmartHomeAppliances"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ListTags"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#PutConferencePreference"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#PutInvitationConfiguration"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#PutRoomSkillParameter"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#PutSkillAuthorization"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#RegisterAVSDevice"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#RejectSkill"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ResolveRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#RevokeInvitation"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SearchAddressBooks"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SearchContacts"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SearchDevices"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SearchNetworkProfiles"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SearchProfiles"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SearchRooms"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SearchSkillGroups"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SearchUsers"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SendAnnouncement"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SendInvitation"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#StartDeviceSync"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#StartSmartHomeApplianceDiscovery"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#TagResource"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UntagResource"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateAddressBook"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateBusinessReportSchedule"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateConferenceProvider"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateContact"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateDevice"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateGateway"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateGatewayGroup"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateNetworkProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateProfile"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateRoom"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UpdateSkillGroup"
                }
            ],
            "traits": {
                "aws.api#service": {
                    "sdkId": "Alexa For Business",
                    "arnNamespace": "a4b",
                    "cloudFormationName": "AlexaForBusiness",
                    "cloudTrailEventSource": "alexaforbusiness.amazonaws.com",
                    "endpointPrefix": "a4b"
                },
                "aws.auth#sigv4": {
                    "name": "a4b"
                },
                "aws.protocols#awsJson1_1": {},
                "smithy.api#documentation": "<p>Alexa for Business helps you use Alexa in your organization. Alexa for Business provides you with the tools\n         to manage Alexa devices, enroll your users, and assign skills, at scale. You can build your\n         own context-aware voice skills using the Alexa Skills Kit and the Alexa for Business API operations.\n         You can also make these available as private skills for your organization. Alexa for Business makes it\n         efficient to voice-enable your products and services, thus providing context-aware voice\n         experiences for your customers. Device makers building with the Alexa Voice Service (AVS)\n         can create fully integrated solutions, register their products with Alexa for Business, and manage them\n         as shared devices in their organization. </p>",
                "smithy.api#title": "Alexa For Business"
            }
        },
        "com.amazonaws.alexaforbusiness#AlreadyExistsException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The resource being created already exists.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#AmazonId": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "[a-zA-Z0-9]{1,18}"
            }
        },
        "com.amazonaws.alexaforbusiness#ApplianceDescription": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#ApplianceFriendlyName": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#ApplianceManufacturerName": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#ApproveSkill": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ApproveSkillRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ApproveSkillResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Associates a skill with the organization under the customer's AWS account. If a skill\n         is private, the user implicitly accepts access to this skill during enablement.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ApproveSkillRequest": {
            "type": "structure",
            "members": {
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The unique identifier of the skill.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ApproveSkillResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#Arn": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}"
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateContactWithAddressBook": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#AssociateContactWithAddressBookRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#AssociateContactWithAddressBookResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Associates a contact with a given address book.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateContactWithAddressBookRequest": {
            "type": "structure",
            "members": {
                "ContactArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the contact to associate with an address book.</p>",
                        "smithy.api#required": {}
                    }
                },
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the address book with which to associate the contact.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateContactWithAddressBookResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#AssociateDeviceWithNetworkProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#AssociateDeviceWithNetworkProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#AssociateDeviceWithNetworkProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Associates a device with the specified network profile.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateDeviceWithNetworkProfileRequest": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The device ARN.</p>",
                        "smithy.api#required": {}
                    }
                },
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile to associate with a device.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateDeviceWithNetworkProfileResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#AssociateDeviceWithRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#AssociateDeviceWithRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#AssociateDeviceWithRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Associates a device with a given room. This applies all the settings from the room\n         profile to the device, and all the skills in any skill groups added to that room. This\n         operation requires the device to be online, or else a manual sync is required. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateDeviceWithRoomRequest": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the device to associate to a room. Required.</p>"
                    }
                },
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room with which to associate the device. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateDeviceWithRoomResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillGroupWithRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#AssociateSkillGroupWithRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#AssociateSkillGroupWithRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Associates a skill group with a given room. This enables all skills in the associated\n         skill group on all devices in the room.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillGroupWithRoomRequest": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill group to associate with a room. Required.</p>"
                    }
                },
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room with which to associate the skill group. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillGroupWithRoomResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillWithSkillGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#AssociateSkillWithSkillGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#AssociateSkillWithSkillGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#SkillNotLinkedException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Associates a skill with a skill group.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillWithSkillGroupRequest": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill group to associate the skill to. Required.</p>"
                    }
                },
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The unique identifier of the skill.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillWithSkillGroupResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillWithUsers": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#AssociateSkillWithUsersRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#AssociateSkillWithUsersResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Makes a private skill available for enrolled users to enable on their devices.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillWithUsersRequest": {
            "type": "structure",
            "members": {
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The private skill ID you want to make available to enrolled users.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#AssociateSkillWithUsersResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#Audio": {
            "type": "structure",
            "members": {
                "Locale": {
                    "target": "com.amazonaws.alexaforbusiness#Locale",
                    "traits": {
                        "smithy.api#documentation": "<p>The locale of the audio message. Currently, en-US is supported.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Location": {
                    "target": "com.amazonaws.alexaforbusiness#AudioLocation",
                    "traits": {
                        "smithy.api#documentation": "<p>The location of the audio file. Currently, S3 URLs are supported. Only S3 locations\n         comprised of safe characters are valid. For more information, see <a href=\"https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#Safe%20Characters\">Safe Characters</a>.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The audio message. There is a 1 MB limit on the audio file input and the only supported\n         format is MP3. To convert your MP3 audio files to an Alexa-friendly,  </p>\n         <p>required codec version (MPEG version 2) and bit rate (48 kbps), you might use converter\n         software. One option for this is a command-line tool, FFmpeg. For more information, see\n            <a href=\"https://www.ffmpeg.org/\">FFmpeg</a>. The following command converts the\n         provided <input-file> to an MP3 file that is played in the announcement:</p>\n         <p>\n            <code>ffmpeg -i <input-file> -ac 2 -codec:a libmp3lame -b:a 48k -ar 16000\n            <output-file.mp3></code>\n         </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#AudioList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Audio"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 1
                }
            }
        },
        "com.amazonaws.alexaforbusiness#AudioLocation": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 1200
                },
                "smithy.api#pattern": "https://([A-Za-z0-9_.-]+)?(s3-[A-Za-z0-9-]+|s3\\.([A-Za-z0-9-])+|s3|s3.dualstack\\.([A-Za-z0-9-])+)+.amazonaws.com/.*"
            }
        },
        "com.amazonaws.alexaforbusiness#AuthorizationResult": {
            "type": "map",
            "key": {
                "target": "com.amazonaws.alexaforbusiness#Key"
            },
            "value": {
                "target": "com.amazonaws.alexaforbusiness#Value"
            },
            "traits": {
                "smithy.api#sensitive": {}
            }
        },
        "com.amazonaws.alexaforbusiness#Boolean": {
            "type": "boolean",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.alexaforbusiness#Boolean2": {
            "type": "boolean"
        },
        "com.amazonaws.alexaforbusiness#BulletPoint": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#BulletPoints": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#BulletPoint"
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReport": {
            "type": "structure",
            "members": {
                "Status": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of the report generation execution (RUNNING, SUCCEEDED, or\n         FAILED).</p>"
                    }
                },
                "FailureCode": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportFailureCode",
                    "traits": {
                        "smithy.api#documentation": "<p>The failure code.</p>"
                    }
                },
                "S3Location": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportS3Location",
                    "traits": {
                        "smithy.api#documentation": "<p>The S3 location of the output reports.</p>"
                    }
                },
                "DeliveryTime": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportDeliveryTime",
                    "traits": {
                        "smithy.api#documentation": "<p>The time of report delivery.</p>"
                    }
                },
                "DownloadUrl": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportDownloadUrl",
                    "traits": {
                        "smithy.api#documentation": "<p>The download link where a user can download the report.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Usage report with specified parameters.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportContentRange": {
            "type": "structure",
            "members": {
                "Interval": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportInterval",
                    "traits": {
                        "smithy.api#documentation": "<p>The interval of the content range.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The content range of the report.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportDeliveryTime": {
            "type": "timestamp"
        },
        "com.amazonaws.alexaforbusiness#BusinessReportDownloadUrl": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#BusinessReportFailureCode": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "ACCESS_DENIED",
                        "name": "ACCESS_DENIED"
                    },
                    {
                        "value": "NO_SUCH_BUCKET",
                        "name": "NO_SUCH_BUCKET"
                    },
                    {
                        "value": "INTERNAL_FAILURE",
                        "name": "INTERNAL_FAILURE"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportFormat": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "CSV",
                        "name": "CSV"
                    },
                    {
                        "value": "CSV_ZIP",
                        "name": "CSV_ZIP"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportInterval": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "ONE_DAY",
                        "name": "ONE_DAY"
                    },
                    {
                        "value": "ONE_WEEK",
                        "name": "ONE_WEEK"
                    },
                    {
                        "value": "THIRTY_DAYS",
                        "name": "THIRTY_DAYS"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportRecurrence": {
            "type": "structure",
            "members": {
                "StartDate": {
                    "target": "com.amazonaws.alexaforbusiness#Date",
                    "traits": {
                        "smithy.api#documentation": "<p>The start date.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The recurrence of the reports.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportS3Location": {
            "type": "structure",
            "members": {
                "Path": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportS3Path",
                    "traits": {
                        "smithy.api#documentation": "<p>The path of the business report.</p>"
                    }
                },
                "BucketName": {
                    "target": "com.amazonaws.alexaforbusiness#CustomerS3BucketName",
                    "traits": {
                        "smithy.api#documentation": "<p>The S3 bucket name of the output reports.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The S3 location of the output reports.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportS3Path": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#BusinessReportSchedule": {
            "type": "structure",
            "members": {
                "ScheduleArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the business report schedule.</p>"
                    }
                },
                "ScheduleName": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportScheduleName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name identifier of the schedule.</p>"
                    }
                },
                "S3BucketName": {
                    "target": "com.amazonaws.alexaforbusiness#CustomerS3BucketName",
                    "traits": {
                        "smithy.api#documentation": "<p>The S3 bucket name of the output reports.</p>"
                    }
                },
                "S3KeyPrefix": {
                    "target": "com.amazonaws.alexaforbusiness#S3KeyPrefix",
                    "traits": {
                        "smithy.api#documentation": "<p>The S3 key where the report is delivered.</p>"
                    }
                },
                "Format": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportFormat",
                    "traits": {
                        "smithy.api#documentation": "<p>The format of the generated report (individual CSV files or zipped files of\n         individual files).</p>"
                    }
                },
                "ContentRange": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportContentRange",
                    "traits": {
                        "smithy.api#documentation": "<p>The content range of the reports.</p>"
                    }
                },
                "Recurrence": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportRecurrence",
                    "traits": {
                        "smithy.api#documentation": "<p>The recurrence of the reports.</p>"
                    }
                },
                "LastBusinessReport": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReport",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the last business report delivery for a specified time\n         interval.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The schedule of the usage report.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportScheduleList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#BusinessReportSchedule"
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportScheduleName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 64
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#BusinessReportStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "RUNNING",
                        "name": "RUNNING"
                    },
                    {
                        "value": "SUCCEEDED",
                        "name": "SUCCEEDED"
                    },
                    {
                        "value": "FAILED",
                        "name": "FAILED"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#Category": {
            "type": "structure",
            "members": {
                "CategoryId": {
                    "target": "com.amazonaws.alexaforbusiness#CategoryId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the skill store category.</p>"
                    }
                },
                "CategoryName": {
                    "target": "com.amazonaws.alexaforbusiness#CategoryName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the skill store category.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The skill store category that is shown. Alexa skills are assigned a specific skill\n         category during creation, such as News, Social, and Sports.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CategoryId": {
            "type": "long",
            "traits": {
                "smithy.api#box": {},
                "smithy.api#range": {
                    "min": 1
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CategoryList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Category"
            }
        },
        "com.amazonaws.alexaforbusiness#CategoryName": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#CertificateTime": {
            "type": "timestamp"
        },
        "com.amazonaws.alexaforbusiness#ClientId": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "^\\S+{1,256}$"
            }
        },
        "com.amazonaws.alexaforbusiness#ClientRequestToken": {
            "type": "string",
            "traits": {
                "smithy.api#documentation": "<p>A unique, user-specified identifier for the request that ensures idempotency.</p>",
                "smithy.api#length": {
                    "min": 10,
                    "max": 150
                },
                "smithy.api#pattern": "[a-zA-Z0-9][a-zA-Z0-9_-]*"
            }
        },
        "com.amazonaws.alexaforbusiness#CommsProtocol": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "SIP",
                        "name": "SIP"
                    },
                    {
                        "value": "SIPS",
                        "name": "SIPS"
                    },
                    {
                        "value": "H323",
                        "name": "H323"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#ConcurrentModificationException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>There is a concurrent modification of resources.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#ConferencePreference": {
            "type": "structure",
            "members": {
                "DefaultConferenceProviderArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the default conference provider.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The default conference provider that is used if no other scheduled meetings are\n         detected.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ConferenceProvider": {
            "type": "structure",
            "members": {
                "Arn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly created conference provider.</p>"
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#ConferenceProviderName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the conference provider.</p>"
                    }
                },
                "Type": {
                    "target": "com.amazonaws.alexaforbusiness#ConferenceProviderType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of conference providers.</p>"
                    }
                },
                "IPDialIn": {
                    "target": "com.amazonaws.alexaforbusiness#IPDialIn",
                    "traits": {
                        "smithy.api#documentation": "<p>The IP endpoint and protocol for calling.</p>"
                    }
                },
                "PSTNDialIn": {
                    "target": "com.amazonaws.alexaforbusiness#PSTNDialIn",
                    "traits": {
                        "smithy.api#documentation": "<p>The information for PSTN conferencing.</p>"
                    }
                },
                "MeetingSetting": {
                    "target": "com.amazonaws.alexaforbusiness#MeetingSetting",
                    "traits": {
                        "smithy.api#documentation": "<p>The meeting settings for the conference provider.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>An entity that provides a conferencing solution. Alexa for Business acts as the voice interface and mediator that connects users to their preferred conference provider. Examples of conference providers include Amazon Chime, Zoom, Cisco, and Polycom. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ConferenceProviderName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 50
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#ConferenceProviderType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "CHIME",
                        "name": "CHIME"
                    },
                    {
                        "value": "BLUEJEANS",
                        "name": "BLUEJEANS"
                    },
                    {
                        "value": "FUZE",
                        "name": "FUZE"
                    },
                    {
                        "value": "GOOGLE_HANGOUTS",
                        "name": "GOOGLE_HANGOUTS"
                    },
                    {
                        "value": "POLYCOM",
                        "name": "POLYCOM"
                    },
                    {
                        "value": "RINGCENTRAL",
                        "name": "RINGCENTRAL"
                    },
                    {
                        "value": "SKYPE_FOR_BUSINESS",
                        "name": "SKYPE_FOR_BUSINESS"
                    },
                    {
                        "value": "WEBEX",
                        "name": "WEBEX"
                    },
                    {
                        "value": "ZOOM",
                        "name": "ZOOM"
                    },
                    {
                        "value": "CUSTOM",
                        "name": "CUSTOM"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#ConferenceProvidersList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#ConferenceProvider"
            }
        },
        "com.amazonaws.alexaforbusiness#ConnectionStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "ONLINE",
                        "name": "ONLINE"
                    },
                    {
                        "value": "OFFLINE",
                        "name": "OFFLINE"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#ConnectionStatusUpdatedTime": {
            "type": "timestamp"
        },
        "com.amazonaws.alexaforbusiness#Contact": {
            "type": "structure",
            "members": {
                "ContactArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the contact.</p>"
                    }
                },
                "DisplayName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the contact to display on the console.</p>"
                    }
                },
                "FirstName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The first name of the contact, used to call the contact on the device.</p>"
                    }
                },
                "LastName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The last name of the contact, used to call the contact on the device.</p>"
                    }
                },
                "PhoneNumber": {
                    "target": "com.amazonaws.alexaforbusiness#RawPhoneNumber",
                    "traits": {
                        "smithy.api#documentation": "<p>The phone number of the contact. The phone number type defaults to WORK. You can\n         either specify PhoneNumber or PhoneNumbers. We recommend that you use PhoneNumbers, which\n         lets you specify the phone number type and multiple numbers.</p>"
                    }
                },
                "PhoneNumbers": {
                    "target": "com.amazonaws.alexaforbusiness#PhoneNumberList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of phone numbers for the contact.</p>"
                    }
                },
                "SipAddresses": {
                    "target": "com.amazonaws.alexaforbusiness#SipAddressList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of SIP addresses for the contact.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A contact with attributes.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ContactData": {
            "type": "structure",
            "members": {
                "ContactArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the contact.</p>"
                    }
                },
                "DisplayName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the contact to display on the console.</p>"
                    }
                },
                "FirstName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The first name of the contact, used to call the contact on the device.</p>"
                    }
                },
                "LastName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The last name of the contact, used to call the contact on the device.</p>"
                    }
                },
                "PhoneNumber": {
                    "target": "com.amazonaws.alexaforbusiness#RawPhoneNumber",
                    "traits": {
                        "smithy.api#documentation": "<p>The phone number of the contact. The phone number type defaults to WORK. You can\n         specify PhoneNumber or PhoneNumbers. We recommend that you use PhoneNumbers, which lets you\n         specify the phone number type and multiple numbers.</p>"
                    }
                },
                "PhoneNumbers": {
                    "target": "com.amazonaws.alexaforbusiness#PhoneNumberList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of phone numbers for the contact.</p>"
                    }
                },
                "SipAddresses": {
                    "target": "com.amazonaws.alexaforbusiness#SipAddressList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of SIP addresses for the contact.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Information related to a contact.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ContactDataList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#ContactData"
            }
        },
        "com.amazonaws.alexaforbusiness#ContactName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#Content": {
            "type": "structure",
            "members": {
                "TextList": {
                    "target": "com.amazonaws.alexaforbusiness#TextList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of text messages.</p>"
                    }
                },
                "SsmlList": {
                    "target": "com.amazonaws.alexaforbusiness#SsmlList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of SSML messages.</p>"
                    }
                },
                "AudioList": {
                    "target": "com.amazonaws.alexaforbusiness#AudioList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of audio messages.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The content definition. This can contain only one text, SSML, or audio list\n         object.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CountryCode": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "\\d{1,3}"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateAddressBook": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateAddressBookRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateAddressBookResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates an address book with the specified details.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateAddressBookRequest": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the address book.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the address book.</p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique, user-specified identifier for the request that ensures\n         idempotency.</p>",
                        "smithy.api#idempotencyToken": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags to be added to the specified resource. Do not provide system tags.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateAddressBookResponse": {
            "type": "structure",
            "members": {
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly created address book.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateBusinessReportSchedule": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateBusinessReportScheduleRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateBusinessReportScheduleResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a recurring schedule for usage reports to deliver to the specified S3\n         location with a specified daily or weekly interval.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateBusinessReportScheduleRequest": {
            "type": "structure",
            "members": {
                "ScheduleName": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportScheduleName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name identifier of the schedule.</p>"
                    }
                },
                "S3BucketName": {
                    "target": "com.amazonaws.alexaforbusiness#CustomerS3BucketName",
                    "traits": {
                        "smithy.api#documentation": "<p>The S3 bucket name of the output reports. If this isn't specified, the report can be\n         retrieved from a download link by calling ListBusinessReportSchedule. </p>"
                    }
                },
                "S3KeyPrefix": {
                    "target": "com.amazonaws.alexaforbusiness#S3KeyPrefix",
                    "traits": {
                        "smithy.api#documentation": "<p>The S3 key where the report is delivered.</p>"
                    }
                },
                "Format": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportFormat",
                    "traits": {
                        "smithy.api#documentation": "<p>The format of the generated report (individual CSV files or zipped files of\n         individual files).</p>",
                        "smithy.api#required": {}
                    }
                },
                "ContentRange": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportContentRange",
                    "traits": {
                        "smithy.api#documentation": "<p>The content range of the reports.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Recurrence": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportRecurrence",
                    "traits": {
                        "smithy.api#documentation": "<p>The recurrence of the reports. If this isn't specified, the report will only be\n         delivered one time when the API is called. </p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The client request token.</p>",
                        "smithy.api#idempotencyToken": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags for the business report schedule.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateBusinessReportScheduleResponse": {
            "type": "structure",
            "members": {
                "ScheduleArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the business report schedule.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateConferenceProvider": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateConferenceProviderRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateConferenceProviderResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Adds a new conference provider under the user's AWS account.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateConferenceProviderRequest": {
            "type": "structure",
            "members": {
                "ConferenceProviderName": {
                    "target": "com.amazonaws.alexaforbusiness#ConferenceProviderName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the conference provider.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ConferenceProviderType": {
                    "target": "com.amazonaws.alexaforbusiness#ConferenceProviderType",
                    "traits": {
                        "smithy.api#documentation": "<p>Represents a type within a list of predefined types.</p>",
                        "smithy.api#required": {}
                    }
                },
                "IPDialIn": {
                    "target": "com.amazonaws.alexaforbusiness#IPDialIn",
                    "traits": {
                        "smithy.api#documentation": "<p>The IP endpoint and protocol for calling.</p>"
                    }
                },
                "PSTNDialIn": {
                    "target": "com.amazonaws.alexaforbusiness#PSTNDialIn",
                    "traits": {
                        "smithy.api#documentation": "<p>The information for PSTN conferencing.</p>"
                    }
                },
                "MeetingSetting": {
                    "target": "com.amazonaws.alexaforbusiness#MeetingSetting",
                    "traits": {
                        "smithy.api#documentation": "<p>The meeting settings for the conference provider.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The request token of the client.</p>",
                        "smithy.api#idempotencyToken": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags to be added to the specified resource. Do not provide system tags.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateConferenceProviderResponse": {
            "type": "structure",
            "members": {
                "ConferenceProviderArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly-created conference provider.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateContact": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateContactRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateContactResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a contact with the specified details.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateContactRequest": {
            "type": "structure",
            "members": {
                "DisplayName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the contact to display on the console.</p>"
                    }
                },
                "FirstName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The first name of the contact that is used to call the contact on the\n         device.</p>",
                        "smithy.api#required": {}
                    }
                },
                "LastName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The last name of the contact that is used to call the contact on the\n         device.</p>"
                    }
                },
                "PhoneNumber": {
                    "target": "com.amazonaws.alexaforbusiness#RawPhoneNumber",
                    "traits": {
                        "smithy.api#documentation": "<p>The phone number of the contact in E.164 format. The phone number type defaults to\n         WORK. You can specify PhoneNumber or PhoneNumbers. We recommend that you use PhoneNumbers,\n         which lets you specify the phone number type and multiple numbers.</p>"
                    }
                },
                "PhoneNumbers": {
                    "target": "com.amazonaws.alexaforbusiness#PhoneNumberList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of phone numbers for the contact.</p>"
                    }
                },
                "SipAddresses": {
                    "target": "com.amazonaws.alexaforbusiness#SipAddressList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of SIP addresses for the contact.</p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique, user-specified identifier for this request that ensures\n         idempotency.</p>",
                        "smithy.api#idempotencyToken": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags to be added to the specified resource. Do not provide system tags.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateContactResponse": {
            "type": "structure",
            "members": {
                "ContactArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly created address book.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateEndOfMeetingReminder": {
            "type": "structure",
            "members": {
                "ReminderAtMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#EndOfMeetingReminderMinutesList",
                    "traits": {
                        "smithy.api#documentation": "<p> A range of 3 to 15 minutes that determines when the reminder begins.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ReminderType": {
                    "target": "com.amazonaws.alexaforbusiness#EndOfMeetingReminderType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of sound that users hear during the end of meeting reminder. </p>",
                        "smithy.api#required": {}
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether an end of meeting reminder is enabled or not.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Creates settings for the end of meeting reminder feature that are applied to a room\n         profile. The end of meeting reminder enables Alexa to remind users when a meeting is\n         ending.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateGatewayGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateGatewayGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateGatewayGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a gateway group with the specified details.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateGatewayGroupRequest": {
            "type": "structure",
            "members": {
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the gateway group.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the gateway group.</p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p> A unique, user-specified identifier for the request that ensures idempotency.</p>",
                        "smithy.api#idempotencyToken": {},
                        "smithy.api#required": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags to be added to the specified resource. Do not provide system tags.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateGatewayGroupResponse": {
            "type": "structure",
            "members": {
                "GatewayGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the created gateway group.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateInstantBooking": {
            "type": "structure",
            "members": {
                "DurationInMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#Minutes",
                    "traits": {
                        "smithy.api#documentation": "<p>Duration between 15 and 240 minutes at increments of 15 that determines how long to book\n         an available room when a meeting is started with Alexa.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether instant booking is enabled or not.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Creates settings for the instant booking feature that are applied to a room profile.\n         When users start their meeting with Alexa, Alexa automatically books the room for the\n         configured duration if the room is available.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateMeetingRoomConfiguration": {
            "type": "structure",
            "members": {
                "RoomUtilizationMetricsEnabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether room utilization metrics are enabled or not.</p>"
                    }
                },
                "EndOfMeetingReminder": {
                    "target": "com.amazonaws.alexaforbusiness#CreateEndOfMeetingReminder"
                },
                "InstantBooking": {
                    "target": "com.amazonaws.alexaforbusiness#CreateInstantBooking",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings to automatically book a room for a configured duration if it's free when joining a meeting with Alexa.</p>"
                    }
                },
                "RequireCheckIn": {
                    "target": "com.amazonaws.alexaforbusiness#CreateRequireCheckIn",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings for requiring a check in when a room is reserved. Alexa can cancel a room reservation if it's not checked into to make the room available for others. Users can check in by joining the meeting with Alexa or an AVS device, or by saying “Alexa, check in.”</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Creates meeting room settings of a room profile.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateNetworkProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateNetworkProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateNetworkProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#InvalidCertificateAuthorityException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#InvalidServiceLinkedRoleStateException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a network profile with the specified details.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateNetworkProfileRequest": {
            "type": "structure",
            "members": {
                "NetworkProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the network profile associated with a device.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about a device's network profile.</p>"
                    }
                },
                "Ssid": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkSsid",
                    "traits": {
                        "smithy.api#documentation": "<p>The SSID of the Wi-Fi network.</p>",
                        "smithy.api#required": {}
                    }
                },
                "SecurityType": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkSecurityType",
                    "traits": {
                        "smithy.api#documentation": "<p>The security type of the Wi-Fi network. This can be WPA2_ENTERPRISE, WPA2_PSK, WPA_PSK,\n         WEP, or OPEN.</p>",
                        "smithy.api#required": {}
                    }
                },
                "EapMethod": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkEapMethod",
                    "traits": {
                        "smithy.api#documentation": "<p>The authentication standard that is used in the EAP framework. Currently, EAP_TLS is\n         supported.</p>"
                    }
                },
                "CurrentPassword": {
                    "target": "com.amazonaws.alexaforbusiness#CurrentWiFiPassword",
                    "traits": {
                        "smithy.api#documentation": "<p>The current password of the Wi-Fi network.</p>"
                    }
                },
                "NextPassword": {
                    "target": "com.amazonaws.alexaforbusiness#NextWiFiPassword",
                    "traits": {
                        "smithy.api#documentation": "<p>The next, or subsequent, password of the Wi-Fi network. This password is asynchronously\n         transmitted to the device and is used when the password of the network changes to\n         NextPassword. </p>"
                    }
                },
                "CertificateAuthorityArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the Private Certificate Authority (PCA) created in AWS Certificate Manager\n         (ACM). This is used to issue certificates to the devices. </p>"
                    }
                },
                "TrustAnchors": {
                    "target": "com.amazonaws.alexaforbusiness#TrustAnchorList",
                    "traits": {
                        "smithy.api#documentation": "<p>The root certificates of your authentication server that is installed on your devices\n         and used to trust your authentication server during EAP negotiation. </p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#idempotencyToken": {},
                        "smithy.api#required": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags to be added to the specified resource. Do not provide system tags. </p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateNetworkProfileResponse": {
            "type": "structure",
            "members": {
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile associated with a device.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a new room profile with the specified details.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateProfileRequest": {
            "type": "structure",
            "members": {
                "ProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#ProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of a room profile.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Timezone": {
                    "target": "com.amazonaws.alexaforbusiness#Timezone",
                    "traits": {
                        "smithy.api#documentation": "<p>The time zone used by a room profile.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Address": {
                    "target": "com.amazonaws.alexaforbusiness#Address",
                    "traits": {
                        "smithy.api#documentation": "<p>The valid address for the room.</p>",
                        "smithy.api#required": {}
                    }
                },
                "DistanceUnit": {
                    "target": "com.amazonaws.alexaforbusiness#DistanceUnit",
                    "traits": {
                        "smithy.api#documentation": "<p>The distance unit to be used by devices in the profile.</p>",
                        "smithy.api#required": {}
                    }
                },
                "TemperatureUnit": {
                    "target": "com.amazonaws.alexaforbusiness#TemperatureUnit",
                    "traits": {
                        "smithy.api#documentation": "<p>The temperature unit to be used by devices in the profile.</p>",
                        "smithy.api#required": {}
                    }
                },
                "WakeWord": {
                    "target": "com.amazonaws.alexaforbusiness#WakeWord",
                    "traits": {
                        "smithy.api#documentation": "<p>A wake word for Alexa, Echo, Amazon, or a computer.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Locale": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceLocale",
                    "traits": {
                        "smithy.api#documentation": "<p>The locale of the room profile. (This is currently only available to a limited preview audience.)</p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The user-specified token that is used during the creation of a profile.</p>",
                        "smithy.api#idempotencyToken": {}
                    }
                },
                "SetupModeDisabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether room profile setup is enabled.</p>"
                    }
                },
                "MaxVolumeLimit": {
                    "target": "com.amazonaws.alexaforbusiness#MaxVolumeLimit",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum volume limit for a room profile.</p>"
                    }
                },
                "PSTNEnabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether PSTN calling is enabled.</p>"
                    }
                },
                "DataRetentionOptIn": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether data retention of the profile is enabled.</p>"
                    }
                },
                "MeetingRoomConfiguration": {
                    "target": "com.amazonaws.alexaforbusiness#CreateMeetingRoomConfiguration",
                    "traits": {
                        "smithy.api#documentation": "<p>The meeting room settings of a room profile.</p>"
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags for the profile.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateProfileResponse": {
            "type": "structure",
            "members": {
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly created room profile in the response.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateRequireCheckIn": {
            "type": "structure",
            "members": {
                "ReleaseAfterMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#Minutes",
                    "traits": {
                        "smithy.api#documentation": "<p>Duration between 5 and 20 minutes to determine when to release the room if it's not checked into.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether require check in is enabled or not.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Creates settings for the require check in feature that are applied to a room profile. Require check in allows a meeting room’s Alexa or AVS device to prompt the user to check in; otherwise, the room will be released.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a room with the specified details.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateRoomRequest": {
            "type": "structure",
            "members": {
                "RoomName": {
                    "target": "com.amazonaws.alexaforbusiness#RoomName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name for the room.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#RoomDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description for the room.</p>"
                    }
                },
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The profile ARN for the room. This is required.</p>"
                    }
                },
                "ProviderCalendarId": {
                    "target": "com.amazonaws.alexaforbusiness#ProviderCalendarId",
                    "traits": {
                        "smithy.api#documentation": "<p>The calendar ARN for the room.</p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique, user-specified identifier for this request that ensures idempotency.\n      </p>",
                        "smithy.api#idempotencyToken": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags for the room.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateRoomResponse": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly created room in the response.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateSkillGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateSkillGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateSkillGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a skill group with a specified name and description.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateSkillGroupRequest": {
            "type": "structure",
            "members": {
                "SkillGroupName": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name for the skill group.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description for the skill group.</p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique, user-specified identifier for this request that ensures idempotency.\n      </p>",
                        "smithy.api#idempotencyToken": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags for the skill group.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateSkillGroupResponse": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly created skill group in the response.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateUser": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#CreateUserRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#CreateUserResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ResourceInUseException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Creates a user.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#CreateUserRequest": {
            "type": "structure",
            "members": {
                "UserId": {
                    "target": "com.amazonaws.alexaforbusiness#user_UserId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN for the user.</p>",
                        "smithy.api#required": {}
                    }
                },
                "FirstName": {
                    "target": "com.amazonaws.alexaforbusiness#user_FirstName",
                    "traits": {
                        "smithy.api#documentation": "<p>The first name for the user.</p>"
                    }
                },
                "LastName": {
                    "target": "com.amazonaws.alexaforbusiness#user_LastName",
                    "traits": {
                        "smithy.api#documentation": "<p>The last name for the user.</p>"
                    }
                },
                "Email": {
                    "target": "com.amazonaws.alexaforbusiness#Email",
                    "traits": {
                        "smithy.api#documentation": "<p>The email address for the user.</p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>A unique, user-specified identifier for this request that ensures idempotency.\n      </p>",
                        "smithy.api#idempotencyToken": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags for the user.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CreateUserResponse": {
            "type": "structure",
            "members": {
                "UserArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly created user in the response.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#CurrentWiFiPassword": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 5,
                    "max": 128
                },
                "smithy.api#pattern": "[\\x00-\\x7F]*",
                "smithy.api#sensitive": {}
            }
        },
        "com.amazonaws.alexaforbusiness#CustomerS3BucketName": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "[a-z0-9-\\.]{3,63}"
            }
        },
        "com.amazonaws.alexaforbusiness#Date": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "^\\d{4}\\-(0?[1-9]|1[012])\\-(0?[1-9]|[12][0-9]|3[01])$"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteAddressBook": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteAddressBookRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteAddressBookResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes an address book by the address book ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteAddressBookRequest": {
            "type": "structure",
            "members": {
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the address book to delete.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteAddressBookResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteBusinessReportSchedule": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteBusinessReportScheduleRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteBusinessReportScheduleResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes the recurring report delivery schedule with the specified schedule\n         ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteBusinessReportScheduleRequest": {
            "type": "structure",
            "members": {
                "ScheduleArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the business report schedule.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteBusinessReportScheduleResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteConferenceProvider": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteConferenceProviderRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteConferenceProviderResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes a conference provider.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteConferenceProviderRequest": {
            "type": "structure",
            "members": {
                "ConferenceProviderArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the conference provider.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteConferenceProviderResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteContact": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteContactRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteContactResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes a contact by the contact ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteContactRequest": {
            "type": "structure",
            "members": {
                "ContactArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the contact to delete.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteContactResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteDevice": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteDeviceRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteDeviceResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#InvalidCertificateAuthorityException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Removes a device from Alexa For Business.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteDeviceRequest": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the device for which to request details.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteDeviceResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteDeviceUsageData": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteDeviceUsageDataRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteDeviceUsageDataResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>When this action is called for a specified shared device, it allows authorized users to\n         delete the device's entire previous history of voice input data and associated response\n         data. This action can be called once every 24 hours for a specific shared device.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteDeviceUsageDataRequest": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the device.</p>",
                        "smithy.api#required": {}
                    }
                },
                "DeviceUsageType": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceUsageType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of usage data to delete.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteDeviceUsageDataResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteGatewayGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteGatewayGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteGatewayGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ResourceAssociatedException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes a gateway group.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteGatewayGroupRequest": {
            "type": "structure",
            "members": {
                "GatewayGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway group to delete.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteGatewayGroupResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteNetworkProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteNetworkProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteNetworkProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#ResourceInUseException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes a network profile by the network profile ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteNetworkProfileRequest": {
            "type": "structure",
            "members": {
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile associated with a device.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteNetworkProfileResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes a room profile by the profile ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteProfileRequest": {
            "type": "structure",
            "members": {
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room profile to delete. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteProfileResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes a room by the room ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteRoomRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room to delete. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteRoomResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteRoomSkillParameter": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteRoomSkillParameterRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteRoomSkillParameterResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes room skill parameter details by room, skill, and parameter key ID.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteRoomSkillParameterRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room from which to remove the room skill parameter details.</p>"
                    }
                },
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ID of the skill from which to remove the room skill parameter details.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ParameterKey": {
                    "target": "com.amazonaws.alexaforbusiness#RoomSkillParameterKey",
                    "traits": {
                        "smithy.api#documentation": "<p>The room skill parameter key for which to remove details.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteRoomSkillParameterResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteSkillAuthorization": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteSkillAuthorizationRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteSkillAuthorizationResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Unlinks a third-party account from a skill.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteSkillAuthorizationRequest": {
            "type": "structure",
            "members": {
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The unique identifier of a skill.</p>",
                        "smithy.api#required": {}
                    }
                },
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The room that the skill is authorized for.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteSkillAuthorizationResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteSkillGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteSkillGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteSkillGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes a skill group by skill group ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteSkillGroupRequest": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill group to delete. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteSkillGroupResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeleteUser": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DeleteUserRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DeleteUserResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Deletes a specified user by user ARN and enrollment ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteUserRequest": {
            "type": "structure",
            "members": {
                "UserArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the user to delete in the organization. Required.</p>"
                    }
                },
                "EnrollmentId": {
                    "target": "com.amazonaws.alexaforbusiness#EnrollmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the user's enrollment in the organization. Required.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeleteUserResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DeveloperInfo": {
            "type": "structure",
            "members": {
                "DeveloperName": {
                    "target": "com.amazonaws.alexaforbusiness#DeveloperName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the developer.</p>"
                    }
                },
                "PrivacyPolicy": {
                    "target": "com.amazonaws.alexaforbusiness#PrivacyPolicy",
                    "traits": {
                        "smithy.api#documentation": "<p>The URL of the privacy policy.</p>"
                    }
                },
                "Email": {
                    "target": "com.amazonaws.alexaforbusiness#Email",
                    "traits": {
                        "smithy.api#documentation": "<p>The email of the developer.</p>"
                    }
                },
                "Url": {
                    "target": "com.amazonaws.alexaforbusiness#Url",
                    "traits": {
                        "smithy.api#documentation": "<p>The website of the developer.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The details about the developer that published the skill.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeveloperName": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#Device": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a device.</p>"
                    }
                },
                "DeviceSerialNumber": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceSerialNumber",
                    "traits": {
                        "smithy.api#documentation": "<p>The serial number of a device.</p>"
                    }
                },
                "DeviceType": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of a device.</p>"
                    }
                },
                "DeviceName": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of a device.</p>"
                    }
                },
                "SoftwareVersion": {
                    "target": "com.amazonaws.alexaforbusiness#SoftwareVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The software version of a device.</p>"
                    }
                },
                "MacAddress": {
                    "target": "com.amazonaws.alexaforbusiness#MacAddress",
                    "traits": {
                        "smithy.api#documentation": "<p>The MAC address of a device.</p>"
                    }
                },
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The room ARN of a device.</p>"
                    }
                },
                "DeviceStatus": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of a device. If the status is not READY, check the DeviceStatusInfo value\n         for details.</p>"
                    }
                },
                "DeviceStatusInfo": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceStatusInfo",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about a device's status.</p>"
                    }
                },
                "NetworkProfileInfo": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceNetworkProfileInfo",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about a device's network profile.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A device with attributes.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceData": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a device.</p>"
                    }
                },
                "DeviceSerialNumber": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceSerialNumber",
                    "traits": {
                        "smithy.api#documentation": "<p>The serial number of a device.</p>"
                    }
                },
                "DeviceType": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of a device.</p>"
                    }
                },
                "DeviceName": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of a device.</p>"
                    }
                },
                "SoftwareVersion": {
                    "target": "com.amazonaws.alexaforbusiness#SoftwareVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The software version of a device.</p>"
                    }
                },
                "MacAddress": {
                    "target": "com.amazonaws.alexaforbusiness#MacAddress",
                    "traits": {
                        "smithy.api#documentation": "<p>The MAC address of a device.</p>"
                    }
                },
                "DeviceStatus": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The status of a device.</p>"
                    }
                },
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile associated with a device.</p>"
                    }
                },
                "NetworkProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the network profile associated with a device.</p>"
                    }
                },
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The room ARN associated with a device.</p>"
                    }
                },
                "RoomName": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceRoomName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the room associated with a device.</p>"
                    }
                },
                "DeviceStatusInfo": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceStatusInfo",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about a device's status.</p>"
                    }
                },
                "CreatedTime": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceDataCreatedTime",
                    "traits": {
                        "smithy.api#documentation": "<p>The time (in epoch) when the device data was created.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Device attributes.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceDataCreatedTime": {
            "type": "timestamp"
        },
        "com.amazonaws.alexaforbusiness#DeviceDataList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#DeviceData"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceEvent": {
            "type": "structure",
            "members": {
                "Type": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceEventType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of device event.</p>"
                    }
                },
                "Value": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceEventValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The value of the event.</p>"
                    }
                },
                "Timestamp": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceEventTime",
                    "traits": {
                        "smithy.api#documentation": "<p>The time (in epoch) when the event occurred. </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The list of device events.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceEventList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#DeviceEvent"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceEventTime": {
            "type": "timestamp"
        },
        "com.amazonaws.alexaforbusiness#DeviceEventType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "CONNECTION_STATUS",
                        "name": "CONNECTION_STATUS"
                    },
                    {
                        "value": "DEVICE_STATUS",
                        "name": "DEVICE_STATUS"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceEventValue": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#DeviceLocale": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 256
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 2,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceNetworkProfileInfo": {
            "type": "structure",
            "members": {
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile associated with a device.</p>"
                    }
                },
                "CertificateArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the certificate associated with a device.</p>"
                    }
                },
                "CertificateExpirationTime": {
                    "target": "com.amazonaws.alexaforbusiness#CertificateTime",
                    "traits": {
                        "smithy.api#documentation": "<p>The time (in epoch) when the certificate expires.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Detailed information about a device's network profile.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The request failed because this device is no longer registered and therefore no longer managed by this account.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceRoomName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceSerialNumber": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "[a-zA-Z0-9]{1,200}"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceSerialNumberForAVS": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "^[a-zA-Z0-9]{1,50}$"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "READY",
                        "name": "READY"
                    },
                    {
                        "value": "PENDING",
                        "name": "PENDING"
                    },
                    {
                        "value": "WAS_OFFLINE",
                        "name": "WAS_OFFLINE"
                    },
                    {
                        "value": "DEREGISTERED",
                        "name": "DEREGISTERED"
                    },
                    {
                        "value": "FAILED",
                        "name": "FAILED"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceStatusDetail": {
            "type": "structure",
            "members": {
                "Feature": {
                    "target": "com.amazonaws.alexaforbusiness#Feature",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of available features on the device.</p>"
                    }
                },
                "Code": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceStatusDetailCode",
                    "traits": {
                        "smithy.api#documentation": "<p>The device status detail code.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Details of a device’s status.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceStatusDetailCode": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "DEVICE_SOFTWARE_UPDATE_NEEDED",
                        "name": "DEVICE_SOFTWARE_UPDATE_NEEDED"
                    },
                    {
                        "value": "DEVICE_WAS_OFFLINE",
                        "name": "DEVICE_WAS_OFFLINE"
                    },
                    {
                        "value": "CREDENTIALS_ACCESS_FAILURE",
                        "name": "CREDENTIALS_ACCESS_FAILURE"
                    },
                    {
                        "value": "TLS_VERSION_MISMATCH",
                        "name": "TLS_VERSION_MISMATCH"
                    },
                    {
                        "value": "ASSOCIATION_REJECTION",
                        "name": "ASSOCIATION_REJECTION"
                    },
                    {
                        "value": "AUTHENTICATION_FAILURE",
                        "name": "AUTHENTICATION_FAILURE"
                    },
                    {
                        "value": "DHCP_FAILURE",
                        "name": "DHCP_FAILURE"
                    },
                    {
                        "value": "INTERNET_UNAVAILABLE",
                        "name": "INTERNET_UNAVAILABLE"
                    },
                    {
                        "value": "DNS_FAILURE",
                        "name": "DNS_FAILURE"
                    },
                    {
                        "value": "UNKNOWN_FAILURE",
                        "name": "UNKNOWN_FAILURE"
                    },
                    {
                        "value": "CERTIFICATE_ISSUING_LIMIT_EXCEEDED",
                        "name": "CERTIFICATE_ISSUING_LIMIT_EXCEEDED"
                    },
                    {
                        "value": "INVALID_CERTIFICATE_AUTHORITY",
                        "name": "INVALID_CERTIFICATE_AUTHORITY"
                    },
                    {
                        "value": "NETWORK_PROFILE_NOT_FOUND",
                        "name": "NETWORK_PROFILE_NOT_FOUND"
                    },
                    {
                        "value": "INVALID_PASSWORD_STATE",
                        "name": "INVALID_PASSWORD_STATE"
                    },
                    {
                        "value": "PASSWORD_NOT_FOUND",
                        "name": "PASSWORD_NOT_FOUND"
                    },
                    {
                        "value": "PASSWORD_MANAGER_ACCESS_DENIED",
                        "name": "PASSWORD_MANAGER_ACCESS_DENIED"
                    },
                    {
                        "value": "CERTIFICATE_AUTHORITY_ACCESS_DENIED",
                        "name": "CERTIFICATE_AUTHORITY_ACCESS_DENIED"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceStatusDetails": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#DeviceStatusDetail"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceStatusInfo": {
            "type": "structure",
            "members": {
                "DeviceStatusDetails": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceStatusDetails",
                    "traits": {
                        "smithy.api#documentation": "<p>One or more device status detail descriptions.</p>"
                    }
                },
                "ConnectionStatus": {
                    "target": "com.amazonaws.alexaforbusiness#ConnectionStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The latest available information about the connection status of a device. </p>"
                    }
                },
                "ConnectionStatusUpdatedTime": {
                    "target": "com.amazonaws.alexaforbusiness#ConnectionStatusUpdatedTime",
                    "traits": {
                        "smithy.api#documentation": "<p>The time (in epoch) when the device connection status changed.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Detailed information about a device's status.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceType": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "[a-zA-Z0-9]{1,200}"
            }
        },
        "com.amazonaws.alexaforbusiness#DeviceUsageType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "VOICE",
                        "name": "VOICE"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateContactFromAddressBook": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateContactFromAddressBookRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateContactFromAddressBookResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Disassociates a contact from a given address book.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateContactFromAddressBookRequest": {
            "type": "structure",
            "members": {
                "ContactArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the contact to disassociate from an address book.</p>",
                        "smithy.api#required": {}
                    }
                },
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the address from which to disassociate the contact.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateContactFromAddressBookResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DisassociateDeviceFromRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateDeviceFromRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateDeviceFromRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Disassociates a device from its current room. The device continues to be connected to\n         the Wi-Fi network and is still registered to the account. The device settings and skills\n         are removed from the room.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateDeviceFromRoomRequest": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the device to disassociate from a room. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateDeviceFromRoomResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillFromSkillGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateSkillFromSkillGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateSkillFromSkillGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Disassociates a skill from a skill group.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillFromSkillGroupRequest": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The unique identifier of a skill. Required.</p>"
                    }
                },
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a skill group to associate to a skill.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillFromSkillGroupResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillFromUsers": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateSkillFromUsersRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateSkillFromUsersResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Makes a private skill unavailable for enrolled users and prevents them from enabling it\n         on their devices.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillFromUsersRequest": {
            "type": "structure",
            "members": {
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p> The private skill ID you want to make unavailable for enrolled users.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillFromUsersResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillGroupFromRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateSkillGroupFromRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#DisassociateSkillGroupFromRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Disassociates a skill group from a specified room. This disables all skills in the\n         skill group on all devices in the room.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillGroupFromRoomRequest": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill group to disassociate from a room. Required.</p>"
                    }
                },
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room from which the skill group is to be disassociated.\n         Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#DisassociateSkillGroupFromRoomResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#DistanceUnit": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "METRIC",
                        "name": "METRIC"
                    },
                    {
                        "value": "IMPERIAL",
                        "name": "IMPERIAL"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#Email": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 128
                },
                "smithy.api#pattern": "([0-9a-zA-Z]([+-.\\w]*[0-9a-zA-Z])*@([0-9a-zA-Z]([-\\w]*[0-9a-zA-Z]+)*\\.)+[a-zA-Z]{2,9})"
            }
        },
        "com.amazonaws.alexaforbusiness#EnablementType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "ENABLED",
                        "name": "ENABLED"
                    },
                    {
                        "value": "PENDING",
                        "name": "PENDING"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#EnablementTypeFilter": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "ENABLED",
                        "name": "ENABLED"
                    },
                    {
                        "value": "PENDING",
                        "name": "PENDING"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#EndOfMeetingReminder": {
            "type": "structure",
            "members": {
                "ReminderAtMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#EndOfMeetingReminderMinutesList",
                    "traits": {
                        "smithy.api#documentation": "<p>A range of 3 to 15 minutes that determines when the reminder begins.</p>"
                    }
                },
                "ReminderType": {
                    "target": "com.amazonaws.alexaforbusiness#EndOfMeetingReminderType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of sound that users hear during the end of meeting reminder. </p>"
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether an end of meeting reminder is enabled or not.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Settings for the end of meeting reminder feature that are applied to a room profile. The\n         end of meeting reminder enables Alexa to remind users when a meeting is ending. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#EndOfMeetingReminderMinutesList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Minutes"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 1
                }
            }
        },
        "com.amazonaws.alexaforbusiness#EndOfMeetingReminderType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "ANNOUNCEMENT_TIME_CHECK",
                        "name": "ANNOUNCEMENT_TIME_CHECK"
                    },
                    {
                        "value": "ANNOUNCEMENT_VARIABLE_TIME_LEFT",
                        "name": "ANNOUNCEMENT_VARIABLE_TIME_LEFT"
                    },
                    {
                        "value": "CHIME",
                        "name": "CHIME"
                    },
                    {
                        "value": "KNOCK",
                        "name": "KNOCK"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#EndUserLicenseAgreement": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#Endpoint": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 256
                }
            }
        },
        "com.amazonaws.alexaforbusiness#EnrollmentId": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 128
                }
            }
        },
        "com.amazonaws.alexaforbusiness#EnrollmentStatus": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "INITIALIZED",
                        "name": "INITIALIZED"
                    },
                    {
                        "value": "PENDING",
                        "name": "PENDING"
                    },
                    {
                        "value": "REGISTERED",
                        "name": "REGISTERED"
                    },
                    {
                        "value": "DISASSOCIATING",
                        "name": "DISASSOCIATING"
                    },
                    {
                        "value": "DEREGISTERING",
                        "name": "DEREGISTERING"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#ErrorMessage": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#Feature": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "BLUETOOTH",
                        "name": "BLUETOOTH"
                    },
                    {
                        "value": "VOLUME",
                        "name": "VOLUME"
                    },
                    {
                        "value": "NOTIFICATIONS",
                        "name": "NOTIFICATIONS"
                    },
                    {
                        "value": "LISTS",
                        "name": "LISTS"
                    },
                    {
                        "value": "SKILLS",
                        "name": "SKILLS"
                    },
                    {
                        "value": "NETWORK_PROFILE",
                        "name": "NETWORK_PROFILE"
                    },
                    {
                        "value": "SETTINGS",
                        "name": "SETTINGS"
                    },
                    {
                        "value": "ALL",
                        "name": "ALL"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#Features": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Feature"
            }
        },
        "com.amazonaws.alexaforbusiness#Filter": {
            "type": "structure",
            "members": {
                "Key": {
                    "target": "com.amazonaws.alexaforbusiness#FilterKey",
                    "traits": {
                        "smithy.api#documentation": "<p>The key of a filter.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Values": {
                    "target": "com.amazonaws.alexaforbusiness#FilterValueList",
                    "traits": {
                        "smithy.api#documentation": "<p>The values of a filter.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A filter name and value pair that is used to return a more specific list of results.\n         Filters can be used to match a set of resources by various criteria.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#FilterKey": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 500
                }
            }
        },
        "com.amazonaws.alexaforbusiness#FilterList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Filter"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 25
                }
            }
        },
        "com.amazonaws.alexaforbusiness#FilterValue": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 500
                }
            }
        },
        "com.amazonaws.alexaforbusiness#FilterValueList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#FilterValue"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 50
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ForgetSmartHomeAppliances": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ForgetSmartHomeAppliancesRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ForgetSmartHomeAppliancesResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Forgets smart home appliances associated to a room.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ForgetSmartHomeAppliancesRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The room that the appliances are associated with.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ForgetSmartHomeAppliancesResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#Gateway": {
            "type": "structure",
            "members": {
                "Arn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway.</p>"
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the gateway.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the gateway.</p>"
                    }
                },
                "GatewayGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway group that the gateway is associated to.</p>"
                    }
                },
                "SoftwareVersion": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The software version of the gateway. The gateway automatically updates its software\n         version during normal operation.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The details of the gateway. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewayDescription": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 200
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewayGroup": {
            "type": "structure",
            "members": {
                "Arn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway group.</p>"
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the gateway group.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the gateway group.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The details of the gateway group.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewayGroupDescription": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 200
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GatewayGroupName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewayGroupSummaries": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#GatewayGroupSummary"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewayGroupSummary": {
            "type": "structure",
            "members": {
                "Arn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway group.</p>"
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the gateway group.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the gateway group.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The summary of a gateway group.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewayName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 253
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewaySummaries": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#GatewaySummary"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewaySummary": {
            "type": "structure",
            "members": {
                "Arn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway.</p>"
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the gateway.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the gateway.</p>"
                    }
                },
                "GatewayGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway group that the gateway is associated to.</p>"
                    }
                },
                "SoftwareVersion": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The software version of the gateway. The gateway automatically updates its software\n         version during normal operation.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The summary of a gateway.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GatewayVersion": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 50
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GenericKeyword": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#GenericKeywords": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#GenericKeyword"
            }
        },
        "com.amazonaws.alexaforbusiness#GetAddressBook": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetAddressBookRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetAddressBookResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets address the book details by the address book ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetAddressBookRequest": {
            "type": "structure",
            "members": {
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the address book for which to request details.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetAddressBookResponse": {
            "type": "structure",
            "members": {
                "AddressBook": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBook",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the requested address book.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetConferencePreference": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetConferencePreferenceRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetConferencePreferenceResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Retrieves the existing conference preferences.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetConferencePreferenceRequest": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#GetConferencePreferenceResponse": {
            "type": "structure",
            "members": {
                "Preference": {
                    "target": "com.amazonaws.alexaforbusiness#ConferencePreference",
                    "traits": {
                        "smithy.api#documentation": "<p>The conference preference.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetConferenceProvider": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetConferenceProviderRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetConferenceProviderResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets details about a specific conference provider.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetConferenceProviderRequest": {
            "type": "structure",
            "members": {
                "ConferenceProviderArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the newly created conference provider.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetConferenceProviderResponse": {
            "type": "structure",
            "members": {
                "ConferenceProvider": {
                    "target": "com.amazonaws.alexaforbusiness#ConferenceProvider",
                    "traits": {
                        "smithy.api#documentation": "<p>The conference provider.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetContact": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetContactRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetContactResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets the contact details by the contact ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetContactRequest": {
            "type": "structure",
            "members": {
                "ContactArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the contact for which to request details.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetContactResponse": {
            "type": "structure",
            "members": {
                "Contact": {
                    "target": "com.amazonaws.alexaforbusiness#Contact",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the requested contact.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetDevice": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetDeviceRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetDeviceResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets the details of a device by device ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetDeviceRequest": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the device for which to request details. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetDeviceResponse": {
            "type": "structure",
            "members": {
                "Device": {
                    "target": "com.amazonaws.alexaforbusiness#Device",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the device requested. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetGateway": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetGatewayRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetGatewayResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Retrieves the details of a gateway.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetGatewayGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetGatewayGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetGatewayGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Retrieves the details of a gateway group.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetGatewayGroupRequest": {
            "type": "structure",
            "members": {
                "GatewayGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway group to get.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetGatewayGroupResponse": {
            "type": "structure",
            "members": {
                "GatewayGroup": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroup"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetGatewayRequest": {
            "type": "structure",
            "members": {
                "GatewayArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway to get.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetGatewayResponse": {
            "type": "structure",
            "members": {
                "Gateway": {
                    "target": "com.amazonaws.alexaforbusiness#Gateway",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the gateway.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetInvitationConfiguration": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetInvitationConfigurationRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetInvitationConfigurationResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Retrieves the configured values for the user enrollment invitation email\n         template.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetInvitationConfigurationRequest": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#GetInvitationConfigurationResponse": {
            "type": "structure",
            "members": {
                "OrganizationName": {
                    "target": "com.amazonaws.alexaforbusiness#OrganizationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the organization sending the enrollment invite to a user.</p>"
                    }
                },
                "ContactEmail": {
                    "target": "com.amazonaws.alexaforbusiness#Email",
                    "traits": {
                        "smithy.api#documentation": "<p>The email ID of the organization or individual contact that the enrolled user can use.\n      </p>"
                    }
                },
                "PrivateSkillIds": {
                    "target": "com.amazonaws.alexaforbusiness#ShortSkillIdList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of private skill IDs that you want to recommend to the user to enable in the\n         invitation.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetNetworkProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetNetworkProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetNetworkProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#InvalidSecretsManagerResourceException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets the network profile details by the network profile ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetNetworkProfileRequest": {
            "type": "structure",
            "members": {
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile associated with a device.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetNetworkProfileResponse": {
            "type": "structure",
            "members": {
                "NetworkProfile": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfile",
                    "traits": {
                        "smithy.api#documentation": "<p>The network profile associated with a device.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets the details of a room profile by profile ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetProfileRequest": {
            "type": "structure",
            "members": {
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room profile for which to request details. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetProfileResponse": {
            "type": "structure",
            "members": {
                "Profile": {
                    "target": "com.amazonaws.alexaforbusiness#Profile",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the room profile requested. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets room details by room ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetRoomRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room for which to request details. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetRoomResponse": {
            "type": "structure",
            "members": {
                "Room": {
                    "target": "com.amazonaws.alexaforbusiness#Room",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the room requested.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetRoomSkillParameter": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetRoomSkillParameterRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetRoomSkillParameterResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets room skill parameter details by room, skill, and parameter key ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetRoomSkillParameterRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room from which to get the room skill parameter details. </p>"
                    }
                },
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill from which to get the room skill parameter details.\n         Required.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ParameterKey": {
                    "target": "com.amazonaws.alexaforbusiness#RoomSkillParameterKey",
                    "traits": {
                        "smithy.api#documentation": "<p>The room skill parameter key for which to get details. Required.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetRoomSkillParameterResponse": {
            "type": "structure",
            "members": {
                "RoomSkillParameter": {
                    "target": "com.amazonaws.alexaforbusiness#RoomSkillParameter",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the room skill parameter requested. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetSkillGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#GetSkillGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#GetSkillGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Gets skill group details by skill group ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#GetSkillGroupRequest": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill group for which to get details. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#GetSkillGroupResponse": {
            "type": "structure",
            "members": {
                "SkillGroup": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroup",
                    "traits": {
                        "smithy.api#documentation": "<p>The details of the skill group requested. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#IPDialIn": {
            "type": "structure",
            "members": {
                "Endpoint": {
                    "target": "com.amazonaws.alexaforbusiness#Endpoint",
                    "traits": {
                        "smithy.api#documentation": "<p>The IP address.</p>",
                        "smithy.api#required": {}
                    }
                },
                "CommsProtocol": {
                    "target": "com.amazonaws.alexaforbusiness#CommsProtocol",
                    "traits": {
                        "smithy.api#documentation": "<p>The protocol, including SIP, SIPS, and H323.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The IP endpoint and protocol for calling.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#IconUrl": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#InstantBooking": {
            "type": "structure",
            "members": {
                "DurationInMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#Minutes",
                    "traits": {
                        "smithy.api#documentation": "<p>Duration between 15 and 240 minutes at increments of 15 that determines how long to book\n         an available room when a meeting is started with Alexa. </p>"
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether instant booking is enabled or not.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Settings for the instant booking feature that are applied to a room profile. When users\n         start their meeting with Alexa, Alexa  automatically books the room for the configured\n         duration if the room is available.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#InvalidCertificateAuthorityException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The Certificate Authority can't issue or revoke a certificate.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#InvalidDeviceException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The device is in an invalid state.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#InvalidSecretsManagerResourceException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A password in SecretsManager is in an invalid state.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#InvalidServiceLinkedRoleStateException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The service linked role is locked for deletion. </p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#InvalidUserStatusException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The attempt to update a user is invalid due to the user's current status.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#InvocationPhrase": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#Key": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1
                }
            }
        },
        "com.amazonaws.alexaforbusiness#LimitExceededException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>You are performing an action that would put you beyond your account's limits.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#ListBusinessReportSchedules": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListBusinessReportSchedulesRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListBusinessReportSchedulesResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Lists the details of the schedules that a user configured. A download URL of the report associated with each schedule is returned every time this action is called. A new download URL is returned each time, and is valid for 24 hours.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListBusinessReportSchedulesRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token used to list the remaining schedules from the previous API call.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of schedules listed in the call.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListBusinessReportSchedulesResponse": {
            "type": "structure",
            "members": {
                "BusinessReportSchedules": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportScheduleList",
                    "traits": {
                        "smithy.api#documentation": "<p>The schedule of the reports.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token used to list the remaining schedules from the previous API call.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListConferenceProviders": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListConferenceProvidersRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListConferenceProvidersResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Lists conference providers under a specific AWS account.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListConferenceProvidersRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The tokens used for pagination.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of conference providers to be returned, per paginated\n         calls.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListConferenceProvidersResponse": {
            "type": "structure",
            "members": {
                "ConferenceProviders": {
                    "target": "com.amazonaws.alexaforbusiness#ConferenceProvidersList",
                    "traits": {
                        "smithy.api#documentation": "<p>The conference providers.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The tokens used for pagination.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListDeviceEvents": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListDeviceEventsRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListDeviceEventsResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Lists the device event history, including device connection status, for up to 30\n         days.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListDeviceEventsRequest": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a device.</p>",
                        "smithy.api#required": {}
                    }
                },
                "EventType": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceEventType",
                    "traits": {
                        "smithy.api#documentation": "<p>The event type to filter device events. If EventType isn't specified, this returns a\n         list of all device events in reverse chronological order. If EventType is specified, this\n         returns a list of device events for that EventType in reverse chronological order.\n      </p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response only includes\n         results beyond the token, up to the value specified by MaxResults. When the end of results\n         is reached, the response has a value of null.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. The default value is 50. If\n         more results exist than the specified MaxResults value, a token is included in the response\n         so that the remaining results can be retrieved. </p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListDeviceEventsResponse": {
            "type": "structure",
            "members": {
                "DeviceEvents": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceEventList",
                    "traits": {
                        "smithy.api#documentation": "<p>The device events requested for the device ARN.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListGatewayGroups": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListGatewayGroupsRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListGatewayGroupsResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Retrieves a list of gateway group summaries. Use GetGatewayGroup to retrieve details of\n         a specific gateway group.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListGatewayGroupsRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token used to paginate though multiple pages of gateway group summaries.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of gateway group summaries to return. The default is 50.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListGatewayGroupsResponse": {
            "type": "structure",
            "members": {
                "GatewayGroups": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupSummaries",
                    "traits": {
                        "smithy.api#documentation": "<p>The gateway groups in the list.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token used to paginate though multiple pages of gateway group summaries.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListGateways": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListGatewaysRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListGatewaysResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Retrieves a list of gateway summaries. Use GetGateway to retrieve details of a specific\n         gateway. An optional gateway group ARN can be provided to only retrieve gateway summaries\n         of gateways that are associated with that gateway group ARN.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListGatewaysRequest": {
            "type": "structure",
            "members": {
                "GatewayGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The gateway group ARN for which to list gateways.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token used to paginate though multiple pages of gateway summaries.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of gateway summaries to return. The default is 50.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListGatewaysResponse": {
            "type": "structure",
            "members": {
                "Gateways": {
                    "target": "com.amazonaws.alexaforbusiness#GatewaySummaries",
                    "traits": {
                        "smithy.api#documentation": "<p>The gateways in the list.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token used to paginate though multiple pages of gateway summaries.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkills": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListSkillsRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListSkillsResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Lists all enabled skills in a specific skill group.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkillsRequest": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill group for which to list enabled skills.</p>"
                    }
                },
                "EnablementType": {
                    "target": "com.amazonaws.alexaforbusiness#EnablementTypeFilter",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether the skill is enabled under the user's account.</p>"
                    }
                },
                "SkillType": {
                    "target": "com.amazonaws.alexaforbusiness#SkillTypeFilter",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether the skill is publicly available or is a private skill.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by <code>MaxResults</code>.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#SkillListMaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified <code>MaxResults</code> value, a token is included in the response so that\n         the remaining results can be retrieved.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkillsResponse": {
            "type": "structure",
            "members": {
                "SkillSummaries": {
                    "target": "com.amazonaws.alexaforbusiness#SkillSummaryList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of enabled skills requested. Required.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkillsStoreCategories": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListSkillsStoreCategoriesRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListSkillsStoreCategoriesResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Lists all categories in the Alexa skill store.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkillsStoreCategoriesRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The tokens used for pagination.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of categories returned, per paginated calls.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkillsStoreCategoriesResponse": {
            "type": "structure",
            "members": {
                "CategoryList": {
                    "target": "com.amazonaws.alexaforbusiness#CategoryList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of categories.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The tokens used for pagination.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkillsStoreSkillsByCategory": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListSkillsStoreSkillsByCategoryRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListSkillsStoreSkillsByCategoryResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Lists all skills in the Alexa skill store by category.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkillsStoreSkillsByCategoryRequest": {
            "type": "structure",
            "members": {
                "CategoryId": {
                    "target": "com.amazonaws.alexaforbusiness#CategoryId",
                    "traits": {
                        "smithy.api#documentation": "<p>The category ID for which the skills are being retrieved from the skill\n         store.</p>",
                        "smithy.api#required": {}
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The tokens used for pagination.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#SkillListMaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of skills returned per paginated calls.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSkillsStoreSkillsByCategoryResponse": {
            "type": "structure",
            "members": {
                "SkillsStoreSkills": {
                    "target": "com.amazonaws.alexaforbusiness#SkillsStoreSkillList",
                    "traits": {
                        "smithy.api#documentation": "<p>The skill store skills.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The tokens used for pagination.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSmartHomeAppliances": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListSmartHomeAppliancesRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListSmartHomeAppliancesResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Lists all of the smart home appliances associated with a room.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSmartHomeAppliancesRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The room that the appliances are associated with.</p>",
                        "smithy.api#required": {}
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of appliances to be returned, per paginated calls.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The tokens used for pagination.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListSmartHomeAppliancesResponse": {
            "type": "structure",
            "members": {
                "SmartHomeAppliances": {
                    "target": "com.amazonaws.alexaforbusiness#SmartHomeApplianceList",
                    "traits": {
                        "smithy.api#documentation": "<p>The smart home appliances.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The tokens used for pagination.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListTags": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ListTagsRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ListTagsResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Lists all tags for the specified resource.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListTagsRequest": {
            "type": "structure",
            "members": {
                "Arn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the specified resource for which to list tags.</p>",
                        "smithy.api#required": {}
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by <code>MaxResults</code>. </p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified <code>MaxResults</code> value, a token is included in the response so that\n         the remaining results can be retrieved.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ListTagsResponse": {
            "type": "structure",
            "members": {
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags requested for the specified resource.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#Locale": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "en-US",
                        "name": "en_US"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#MacAddress": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#MaxResults": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {},
                "smithy.api#range": {
                    "min": 1,
                    "max": 50
                }
            }
        },
        "com.amazonaws.alexaforbusiness#MaxVolumeLimit": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.alexaforbusiness#MeetingRoomConfiguration": {
            "type": "structure",
            "members": {
                "RoomUtilizationMetricsEnabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether room utilization metrics are enabled or not.</p>"
                    }
                },
                "EndOfMeetingReminder": {
                    "target": "com.amazonaws.alexaforbusiness#EndOfMeetingReminder",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings for the end of meeting reminder feature that are applied to a room profile. The\n         end of meeting reminder enables Alexa to remind users when a meeting is ending. </p>"
                    }
                },
                "InstantBooking": {
                    "target": "com.amazonaws.alexaforbusiness#InstantBooking",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings to automatically book the room if available for a configured duration when\n         joining a meeting with Alexa. </p>"
                    }
                },
                "RequireCheckIn": {
                    "target": "com.amazonaws.alexaforbusiness#RequireCheckIn",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings for requiring a check in when a room is reserved. Alexa can cancel a room\n         reservation if it's not checked into. This makes the room available for others. Users can\n         check in by joining the meeting with Alexa or an AVS device, or by saying “Alexa, check\n         in.” </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Meeting room settings of a room profile.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#MeetingSetting": {
            "type": "structure",
            "members": {
                "RequirePin": {
                    "target": "com.amazonaws.alexaforbusiness#RequirePin",
                    "traits": {
                        "smithy.api#documentation": "<p>The values that indicate whether the pin is always required.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The values that indicate whether a pin is always required (YES), never required (NO),\n            or OPTIONAL.</p>\n        <ul>\n            <li>\n                <p>If YES, Alexa will always ask for a meeting pin.</p>\n            </li>\n            <li>\n                <p>If NO, Alexa will never ask for a meeting pin.</p>\n            </li>\n            <li>\n                <p>If OPTIONAL, Alexa will ask if you have a meeting pin and if the customer responds\n                    with yes, it will ask for the meeting pin.</p>\n            </li>\n         </ul>"
            }
        },
        "com.amazonaws.alexaforbusiness#Minutes": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.alexaforbusiness#NameInUseException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The name sent in the request is already in use.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#NetworkEapMethod": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "EAP_TLS",
                        "name": "EAP_TLS"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#NetworkProfile": {
            "type": "structure",
            "members": {
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile associated with a device.</p>"
                    }
                },
                "NetworkProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the network profile associated with a device.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about a device's network profile.</p>"
                    }
                },
                "Ssid": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkSsid",
                    "traits": {
                        "smithy.api#documentation": "<p>The SSID of the Wi-Fi network.</p>"
                    }
                },
                "SecurityType": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkSecurityType",
                    "traits": {
                        "smithy.api#documentation": "<p>The security type of the Wi-Fi network. This can be WPA2_ENTERPRISE, WPA2_PSK, WPA_PSK,\n         WEP, or OPEN.</p>"
                    }
                },
                "EapMethod": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkEapMethod",
                    "traits": {
                        "smithy.api#documentation": "<p>The authentication standard that is used in the EAP framework. Currently, EAP_TLS is\n         supported. </p>"
                    }
                },
                "CurrentPassword": {
                    "target": "com.amazonaws.alexaforbusiness#CurrentWiFiPassword",
                    "traits": {
                        "smithy.api#documentation": "<p>The current password of the Wi-Fi network.</p>"
                    }
                },
                "NextPassword": {
                    "target": "com.amazonaws.alexaforbusiness#NextWiFiPassword",
                    "traits": {
                        "smithy.api#documentation": "<p>The next, or subsequent, password of the Wi-Fi network. This password is asynchronously\n         transmitted to the device and is used when the password of the network changes to\n         NextPassword. </p>"
                    }
                },
                "CertificateAuthorityArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the Private Certificate Authority (PCA) created in AWS Certificate Manager\n         (ACM). This is used to issue certificates to the devices. </p>"
                    }
                },
                "TrustAnchors": {
                    "target": "com.amazonaws.alexaforbusiness#TrustAnchorList",
                    "traits": {
                        "smithy.api#documentation": "<p>The root certificates of your authentication server, which is installed on your devices\n         and used to trust your authentication server during EAP negotiation.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The network profile associated with a device.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#NetworkProfileData": {
            "type": "structure",
            "members": {
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile associated with a device.</p>"
                    }
                },
                "NetworkProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the network profile associated with a device.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about a device's network profile.</p>"
                    }
                },
                "Ssid": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkSsid",
                    "traits": {
                        "smithy.api#documentation": "<p>The SSID of the Wi-Fi network.</p>"
                    }
                },
                "SecurityType": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkSecurityType",
                    "traits": {
                        "smithy.api#documentation": "<p>The security type of the Wi-Fi network. This can be WPA2_ENTERPRISE, WPA2_PSK, WPA_PSK,\n         WEP, or OPEN.</p>"
                    }
                },
                "EapMethod": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkEapMethod",
                    "traits": {
                        "smithy.api#documentation": "<p>The authentication standard that is used in the EAP framework. Currently, EAP_TLS is\n         supported.</p>"
                    }
                },
                "CertificateAuthorityArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the Private Certificate Authority (PCA) created in AWS Certificate Manager\n         (ACM). This is used to issue certificates to the devices.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The data associated with a network profile.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#NetworkProfileDataList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#NetworkProfileData"
            }
        },
        "com.amazonaws.alexaforbusiness#NetworkProfileDescription": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 200
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#NetworkProfileName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#NetworkSecurityType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "OPEN",
                        "name": "OPEN"
                    },
                    {
                        "value": "WEP",
                        "name": "WEP"
                    },
                    {
                        "value": "WPA_PSK",
                        "name": "WPA_PSK"
                    },
                    {
                        "value": "WPA2_PSK",
                        "name": "WPA2_PSK"
                    },
                    {
                        "value": "WPA2_ENTERPRISE",
                        "name": "WPA2_ENTERPRISE"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#NetworkSsid": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 32
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#NewInThisVersionBulletPoints": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#BulletPoint"
            }
        },
        "com.amazonaws.alexaforbusiness#NextToken": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 1100
                }
            }
        },
        "com.amazonaws.alexaforbusiness#NextWiFiPassword": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 128
                },
                "smithy.api#pattern": "(^$)|([\\x00-\\x7F]{5,})",
                "smithy.api#sensitive": {}
            }
        },
        "com.amazonaws.alexaforbusiness#NotFoundException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The resource is not found.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#OneClickIdDelay": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 2
                }
            }
        },
        "com.amazonaws.alexaforbusiness#OneClickPinDelay": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 2
                }
            }
        },
        "com.amazonaws.alexaforbusiness#OrganizationName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#OutboundPhoneNumber": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "\\d{10}"
            }
        },
        "com.amazonaws.alexaforbusiness#PSTNDialIn": {
            "type": "structure",
            "members": {
                "CountryCode": {
                    "target": "com.amazonaws.alexaforbusiness#CountryCode",
                    "traits": {
                        "smithy.api#documentation": "<p>The zip code.</p>",
                        "smithy.api#required": {}
                    }
                },
                "PhoneNumber": {
                    "target": "com.amazonaws.alexaforbusiness#OutboundPhoneNumber",
                    "traits": {
                        "smithy.api#documentation": "<p>The phone number to call to join the conference.</p>",
                        "smithy.api#required": {}
                    }
                },
                "OneClickIdDelay": {
                    "target": "com.amazonaws.alexaforbusiness#OneClickIdDelay",
                    "traits": {
                        "smithy.api#documentation": "<p>The delay duration before Alexa enters the conference ID with dual-tone multi-frequency (DTMF). Each number on the dial pad corresponds to a DTMF tone, which is how we send data over the telephone network.</p>",
                        "smithy.api#required": {}
                    }
                },
                "OneClickPinDelay": {
                    "target": "com.amazonaws.alexaforbusiness#OneClickPinDelay",
                    "traits": {
                        "smithy.api#documentation": "<p>The delay duration before Alexa enters the conference pin with dual-tone multi-frequency (DTMF). Each number on the dial pad corresponds to a DTMF tone, which is how we send data over the telephone network.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The information for public switched telephone network (PSTN) conferencing.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#PhoneNumber": {
            "type": "structure",
            "members": {
                "Number": {
                    "target": "com.amazonaws.alexaforbusiness#RawPhoneNumber",
                    "traits": {
                        "smithy.api#documentation": "<p>The raw value of the phone number.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Type": {
                    "target": "com.amazonaws.alexaforbusiness#PhoneNumberType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of the phone number.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The phone number for the contact containing the raw number and phone number type.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#PhoneNumberList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#PhoneNumber"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 3
                }
            }
        },
        "com.amazonaws.alexaforbusiness#PhoneNumberType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "MOBILE",
                        "name": "MOBILE"
                    },
                    {
                        "value": "WORK",
                        "name": "WORK"
                    },
                    {
                        "value": "HOME",
                        "name": "HOME"
                    }
                ],
                "smithy.api#sensitive": {}
            }
        },
        "com.amazonaws.alexaforbusiness#PrivacyPolicy": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#ProductDescription": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#ProductId": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "^[a-zA-Z0-9_]{1,256}$"
            }
        },
        "com.amazonaws.alexaforbusiness#Profile": {
            "type": "structure",
            "members": {
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a room profile.</p>"
                    }
                },
                "ProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#ProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of a room profile.</p>"
                    }
                },
                "IsDefault": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Retrieves if the profile is default or not.</p>"
                    }
                },
                "Address": {
                    "target": "com.amazonaws.alexaforbusiness#Address",
                    "traits": {
                        "smithy.api#documentation": "<p>The address of a room profile.</p>"
                    }
                },
                "Timezone": {
                    "target": "com.amazonaws.alexaforbusiness#Timezone",
                    "traits": {
                        "smithy.api#documentation": "<p>The time zone of a room profile.</p>"
                    }
                },
                "DistanceUnit": {
                    "target": "com.amazonaws.alexaforbusiness#DistanceUnit",
                    "traits": {
                        "smithy.api#documentation": "<p>The distance unit of a room profile.</p>"
                    }
                },
                "TemperatureUnit": {
                    "target": "com.amazonaws.alexaforbusiness#TemperatureUnit",
                    "traits": {
                        "smithy.api#documentation": "<p>The temperature unit of a room profile.</p>"
                    }
                },
                "WakeWord": {
                    "target": "com.amazonaws.alexaforbusiness#WakeWord",
                    "traits": {
                        "smithy.api#documentation": "<p>The wake word of a room profile.</p>"
                    }
                },
                "Locale": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceLocale",
                    "traits": {
                        "smithy.api#documentation": "<p>The locale of a room profile. (This is currently available only to a limited preview\n         audience.)</p>"
                    }
                },
                "SetupModeDisabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>The setup mode of a room profile.</p>"
                    }
                },
                "MaxVolumeLimit": {
                    "target": "com.amazonaws.alexaforbusiness#MaxVolumeLimit",
                    "traits": {
                        "smithy.api#documentation": "<p>The max volume limit of a room profile.</p>"
                    }
                },
                "PSTNEnabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>The PSTN setting of a room profile.</p>"
                    }
                },
                "DataRetentionOptIn": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether data retention of the profile is enabled.</p>"
                    }
                },
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the address book.</p>"
                    }
                },
                "MeetingRoomConfiguration": {
                    "target": "com.amazonaws.alexaforbusiness#MeetingRoomConfiguration",
                    "traits": {
                        "smithy.api#documentation": "<p>Meeting room settings of a room profile.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A room profile with attributes.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ProfileData": {
            "type": "structure",
            "members": {
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a room profile.</p>"
                    }
                },
                "ProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#ProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of a room profile.</p>"
                    }
                },
                "IsDefault": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Retrieves if the profile data is default or not.</p>"
                    }
                },
                "Address": {
                    "target": "com.amazonaws.alexaforbusiness#Address",
                    "traits": {
                        "smithy.api#documentation": "<p>The address of a room profile.</p>"
                    }
                },
                "Timezone": {
                    "target": "com.amazonaws.alexaforbusiness#Timezone",
                    "traits": {
                        "smithy.api#documentation": "<p>The time zone of a room profile.</p>"
                    }
                },
                "DistanceUnit": {
                    "target": "com.amazonaws.alexaforbusiness#DistanceUnit",
                    "traits": {
                        "smithy.api#documentation": "<p>The distance unit of a room profile.</p>"
                    }
                },
                "TemperatureUnit": {
                    "target": "com.amazonaws.alexaforbusiness#TemperatureUnit",
                    "traits": {
                        "smithy.api#documentation": "<p>The temperature unit of a room profile.</p>"
                    }
                },
                "WakeWord": {
                    "target": "com.amazonaws.alexaforbusiness#WakeWord",
                    "traits": {
                        "smithy.api#documentation": "<p>The wake word of a room profile.</p>"
                    }
                },
                "Locale": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceLocale",
                    "traits": {
                        "smithy.api#documentation": "<p>The locale of a room profile. (This is currently available only to a limited preview\n         audience.)</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The data of a room profile.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ProfileDataList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#ProfileData"
            }
        },
        "com.amazonaws.alexaforbusiness#ProfileName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#ProviderCalendarId": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 100
                }
            }
        },
        "com.amazonaws.alexaforbusiness#PutConferencePreference": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#PutConferencePreferenceRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#PutConferencePreferenceResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Sets the conference preferences on a specific conference provider at the account\n         level.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#PutConferencePreferenceRequest": {
            "type": "structure",
            "members": {
                "ConferencePreference": {
                    "target": "com.amazonaws.alexaforbusiness#ConferencePreference",
                    "traits": {
                        "smithy.api#documentation": "<p>The conference preference of a specific conference provider.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#PutConferencePreferenceResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#PutInvitationConfiguration": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#PutInvitationConfigurationRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#PutInvitationConfigurationResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Configures the email template for the user enrollment invitation with the specified\n         attributes.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#PutInvitationConfigurationRequest": {
            "type": "structure",
            "members": {
                "OrganizationName": {
                    "target": "com.amazonaws.alexaforbusiness#OrganizationName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the organization sending the enrollment invite to a user.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ContactEmail": {
                    "target": "com.amazonaws.alexaforbusiness#Email",
                    "traits": {
                        "smithy.api#documentation": "<p>The email ID of the organization or individual contact that the enrolled user can use.\n      </p>"
                    }
                },
                "PrivateSkillIds": {
                    "target": "com.amazonaws.alexaforbusiness#ShortSkillIdList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of private skill IDs that you want to recommend to the user to enable in the\n         invitation.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#PutInvitationConfigurationResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#PutRoomSkillParameter": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#PutRoomSkillParameterRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#PutRoomSkillParameterResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates room skill parameter details by room, skill, and parameter key ID. Not all\n         skills have a room skill parameter.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#PutRoomSkillParameterRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room associated with the room skill parameter. Required.</p>"
                    }
                },
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill associated with the room skill parameter. Required.</p>",
                        "smithy.api#required": {}
                    }
                },
                "RoomSkillParameter": {
                    "target": "com.amazonaws.alexaforbusiness#RoomSkillParameter",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated room skill parameter. Required.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#PutRoomSkillParameterResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#PutSkillAuthorization": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#PutSkillAuthorizationRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#PutSkillAuthorizationResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#UnauthorizedException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Links a user's account to a third-party skill provider. If this API operation is\n         called by an assumed IAM role, the skill being linked must be a private skill. Also, the\n         skill must be owned by the AWS account that assumed the IAM role.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#PutSkillAuthorizationRequest": {
            "type": "structure",
            "members": {
                "AuthorizationResult": {
                    "target": "com.amazonaws.alexaforbusiness#AuthorizationResult",
                    "traits": {
                        "smithy.api#documentation": "<p>The authorization result specific to OAUTH code grant output. \"Code” must be\n         populated in the AuthorizationResult map to establish the authorization.</p>",
                        "smithy.api#required": {}
                    }
                },
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The unique identifier of a skill.</p>",
                        "smithy.api#required": {}
                    }
                },
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The room that the skill is authorized for.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#PutSkillAuthorizationResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#RawPhoneNumber": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 50
                },
                "smithy.api#pattern": "^[\\+0-9\\#\\,\\(][\\+0-9\\-\\.\\/\\(\\)\\,\\#\\s]+$",
                "smithy.api#sensitive": {}
            }
        },
        "com.amazonaws.alexaforbusiness#RegisterAVSDevice": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#RegisterAVSDeviceRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#RegisterAVSDeviceResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#InvalidDeviceException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Registers an Alexa-enabled device built by an Original Equipment Manufacturer (OEM)\n         using Alexa Voice Service (AVS).</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#RegisterAVSDeviceRequest": {
            "type": "structure",
            "members": {
                "ClientId": {
                    "target": "com.amazonaws.alexaforbusiness#ClientId",
                    "traits": {
                        "smithy.api#documentation": "<p>The client ID of the OEM used for code-based linking authorization on an AVS\n         device.</p>",
                        "smithy.api#required": {}
                    }
                },
                "UserCode": {
                    "target": "com.amazonaws.alexaforbusiness#UserCode",
                    "traits": {
                        "smithy.api#documentation": "<p>The code that is obtained after your AVS device has made a POST request to LWA as a\n         part of the Device Authorization Request component of the OAuth code-based linking\n         specification.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ProductId": {
                    "target": "com.amazonaws.alexaforbusiness#ProductId",
                    "traits": {
                        "smithy.api#documentation": "<p>The product ID used to identify your AVS device during authorization.</p>",
                        "smithy.api#required": {}
                    }
                },
                "DeviceSerialNumber": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceSerialNumberForAVS",
                    "traits": {
                        "smithy.api#documentation": "<p>The key generated by the OEM that uniquely identifies a specified instance of your\n         AVS device.</p>"
                    }
                },
                "AmazonId": {
                    "target": "com.amazonaws.alexaforbusiness#AmazonId",
                    "traits": {
                        "smithy.api#documentation": "<p>The device type ID for your AVS device generated by Amazon when the OEM creates a new\n         product on Amazon's Developer Console.</p>",
                        "smithy.api#required": {}
                    }
                },
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The Amazon Resource Name (ARN) of the room with which to associate your AVS device.</p>"
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags to be added to the specified resource. Do not provide system tags.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#RegisterAVSDeviceResponse": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the device.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#RejectSkill": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#RejectSkillRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#RejectSkillResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Disassociates a skill from the organization under a user's AWS account. If the skill\n         is a private skill, it moves to an AcceptStatus of PENDING. Any private or public skill\n         that is rejected can be added later by calling the ApproveSkill API. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#RejectSkillRequest": {
            "type": "structure",
            "members": {
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The unique identifier of the skill.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#RejectSkillResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#ReleaseDate": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#RequireCheckIn": {
            "type": "structure",
            "members": {
                "ReleaseAfterMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#Minutes",
                    "traits": {
                        "smithy.api#documentation": "<p>Duration between 5 and 20 minutes to determine when to release the room if it's not checked into. </p>"
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether require check in is enabled or not.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Settings for the require check in feature that are applied to a room profile. Require check in allows a meeting room’s Alexa or AVS device to prompt the user to check in; otherwise, the room will be released. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#RequirePin": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "YES",
                        "name": "YES"
                    },
                    {
                        "value": "NO",
                        "name": "NO"
                    },
                    {
                        "value": "OPTIONAL",
                        "name": "OPTIONAL"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#ResolveRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#ResolveRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#ResolveRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Determines the details for the room from which a skill request was invoked. This\n         operation is used by skill developers.</p>\n         <p>To query ResolveRoom from an Alexa skill, the skill ID needs to be authorized. When\n         the skill is using an AWS Lambda function, the skill is automatically authorized when you\n         publish your skill as a private skill to your AWS account. Skills that are hosted using a\n         custom web service must be manually authorized. To get your skill authorized, contact AWS\n         Support with your AWS account ID that queries the ResolveRoom API and skill ID. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#ResolveRoomRequest": {
            "type": "structure",
            "members": {
                "UserId": {
                    "target": "com.amazonaws.alexaforbusiness#UserId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the user. Required.</p>",
                        "smithy.api#required": {}
                    }
                },
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill that was requested. Required.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ResolveRoomResponse": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room from which the skill request was invoked.</p>"
                    }
                },
                "RoomName": {
                    "target": "com.amazonaws.alexaforbusiness#RoomName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the room from which the skill request was invoked.</p>"
                    }
                },
                "RoomSkillParameters": {
                    "target": "com.amazonaws.alexaforbusiness#RoomSkillParameters",
                    "traits": {
                        "smithy.api#documentation": "<p>Response to get the room profile request. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#ResourceAssociatedException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Another resource is associated with the resource in the request.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#ResourceInUseException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The resource in the request is already in use.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#ReviewKey": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#ReviewValue": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#Reviews": {
            "type": "map",
            "key": {
                "target": "com.amazonaws.alexaforbusiness#ReviewKey"
            },
            "value": {
                "target": "com.amazonaws.alexaforbusiness#ReviewValue"
            }
        },
        "com.amazonaws.alexaforbusiness#RevokeInvitation": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#RevokeInvitationRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#RevokeInvitationResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Revokes an invitation and invalidates the enrollment URL.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#RevokeInvitationRequest": {
            "type": "structure",
            "members": {
                "UserArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the user for whom to revoke an enrollment invitation. Required.</p>"
                    }
                },
                "EnrollmentId": {
                    "target": "com.amazonaws.alexaforbusiness#EnrollmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the enrollment invitation to revoke. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#RevokeInvitationResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#Room": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a room.</p>"
                    }
                },
                "RoomName": {
                    "target": "com.amazonaws.alexaforbusiness#RoomName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of a room.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#RoomDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of a room.</p>"
                    }
                },
                "ProviderCalendarId": {
                    "target": "com.amazonaws.alexaforbusiness#ProviderCalendarId",
                    "traits": {
                        "smithy.api#documentation": "<p>The provider calendar ARN of a room.</p>"
                    }
                },
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The profile ARN of a room.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A room with attributes.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#RoomData": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a room.</p>"
                    }
                },
                "RoomName": {
                    "target": "com.amazonaws.alexaforbusiness#RoomName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of a room.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#RoomDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of a room.</p>"
                    }
                },
                "ProviderCalendarId": {
                    "target": "com.amazonaws.alexaforbusiness#ProviderCalendarId",
                    "traits": {
                        "smithy.api#documentation": "<p>The provider calendar ARN of a room.</p>"
                    }
                },
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The profile ARN of a room.</p>"
                    }
                },
                "ProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#ProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The profile name of a room.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The data of a room.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#RoomDataList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#RoomData"
            }
        },
        "com.amazonaws.alexaforbusiness#RoomDescription": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 200
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#RoomName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#RoomSkillParameter": {
            "type": "structure",
            "members": {
                "ParameterKey": {
                    "target": "com.amazonaws.alexaforbusiness#RoomSkillParameterKey",
                    "traits": {
                        "smithy.api#documentation": "<p>The parameter key of a room skill parameter. ParameterKey is an enumerated type that\n         only takes “DEFAULT” or “SCOPE” as valid values.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ParameterValue": {
                    "target": "com.amazonaws.alexaforbusiness#RoomSkillParameterValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The parameter value of a room skill parameter.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A skill parameter associated with a room.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#RoomSkillParameterKey": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 256
                }
            }
        },
        "com.amazonaws.alexaforbusiness#RoomSkillParameterValue": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 512
                }
            }
        },
        "com.amazonaws.alexaforbusiness#RoomSkillParameters": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#RoomSkillParameter"
            }
        },
        "com.amazonaws.alexaforbusiness#S3KeyPrefix": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 100
                },
                "smithy.api#pattern": "[A-Za-z0-9!_\\-\\.\\*'()/]*"
            }
        },
        "com.amazonaws.alexaforbusiness#SampleUtterances": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Utterance"
            }
        },
        "com.amazonaws.alexaforbusiness#SearchAddressBooks": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SearchAddressBooksRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SearchAddressBooksResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Searches address books and lists the ones that meet a set of filter and sort\n         criteria.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchAddressBooksRequest": {
            "type": "structure",
            "members": {
                "Filters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use to list a specified set of address books. The supported filter key\n         is AddressBookName.</p>"
                    }
                },
                "SortCriteria": {
                    "target": "com.amazonaws.alexaforbusiness#SortList",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort order to use in listing the specified set of address books. The supported\n         sort key is AddressBookName.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response only includes\n         results beyond the token, up to the value specified by MaxResults.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified MaxResults value, a token is included in the response so that the remaining\n         results can be retrieved.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchAddressBooksResponse": {
            "type": "structure",
            "members": {
                "AddressBooks": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookDataList",
                    "traits": {
                        "smithy.api#documentation": "<p>The address books that meet the specified set of filter criteria, in sort\n         order.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                },
                "TotalCount": {
                    "target": "com.amazonaws.alexaforbusiness#TotalCount",
                    "traits": {
                        "smithy.api#documentation": "<p>The total number of address books returned.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchContacts": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SearchContactsRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SearchContactsResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Searches contacts and lists the ones that meet a set of filter and sort\n         criteria.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchContactsRequest": {
            "type": "structure",
            "members": {
                "Filters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use to list a specified set of address books. The supported filter\n         keys are DisplayName, FirstName, LastName, and AddressBookArns.</p>"
                    }
                },
                "SortCriteria": {
                    "target": "com.amazonaws.alexaforbusiness#SortList",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort order to use in listing the specified set of contacts. The supported sort\n         keys are DisplayName, FirstName, and LastName.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response only includes\n         results beyond the token, up to the value specified by MaxResults.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified MaxResults value, a token is included in the response so that the remaining\n         results can be retrieved.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchContactsResponse": {
            "type": "structure",
            "members": {
                "Contacts": {
                    "target": "com.amazonaws.alexaforbusiness#ContactDataList",
                    "traits": {
                        "smithy.api#documentation": "<p>The contacts that meet the specified set of filter criteria, in sort order.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                },
                "TotalCount": {
                    "target": "com.amazonaws.alexaforbusiness#TotalCount",
                    "traits": {
                        "smithy.api#documentation": "<p>The total number of contacts returned.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchDevices": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SearchDevicesRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SearchDevicesResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Searches devices and lists the ones that meet a set of filter criteria.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchDevicesRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by <code>MaxResults</code>.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified <code>MaxResults</code> value, a token is included in the response so that\n         the remaining results can be retrieved.</p>"
                    }
                },
                "Filters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use to list a specified set of devices. Supported filter keys are\n         DeviceName, DeviceStatus, DeviceStatusDetailCode, RoomName, DeviceType, DeviceSerialNumber,\n         UnassociatedOnly, ConnectionStatus (ONLINE and OFFLINE), NetworkProfileName,\n         NetworkProfileArn, Feature, and FailureCode.</p>"
                    }
                },
                "SortCriteria": {
                    "target": "com.amazonaws.alexaforbusiness#SortList",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort order to use in listing the specified set of devices. Supported sort keys\n         are DeviceName, DeviceStatus, RoomName, DeviceType, DeviceSerialNumber, ConnectionStatus,\n         NetworkProfileName, NetworkProfileArn, Feature, and FailureCode.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchDevicesResponse": {
            "type": "structure",
            "members": {
                "Devices": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceDataList",
                    "traits": {
                        "smithy.api#documentation": "<p>The devices that meet the specified set of filter criteria, in sort order.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                },
                "TotalCount": {
                    "target": "com.amazonaws.alexaforbusiness#TotalCount",
                    "traits": {
                        "smithy.api#documentation": "<p>The total number of devices returned.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchNetworkProfiles": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SearchNetworkProfilesRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SearchNetworkProfilesResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Searches network profiles and lists the ones that meet a set of filter and sort\n         criteria.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchNetworkProfilesRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by MaxResults. </p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than the\n         specified MaxResults value, a token is included in the response so that the remaining\n         results can be retrieved. </p>"
                    }
                },
                "Filters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use to list a specified set of network profiles. Valid filters are\n         NetworkProfileName, Ssid, and SecurityType.</p>"
                    }
                },
                "SortCriteria": {
                    "target": "com.amazonaws.alexaforbusiness#SortList",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort order to use to list the specified set of network profiles. Valid sort criteria\n         includes NetworkProfileName, Ssid, and SecurityType.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchNetworkProfilesResponse": {
            "type": "structure",
            "members": {
                "NetworkProfiles": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileDataList",
                    "traits": {
                        "smithy.api#documentation": "<p>The network profiles that meet the specified set of filter criteria, in sort order. It\n         is a list of NetworkProfileData objects. </p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by MaxResults.</p>"
                    }
                },
                "TotalCount": {
                    "target": "com.amazonaws.alexaforbusiness#TotalCount",
                    "traits": {
                        "smithy.api#documentation": "<p>The total number of network profiles returned.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchProfiles": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SearchProfilesRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SearchProfilesResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Searches room profiles and lists the ones that meet a set of filter\n         criteria.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchProfilesRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by <code>MaxResults</code>.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified <code>MaxResults</code> value, a token is included in the response so that\n         the remaining results can be retrieved.</p>"
                    }
                },
                "Filters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use to list a specified set of room profiles. Supported filter keys\n         are ProfileName and Address. Required. </p>"
                    }
                },
                "SortCriteria": {
                    "target": "com.amazonaws.alexaforbusiness#SortList",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort order to use in listing the specified set of room profiles. Supported sort\n         keys are ProfileName and Address.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchProfilesResponse": {
            "type": "structure",
            "members": {
                "Profiles": {
                    "target": "com.amazonaws.alexaforbusiness#ProfileDataList",
                    "traits": {
                        "smithy.api#documentation": "<p>The profiles that meet the specified set of filter criteria, in sort order.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                },
                "TotalCount": {
                    "target": "com.amazonaws.alexaforbusiness#TotalCount",
                    "traits": {
                        "smithy.api#documentation": "<p>The total number of room profiles returned.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchRooms": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SearchRoomsRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SearchRoomsResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Searches rooms and lists the ones that meet a set of filter and sort\n         criteria.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchRoomsRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by <code>MaxResults</code>.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified <code>MaxResults</code> value, a token is included in the response so that\n         the remaining results can be retrieved. </p>"
                    }
                },
                "Filters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use to list a specified set of rooms. The supported filter keys are\n         RoomName and ProfileName.</p>"
                    }
                },
                "SortCriteria": {
                    "target": "com.amazonaws.alexaforbusiness#SortList",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort order to use in listing the specified set of rooms. The supported sort keys\n         are RoomName and ProfileName.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchRoomsResponse": {
            "type": "structure",
            "members": {
                "Rooms": {
                    "target": "com.amazonaws.alexaforbusiness#RoomDataList",
                    "traits": {
                        "smithy.api#documentation": "<p>The rooms that meet the specified set of filter criteria, in sort order.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                },
                "TotalCount": {
                    "target": "com.amazonaws.alexaforbusiness#TotalCount",
                    "traits": {
                        "smithy.api#documentation": "<p>The total number of rooms returned.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchSkillGroups": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SearchSkillGroupsRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SearchSkillGroupsResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Searches skill groups and lists the ones that meet a set of filter and sort\n         criteria.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchSkillGroupsRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by <code>MaxResults</code>.\n         Required.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified <code>MaxResults</code> value, a token is included in the response so that\n         the remaining results can be retrieved. </p>"
                    }
                },
                "Filters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use to list a specified set of skill groups. The supported filter key\n         is SkillGroupName. </p>"
                    }
                },
                "SortCriteria": {
                    "target": "com.amazonaws.alexaforbusiness#SortList",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort order to use in listing the specified set of skill groups. The supported\n         sort key is SkillGroupName. </p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchSkillGroupsResponse": {
            "type": "structure",
            "members": {
                "SkillGroups": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupDataList",
                    "traits": {
                        "smithy.api#documentation": "<p>The skill groups that meet the filter criteria, in sort order.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                },
                "TotalCount": {
                    "target": "com.amazonaws.alexaforbusiness#TotalCount",
                    "traits": {
                        "smithy.api#documentation": "<p>The total number of skill groups returned.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchUsers": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SearchUsersRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SearchUsersResponse"
            },
            "traits": {
                "smithy.api#documentation": "<p>Searches users and lists the ones that meet a set of filter and sort\n         criteria.</p>",
                "smithy.api#paginated": {
                    "inputToken": "NextToken",
                    "outputToken": "NextToken",
                    "pageSize": "MaxResults"
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchUsersRequest": {
            "type": "structure",
            "members": {
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>An optional token returned from a prior request. Use this token for pagination of\n         results from this action. If this parameter is specified, the response includes only\n         results beyond the token, up to the value specified by <code>MaxResults</code>.\n         Required.</p>"
                    }
                },
                "MaxResults": {
                    "target": "com.amazonaws.alexaforbusiness#MaxResults",
                    "traits": {
                        "smithy.api#documentation": "<p>The maximum number of results to include in the response. If more results exist than\n         the specified <code>MaxResults</code> value, a token is included in the response so that\n         the remaining results can be retrieved. Required.</p>"
                    }
                },
                "Filters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use for listing a specific set of users. Required. Supported filter\n         keys are UserId, FirstName, LastName, Email, and EnrollmentStatus.</p>"
                    }
                },
                "SortCriteria": {
                    "target": "com.amazonaws.alexaforbusiness#SortList",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort order to use in listing the filtered set of users. Required. Supported sort\n         keys are UserId, FirstName, LastName, Email, and EnrollmentStatus.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SearchUsersResponse": {
            "type": "structure",
            "members": {
                "Users": {
                    "target": "com.amazonaws.alexaforbusiness#UserDataList",
                    "traits": {
                        "smithy.api#documentation": "<p>The users that meet the specified set of filter criteria, in sort order.</p>"
                    }
                },
                "NextToken": {
                    "target": "com.amazonaws.alexaforbusiness#NextToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The token returned to indicate that there is more data available.</p>"
                    }
                },
                "TotalCount": {
                    "target": "com.amazonaws.alexaforbusiness#TotalCount",
                    "traits": {
                        "smithy.api#documentation": "<p>The total number of users returned.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SendAnnouncement": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SendAnnouncementRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SendAnnouncementResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#AlreadyExistsException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#LimitExceededException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Triggers an asynchronous flow to send text, SSML, or audio announcements to rooms that\n         are identified by a search or filter. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SendAnnouncementRequest": {
            "type": "structure",
            "members": {
                "RoomFilters": {
                    "target": "com.amazonaws.alexaforbusiness#FilterList",
                    "traits": {
                        "smithy.api#documentation": "<p>The filters to use to send an announcement to a specified list of rooms. The supported filter keys are RoomName, ProfileName, RoomArn, and ProfileArn. To send to all rooms, specify an empty RoomFilters list.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Content": {
                    "target": "com.amazonaws.alexaforbusiness#Content",
                    "traits": {
                        "smithy.api#documentation": "<p>The announcement content. This can contain only one of the three possible announcement types (text, SSML or audio).</p>",
                        "smithy.api#required": {}
                    }
                },
                "TimeToLiveInSeconds": {
                    "target": "com.amazonaws.alexaforbusiness#TimeToLiveInSeconds",
                    "traits": {
                        "smithy.api#documentation": "<p>The time to live for an announcement. Default is 300. If delivery doesn't occur within this time, the\n         announcement is not delivered.</p>"
                    }
                },
                "ClientRequestToken": {
                    "target": "com.amazonaws.alexaforbusiness#ClientRequestToken",
                    "traits": {
                        "smithy.api#documentation": "<p>The unique, user-specified identifier for the request that ensures idempotency.</p>",
                        "smithy.api#idempotencyToken": {},
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SendAnnouncementResponse": {
            "type": "structure",
            "members": {
                "AnnouncementArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The identifier of the announcement.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SendInvitation": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#SendInvitationRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#SendInvitationResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#InvalidUserStatusException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Sends an enrollment invitation email with a URL to a user. The URL is valid for 30\n         days or until you call this operation again, whichever comes first. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SendInvitationRequest": {
            "type": "structure",
            "members": {
                "UserArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the user to whom to send an invitation. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SendInvitationResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#ShortDescription": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#ShortSkillIdList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#SkillId"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 3
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SipAddress": {
            "type": "structure",
            "members": {
                "Uri": {
                    "target": "com.amazonaws.alexaforbusiness#SipUri",
                    "traits": {
                        "smithy.api#documentation": "<p>The URI for the SIP address.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Type": {
                    "target": "com.amazonaws.alexaforbusiness#SipType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of the SIP address.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The SIP address for the contact containing the URI and SIP address type.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SipAddressList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#SipAddress"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 1
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SipType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "WORK",
                        "name": "WORK"
                    }
                ],
                "smithy.api#sensitive": {}
            }
        },
        "com.amazonaws.alexaforbusiness#SipUri": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 256
                },
                "smithy.api#pattern": "^sip[s]?:([^@:]+)\\@([^@]+)$",
                "smithy.api#sensitive": {}
            }
        },
        "com.amazonaws.alexaforbusiness#SkillDetails": {
            "type": "structure",
            "members": {
                "ProductDescription": {
                    "target": "com.amazonaws.alexaforbusiness#ProductDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the product.</p>"
                    }
                },
                "InvocationPhrase": {
                    "target": "com.amazonaws.alexaforbusiness#InvocationPhrase",
                    "traits": {
                        "smithy.api#documentation": "<p>The phrase used to trigger the skill.</p>"
                    }
                },
                "ReleaseDate": {
                    "target": "com.amazonaws.alexaforbusiness#ReleaseDate",
                    "traits": {
                        "smithy.api#documentation": "<p>The date when the skill was released.</p>"
                    }
                },
                "EndUserLicenseAgreement": {
                    "target": "com.amazonaws.alexaforbusiness#EndUserLicenseAgreement",
                    "traits": {
                        "smithy.api#documentation": "<p>The URL of the end user license agreement.</p>"
                    }
                },
                "GenericKeywords": {
                    "target": "com.amazonaws.alexaforbusiness#GenericKeywords",
                    "traits": {
                        "smithy.api#documentation": "<p>The generic keywords associated with the skill that can be used to find a\n         skill.</p>"
                    }
                },
                "BulletPoints": {
                    "target": "com.amazonaws.alexaforbusiness#BulletPoints",
                    "traits": {
                        "smithy.api#documentation": "<p>The details about what the skill supports organized as bullet points.</p>"
                    }
                },
                "NewInThisVersionBulletPoints": {
                    "target": "com.amazonaws.alexaforbusiness#NewInThisVersionBulletPoints",
                    "traits": {
                        "smithy.api#documentation": "<p>The updates added in bullet points.</p>"
                    }
                },
                "SkillTypes": {
                    "target": "com.amazonaws.alexaforbusiness#SkillTypes",
                    "traits": {
                        "smithy.api#documentation": "<p>The types of skills.</p>"
                    }
                },
                "Reviews": {
                    "target": "com.amazonaws.alexaforbusiness#Reviews",
                    "traits": {
                        "smithy.api#documentation": "<p>\n            <i>This member has been deprecated.</i>\n         </p>\n         <p>The list of reviews for the skill, including Key and Value pair.</p>"
                    }
                },
                "DeveloperInfo": {
                    "target": "com.amazonaws.alexaforbusiness#DeveloperInfo",
                    "traits": {
                        "smithy.api#documentation": "<p>The details about the developer that published the skill.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Granular information about the skill.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillGroup": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a skill group.</p>"
                    }
                },
                "SkillGroupName": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of a skill group.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of a skill group.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A skill group with attributes.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillGroupData": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The skill group ARN of a skill group.</p>"
                    }
                },
                "SkillGroupName": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The skill group name of a skill group.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of a skill group.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The attributes of a skill group.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillGroupDataList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#SkillGroupData"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillGroupDescription": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 200
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillGroupName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillId": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "(^amzn1\\.ask\\.skill\\.[0-9a-f\\-]{1,200})|(^amzn1\\.echo-sdk-ams\\.app\\.[0-9a-f\\-]{1,200})"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillListMaxResults": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {},
                "smithy.api#range": {
                    "min": 1,
                    "max": 10
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SkillName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillNotLinkedException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The skill must be linked to a third-party account.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillStoreType": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#SkillSummary": {
            "type": "structure",
            "members": {
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill summary.</p>"
                    }
                },
                "SkillName": {
                    "target": "com.amazonaws.alexaforbusiness#SkillName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the skill.</p>"
                    }
                },
                "SupportsLinking": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean2",
                    "traits": {
                        "smithy.api#documentation": "<p>Linking support for a skill.</p>"
                    }
                },
                "EnablementType": {
                    "target": "com.amazonaws.alexaforbusiness#EnablementType",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether the skill is enabled under the user's account, or if it requires linking to be\n         used.</p>"
                    }
                },
                "SkillType": {
                    "target": "com.amazonaws.alexaforbusiness#SkillType",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether the skill is publicly available or is a private skill.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The summary of skills.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillSummaryList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#SkillSummary"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillType": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "PUBLIC",
                        "name": "PUBLIC"
                    },
                    {
                        "value": "PRIVATE",
                        "name": "PRIVATE"
                    }
                ],
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                },
                "smithy.api#pattern": "[a-zA-Z0-9][a-zA-Z0-9_-]*"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillTypeFilter": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "PUBLIC",
                        "name": "PUBLIC"
                    },
                    {
                        "value": "PRIVATE",
                        "name": "PRIVATE"
                    },
                    {
                        "value": "ALL",
                        "name": "ALL"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#SkillTypes": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#SkillStoreType"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillsStoreSkill": {
            "type": "structure",
            "members": {
                "SkillId": {
                    "target": "com.amazonaws.alexaforbusiness#SkillId",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill.</p>"
                    }
                },
                "SkillName": {
                    "target": "com.amazonaws.alexaforbusiness#SkillName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the skill.</p>"
                    }
                },
                "ShortDescription": {
                    "target": "com.amazonaws.alexaforbusiness#ShortDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>Short description about the skill.</p>"
                    }
                },
                "IconUrl": {
                    "target": "com.amazonaws.alexaforbusiness#IconUrl",
                    "traits": {
                        "smithy.api#documentation": "<p>The URL where the skill icon resides.</p>"
                    }
                },
                "SampleUtterances": {
                    "target": "com.amazonaws.alexaforbusiness#SampleUtterances",
                    "traits": {
                        "smithy.api#documentation": "<p>Sample utterances that interact with the skill.</p>"
                    }
                },
                "SkillDetails": {
                    "target": "com.amazonaws.alexaforbusiness#SkillDetails",
                    "traits": {
                        "smithy.api#documentation": "<p>Information about the skill.</p>"
                    }
                },
                "SupportsLinking": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean2",
                    "traits": {
                        "smithy.api#documentation": "<p>Linking support for a skill.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The detailed information about an Alexa skill.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SkillsStoreSkillList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#SkillsStoreSkill"
            }
        },
        "com.amazonaws.alexaforbusiness#SmartHomeAppliance": {
            "type": "structure",
            "members": {
                "FriendlyName": {
                    "target": "com.amazonaws.alexaforbusiness#ApplianceFriendlyName",
                    "traits": {
                        "smithy.api#documentation": "<p>The friendly name of the smart home appliance.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#ApplianceDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The description of the smart home appliance.</p>"
                    }
                },
                "ManufacturerName": {
                    "target": "com.amazonaws.alexaforbusiness#ApplianceManufacturerName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the manufacturer of the smart home appliance.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A smart home appliance that can connect to a central system. Any domestic device can be\n         a smart appliance. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SmartHomeApplianceList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#SmartHomeAppliance"
            }
        },
        "com.amazonaws.alexaforbusiness#SoftwareVersion": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#Sort": {
            "type": "structure",
            "members": {
                "Key": {
                    "target": "com.amazonaws.alexaforbusiness#SortKey",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort key of a sort object.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Value": {
                    "target": "com.amazonaws.alexaforbusiness#SortValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The sort value of a sort object.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>An object representing a sort criteria. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SortKey": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 500
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SortList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Sort"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 25
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SortValue": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "ASC",
                        "name": "ASC"
                    },
                    {
                        "value": "DESC",
                        "name": "DESC"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#Ssml": {
            "type": "structure",
            "members": {
                "Locale": {
                    "target": "com.amazonaws.alexaforbusiness#Locale",
                    "traits": {
                        "smithy.api#documentation": "<p>The locale of the SSML message. Currently, en-US is supported.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Value": {
                    "target": "com.amazonaws.alexaforbusiness#SsmlValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The value of the SSML message in the correct SSML format. The audio tag is not supported.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The SSML message. For more information, see <a href=\"https://developer.amazon.com/docs/custom-skills/speech-synthesis-markup-language-ssml-reference.html\">SSML Reference</a>.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#SsmlList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Ssml"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 1
                }
            }
        },
        "com.amazonaws.alexaforbusiness#SsmlValue": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 4096
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#StartDeviceSync": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#StartDeviceSyncRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#StartDeviceSyncResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Resets a device and its account to the known default settings. This clears all\n         information and settings set by previous users in the following ways:</p>\n         <ul>\n            <li>\n               <p>Bluetooth - This unpairs all bluetooth devices paired with your echo\n               device.</p>\n            </li>\n            <li>\n               <p>Volume - This resets the echo device's volume to the default value.</p>\n            </li>\n            <li>\n               <p>Notifications - This clears all notifications from your echo device.</p>\n            </li>\n            <li>\n               <p>Lists - This clears all to-do items from your echo device.</p>\n            </li>\n            <li>\n               <p>Settings - This internally syncs the room's profile (if the device is assigned to\n               a room), contacts, address books, delegation access for account linking, and\n               communications (if enabled on the room profile).</p>\n            </li>\n         </ul>"
            }
        },
        "com.amazonaws.alexaforbusiness#StartDeviceSyncRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room with which the device to sync is associated. Required.</p>"
                    }
                },
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the device to sync. Required.</p>"
                    }
                },
                "Features": {
                    "target": "com.amazonaws.alexaforbusiness#Features",
                    "traits": {
                        "smithy.api#documentation": "<p>Request structure to start the device sync. Required.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#StartDeviceSyncResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#StartSmartHomeApplianceDiscovery": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#StartSmartHomeApplianceDiscoveryRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#StartSmartHomeApplianceDiscoveryResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Initiates the discovery of any smart home appliances associated with the\n         room.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#StartSmartHomeApplianceDiscoveryRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The room where smart home appliance discovery was initiated.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#StartSmartHomeApplianceDiscoveryResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#Tag": {
            "type": "structure",
            "members": {
                "Key": {
                    "target": "com.amazonaws.alexaforbusiness#TagKey",
                    "traits": {
                        "smithy.api#documentation": "<p>The key of a tag. Tag keys are case-sensitive. </p>",
                        "smithy.api#required": {}
                    }
                },
                "Value": {
                    "target": "com.amazonaws.alexaforbusiness#TagValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The value of a tag. Tag values are case sensitive and can be null.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>A key-value pair that can be associated with a resource. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#TagKey": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 128
                },
                "smithy.api#pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"
            }
        },
        "com.amazonaws.alexaforbusiness#TagKeyList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#TagKey"
            }
        },
        "com.amazonaws.alexaforbusiness#TagList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Tag"
            }
        },
        "com.amazonaws.alexaforbusiness#TagResource": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#TagResourceRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#TagResourceResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Adds metadata tags to a specified resource.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#TagResourceRequest": {
            "type": "structure",
            "members": {
                "Arn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the resource to which to add metadata tags. Required. </p>",
                        "smithy.api#required": {}
                    }
                },
                "Tags": {
                    "target": "com.amazonaws.alexaforbusiness#TagList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags to be added to the specified resource. Do not provide system tags. Required.\n      </p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#TagResourceResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#TagValue": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 256
                },
                "smithy.api#pattern": "^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-@]*)$"
            }
        },
        "com.amazonaws.alexaforbusiness#TemperatureUnit": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "FAHRENHEIT",
                        "name": "FAHRENHEIT"
                    },
                    {
                        "value": "CELSIUS",
                        "name": "CELSIUS"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#Text": {
            "type": "structure",
            "members": {
                "Locale": {
                    "target": "com.amazonaws.alexaforbusiness#Locale",
                    "traits": {
                        "smithy.api#documentation": "<p>The locale of the text message. Currently, en-US is supported.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Value": {
                    "target": "com.amazonaws.alexaforbusiness#TextValue",
                    "traits": {
                        "smithy.api#documentation": "<p>The value of the text message.</p>",
                        "smithy.api#required": {}
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The text message.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#TextList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#Text"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 1
                }
            }
        },
        "com.amazonaws.alexaforbusiness#TextValue": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 4096
                },
                "smithy.api#pattern": "[\\u0009\\u000A\\u000D\\u0020-\\u007E\\u0085\\u00A0-\\uD7FF\\uE000-\\uFFFD\\u10000-\\u10FFFF]*"
            }
        },
        "com.amazonaws.alexaforbusiness#TimeToLiveInSeconds": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {},
                "smithy.api#range": {
                    "min": 1,
                    "max": 3600
                }
            }
        },
        "com.amazonaws.alexaforbusiness#Timezone": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 100
                }
            }
        },
        "com.amazonaws.alexaforbusiness#TotalCount": {
            "type": "integer",
            "traits": {
                "smithy.api#box": {}
            }
        },
        "com.amazonaws.alexaforbusiness#TrustAnchor": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "-{5}BEGIN CERTIFICATE-{5}\\u000D?\\u000A([A-Za-z0-9/+]{64}\\u000D?\\u000A)*[A-Za-z0-9/+]{1,64}={0,2}\\u000D?\\u000A-{5}END CERTIFICATE-{5}(\\u000D?\\u000A)?"
            }
        },
        "com.amazonaws.alexaforbusiness#TrustAnchorList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#TrustAnchor"
            },
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 5
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UnauthorizedException": {
            "type": "structure",
            "members": {
                "Message": {
                    "target": "com.amazonaws.alexaforbusiness#ErrorMessage"
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>The caller has no permissions to operate on the resource involved in the API call.</p>",
                "smithy.api#error": "client"
            }
        },
        "com.amazonaws.alexaforbusiness#UntagResource": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UntagResourceRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UntagResourceResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Removes metadata tags from a specified resource.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UntagResourceRequest": {
            "type": "structure",
            "members": {
                "Arn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the resource from which to remove metadata tags. Required. </p>",
                        "smithy.api#required": {}
                    }
                },
                "TagKeys": {
                    "target": "com.amazonaws.alexaforbusiness#TagKeyList",
                    "traits": {
                        "smithy.api#documentation": "<p>The tags to be removed from the specified resource. Do not provide system tags.\n         Required. </p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UntagResourceResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateAddressBook": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateAddressBookRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateAddressBookResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NameInUseException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates address book details by the address book ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateAddressBookRequest": {
            "type": "structure",
            "members": {
                "AddressBookArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room to update.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated name of the room.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#AddressBookDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated description of the room.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateAddressBookResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateBusinessReportSchedule": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateBusinessReportScheduleRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateBusinessReportScheduleResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates the configuration of the report delivery schedule with the specified schedule\n         ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateBusinessReportScheduleRequest": {
            "type": "structure",
            "members": {
                "ScheduleArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the business report schedule.</p>",
                        "smithy.api#required": {}
                    }
                },
                "S3BucketName": {
                    "target": "com.amazonaws.alexaforbusiness#CustomerS3BucketName",
                    "traits": {
                        "smithy.api#documentation": "<p>The S3 location of the output reports.</p>"
                    }
                },
                "S3KeyPrefix": {
                    "target": "com.amazonaws.alexaforbusiness#S3KeyPrefix",
                    "traits": {
                        "smithy.api#documentation": "<p>The S3 key where the report is delivered.</p>"
                    }
                },
                "Format": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportFormat",
                    "traits": {
                        "smithy.api#documentation": "<p>The format of the generated report (individual CSV files or zipped files of\n         individual files).</p>"
                    }
                },
                "ScheduleName": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportScheduleName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name identifier of the schedule.</p>"
                    }
                },
                "Recurrence": {
                    "target": "com.amazonaws.alexaforbusiness#BusinessReportRecurrence",
                    "traits": {
                        "smithy.api#documentation": "<p>The recurrence of the reports.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateBusinessReportScheduleResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateConferenceProvider": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateConferenceProviderRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateConferenceProviderResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates an existing conference provider's settings.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateConferenceProviderRequest": {
            "type": "structure",
            "members": {
                "ConferenceProviderArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the conference provider.</p>",
                        "smithy.api#required": {}
                    }
                },
                "ConferenceProviderType": {
                    "target": "com.amazonaws.alexaforbusiness#ConferenceProviderType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of the conference provider.</p>",
                        "smithy.api#required": {}
                    }
                },
                "IPDialIn": {
                    "target": "com.amazonaws.alexaforbusiness#IPDialIn",
                    "traits": {
                        "smithy.api#documentation": "<p>The IP endpoint and protocol for calling.</p>"
                    }
                },
                "PSTNDialIn": {
                    "target": "com.amazonaws.alexaforbusiness#PSTNDialIn",
                    "traits": {
                        "smithy.api#documentation": "<p>The information for PSTN conferencing.</p>"
                    }
                },
                "MeetingSetting": {
                    "target": "com.amazonaws.alexaforbusiness#MeetingSetting",
                    "traits": {
                        "smithy.api#documentation": "<p>The meeting settings for the conference provider.</p>",
                        "smithy.api#required": {}
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateConferenceProviderResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateContact": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateContactRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateContactResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates the contact details by the contact ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateContactRequest": {
            "type": "structure",
            "members": {
                "ContactArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the contact to update.</p>",
                        "smithy.api#required": {}
                    }
                },
                "DisplayName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated display name of the contact.</p>"
                    }
                },
                "FirstName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated first name of the contact.</p>"
                    }
                },
                "LastName": {
                    "target": "com.amazonaws.alexaforbusiness#ContactName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated last name of the contact.</p>"
                    }
                },
                "PhoneNumber": {
                    "target": "com.amazonaws.alexaforbusiness#RawPhoneNumber",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated phone number of the contact. The phone number type defaults to WORK. You\n         can either specify PhoneNumber or PhoneNumbers. We recommend that you use PhoneNumbers,\n         which lets you specify the phone number type and multiple numbers.</p>"
                    }
                },
                "PhoneNumbers": {
                    "target": "com.amazonaws.alexaforbusiness#PhoneNumberList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of phone numbers for the contact.</p>"
                    }
                },
                "SipAddresses": {
                    "target": "com.amazonaws.alexaforbusiness#SipAddressList",
                    "traits": {
                        "smithy.api#documentation": "<p>The list of SIP addresses for the contact.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateContactResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateDevice": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateDeviceRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateDeviceResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#DeviceNotRegisteredException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates the device name by device ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateDeviceRequest": {
            "type": "structure",
            "members": {
                "DeviceArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the device to update. Required.</p>"
                    }
                },
                "DeviceName": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated device name. Required.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateDeviceResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateEndOfMeetingReminder": {
            "type": "structure",
            "members": {
                "ReminderAtMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#EndOfMeetingReminderMinutesList",
                    "traits": {
                        "smithy.api#documentation": "<p>Updates settings for the end of meeting reminder feature that are applied to a room\n         profile. The end of meeting reminder enables Alexa to remind users when a meeting is\n         ending. </p>"
                    }
                },
                "ReminderType": {
                    "target": "com.amazonaws.alexaforbusiness#EndOfMeetingReminderType",
                    "traits": {
                        "smithy.api#documentation": "<p>The type of sound that users hear during the end of meeting reminder. </p>"
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether an end of meeting reminder is enabled or not.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Settings for the end of meeting reminder feature that are applied to a room profile. The\n         end of meeting reminder enables Alexa to remind users when a meeting is ending. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateGateway": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateGatewayRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateGatewayResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NameInUseException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates the details of a gateway. If any optional field is not provided, the existing\n         corresponding value is left unmodified.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateGatewayGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateGatewayGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateGatewayGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NameInUseException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates the details of a gateway group. If any optional field is not provided, the\n         existing corresponding value is left unmodified.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateGatewayGroupRequest": {
            "type": "structure",
            "members": {
                "GatewayGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway group to update.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated name of the gateway group.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayGroupDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated description of the gateway group.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateGatewayGroupResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateGatewayRequest": {
            "type": "structure",
            "members": {
                "GatewayArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the gateway to update.</p>",
                        "smithy.api#required": {}
                    }
                },
                "Name": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated name of the gateway.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated description of the gateway.</p>"
                    }
                },
                "SoftwareVersion": {
                    "target": "com.amazonaws.alexaforbusiness#GatewayVersion",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated software version of the gateway. The gateway automatically updates its\n         software version during normal operation.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateGatewayResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateInstantBooking": {
            "type": "structure",
            "members": {
                "DurationInMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#Minutes",
                    "traits": {
                        "smithy.api#documentation": "<p>Duration between 15 and 240 minutes at increments of 15 that determines how long to book\n         an available room when a meeting is started with Alexa.</p>"
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether instant booking is enabled or not.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Updates settings for the instant booking feature that are applied to a room profile. If\n         instant booking is enabled, Alexa automatically reserves a room if it is free when a user\n         joins a meeting with Alexa.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateMeetingRoomConfiguration": {
            "type": "structure",
            "members": {
                "RoomUtilizationMetricsEnabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether room utilization metrics are enabled or not.</p>"
                    }
                },
                "EndOfMeetingReminder": {
                    "target": "com.amazonaws.alexaforbusiness#UpdateEndOfMeetingReminder",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings for the end of meeting reminder feature that are applied to a room profile. The\n         end of meeting reminder enables Alexa to remind users when a meeting is ending. </p>"
                    }
                },
                "InstantBooking": {
                    "target": "com.amazonaws.alexaforbusiness#UpdateInstantBooking",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings to automatically book an available room available for a configured duration\n         when joining a meeting with Alexa.</p>"
                    }
                },
                "RequireCheckIn": {
                    "target": "com.amazonaws.alexaforbusiness#UpdateRequireCheckIn",
                    "traits": {
                        "smithy.api#documentation": "<p>Settings for requiring a check in when a room is reserved. Alexa can cancel a room reservation if it's not checked into to make the room available for others. Users can check in by joining the meeting with Alexa or an AVS device, or by saying “Alexa, check in.” </p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Updates meeting room settings of a room profile.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateNetworkProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateNetworkProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateNetworkProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#InvalidCertificateAuthorityException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#InvalidSecretsManagerResourceException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NameInUseException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates a network profile by the network profile ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateNetworkProfileRequest": {
            "type": "structure",
            "members": {
                "NetworkProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the network profile associated with a device.</p>",
                        "smithy.api#required": {}
                    }
                },
                "NetworkProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The name of the network profile associated with a device.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#NetworkProfileDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>Detailed information about a device's network profile.</p>"
                    }
                },
                "CurrentPassword": {
                    "target": "com.amazonaws.alexaforbusiness#CurrentWiFiPassword",
                    "traits": {
                        "smithy.api#documentation": "<p>The current password of the Wi-Fi network.</p>"
                    }
                },
                "NextPassword": {
                    "target": "com.amazonaws.alexaforbusiness#NextWiFiPassword",
                    "traits": {
                        "smithy.api#documentation": "<p>The next, or subsequent, password of the Wi-Fi network. This password is asynchronously\n         transmitted to the device and is used when the password of the network changes to\n         NextPassword. </p>"
                    }
                },
                "CertificateAuthorityArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the Private Certificate Authority (PCA) created in AWS Certificate Manager\n         (ACM). This is used to issue certificates to the devices. </p>"
                    }
                },
                "TrustAnchors": {
                    "target": "com.amazonaws.alexaforbusiness#TrustAnchorList",
                    "traits": {
                        "smithy.api#documentation": "<p>The root certificate(s) of your authentication server that will be installed on your\n         devices and used to trust your authentication server during EAP negotiation. </p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateNetworkProfileResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateProfile": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateProfileRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateProfileResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NameInUseException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates an existing room profile by room profile ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateProfileRequest": {
            "type": "structure",
            "members": {
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room profile to update. Required.</p>"
                    }
                },
                "ProfileName": {
                    "target": "com.amazonaws.alexaforbusiness#ProfileName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated name for the room profile.</p>"
                    }
                },
                "IsDefault": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Sets the profile as default if selected. If this is missing, no update is done to the\n         default status.</p>"
                    }
                },
                "Timezone": {
                    "target": "com.amazonaws.alexaforbusiness#Timezone",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated timezone for the room profile.</p>"
                    }
                },
                "Address": {
                    "target": "com.amazonaws.alexaforbusiness#Address",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated address for the room profile.</p>"
                    }
                },
                "DistanceUnit": {
                    "target": "com.amazonaws.alexaforbusiness#DistanceUnit",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated distance unit for the room profile.</p>"
                    }
                },
                "TemperatureUnit": {
                    "target": "com.amazonaws.alexaforbusiness#TemperatureUnit",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated temperature unit for the room profile.</p>"
                    }
                },
                "WakeWord": {
                    "target": "com.amazonaws.alexaforbusiness#WakeWord",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated wake word for the room profile.</p>"
                    }
                },
                "Locale": {
                    "target": "com.amazonaws.alexaforbusiness#DeviceLocale",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated locale for the room profile. (This is currently only available to a limited preview audience.)</p>"
                    }
                },
                "SetupModeDisabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether the setup mode of the profile is enabled.</p>"
                    }
                },
                "MaxVolumeLimit": {
                    "target": "com.amazonaws.alexaforbusiness#MaxVolumeLimit",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated maximum volume limit for the room profile.</p>"
                    }
                },
                "PSTNEnabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether the PSTN setting of the room profile is enabled.</p>"
                    }
                },
                "DataRetentionOptIn": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether data retention of the profile is enabled.</p>"
                    }
                },
                "MeetingRoomConfiguration": {
                    "target": "com.amazonaws.alexaforbusiness#UpdateMeetingRoomConfiguration",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated meeting room settings of a room profile.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateProfileResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateRequireCheckIn": {
            "type": "structure",
            "members": {
                "ReleaseAfterMinutes": {
                    "target": "com.amazonaws.alexaforbusiness#Minutes",
                    "traits": {
                        "smithy.api#documentation": "<p>Duration between 5 and 20 minutes to determine when to release the room if it's not checked into. </p>"
                    }
                },
                "Enabled": {
                    "target": "com.amazonaws.alexaforbusiness#Boolean",
                    "traits": {
                        "smithy.api#documentation": "<p>Whether require check in is enabled or not.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Updates settings for the require check in feature that are applied to a room profile. Require check in allows a meeting room’s Alexa or AVS device to prompt the user to check in; otherwise, the room will be released. </p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateRoom": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateRoomRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateRoomResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#NameInUseException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates room details by room ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateRoomRequest": {
            "type": "structure",
            "members": {
                "RoomArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the room to update. </p>"
                    }
                },
                "RoomName": {
                    "target": "com.amazonaws.alexaforbusiness#RoomName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated name for the room.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#RoomDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated description for the room.</p>"
                    }
                },
                "ProviderCalendarId": {
                    "target": "com.amazonaws.alexaforbusiness#ProviderCalendarId",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated provider calendar ARN for the room.</p>"
                    }
                },
                "ProfileArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated profile ARN for the room.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateRoomResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#UpdateSkillGroup": {
            "type": "operation",
            "input": {
                "target": "com.amazonaws.alexaforbusiness#UpdateSkillGroupRequest"
            },
            "output": {
                "target": "com.amazonaws.alexaforbusiness#UpdateSkillGroupResponse"
            },
            "errors": [
                {
                    "target": "com.amazonaws.alexaforbusiness#ConcurrentModificationException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NameInUseException"
                },
                {
                    "target": "com.amazonaws.alexaforbusiness#NotFoundException"
                }
            ],
            "traits": {
                "smithy.api#documentation": "<p>Updates skill group details by skill group ARN.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateSkillGroupRequest": {
            "type": "structure",
            "members": {
                "SkillGroupArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of the skill group to update. </p>"
                    }
                },
                "SkillGroupName": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupName",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated name for the skill group.</p>"
                    }
                },
                "Description": {
                    "target": "com.amazonaws.alexaforbusiness#SkillGroupDescription",
                    "traits": {
                        "smithy.api#documentation": "<p>The updated description for the skill group.</p>"
                    }
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UpdateSkillGroupResponse": {
            "type": "structure",
            "members": {}
        },
        "com.amazonaws.alexaforbusiness#Url": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#UserCode": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 128
                }
            }
        },
        "com.amazonaws.alexaforbusiness#UserData": {
            "type": "structure",
            "members": {
                "UserArn": {
                    "target": "com.amazonaws.alexaforbusiness#Arn",
                    "traits": {
                        "smithy.api#documentation": "<p>The ARN of a user.</p>"
                    }
                },
                "FirstName": {
                    "target": "com.amazonaws.alexaforbusiness#user_FirstName",
                    "traits": {
                        "smithy.api#documentation": "<p>The first name of a user.</p>"
                    }
                },
                "LastName": {
                    "target": "com.amazonaws.alexaforbusiness#user_LastName",
                    "traits": {
                        "smithy.api#documentation": "<p>The last name of a user.</p>"
                    }
                },
                "Email": {
                    "target": "com.amazonaws.alexaforbusiness#Email",
                    "traits": {
                        "smithy.api#documentation": "<p>The email of a user.</p>"
                    }
                },
                "EnrollmentStatus": {
                    "target": "com.amazonaws.alexaforbusiness#EnrollmentStatus",
                    "traits": {
                        "smithy.api#documentation": "<p>The enrollment status of a user.</p>"
                    }
                },
                "EnrollmentId": {
                    "target": "com.amazonaws.alexaforbusiness#EnrollmentId",
                    "traits": {
                        "smithy.api#documentation": "<p>The enrollment ARN of a user.</p>"
                    }
                }
            },
            "traits": {
                "smithy.api#documentation": "<p>Information related to a user.</p>"
            }
        },
        "com.amazonaws.alexaforbusiness#UserDataList": {
            "type": "list",
            "member": {
                "target": "com.amazonaws.alexaforbusiness#UserData"
            }
        },
        "com.amazonaws.alexaforbusiness#UserId": {
            "type": "string",
            "traits": {
                "smithy.api#pattern": "amzn1\\.[A-Za-z0-9+-\\/=.]{1,300}"
            }
        },
        "com.amazonaws.alexaforbusiness#Utterance": {
            "type": "string"
        },
        "com.amazonaws.alexaforbusiness#Value": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1
                }
            }
        },
        "com.amazonaws.alexaforbusiness#WakeWord": {
            "type": "string",
            "traits": {
                "smithy.api#enum": [
                    {
                        "value": "ALEXA",
                        "name": "ALEXA"
                    },
                    {
                        "value": "AMAZON",
                        "name": "AMAZON"
                    },
                    {
                        "value": "ECHO",
                        "name": "ECHO"
                    },
                    {
                        "value": "COMPUTER",
                        "name": "COMPUTER"
                    }
                ]
            }
        },
        "com.amazonaws.alexaforbusiness#user_FirstName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 30
                },
                "smithy.api#pattern": "([A-Za-z\\-' 0-9._]|\\p{IsLetter})*"
            }
        },
        "com.amazonaws.alexaforbusiness#user_LastName": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 0,
                    "max": 30
                },
                "smithy.api#pattern": "([A-Za-z\\-' 0-9._]|\\p{IsLetter})*"
            }
        },
        "com.amazonaws.alexaforbusiness#user_UserId": {
            "type": "string",
            "traits": {
                "smithy.api#length": {
                    "min": 1,
                    "max": 128
                },
                "smithy.api#pattern": "[a-zA-Z0-9@_+.-]*"
            }
        }
    }
}
