{"_id":"56c50630bdcde80d004986a2","category":{"_id":"56c50628bdcde80d0049863b","project":"54774d9af3736008009e9e0e","__v":1,"pages":["56c50630bdcde80d004986a0","56c50630bdcde80d004986a1","56c50630bdcde80d004986a2","56c50630bdcde80d004986a3","56c50630bdcde80d004986a4","56c50630bdcde80d004986a5","56c50630bdcde80d004986a6","56c50630bdcde80d004986a7"],"version":"56c50626bdcde80d00498635","sync":{"url":"","isSync":false},"reference":true,"createdAt":"2015-03-17T14:14:54.509Z","from_sync":false,"order":7,"slug":"codebox-schedules","title":"Schedules"},"project":"54774d9af3736008009e9e0e","__v":1,"version":{"_id":"56c50626bdcde80d00498635","project":"54774d9af3736008009e9e0e","__v":10,"createdAt":"2016-02-17T23:45:42.869Z","releaseDate":"2016-02-17T23:45:42.869Z","categories":["56c50628bdcde80d00498636","56c50628bdcde80d00498637","56c50628bdcde80d00498638","56c50628bdcde80d00498639","56c50628bdcde80d0049863a","56c50628bdcde80d0049863b","56c50628bdcde80d0049863c","56c50628bdcde80d0049863d","56c50628bdcde80d0049863e","56c50628bdcde80d0049863f","56c50628bdcde80d00498640","56c50628bdcde80d00498641","56c50628bdcde80d00498642","56c50628bdcde80d00498643","56c50628bdcde80d00498644","56c50628bdcde80d00498645","56c50628bdcde80d00498646","56c50628bdcde80d00498647","56c506a018f0c90d002808de","56c6b0baf795cf0d003ec13e","56fe58eb5a08190e00085149","571764513cf2960e0009a635","571fc008ffbc6a2000b25bb5","5739ca371f4b740e00b06e09","577522f197a3830e004bcc1b","57753d5ffecd260e00d86ce6","57adb71efaa7a10e004495b6"],"is_deprecated":true,"is_hidden":false,"is_beta":false,"is_stable":false,"codename":"API v1.1","version_clean":"0.1.1","version":"0.1.1"},"editedParams2":true,"githubsync":"","user":"54774c47f3736008009e9e0c","editedParams":true,"parentDoc":null,"metadata":{"title":"","description":"","image":[]},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2015-02-20T17:21:18.983Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"examples":{"codes":[{"language":"curl","name":"","code":"curl -X POST \\\n-H \"X-API-KEY: ACCOUNT_KEY\" \\\n-H \"Content-Type: application/json\" \\\n-d '{\"label\":\"Drink potions daily\",\n     \"description\": \"Schedule description\",\n     \"script\": SCRIPT_ID, \n     \"crontab\": \"0 9 * * *\",\n     \"timezone\": \"UTC\"}' \\\n\"https://api.syncano.io/v1.1/instances/INSTANCE_NAME/schedules/\""},{"code":"import syncano\nfrom syncano.models import Schedule\n\nsyncano.connect(api_key='ACCOUNT_KEY', instance_name=\"INSTANCE_NAME\")\n\nSchedule.please.create(\n    label=\"Drink potions daily\",\n    codebox=CODEBOX_ID,\n    crontab=\"0 9 * * *\"\n)\n","language":"python"},{"language":"javascript","code":"var Syncano = require(\"syncano\");\nvar connection = Syncano({accountKey: \"ACCOUNT_KEY\"});\nvar Schedule = connection.Schedule;\n\nvar options = {\n  label: \"Drink potions daily\",\n  script: SCRIPT_ID,\n  crontab: \"0 9 * * *\",\n  instanceName: \"INSTANCE_NAME\"\n};\n\nSchedule.please().create(options).then(callback)"}]},"method":"post","results":{"codes":[{"status":201,"language":"json","code":"{\n  \"description\": \"Schedule description\",\n  \"links\": {\n    \"self\": \"/v1.1/instances/rivia/schedules/8/\",\n    \"traces\": \"/v1.1/instances/rivia/schedules/8/traces/\",\n    \"script\": \"/v1.1/instances/rivia/snippets/scripts/2/\"\n  },\n  \"script\": 2,\n  \"scheduled_next\": \"2016-03-12T09:00:00.000000Z\",\n  \"created_at\": \"2016-03-11T17:52:29.268588Z\",\n  \"interval_sec\": null,\n  \"crontab\": \"0 9 * * *\",\n  \"label\": \"Drink potions daily\",\n  \"timezone\": \"UTC\",\n  \"id\": 8\n}","name":""},{"code":"{\n  \"interval_sec\": [\n    \"Ensure this value is less than or equal to 86400.\"\n  ]\n}","language":"json","status":400},{"status":403,"language":"json","code":"{\n  \"detail\": \"No such API Key.\"\n}"},{"status":404,"language":"json","code":"{\n  \"detail\": \"Not found\"\n}"}]},"settings":"56c50c06d1b8770d00922288","auth":"required","params":[{"_id":"54d8b350628f540d00f3e4ae","ref":"","in":"path","required":true,"desc":"Instance name","default":"","type":"string","name":"instance_name"},{"_id":"553a7f97903c740d00d8e869","ref":"","in":"body","required":true,"desc":"Schedule label","default":"","type":"string","name":"label"},{"_id":"54e76af7652d7c1900cbe776","ref":"","in":"body","required":true,"desc":"Script ID","default":"","type":"int","name":"script"},{"_id":"54e76e2972ecb719005e4712","ref":"","in":"body","required":false,"desc":"Interval in seconds. Valid range is 6-86400","default":"","type":"int","name":"interval_sec"},{"_id":"54e76e2972ecb719005e4711","ref":"","in":"body","required":false,"desc":"Cron table configuration file","default":"","type":"string","name":"crontab"},{"_id":"558c2f559651c22300361388","ref":"","in":"body","required":false,"desc":"Schedule description","default":"","type":"string","name":"description"},{"_id":"56e33e0a01a6a50e00c2a6d3","ref":"","in":"body","required":false,"desc":"Timezone for schedule (Default: UTC)","default":"UTC","type":"string","name":"timezone"}],"url":"/instances/:instance_name/schedules/"},"isReference":true,"order":2,"body":"Creates a Schedule. You have two options to define when the Script should run:\n+ `interval_sec` parameter. \n+ `crontab` parameter.\n+ `timezone` parameter.\n\nEither `interval_sec` or `crontab` has to be specified -  you won't be able to create a schedule without one of them. `timezone` is set to \"UTC\" by default.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Scheduling - Interval in seconds\",\n  \"body\": \"To pass interval in seconds between Script launches, use the `interval_sec` parameter.\\nValues you can use must be in the range from `30` seconds to `86400` seconds(24 hours).\\n\\nFor more complicated scheduling, use the Crontab parameter\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Scheduling - Crontab\",\n  \"body\": \"A crontab table specifies at what time and on what days the Script will be executed.\\nIt has 5 fields (field name - allowed values)\\n* `minute` - `0-59`\\n* `hour` - `0-23`\\n* `day of the month` - `1-31`\\n* `month` - `1-12`\\n* `day of the week` - `0-6` (where 0 is Sunday) \\n\\nWhen passing the table to Syncano, use the format \\n`minute` `hour` `day_of_month` `month` `day_of_week`. \\n`*` (asterisk) stands for first-last, meaning that the field with `*` passed as a value will be treated as every number from the valid range. In the case of minutes it’ll be every minute, in the case of hours every hour, etc.\\n\\nSo e.g. \\n- if you wanted your code to be run everyday on 9 am use:\\n- `0 9 * * *` - it means run the schedule at 9:00 AM. Since we want to run it every day of the week and every month, we use `*` in the `day of month`, `month` and `day of week` fields.\\n- if the code should run from Monday to Friday at 10:30AM use:\\n- `30 10 * * 1-5` - it means run the schedule at 10:30AM. Since we want it to run during the weekdays we use 1-5 range in the `day_of_week` field.\\n\\nYou can read more about the Crontab table [here](http://man7.org/linux/man-pages/man5/crontab.5.html).\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Scheduling - Timezone\",\n  \"body\": \"Timezones can be set for each schedule. The tz timezone database (or Olson database) is used which can be found [here](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). \\\"UTC\\\" is used by default if a timezone is not defined.\\n\\nThe schedule timezones also handle daylight savings.\"\n}\n[/block]","excerpt":"","slug":"schedules-add","type":"endpoint","title":"Schedules - add"}

postSchedules - add


Definition

{{ api_url }}{{ page_api_url }}

Parameters

Path Params

instance_name:
required
string
Instance name

Body Params

label:
required
string
Schedule label
script:
required
integer
Script ID
interval_sec:
integer
Interval in seconds. Valid range is 6-86400
crontab:
string
Cron table configuration file
description:
string
Schedule description
timezone:
stringUTC
Timezone for schedule (Default: UTC)

Examples


Result Format


Documentation

Creates a Schedule. You have two options to define when the Script should run: + `interval_sec` parameter. + `crontab` parameter. + `timezone` parameter. Either `interval_sec` or `crontab` has to be specified - you won't be able to create a schedule without one of them. `timezone` is set to "UTC" by default. [block:callout] { "type": "info", "title": "Scheduling - Interval in seconds", "body": "To pass interval in seconds between Script launches, use the `interval_sec` parameter.\nValues you can use must be in the range from `30` seconds to `86400` seconds(24 hours).\n\nFor more complicated scheduling, use the Crontab parameter" } [/block] [block:callout] { "type": "info", "title": "Scheduling - Crontab", "body": "A crontab table specifies at what time and on what days the Script will be executed.\nIt has 5 fields (field name - allowed values)\n* `minute` - `0-59`\n* `hour` - `0-23`\n* `day of the month` - `1-31`\n* `month` - `1-12`\n* `day of the week` - `0-6` (where 0 is Sunday) \n\nWhen passing the table to Syncano, use the format \n`minute` `hour` `day_of_month` `month` `day_of_week`. \n`*` (asterisk) stands for first-last, meaning that the field with `*` passed as a value will be treated as every number from the valid range. In the case of minutes it’ll be every minute, in the case of hours every hour, etc.\n\nSo e.g. \n- if you wanted your code to be run everyday on 9 am use:\n- `0 9 * * *` - it means run the schedule at 9:00 AM. Since we want to run it every day of the week and every month, we use `*` in the `day of month`, `month` and `day of week` fields.\n- if the code should run from Monday to Friday at 10:30AM use:\n- `30 10 * * 1-5` - it means run the schedule at 10:30AM. Since we want it to run during the weekdays we use 1-5 range in the `day_of_week` field.\n\nYou can read more about the Crontab table [here](http://man7.org/linux/man-pages/man5/crontab.5.html)." } [/block] [block:callout] { "type": "info", "title": "Scheduling - Timezone", "body": "Timezones can be set for each schedule. The tz timezone database (or Olson database) is used which can be found [here](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). \"UTC\" is used by default if a timezone is not defined.\n\nThe schedule timezones also handle daylight savings." } [/block]

User Information

Try It Out

post
{{ tryResults.results }}
Method{{ tryResults.method }}
Request Headers
{{ tryResults.requestHeaders }}
URL{{ tryResults.url }}
Request Data
{{ tryResults.data }}
Status
Response Headers
{{ tryResults.responseHeaders }}