On this tutorial, you’ll learn to deploy an AWS Lambda perform with Moralis! Moreover, the tutorial demonstrates tips on how to create and deploy a Lambda software with a number of capabilities. What’s extra, due to Moralis’ capabilities and Web3 improvement instruments, it is possible for you to to take action in 4 simple steps:
- Deploying Lambda Features – Conditions
- Mission Setup
- Creating the App
- Testing and Deploying AWS Lambda Features
In case you comply with alongside till the tip, you’ll learn to run Web3 JavaScript capabilities by way of AWS Lambda with Moralis! Furthermore, if this sounds thrilling and also you need to soar straight into the tutorial, skip to the ”Tutorial on Tips on how to Deploy AWS Lambda Perform with Moralis” part instantly! You may as well try Moralis’ official Web3 documentation web page of AWS Lambda or the GitHub repository for the Lambda software under:
Full AWS Lambda Software Code – https://github.com/MoralisWeb3/examples-aws-lambda-nodejs/tree/predominant/aws-node-project

Overview
AWS – brief for ”Amazon Net Companies” – is likely one of the market’s most outstanding cloud computing platforms. AWS consists of varied choices and providers, one among which is AWS Lambda. Moreover, Lambda is a computing service enabling builders to run code with out worrying concerning the related administration duties corresponding to managing working system entry management, provisioning servers, scaling, and so forth. As a substitute, builders obtain extra time to concentrate on the core product and enterprise logic. Nonetheless, how does this truly work, and how will you add an AWS Lambda perform?
If you’re all in favour of understanding the reply to this query, be a part of us as we offer an entire walkthrough of tips on how to add an AWS Lambda perform utilizing Moralis on this article. What’s extra, earlier than diving deeper into the core part, the information moreover supplies a short introduction to AWS Lambda. Nonetheless, if you don’t discover this a adequate overview or need extra particulars concerning the service, try our information on AWS Lambda and what it’s used for!
The Moralis AWS Lambda NodeJS integration is accountable for the accessibility displayed on this tutorial. Nonetheless, it’s only one among many conveniences delivered to you by Moralis. A further nice instance is the varied Web3 APIs provided by Moralis! For instance, if you wish to be taught extra about this, try the EVM API, permitting you to simply create EVM-compatible initiatives!
Nonetheless, earlier than persevering with the article, join with Moralis, as an account is required to comply with alongside! What’s extra, creating an account is fully free and solely takes seconds to arrange!
AWS Lambda and Lambda Perform Introduction
Earlier than exhibiting you tips on how to add a perform, it’s useful to grasp the intricacies of AWS Lambda. Subsequently, this preliminary part briefly explores AWS Lambda and the service’s capabilities by way of a fast introduction! So, what precisely is AWS Lambda?
AWS Lambda is a computing service based mostly on an event-driven, serverless structure. AWS Lambda takes care of the heavy lifting related to computing infrastructures. Consequently, the service supplies the chance to run code with out the necessity to handle or provision servers. This additional means you can run code from any backend providers and purposes, and all that’s required of you is the code!
When importing code to AWS Lambda, it’s essential to manage it within the type of ”Lambda capabilities”. These capabilities have info connected to them, corresponding to useful resource necessities, an entry level, a reputation, and so forth. Furthermore, AWS Lambda solely runs the capabilities when requested, and also you solely pay for the computing time they eat. Consequently, AWS Lambda presents glorious alternatives to chop prices and scale up and down when demand fluctuates!
Nonetheless, in order for you additional info on this service and the way it works, try this text explaining AWS Lambda capabilities and structure in additional element!
Now that’s it for this fast introduction to AWS Lambda. It’s now time to maneuver on to the central a part of this text, the place we’ll present you tips on how to deploy an AWS Lambda perform with Moralis!
Tutorial on Tips on how to Deploy AWS Lambda Perform with Moralis
With a deeper understanding of AWS Lambda and the service’s capabilities, it’s time for the primary a part of this text. As such, the next sections exhibit tips on how to deploy an AWS Lambda perform with Moralis. In doing so, you’ll learn to create and add an AWS Lambda software that includes a number of Web3-based capabilities. Consequently, by the tip of the tutorial, you’ll know tips on how to run Web3 JavaScript code by way of Lambda with Moralis!
Because of the capabilities of Moralis, we will divide this ”Tips on how to Deploy an AWS Lambda Perform” tutorial into three sections, every explaining a central a part of the method in an easy method:
- Deploying Lambda Features – Conditions
- Mission Setup
- Creating the App
- Check and Deploy an AWS Lambda Perform
So, if you wish to learn to add an AWS Lambda perform, comply with alongside as we cowl the aforementioned components in additional element. Nonetheless, with out additional ado, allow us to soar straight into the primary a part of the tutorial and canopy the required conditions!
Deploying Lambda Features – Conditions
Earlier than you begin creating and deploying Lambda capabilities, there are a number of conditions it’s essential to take care of. Extra particularly, there are seven in complete:
- Moralis Account – The very first thing you want is a Moralis account. As such, you probably have not already, be a part of Moralis instantly!
- Built-in Improvement Setting (IDE) – Subsequent up, it’s essential to obtain and set up an IDE. We advocate Visible Studio Code (VSC) since that is the setting we use all through the tutorial.
- NodeJS – To comply with alongside, you want the NodeJS runtime setting, which you’ll be able to obtain from right here: https://nodejs.org/en/.
- Serverless Framework – As well as, you additionally want the Serverless Framework. You could find a tutorial on tips on how to arrange the framework by clicking right here.
- AWS Account – Go to the AWS web site and create an account.
- AWS Command Line Interface (CLI) – Subsequent, it’s essential to arrange the AWS CLI, and you could find a setup information right here.
- IAM Consumer – Lastly, the final prerequisite is an IAM person. Log in to AWS and open the IAM console to create the person. You have to then click on on ”Customers” and ”Add customers” within the navigation menu. When doing so, you need to arrive on the following web page, the place you need to enter a username and test the bins for each AWS credential sorts:
Within the second stage of including a brand new person, additionally ensure that so as to add the ”AdministratorAccess” permission:
Lastly, undergo every previous step to configure your account based on your wants. If you attain the fifth and remaining step, ensure that to obtain the AWS credentials in a ”.csv” file:
That covers the seven conditions! Allow us to now progress by exhibiting you tips on how to arrange the venture!
Mission Setup
It’s time to arrange the venture! To start with, we’ll present you tips on how to configure your AWS credentials. As such, to proceed, open a brand new terminal. If you’re utilizing VSC, you are able to do so by clicking on ”Terminal” on the prime, adopted by ”New Terminal”:
Now, because you put in the AWS CLI within the earlier part, you may configure your AWS credentials by working this command:
aws configure
When you run ”aws configure”, you will have to enter some information into the terminal and make a number of picks. As such, begin by inputting your ”AWS Entry Key ID”. Second, do the identical for the ”AWS Secret Entry Key”. Lastly, for the area title and output format, hit enter. In the end, it ought to look one thing like this:
AWS Entry Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Entry Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default area title [None]: ENTER Default output format [None]: ENTER
Setting Up the Framework
On this sub-section, we present you tips on how to arrange the barebones state of the venture utilizing the Serverless Framework device. As such, to proceed, create a brand new folder and open it with the IDE. You may then open a brand new terminal and run this command:
serverless
You have to then make a number of choices, and first, choose the ”Starter” possibility for the preliminary immediate:
Subsequent up, it’s essential to title the venture. Right here, you may both enter a reputation your self or instantly click on on enter to decide on a default possibility:
If you click on on “enter” to pick the title, a Serverless Framework venture will obtain. When it finalizes, the terminal will ask you to log in. Nonetheless, for this tutorial, you may skip this by inputting ”n” and hitting enter:
From there, you obtain the choice to deploy the venture. Nonetheless, you may put this off for a short time and proceed by inputting ”n” once more and hitting enter:
In case you adopted the steps precisely, you need to now have a venture with an analogous construction to the one proven within the picture under:
Nonetheless, that is solely a template, and it’s essential to make a number of configurations. To start with, create a brand new ”capabilities” folder:
You may then transfer the ”handler.js” file into this newly created folder:
Lastly, it’s essential to add your Moralis API key, which you are able to do by changing the code within the ”serverless.yml” file with this snippet:
service: aws-node-project frameworkVersion: '3' supplier: title: aws runtime: nodejs14.x setting: MORALIS_API_KEY: 'replace_me' capabilities: hiya: handler: capabilities/handler.hiya
In case you look intently on the code, you’ll discover the ”replace_me” half, to which it’s essential to add the important thing. To search out the important thing, log in to the Moralis admin panel and click on on ”Web3 APIs” to the left. From there, copy the important thing and enter it into the code:
Creating the App
With the Serverless Framework template at your disposal and the mandatory configurations accomplished, it’s now time for the central a part of this tutorial, the place we present you tips on how to add code for the Lambda app. Particularly, within the following sections, we’ll present you tips on how to create two capabilities: ”getNativeBalance()” and ”getWalletNfts()”.
Nonetheless, earlier than diving into the code for these capabilities, you need to set up the Moralis dependencies. As such, open the terminal as soon as once more, ”cd” into the venture’s root folder, and run this command:
npm set up moralis
Working the command above will set up Moralis, and also you are actually prepared to start out creating the primary ”getNativeBalance()” perform!
The “getNativeBalance()“ Perform
To kick issues off, change the title of the ”handler.js” file to ”getNativeBalance.js”:
You may then open the file and progress by changing ”module.exports.hiya” with ”module.exports.handler”:
From there, it’s essential to change the title and handler of the perform within the ”serverless.yml” file:
Subsequent, navigate again to the ”getNativeBalance.js” file and add Moralis’ ”getNativeBalance()” performance by first inputting the Moralis necessities:
const Moralis = require('moralis').default;
Following this, you need to initialize Moralis with the Web3 API key specified earlier. As such, enter the next snippet under the Moralis necessities:
const startMoralis = async () => { await Moralis.begin({ apiKey: course of.env.MORALIS_API_KEY }); }; startMoralis();
Lastly, the very last thing it’s essential to do is change the entire ”module.exports.handler” part with the code under. In doing so, you’ll implement the correct SDK methodology:
module.exports.handler = async (occasion) => { // Get native stability const nativeBalance = await Moralis.EvmApi.stability.getNativeBalance({ tackle: occasion.tackle, chain: occasion.chain }); // Format the native stability formatted in ether by way of the .ether getter const nativeBalanceEther = nativeBalance.end result.stability.ether; return { end result: nativeBalanceEther } };
That covers the primary ”getNativeBalance()” perform, and you need to now have a file much like the one under:
'use strict'; const Moralis = require('moralis').default; const startMoralis = async () => { await Moralis.begin({ apiKey: course of.env.MORALIS_API_KEY }); }; startMoralis(); module.exports.handler = async (occasion) => { // Get native stability const nativeBalance = await Moralis.EvmApi.stability.getNativeBalance({ tackle: occasion.tackle, chain: occasion.chain }); // Format the native stability formatted in ether by way of the .ether getter const nativeBalanceEther = nativeBalance.end result.stability.ether; return { end result: nativeBalanceEther } };
The “getWalletNfts()“ Perform
The subsequent perform we’ll add is ”getWalletNfts()”, and we will comply with the identical steps because the preliminary perform. Nonetheless, since we beforehand used the ”handler.js” file, it’s essential to create a brand new one from scratch. As such, go forward and create a brand new file within the ”capabilities” folder referred to as ”getWalletNfts.js”:
Subsequent up, open ”serverless.yml” and add the perform to the ”capabilities” part:
Lastly, to prime issues off, add the next code to the ”getWalletNfts.js” file:
'use strict'; const Moralis = require('moralis').default; const startMoralis = async () => { await Moralis.begin({ apiKey: course of.env.MORALIS_API_KEY, }); }; startMoralis(); module.exports.handler = async (occasion) => { // Get pockets NFTs const nfts = await Moralis.EvmApi.nft.getWalletNFTs({ tackle: occasion.tackle, chain: occasion.chain, restrict: 10 }); return { end result: JSON.stringify(nfts) } };
That’s it for the ”getWalletNfts()” perform! All that is still is testing and deploying the capabilities to Lambda, and we’ll present you ways to take action within the following part!
Check and Deploy an AWS Lambda Perform
Now that you’re achieved with the Lambda software and the 2 capabilities, it’s time to be sure that every thing works. As such, we’ll begin this part by exhibiting you tips on how to run an area take a look at. So, to start with, create a brand new file referred to as ”occasion.json”:
From there, add a pockets tackle and chain ID as parameters to the file. It ought to look one thing like this:
{ "tackle": "0x99EXAMPLEADDRESS", "chain": "chain_id" }
Upon getting added the pockets tackle and chain ID, you may run the take a look at. So, let’s say you need to attempt the ”getNativeBalance()” perform. On this case, open a brand new terminal, and run the next command:
serverless invoke -f getNativeBalance --path occasion.json
If the perform works because it ought to, the terminal ought to return successful message much like the one down under:
As soon as you realize that the capabilities work as supposed, you need to deploy your AWS Lambda software. With a purpose to deploy the Lambda capabilities, be sure you are within the venture’s root folder and run the next command in a brand new terminal:
serverless deploy
If the deployment course of succeeds, you need to obtain a message just like the one under:
That’s it! Congratulations, you’ve gotten now efficiently been in a position to deploy an AWS Lambda perform with Moralis!
If in case you have any questions, try the official AWS Lambda documentation. You may as well be a part of Moralis’ Discord channel to obtain skilled help from our engineers!
Abstract – Tips on how to Deploy AWS Lambda Features
On this article, you realized tips on how to deploy an AWS Lambda perform with Moralis. What’s extra, due to the accessibility of the AWS Lambda NodeJS integration, you have been in a position to take action in solely 4 simple steps:
- Deploying Lambda Features – Conditions
- Mission Setup
- Creating the App
- Testing and Deploying AWS Lambda Features
The steps above will train you tips on how to create and deploy a Lambda software with a number of capabilities. Consequently, you may run Web3 JavaScript code instantly by way of AWS Lambda with Moralis!
In case you discovered this tutorial on deploying Lambda capabilities useful, you would possibly need to try further content material right here at Moralis’ Web3 weblog. For instance, learn to use IPFS for NFT metadata or discover Polygon webhooks!
Moreover, if you wish to grow to be a more adept blockchain developer, try Moralis Academy! The academy presents nice blockchain programs for each new and extra skilled builders. As an example, in case you are new to the house, be taught the fundamentals of Web3 improvement by way of the next course: ”Ethereum Fundamentals”.
Nonetheless, irrespective of if you wish to proceed deploying AWS Lambda capabilities or construct different Web3 initiatives, join with Moralis! In doing so, you may totally leverage blockchain expertise’s energy and entry a extra seamless Web3 improvement expertise!