IoT1ClickDevicesService

Table of Contents

Client

class IoT1ClickDevicesService.Client

A low-level client representing AWS IoT 1-Click Devices Service:

import boto3

client = boto3.client('iot1click-devices')

These are the available methods:

can_paginate(operation_name)

Check if an operation can be paginated.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Returns
True if the operation can be paginated, False otherwise.
claim_devices_by_claim_code(**kwargs)

Adds device(s) to your account (i.e., claim one or more devices) if and only if you received a claim code with the device(s).

See also: AWS API Documentation

Request Syntax

response = client.claim_devices_by_claim_code(
    ClaimCode='string'
)
Parameters
ClaimCode (string) --

[REQUIRED]

The claim code, starting with "C-", as provided by the device manufacturer.

Return type
dict
Returns
Response Syntax
{
    'ClaimCode': 'string',
    'Total': 123
}

Response Structure

  • (dict) --

    200 response

    • ClaimCode (string) --

      The claim code provided by the device manufacturer.

    • Total (integer) --

      The total number of devices associated with the claim code that has been processed in the claim request.

describe_device(**kwargs)

Given a device ID, returns a DescribeDeviceResponse object describing the details of the device.

See also: AWS API Documentation

Request Syntax

response = client.describe_device(
    DeviceId='string'
)
Parameters
DeviceId (string) --

[REQUIRED]

The unique identifier of the device.

Return type
dict
Returns
Response Syntax
{
    'DeviceDescription': {
        'Attributes': {
            'string': 'string'
        },
        'DeviceId': 'string',
        'Enabled': True|False,
        'RemainingLife': 123.0,
        'Type': 'string'
    }
}

Response Structure

  • (dict) --

    200 response

    • DeviceDescription (dict) --

      Device details.

      • Attributes (dict) --

        An array of zero or more elements of DeviceAttribute objects providing user specified device attributes.

        • (string) --
          • (string) --
      • DeviceId (string) --

        The unique identifier of the device.

      • Enabled (boolean) --

        A Boolean value indicating whether or not the device is enabled.

      • RemainingLife (float) --

        A value between 0 and 1 inclusive, representing the fraction of life remaining for the device.

      • Type (string) --

        The type of the device, such as "button".

finalize_device_claim(**kwargs)

Given a device ID, finalizes the claim request for the associated device.

Note

Claiming a device consists of initiating a claim, then publishing a device event, and finalizing the claim. For a device of type button, a device event can be published by simply clicking the device.

See also: AWS API Documentation

Request Syntax

response = client.finalize_device_claim(
    DeviceId='string'
)
Parameters
DeviceId (string) --

[REQUIRED]

The unique identifier of the device.

Return type
dict
Returns
Response Syntax
{
    'State': 'string'
}

Response Structure

  • (dict) --

    200 response

    • State (string) --

      The device's final claim state.

generate_presigned_url(ClientMethod, Params=None, ExpiresIn=3600, HttpMethod=None)

Generate a presigned url given a client, its method, and arguments

Parameters
  • ClientMethod (string) -- The client method to presign for
  • Params (dict) -- The parameters normally passed to ClientMethod.
  • ExpiresIn (int) -- The number of seconds the presigned url is valid for. By default it expires in an hour (3600 seconds)
  • HttpMethod (string) -- The http method to use on the generated url. By default, the http method is whatever is used in the method's model.
Returns

The presigned url

get_device_methods(**kwargs)

Given a device ID, returns the invokable methods associated with the device.

See also: AWS API Documentation

Request Syntax

response = client.get_device_methods(
    DeviceId='string'
)
Parameters
DeviceId (string) --

[REQUIRED]

The unique identifier of the device.

Return type
dict
Returns
Response Syntax
{
    'DeviceMethods': [
        {
            'DeviceType': 'string',
            'MethodName': 'string'
        },
    ]
}

Response Structure

  • (dict) --

    200 response

    • DeviceMethods (list) --

      List of available device APIs.

      • (dict) --
        • DeviceType (string) --

          The type of the device, such as "button".

        • MethodName (string) --

          The name of the method applicable to the deviceType.

get_paginator(operation_name)

Create a paginator for an operation.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Raises OperationNotPageableError
Raised if the operation is not pageable. You can use the client.can_paginate method to check if an operation is pageable.
Return type
L{botocore.paginate.Paginator}
Returns
A paginator object.
get_waiter(waiter_name)

Returns an object that can wait for some condition.

Parameters
waiter_name (str) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters.
Returns
The specified waiter object.
Return type
botocore.waiter.Waiter
initiate_device_claim(**kwargs)

Given a device ID, initiates a claim request for the associated device.

Note

Claiming a device consists of initiating a claim, then publishing a device event, and finalizing the claim. For a device of type button, a device event can be published by simply clicking the device.

See also: AWS API Documentation

Request Syntax

response = client.initiate_device_claim(
    DeviceId='string'
)
Parameters
DeviceId (string) --

[REQUIRED]

The unique identifier of the device.

Return type
dict
Returns
Response Syntax
{
    'State': 'string'
}

Response Structure

  • (dict) --

    200 response

    • State (string) --

      The device's final claim state.

invoke_device_method(**kwargs)

Given a device ID, issues a request to invoke a named device method (with possible parameters). See the "Example POST" code snippet below.

See also: AWS API Documentation

Request Syntax

response = client.invoke_device_method(
    DeviceId='string',
    DeviceMethod={
        'DeviceType': 'string',
        'MethodName': 'string'
    },
    DeviceMethodParameters='string'
)
Parameters
  • DeviceId (string) --

    [REQUIRED]

    The unique identifier of the device.

  • DeviceMethod (dict) --

    The device method to invoke.

    • DeviceType (string) --

      The type of the device, such as "button".

    • MethodName (string) --

      The name of the method applicable to the deviceType.

  • DeviceMethodParameters (string) -- A JSON encoded string containing the device method request parameters.
Return type

dict

Returns

Response Syntax

{
    'DeviceMethodResponse': 'string'
}

Response Structure

  • (dict) --

    200 response

    • DeviceMethodResponse (string) --

      A JSON encoded string containing the device method response.

list_device_events(**kwargs)

Using a device ID, returns a DeviceEventsResponse object containing an array of events for the device.

See also: AWS API Documentation

Request Syntax

response = client.list_device_events(
    DeviceId='string',
    FromTimeStamp=datetime(2015, 1, 1),
    MaxResults=123,
    NextToken='string',
    ToTimeStamp=datetime(2015, 1, 1)
)
Parameters
  • DeviceId (string) --

    [REQUIRED]

    The unique identifier of the device.

  • FromTimeStamp (datetime) --

    [REQUIRED]

    The start date for the device event query, in ISO8061 format. For example, 2018-03-28T15:45:12.880Z

  • MaxResults (integer) -- The maximum number of results to return per request. If not set, a default value of 100 is used.
  • NextToken (string) -- The token to retrieve the next set of results.
  • ToTimeStamp (datetime) --

    [REQUIRED]

    The end date for the device event query, in ISO8061 format. For example, 2018-03-28T15:45:12.880Z

Return type

dict

Returns

Response Syntax

{
    'Events': [
        {
            'Device': {
                'Attributes': {},
                'DeviceId': 'string',
                'Type': 'string'
            },
            'StdEvent': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    200 response

    • Events (list) --

      An array of zero or more elements describing the event(s) associated with the device.

      • (dict) --

        • Device (dict) --

          An object representing the device associated with the event.

          • Attributes (dict) --

            The user specified attributes associated with the device for an event.

          • DeviceId (string) --

            The unique identifier of the device.

          • Type (string) --

            The device type, such as "button".

        • StdEvent (string) --

          A serialized JSON object representing the device-type specific event.

    • NextToken (string) --

      The token to retrieve the next set of results.

list_devices(**kwargs)

Lists the 1-Click compatible devices associated with your AWS account.

See also: AWS API Documentation

Request Syntax

response = client.list_devices(
    DeviceType='string',
    MaxResults=123,
    NextToken='string'
)
Parameters
  • DeviceType (string) -- The type of the device, such as "button".
  • MaxResults (integer) -- The maximum number of results to return per request. If not set, a default value of 100 is used.
  • NextToken (string) -- The token to retrieve the next set of results.
Return type

dict

Returns

Response Syntax

{
    'Devices': [
        {
            'Attributes': {
                'string': 'string'
            },
            'DeviceId': 'string',
            'Enabled': True|False,
            'RemainingLife': 123.0,
            'Type': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    200 response

    • Devices (list) --

      A list of devices.

      • (dict) --

        • Attributes (dict) --

          An array of zero or more elements of DeviceAttribute objects providing user specified device attributes.

          • (string) --
            • (string) --
        • DeviceId (string) --

          The unique identifier of the device.

        • Enabled (boolean) --

          A Boolean value indicating whether or not the device is enabled.

        • RemainingLife (float) --

          A value between 0 and 1 inclusive, representing the fraction of life remaining for the device.

        • Type (string) --

          The type of the device, such as "button".

    • NextToken (string) --

      The token to retrieve the next set of results.

unclaim_device(**kwargs)

Disassociates a device from your AWS account using its device ID.

See also: AWS API Documentation

Request Syntax

response = client.unclaim_device(
    DeviceId='string'
)
Parameters
DeviceId (string) --

[REQUIRED]

The unique identifier of the device.

Return type
dict
Returns
Response Syntax
{
    'State': 'string'
}

Response Structure

  • (dict) --

    200 response

    • State (string) --

      The device's final claim state.

update_device_state(**kwargs)

Using a Boolean value (true or false), this operation enables or disables the device given a device ID.

See also: AWS API Documentation

Request Syntax

response = client.update_device_state(
    DeviceId='string',
    Enabled=True|False
)
Parameters
  • DeviceId (string) --

    [REQUIRED]

    The unique identifier of the device.

  • Enabled (boolean) -- If true, the device is enabled. If false, the device is disabled.
Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

    200 response