/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the greengrassv2-2020-11-30.normal.json service model.
*/
using System;
using System.Threading;
using System.Threading.Tasks;
using System.Collections.Generic;
using Amazon.Runtime;
using Amazon.GreengrassV2.Model;
namespace Amazon.GreengrassV2
{
///
/// Interface for accessing GreengrassV2
///
/// IoT Greengrass brings local compute, messaging, data management, sync, and ML inference
/// capabilities to edge devices. This enables devices to collect and analyze data closer
/// to the source of information, react autonomously to local events, and communicate
/// securely with each other on local networks. Local devices can also communicate securely
/// with Amazon Web Services IoT Core and export IoT data to the Amazon Web Services Cloud.
/// IoT Greengrass developers can use Lambda functions and components to create and deploy
/// applications to fleets of edge devices for local operation.
///
///
///
/// IoT Greengrass Version 2 provides a new major version of the IoT Greengrass Core software,
/// new APIs, and a new console. Use this API reference to learn how to use the IoT Greengrass
/// V2 API operations to manage components, manage deployments, and core devices.
///
///
///
/// For more information, see What
/// is IoT Greengrass? in the IoT Greengrass V2 Developer Guide.
///
///
public partial interface IAmazonGreengrassV2 : IAmazonService, IDisposable
{
#if AWS_ASYNC_ENUMERABLES_API
///
/// Paginators for the service
///
IGreengrassV2PaginatorFactory Paginators { get; }
#endif
#region AssociateServiceRoleToAccount
///
/// Associates a Greengrass service role with IoT Greengrass for your Amazon Web Services
/// account in this Amazon Web Services Region. IoT Greengrass uses this role to verify
/// the identity of client devices and manage core device connectivity information. The
/// role must include the AWSGreengrassResourceAccessRolePolicy
/// managed policy or a custom policy that defines equivalent permissions for the IoT
/// Greengrass features that you use. For more information, see Greengrass
/// service role in the IoT Greengrass Version 2 Developer Guide.
///
/// Container for the necessary parameters to execute the AssociateServiceRoleToAccount service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the AssociateServiceRoleToAccount service method, as returned by GreengrassV2.
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for AssociateServiceRoleToAccount Operation
Task AssociateServiceRoleToAccountAsync(AssociateServiceRoleToAccountRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region BatchAssociateClientDeviceWithCoreDevice
///
/// Associates a list of client devices with a core device. Use this API operation to
/// specify which client devices can discover a core device through cloud discovery. With
/// cloud discovery, client devices connect to IoT Greengrass to retrieve associated core
/// devices' connectivity information and certificates. For more information, see Configure
/// cloud discovery in the IoT Greengrass V2 Developer Guide.
///
///
///
/// Client devices are local IoT devices that connect to and communicate with an IoT Greengrass
/// core device over MQTT. You can connect client devices to a core device to sync MQTT
/// messages and data to Amazon Web Services IoT Core and interact with client devices
/// in Greengrass components. For more information, see Interact
/// with local IoT devices in the IoT Greengrass V2 Developer Guide.
///
///
///
/// Container for the necessary parameters to execute the BatchAssociateClientDeviceWithCoreDevice service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchAssociateClientDeviceWithCoreDevice service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for BatchAssociateClientDeviceWithCoreDevice Operation
Task BatchAssociateClientDeviceWithCoreDeviceAsync(BatchAssociateClientDeviceWithCoreDeviceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region BatchDisassociateClientDeviceFromCoreDevice
///
/// Disassociates a list of client devices from a core device. After you disassociate
/// a client device from a core device, the client device won't be able to use cloud discovery
/// to retrieve the core device's connectivity information and certificates.
///
/// Container for the necessary parameters to execute the BatchDisassociateClientDeviceFromCoreDevice service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the BatchDisassociateClientDeviceFromCoreDevice service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for BatchDisassociateClientDeviceFromCoreDevice Operation
Task BatchDisassociateClientDeviceFromCoreDeviceAsync(BatchDisassociateClientDeviceFromCoreDeviceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CancelDeployment
///
/// Cancels a deployment. This operation cancels the deployment for devices that haven't
/// yet received it. If a device already received the deployment, this operation doesn't
/// change anything for that device.
///
/// Container for the necessary parameters to execute the CancelDeployment service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CancelDeployment service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// Your request has conflicting operations. This can occur if you're trying to perform
/// more than one operation on the same resource at the same time.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for CancelDeployment Operation
Task CancelDeploymentAsync(CancelDeploymentRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateComponentVersion
///
/// Creates a component. Components are software that run on Greengrass core devices.
/// After you develop and test a component on your core device, you can use this operation
/// to upload your component to IoT Greengrass. Then, you can deploy the component to
/// other core devices.
///
///
///
/// You can use this operation to do the following:
///
/// -
///
/// Create components from recipes
///
///
///
/// Create a component from a recipe, which is a file that defines the component's metadata,
/// parameters, dependencies, lifecycle, artifacts, and platform capability. For more
/// information, see IoT
/// Greengrass component recipe reference in the IoT Greengrass V2 Developer Guide.
///
///
///
/// To create a component from a recipe, specify
inlineRecipe
when you call
/// this operation.
///
/// -
///
/// Create components from Lambda functions
///
///
///
/// Create a component from an Lambda function that runs on IoT Greengrass. This creates
/// a recipe and artifacts from the Lambda function's deployment package. You can use
/// this operation to migrate Lambda functions from IoT Greengrass V1 to IoT Greengrass
/// V2.
///
///
///
/// This function only accepts Lambda functions that use the following runtimes:
///
///
-
///
/// Python 2.7 –
python2.7
///
/// -
///
/// Python 3.7 –
python3.7
///
/// -
///
/// Python 3.8 –
python3.8
///
/// -
///
/// Python 3.9 –
python3.9
///
/// -
///
/// Java 8 –
java8
///
/// -
///
/// Java 11 –
java11
///
/// -
///
/// Node.js 10 –
nodejs10.x
///
/// -
///
/// Node.js 12 –
nodejs12.x
///
/// -
///
/// Node.js 14 –
nodejs14.x
///
///
///
/// To create a component from a Lambda function, specify lambdaFunction
/// when you call this operation.
///
///
///
/// IoT Greengrass currently supports Lambda functions on only Linux core devices.
///
///
///
/// Container for the necessary parameters to execute the CreateComponentVersion service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateComponentVersion service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// Your request has conflicting operations. This can occur if you're trying to perform
/// more than one operation on the same resource at the same time.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The request is already in progress. This exception occurs when you use a client token
/// for multiple requests while IoT Greengrass is still processing an earlier request
/// that uses the same client token.
///
///
/// Your request exceeds a service quota. For example, you might have the maximum number
/// of components that you can create.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for CreateComponentVersion Operation
Task CreateComponentVersionAsync(CreateComponentVersionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region CreateDeployment
///
/// Creates a continuous deployment for a target, which is a Greengrass core device or
/// group of core devices. When you add a new core device to a group of core devices that
/// has a deployment, IoT Greengrass deploys that group's deployment to the new device.
///
///
///
/// You can define one deployment for each target. When you create a new deployment for
/// a target that has an existing deployment, you replace the previous deployment. IoT
/// Greengrass applies the new deployment to the target devices.
///
///
///
/// Every deployment has a revision number that indicates how many deployment revisions
/// you define for a target. Use this operation to create a new revision of an existing
/// deployment.
///
///
///
/// For more information, see the Create
/// deployments in the IoT Greengrass V2 Developer Guide.
///
///
/// Container for the necessary parameters to execute the CreateDeployment service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the CreateDeployment service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// Your request has conflicting operations. This can occur if you're trying to perform
/// more than one operation on the same resource at the same time.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The request is already in progress. This exception occurs when you use a client token
/// for multiple requests while IoT Greengrass is still processing an earlier request
/// that uses the same client token.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for CreateDeployment Operation
Task CreateDeploymentAsync(CreateDeploymentRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteComponent
///
/// Deletes a version of a component from IoT Greengrass.
///
///
///
/// This operation deletes the component's recipe and artifacts. As a result, deployments
/// that refer to this component version will fail. If you have deployments that use this
/// component version, you can remove the component from the deployment or update the
/// deployment to use a valid version.
///
///
///
/// Container for the necessary parameters to execute the DeleteComponent service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteComponent service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// Your request has conflicting operations. This can occur if you're trying to perform
/// more than one operation on the same resource at the same time.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for DeleteComponent Operation
Task DeleteComponentAsync(DeleteComponentRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteCoreDevice
///
/// Deletes a Greengrass core device, which is an IoT thing. This operation removes the
/// core device from the list of core devices. This operation doesn't delete the IoT thing.
/// For more information about how to delete the IoT thing, see DeleteThing
/// in the IoT API Reference.
///
/// Container for the necessary parameters to execute the DeleteCoreDevice service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteCoreDevice service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// Your request has conflicting operations. This can occur if you're trying to perform
/// more than one operation on the same resource at the same time.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for DeleteCoreDevice Operation
Task DeleteCoreDeviceAsync(DeleteCoreDeviceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DeleteDeployment
///
/// Deletes a deployment. To delete an active deployment, you must first cancel it. For
/// more information, see CancelDeployment.
///
///
///
/// Deleting a deployment doesn't affect core devices that run that deployment, because
/// core devices store the deployment's configuration on the device. Additionally, core
/// devices can roll back to a previous deployment that has been deleted.
///
///
/// Container for the necessary parameters to execute the DeleteDeployment service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DeleteDeployment service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// Your request has conflicting operations. This can occur if you're trying to perform
/// more than one operation on the same resource at the same time.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for DeleteDeployment Operation
Task DeleteDeploymentAsync(DeleteDeploymentRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DescribeComponent
///
/// Retrieves metadata for a version of a component.
///
/// Container for the necessary parameters to execute the DescribeComponent service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DescribeComponent service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for DescribeComponent Operation
Task DescribeComponentAsync(DescribeComponentRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region DisassociateServiceRoleFromAccount
///
/// Disassociates the Greengrass service role from IoT Greengrass for your Amazon Web
/// Services account in this Amazon Web Services Region. Without a service role, IoT Greengrass
/// can't verify the identity of client devices or manage core device connectivity information.
/// For more information, see Greengrass
/// service role in the IoT Greengrass Version 2 Developer Guide.
///
/// Container for the necessary parameters to execute the DisassociateServiceRoleFromAccount service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the DisassociateServiceRoleFromAccount service method, as returned by GreengrassV2.
///
/// IoT Greengrass can't process your request right now. Try again later.
///
/// REST API Reference for DisassociateServiceRoleFromAccount Operation
Task DisassociateServiceRoleFromAccountAsync(DisassociateServiceRoleFromAccountRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetComponent
///
/// Gets the recipe for a version of a component.
///
/// Container for the necessary parameters to execute the GetComponent service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetComponent service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for GetComponent Operation
Task GetComponentAsync(GetComponentRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetComponentVersionArtifact
///
/// Gets the pre-signed URL to download a public or a Lambda component artifact. Core
/// devices call this operation to identify the URL that they can use to download an artifact
/// to install.
///
/// Container for the necessary parameters to execute the GetComponentVersionArtifact service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetComponentVersionArtifact service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for GetComponentVersionArtifact Operation
Task GetComponentVersionArtifactAsync(GetComponentVersionArtifactRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetConnectivityInfo
///
/// Retrieves connectivity information for a Greengrass core device.
///
///
///
/// Connectivity information includes endpoints and ports where client devices can connect
/// to an MQTT broker on the core device. When a client device calls the IoT
/// Greengrass discovery API, IoT Greengrass returns connectivity information for
/// all of the core devices where the client device can connect. For more information,
/// see Connect
/// client devices to core devices in the IoT Greengrass Version 2 Developer Guide.
///
///
/// Container for the necessary parameters to execute the GetConnectivityInfo service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetConnectivityInfo service method, as returned by GreengrassV2.
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for GetConnectivityInfo Operation
Task GetConnectivityInfoAsync(GetConnectivityInfoRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetCoreDevice
///
/// Retrieves metadata for a Greengrass core device.
///
///
///
/// IoT Greengrass relies on individual devices to send status updates to the Amazon Web
/// Services Cloud. If the IoT Greengrass Core software isn't running on the device, or
/// if device isn't connected to the Amazon Web Services Cloud, then the reported status
/// of that device might not reflect its current status. The status timestamp indicates
/// when the device status was last updated.
///
///
///
/// Core devices send status updates at the following times:
///
/// -
///
/// When the IoT Greengrass Core software starts
///
///
-
///
/// When the core device receives a deployment from the Amazon Web Services Cloud
///
///
-
///
/// When the status of any component on the core device becomes
BROKEN
///
/// -
///
/// At a regular
/// interval that you can configure, which defaults to 24 hours
///
///
-
///
/// For IoT Greengrass Core v2.7.0, the core device sends status updates upon local deployment
/// and cloud deployment
///
///
///
/// Container for the necessary parameters to execute the GetCoreDevice service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetCoreDevice service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for GetCoreDevice Operation
Task GetCoreDeviceAsync(GetCoreDeviceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetDeployment
///
/// Gets a deployment. Deployments define the components that run on Greengrass core devices.
///
/// Container for the necessary parameters to execute the GetDeployment service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetDeployment service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for GetDeployment Operation
Task GetDeploymentAsync(GetDeploymentRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region GetServiceRoleForAccount
///
/// Gets the service role associated with IoT Greengrass for your Amazon Web Services
/// account in this Amazon Web Services Region. IoT Greengrass uses this role to verify
/// the identity of client devices and manage core device connectivity information. For
/// more information, see Greengrass
/// service role in the IoT Greengrass Version 2 Developer Guide.
///
/// Container for the necessary parameters to execute the GetServiceRoleForAccount service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the GetServiceRoleForAccount service method, as returned by GreengrassV2.
///
/// IoT Greengrass can't process your request right now. Try again later.
///
/// REST API Reference for GetServiceRoleForAccount Operation
Task GetServiceRoleForAccountAsync(GetServiceRoleForAccountRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListClientDevicesAssociatedWithCoreDevice
///
/// Retrieves a paginated list of client devices that are associated with a core device.
///
/// Container for the necessary parameters to execute the ListClientDevicesAssociatedWithCoreDevice service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListClientDevicesAssociatedWithCoreDevice service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ListClientDevicesAssociatedWithCoreDevice Operation
Task ListClientDevicesAssociatedWithCoreDeviceAsync(ListClientDevicesAssociatedWithCoreDeviceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListComponents
///
/// Retrieves a paginated list of component summaries. This list includes components that
/// you have permission to view.
///
/// Container for the necessary parameters to execute the ListComponents service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListComponents service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ListComponents Operation
Task ListComponentsAsync(ListComponentsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListComponentVersions
///
/// Retrieves a paginated list of all versions for a component. Greater versions are listed
/// first.
///
/// Container for the necessary parameters to execute the ListComponentVersions service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListComponentVersions service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ListComponentVersions Operation
Task ListComponentVersionsAsync(ListComponentVersionsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListCoreDevices
///
/// Retrieves a paginated list of Greengrass core devices.
///
///
///
/// IoT Greengrass relies on individual devices to send status updates to the Amazon Web
/// Services Cloud. If the IoT Greengrass Core software isn't running on the device, or
/// if device isn't connected to the Amazon Web Services Cloud, then the reported status
/// of that device might not reflect its current status. The status timestamp indicates
/// when the device status was last updated.
///
///
///
/// Core devices send status updates at the following times:
///
/// -
///
/// When the IoT Greengrass Core software starts
///
///
-
///
/// When the core device receives a deployment from the Amazon Web Services Cloud
///
///
-
///
/// When the status of any component on the core device becomes
BROKEN
///
/// -
///
/// At a regular
/// interval that you can configure, which defaults to 24 hours
///
///
-
///
/// For IoT Greengrass Core v2.7.0, the core device sends status updates upon local deployment
/// and cloud deployment
///
///
///
/// Container for the necessary parameters to execute the ListCoreDevices service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListCoreDevices service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ListCoreDevices Operation
Task ListCoreDevicesAsync(ListCoreDevicesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListDeployments
///
/// Retrieves a paginated list of deployments.
///
/// Container for the necessary parameters to execute the ListDeployments service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListDeployments service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ListDeployments Operation
Task ListDeploymentsAsync(ListDeploymentsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListEffectiveDeployments
///
/// Retrieves a paginated list of deployment jobs that IoT Greengrass sends to Greengrass
/// core devices.
///
/// Container for the necessary parameters to execute the ListEffectiveDeployments service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListEffectiveDeployments service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ListEffectiveDeployments Operation
Task ListEffectiveDeploymentsAsync(ListEffectiveDeploymentsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListInstalledComponents
///
/// Retrieves a paginated list of the components that a Greengrass core device runs. By
/// default, this list doesn't include components that are deployed as dependencies of
/// other components. To include dependencies in the response, set the topologyFilter
/// parameter to ALL
.
///
///
///
/// IoT Greengrass relies on individual devices to send status updates to the Amazon Web
/// Services Cloud. If the IoT Greengrass Core software isn't running on the device, or
/// if device isn't connected to the Amazon Web Services Cloud, then the reported status
/// of that device might not reflect its current status. The status timestamp indicates
/// when the device status was last updated.
///
///
///
/// Core devices send status updates at the following times:
///
/// -
///
/// When the IoT Greengrass Core software starts
///
///
-
///
/// When the core device receives a deployment from the Amazon Web Services Cloud
///
///
-
///
/// When the status of any component on the core device becomes
BROKEN
///
/// -
///
/// At a regular
/// interval that you can configure, which defaults to 24 hours
///
///
-
///
/// For IoT Greengrass Core v2.7.0, the core device sends status updates upon local deployment
/// and cloud deployment
///
///
///
/// Container for the necessary parameters to execute the ListInstalledComponents service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListInstalledComponents service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ListInstalledComponents Operation
Task ListInstalledComponentsAsync(ListInstalledComponentsRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ListTagsForResource
///
/// Retrieves the list of tags for an IoT Greengrass resource.
///
/// Container for the necessary parameters to execute the ListTagsForResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ListTagsForResource service method, as returned by GreengrassV2.
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ListTagsForResource Operation
Task ListTagsForResourceAsync(ListTagsForResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region ResolveComponentCandidates
///
/// Retrieves a list of components that meet the component, version, and platform requirements
/// of a deployment. Greengrass core devices call this operation when they receive a deployment
/// to identify the components to install.
///
///
///
/// This operation identifies components that meet all dependency requirements for a deployment.
/// If the requirements conflict, then this operation returns an error and the deployment
/// fails. For example, this occurs if component A
requires version >2.0.0
/// and component B
requires version <2.0.0
of a component
/// dependency.
///
///
///
/// When you specify the component candidates to resolve, IoT Greengrass compares each
/// component's digest from the core device with the component's digest in the Amazon
/// Web Services Cloud. If the digests don't match, then IoT Greengrass specifies to use
/// the version from the Amazon Web Services Cloud.
///
///
///
/// To use this operation, you must use the data plane API endpoint and authenticate with
/// an IoT device certificate. For more information, see IoT
/// Greengrass endpoints and quotas.
///
///
///
/// Container for the necessary parameters to execute the ResolveComponentCandidates service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the ResolveComponentCandidates service method, as returned by GreengrassV2.
///
/// You don't have permission to perform the action.
///
///
/// Your request has conflicting operations. This can occur if you're trying to perform
/// more than one operation on the same resource at the same time.
///
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// Your request exceeded a request rate quota. For example, you might have exceeded the
/// amount of times that you can retrieve device or deployment status per second.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for ResolveComponentCandidates Operation
Task ResolveComponentCandidatesAsync(ResolveComponentCandidatesRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region TagResource
///
/// Adds tags to an IoT Greengrass resource. If a tag already exists for the resource,
/// this operation updates the tag's value.
///
/// Container for the necessary parameters to execute the TagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the TagResource service method, as returned by GreengrassV2.
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for TagResource Operation
Task TagResourceAsync(TagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UntagResource
///
/// Removes a tag from an IoT Greengrass resource.
///
/// Container for the necessary parameters to execute the UntagResource service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UntagResource service method, as returned by GreengrassV2.
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The requested resource can't be found.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for UntagResource Operation
Task UntagResourceAsync(UntagResourceRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
#region UpdateConnectivityInfo
///
/// Updates connectivity information for a Greengrass core device.
///
///
///
/// Connectivity information includes endpoints and ports where client devices can connect
/// to an MQTT broker on the core device. When a client device calls the IoT
/// Greengrass discovery API, IoT Greengrass returns connectivity information for
/// all of the core devices where the client device can connect. For more information,
/// see Connect
/// client devices to core devices in the IoT Greengrass Version 2 Developer Guide.
///
///
/// Container for the necessary parameters to execute the UpdateConnectivityInfo service method.
///
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
///
///
/// The response from the UpdateConnectivityInfo service method, as returned by GreengrassV2.
///
/// IoT Greengrass can't process your request right now. Try again later.
///
///
/// The request isn't valid. This can occur if your request contains malformed JSON or
/// unsupported characters.
///
/// REST API Reference for UpdateConnectivityInfo Operation
Task UpdateConnectivityInfoAsync(UpdateConnectivityInfoRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken));
#endregion
}
}