Alexa For Business

2020/06/15 - Alexa For Business - 5 updated api methods

Changes  Adding support for optional tags in CreateBusinessReportSchedule, CreateProfile and CreateSkillGroup APIs

CreateBusinessReportSchedule (updated) Link ¶
Changes (request)
{'Tags': [{'Key': 'string', 'Value': 'string'}]}

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

See also: AWS API Documentation

Request Syntax

client.create_business_report_schedule(
    ScheduleName='string',
    S3BucketName='string',
    S3KeyPrefix='string',
    Format='CSV'|'CSV_ZIP',
    ContentRange={
        'Interval': 'ONE_DAY'|'ONE_WEEK'|'THIRTY_DAYS'
    },
    Recurrence={
        'StartDate': 'string'
    },
    ClientRequestToken='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type ScheduleName

string

param ScheduleName

The name identifier of the schedule.

type S3BucketName

string

param S3BucketName

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.

type S3KeyPrefix

string

param S3KeyPrefix

The S3 key where the report is delivered.

type Format

string

param Format

[REQUIRED]

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

type ContentRange

dict

param ContentRange

[REQUIRED]

The content range of the reports.

  • Interval (string) -- [REQUIRED]

    The interval of the content range.

type Recurrence

dict

param Recurrence

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

  • StartDate (string) --

    The start date.

type ClientRequestToken

string

param ClientRequestToken

The client request token.

This field is autopopulated if not provided.

type Tags

list

param Tags

The tags for the business report schedule.

  • (dict) --

    A key-value pair that can be associated with a resource.

    • Key (string) -- [REQUIRED]

      The key of a tag. Tag keys are case-sensitive.

    • Value (string) -- [REQUIRED]

      The value of a tag. Tag values are case sensitive and can be null.

rtype

dict

returns

Response Syntax

{
    'ScheduleArn': 'string'
}

Response Structure

  • (dict) --

    • ScheduleArn (string) --

      The ARN of the business report schedule.

CreateProfile (updated) Link ¶
Changes (request)
{'Tags': [{'Key': 'string', 'Value': 'string'}]}

Creates a new room profile with the specified details.

See also: AWS API Documentation

Request Syntax

client.create_profile(
    ProfileName='string',
    Timezone='string',
    Address='string',
    DistanceUnit='METRIC'|'IMPERIAL',
    TemperatureUnit='FAHRENHEIT'|'CELSIUS',
    WakeWord='ALEXA'|'AMAZON'|'ECHO'|'COMPUTER',
    Locale='string',
    ClientRequestToken='string',
    SetupModeDisabled=True|False,
    MaxVolumeLimit=123,
    PSTNEnabled=True|False,
    MeetingRoomConfiguration={
        'RoomUtilizationMetricsEnabled': True|False,
        'EndOfMeetingReminder': {
            'ReminderAtMinutes': [
                123,
            ],
            'ReminderType': 'ANNOUNCEMENT_TIME_CHECK'|'ANNOUNCEMENT_VARIABLE_TIME_LEFT'|'CHIME'|'KNOCK',
            'Enabled': True|False
        },
        'InstantBooking': {
            'DurationInMinutes': 123,
            'Enabled': True|False
        },
        'RequireCheckIn': {
            'ReleaseAfterMinutes': 123,
            'Enabled': True|False
        }
    },
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type ProfileName

string

param ProfileName

[REQUIRED]

The name of a room profile.

type Timezone

string

param Timezone

[REQUIRED]

The time zone used by a room profile.

type Address

string

param Address

[REQUIRED]

The valid address for the room.

type DistanceUnit

string

param DistanceUnit

[REQUIRED]

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

type TemperatureUnit

string

param TemperatureUnit

[REQUIRED]

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

type WakeWord

string

param WakeWord

[REQUIRED]

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

type Locale

string

param Locale

The locale of the room profile. (This is currently only available to a limited preview audience.)

type ClientRequestToken

string

param ClientRequestToken

The user-specified token that is used during the creation of a profile.

This field is autopopulated if not provided.

type SetupModeDisabled

boolean

param SetupModeDisabled

Whether room profile setup is enabled.

type MaxVolumeLimit

integer

param MaxVolumeLimit

The maximum volume limit for a room profile.

type PSTNEnabled

boolean

param PSTNEnabled

Whether PSTN calling is enabled.

type MeetingRoomConfiguration

dict

param MeetingRoomConfiguration

The meeting room settings of a room profile.

  • RoomUtilizationMetricsEnabled (boolean) --

    Whether room utilization metrics are enabled or not.

  • EndOfMeetingReminder (dict) --

    Creates settings for the end of meeting reminder feature that are applied to a room profile. The end of meeting reminder enables Alexa to remind users when a meeting is ending.

    • ReminderAtMinutes (list) -- [REQUIRED]

      A range of 3 to 15 minutes that determines when the reminder begins.

      • (integer) --

    • ReminderType (string) -- [REQUIRED]

      The type of sound that users hear during the end of meeting reminder.

    • Enabled (boolean) -- [REQUIRED]

      Whether an end of meeting reminder is enabled or not.

  • InstantBooking (dict) --

    Settings to automatically book a room for a configured duration if it's free when joining a meeting with Alexa.

    • DurationInMinutes (integer) -- [REQUIRED]

      Duration between 15 and 240 minutes at increments of 15 that determines how long to book an available room when a meeting is started with Alexa.

    • Enabled (boolean) -- [REQUIRED]

      Whether instant booking is enabled or not.

  • RequireCheckIn (dict) --

    Settings for requiring a check in when a room is reserved. Alexa can cancel a room reservation if it's not checked into to make the room available for others. Users can check in by joining the meeting with Alexa or an AVS device, or by saying “Alexa, check in.”

    • ReleaseAfterMinutes (integer) -- [REQUIRED]

      Duration between 5 and 20 minutes to determine when to release the room if it's not checked into.

    • Enabled (boolean) -- [REQUIRED]

      Whether require check in is enabled or not.

type Tags

list

param Tags

The tags for the profile.

  • (dict) --

    A key-value pair that can be associated with a resource.

    • Key (string) -- [REQUIRED]

      The key of a tag. Tag keys are case-sensitive.

    • Value (string) -- [REQUIRED]

      The value of a tag. Tag values are case sensitive and can be null.

rtype

dict

returns

Response Syntax

{
    'ProfileArn': 'string'
}

Response Structure

  • (dict) --

    • ProfileArn (string) --

      The ARN of the newly created room profile in the response.

CreateSkillGroup (updated) Link ¶
Changes (request)
{'Tags': [{'Key': 'string', 'Value': 'string'}]}

Creates a skill group with a specified name and description.

See also: AWS API Documentation

Request Syntax

client.create_skill_group(
    SkillGroupName='string',
    Description='string',
    ClientRequestToken='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type SkillGroupName

string

param SkillGroupName

[REQUIRED]

The name for the skill group.

type Description

string

param Description

The description for the skill group.

type ClientRequestToken

string

param ClientRequestToken

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

This field is autopopulated if not provided.

type Tags

list

param Tags

The tags for the skill group.

  • (dict) --

    A key-value pair that can be associated with a resource.

    • Key (string) -- [REQUIRED]

      The key of a tag. Tag keys are case-sensitive.

    • Value (string) -- [REQUIRED]

      The value of a tag. Tag values are case sensitive and can be null.

rtype

dict

returns

Response Syntax

{
    'SkillGroupArn': 'string'
}

Response Structure

  • (dict) --

    • SkillGroupArn (string) --

      The ARN of the newly created skill group in the response.

GetDevice (updated) Link ¶
Changes (response)
{'Device': {'DeviceStatusInfo': {'DeviceStatusDetails': {'Code': {'CERTIFICATE_AUTHORITY_ACCESS_DENIED',
                                                                  'PASSWORD_MANAGER_ACCESS_DENIED'}}}}}

Gets the details of a device by device ARN.

See also: AWS API Documentation

Request Syntax

client.get_device(
    DeviceArn='string'
)
type DeviceArn

string

param DeviceArn

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

rtype

dict

returns

Response Syntax

{
    'Device': {
        'DeviceArn': 'string',
        'DeviceSerialNumber': 'string',
        'DeviceType': 'string',
        'DeviceName': 'string',
        'SoftwareVersion': 'string',
        'MacAddress': 'string',
        'RoomArn': 'string',
        'DeviceStatus': 'READY'|'PENDING'|'WAS_OFFLINE'|'DEREGISTERED'|'FAILED',
        'DeviceStatusInfo': {
            'DeviceStatusDetails': [
                {
                    'Feature': 'BLUETOOTH'|'VOLUME'|'NOTIFICATIONS'|'LISTS'|'SKILLS'|'NETWORK_PROFILE'|'SETTINGS'|'ALL',
                    'Code': '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'|'PASSWORD_MANAGER_ACCESS_DENIED'|'CERTIFICATE_AUTHORITY_ACCESS_DENIED'
                },
            ],
            'ConnectionStatus': 'ONLINE'|'OFFLINE',
            'ConnectionStatusUpdatedTime': datetime(2015, 1, 1)
        },
        'NetworkProfileInfo': {
            'NetworkProfileArn': 'string',
            'CertificateArn': 'string',
            'CertificateExpirationTime': datetime(2015, 1, 1)
        }
    }
}

Response Structure

  • (dict) --

    • Device (dict) --

      The details of the device requested. Required.

      • DeviceArn (string) --

        The ARN of a device.

      • DeviceSerialNumber (string) --

        The serial number of a device.

      • DeviceType (string) --

        The type of a device.

      • DeviceName (string) --

        The name of a device.

      • SoftwareVersion (string) --

        The software version of a device.

      • MacAddress (string) --

        The MAC address of a device.

      • RoomArn (string) --

        The room ARN of a device.

      • DeviceStatus (string) --

        The status of a device. If the status is not READY, check the DeviceStatusInfo value for details.

      • DeviceStatusInfo (dict) --

        Detailed information about a device's status.

        • DeviceStatusDetails (list) --

          One or more device status detail descriptions.

          • (dict) --

            Details of a device’s status.

            • Feature (string) --

              The list of available features on the device.

            • Code (string) --

              The device status detail code.

        • ConnectionStatus (string) --

          The latest available information about the connection status of a device.

        • ConnectionStatusUpdatedTime (datetime) --

          The time (in epoch) when the device connection status changed.

      • NetworkProfileInfo (dict) --

        Detailed information about a device's network profile.

        • NetworkProfileArn (string) --

          The ARN of the network profile associated with a device.

        • CertificateArn (string) --

          The ARN of the certificate associated with a device.

        • CertificateExpirationTime (datetime) --

          The time (in epoch) when the certificate expires.

SearchDevices (updated) Link ¶
Changes (response)
{'Devices': {'DeviceStatusInfo': {'DeviceStatusDetails': {'Code': {'CERTIFICATE_AUTHORITY_ACCESS_DENIED',
                                                                   'PASSWORD_MANAGER_ACCESS_DENIED'}}}}}

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

See also: AWS API Documentation

Request Syntax

client.search_devices(
    NextToken='string',
    MaxResults=123,
    Filters=[
        {
            'Key': 'string',
            'Values': [
                'string',
            ]
        },
    ],
    SortCriteria=[
        {
            'Key': 'string',
            'Value': 'ASC'|'DESC'
        },
    ]
)
type NextToken

string

param NextToken

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 .

type MaxResults

integer

param MaxResults

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.

type Filters

list

param Filters

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.

  • (dict) --

    A filter name and value pair that is used to return a more specific list of results. Filters can be used to match a set of resources by various criteria.

    • Key (string) -- [REQUIRED]

      The key of a filter.

    • Values (list) -- [REQUIRED]

      The values of a filter.

      • (string) --

type SortCriteria

list

param SortCriteria

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.

  • (dict) --

    An object representing a sort criteria.

    • Key (string) -- [REQUIRED]

      The sort key of a sort object.

    • Value (string) -- [REQUIRED]

      The sort value of a sort object.

rtype

dict

returns

Response Syntax

{
    'Devices': [
        {
            'DeviceArn': 'string',
            'DeviceSerialNumber': 'string',
            'DeviceType': 'string',
            'DeviceName': 'string',
            'SoftwareVersion': 'string',
            'MacAddress': 'string',
            'DeviceStatus': 'READY'|'PENDING'|'WAS_OFFLINE'|'DEREGISTERED'|'FAILED',
            'NetworkProfileArn': 'string',
            'NetworkProfileName': 'string',
            'RoomArn': 'string',
            'RoomName': 'string',
            'DeviceStatusInfo': {
                'DeviceStatusDetails': [
                    {
                        'Feature': 'BLUETOOTH'|'VOLUME'|'NOTIFICATIONS'|'LISTS'|'SKILLS'|'NETWORK_PROFILE'|'SETTINGS'|'ALL',
                        'Code': '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'|'PASSWORD_MANAGER_ACCESS_DENIED'|'CERTIFICATE_AUTHORITY_ACCESS_DENIED'
                    },
                ],
                'ConnectionStatus': 'ONLINE'|'OFFLINE',
                'ConnectionStatusUpdatedTime': datetime(2015, 1, 1)
            },
            'CreatedTime': datetime(2015, 1, 1)
        },
    ],
    'NextToken': 'string',
    'TotalCount': 123
}

Response Structure

  • (dict) --

    • Devices (list) --

      The devices that meet the specified set of filter criteria, in sort order.

      • (dict) --

        Device attributes.

        • DeviceArn (string) --

          The ARN of a device.

        • DeviceSerialNumber (string) --

          The serial number of a device.

        • DeviceType (string) --

          The type of a device.

        • DeviceName (string) --

          The name of a device.

        • SoftwareVersion (string) --

          The software version of a device.

        • MacAddress (string) --

          The MAC address of a device.

        • DeviceStatus (string) --

          The status of a device.

        • NetworkProfileArn (string) --

          The ARN of the network profile associated with a device.

        • NetworkProfileName (string) --

          The name of the network profile associated with a device.

        • RoomArn (string) --

          The room ARN associated with a device.

        • RoomName (string) --

          The name of the room associated with a device.

        • DeviceStatusInfo (dict) --

          Detailed information about a device's status.

          • DeviceStatusDetails (list) --

            One or more device status detail descriptions.

            • (dict) --

              Details of a device’s status.

              • Feature (string) --

                The list of available features on the device.

              • Code (string) --

                The device status detail code.

          • ConnectionStatus (string) --

            The latest available information about the connection status of a device.

          • ConnectionStatusUpdatedTime (datetime) --

            The time (in epoch) when the device connection status changed.

        • CreatedTime (datetime) --

          The time (in epoch) when the device data was created.

    • NextToken (string) --

      The token returned to indicate that there is more data available.

    • TotalCount (integer) --

      The total number of devices returned.