[[ml-put-job]]
==== Create Jobs

The create job API enables you to instantiate a {ml} job.

===== Request

`PUT _xpack/ml/anomaly_detectors/<job_id>`

////
===== Description

TBD
////
===== Path Parameters

`job_id` (required)::
  (+string+) Identifier for the job


===== Request Body

`description`::
  (+string+) An optional description of the job.

`analysis_config`::
  (+object+) The analysis configuration, which specifies how to analyze the data.
  See <<ml-analysisconfig, analysis configuration objects>>.

`data_description`::
  (+object+) Describes the format of the input data.
  See <<ml-datadescription,data description objects>>.

`analysis_limits`::
  Optionally specifies runtime limits for the job. See <<ml-apilimits,analysis limits>>.

////
This expects data to be sent in JSON format using the POST `_data` API.

===== Responses

TBD
////
////
200
(EmptyResponse) The cluster has been successfully deleted
404
(BasicFailedReply) The cluster specified by {cluster_id} cannot be found (code: clusters.cluster_not_found)
412
(BasicFailedReply) The Elasticsearch cluster has not been shutdown yet (code: clusters.cluster_plan_state_error)
////

===== Examples

The following example creates the `it-ops-kpi` job:

[source,js]
--------------------------------------------------
PUT _xpack/ml/anomaly_detectors/it-ops-kpi
{
    "description":"First simple job",
    "analysis_config":{
      "bucket_span": "5m",
      "latency": "0ms",
      "detectors":[
        {
          "detector_description": "low_sum(events_per_min)",
          "function":"low_sum",
          "field_name": "events_per_min"
        }
      ]
    },
    "data_description": {
    "time_field":"@timestamp",
    "time_format":"epoch_ms"
    }
}
--------------------------------------------------
// CONSOLE
// TEST[skip:todo]

When the job is created, you receive the following results:
----
{
  "job_id": "it-ops-kpi",
  "description": "First simple job",
  "create_time": 1491247016391,
  "analysis_config": {
    "bucket_span": "5m",
    "latency": "0ms",
    "detectors": [
      {
        "detector_description": "low_sum(events_per_min)",
        "function": "low_sum",
        "field_name": "events_per_min",
        "detector_rules": []
      }
    ],
    "influencers": [],
    "use_per_partition_normalization": false
  },
  "data_description": {
    "time_field": "@timestamp",
    "time_format": "epoch_ms"
  },
  "model_snapshot_retention_days": 1,
  "results_index_name": "shared"
}
----
