![Oracle Drags Its Feet in the JavaScript Trademark Dispute](https://cdn.sanity.io/images/cgdhsj6q/production/919c3b22c24f93884c548d60cbb338e819ff2435-1024x1024.webp?w=400&fit=max&auto=format)
Security News
Oracle Drags Its Feet in the JavaScript Trademark Dispute
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
@aws-sdk/client-eventbridge
Advanced tools
AWS SDK for JavaScript Eventbridge Client for Node.js, Browser and React Native
@aws-sdk/client-eventbridge is a part of the AWS SDK for JavaScript, which allows developers to interact with Amazon EventBridge. EventBridge is a serverless event bus service that makes it easy to connect applications using data from your own applications, integrated Software-as-a-Service (SaaS) applications, and AWS services.
Put Events
This feature allows you to send custom events to an EventBridge event bus. The code sample demonstrates how to create an event and send it to the default event bus.
const { EventBridgeClient, PutEventsCommand } = require("@aws-sdk/client-eventbridge");
const client = new EventBridgeClient({ region: "us-east-1" });
const params = {
Entries: [
{
Source: "com.mycompany.myapp",
DetailType: "myDetailType",
Detail: JSON.stringify({ key1: "value1", key2: "value2" }),
EventBusName: "default"
}
]
};
const run = async () => {
try {
const data = await client.send(new PutEventsCommand(params));
console.log("Success, event sent; requestID:", data);
} catch (err) {
console.error(err);
}
};
run();
Create Event Bus
This feature allows you to create a custom event bus. The code sample demonstrates how to create a new event bus named 'myCustomEventBus'.
const { EventBridgeClient, CreateEventBusCommand } = require("@aws-sdk/client-eventbridge");
const client = new EventBridgeClient({ region: "us-east-1" });
const params = {
Name: "myCustomEventBus"
};
const run = async () => {
try {
const data = await client.send(new CreateEventBusCommand(params));
console.log("Success, event bus created; ARN:", data.EventBusArn);
} catch (err) {
console.error(err);
}
};
run();
List Rules
This feature allows you to list all the rules associated with a specific event bus. The code sample demonstrates how to list rules for the default event bus.
const { EventBridgeClient, ListRulesCommand } = require("@aws-sdk/client-eventbridge");
const client = new EventBridgeClient({ region: "us-east-1" });
const params = {
EventBusName: "default"
};
const run = async () => {
try {
const data = await client.send(new ListRulesCommand(params));
console.log("Success, rules listed:", data.Rules);
} catch (err) {
console.error(err);
}
};
run();
The 'aws-sdk' package is the older version of the AWS SDK for JavaScript. It provides similar functionalities for interacting with AWS services, including EventBridge. However, '@aws-sdk/client-eventbridge' is part of the modular AWS SDK v3, which offers better performance and smaller bundle sizes.
The 'serverless' framework allows you to build and deploy serverless applications on AWS and other cloud providers. It provides plugins and integrations for working with AWS EventBridge, making it easier to manage event-driven architectures. However, it is more of a deployment and management tool rather than a direct SDK for interacting with EventBridge.
The 'aws-cdk' (AWS Cloud Development Kit) allows you to define cloud infrastructure using code and provides constructs for AWS services, including EventBridge. It is more focused on infrastructure as code (IaC) and is used for defining and provisioning AWS resources, whereas '@aws-sdk/client-eventbridge' is used for interacting with EventBridge at runtime.
AWS SDK for JavaScript EventBridge Client for Node.js, Browser and React Native.
Amazon EventBridge helps you to respond to state changes in your Amazon Web Services resources. When your resources change state, they automatically send events to an event stream. You can create rules that match selected events in the stream and route them to targets to take action. You can also use rules to take action on a predetermined schedule. For example, you can configure rules to:
Automatically invoke an Lambda function to update DNS entries when an event notifies you that Amazon EC2 instance enters the running state.
Direct specific API records from CloudTrail to an Amazon Kinesis data stream for detailed analysis of potential security or availability risks.
Periodically invoke a built-in target to create a snapshot of an Amazon EBS volume.
For more information about the features of Amazon EventBridge, see the Amazon EventBridge User Guide.
To install the this package, simply type add or install @aws-sdk/client-eventbridge using your favorite package manager:
npm install @aws-sdk/client-eventbridge
yarn add @aws-sdk/client-eventbridge
pnpm add @aws-sdk/client-eventbridge
The AWS SDK is modulized by clients and commands.
To send a request, you only need to import the EventBridgeClient
and
the commands you need, for example ListReplaysCommand
:
// ES5 example
const { EventBridgeClient, ListReplaysCommand } = require("@aws-sdk/client-eventbridge");
// ES6+ example
import { EventBridgeClient, ListReplaysCommand } from "@aws-sdk/client-eventbridge";
To send a request, you:
send
operation on client with command object as input.destroy()
to close open connections.// a client can be shared by different commands.
const client = new EventBridgeClient({ region: "REGION" });
const params = {
/** input parameters */
};
const command = new ListReplaysCommand(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-eventbridge";
const client = new AWS.EventBridge({ region: "REGION" });
// async/await.
try {
const data = await client.listReplays(params);
// process data.
} catch (error) {
// error handling.
}
// Promises.
client
.listReplays(params)
.then((data) => {
// process data.
})
.catch((error) => {
// error handling.
});
// callbacks.
client.listReplays(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.
aws-sdk-js
on AWS Developer Blog.aws-sdk-js
.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-eventbridge
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.
3.670.0 (2024-10-11)
FAQs
AWS SDK for JavaScript Eventbridge Client for Node.js, Browser and React Native
The npm package @aws-sdk/client-eventbridge receives a total of 1,163,512 weekly downloads. As such, @aws-sdk/client-eventbridge popularity was classified as popular.
We found that @aws-sdk/client-eventbridge demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Oracle seeks to dismiss fraud claims in the JavaScript trademark dispute, delaying the case and avoiding questions about its right to the name.
Security News
The Linux Foundation is warning open source developers that compliance with global sanctions is mandatory, highlighting legal risks and restrictions on contributions.
Security News
Maven Central now validates Sigstore signatures, making it easier for developers to verify the provenance of Java packages.