elasticsearch 8.17.0__py3-none-any.whl → 8.17.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- elasticsearch/_async/client/__init__.py +153 -51
- elasticsearch/_async/client/cat.py +64 -195
- elasticsearch/_async/client/cluster.py +19 -19
- elasticsearch/_async/client/connector.py +337 -0
- elasticsearch/_async/client/dangling_indices.py +3 -3
- elasticsearch/_async/client/ilm.py +6 -6
- elasticsearch/_async/client/indices.py +360 -81
- elasticsearch/_async/client/inference.py +94 -1
- elasticsearch/_async/client/ingest.py +175 -2
- elasticsearch/_async/client/logstash.py +9 -6
- elasticsearch/_async/client/migration.py +16 -7
- elasticsearch/_async/client/ml.py +12 -6
- elasticsearch/_async/client/monitoring.py +2 -1
- elasticsearch/_async/client/nodes.py +3 -3
- elasticsearch/_async/client/query_rules.py +33 -12
- elasticsearch/_async/client/rollup.py +88 -13
- elasticsearch/_async/client/search_application.py +130 -1
- elasticsearch/_async/client/searchable_snapshots.py +32 -23
- elasticsearch/_async/client/security.py +676 -55
- elasticsearch/_async/client/shutdown.py +38 -15
- elasticsearch/_async/client/simulate.py +151 -0
- elasticsearch/_async/client/slm.py +138 -19
- elasticsearch/_async/client/snapshot.py +307 -23
- elasticsearch/_async/client/sql.py +66 -46
- elasticsearch/_async/client/synonyms.py +39 -19
- elasticsearch/_async/client/tasks.py +68 -28
- elasticsearch/_async/client/text_structure.py +466 -46
- elasticsearch/_async/client/transform.py +9 -2
- elasticsearch/_async/client/watcher.py +207 -41
- elasticsearch/_async/client/xpack.py +11 -6
- elasticsearch/_sync/client/__init__.py +153 -51
- elasticsearch/_sync/client/cat.py +64 -195
- elasticsearch/_sync/client/cluster.py +19 -19
- elasticsearch/_sync/client/connector.py +337 -0
- elasticsearch/_sync/client/dangling_indices.py +3 -3
- elasticsearch/_sync/client/ilm.py +6 -6
- elasticsearch/_sync/client/indices.py +360 -81
- elasticsearch/_sync/client/inference.py +94 -1
- elasticsearch/_sync/client/ingest.py +175 -2
- elasticsearch/_sync/client/logstash.py +9 -6
- elasticsearch/_sync/client/migration.py +16 -7
- elasticsearch/_sync/client/ml.py +12 -6
- elasticsearch/_sync/client/monitoring.py +2 -1
- elasticsearch/_sync/client/nodes.py +3 -3
- elasticsearch/_sync/client/query_rules.py +33 -12
- elasticsearch/_sync/client/rollup.py +88 -13
- elasticsearch/_sync/client/search_application.py +130 -1
- elasticsearch/_sync/client/searchable_snapshots.py +32 -23
- elasticsearch/_sync/client/security.py +676 -55
- elasticsearch/_sync/client/shutdown.py +38 -15
- elasticsearch/_sync/client/simulate.py +151 -0
- elasticsearch/_sync/client/slm.py +138 -19
- elasticsearch/_sync/client/snapshot.py +307 -23
- elasticsearch/_sync/client/sql.py +66 -46
- elasticsearch/_sync/client/synonyms.py +39 -19
- elasticsearch/_sync/client/tasks.py +68 -28
- elasticsearch/_sync/client/text_structure.py +466 -46
- elasticsearch/_sync/client/transform.py +9 -2
- elasticsearch/_sync/client/watcher.py +207 -41
- elasticsearch/_sync/client/xpack.py +11 -6
- elasticsearch/_version.py +1 -1
- elasticsearch/client.py +2 -0
- {elasticsearch-8.17.0.dist-info → elasticsearch-8.17.1.dist-info}/METADATA +1 -1
- elasticsearch-8.17.1.dist-info/RECORD +119 -0
- elasticsearch-8.17.0.dist-info/RECORD +0 -117
- {elasticsearch-8.17.0.dist-info → elasticsearch-8.17.1.dist-info}/WHEEL +0 -0
- {elasticsearch-8.17.0.dist-info → elasticsearch-8.17.1.dist-info}/licenses/LICENSE +0 -0
- {elasticsearch-8.17.0.dist-info → elasticsearch-8.17.1.dist-info}/licenses/NOTICE +0 -0
|
@@ -119,9 +119,8 @@ class ClusterClient(NamespacedClient):
|
|
|
119
119
|
timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
120
120
|
) -> ObjectApiResponse[t.Any]:
|
|
121
121
|
"""
|
|
122
|
-
Delete component templates.
|
|
123
|
-
|
|
124
|
-
settings, and aliases.
|
|
122
|
+
Delete component templates. Component templates are building blocks for constructing
|
|
123
|
+
index templates that specify index mappings, settings, and aliases.
|
|
125
124
|
|
|
126
125
|
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/indices-component-template.html>`_
|
|
127
126
|
|
|
@@ -275,7 +274,7 @@ class ClusterClient(NamespacedClient):
|
|
|
275
274
|
pretty: t.Optional[bool] = None,
|
|
276
275
|
) -> ObjectApiResponse[t.Any]:
|
|
277
276
|
"""
|
|
278
|
-
Get component templates.
|
|
277
|
+
Get component templates. Get information about component templates.
|
|
279
278
|
|
|
280
279
|
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/indices-component-template.html>`_
|
|
281
280
|
|
|
@@ -719,20 +718,21 @@ class ClusterClient(NamespacedClient):
|
|
|
719
718
|
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
720
719
|
) -> ObjectApiResponse[t.Any]:
|
|
721
720
|
"""
|
|
722
|
-
Create or update a component template.
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
indices. You can use C-style `/* *\\/` block comments in component templates.
|
|
721
|
+
Create or update a component template. Component templates are building blocks
|
|
722
|
+
for constructing index templates that specify index mappings, settings, and aliases.
|
|
723
|
+
An index template can be composed of multiple component templates. To use a component
|
|
724
|
+
template, specify it in an index template’s `composed_of` list. Component templates
|
|
725
|
+
are only applied to new data streams and indices as part of a matching index
|
|
726
|
+
template. Settings and mappings specified directly in the index template or the
|
|
727
|
+
create index request override any settings or mappings specified in a component
|
|
728
|
+
template. Component templates are only used during index creation. For data streams,
|
|
729
|
+
this includes data stream creation and the creation of a stream’s backing indices.
|
|
730
|
+
Changes to component templates do not affect existing indices, including a stream’s
|
|
731
|
+
backing indices. You can use C-style `/* *\\/` block comments in component templates.
|
|
734
732
|
You can include comments anywhere in the request body except before the opening
|
|
735
|
-
curly bracket.
|
|
733
|
+
curly bracket. **Applying component templates** You cannot directly apply a component
|
|
734
|
+
template to a data stream or index. To be applied, a component template must
|
|
735
|
+
be included in an index template's `composed_of` list.
|
|
736
736
|
|
|
737
737
|
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/indices-component-template.html>`_
|
|
738
738
|
|
|
@@ -755,8 +755,8 @@ class ClusterClient(NamespacedClient):
|
|
|
755
755
|
:param master_timeout: Period to wait for a connection to the master node. If
|
|
756
756
|
no response is received before the timeout expires, the request fails and
|
|
757
757
|
returns an error.
|
|
758
|
-
:param meta: Optional user metadata about the component template.
|
|
759
|
-
contents. This map is not automatically generated by Elasticsearch. This
|
|
758
|
+
:param meta: Optional user metadata about the component template. It may have
|
|
759
|
+
any contents. This map is not automatically generated by Elasticsearch. This
|
|
760
760
|
information is stored in the cluster state, so keeping it short is preferable.
|
|
761
761
|
To unset `_meta`, replace the template without specifying this information.
|
|
762
762
|
:param version: Version number used to manage component templates externally.
|
|
@@ -589,6 +589,125 @@ class ConnectorClient(NamespacedClient):
|
|
|
589
589
|
path_parts=__path_parts,
|
|
590
590
|
)
|
|
591
591
|
|
|
592
|
+
@_rewrite_parameters()
|
|
593
|
+
@_stability_warning(Stability.EXPERIMENTAL)
|
|
594
|
+
async def sync_job_check_in(
|
|
595
|
+
self,
|
|
596
|
+
*,
|
|
597
|
+
connector_sync_job_id: str,
|
|
598
|
+
error_trace: t.Optional[bool] = None,
|
|
599
|
+
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
600
|
+
human: t.Optional[bool] = None,
|
|
601
|
+
pretty: t.Optional[bool] = None,
|
|
602
|
+
) -> ObjectApiResponse[t.Any]:
|
|
603
|
+
"""
|
|
604
|
+
Check in a connector sync job. Check in a connector sync job and set the `last_seen`
|
|
605
|
+
field to the current time before updating it in the internal index. To sync data
|
|
606
|
+
using self-managed connectors, you need to deploy the Elastic connector service
|
|
607
|
+
on your own infrastructure. This service runs automatically on Elastic Cloud
|
|
608
|
+
for Elastic managed connectors.
|
|
609
|
+
|
|
610
|
+
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/check-in-connector-sync-job-api.html>`_
|
|
611
|
+
|
|
612
|
+
:param connector_sync_job_id: The unique identifier of the connector sync job
|
|
613
|
+
to be checked in.
|
|
614
|
+
"""
|
|
615
|
+
if connector_sync_job_id in SKIP_IN_PATH:
|
|
616
|
+
raise ValueError("Empty value passed for parameter 'connector_sync_job_id'")
|
|
617
|
+
__path_parts: t.Dict[str, str] = {
|
|
618
|
+
"connector_sync_job_id": _quote(connector_sync_job_id)
|
|
619
|
+
}
|
|
620
|
+
__path = (
|
|
621
|
+
f'/_connector/_sync_job/{__path_parts["connector_sync_job_id"]}/_check_in'
|
|
622
|
+
)
|
|
623
|
+
__query: t.Dict[str, t.Any] = {}
|
|
624
|
+
if error_trace is not None:
|
|
625
|
+
__query["error_trace"] = error_trace
|
|
626
|
+
if filter_path is not None:
|
|
627
|
+
__query["filter_path"] = filter_path
|
|
628
|
+
if human is not None:
|
|
629
|
+
__query["human"] = human
|
|
630
|
+
if pretty is not None:
|
|
631
|
+
__query["pretty"] = pretty
|
|
632
|
+
__headers = {"accept": "application/json"}
|
|
633
|
+
return await self.perform_request( # type: ignore[return-value]
|
|
634
|
+
"PUT",
|
|
635
|
+
__path,
|
|
636
|
+
params=__query,
|
|
637
|
+
headers=__headers,
|
|
638
|
+
endpoint_id="connector.sync_job_check_in",
|
|
639
|
+
path_parts=__path_parts,
|
|
640
|
+
)
|
|
641
|
+
|
|
642
|
+
@_rewrite_parameters(
|
|
643
|
+
body_fields=("worker_hostname", "sync_cursor"),
|
|
644
|
+
)
|
|
645
|
+
@_stability_warning(Stability.EXPERIMENTAL)
|
|
646
|
+
async def sync_job_claim(
|
|
647
|
+
self,
|
|
648
|
+
*,
|
|
649
|
+
connector_sync_job_id: str,
|
|
650
|
+
worker_hostname: t.Optional[str] = None,
|
|
651
|
+
error_trace: t.Optional[bool] = None,
|
|
652
|
+
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
653
|
+
human: t.Optional[bool] = None,
|
|
654
|
+
pretty: t.Optional[bool] = None,
|
|
655
|
+
sync_cursor: t.Optional[t.Any] = None,
|
|
656
|
+
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
657
|
+
) -> ObjectApiResponse[t.Any]:
|
|
658
|
+
"""
|
|
659
|
+
Claim a connector sync job. This action updates the job status to `in_progress`
|
|
660
|
+
and sets the `last_seen` and `started_at` timestamps to the current time. Additionally,
|
|
661
|
+
it can set the `sync_cursor` property for the sync job. This API is not intended
|
|
662
|
+
for direct connector management by users. It supports the implementation of services
|
|
663
|
+
that utilize the connector protocol to communicate with Elasticsearch. To sync
|
|
664
|
+
data using self-managed connectors, you need to deploy the Elastic connector
|
|
665
|
+
service on your own infrastructure. This service runs automatically on Elastic
|
|
666
|
+
Cloud for Elastic managed connectors.
|
|
667
|
+
|
|
668
|
+
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/claim-connector-sync-job-api.html>`_
|
|
669
|
+
|
|
670
|
+
:param connector_sync_job_id: The unique identifier of the connector sync job.
|
|
671
|
+
:param worker_hostname: The host name of the current system that will run the
|
|
672
|
+
job.
|
|
673
|
+
:param sync_cursor: The cursor object from the last incremental sync job. This
|
|
674
|
+
should reference the `sync_cursor` field in the connector state for which
|
|
675
|
+
the job runs.
|
|
676
|
+
"""
|
|
677
|
+
if connector_sync_job_id in SKIP_IN_PATH:
|
|
678
|
+
raise ValueError("Empty value passed for parameter 'connector_sync_job_id'")
|
|
679
|
+
if worker_hostname is None and body is None:
|
|
680
|
+
raise ValueError("Empty value passed for parameter 'worker_hostname'")
|
|
681
|
+
__path_parts: t.Dict[str, str] = {
|
|
682
|
+
"connector_sync_job_id": _quote(connector_sync_job_id)
|
|
683
|
+
}
|
|
684
|
+
__path = f'/_connector/_sync_job/{__path_parts["connector_sync_job_id"]}/_claim'
|
|
685
|
+
__query: t.Dict[str, t.Any] = {}
|
|
686
|
+
__body: t.Dict[str, t.Any] = body if body is not None else {}
|
|
687
|
+
if error_trace is not None:
|
|
688
|
+
__query["error_trace"] = error_trace
|
|
689
|
+
if filter_path is not None:
|
|
690
|
+
__query["filter_path"] = filter_path
|
|
691
|
+
if human is not None:
|
|
692
|
+
__query["human"] = human
|
|
693
|
+
if pretty is not None:
|
|
694
|
+
__query["pretty"] = pretty
|
|
695
|
+
if not __body:
|
|
696
|
+
if worker_hostname is not None:
|
|
697
|
+
__body["worker_hostname"] = worker_hostname
|
|
698
|
+
if sync_cursor is not None:
|
|
699
|
+
__body["sync_cursor"] = sync_cursor
|
|
700
|
+
__headers = {"accept": "application/json", "content-type": "application/json"}
|
|
701
|
+
return await self.perform_request( # type: ignore[return-value]
|
|
702
|
+
"PUT",
|
|
703
|
+
__path,
|
|
704
|
+
params=__query,
|
|
705
|
+
headers=__headers,
|
|
706
|
+
body=__body,
|
|
707
|
+
endpoint_id="connector.sync_job_claim",
|
|
708
|
+
path_parts=__path_parts,
|
|
709
|
+
)
|
|
710
|
+
|
|
592
711
|
@_rewrite_parameters()
|
|
593
712
|
@_stability_warning(Stability.BETA)
|
|
594
713
|
async def sync_job_delete(
|
|
@@ -634,6 +753,64 @@ class ConnectorClient(NamespacedClient):
|
|
|
634
753
|
path_parts=__path_parts,
|
|
635
754
|
)
|
|
636
755
|
|
|
756
|
+
@_rewrite_parameters(
|
|
757
|
+
body_fields=("error",),
|
|
758
|
+
)
|
|
759
|
+
@_stability_warning(Stability.EXPERIMENTAL)
|
|
760
|
+
async def sync_job_error(
|
|
761
|
+
self,
|
|
762
|
+
*,
|
|
763
|
+
connector_sync_job_id: str,
|
|
764
|
+
error: t.Optional[str] = None,
|
|
765
|
+
error_trace: t.Optional[bool] = None,
|
|
766
|
+
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
767
|
+
human: t.Optional[bool] = None,
|
|
768
|
+
pretty: t.Optional[bool] = None,
|
|
769
|
+
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
770
|
+
) -> ObjectApiResponse[t.Any]:
|
|
771
|
+
"""
|
|
772
|
+
Set a connector sync job error. Set the `error` field for a connector sync job
|
|
773
|
+
and set its `status` to `error`. To sync data using self-managed connectors,
|
|
774
|
+
you need to deploy the Elastic connector service on your own infrastructure.
|
|
775
|
+
This service runs automatically on Elastic Cloud for Elastic managed connectors.
|
|
776
|
+
|
|
777
|
+
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/set-connector-sync-job-error-api.html>`_
|
|
778
|
+
|
|
779
|
+
:param connector_sync_job_id: The unique identifier for the connector sync job.
|
|
780
|
+
:param error: The error for the connector sync job error field.
|
|
781
|
+
"""
|
|
782
|
+
if connector_sync_job_id in SKIP_IN_PATH:
|
|
783
|
+
raise ValueError("Empty value passed for parameter 'connector_sync_job_id'")
|
|
784
|
+
if error is None and body is None:
|
|
785
|
+
raise ValueError("Empty value passed for parameter 'error'")
|
|
786
|
+
__path_parts: t.Dict[str, str] = {
|
|
787
|
+
"connector_sync_job_id": _quote(connector_sync_job_id)
|
|
788
|
+
}
|
|
789
|
+
__path = f'/_connector/_sync_job/{__path_parts["connector_sync_job_id"]}/_error'
|
|
790
|
+
__query: t.Dict[str, t.Any] = {}
|
|
791
|
+
__body: t.Dict[str, t.Any] = body if body is not None else {}
|
|
792
|
+
if error_trace is not None:
|
|
793
|
+
__query["error_trace"] = error_trace
|
|
794
|
+
if filter_path is not None:
|
|
795
|
+
__query["filter_path"] = filter_path
|
|
796
|
+
if human is not None:
|
|
797
|
+
__query["human"] = human
|
|
798
|
+
if pretty is not None:
|
|
799
|
+
__query["pretty"] = pretty
|
|
800
|
+
if not __body:
|
|
801
|
+
if error is not None:
|
|
802
|
+
__body["error"] = error
|
|
803
|
+
__headers = {"accept": "application/json", "content-type": "application/json"}
|
|
804
|
+
return await self.perform_request( # type: ignore[return-value]
|
|
805
|
+
"PUT",
|
|
806
|
+
__path,
|
|
807
|
+
params=__query,
|
|
808
|
+
headers=__headers,
|
|
809
|
+
body=__body,
|
|
810
|
+
endpoint_id="connector.sync_job_error",
|
|
811
|
+
path_parts=__path_parts,
|
|
812
|
+
)
|
|
813
|
+
|
|
637
814
|
@_rewrite_parameters()
|
|
638
815
|
@_stability_warning(Stability.BETA)
|
|
639
816
|
async def sync_job_get(
|
|
@@ -819,6 +996,106 @@ class ConnectorClient(NamespacedClient):
|
|
|
819
996
|
path_parts=__path_parts,
|
|
820
997
|
)
|
|
821
998
|
|
|
999
|
+
@_rewrite_parameters(
|
|
1000
|
+
body_fields=(
|
|
1001
|
+
"deleted_document_count",
|
|
1002
|
+
"indexed_document_count",
|
|
1003
|
+
"indexed_document_volume",
|
|
1004
|
+
"last_seen",
|
|
1005
|
+
"metadata",
|
|
1006
|
+
"total_document_count",
|
|
1007
|
+
),
|
|
1008
|
+
)
|
|
1009
|
+
@_stability_warning(Stability.EXPERIMENTAL)
|
|
1010
|
+
async def sync_job_update_stats(
|
|
1011
|
+
self,
|
|
1012
|
+
*,
|
|
1013
|
+
connector_sync_job_id: str,
|
|
1014
|
+
deleted_document_count: t.Optional[int] = None,
|
|
1015
|
+
indexed_document_count: t.Optional[int] = None,
|
|
1016
|
+
indexed_document_volume: t.Optional[int] = None,
|
|
1017
|
+
error_trace: t.Optional[bool] = None,
|
|
1018
|
+
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
1019
|
+
human: t.Optional[bool] = None,
|
|
1020
|
+
last_seen: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
|
|
1021
|
+
metadata: t.Optional[t.Mapping[str, t.Any]] = None,
|
|
1022
|
+
pretty: t.Optional[bool] = None,
|
|
1023
|
+
total_document_count: t.Optional[int] = None,
|
|
1024
|
+
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
1025
|
+
) -> ObjectApiResponse[t.Any]:
|
|
1026
|
+
"""
|
|
1027
|
+
Set the connector sync job stats. Stats include: `deleted_document_count`, `indexed_document_count`,
|
|
1028
|
+
`indexed_document_volume`, and `total_document_count`. You can also update `last_seen`.
|
|
1029
|
+
This API is mainly used by the connector service for updating sync job information.
|
|
1030
|
+
To sync data using self-managed connectors, you need to deploy the Elastic connector
|
|
1031
|
+
service on your own infrastructure. This service runs automatically on Elastic
|
|
1032
|
+
Cloud for Elastic managed connectors.
|
|
1033
|
+
|
|
1034
|
+
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/set-connector-sync-job-stats-api.html>`_
|
|
1035
|
+
|
|
1036
|
+
:param connector_sync_job_id: The unique identifier of the connector sync job.
|
|
1037
|
+
:param deleted_document_count: The number of documents the sync job deleted.
|
|
1038
|
+
:param indexed_document_count: The number of documents the sync job indexed.
|
|
1039
|
+
:param indexed_document_volume: The total size of the data (in MiB) the sync
|
|
1040
|
+
job indexed.
|
|
1041
|
+
:param last_seen: The timestamp to use in the `last_seen` property for the connector
|
|
1042
|
+
sync job.
|
|
1043
|
+
:param metadata: The connector-specific metadata.
|
|
1044
|
+
:param total_document_count: The total number of documents in the target index
|
|
1045
|
+
after the sync job finished.
|
|
1046
|
+
"""
|
|
1047
|
+
if connector_sync_job_id in SKIP_IN_PATH:
|
|
1048
|
+
raise ValueError("Empty value passed for parameter 'connector_sync_job_id'")
|
|
1049
|
+
if deleted_document_count is None and body is None:
|
|
1050
|
+
raise ValueError(
|
|
1051
|
+
"Empty value passed for parameter 'deleted_document_count'"
|
|
1052
|
+
)
|
|
1053
|
+
if indexed_document_count is None and body is None:
|
|
1054
|
+
raise ValueError(
|
|
1055
|
+
"Empty value passed for parameter 'indexed_document_count'"
|
|
1056
|
+
)
|
|
1057
|
+
if indexed_document_volume is None and body is None:
|
|
1058
|
+
raise ValueError(
|
|
1059
|
+
"Empty value passed for parameter 'indexed_document_volume'"
|
|
1060
|
+
)
|
|
1061
|
+
__path_parts: t.Dict[str, str] = {
|
|
1062
|
+
"connector_sync_job_id": _quote(connector_sync_job_id)
|
|
1063
|
+
}
|
|
1064
|
+
__path = f'/_connector/_sync_job/{__path_parts["connector_sync_job_id"]}/_stats'
|
|
1065
|
+
__query: t.Dict[str, t.Any] = {}
|
|
1066
|
+
__body: t.Dict[str, t.Any] = body if body is not None else {}
|
|
1067
|
+
if error_trace is not None:
|
|
1068
|
+
__query["error_trace"] = error_trace
|
|
1069
|
+
if filter_path is not None:
|
|
1070
|
+
__query["filter_path"] = filter_path
|
|
1071
|
+
if human is not None:
|
|
1072
|
+
__query["human"] = human
|
|
1073
|
+
if pretty is not None:
|
|
1074
|
+
__query["pretty"] = pretty
|
|
1075
|
+
if not __body:
|
|
1076
|
+
if deleted_document_count is not None:
|
|
1077
|
+
__body["deleted_document_count"] = deleted_document_count
|
|
1078
|
+
if indexed_document_count is not None:
|
|
1079
|
+
__body["indexed_document_count"] = indexed_document_count
|
|
1080
|
+
if indexed_document_volume is not None:
|
|
1081
|
+
__body["indexed_document_volume"] = indexed_document_volume
|
|
1082
|
+
if last_seen is not None:
|
|
1083
|
+
__body["last_seen"] = last_seen
|
|
1084
|
+
if metadata is not None:
|
|
1085
|
+
__body["metadata"] = metadata
|
|
1086
|
+
if total_document_count is not None:
|
|
1087
|
+
__body["total_document_count"] = total_document_count
|
|
1088
|
+
__headers = {"accept": "application/json", "content-type": "application/json"}
|
|
1089
|
+
return await self.perform_request( # type: ignore[return-value]
|
|
1090
|
+
"PUT",
|
|
1091
|
+
__path,
|
|
1092
|
+
params=__query,
|
|
1093
|
+
headers=__headers,
|
|
1094
|
+
body=__body,
|
|
1095
|
+
endpoint_id="connector.sync_job_update_stats",
|
|
1096
|
+
path_parts=__path_parts,
|
|
1097
|
+
)
|
|
1098
|
+
|
|
822
1099
|
@_rewrite_parameters()
|
|
823
1100
|
@_stability_warning(Stability.EXPERIMENTAL)
|
|
824
1101
|
async def update_active_filtering(
|
|
@@ -1032,6 +1309,66 @@ class ConnectorClient(NamespacedClient):
|
|
|
1032
1309
|
path_parts=__path_parts,
|
|
1033
1310
|
)
|
|
1034
1311
|
|
|
1312
|
+
@_rewrite_parameters(
|
|
1313
|
+
body_fields=("features",),
|
|
1314
|
+
)
|
|
1315
|
+
@_stability_warning(Stability.EXPERIMENTAL)
|
|
1316
|
+
async def update_features(
|
|
1317
|
+
self,
|
|
1318
|
+
*,
|
|
1319
|
+
connector_id: str,
|
|
1320
|
+
features: t.Optional[t.Mapping[str, t.Any]] = None,
|
|
1321
|
+
error_trace: t.Optional[bool] = None,
|
|
1322
|
+
filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
|
|
1323
|
+
human: t.Optional[bool] = None,
|
|
1324
|
+
pretty: t.Optional[bool] = None,
|
|
1325
|
+
body: t.Optional[t.Dict[str, t.Any]] = None,
|
|
1326
|
+
) -> ObjectApiResponse[t.Any]:
|
|
1327
|
+
"""
|
|
1328
|
+
Update the connector features. Update the connector features in the connector
|
|
1329
|
+
document. This API can be used to control the following aspects of a connector:
|
|
1330
|
+
* document-level security * incremental syncs * advanced sync rules * basic sync
|
|
1331
|
+
rules Normally, the running connector service automatically manages these features.
|
|
1332
|
+
However, you can use this API to override the default behavior. To sync data
|
|
1333
|
+
using self-managed connectors, you need to deploy the Elastic connector service
|
|
1334
|
+
on your own infrastructure. This service runs automatically on Elastic Cloud
|
|
1335
|
+
for Elastic managed connectors.
|
|
1336
|
+
|
|
1337
|
+
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/update-connector-features-api.html>`_
|
|
1338
|
+
|
|
1339
|
+
:param connector_id: The unique identifier of the connector to be updated.
|
|
1340
|
+
:param features:
|
|
1341
|
+
"""
|
|
1342
|
+
if connector_id in SKIP_IN_PATH:
|
|
1343
|
+
raise ValueError("Empty value passed for parameter 'connector_id'")
|
|
1344
|
+
if features is None and body is None:
|
|
1345
|
+
raise ValueError("Empty value passed for parameter 'features'")
|
|
1346
|
+
__path_parts: t.Dict[str, str] = {"connector_id": _quote(connector_id)}
|
|
1347
|
+
__path = f'/_connector/{__path_parts["connector_id"]}/_features'
|
|
1348
|
+
__query: t.Dict[str, t.Any] = {}
|
|
1349
|
+
__body: t.Dict[str, t.Any] = body if body is not None else {}
|
|
1350
|
+
if error_trace is not None:
|
|
1351
|
+
__query["error_trace"] = error_trace
|
|
1352
|
+
if filter_path is not None:
|
|
1353
|
+
__query["filter_path"] = filter_path
|
|
1354
|
+
if human is not None:
|
|
1355
|
+
__query["human"] = human
|
|
1356
|
+
if pretty is not None:
|
|
1357
|
+
__query["pretty"] = pretty
|
|
1358
|
+
if not __body:
|
|
1359
|
+
if features is not None:
|
|
1360
|
+
__body["features"] = features
|
|
1361
|
+
__headers = {"accept": "application/json", "content-type": "application/json"}
|
|
1362
|
+
return await self.perform_request( # type: ignore[return-value]
|
|
1363
|
+
"PUT",
|
|
1364
|
+
__path,
|
|
1365
|
+
params=__query,
|
|
1366
|
+
headers=__headers,
|
|
1367
|
+
body=__body,
|
|
1368
|
+
endpoint_id="connector.update_features",
|
|
1369
|
+
path_parts=__path_parts,
|
|
1370
|
+
)
|
|
1371
|
+
|
|
1035
1372
|
@_rewrite_parameters(
|
|
1036
1373
|
body_fields=("advanced_snippet", "filtering", "rules"),
|
|
1037
1374
|
)
|
|
@@ -44,7 +44,7 @@ class DanglingIndicesClient(NamespacedClient):
|
|
|
44
44
|
For example, this can happen if you delete more than `cluster.indices.tombstones.size`
|
|
45
45
|
indices while an Elasticsearch node is offline.
|
|
46
46
|
|
|
47
|
-
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/
|
|
47
|
+
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/dangling-index-delete.html>`_
|
|
48
48
|
|
|
49
49
|
:param index_uuid: The UUID of the index to delete. Use the get dangling indices
|
|
50
50
|
API to find the UUID.
|
|
@@ -103,7 +103,7 @@ class DanglingIndicesClient(NamespacedClient):
|
|
|
103
103
|
For example, this can happen if you delete more than `cluster.indices.tombstones.size`
|
|
104
104
|
indices while an Elasticsearch node is offline.
|
|
105
105
|
|
|
106
|
-
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/
|
|
106
|
+
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/dangling-index-import.html>`_
|
|
107
107
|
|
|
108
108
|
:param index_uuid: The UUID of the index to import. Use the get dangling indices
|
|
109
109
|
API to locate the UUID.
|
|
@@ -162,7 +162,7 @@ class DanglingIndicesClient(NamespacedClient):
|
|
|
162
162
|
indices while an Elasticsearch node is offline. Use this API to list dangling
|
|
163
163
|
indices, which you can then import or delete.
|
|
164
164
|
|
|
165
|
-
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/
|
|
165
|
+
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/dangling-indices-list.html>`_
|
|
166
166
|
"""
|
|
167
167
|
__path_parts: t.Dict[str, str] = {}
|
|
168
168
|
__path = "/_dangling"
|
|
@@ -341,8 +341,8 @@ class IlmClient(NamespacedClient):
|
|
|
341
341
|
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/ilm-move-to-step.html>`_
|
|
342
342
|
|
|
343
343
|
:param index: The name of the index whose lifecycle step is to change
|
|
344
|
-
:param current_step:
|
|
345
|
-
:param next_step:
|
|
344
|
+
:param current_step: The step that the index is expected to be in.
|
|
345
|
+
:param next_step: The step that you want to run.
|
|
346
346
|
"""
|
|
347
347
|
if index in SKIP_IN_PATH:
|
|
348
348
|
raise ValueError("Empty value passed for parameter 'index'")
|
|
@@ -552,8 +552,8 @@ class IlmClient(NamespacedClient):
|
|
|
552
552
|
|
|
553
553
|
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/ilm-start.html>`_
|
|
554
554
|
|
|
555
|
-
:param master_timeout:
|
|
556
|
-
:param timeout:
|
|
555
|
+
:param master_timeout: Explicit operation timeout for connection to master node
|
|
556
|
+
:param timeout: Explicit operation timeout
|
|
557
557
|
"""
|
|
558
558
|
__path_parts: t.Dict[str, str] = {}
|
|
559
559
|
__path = "/_ilm/start"
|
|
@@ -601,8 +601,8 @@ class IlmClient(NamespacedClient):
|
|
|
601
601
|
|
|
602
602
|
`<https://www.elastic.co/guide/en/elasticsearch/reference/8.17/ilm-stop.html>`_
|
|
603
603
|
|
|
604
|
-
:param master_timeout:
|
|
605
|
-
:param timeout:
|
|
604
|
+
:param master_timeout: Explicit operation timeout for connection to master node
|
|
605
|
+
:param timeout: Explicit operation timeout
|
|
606
606
|
"""
|
|
607
607
|
__path_parts: t.Dict[str, str] = {}
|
|
608
608
|
__path = "/_ilm/stop"
|