# 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