[role="xpack"]
[testenv="platinum"]
[[ml-put-calendar-job]]
= Add {anomaly-jobs} to calendar API
++++
<titleabbrev>Add jobs to calendar</titleabbrev>
++++

Adds an {anomaly-job} to a calendar.

[[ml-put-calendar-job-request]]
== {api-request-title}

`PUT _ml/calendars/<calendar_id>/jobs/<job_id>`

[[ml-put-calendar-job-prereqs]]
== {api-prereq-title}

* If the {es} {security-features} are enabled, you must have `manage_ml` or
`manage` cluster privileges to use this API. See
<<security-privileges>> and {ml-docs-setup-privileges}.

[[ml-put-calendar-job-path-parms]]
== {api-path-parms-title}

`<calendar_id>`::
(Required, string)
include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=calendar-id]

`<job_id>`::
(Required, string)
include::{es-repo-dir}/ml/ml-shared.asciidoc[tag=job-id-anomaly-detection-list]

[[ml-put-calendar-job-example]]
== {api-examples-title}

[source,console]
--------------------------------------------------
PUT _ml/calendars/planned-outages/jobs/total-requests
--------------------------------------------------
// TEST[skip:setup:calendar_outages_openjob]

The API returns the following results:

[source,console-result]
----
{
  "calendar_id": "planned-outages",
  "job_ids": [
    "total-requests"
  ]
}
----
