# cPanel API 2 Functions - Cron::add_line Warning: The cPanel API 2 system is deprecated. We **strongly** recommend that you use [UAPI](/cpanel/introduction) instead of cPanel API 2. ## Description This function adds a crontab entry. Warning: We **strongly** recommend that you use [UAPI](/cpanel/introduction/) instead of cPanel API 2. However, no equivalent UAPI function exists. ## Examples WHM API (JSON) ```undefined syntaxhighlighter-pre https://hostname.example.com:2087/cpsess###########/json-api/cpanel?cpanel_jsonapi_user=user&cpanel_jsonapi_apiversion=2&cpanel_jsonapi_module=Cron&cpanel_jsonapi_func=add_line&command=/usr/bin/perl%20/home/username/happynewyear.pl&day=1&hour=0&minute=0&month=1&weekday=* ``` Note: For more information, read our [Calls from the WHM API](/whm/use-whm-api-to-call-cpanel-api-and-uapi) documentation. LiveAPI PHP Class ```undefined syntaxhighlighter-pre $cpanel = new CPANEL(); // Connect to cPanel - only do this once. // Add a crontab entry. $dick_clark = $cpanel->api2( 'Cron', 'add_line', array( 'command' => '/usr/bin/perl/home/username/happynewyear.pl', 'day' => '1', 'hour' => '0', 'minute' => '0', 'month' => '1', 'weekday' => '*', ) ); ``` Note: For more information, read our [Guide to the LiveAPI System](/guides/guide-to-the-liveapi-system/#guide-to-the-liveapi-system). LiveAPI Perl Module ```undefined syntaxhighlighter-pre my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once. # Add a crontab entry. my $dick_clark = $cpliveapi->api2( 'Cron', 'add_line', { 'command' => '/usr/bin/perl/home/username/happynewyear.pl', 'day' => '1', 'hour' => '0', 'minute' => '0', 'month' => '1', 'weekday' => '*', } ); ``` Note: For more information, read our [Guide to the LiveAPI System](/guides/guide-to-the-liveapi-system/#guide-to-the-liveapi-system). cPanel Tag System (deprecated) Warnings: - cPanel tags are **deprecated**. We **strongly** recommend that you **only** use the [LiveAPI](/guides/guide-to-the-liveapi-system) system to call the cPanel APIs. Examples are **only** present in order to help developers move from the old cPanel tag system to our [LiveAPI](/guides/guide-to-the-liveapi-system). - cPanel API 2 calls that use cPanel tags vary in code syntax and in their output. - For more information, read our [Deprecated cPanel Tag Usage](/cpanel-api-2/cpanel-api-2-deprecate-cpanel-tag-usage/) documentation. Command Line ```undefined syntaxhighlighter-pre cpapi2 --user=username Cron add_line command=%2Fusr%2Fbin%2Fperl%2Fhome%2Fusername%2Fhappynewyear.pl day=1 hour=0 minute=0 month=1 weekday=* ``` div Notes: - You **must** URI-encode values. - `username` represents your account-level username. - You **must** include the `--user=username` option. - For more information and additional output options, read our [Guide to cPanel API 2](/cpanel-api-2/) documentation or run the `cpapi2 --help` command. - If you run CloudLinux™, you **must** use the full path of the `cpapi2` command: ```undefined syntaxhighlighter-pre /usr/local/cpanel/bin/cpapi2 ``` br Output (JSON) ```undefined syntaxhighlighter-pre { "cpanelresult": { "apiversion": 2, "func": "add_line", "data": [ { "linekey": "1727752715", "statusmsg": "crontab installed", "status": 1 } ], "event": { "result": 1 }, "module": "Cron" } } ``` Note: Use cPanel's *[API Shell](https://docs.cpanel.net/cpanel/advanced/api-shell-for-cpanel)* interface (*cPanel >> Home >> Advanced >> API Shell*) to directly test cPanel API calls. ## Parameters table thead tr th Parameter th Type th Description th Possible values th Example tbody tr td code weekday td em string td p strong Required p The day of the week on which the cron job runs. td ul li 0 strong or code 7 — Sunday. li code 1 — Monday. li code 2 — Tuesday. li code 3 — Wednesday. li code 4 — Thursday. li code 5 — Friday. li code 6 — Saturday. li code * — Every day. td code 0 tr td code minute td em string td p strong Required p The minute of the hour on which the cron job runs. td p An integer between code 0 and code 59 . ul li code * — Once per minute. li code */2 — Every other minute. li code */10 — Every 10 minutes. li code 0,30 — Every 30 minutes. td code 0 tr td code hour td em em string td p strong Required p The hour of the day on which the cron job runs. td p An integer between code 0 and code 23 . ul li code * — Every hour. li code */2 — Every other hour. li code 0,12 — Every 12 hours. td code 1 tr td code day td em string td p strong Required p The day of the month on which the cron job runs. td p An integer between 1 and 31. ul li code * — Every day. li code */2 — Every other day. li code 1,15 — On the 1st and 15th of the month. td code 1 tr td code month td em string td p strong Required p The month of the year on which the cron job runs. td p An integer between 1 and 12. ul li code * — Every month. li code */2 — Every other month. li code */6 — Every six months. td code 1 tr td code command td em string td p strong Required p The command to run. td A valid string. td p code /usr/bin/perl/home/username/happynewyear.pl ## Returns table thead tr th Return th Type th Description th Possible values th Example tbody tr td code linekey td em string td A unique ID for the line in the crontab file. td A valid string. td code 1727752715 tr td code statusmsg td em string td The status of the crontab file td A valid string. td code crontab installed tr td code status td em Boolean td The function call's status. td ul li code 1 — The function succeeded. li code 0 — The function failed. td code 1 tr td code reason td em string td div p A reason for failure. p This function strong only returns a code reason value if it failed. td p A string that describes the error. td code This is an error message. tr td code result td em Boolean td p Whether the function succeeded. td ul li code 1 — The function succeeded. li code 0 — The function failed. td code 1