@ThreadSafe @Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class AWSGreengrassV2Client extends AmazonWebServiceClient implements AWSGreengrassV2
AWS 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 AWS IoT Core and export IoT data to the AWS Cloud. AWS IoT Greengrass developers can use AWS Lambda functions and components to create and deploy applications to fleets of edge devices for local operation.
AWS IoT Greengrass Version 2 provides a new major version of the AWS IoT Greengrass Core software, new APIs, and a new console. Use this API reference to learn how to use the AWS IoT Greengrass V2 API operations to manage components, manage deployments, and core devices.
For more information, see What is AWS IoT Greengrass? in the AWS IoT Greengrass V2 Developer Guide.
LOGGING_AWS_REQUEST_METRIC
ENDPOINT_PREFIX
Modifier and Type | Method and Description |
---|---|
BatchAssociateClientDeviceWithCoreDeviceResult |
batchAssociateClientDeviceWithCoreDevice(BatchAssociateClientDeviceWithCoreDeviceRequest request)
Associate a list of client devices with a core device.
|
BatchDisassociateClientDeviceFromCoreDeviceResult |
batchDisassociateClientDeviceFromCoreDevice(BatchDisassociateClientDeviceFromCoreDeviceRequest request)
Disassociate a list of client devices from a core device.
|
static AWSGreengrassV2ClientBuilder |
builder() |
CancelDeploymentResult |
cancelDeployment(CancelDeploymentRequest request)
Cancels a deployment.
|
CreateComponentVersionResult |
createComponentVersion(CreateComponentVersionRequest request)
Creates a component.
|
CreateDeploymentResult |
createDeployment(CreateDeploymentRequest request)
Creates a continuous deployment for a target, which is a AWS IoT Greengrass core device or group of core devices.
|
DeleteComponentResult |
deleteComponent(DeleteComponentRequest request)
Deletes a version of a component from AWS IoT Greengrass.
|
DeleteCoreDeviceResult |
deleteCoreDevice(DeleteCoreDeviceRequest request)
Deletes a AWS IoT Greengrass core device, which is an AWS IoT thing.
|
DescribeComponentResult |
describeComponent(DescribeComponentRequest request)
Retrieves metadata for a version of a component.
|
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful, request, typically used for debugging issues
where a service isn't acting as expected.
|
GetComponentResult |
getComponent(GetComponentRequest request)
Gets the recipe for a version of a component.
|
GetComponentVersionArtifactResult |
getComponentVersionArtifact(GetComponentVersionArtifactRequest request)
Gets the pre-signed URL to download a public component artifact.
|
GetCoreDeviceResult |
getCoreDevice(GetCoreDeviceRequest request)
Retrieves metadata for a AWS IoT Greengrass core device.
|
GetDeploymentResult |
getDeployment(GetDeploymentRequest request)
Gets a deployment.
|
ListClientDevicesAssociatedWithCoreDeviceResult |
listClientDevicesAssociatedWithCoreDevice(ListClientDevicesAssociatedWithCoreDeviceRequest request)
Retrieves a paginated list of client devices that are associated with a core device.
|
ListComponentsResult |
listComponents(ListComponentsRequest request)
Retrieves a paginated list of component summaries.
|
ListComponentVersionsResult |
listComponentVersions(ListComponentVersionsRequest request)
Retrieves a paginated list of all versions for a component.
|
ListCoreDevicesResult |
listCoreDevices(ListCoreDevicesRequest request)
Retrieves a paginated list of AWS IoT Greengrass core devices.
|
ListDeploymentsResult |
listDeployments(ListDeploymentsRequest request)
Retrieves a paginated list of deployments.
|
ListEffectiveDeploymentsResult |
listEffectiveDeployments(ListEffectiveDeploymentsRequest request)
Retrieves a paginated list of deployment jobs that AWS IoT Greengrass sends to AWS IoT Greengrass core devices.
|
ListInstalledComponentsResult |
listInstalledComponents(ListInstalledComponentsRequest request)
Retrieves a paginated list of the components that a AWS IoT Greengrass core device runs.
|
ListTagsForResourceResult |
listTagsForResource(ListTagsForResourceRequest request)
Retrieves the list of tags for an AWS IoT Greengrass resource.
|
ResolveComponentCandidatesResult |
resolveComponentCandidates(ResolveComponentCandidatesRequest request)
Retrieves a list of components that meet the component, version, and platform requirements of a deployment.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held
open.
|
TagResourceResult |
tagResource(TagResourceRequest request)
Adds tags to an AWS IoT Greengrass resource.
|
UntagResourceResult |
untagResource(UntagResourceRequest request)
Removes a tag from an AWS IoT Greengrass resource.
|
addRequestHandler, addRequestHandler, configureRegion, getClientConfiguration, getEndpointPrefix, getMonitoringListeners, getRequestMetricsCollector, getServiceName, getSignerByURI, getSignerOverride, getSignerRegionOverride, getTimeOffset, makeImmutable, removeRequestHandler, removeRequestHandler, setEndpoint, setEndpoint, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, withEndpoint, withRegion, withRegion, withTimeOffset
public static AWSGreengrassV2ClientBuilder builder()
public BatchAssociateClientDeviceWithCoreDeviceResult batchAssociateClientDeviceWithCoreDevice(BatchAssociateClientDeviceWithCoreDeviceRequest request)
Associate 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 AWS IoT Greengrass to retrieve associated core devices' connectivity information and certificates. For more information, see Configure cloud discovery in the AWS IoT Greengrass V2 Developer Guide.
Client devices are local IoT devices that connect to and communicate with an AWS IoT Greengrass core device over MQTT. You can connect client devices to a core device to sync MQTT messages and data to AWS IoT Core and interact with client devices in AWS IoT Greengrass components. For more information, see Interact with local IoT devices in the AWS IoT Greengrass V2 Developer Guide.
batchAssociateClientDeviceWithCoreDevice
in interface AWSGreengrassV2
batchAssociateClientDeviceWithCoreDeviceRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public BatchDisassociateClientDeviceFromCoreDeviceResult batchDisassociateClientDeviceFromCoreDevice(BatchDisassociateClientDeviceFromCoreDeviceRequest request)
Disassociate 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.
batchDisassociateClientDeviceFromCoreDevice
in interface AWSGreengrassV2
batchDisassociateClientDeviceFromCoreDeviceRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public CancelDeploymentResult cancelDeployment(CancelDeploymentRequest request)
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.
cancelDeployment
in interface AWSGreengrassV2
cancelDeploymentRequest
- ResourceNotFoundException
- The requested resource can't be found.ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ConflictException
- 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.ThrottlingException
- 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.public CreateComponentVersionResult createComponentVersion(CreateComponentVersionRequest request)
Creates a component. Components are software that run on AWS IoT Greengrass core devices. After you develop and test a component on your core device, you can use this operation to upload your component to AWS 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 AWS IoT Greengrass component recipe reference in the AWS 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 AWS Lambda function that runs on AWS 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 AWS IoT Greengrass V1 to AWS 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
Java 8 – java8
Node.js 10 – nodejs10.x
Node.js 12 – nodejs12.x
To create a component from a Lambda function, specify lambdaFunction
when you call this operation.
createComponentVersion
in interface AWSGreengrassV2
createComponentVersionRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ServiceQuotaExceededException
- Your request exceeds a service quota. For example, you might have the maximum number of components that
you can create.AccessDeniedException
- You don't have permission to perform the action.ConflictException
- 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.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.public CreateDeploymentResult createDeployment(CreateDeploymentRequest request)
Creates a continuous deployment for a target, which is a AWS IoT 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, AWS 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. AWS 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. This operation returns the revision number of the new deployment when you create it.
For more information, see the Create deployments in the AWS IoT Greengrass V2 Developer Guide.
createDeployment
in interface AWSGreengrassV2
createDeploymentRequest
- ResourceNotFoundException
- The requested resource can't be found.ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.public DeleteComponentResult deleteComponent(DeleteComponentRequest request)
Deletes a version of a component from AWS 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.
deleteComponent
in interface AWSGreengrassV2
deleteComponentRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.ConflictException
- 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.ResourceNotFoundException
- The requested resource can't be found.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.public DeleteCoreDeviceResult deleteCoreDevice(DeleteCoreDeviceRequest request)
Deletes a AWS IoT Greengrass core device, which is an AWS IoT thing. This operation removes the core device from the list of core devices. This operation doesn't delete the AWS IoT thing. For more information about how to delete the AWS IoT thing, see DeleteThing in the AWS IoT API Reference.
deleteCoreDevice
in interface AWSGreengrassV2
deleteCoreDeviceRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.ConflictException
- 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.public DescribeComponentResult describeComponent(DescribeComponentRequest request)
Retrieves metadata for a version of a component.
describeComponent
in interface AWSGreengrassV2
describeComponentRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.ResourceNotFoundException
- The requested resource can't be found.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.public GetComponentResult getComponent(GetComponentRequest request)
Gets the recipe for a version of a component. Core devices can call this operation to identify the artifacts and requirements to install a component.
getComponent
in interface AWSGreengrassV2
getComponentRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.ResourceNotFoundException
- The requested resource can't be found.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.public GetComponentVersionArtifactResult getComponentVersionArtifact(GetComponentVersionArtifactRequest request)
Gets the pre-signed URL to download a public component artifact. Core devices call this operation to identify the URL that they can use to download an artifact to install.
getComponentVersionArtifact
in interface AWSGreengrassV2
getComponentVersionArtifactRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.ResourceNotFoundException
- The requested resource can't be found.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.public GetCoreDeviceResult getCoreDevice(GetCoreDeviceRequest request)
Retrieves metadata for a AWS IoT Greengrass core device.
getCoreDevice
in interface AWSGreengrassV2
getCoreDeviceRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public GetDeploymentResult getDeployment(GetDeploymentRequest request)
Gets a deployment. Deployments define the components that run on AWS IoT Greengrass core devices.
getDeployment
in interface AWSGreengrassV2
getDeploymentRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public ListClientDevicesAssociatedWithCoreDeviceResult listClientDevicesAssociatedWithCoreDevice(ListClientDevicesAssociatedWithCoreDeviceRequest request)
Retrieves a paginated list of client devices that are associated with a core device.
listClientDevicesAssociatedWithCoreDevice
in interface AWSGreengrassV2
listClientDevicesAssociatedWithCoreDeviceRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public ListComponentVersionsResult listComponentVersions(ListComponentVersionsRequest request)
Retrieves a paginated list of all versions for a component. Greater versions are listed first.
listComponentVersions
in interface AWSGreengrassV2
listComponentVersionsRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.ResourceNotFoundException
- The requested resource can't be found.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.public ListComponentsResult listComponents(ListComponentsRequest request)
Retrieves a paginated list of component summaries. This list includes components that you have permission to view.
listComponents
in interface AWSGreengrassV2
listComponentsRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.public ListCoreDevicesResult listCoreDevices(ListCoreDevicesRequest request)
Retrieves a paginated list of AWS IoT Greengrass core devices.
listCoreDevices
in interface AWSGreengrassV2
listCoreDevicesRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public ListDeploymentsResult listDeployments(ListDeploymentsRequest request)
Retrieves a paginated list of deployments.
listDeployments
in interface AWSGreengrassV2
listDeploymentsRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public ListEffectiveDeploymentsResult listEffectiveDeployments(ListEffectiveDeploymentsRequest request)
Retrieves a paginated list of deployment jobs that AWS IoT Greengrass sends to AWS IoT Greengrass core devices.
listEffectiveDeployments
in interface AWSGreengrassV2
listEffectiveDeploymentsRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public ListInstalledComponentsResult listInstalledComponents(ListInstalledComponentsRequest request)
Retrieves a paginated list of the components that a AWS IoT Greengrass core device runs.
listInstalledComponents
in interface AWSGreengrassV2
listInstalledComponentsRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.AccessDeniedException
- You don't have permission to perform the action.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ThrottlingException
- 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.public ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest request)
Retrieves the list of tags for an AWS IoT Greengrass resource.
listTagsForResource
in interface AWSGreengrassV2
listTagsForResourceRequest
- InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.public ResolveComponentCandidatesResult resolveComponentCandidates(ResolveComponentCandidatesRequest request)
Retrieves a list of components that meet the component, version, and platform requirements of a deployment. AWS IoT 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, AWS IoT Greengrass compares each component's digest from the core device with the component's digest in the AWS Cloud. If the digests don't match, then AWS IoT Greengrass specifies to use the version from the AWS Cloud.
To use this operation, you must use the data plane API endpoint and authenticate with an AWS IoT device certificate. For more information, see AWS IoT Greengrass endpoints and quotas.
resolveComponentCandidates
in interface AWSGreengrassV2
resolveComponentCandidatesRequest
- ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.AccessDeniedException
- You don't have permission to perform the action.ResourceNotFoundException
- The requested resource can't be found.ThrottlingException
- 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.InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ConflictException
- 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.public TagResourceResult tagResource(TagResourceRequest request)
Adds tags to an AWS IoT Greengrass resource. If a tag already exists for the resource, this operation updates the tag's value.
tagResource
in interface AWSGreengrassV2
tagResourceRequest
- InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.public UntagResourceResult untagResource(UntagResourceRequest request)
Removes a tag from an AWS IoT Greengrass resource.
untagResource
in interface AWSGreengrassV2
untagResourceRequest
- InternalServerException
- AWS IoT Greengrass can't process your request right now. Try again later.ValidationException
- The request isn't valid. This can occur if your request contains malformed JSON or unsupported
characters.ResourceNotFoundException
- The requested resource can't be found.public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing the request.
getCachedResponseMetadata
in interface AWSGreengrassV2
request
- The originally executed requestpublic void shutdown()
AmazonWebServiceClient
shutdown
in interface AWSGreengrassV2
shutdown
in class AmazonWebServiceClient