Create a Recurring Cron

Using the following SDK, you will be able to create a recurring cron that can be executed at various time-period intervals. The intervals can range from a minute to entire calendar years.

Create an Every Cron

The following SDK can be used to create a recurring cron that will submit a job to the job pool at a scheduled interval that is less than 24Hrs.

Note: The following SDK is configured to submit a job every 2Hrs 1Mins and 3secs. You can change this value as per your requirement by passing the relevant value to the cron_detail JSON key-value pair.
    
copy
# create function job meta

job_meta = { ‘job_name’: ’test_job’, # set a name for the job ’target_type’: ‘Function’, # set the target type as Function for function jobs ’target_name’: ’target_function’, # set the target function’s name (optional) (either target_id or target_name is mandatory) # ’target_id’: ‘123467890’, # set the target functions’s Id (optional) (either target_id or target_name is mandatory) ‘jobpool_name’: ’test’, # set the name of the function jobpool (optional) (either jobpool_name or jobpool_id is mandatory) # ‘jobpool_id’: ‘1234567890’ # set the Id of the function jobpool (optional) (either jobpool_name or jobpool_id is mandatory) ‘job_config’: { ’number_of_retries’: 2, # set the number of retries ‘retry_interval’: 15 * 60 # set the retry interval }, # set job config - job retries => 2 retries in 15 mins (optional) ‘params’: { ‘arg1’: ’test’, ‘arg2’: ‘job’ } # set params to be passed to target function (optional) }

# create every cron

every_cron = job_scheduling.CRON.create({ ‘cron_name’: ’every_cron’, # set a name for the cron (unique) ‘description’: ’every_cron’, # set the cron description (optional) ‘cron_status’: True, # set the cron status as enabled ‘cron_type’: ‘Periodic’, # set the cron type as Periodic for every cron ‘cron_detail’: { ‘hour’: 2, # set the hour interval of the repetition ‘minute’: 1, # set the minute interval of the repetition ‘second’: 3, # set the second interval of the repetition ‘repetition_type’: ’every’ # set the repetition type as every for every cron }, ‘job_meta’: job_meta # set the function job meta })

Create a Daily Cron

The following SDK can be used to schedule a cron to submit a job to the job pool at a fixed time at a daily interval.

Note: The following SDK is configured to execute the cron on 0Hr 0Min 0Sec every single day. You can change this value as per your requirement by passing the relevant value to the cron_detail JSON key-value pair.
    
copy
# create function job meta

job_meta = { ‘job_name’: ’test_job’, # set a name for the job ’target_type’: ‘Function’, # set the target type as Function for function jobs ’target_name’: ’target_function’, # set the target function’s name (optional) (either target_id or target_name is mandatory) # ’target_id’: ‘123467890’, # set the target functions’s Id (optional) (either target_id or target_name is mandatory) ‘jobpool_name’: ’test’, # set the name of the function jobpool (optional) (either jobpool_name or jobpool_id is mandatory) # ‘jobpool_id’: ‘1234567890’ # set the Id of the function jobpool (optional) (either jobpool_name or jobpool_id is mandatory) ‘job_config’: { ’number_of_retries’: 2, # set the number of retries ‘retry_interval’: 15 * 60 # set the retry interval }, # set job config - job retries => 2 retries in 15 mins (optional) ‘params’: { ‘arg1’: ’test’, ‘arg2’: ‘job’ } # set params to be passed to target function (optional) }

daily_cron = job_scheduling.CRON.create({ ‘cron_name’: ‘daily_cron’, # set a name for the cron (unique) ‘description’: ‘daily_cron’, # set the cron description (optional) ‘cron_status’: True, # set the cron status as enabled ‘cron_type’: ‘Calendar’, # set the cron type as Calendar for daily, monthly and yearly ‘cron_detail’: { ‘hour’: 0, # set the hour of the day in which the cron should be executed ‘minute’: 0, # set the minute of the day in which the cron should be executed ‘second’: 0, # set the second of the day in which the cron should be executed ‘repetition_type’: ‘daily’, # set the repetition type as daily for daily cron # ’timezone’: ‘America/Los_Angeles’ # set the timezone (optional) }, ‘job_meta’: job_meta # set the function job meta })

Create a Monthly Cron

The following SDK can be used to schedule a cron to submit a job to the job pool at a fixed date, and time at a monthly interval. Additionally, you also have the option to submit a job at a monthly interval but on a particular week.

If you choose to schedule the cron to execute at a monthly interval on a date-based schedule, then the range of possible dates, based on the month, will be 1-31. Similarly, if you choose a week-based interval, then the range can either be from 1-4, and the particular days of the week will be in the range of 1-7.

Note: The following SDK is configured to execute the cron that will submit a job to the job pool every month on the 1st, 3rd, and 5th at 0Hrs,0Mins, 0Secs. You can change this value as per your requirement by passing the relevant value to the cron_detail JSON key-value pair.
    
copy
# create function job meta

job_meta = { ‘job_name’: ’test_job’, # set a name for the job ’target_type’: ‘Function’, # set the target type as Function for function jobs ’target_name’: ’target_function’, # set the target function’s name (optional) (either target_id or target_name is mandatory) # ’target_id’: ‘123467890’, # set the target functions’s Id (optional) (either target_id or target_name is mandatory) ‘jobpool_name’: ’test’, # set the name of the function jobpool (optional) (either jobpool_name or jobpool_id is mandatory) # ‘jobpool_id’: ‘1234567890’ # set the Id of the function jobpool (optional) (either jobpool_name or jobpool_id is mandatory) ‘job_config’: { ’number_of_retries’: 2, # set the number of retries ‘retry_interval’: 15 * 60 # set the retry interval }, # set job config - job retries => 2 retries in 15 mins (optional) ‘params’: { ‘arg1’: ’test’, ‘arg2’: ‘job’ } # set params to be passed to target function (optional) }

# create monthly cron

monthly_cron = job_scheduling.CRON.create({ ‘cron_name’: ‘monthly_cron’, # set a name for the cron (unique) ‘description’: ‘monthly_cron’, # set the cron description (optional) ‘cron_status’: True, # set the cron status as enabled ‘cron_type’: ‘Calendar’, # set the cron type as Calendar for daily, monthly and yearly ‘cron_detail’: { ‘hour’: 0, # set the hour of the day in which the cron should be executed ‘minute’: 0, # set the minute of the day in which the cron should be executed ‘second’: 0, # set the second of the day in which the cron should be executed ‘days’: [1, 3, 5], # set the days of the month in which the cron should be executed # ‘week_day’: [1, 3], # set the days of the week in a month during which the cron should be executed # ‘weeks_of_month’: [2], # set the weeks of the month during which the cron should be executed ‘repetition_type’: ‘monthly’, # set the repetition type as monthly for monthly cron # ’timezone’: ‘America/Los_Angeles’ # set the timezone (optional) }, ‘job_meta’: job_meta # set function job meta })

Create a Yearly Cron

The following SDK can be used to schedule a cron tosubmit a job to the job pool at a fixed date, and time at a fixed month on a yearly interval. Additionally, you also have the option to submit a job at a yearly interval but on a particular week.

If you choose to schedule the cron to execute at a yearly interval on a date-based schedule, then the range of possible dates, based on the month, will be 1-31, and the month will be determined based on the range of values 1-12. Similarly, if you choose a week-based interval, then the range can either be from 1-4, and the particular days of the week will be in the range of 1-7.

Note: The following SDK is configured to execute the cron that will submit a job to the job pool on the 1st, 2nd, and 3rd on the 8th month of every year. You can change this value as per your requirement by passing the relevant value to the cron_detail JSON key-value pair.
    
copy
# create function job meta

job_meta = { “job_name”: “test_job”, # set a name for the job “target_type”: “Function”, # set the target type as Function for function jobs “target_name”: “target_function”, # set the target function’s name (optional) (either target_id or target_name is mandatory) # ’target_id’: ‘123467890’, # set the target functions’s Id (optional) (either target_id or target_name is mandatory) “jobpool_name”: “test”, # set the name of the function jobpool (optional) (either jobpool_name or jobpool_id is mandatory) # ‘jobpool_id’: ‘1234567890’ # set the Id of the function jobpool (optional) (either jobpool_name or jobpool_id is mandatory) “job_config”: { “number_of_retries”: 2, # set the number of retries “retry_interval”: 15 * 60, # set the retry interval }, # set job config - job retries => 2 retries in 15 mins (optional) “params”: { “arg1”: “test”, “arg2”: “job”, }, # set params to be passed to target function (optional) }

# create yearly cron

yearly_cron = job_scheduling.CRON.create( { “cron_name”: “yearly_cron”, # set a name for the cron (unique) “description”: “yearly_cron”, # set the cron description (optional) “cron_status”: True, # set the cron status as enabled “cron_type”: “Calendar”, # set the cron type as Calendar for daily, monthly and yearly “cron_detail”: { “hour”: 0, # set the hour of the day in which the cron should be executed “minute”: 0, # set the minute of the day in which the cron should be executed “second”: 0, # set the second of the day in which the cron should be executed “days”: [ 1, 2, 3, ], # set the days of the month in which the cron should be executed # ‘week_day’: [1, 3], # set the days of the week in a month during which the cron should be executed # ‘weeks_of_month’: [2], # set the weeks of the month during which the cron should be executed “months”: [ 8 ], # set the months of the year in which the cron should be executed “repetition_type”: “yearly”, # set the repetition type as yearly for yearly cron # ’timezone’: ‘America/Los_Angeles’ # set the timezone (optional) }, “job_meta”: job_meta, # set function job meta } )

Note: We urge you to use this SDK to configure only Dynamic Crons. Use the UI Builder to configure Pre-defined Crons.

Last Updated 2025-06-20 16:21:48 +0530 +0530