@aws-sdk/client-greengrass
AWS SDK for JavaScript Greengrass Client for Node.js, Browser and React Native.
AWS IoT Greengrass seamlessly extends AWS onto physical devices so they can act locally on the data they generate, while still using the cloud for management, analytics, and durable storage. AWS IoT Greengrass ensures your devices can respond quickly to local events and operate with intermittent connectivity. AWS IoT Greengrass minimizes the cost of transmitting data to the cloud by allowing you to author AWS Lambda functions that execute locally.
To install the this package, simply type add or install @aws-sdk/client-greengrass
using your favorite package manager:
npm install @aws-sdk/client-greengrass
yarn add @aws-sdk/client-greengrass
pnpm add @aws-sdk/client-greengrass
The AWS SDK is modulized by clients and commands.
To send a request, you only need to import the GreengrassClient
and
the commands you need, for example ListGroupsCommand
:
// ES5 example
const { GreengrassClient, ListGroupsCommand } = require("@aws-sdk/client-greengrass");
// ES6+ example
import { GreengrassClient, ListGroupsCommand } from "@aws-sdk/client-greengrass";
To send a request, you:
- Initiate client with configuration (e.g. credentials, region).
- Initiate command with input parameters.
- Call
send
operation on client with command object as input.
- If you are using a custom http handler, you may call
destroy()
to close open connections.
// a client can be shared by different commands.
const client = new GreengrassClient({ region: "REGION" });
const params = {
/** input parameters */
};
const command = new ListGroupsCommand(params);
We recommend using await
operator to wait for the promise returned by send operation as follows:
// async/await.
try {
const data = await client.send(command);
// process data.
} catch (error) {
// error handling.
} finally {
// finally.
}
Async-await is clean, concise, intuitive, easy to debug and has better error handling
as compared to using Promise chains or callbacks.
You can also use Promise chaining
to execute send operation.
client.send(command).then(
(data) => {
// process data.
},
(error) => {
// error handling.
}
);
Promises can also be called using .catch()
and .finally()
as follows:
client
.send(command)
.then((data) => {
// process data.
})
.catch((error) => {
// error handling.
})
.finally(() => {
// finally.
});
We do not recommend using callbacks because of callback hell,
but they are supported by the send operation.
// callbacks.
client.send(command, (err, data) => {
// process err and data.
});
The client can also send requests using v2 compatible style.
However, it results in a bigger bundle size and may be dropped in next major version. More details in the blog post
on modular packages in AWS SDK for JavaScript
import * as AWS from "@aws-sdk/client-greengrass";
const client = new AWS.Greengrass({ region: "REGION" });
// async/await.
try {
const data = await client.listGroups(params);
// process data.
} catch (error) {
// error handling.
}
// Promises.
client
.listGroups(params)
.then((data) => {
// process data.
})
.catch((error) => {
// error handling.
});
// callbacks.
client.listGroups(params, (err, data) => {
// process err and data.
});
When the service returns an exception, the error will include the exception information,
as well as response metadata (e.g. request id).
try {
const data = await client.send(command);
// process data.
} catch (error) {
const { requestId, cfId, extendedRequestId } = error.$metadata;
console.log({ requestId, cfId, extendedRequestId });
/**
* The keys within exceptions are also parsed.
* You can access them by specifying exception names:
* if (error.name === 'SomeServiceException') {
* const value = error.specialKeyInException;
* }
*/
}
Please use these community resources for getting help.
We use the GitHub issues for tracking bugs and feature requests, but have limited bandwidth to address them.
To test your universal JavaScript code in Node.js, browser and react-native environments,
visit our code samples repo.
This client code is generated automatically. Any modifications will be overwritten the next time the @aws-sdk/client-greengrass
package is updated.
To contribute to client you can check our generate clients scripts.
This SDK is distributed under the
Apache License, Version 2.0,
see LICENSE for more information.
Client Commands (Operations List)
AssociateRoleToGroup
Command API Reference / Input / Output
AssociateServiceRoleToAccount
Command API Reference / Input / Output
CreateConnectorDefinition
Command API Reference / Input / Output
CreateConnectorDefinitionVersion
Command API Reference / Input / Output
CreateCoreDefinition
Command API Reference / Input / Output
CreateCoreDefinitionVersion
Command API Reference / Input / Output
CreateDeployment
Command API Reference / Input / Output
CreateDeviceDefinition
Command API Reference / Input / Output
CreateDeviceDefinitionVersion
Command API Reference / Input / Output
CreateFunctionDefinition
Command API Reference / Input / Output
CreateFunctionDefinitionVersion
Command API Reference / Input / Output
CreateGroup
Command API Reference / Input / Output
CreateGroupCertificateAuthority
Command API Reference / Input / Output
CreateGroupVersion
Command API Reference / Input / Output
CreateLoggerDefinition
Command API Reference / Input / Output
CreateLoggerDefinitionVersion
Command API Reference / Input / Output
CreateResourceDefinition
Command API Reference / Input / Output
CreateResourceDefinitionVersion
Command API Reference / Input / Output
CreateSoftwareUpdateJob
Command API Reference / Input / Output
CreateSubscriptionDefinition
Command API Reference / Input / Output
CreateSubscriptionDefinitionVersion
Command API Reference / Input / Output
DeleteConnectorDefinition
Command API Reference / Input / Output
DeleteCoreDefinition
Command API Reference / Input / Output
DeleteDeviceDefinition
Command API Reference / Input / Output
DeleteFunctionDefinition
Command API Reference / Input / Output
DeleteGroup
Command API Reference / Input / Output
DeleteLoggerDefinition
Command API Reference / Input / Output
DeleteResourceDefinition
Command API Reference / Input / Output
DeleteSubscriptionDefinition
Command API Reference / Input / Output
DisassociateRoleFromGroup
Command API Reference / Input / Output
DisassociateServiceRoleFromAccount
Command API Reference / Input / Output
GetAssociatedRole
Command API Reference / Input / Output
GetBulkDeploymentStatus
Command API Reference / Input / Output
GetConnectivityInfo
Command API Reference / Input / Output
GetConnectorDefinition
Command API Reference / Input / Output
GetConnectorDefinitionVersion
Command API Reference / Input / Output
GetCoreDefinition
Command API Reference / Input / Output
GetCoreDefinitionVersion
Command API Reference / Input / Output
GetDeploymentStatus
Command API Reference / Input / Output
GetDeviceDefinition
Command API Reference / Input / Output
GetDeviceDefinitionVersion
Command API Reference / Input / Output
GetFunctionDefinition
Command API Reference / Input / Output
GetFunctionDefinitionVersion
Command API Reference / Input / Output
GetGroup
Command API Reference / Input / Output
GetGroupCertificateAuthority
Command API Reference / Input / Output
GetGroupCertificateConfiguration
Command API Reference / Input / Output
GetGroupVersion
Command API Reference / Input / Output
GetLoggerDefinition
Command API Reference / Input / Output
GetLoggerDefinitionVersion
Command API Reference / Input / Output
GetResourceDefinition
Command API Reference / Input / Output
GetResourceDefinitionVersion
Command API Reference / Input / Output
GetServiceRoleForAccount
Command API Reference / Input / Output
GetSubscriptionDefinition
Command API Reference / Input / Output
GetSubscriptionDefinitionVersion
Command API Reference / Input / Output
GetThingRuntimeConfiguration
Command API Reference / Input / Output
ListBulkDeploymentDetailedReports
Command API Reference / Input / Output
ListBulkDeployments
Command API Reference / Input / Output
ListConnectorDefinitions
Command API Reference / Input / Output
ListConnectorDefinitionVersions
Command API Reference / Input / Output
ListCoreDefinitions
Command API Reference / Input / Output
ListCoreDefinitionVersions
Command API Reference / Input / Output
ListDeployments
Command API Reference / Input / Output
ListDeviceDefinitions
Command API Reference / Input / Output
ListDeviceDefinitionVersions
Command API Reference / Input / Output
ListFunctionDefinitions
Command API Reference / Input / Output
ListFunctionDefinitionVersions
Command API Reference / Input / Output
ListGroupCertificateAuthorities
Command API Reference / Input / Output
ListGroups
Command API Reference / Input / Output
ListGroupVersions
Command API Reference / Input / Output
ListLoggerDefinitions
Command API Reference / Input / Output
ListLoggerDefinitionVersions
Command API Reference / Input / Output
ListResourceDefinitions
Command API Reference / Input / Output
ListResourceDefinitionVersions
Command API Reference / Input / Output
ListSubscriptionDefinitions
Command API Reference / Input / Output
ListSubscriptionDefinitionVersions
Command API Reference / Input / Output
ListTagsForResource
Command API Reference / Input / Output
ResetDeployments
Command API Reference / Input / Output
StartBulkDeployment
Command API Reference / Input / Output
StopBulkDeployment
Command API Reference / Input / Output
TagResource
Command API Reference / Input / Output
UntagResource
Command API Reference / Input / Output
UpdateConnectivityInfo
Command API Reference / Input / Output
UpdateConnectorDefinition
Command API Reference / Input / Output
UpdateCoreDefinition
Command API Reference / Input / Output
UpdateDeviceDefinition
Command API Reference / Input / Output
UpdateFunctionDefinition
Command API Reference / Input / Output
UpdateGroup
Command API Reference / Input / Output
UpdateGroupCertificateConfiguration
Command API Reference / Input / Output
UpdateLoggerDefinition
Command API Reference / Input / Output
UpdateResourceDefinition
Command API Reference / Input / Output
UpdateSubscriptionDefinition
Command API Reference / Input / Output
UpdateThingRuntimeConfiguration
Command API Reference / Input / Output