Usage no npm install needed!

<script type="module">
  import serverlessSchedule from 'https://cdn.skypack.dev/@serverless/schedule';


serverless scheduled task aws lambda



Instantly run scheduled cron jobs on AWS Lambda using Serverless Components.


  1. Install
  2. Create
  3. Configure
  4. Deploy


1. Install

$ npm install -g serverless

2. Create

$ mkdir schedule && cd schedule

The directory should look something like this:

|- index.js
|- serverless.yml
|- package.json # optional
|- .env         # your AWS api keys

the .env file should look like this


The index.js file should contain your scheduling code. It must export a module named task:

module.exports.task = async (e, ctx, cb) => {
  console.log('running in schedule')

3. Configure

All the following inputs are optional. However, they allow you to configure your Lambda compute instance and pass environment variables.

# serverless.yml

  component: "@serverless/schedule"
      src: ./code # The root folder containing the index.js file
      build: build # The folder within your 'src' directory containing your built artifacts
      hook: npm run build # A hook to build/test/do anything

    handler: foo.bar # optional - specifies handler file & function. eg: foo.js instead of index.js and bar instead of task
    runtime: nodejs10.x # default

    # you can provide a rate either as rate with
    # this format <amount><unit-character> (e.g. 1s, 5m, 2h)
    # or a cron expresion  
    rate: 5m
    enabled: true # this is the default value
    region: us-east-1
    memory: 128
    timeout: 10
      TABLE_NAME: my-table

4. Deploy

$ serverless


New to Components?

Checkout the Serverless Components repo for more information.