--- title: "Create a Cron Using Cron Expressions" url: https://docs.catalyst.zoho.com/en/sdk/python/v1/job-scheduling/cron/create-cron-cron-expressions/ description: "This page describes the Python method to create a cron using Cron Expressions in your project with sample code snippets." last_updated: 2026-09-08T11:07:33Z service: Job Scheduling type: general related_links: - name: "Component Help Documentation" url: /en/job-scheduling/help/cron/key-concepts/#cron-expressions - name: "Java SDK" url: /en/sdk/java/v1/job-scheduling/cron/create-cron-cron-expressions/ - name: "JavaScript SDK Documentation" url: /en/sdk/javascript/v1/job-scheduling/cron/create-cron-expressions/ - name: "REST API Collection" url: /en/api/code-reference/job-scheduling/cron/create-cron/create-cron-cron-exp/#CreateaCronUsingCronExpressions --- # Create a Cron Using Cron Expressions Use this SDK to implement crons to schedule the submission of jobs to job pools. However, the configuration of the cron will be defined using regex-like expressions called [Cron Expressions](https://docs.catalyst.zoho.com/en/job-scheduling/help/cron/key-concepts/#cron-expressions). > **Note:** In the following SDK, the cron has been configured using Cron Expressions, to submit a job to the job pool on **0Hrs 0Mins 0Secs** on **every 1st day of the week** on the **1st month of every year**. You can change this value as per your requirement by passing the relevant value to the `cron_expression` JSON key-value pair. ```python # 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 expression cron expression_cron = job_scheduling.CRON.create({ 'cron_name': 'expression_cron', # set a name for the cron (unique) 'description': 'expression_cron', # set the cron description (optional) 'cron_status': True, # set the cron status as enabled 'cron_type': 'CronExpression', # set the cron type as Calendar for daily, monthly and yearly 'cron_expression': '0 0 * 1 1', # set the cron expression # 'timezone': 'America/Los_Angeles', # set the timezone (optional) 'cron_detail': {}, # set the cron details 'job_meta': job_meta # set function job meta }) ``` > **Note:** We urge you to use this SDK to configure only [Dynamic Crons](https://docs.catalyst.zoho.com/en/job-scheduling/help/implementation/submit-job-dynamic-cron/). Use the *UI Builder* to configure [Pre-defined Crons](https://docs.catalyst.zoho.com/en/job-scheduling/help/implementation/submit-job-predefined-cron/).