kibana/docs/api/machine-learning/sync.asciidoc
2021-09-21 08:33:48 -07:00

79 lines
2.4 KiB
Plaintext

[[machine-learning-api-sync]]
=== Sync {ml} saved objects API
++++
<titleabbrev>Sync {ml} saved objects</titleabbrev>
++++
Synchronizes {kib} saved objects for {ml} jobs.
[[machine-learning-api-sync-request]]
==== Request
`GET <kibana host>:<port>/api/ml/saved_objects/sync`
`GET <kibana host>:<port>/s/<space_id>/api/ml/saved_objects/sync`
[[machine-learning-api-sync-path-params]]
==== Path parameters
`space_id`::
(Optional, string) An identifier for the space. If `space_id` is not provided in
the URL the default space is used.
[[machine-learning-api-sync-query-params]]
==== Query parameters
`simulate`::
(Optional, boolean) When `true`, simulates the synchronization by only returning
the list actions that _would_ be performed.
[[machine-learning-api-sync-response-body]]
==== Response body
`datafeedsAdded`::
(array) If a saved object for an {anomaly-job} is missing a {dfeed} identifier,
it is added. This list contains the {dfeed} identifiers and indicates whether
the synchronization was successful.
`datafeedsRemoved`::
(array) If saved objects exist for {dfeeds} that no longer exist, they are
deleted. This list contains the {dfeed} identifiers and indicates whether the
synchronization was successful.
`savedObjectsCreated`::
(array) If saved objects are missing for {ml} jobs, they are created. This
list contains the job identifiers and indicates whether the synchronization was
successful.
`savedObjectsDeleted`::
(array) If saved objects exist for jobs that no longer exist, they are deleted.
This list contains the job identifiers and indicates whether the synchronization
was successful.
[[machine-learning-api-sync-codes]]
==== Response code
`200`::
Indicates a successful call.
[[machine-learning-api-sync-example]]
==== Example
Retrieve the list of {ml} saved objects that require synchronization:
[source,sh]
--------------------------------------------------
$ curl -X GET api/ml/saved_objects/sync?simulate=true
--------------------------------------------------
// KIBANA
If there are two jobs and a {dfeed} that need to be synchronized, for example,
the API returns the following:
[source,sh]
--------------------------------------------------
{{"savedObjectsCreated":{"myjob1":{"success":true},"myjob2":{"success":true}},"savedObjectsDeleted":{},"datafeedsAdded":{},"datafeedsRemoved":{"myfeed3":{"success":true}}}
--------------------------------------------------
To perform the synchronization, re-run the API and omit the `simulate` parameter.