You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::AlexaForBusiness::Client

Inherits:
Seahorse::Client::Base show all
Defined in:
(unknown)

Overview

An API client for Alexa For Business. To construct a client, you need to configure a :region and :credentials.

alexaforbusiness = Aws::AlexaForBusiness::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

See #initialize for a full list of supported configuration options.

Region

You can configure a default region in the following locations:

  • ENV['AWS_REGION']
  • Aws.config[:region]

Go here for a list of supported regions.

Credentials

Default credentials are loaded automatically from the following locations:

  • ENV['AWS_ACCESS_KEY_ID'] and ENV['AWS_SECRET_ACCESS_KEY']
  • Aws.config[:credentials]
  • The shared credentials ini file at ~/.aws/credentials (more information)
  • From an instance profile when running on EC2

You can also construct a credentials object from one of the following classes:

Alternatively, you configure credentials with :access_key_id and :secret_access_key:

# load credentials from disk
creds = YAML.load(File.read('/path/to/secrets'))

Aws::AlexaForBusiness::Client.new(
  access_key_id: creds['access_key_id'],
  secret_access_key: creds['secret_access_key']
)

Always load your credentials from outside your application. Avoid configuring credentials statically and never commit them to source control.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

Constructor collapse

API Operations collapse

Instance Method Summary collapse

Methods inherited from Seahorse::Client::Base

add_plugin, api, #build_request, clear_plugins, define, new, #operation, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options = {}) ⇒ Aws::AlexaForBusiness::Client

Constructs an API client.

Options Hash (options):

  • :access_key_id (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :active_endpoint_cache (Boolean)

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types. See Plugins::ParamConverter for more details.

  • :credentials (required, Credentials)

    Your AWS credentials. The following locations will be searched in order for credentials:

    • :access_key_id, :secret_access_key, and :session_token options
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
    • HOME/.aws/credentials shared credentials file
    • EC2 instance profile credentials See Plugins::RequestSigner for more details.
  • :disable_host_prefix_injection (Boolean)

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available. See Plugins::EndpointPattern for more details.

  • :endpoint (String)

    A default endpoint is constructed from the :region. See Plugins::RegionalEndpoint for more details.

  • :endpoint_cache_max_entries (Integer)

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_max_threads (Integer)

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10. See Plugins::EndpointDiscovery for more details.

  • :endpoint_cache_poll_interval (Integer)

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec. See Plugins::EndpointDiscovery for more details.

  • :endpoint_discovery (Boolean)

    When set to true, endpoint discovery will be enabled for operations when available. Defaults to false. See Plugins::EndpointDiscovery for more details.

  • :http_continue_timeout (Float) — default: 1

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_idle_timeout (Integer) — default: 5

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_open_timeout (Integer) — default: 15

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_proxy (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_read_timeout (Integer) — default: 60

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :http_wire_trace (Boolean) — default: false

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the logger at. See Plugins::Logging for more details.

  • :log_formatter (Logging::LogFormatter)

    The log formatter. Defaults to Seahorse::Client::Logging::Formatter.default. See Plugins::Logging for more details.

  • :logger (Logger) — default: nil

    The Logger instance to send log messages to. If this option is not set, logging will be disabled. See Plugins::Logging for more details.

  • :profile (String)

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used. See Plugins::RequestSigner for more details.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised. See Seahorse::Client::Plugins::RaiseResponseErrors for more details.

  • :region (required, String)

    The AWS region to connect to. The region is used to construct the client endpoint. Defaults to ENV['AWS_REGION']. Also checks AMAZON_REGION and AWS_DEFAULT_REGION. See Plugins::RegionalEndpoint for more details.

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors and auth errors from expired credentials. See Plugins::RetryErrors for more details.

  • :secret_access_key (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :session_token (String)

    Used to set credentials statically. See Plugins::RequestSigner for more details.

  • :simple_json (Boolean) — default: false

    Disables request parameter conversion, validation, and formatting. Also disable response data type conversions. This option is useful when you want to ensure the highest level of performance by avoiding overhead of walking request parameters and response data structures.

    When :simple_json is enabled, the request parameters hash must be formatted exactly as the DynamoDB API expects. See Plugins::Protocols::JsonRpc for more details.

  • :ssl_ca_bundle (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_directory (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_ca_store (String)

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :ssl_verify_peer (Boolean) — default: true

    See Seahorse::Client::Plugins::NetHttp for more details.

  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling ClientStubs#stub_responses. See ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled. See Plugins::StubResponses for more details.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request. See Plugins::ParamValidator for more details.

Instance Method Details

#approve_skill(options = {}) ⇒ Struct

Associates a skill with the organization under the customer's AWS account. If a skill is private, the user implicitly accepts access to this skill during enablement.

Examples:

Request syntax with placeholder values


resp = client.approve_skill({
  skill_id: "SkillId", # required
})

Options Hash (options):

  • :skill_id (required, String)

    The unique identifier of the skill.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#associate_contact_with_address_book(options = {}) ⇒ Struct

Associates a contact with a given address book.

Examples:

Request syntax with placeholder values


resp = client.associate_contact_with_address_book({
  contact_arn: "Arn", # required
  address_book_arn: "Arn", # required
})

Options Hash (options):

  • :contact_arn (required, String)

    The ARN of the contact to associate with an address book.

  • :address_book_arn (required, String)

    The ARN of the address book with which to associate the contact.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#associate_device_with_network_profile(options = {}) ⇒ Struct

Associates a device with the specified network profile.

Examples:

Request syntax with placeholder values


resp = client.associate_device_with_network_profile({
  device_arn: "Arn", # required
  network_profile_arn: "Arn", # required
})

Options Hash (options):

  • :device_arn (required, String)

    The device ARN.

  • :network_profile_arn (required, String)

    The ARN of the network profile to associate with a device.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#associate_device_with_room(options = {}) ⇒ Struct

Associates a device with a given room. This applies all the settings from the room profile to the device, and all the skills in any skill groups added to that room. This operation requires the device to be online, or else a manual sync is required.

Examples:

Request syntax with placeholder values


resp = client.associate_device_with_room({
  device_arn: "Arn",
  room_arn: "Arn",
})

Options Hash (options):

  • :device_arn (String)

    The ARN of the device to associate to a room. Required.

  • :room_arn (String)

    The ARN of the room with which to associate the device. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#associate_skill_group_with_room(options = {}) ⇒ Struct

Associates a skill group with a given room. This enables all skills in the associated skill group on all devices in the room.

Examples:

Request syntax with placeholder values


resp = client.associate_skill_group_with_room({
  skill_group_arn: "Arn",
  room_arn: "Arn",
})

Options Hash (options):

  • :skill_group_arn (String)

    The ARN of the skill group to associate with a room. Required.

  • :room_arn (String)

    The ARN of the room with which to associate the skill group. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#associate_skill_with_skill_group(options = {}) ⇒ Struct

Associates a skill with a skill group.

Examples:

Request syntax with placeholder values


resp = client.associate_skill_with_skill_group({
  skill_group_arn: "Arn",
  skill_id: "SkillId", # required
})

Options Hash (options):

  • :skill_group_arn (String)

    The ARN of the skill group to associate the skill to. Required.

  • :skill_id (required, String)

    The unique identifier of the skill.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#associate_skill_with_users(options = {}) ⇒ Struct

Makes a private skill available for enrolled users to enable on their devices.

Examples:

Request syntax with placeholder values


resp = client.associate_skill_with_users({
  skill_id: "SkillId", # required
})

Options Hash (options):

  • :skill_id (required, String)

    The private skill ID you want to make available to enrolled users.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#create_address_book(options = {}) ⇒ Types::CreateAddressBookResponse

Creates an address book with the specified details.

Examples:

Request syntax with placeholder values


resp = client.create_address_book({
  name: "AddressBookName", # required
  description: "AddressBookDescription",
  client_request_token: "ClientRequestToken",
})

Response structure


resp.address_book_arn #=> String

Options Hash (options):

  • :name (required, String)

    The name of the address book.

  • :description (String)

    The description of the address book.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. A unique, user-specified identifier for the request that ensures idempotency.

Returns:

See Also:

#create_business_report_schedule(options = {}) ⇒ Types::CreateBusinessReportScheduleResponse

Creates a recurring schedule for usage reports to deliver to the specified S3 location with a specified daily or weekly interval.

Examples:

Request syntax with placeholder values


resp = client.create_business_report_schedule({
  schedule_name: "BusinessReportScheduleName",
  s3_bucket_name: "CustomerS3BucketName",
  s3_key_prefix: "S3KeyPrefix",
  format: "CSV", # required, accepts CSV, CSV_ZIP
  content_range: { # required
    interval: "ONE_DAY", # accepts ONE_DAY, ONE_WEEK
  },
  recurrence: {
    start_date: "Date",
  },
  client_request_token: "ClientRequestToken",
})

Response structure


resp.schedule_arn #=> String

Options Hash (options):

  • :schedule_name (String)

    The name identifier of the schedule.

  • :s3_bucket_name (String)

    The S3 bucket name of the output reports. If this isn\'t specified, the report can be retrieved from a download link by calling ListBusinessReportSchedule.

  • :s3_key_prefix (String)

    The S3 key where the report is delivered.

  • :format (required, String)

    The format of the generated report (individual CSV files or zipped files of individual files).

  • :content_range (required, Types::BusinessReportContentRange)

    The content range of the reports.

  • :recurrence (Types::BusinessReportRecurrence)

    The recurrence of the reports. If this isn\'t specified, the report will only be delivered one time when the API is called.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. The client request token.

Returns:

See Also:

#create_conference_provider(options = {}) ⇒ Types::CreateConferenceProviderResponse

Adds a new conference provider under the user's AWS account.

Examples:

Request syntax with placeholder values


resp = client.create_conference_provider({
  conference_provider_name: "ConferenceProviderName", # required
  conference_provider_type: "CHIME", # required, accepts CHIME, BLUEJEANS, FUZE, GOOGLE_HANGOUTS, POLYCOM, RINGCENTRAL, SKYPE_FOR_BUSINESS, WEBEX, ZOOM, CUSTOM
  ip_dial_in: {
    endpoint: "Endpoint", # required
    comms_protocol: "SIP", # required, accepts SIP, SIPS, H323
  },
  pstn_dial_in: {
    country_code: "CountryCode", # required
    phone_number: "OutboundPhoneNumber", # required
    one_click_id_delay: "OneClickIdDelay", # required
    one_click_pin_delay: "OneClickPinDelay", # required
  },
  meeting_setting: { # required
    require_pin: "YES", # required, accepts YES, NO, OPTIONAL
  },
  client_request_token: "ClientRequestToken",
})

Response structure


resp.conference_provider_arn #=> String

Options Hash (options):

  • :conference_provider_name (required, String)

    The name of the conference provider.

  • :conference_provider_type (required, String)

    Represents a type within a list of predefined types.

  • :ip_dial_in (Types::IPDialIn)

    The IP endpoint and protocol for calling.

  • :pstn_dial_in (Types::PSTNDialIn)

    The information for PSTN conferencing.

  • :meeting_setting (required, Types::MeetingSetting)

    The meeting settings for the conference provider.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. The request token of the client.

Returns:

See Also:

#create_contact(options = {}) ⇒ Types::CreateContactResponse

Creates a contact with the specified details.

Examples:

Request syntax with placeholder values


resp = client.create_contact({
  display_name: "ContactName",
  first_name: "ContactName", # required
  last_name: "ContactName",
  phone_number: "RawPhoneNumber",
  phone_numbers: [
    {
      number: "RawPhoneNumber", # required
      type: "MOBILE", # required, accepts MOBILE, WORK, HOME
    },
  ],
  sip_addresses: [
    {
      uri: "SipUri", # required
      type: "WORK", # required, accepts WORK
    },
  ],
  client_request_token: "ClientRequestToken",
})

Response structure


resp.contact_arn #=> String

Options Hash (options):

  • :display_name (String)

    The name of the contact to display on the console.

  • :first_name (required, String)

    The first name of the contact that is used to call the contact on the device.

  • :last_name (String)

    The last name of the contact that is used to call the contact on the device.

  • :phone_number (String)

    The phone number of the contact in E.164 format. The phone number type defaults to WORK. You can specify PhoneNumber or PhoneNumbers. We recommend that you use PhoneNumbers, which lets you specify the phone number type and multiple numbers.

  • :phone_numbers (Array<Types::PhoneNumber>)

    The list of phone numbers for the contact.

  • :sip_addresses (Array<Types::SipAddress>)

    The list of SIP addresses for the contact.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. A unique, user-specified identifier for this request that ensures idempotency.

Returns:

See Also:

#create_gateway_group(options = {}) ⇒ Types::CreateGatewayGroupResponse

Creates a gateway group with the specified details.

Examples:

Request syntax with placeholder values


resp = client.create_gateway_group({
  name: "GatewayGroupName", # required
  description: "GatewayGroupDescription",
  client_request_token: "ClientRequestToken", # required
})

Response structure


resp.gateway_group_arn #=> String

Options Hash (options):

  • :name (required, String)

    The name of the gateway group.

  • :description (String)

    The description of the gateway group.

  • :client_request_token (required, String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. A unique, user-specified identifier for the request that ensures idempotency.

Returns:

See Also:

#create_network_profile(options = {}) ⇒ Types::CreateNetworkProfileResponse

Creates a network profile with the specified details.

Examples:

Request syntax with placeholder values


resp = client.create_network_profile({
  network_profile_name: "NetworkProfileName", # required
  description: "NetworkProfileDescription",
  ssid: "NetworkSsid", # required
  security_type: "OPEN", # required, accepts OPEN, WEP, WPA_PSK, WPA2_PSK, WPA2_ENTERPRISE
  eap_method: "EAP_TLS", # accepts EAP_TLS
  current_password: "CurrentWiFiPassword",
  next_password: "NextWiFiPassword",
  certificate_authority_arn: "Arn",
  trust_anchors: ["TrustAnchor"],
  client_request_token: "ClientRequestToken", # required
})

Response structure


resp.network_profile_arn #=> String

Options Hash (options):

  • :network_profile_name (required, String)

    The name of the network profile associated with a device.

  • :description (String)

    Detailed information about a device\'s network profile.

  • :ssid (required, String)

    The SSID of the Wi-Fi network.

  • :security_type (required, String)

    The security type of the Wi-Fi network. This can be WPA2_ENTERPRISE, WPA2_PSK, WPA_PSK, WEP, or OPEN.

  • :eap_method (String)

    The authentication standard that is used in the EAP framework. Currently, EAP_TLS is supported.

  • :current_password (String)

    The current password of the Wi-Fi network.

  • :next_password (String)

    The next, or subsequent, password of the Wi-Fi network. This password is asynchronously transmitted to the device and is used when the password of the network changes to NextPassword.

  • :certificate_authority_arn (String)

    The ARN of the Private Certificate Authority (PCA) created in AWS Certificate Manager (ACM). This is used to issue certificates to the devices.

  • :trust_anchors (Array<String>)

    The root certificates of your authentication server that is installed on your devices and used to trust your authentication server during EAP negotiation.

  • :client_request_token (required, String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided.

    A unique, user-specified identifier for the request that ensures idempotency.

Returns:

See Also:

#create_profile(options = {}) ⇒ Types::CreateProfileResponse

Creates a new room profile with the specified details.

Examples:

Request syntax with placeholder values


resp = client.create_profile({
  profile_name: "ProfileName", # required
  timezone: "Timezone", # required
  address: "Address", # required
  distance_unit: "METRIC", # required, accepts METRIC, IMPERIAL
  temperature_unit: "FAHRENHEIT", # required, accepts FAHRENHEIT, CELSIUS
  wake_word: "ALEXA", # required, accepts ALEXA, AMAZON, ECHO, COMPUTER
  client_request_token: "ClientRequestToken",
  setup_mode_disabled: false,
  max_volume_limit: 1,
  pstn_enabled: false,
})

Response structure


resp.profile_arn #=> String

Options Hash (options):

  • :profile_name (required, String)

    The name of a room profile.

  • :timezone (required, String)

    The time zone used by a room profile.

  • :address (required, String)

    The valid address for the room.

  • :distance_unit (required, String)

    The distance unit to be used by devices in the profile.

  • :temperature_unit (required, String)

    The temperature unit to be used by devices in the profile.

  • :wake_word (required, String)

    A wake word for Alexa, Echo, Amazon, or a computer.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. The user-specified token that is used during the creation of a profile.

  • :setup_mode_disabled (Boolean)

    Whether room profile setup is enabled.

  • :max_volume_limit (Integer)

    The maximum volume limit for a room profile.

  • :pstn_enabled (Boolean)

    Whether PSTN calling is enabled.

Returns:

See Also:

#create_room(options = {}) ⇒ Types::CreateRoomResponse

Creates a room with the specified details.

Examples:

Request syntax with placeholder values


resp = client.create_room({
  room_name: "RoomName", # required
  description: "RoomDescription",
  profile_arn: "Arn",
  provider_calendar_id: "ProviderCalendarId",
  client_request_token: "ClientRequestToken",
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Response structure


resp.room_arn #=> String

Options Hash (options):

  • :room_name (required, String)

    The name for the room.

  • :description (String)

    The description for the room.

  • :profile_arn (String)

    The profile ARN for the room.

  • :provider_calendar_id (String)

    The calendar ARN for the room.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. A unique, user-specified identifier for this request that ensures idempotency.

  • :tags (Array<Types::Tag>)

    The tags for the room.

Returns:

See Also:

#create_skill_group(options = {}) ⇒ Types::CreateSkillGroupResponse

Creates a skill group with a specified name and description.

Examples:

Request syntax with placeholder values


resp = client.create_skill_group({
  skill_group_name: "SkillGroupName", # required
  description: "SkillGroupDescription",
  client_request_token: "ClientRequestToken",
})

Response structure


resp.skill_group_arn #=> String

Options Hash (options):

  • :skill_group_name (required, String)

    The name for the skill group.

  • :description (String)

    The description for the skill group.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. A unique, user-specified identifier for this request that ensures idempotency.

Returns:

See Also:

#create_user(options = {}) ⇒ Types::CreateUserResponse

Creates a user.

Examples:

Request syntax with placeholder values


resp = client.create_user({
  user_id: "user_UserId", # required
  first_name: "user_FirstName",
  last_name: "user_LastName",
  email: "Email",
  client_request_token: "ClientRequestToken",
  tags: [
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Response structure


resp.user_arn #=> String

Options Hash (options):

  • :user_id (required, String)

    The ARN for the user.

  • :first_name (String)

    The first name for the user.

  • :last_name (String)

    The last name for the user.

  • :email (String)

    The email address for the user.

  • :client_request_token (String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. A unique, user-specified identifier for this request that ensures idempotency.

  • :tags (Array<Types::Tag>)

    The tags for the user.

Returns:

See Also:

#delete_address_book(options = {}) ⇒ Struct

Deletes an address book by the address book ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_address_book({
  address_book_arn: "Arn", # required
})

Options Hash (options):

  • :address_book_arn (required, String)

    The ARN of the address book to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_business_report_schedule(options = {}) ⇒ Struct

Deletes the recurring report delivery schedule with the specified schedule ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_business_report_schedule({
  schedule_arn: "Arn", # required
})

Options Hash (options):

  • :schedule_arn (required, String)

    The ARN of the business report schedule.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_conference_provider(options = {}) ⇒ Struct

Deletes a conference provider.

Examples:

Request syntax with placeholder values


resp = client.delete_conference_provider({
  conference_provider_arn: "Arn", # required
})

Options Hash (options):

  • :conference_provider_arn (required, String)

    The ARN of the conference provider.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_contact(options = {}) ⇒ Struct

Deletes a contact by the contact ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_contact({
  contact_arn: "Arn", # required
})

Options Hash (options):

  • :contact_arn (required, String)

    The ARN of the contact to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_device(options = {}) ⇒ Struct

Removes a device from Alexa For Business.

Examples:

Request syntax with placeholder values


resp = client.delete_device({
  device_arn: "Arn", # required
})

Options Hash (options):

  • :device_arn (required, String)

    The ARN of the device for which to request details.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_device_usage_data(options = {}) ⇒ Struct

When this action is called for a specified shared device, it allows authorized users to delete the device's entire previous history of voice input data and associated response data. This action can be called once every 24 hours for a specific shared device.

When this action is called for a specified shared device, it allows authorized users to delete the device's entire previous history of voice input data. This action can be called once every 24 hours for a specific shared device.

Examples:

Request syntax with placeholder values


resp = client.delete_device_usage_data({
  device_arn: "Arn", # required
  device_usage_type: "VOICE", # required, accepts VOICE
})

Options Hash (options):

  • :device_arn (required, String)

    The ARN of the device.

  • :device_usage_type (required, String)

    The type of usage data to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_gateway_group(options = {}) ⇒ Struct

Deletes a gateway group.

Examples:

Request syntax with placeholder values


resp = client.delete_gateway_group({
  gateway_group_arn: "Arn", # required
})

Options Hash (options):

  • :gateway_group_arn (required, String)

    The ARN of the gateway group to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_network_profile(options = {}) ⇒ Struct

Deletes a network profile by the network profile ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_network_profile({
  network_profile_arn: "Arn", # required
})

Options Hash (options):

  • :network_profile_arn (required, String)

    The ARN of the network profile associated with a device.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_profile(options = {}) ⇒ Struct

Deletes a room profile by the profile ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_profile({
  profile_arn: "Arn",
})

Options Hash (options):

  • :profile_arn (String)

    The ARN of the room profile to delete. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_room(options = {}) ⇒ Struct

Deletes a room by the room ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_room({
  room_arn: "Arn",
})

Options Hash (options):

  • :room_arn (String)

    The ARN of the room to delete. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_room_skill_parameter(options = {}) ⇒ Struct

Deletes room skill parameter details by room, skill, and parameter key ID.

Examples:

Request syntax with placeholder values


resp = client.delete_room_skill_parameter({
  room_arn: "Arn",
  skill_id: "SkillId", # required
  parameter_key: "RoomSkillParameterKey", # required
})

Options Hash (options):

  • :room_arn (String)

    The ARN of the room from which to remove the room skill parameter details.

  • :skill_id (required, String)

    The ID of the skill from which to remove the room skill parameter details.

  • :parameter_key (required, String)

    The room skill parameter key for which to remove details.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_skill_authorization(options = {}) ⇒ Struct

Unlinks a third-party account from a skill.

Examples:

Request syntax with placeholder values


resp = client.delete_skill_authorization({
  skill_id: "SkillId", # required
  room_arn: "Arn",
})

Options Hash (options):

  • :skill_id (required, String)

    The unique identifier of a skill.

  • :room_arn (String)

    The room that the skill is authorized for.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_skill_group(options = {}) ⇒ Struct

Deletes a skill group by skill group ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_skill_group({
  skill_group_arn: "Arn",
})

Options Hash (options):

  • :skill_group_arn (String)

    The ARN of the skill group to delete. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#delete_user(options = {}) ⇒ Struct

Deletes a specified user by user ARN and enrollment ARN.

Examples:

Request syntax with placeholder values


resp = client.delete_user({
  user_arn: "Arn",
  enrollment_id: "EnrollmentId", # required
})

Options Hash (options):

  • :user_arn (String)

    The ARN of the user to delete in the organization. Required.

  • :enrollment_id (required, String)

    The ARN of the user\'s enrollment in the organization. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#disassociate_contact_from_address_book(options = {}) ⇒ Struct

Disassociates a contact from a given address book.

Examples:

Request syntax with placeholder values


resp = client.disassociate_contact_from_address_book({
  contact_arn: "Arn", # required
  address_book_arn: "Arn", # required
})

Options Hash (options):

  • :contact_arn (required, String)

    The ARN of the contact to disassociate from an address book.

  • :address_book_arn (required, String)

    The ARN of the address from which to disassociate the contact.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#disassociate_device_from_room(options = {}) ⇒ Struct

Disassociates a device from its current room. The device continues to be connected to the Wi-Fi network and is still registered to the account. The device settings and skills are removed from the room.

Examples:

Request syntax with placeholder values


resp = client.disassociate_device_from_room({
  device_arn: "Arn",
})

Options Hash (options):

  • :device_arn (String)

    The ARN of the device to disassociate from a room. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#disassociate_skill_from_skill_group(options = {}) ⇒ Struct

Disassociates a skill from a skill group.

Examples:

Request syntax with placeholder values


resp = client.disassociate_skill_from_skill_group({
  skill_group_arn: "Arn",
  skill_id: "SkillId", # required
})

Options Hash (options):

  • :skill_group_arn (String)

    The unique identifier of a skill. Required.

  • :skill_id (required, String)

    The ARN of a skill group to associate to a skill.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#disassociate_skill_from_users(options = {}) ⇒ Struct

Makes a private skill unavailable for enrolled users and prevents them from enabling it on their devices.

Examples:

Request syntax with placeholder values


resp = client.disassociate_skill_from_users({
  skill_id: "SkillId", # required
})

Options Hash (options):

  • :skill_id (required, String)

    The private skill ID you want to make unavailable for enrolled users.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#disassociate_skill_group_from_room(options = {}) ⇒ Struct

Disassociates a skill group from a specified room. This disables all skills in the skill group on all devices in the room.

Examples:

Request syntax with placeholder values


resp = client.disassociate_skill_group_from_room({
  skill_group_arn: "Arn",
  room_arn: "Arn",
})

Options Hash (options):

  • :skill_group_arn (String)

    The ARN of the skill group to disassociate from a room. Required.

  • :room_arn (String)

    The ARN of the room from which the skill group is to be disassociated. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#forget_smart_home_appliances(options = {}) ⇒ Struct

Forgets smart home appliances associated to a room.

Examples:

Request syntax with placeholder values


resp = client.forget_smart_home_appliances({
  room_arn: "Arn", # required
})

Options Hash (options):

  • :room_arn (required, String)

    The room that the appliances are associated with.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#get_address_book(options = {}) ⇒ Types::GetAddressBookResponse

Gets address the book details by the address book ARN.

Examples:

Request syntax with placeholder values


resp = client.get_address_book({
  address_book_arn: "Arn", # required
})

Response structure


resp.address_book.address_book_arn #=> String
resp.address_book.name #=> String
resp.address_book.description #=> String

Options Hash (options):

  • :address_book_arn (required, String)

    The ARN of the address book for which to request details.

Returns:

See Also:

#get_conference_preference(options = {}) ⇒ Types::GetConferencePreferenceResponse

Retrieves the existing conference preferences.

Examples:

Request syntax with placeholder values


resp = client.get_conference_preference()

Response structure


resp.preference.default_conference_provider_arn #=> String

Returns:

See Also:

#get_conference_provider(options = {}) ⇒ Types::GetConferenceProviderResponse

Gets details about a specific conference provider.

Examples:

Request syntax with placeholder values


resp = client.get_conference_provider({
  conference_provider_arn: "Arn", # required
})

Response structure


resp.conference_provider.arn #=> String
resp.conference_provider.name #=> String
resp.conference_provider.type #=> String, one of "CHIME", "BLUEJEANS", "FUZE", "GOOGLE_HANGOUTS", "POLYCOM", "RINGCENTRAL", "SKYPE_FOR_BUSINESS", "WEBEX", "ZOOM", "CUSTOM"
resp.conference_provider.ip_dial_in.endpoint #=> String
resp.conference_provider.ip_dial_in.comms_protocol #=> String, one of "SIP", "SIPS", "H323"
resp.conference_provider.pstn_dial_in.country_code #=> String
resp.conference_provider.pstn_dial_in.phone_number #=> String
resp.conference_provider.pstn_dial_in.one_click_id_delay #=> String
resp.conference_provider.pstn_dial_in.one_click_pin_delay #=> String
resp.conference_provider.meeting_setting.require_pin #=> String, one of "YES", "NO", "OPTIONAL"

Options Hash (options):

  • :conference_provider_arn (required, String)

    The ARN of the newly created conference provider.

Returns:

See Also:

#get_contact(options = {}) ⇒ Types::GetContactResponse

Gets the contact details by the contact ARN.

Examples:

Request syntax with placeholder values


resp = client.get_contact({
  contact_arn: "Arn", # required
})

Response structure


resp.contact.contact_arn #=> String
resp.contact.display_name #=> String
resp.contact.first_name #=> String
resp.contact.last_name #=> String
resp.contact.phone_number #=> String
resp.contact.phone_numbers #=> Array
resp.contact.phone_numbers[0].number #=> String
resp.contact.phone_numbers[0].type #=> String, one of "MOBILE", "WORK", "HOME"
resp.contact.sip_addresses #=> Array
resp.contact.sip_addresses[0].uri #=> String
resp.contact.sip_addresses[0].type #=> String, one of "WORK"

Options Hash (options):

  • :contact_arn (required, String)

    The ARN of the contact for which to request details.

Returns:

See Also:

#get_device(options = {}) ⇒ Types::GetDeviceResponse

Gets the details of a device by device ARN.

Examples:

Request syntax with placeholder values


resp = client.get_device({
  device_arn: "Arn",
})

Response structure


resp.device.device_arn #=> String
resp.device.device_serial_number #=> String
resp.device.device_type #=> String
resp.device.device_name #=> String
resp.device.software_version #=> String
resp.device.mac_address #=> String
resp.device.room_arn #=> String
resp.device.device_status #=> String, one of "READY", "PENDING", "WAS_OFFLINE", "DEREGISTERED", "FAILED"
resp.device.device_status_info.device_status_details #=> Array
resp.device.device_status_info.device_status_details[0].feature #=> String, one of "BLUETOOTH", "VOLUME", "NOTIFICATIONS", "LISTS", "SKILLS", "NETWORK_PROFILE", "SETTINGS", "ALL"
resp.device.device_status_info.device_status_details[0].code #=> String, one of "DEVICE_SOFTWARE_UPDATE_NEEDED", "DEVICE_WAS_OFFLINE", "CREDENTIALS_ACCESS_FAILURE", "TLS_VERSION_MISMATCH", "ASSOCIATION_REJECTION", "AUTHENTICATION_FAILURE", "DHCP_FAILURE", "INTERNET_UNAVAILABLE", "DNS_FAILURE", "UNKNOWN_FAILURE", "CERTIFICATE_ISSUING_LIMIT_EXCEEDED", "INVALID_CERTIFICATE_AUTHORITY", "NETWORK_PROFILE_NOT_FOUND", "INVALID_PASSWORD_STATE", "PASSWORD_NOT_FOUND"
resp.device.device_status_info.connection_status #=> String, one of "ONLINE", "OFFLINE"
resp.device.network_profile_info.network_profile_arn #=> String
resp.device.network_profile_info.certificate_arn #=> String
resp.device.network_profile_info.certificate_expiration_time #=> Time

Options Hash (options):

  • :device_arn (String)

    The ARN of the device for which to request details. Required.

Returns:

See Also:

#get_gateway(options = {}) ⇒ Types::GetGatewayResponse

Retrieves the details of a gateway.

Examples:

Request syntax with placeholder values


resp = client.get_gateway({
  gateway_arn: "Arn", # required
})

Response structure


resp.gateway.arn #=> String
resp.gateway.name #=> String
resp.gateway.description #=> String
resp.gateway.gateway_group_arn #=> String
resp.gateway.software_version #=> String

Options Hash (options):

  • :gateway_arn (required, String)

    The ARN of the gateway to get.

Returns:

See Also:

#get_gateway_group(options = {}) ⇒ Types::GetGatewayGroupResponse

Retrieves the details of a gateway group.

Examples:

Request syntax with placeholder values


resp = client.get_gateway_group({
  gateway_group_arn: "Arn", # required
})

Response structure


resp.gateway_group.arn #=> String
resp.gateway_group.name #=> String
resp.gateway_group.description #=> String

Options Hash (options):

  • :gateway_group_arn (required, String)

    The ARN of the gateway group to get.

Returns:

See Also:

#get_invitation_configuration(options = {}) ⇒ Types::GetInvitationConfigurationResponse

Retrieves the configured values for the user enrollment invitation email template.

Examples:

Request syntax with placeholder values


resp = client.get_invitation_configuration()

Response structure


resp.organization_name #=> String
resp.contact_email #=> String
resp.private_skill_ids #=> Array
resp.private_skill_ids[0] #=> String

Returns:

See Also:

#get_network_profile(options = {}) ⇒ Types::GetNetworkProfileResponse

Gets the network profile details by the network profile ARN.

Examples:

Request syntax with placeholder values


resp = client.get_network_profile({
  network_profile_arn: "Arn", # required
})

Response structure


resp.network_profile.network_profile_arn #=> String
resp.network_profile.network_profile_name #=> String
resp.network_profile.description #=> String
resp.network_profile.ssid #=> String
resp.network_profile.security_type #=> String, one of "OPEN", "WEP", "WPA_PSK", "WPA2_PSK", "WPA2_ENTERPRISE"
resp.network_profile.eap_method #=> String, one of "EAP_TLS"
resp.network_profile.current_password #=> String
resp.network_profile.next_password #=> String
resp.network_profile.certificate_authority_arn #=> String
resp.network_profile.trust_anchors #=> Array
resp.network_profile.trust_anchors[0] #=> String

Options Hash (options):

  • :network_profile_arn (required, String)

    The ARN of the network profile associated with a device.

Returns:

See Also:

#get_profile(options = {}) ⇒ Types::GetProfileResponse

Gets the details of a room profile by profile ARN.

Examples:

Request syntax with placeholder values


resp = client.get_profile({
  profile_arn: "Arn",
})

Response structure


resp.profile.profile_arn #=> String
resp.profile.profile_name #=> String
resp.profile.is_default #=> true/false
resp.profile.address #=> String
resp.profile.timezone #=> String
resp.profile.distance_unit #=> String, one of "METRIC", "IMPERIAL"
resp.profile.temperature_unit #=> String, one of "FAHRENHEIT", "CELSIUS"
resp.profile.wake_word #=> String, one of "ALEXA", "AMAZON", "ECHO", "COMPUTER"
resp.profile.setup_mode_disabled #=> true/false
resp.profile.max_volume_limit #=> Integer
resp.profile.pstn_enabled #=> true/false
resp.profile.address_book_arn #=> String

Options Hash (options):

  • :profile_arn (String)

    The ARN of the room profile for which to request details. Required.

Returns:

See Also:

#get_room(options = {}) ⇒ Types::GetRoomResponse

Gets room details by room ARN.

Examples:

Request syntax with placeholder values


resp = client.get_room({
  room_arn: "Arn",
})

Response structure


resp.room.room_arn #=> String
resp.room.room_name #=> String
resp.room.description #=> String
resp.room.provider_calendar_id #=> String
resp.room.profile_arn #=> String

Options Hash (options):

  • :room_arn (String)

    The ARN of the room for which to request details. Required.

Returns:

See Also:

#get_room_skill_parameter(options = {}) ⇒ Types::GetRoomSkillParameterResponse

Gets room skill parameter details by room, skill, and parameter key ARN.

Examples:

Request syntax with placeholder values


resp = client.get_room_skill_parameter({
  room_arn: "Arn",
  skill_id: "SkillId", # required
  parameter_key: "RoomSkillParameterKey", # required
})

Response structure


resp.room_skill_parameter.parameter_key #=> String
resp.room_skill_parameter.parameter_value #=> String

Options Hash (options):

  • :room_arn (String)

    The ARN of the room from which to get the room skill parameter details.

  • :skill_id (required, String)

    The ARN of the skill from which to get the room skill parameter details. Required.

  • :parameter_key (required, String)

    The room skill parameter key for which to get details. Required.

Returns:

See Also:

#get_skill_group(options = {}) ⇒ Types::GetSkillGroupResponse

Gets skill group details by skill group ARN.

Examples:

Request syntax with placeholder values


resp = client.get_skill_group({
  skill_group_arn: "Arn",
})

Response structure


resp.skill_group.skill_group_arn #=> String
resp.skill_group.skill_group_name #=> String
resp.skill_group.description #=> String

Options Hash (options):

  • :skill_group_arn (String)

    The ARN of the skill group for which to get details. Required.

Returns:

See Also:

#list_business_report_schedules(options = {}) ⇒ Types::ListBusinessReportSchedulesResponse

Lists the details of the schedules that a user configured.

Examples:

Request syntax with placeholder values


resp = client.list_business_report_schedules({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.business_report_schedules #=> Array
resp.business_report_schedules[0].schedule_arn #=> String
resp.business_report_schedules[0].schedule_name #=> String
resp.business_report_schedules[0].s3_bucket_name #=> String
resp.business_report_schedules[0].s3_key_prefix #=> String
resp.business_report_schedules[0].format #=> String, one of "CSV", "CSV_ZIP"
resp.business_report_schedules[0].content_range.interval #=> String, one of "ONE_DAY", "ONE_WEEK"
resp.business_report_schedules[0].recurrence.start_date #=> String
resp.business_report_schedules[0].last_business_report.status #=> String, one of "RUNNING", "SUCCEEDED", "FAILED"
resp.business_report_schedules[0].last_business_report.failure_code #=> String, one of "ACCESS_DENIED", "NO_SUCH_BUCKET", "INTERNAL_FAILURE"
resp.business_report_schedules[0].last_business_report.s3_location.path #=> String
resp.business_report_schedules[0].last_business_report.s3_location.bucket_name #=> String
resp.business_report_schedules[0].last_business_report.delivery_time #=> Time
resp.business_report_schedules[0].last_business_report.download_url #=> String
resp.next_token #=> String

Options Hash (options):

  • :next_token (String)

    The token used to list the remaining schedules from the previous API call.

  • :max_results (Integer)

    The maximum number of schedules listed in the call.

Returns:

See Also:

#list_conference_providers(options = {}) ⇒ Types::ListConferenceProvidersResponse

Lists conference providers under a specific AWS account.

Examples:

Request syntax with placeholder values


resp = client.list_conference_providers({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.conference_providers #=> Array
resp.conference_providers[0].arn #=> String
resp.conference_providers[0].name #=> String
resp.conference_providers[0].type #=> String, one of "CHIME", "BLUEJEANS", "FUZE", "GOOGLE_HANGOUTS", "POLYCOM", "RINGCENTRAL", "SKYPE_FOR_BUSINESS", "WEBEX", "ZOOM", "CUSTOM"
resp.conference_providers[0].ip_dial_in.endpoint #=> String
resp.conference_providers[0].ip_dial_in.comms_protocol #=> String, one of "SIP", "SIPS", "H323"
resp.conference_providers[0].pstn_dial_in.country_code #=> String
resp.conference_providers[0].pstn_dial_in.phone_number #=> String
resp.conference_providers[0].pstn_dial_in.one_click_id_delay #=> String
resp.conference_providers[0].pstn_dial_in.one_click_pin_delay #=> String
resp.conference_providers[0].meeting_setting.require_pin #=> String, one of "YES", "NO", "OPTIONAL"
resp.next_token #=> String

Options Hash (options):

  • :next_token (String)

    The tokens used for pagination.

  • :max_results (Integer)

    The maximum number of conference providers to be returned, per paginated calls.

Returns:

See Also:

#list_device_events(options = {}) ⇒ Types::ListDeviceEventsResponse

Lists the device event history, including device connection status, for up to 30 days.

Examples:

Request syntax with placeholder values


resp = client.list_device_events({
  device_arn: "Arn", # required
  event_type: "CONNECTION_STATUS", # accepts CONNECTION_STATUS, DEVICE_STATUS
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.device_events #=> Array
resp.device_events[0].type #=> String, one of "CONNECTION_STATUS", "DEVICE_STATUS"
resp.device_events[0].value #=> String
resp.device_events[0].timestamp #=> Time
resp.next_token #=> String

Options Hash (options):

  • :device_arn (required, String)

    The ARN of a device.

  • :event_type (String)

    The event type to filter device events. If EventType isn\'t specified, this returns a list of all device events in reverse chronological order. If EventType is specified, this returns a list of device events for that EventType in reverse chronological order.

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response only includes results beyond the token, up to the value specified by MaxResults. When the end of results is reached, the response has a value of null.

  • :max_results (Integer)

    The maximum number of results to include in the response. The default value is 50. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

Returns:

See Also:

#list_gateway_groups(options = {}) ⇒ Types::ListGatewayGroupsResponse

Retrieves a list of gateway group summaries. Use GetGatewayGroup to retrieve details of a specific gateway group.

Examples:

Request syntax with placeholder values


resp = client.list_gateway_groups({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.gateway_groups #=> Array
resp.gateway_groups[0].arn #=> String
resp.gateway_groups[0].name #=> String
resp.gateway_groups[0].description #=> String
resp.next_token #=> String

Options Hash (options):

  • :next_token (String)

    The token used to paginate though multiple pages of gateway group summaries.

  • :max_results (Integer)

    The maximum number of gateway group summaries to return. The default is 50.

Returns:

See Also:

#list_gateways(options = {}) ⇒ Types::ListGatewaysResponse

Retrieves a list of gateway summaries. Use GetGateway to retrieve details of a specific gateway. An optional gateway group ARN can be provided to only retrieve gateway summaries of gateways that are associated with that gateway group ARN.

Examples:

Request syntax with placeholder values


resp = client.list_gateways({
  gateway_group_arn: "Arn",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.gateways #=> Array
resp.gateways[0].arn #=> String
resp.gateways[0].name #=> String
resp.gateways[0].description #=> String
resp.gateways[0].gateway_group_arn #=> String
resp.gateways[0].software_version #=> String
resp.next_token #=> String

Options Hash (options):

  • :gateway_group_arn (String)

    The gateway group ARN for which to list gateways.

  • :next_token (String)

    The token used to paginate though multiple pages of gateway summaries.

  • :max_results (Integer)

    The maximum number of gateway summaries to return. The default is 50.

Returns:

See Also:

#list_skills(options = {}) ⇒ Types::ListSkillsResponse

Lists all enabled skills in a specific skill group.

Examples:

Request syntax with placeholder values


resp = client.list_skills({
  skill_group_arn: "Arn",
  enablement_type: "ENABLED", # accepts ENABLED, PENDING
  skill_type: "PUBLIC", # accepts PUBLIC, PRIVATE, ALL
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.skill_summaries #=> Array
resp.skill_summaries[0].skill_id #=> String
resp.skill_summaries[0].skill_name #=> String
resp.skill_summaries[0].supports_linking #=> true/false
resp.skill_summaries[0].enablement_type #=> String, one of "ENABLED", "PENDING"
resp.skill_summaries[0].skill_type #=> String, one of "PUBLIC", "PRIVATE"
resp.next_token #=> String

Options Hash (options):

  • :skill_group_arn (String)

    The ARN of the skill group for which to list enabled skills. Required.

  • :enablement_type (String)

    Whether the skill is enabled under the user\'s account, or if it requires linking to be used.

  • :skill_type (String)

    Whether the skill is publicly available or is a private skill.

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults. Required.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved. Required.

Returns:

See Also:

#list_skills_store_categories(options = {}) ⇒ Types::ListSkillsStoreCategoriesResponse

Lists all categories in the Alexa skill store.

Examples:

Request syntax with placeholder values


resp = client.list_skills_store_categories({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.category_list #=> Array
resp.category_list[0].category_id #=> Integer
resp.category_list[0].category_name #=> String
resp.next_token #=> String

Options Hash (options):

  • :next_token (String)

    The tokens used for pagination.

  • :max_results (Integer)

    The maximum number of categories returned, per paginated calls.

Returns:

See Also:

#list_skills_store_skills_by_category(options = {}) ⇒ Types::ListSkillsStoreSkillsByCategoryResponse

Lists all skills in the Alexa skill store by category.

Examples:

Request syntax with placeholder values


resp = client.list_skills_store_skills_by_category({
  category_id: 1, # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.skills_store_skills #=> Array
resp.skills_store_skills[0].skill_id #=> String
resp.skills_store_skills[0].skill_name #=> String
resp.skills_store_skills[0].short_description #=> String
resp.skills_store_skills[0].icon_url #=> String
resp.skills_store_skills[0].sample_utterances #=> Array
resp.skills_store_skills[0].sample_utterances[0] #=> String
resp.skills_store_skills[0].skill_details.product_description #=> String
resp.skills_store_skills[0].skill_details.invocation_phrase #=> String
resp.skills_store_skills[0].skill_details.release_date #=> String
resp.skills_store_skills[0].skill_details.end_user_license_agreement #=> String
resp.skills_store_skills[0].skill_details.generic_keywords #=> Array
resp.skills_store_skills[0].skill_details.generic_keywords[0] #=> String
resp.skills_store_skills[0].skill_details.bullet_points #=> Array
resp.skills_store_skills[0].skill_details.bullet_points[0] #=> String
resp.skills_store_skills[0].skill_details.new_in_this_version_bullet_points #=> Array
resp.skills_store_skills[0].skill_details.new_in_this_version_bullet_points[0] #=> String
resp.skills_store_skills[0].skill_details.skill_types #=> Array
resp.skills_store_skills[0].skill_details.skill_types[0] #=> String
resp.skills_store_skills[0].skill_details.reviews #=> Hash
resp.skills_store_skills[0].skill_details.reviews["ReviewKey"] #=> String
resp.skills_store_skills[0].skill_details.developer_info.developer_name #=> String
resp.skills_store_skills[0].skill_details.developer_info.privacy_policy #=> String
resp.skills_store_skills[0].skill_details.developer_info.email #=> String
resp.skills_store_skills[0].skill_details.developer_info.url #=> String
resp.skills_store_skills[0].supports_linking #=> true/false
resp.next_token #=> String

Options Hash (options):

  • :category_id (required, Integer)

    The category ID for which the skills are being retrieved from the skill store.

  • :next_token (String)

    The tokens used for pagination.

  • :max_results (Integer)

    The maximum number of skills returned per paginated calls.

Returns:

See Also:

#list_smart_home_appliances(options = {}) ⇒ Types::ListSmartHomeAppliancesResponse

Lists all of the smart home appliances associated with a room.

Examples:

Request syntax with placeholder values


resp = client.list_smart_home_appliances({
  room_arn: "Arn", # required
  max_results: 1,
  next_token: "NextToken",
})

Response structure


resp.smart_home_appliances #=> Array
resp.smart_home_appliances[0].friendly_name #=> String
resp.smart_home_appliances[0].description #=> String
resp.smart_home_appliances[0].manufacturer_name #=> String
resp.next_token #=> String

Options Hash (options):

  • :room_arn (required, String)

    The room that the appliances are associated with.

  • :max_results (Integer)

    The maximum number of appliances to be returned, per paginated calls.

  • :next_token (String)

    The tokens used for pagination.

Returns:

See Also:

#list_tags(options = {}) ⇒ Types::ListTagsResponse

Lists all tags for the specified resource.

Examples:

Request syntax with placeholder values


resp = client.list_tags({
  arn: "Arn", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.tags #=> Array
resp.tags[0].key #=> String
resp.tags[0].value #=> String
resp.next_token #=> String

Options Hash (options):

  • :arn (required, String)

    The ARN of the specified resource for which to list tags.

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

Returns:

See Also:

#put_conference_preference(options = {}) ⇒ Struct

Sets the conference preferences on a specific conference provider at the account level.

Examples:

Request syntax with placeholder values


resp = client.put_conference_preference({
  conference_preference: { # required
    default_conference_provider_arn: "Arn",
  },
})

Options Hash (options):

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#put_invitation_configuration(options = {}) ⇒ Struct

Configures the email template for the user enrollment invitation with the specified attributes.

Examples:

Request syntax with placeholder values


resp = client.put_invitation_configuration({
  organization_name: "OrganizationName", # required
  contact_email: "Email",
  private_skill_ids: ["SkillId"],
})

Options Hash (options):

  • :organization_name (required, String)

    The name of the organization sending the enrollment invite to a user.

  • :contact_email (String)

    The email ID of the organization or individual contact that the enrolled user can use.

  • :private_skill_ids (Array<String>)

    The list of private skill IDs that you want to recommend to the user to enable in the invitation.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#put_room_skill_parameter(options = {}) ⇒ Struct

Updates room skill parameter details by room, skill, and parameter key ID. Not all skills have a room skill parameter.

Examples:

Request syntax with placeholder values


resp = client.put_room_skill_parameter({
  room_arn: "Arn",
  skill_id: "SkillId", # required
  room_skill_parameter: { # required
    parameter_key: "RoomSkillParameterKey", # required
    parameter_value: "RoomSkillParameterValue", # required
  },
})

Options Hash (options):

  • :room_arn (String)

    The ARN of the room associated with the room skill parameter. Required.

  • :skill_id (required, String)

    The ARN of the skill associated with the room skill parameter. Required.

  • :room_skill_parameter (required, Types::RoomSkillParameter)

    The updated room skill parameter. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#put_skill_authorization(options = {}) ⇒ Struct

Links a user's account to a third-party skill provider. If this API operation is called by an assumed IAM role, the skill being linked must be a private skill. Also, the skill must be owned by the AWS account that assumed the IAM role.

Examples:

Request syntax with placeholder values


resp = client.put_skill_authorization({
  authorization_result: { # required
    "Key" => "Value",
  },
  skill_id: "SkillId", # required
  room_arn: "Arn",
})

Options Hash (options):

  • :authorization_result (required, Hash<String,String>)

    The authorization result specific to OAUTH code grant output. \"Code” must be populated in the AuthorizationResult map to establish the authorization.

  • :skill_id (required, String)

    The unique identifier of a skill.

  • :room_arn (String)

    The room that the skill is authorized for.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#register_avs_device(options = {}) ⇒ Types::RegisterAVSDeviceResponse

Registers an Alexa-enabled device built by an Original Equipment Manufacturer (OEM) using Alexa Voice Service (AVS).

Examples:

Request syntax with placeholder values


resp = client.register_avs_device({
  client_id: "ClientId", # required
  user_code: "UserCode", # required
  product_id: "ProductId", # required
  device_serial_number: "DeviceSerialNumberForAVS", # required
  amazon_id: "AmazonId", # required
})

Response structure


resp.device_arn #=> String

Options Hash (options):

  • :client_id (required, String)

    The client ID of the OEM used for code-based linking authorization on an AVS device.

  • :user_code (required, String)

    The code that is obtained after your AVS device has made a POST request to LWA as a part of the Device Authorization Request component of the OAuth code-based linking specification.

  • :product_id (required, String)

    The product ID used to identify your AVS device during authorization.

  • :device_serial_number (required, String)

    The key generated by the OEM that uniquely identifies a specified instance of your AVS device.

  • :amazon_id (required, String)

    The device type ID for your AVS device generated by Amazon when the OEM creates a new product on Amazon\'s Developer Console.

Returns:

See Also:

#reject_skill(options = {}) ⇒ Struct

Disassociates a skill from the organization under a user's AWS account. If the skill is a private skill, it moves to an AcceptStatus of PENDING. Any private or public skill that is rejected can be added later by calling the ApproveSkill API.

Examples:

Request syntax with placeholder values


resp = client.reject_skill({
  skill_id: "SkillId", # required
})

Options Hash (options):

  • :skill_id (required, String)

    The unique identifier of the skill.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#resolve_room(options = {}) ⇒ Types::ResolveRoomResponse

Determines the details for the room from which a skill request was invoked. This operation is used by skill developers.

Examples:

Request syntax with placeholder values


resp = client.resolve_room({
  user_id: "UserId", # required
  skill_id: "SkillId", # required
})

Response structure


resp.room_arn #=> String
resp.room_name #=> String
resp.room_skill_parameters #=> Array
resp.room_skill_parameters[0].parameter_key #=> String
resp.room_skill_parameters[0].parameter_value #=> String

Options Hash (options):

  • :user_id (required, String)

    The ARN of the user. Required.

  • :skill_id (required, String)

    The ARN of the skill that was requested. Required.

Returns:

See Also:

#revoke_invitation(options = {}) ⇒ Struct

Revokes an invitation and invalidates the enrollment URL.

Examples:

Request syntax with placeholder values


resp = client.revoke_invitation({
  user_arn: "Arn",
  enrollment_id: "EnrollmentId",
})

Options Hash (options):

  • :user_arn (String)

    The ARN of the user for whom to revoke an enrollment invitation. Required.

  • :enrollment_id (String)

    The ARN of the enrollment invitation to revoke. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#search_address_books(options = {}) ⇒ Types::SearchAddressBooksResponse

Searches address books and lists the ones that meet a set of filter and sort criteria.

Examples:

Request syntax with placeholder values


resp = client.search_address_books({
  filters: [
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  sort_criteria: [
    {
      key: "SortKey", # required
      value: "ASC", # required, accepts ASC, DESC
    },
  ],
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.address_books #=> Array
resp.address_books[0].address_book_arn #=> String
resp.address_books[0].name #=> String
resp.address_books[0].description #=> String
resp.next_token #=> String
resp.total_count #=> Integer

Options Hash (options):

  • :filters (Array<Types::Filter>)

    The filters to use to list a specified set of address books. The supported filter key is AddressBookName.

  • :sort_criteria (Array<Types::Sort>)

    The sort order to use in listing the specified set of address books. The supported sort key is AddressBookName.

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response only includes results beyond the token, up to the value specified by MaxResults.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

Returns:

See Also:

#search_contacts(options = {}) ⇒ Types::SearchContactsResponse

Searches contacts and lists the ones that meet a set of filter and sort criteria.

Examples:

Request syntax with placeholder values


resp = client.search_contacts({
  filters: [
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  sort_criteria: [
    {
      key: "SortKey", # required
      value: "ASC", # required, accepts ASC, DESC
    },
  ],
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.contacts #=> Array
resp.contacts[0].contact_arn #=> String
resp.contacts[0].display_name #=> String
resp.contacts[0].first_name #=> String
resp.contacts[0].last_name #=> String
resp.contacts[0].phone_number #=> String
resp.contacts[0].phone_numbers #=> Array
resp.contacts[0].phone_numbers[0].number #=> String
resp.contacts[0].phone_numbers[0].type #=> String, one of "MOBILE", "WORK", "HOME"
resp.contacts[0].sip_addresses #=> Array
resp.contacts[0].sip_addresses[0].uri #=> String
resp.contacts[0].sip_addresses[0].type #=> String, one of "WORK"
resp.next_token #=> String
resp.total_count #=> Integer

Options Hash (options):

  • :filters (Array<Types::Filter>)

    The filters to use to list a specified set of address books. The supported filter keys are DisplayName, FirstName, LastName, and AddressBookArns.

  • :sort_criteria (Array<Types::Sort>)

    The sort order to use in listing the specified set of contacts. The supported sort keys are DisplayName, FirstName, and LastName.

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response only includes results beyond the token, up to the value specified by MaxResults.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

Returns:

See Also:

#search_devices(options = {}) ⇒ Types::SearchDevicesResponse

Searches devices and lists the ones that meet a set of filter criteria.

Examples:

Request syntax with placeholder values


resp = client.search_devices({
  next_token: "NextToken",
  max_results: 1,
  filters: [
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  sort_criteria: [
    {
      key: "SortKey", # required
      value: "ASC", # required, accepts ASC, DESC
    },
  ],
})

Response structure


resp.devices #=> Array
resp.devices[0].device_arn #=> String
resp.devices[0].device_serial_number #=> String
resp.devices[0].device_type #=> String
resp.devices[0].device_name #=> String
resp.devices[0].software_version #=> String
resp.devices[0].mac_address #=> String
resp.devices[0].device_status #=> String, one of "READY", "PENDING", "WAS_OFFLINE", "DEREGISTERED", "FAILED"
resp.devices[0].network_profile_arn #=> String
resp.devices[0].network_profile_name #=> String
resp.devices[0].room_arn #=> String
resp.devices[0].room_name #=> String
resp.devices[0].device_status_info.device_status_details #=> Array
resp.devices[0].device_status_info.device_status_details[0].feature #=> String, one of "BLUETOOTH", "VOLUME", "NOTIFICATIONS", "LISTS", "SKILLS", "NETWORK_PROFILE", "SETTINGS", "ALL"
resp.devices[0].device_status_info.device_status_details[0].code #=> String, one of "DEVICE_SOFTWARE_UPDATE_NEEDED", "DEVICE_WAS_OFFLINE", "CREDENTIALS_ACCESS_FAILURE", "TLS_VERSION_MISMATCH", "ASSOCIATION_REJECTION", "AUTHENTICATION_FAILURE", "DHCP_FAILURE", "INTERNET_UNAVAILABLE", "DNS_FAILURE", "UNKNOWN_FAILURE", "CERTIFICATE_ISSUING_LIMIT_EXCEEDED", "INVALID_CERTIFICATE_AUTHORITY", "NETWORK_PROFILE_NOT_FOUND", "INVALID_PASSWORD_STATE", "PASSWORD_NOT_FOUND"
resp.devices[0].device_status_info.connection_status #=> String, one of "ONLINE", "OFFLINE"
resp.next_token #=> String
resp.total_count #=> Integer

Options Hash (options):

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :filters (Array<Types::Filter>)

    The filters to use to list a specified set of devices. Supported filter keys are DeviceName, DeviceStatus, DeviceStatusDetailCode, RoomName, DeviceType, DeviceSerialNumber, UnassociatedOnly, ConnectionStatus (ONLINE and OFFLINE), NetworkProfileName, NetworkProfileArn, Feature, and FailureCode.

  • :sort_criteria (Array<Types::Sort>)

    The sort order to use in listing the specified set of devices. Supported sort keys are DeviceName, DeviceStatus, RoomName, DeviceType, DeviceSerialNumber, ConnectionStatus, NetworkProfileName, NetworkProfileArn, Feature, and FailureCode.

Returns:

See Also:

#search_network_profiles(options = {}) ⇒ Types::SearchNetworkProfilesResponse

Searches network profiles and lists the ones that meet a set of filter and sort criteria.

Examples:

Request syntax with placeholder values


resp = client.search_network_profiles({
  next_token: "NextToken",
  max_results: 1,
  filters: [
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  sort_criteria: [
    {
      key: "SortKey", # required
      value: "ASC", # required, accepts ASC, DESC
    },
  ],
})

Response structure


resp.network_profiles #=> Array
resp.network_profiles[0].network_profile_arn #=> String
resp.network_profiles[0].network_profile_name #=> String
resp.network_profiles[0].description #=> String
resp.network_profiles[0].ssid #=> String
resp.network_profiles[0].security_type #=> String, one of "OPEN", "WEP", "WPA_PSK", "WPA2_PSK", "WPA2_ENTERPRISE"
resp.network_profiles[0].eap_method #=> String, one of "EAP_TLS"
resp.network_profiles[0].certificate_authority_arn #=> String
resp.next_token #=> String
resp.total_count #=> Integer

Options Hash (options):

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :filters (Array<Types::Filter>)

    The filters to use to list a specified set of network profiles. Valid filters are NetworkProfileName, Ssid, and SecurityType.

  • :sort_criteria (Array<Types::Sort>)

    The sort order to use to list the specified set of network profiles. Valid sort criteria includes NetworkProfileName, Ssid, and SecurityType.

Returns:

See Also:

#search_profiles(options = {}) ⇒ Types::SearchProfilesResponse

Searches room profiles and lists the ones that meet a set of filter criteria.

Examples:

Request syntax with placeholder values


resp = client.search_profiles({
  next_token: "NextToken",
  max_results: 1,
  filters: [
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  sort_criteria: [
    {
      key: "SortKey", # required
      value: "ASC", # required, accepts ASC, DESC
    },
  ],
})

Response structure


resp.profiles #=> Array
resp.profiles[0].profile_arn #=> String
resp.profiles[0].profile_name #=> String
resp.profiles[0].is_default #=> true/false
resp.profiles[0].address #=> String
resp.profiles[0].timezone #=> String
resp.profiles[0].distance_unit #=> String, one of "METRIC", "IMPERIAL"
resp.profiles[0].temperature_unit #=> String, one of "FAHRENHEIT", "CELSIUS"
resp.profiles[0].wake_word #=> String, one of "ALEXA", "AMAZON", "ECHO", "COMPUTER"
resp.next_token #=> String
resp.total_count #=> Integer

Options Hash (options):

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :filters (Array<Types::Filter>)

    The filters to use to list a specified set of room profiles. Supported filter keys are ProfileName and Address. Required.

  • :sort_criteria (Array<Types::Sort>)

    The sort order to use in listing the specified set of room profiles. Supported sort keys are ProfileName and Address.

Returns:

See Also:

#search_rooms(options = {}) ⇒ Types::SearchRoomsResponse

Searches rooms and lists the ones that meet a set of filter and sort criteria.

Examples:

Request syntax with placeholder values


resp = client.search_rooms({
  next_token: "NextToken",
  max_results: 1,
  filters: [
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  sort_criteria: [
    {
      key: "SortKey", # required
      value: "ASC", # required, accepts ASC, DESC
    },
  ],
})

Response structure


resp.rooms #=> Array
resp.rooms[0].room_arn #=> String
resp.rooms[0].room_name #=> String
resp.rooms[0].description #=> String
resp.rooms[0].provider_calendar_id #=> String
resp.rooms[0].profile_arn #=> String
resp.rooms[0].profile_name #=> String
resp.next_token #=> String
resp.total_count #=> Integer

Options Hash (options):

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :filters (Array<Types::Filter>)

    The filters to use to list a specified set of rooms. The supported filter keys are RoomName and ProfileName.

  • :sort_criteria (Array<Types::Sort>)

    The sort order to use in listing the specified set of rooms. The supported sort keys are RoomName and ProfileName.

Returns:

See Also:

#search_skill_groups(options = {}) ⇒ Types::SearchSkillGroupsResponse

Searches skill groups and lists the ones that meet a set of filter and sort criteria.

Examples:

Request syntax with placeholder values


resp = client.search_skill_groups({
  next_token: "NextToken",
  max_results: 1,
  filters: [
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  sort_criteria: [
    {
      key: "SortKey", # required
      value: "ASC", # required, accepts ASC, DESC
    },
  ],
})

Response structure


resp.skill_groups #=> Array
resp.skill_groups[0].skill_group_arn #=> String
resp.skill_groups[0].skill_group_name #=> String
resp.skill_groups[0].description #=> String
resp.next_token #=> String
resp.total_count #=> Integer

Options Hash (options):

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults. Required.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.

  • :filters (Array<Types::Filter>)

    The filters to use to list a specified set of skill groups. The supported filter key is SkillGroupName.

  • :sort_criteria (Array<Types::Sort>)

    The sort order to use in listing the specified set of skill groups. The supported sort key is SkillGroupName.

Returns:

See Also:

#search_users(options = {}) ⇒ Types::SearchUsersResponse

Searches users and lists the ones that meet a set of filter and sort criteria.

Examples:

Request syntax with placeholder values


resp = client.search_users({
  next_token: "NextToken",
  max_results: 1,
  filters: [
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  sort_criteria: [
    {
      key: "SortKey", # required
      value: "ASC", # required, accepts ASC, DESC
    },
  ],
})

Response structure


resp.users #=> Array
resp.users[0].user_arn #=> String
resp.users[0].first_name #=> String
resp.users[0].last_name #=> String
resp.users[0].email #=> String
resp.users[0].enrollment_status #=> String, one of "INITIALIZED", "PENDING", "REGISTERED", "DISASSOCIATING", "DEREGISTERING"
resp.users[0].enrollment_id #=> String
resp.next_token #=> String
resp.total_count #=> Integer

Options Hash (options):

  • :next_token (String)

    An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults. Required.

  • :max_results (Integer)

    The maximum number of results to include in the response. If more results exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved. Required.

  • :filters (Array<Types::Filter>)

    The filters to use for listing a specific set of users. Required. Supported filter keys are UserId, FirstName, LastName, Email, and EnrollmentStatus.

  • :sort_criteria (Array<Types::Sort>)

    The sort order to use in listing the filtered set of users. Required. Supported sort keys are UserId, FirstName, LastName, Email, and EnrollmentStatus.

Returns:

See Also:

#send_announcement(options = {}) ⇒ Types::SendAnnouncementResponse

Triggers an asynchronous flow to send text, SSML, or audio announcements to rooms that are identified by a search or filter.

Examples:

Request syntax with placeholder values


resp = client.send_announcement({
  room_filters: [ # required
    {
      key: "FilterKey", # required
      values: ["FilterValue"], # required
    },
  ],
  content: { # required
    text_list: [
      {
        locale: "en-US", # required, accepts en-US
        value: "TextValue", # required
      },
    ],
    ssml_list: [
      {
        locale: "en-US", # required, accepts en-US
        value: "SsmlValue", # required
      },
    ],
    audio_list: [
      {
        locale: "en-US", # required, accepts en-US
        location: "AudioLocation", # required
      },
    ],
  },
  time_to_live_in_seconds: 1,
  client_request_token: "ClientRequestToken", # required
})

Response structure


resp.announcement_arn #=> String

Options Hash (options):

  • :room_filters (required, Array<Types::Filter>)

    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.

  • :content (required, Types::Content)

    The announcement content. This can contain only one of the three possible announcement types (text, SSML or audio).

  • :time_to_live_in_seconds (Integer)

    The time to live for an announcement. Default is 300. If delivery doesn\'t occur within this time, the announcement is not delivered.

  • :client_request_token (required, String)

    This parameter will be auto-filled on your behalf with a random UUIDv4 when no value is provided. The unique, user-specified identifier for the request that ensures idempotency.

Returns:

See Also:

#send_invitation(options = {}) ⇒ Struct

Sends an enrollment invitation email with a URL to a user. The URL is valid for 30 days or until you call this operation again, whichever comes first.

Examples:

Request syntax with placeholder values


resp = client.send_invitation({
  user_arn: "Arn",
})

Options Hash (options):

  • :user_arn (String)

    The ARN of the user to whom to send an invitation. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#start_device_sync(options = {}) ⇒ Struct

Resets a device and its account to the known default settings. This clears all information and settings set by previous users in the following ways:

  • Bluetooth - This unpairs all bluetooth devices paired with your echo device.

  • Volume - This resets the echo device's volume to the default value.

  • Notifications - This clears all notifications from your echo device.

  • Lists - This clears all to-do items from your echo device.

  • Settings - This internally syncs the room's profile (if the device is assigned to a room), contacts, address books, delegation access for account linking, and communications (if enabled on the room profile).

Examples:

Request syntax with placeholder values


resp = client.start_device_sync({
  room_arn: "Arn",
  device_arn: "Arn",
  features: ["BLUETOOTH"], # required, accepts BLUETOOTH, VOLUME, NOTIFICATIONS, LISTS, SKILLS, NETWORK_PROFILE, SETTINGS, ALL
})

Options Hash (options):

  • :room_arn (String)

    The ARN of the room with which the device to sync is associated. Required.

  • :device_arn (String)

    The ARN of the device to sync. Required.

  • :features (required, Array<String>)

    Request structure to start the device sync. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#start_smart_home_appliance_discovery(options = {}) ⇒ Struct

Initiates the discovery of any smart home appliances associated with the room.

Examples:

Request syntax with placeholder values


resp = client.start_smart_home_appliance_discovery({
  room_arn: "Arn", # required
})

Options Hash (options):

  • :room_arn (required, String)

    The room where smart home appliance discovery was initiated.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#tag_resource(options = {}) ⇒ Struct

Adds metadata tags to a specified resource.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  arn: "Arn", # required
  tags: [ # required
    {
      key: "TagKey", # required
      value: "TagValue", # required
    },
  ],
})

Options Hash (options):

  • :arn (required, String)

    The ARN of the resource to which to add metadata tags. Required.

  • :tags (required, Array<Types::Tag>)

    The tags to be added to the specified resource. Do not provide system tags. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#untag_resource(options = {}) ⇒ Struct

Removes metadata tags from a specified resource.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  arn: "Arn", # required
  tag_keys: ["TagKey"], # required
})

Options Hash (options):

  • :arn (required, String)

    The ARN of the resource from which to remove metadata tags. Required.

  • :tag_keys (required, Array<String>)

    The tags to be removed from the specified resource. Do not provide system tags. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_address_book(options = {}) ⇒ Struct

Updates address book details by the address book ARN.

Examples:

Request syntax with placeholder values


resp = client.update_address_book({
  address_book_arn: "Arn", # required
  name: "AddressBookName",
  description: "AddressBookDescription",
})

Options Hash (options):

  • :address_book_arn (required, String)

    The ARN of the room to update.

  • :name (String)

    The updated name of the room.

  • :description (String)

    The updated description of the room.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_business_report_schedule(options = {}) ⇒ Struct

Updates the configuration of the report delivery schedule with the specified schedule ARN.

Examples:

Request syntax with placeholder values


resp = client.update_business_report_schedule({
  schedule_arn: "Arn", # required
  s3_bucket_name: "CustomerS3BucketName",
  s3_key_prefix: "S3KeyPrefix",
  format: "CSV", # accepts CSV, CSV_ZIP
  schedule_name: "BusinessReportScheduleName",
  recurrence: {
    start_date: "Date",
  },
})

Options Hash (options):

  • :schedule_arn (required, String)

    The ARN of the business report schedule.

  • :s3_bucket_name (String)

    The S3 location of the output reports.

  • :s3_key_prefix (String)

    The S3 key where the report is delivered.

  • :format (String)

    The format of the generated report (individual CSV files or zipped files of individual files).

  • :schedule_name (String)

    The name identifier of the schedule.

  • :recurrence (Types::BusinessReportRecurrence)

    The recurrence of the reports.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_conference_provider(options = {}) ⇒ Struct

Updates an existing conference provider's settings.

Examples:

Request syntax with placeholder values


resp = client.update_conference_provider({
  conference_provider_arn: "Arn", # required
  conference_provider_type: "CHIME", # required, accepts CHIME, BLUEJEANS, FUZE, GOOGLE_HANGOUTS, POLYCOM, RINGCENTRAL, SKYPE_FOR_BUSINESS, WEBEX, ZOOM, CUSTOM
  ip_dial_in: {
    endpoint: "Endpoint", # required
    comms_protocol: "SIP", # required, accepts SIP, SIPS, H323
  },
  pstn_dial_in: {
    country_code: "CountryCode", # required
    phone_number: "OutboundPhoneNumber", # required
    one_click_id_delay: "OneClickIdDelay", # required
    one_click_pin_delay: "OneClickPinDelay", # required
  },
  meeting_setting: { # required
    require_pin: "YES", # required, accepts YES, NO, OPTIONAL
  },
})

Options Hash (options):

  • :conference_provider_arn (required, String)

    The ARN of the conference provider.

  • :conference_provider_type (required, String)

    The type of the conference provider.

  • :ip_dial_in (Types::IPDialIn)

    The IP endpoint and protocol for calling.

  • :pstn_dial_in (Types::PSTNDialIn)

    The information for PSTN conferencing.

  • :meeting_setting (required, Types::MeetingSetting)

    The meeting settings for the conference provider.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_contact(options = {}) ⇒ Struct

Updates the contact details by the contact ARN.

Examples:

Request syntax with placeholder values


resp = client.update_contact({
  contact_arn: "Arn", # required
  display_name: "ContactName",
  first_name: "ContactName",
  last_name: "ContactName",
  phone_number: "RawPhoneNumber",
  phone_numbers: [
    {
      number: "RawPhoneNumber", # required
      type: "MOBILE", # required, accepts MOBILE, WORK, HOME
    },
  ],
  sip_addresses: [
    {
      uri: "SipUri", # required
      type: "WORK", # required, accepts WORK
    },
  ],
})

Options Hash (options):

  • :contact_arn (required, String)

    The ARN of the contact to update.

  • :display_name (String)

    The updated display name of the contact.

  • :first_name (String)

    The updated first name of the contact.

  • :last_name (String)

    The updated last name of the contact.

  • :phone_number (String)

    The updated phone number of the contact. The phone number type defaults to WORK. You can either specify PhoneNumber or PhoneNumbers. We recommend that you use PhoneNumbers, which lets you specify the phone number type and multiple numbers.

  • :phone_numbers (Array<Types::PhoneNumber>)

    The list of phone numbers for the contact.

  • :sip_addresses (Array<Types::SipAddress>)

    The list of SIP addresses for the contact.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_device(options = {}) ⇒ Struct

Updates the device name by device ARN.

Examples:

Request syntax with placeholder values


resp = client.update_device({
  device_arn: "Arn",
  device_name: "DeviceName",
})

Options Hash (options):

  • :device_arn (String)

    The ARN of the device to update. Required.

  • :device_name (String)

    The updated device name. Required.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_gateway(options = {}) ⇒ Struct

Updates the details of a gateway. If any optional field is not provided, the existing corresponding value is left unmodified.

Examples:

Request syntax with placeholder values


resp = client.update_gateway({
  gateway_arn: "Arn", # required
  name: "GatewayName",
  description: "GatewayDescription",
  software_version: "GatewayVersion",
})

Options Hash (options):

  • :gateway_arn (required, String)

    The ARN of the gateway to update.

  • :name (String)

    The updated name of the gateway.

  • :description (String)

    The updated description of the gateway.

  • :software_version (String)

    The updated software version of the gateway. The gateway automatically updates its software version during normal operation.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_gateway_group(options = {}) ⇒ Struct

Updates the details of a gateway group. If any optional field is not provided, the existing corresponding value is left unmodified.

Examples:

Request syntax with placeholder values


resp = client.update_gateway_group({
  gateway_group_arn: "Arn", # required
  name: "GatewayGroupName",
  description: "GatewayGroupDescription",
})

Options Hash (options):

  • :gateway_group_arn (required, String)

    The ARN of the gateway group to update.

  • :name (String)

    The updated name of the gateway group.

  • :description (String)

    The updated description of the gateway group.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_network_profile(options = {}) ⇒ Struct

Updates a network profile by the network profile ARN.

Examples:

Request syntax with placeholder values


resp = client.update_network_profile({
  network_profile_arn: "Arn", # required
  network_profile_name: "NetworkProfileName",
  description: "NetworkProfileDescription",
  current_password: "CurrentWiFiPassword",
  next_password: "NextWiFiPassword",
  certificate_authority_arn: "Arn",
  trust_anchors: ["TrustAnchor"],
})

Options Hash (options):

  • :network_profile_arn (required, String)

    The ARN of the network profile associated with a device.

  • :network_profile_name (String)

    The name of the network profile associated with a device.

  • :description (String)

    Detailed information about a device\'s network profile.

  • :current_password (String)

    The current password of the Wi-Fi network.

  • :next_password (String)

    The next, or subsequent, password of the Wi-Fi network. This password is asynchronously transmitted to the device and is used when the password of the network changes to NextPassword.

  • :certificate_authority_arn (String)

    The ARN of the Private Certificate Authority (PCA) created in AWS Certificate Manager (ACM). This is used to issue certificates to the devices.

  • :trust_anchors (Array<String>)

    The root certificate(s) of your authentication server that will be installed on your devices and used to trust your authentication server during EAP negotiation.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_profile(options = {}) ⇒ Struct

Updates an existing room profile by room profile ARN.

Examples:

Request syntax with placeholder values


resp = client.update_profile({
  profile_arn: "Arn",
  profile_name: "ProfileName",
  is_default: false,
  timezone: "Timezone",
  address: "Address",
  distance_unit: "METRIC", # accepts METRIC, IMPERIAL
  temperature_unit: "FAHRENHEIT", # accepts FAHRENHEIT, CELSIUS
  wake_word: "ALEXA", # accepts ALEXA, AMAZON, ECHO, COMPUTER
  setup_mode_disabled: false,
  max_volume_limit: 1,
  pstn_enabled: false,
})

Options Hash (options):

  • :profile_arn (String)

    The ARN of the room profile to update. Required.

  • :profile_name (String)

    The updated name for the room profile.

  • :is_default (Boolean)

    Sets the profile as default if selected. If this is missing, no update is done to the default status.

  • :timezone (String)

    The updated timezone for the room profile.

  • :address (String)

    The updated address for the room profile.

  • :distance_unit (String)

    The updated distance unit for the room profile.

  • :temperature_unit (String)

    The updated temperature unit for the room profile.

  • :wake_word (String)

    The updated wake word for the room profile.

  • :setup_mode_disabled (Boolean)

    Whether the setup mode of the profile is enabled.

  • :max_volume_limit (Integer)

    The updated maximum volume limit for the room profile.

  • :pstn_enabled (Boolean)

    Whether the PSTN setting of the room profile is enabled.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_room(options = {}) ⇒ Struct

Updates room details by room ARN.

Examples:

Request syntax with placeholder values


resp = client.update_room({
  room_arn: "Arn",
  room_name: "RoomName",
  description: "RoomDescription",
  provider_calendar_id: "ProviderCalendarId",
  profile_arn: "Arn",
})

Options Hash (options):

  • :room_arn (String)

    The ARN of the room to update.

  • :room_name (String)

    The updated name for the room.

  • :description (String)

    The updated description for the room.

  • :provider_calendar_id (String)

    The updated provider calendar ARN for the room.

  • :profile_arn (String)

    The updated profile ARN for the room.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#update_skill_group(options = {}) ⇒ Struct

Updates skill group details by skill group ARN.

Examples:

Request syntax with placeholder values


resp = client.update_skill_group({
  skill_group_arn: "Arn",
  skill_group_name: "SkillGroupName",
  description: "SkillGroupDescription",
})

Options Hash (options):

  • :skill_group_arn (String)

    The ARN of the skill group to update.

  • :skill_group_name (String)

    The updated name for the skill group.

  • :description (String)

    The updated description for the skill group.

Returns:

  • (Struct)

    Returns an empty response.

See Also:

#wait_until(waiter_name, params = {}) {|waiter| ... } ⇒ Boolean

Waiters polls an API operation until a resource enters a desired state.

Basic Usage

Waiters will poll until they are succesful, they fail by entering a terminal state, or until a maximum number of attempts are made.

# polls in a loop, sleeping between attempts client.waiter_until(waiter_name, params)

Configuration

You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. You configure waiters by passing a block to #wait_until:

# poll for ~25 seconds
client.wait_until(...) do |w|
  w.max_attempts = 5
  w.delay = 5
end

Callbacks

You can be notified before each polling attempt and before each delay. If you throw :success or :failure from these callbacks, it will terminate the waiter.

started_at = Time.now
client.wait_until(...) do |w|

  # disable max attempts
  w.max_attempts = nil

  # poll for 1 hour, instead of a number of attempts
  w.before_wait do |attempts, response|
    throw :failure if Time.now - started_at > 3600
  end

end

Handling Errors

When a waiter is successful, it returns true. When a waiter fails, it raises an error. All errors raised extend from Waiters::Errors::WaiterFailed.

begin
  client.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
  # resource did not enter the desired state in time
end

Parameters:

  • waiter_name (Symbol)

    The name of the waiter. See #waiter_names for a full list of supported waiters.

  • params (Hash) (defaults to: {})

    Additional request parameters. See the #waiter_names for a list of supported waiters and what request they call. The called request determines the list of accepted parameters.

Yield Parameters:

Returns:

  • (Boolean)

    Returns true if the waiter was successful.

Raises:

  • (Errors::FailureStateError)

    Raised when the waiter terminates because the waiter has entered a state that it will not transition out of, preventing success.

  • (Errors::TooManyAttemptsError)

    Raised when the configured maximum number of attempts have been made, and the waiter is not yet successful.

  • (Errors::UnexpectedError)

    Raised when an error is encounted while polling for a resource that is not expected.

  • (Errors::NoSuchWaiterError)

    Raised when you request to wait for an unknown state.

#waiter_namesArray<Symbol>

Returns the list of supported waiters. The following table lists the supported waiters and the client method they call:

Waiter NameClient MethodDefault Delay:Default Max Attempts:

Returns:

  • (Array<Symbol>)

    the list of supported waiters.