@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -49,7 +49,7 @@ discard block |
||
49 | 49 | public function cacheStats(array $params = []) |
50 | 50 | { |
51 | 51 | if (isset($params['node_id'])) { |
52 | - $url = '/_searchable_snapshots/' . $this->encode($params['node_id']) . '/cache/stats'; |
|
52 | + $url = '/_searchable_snapshots/'.$this->encode($params['node_id']).'/cache/stats'; |
|
53 | 53 | $method = 'GET'; |
54 | 54 | } else { |
55 | 55 | $url = '/_searchable_snapshots/cache/stats'; |
@@ -86,7 +86,7 @@ discard block |
||
86 | 86 | public function clearCache(array $params = []) |
87 | 87 | { |
88 | 88 | if (isset($params['index'])) { |
89 | - $url = '/' . $this->encode($params['index']) . '/_searchable_snapshots/cache/clear'; |
|
89 | + $url = '/'.$this->encode($params['index']).'/_searchable_snapshots/cache/clear'; |
|
90 | 90 | $method = 'POST'; |
91 | 91 | } else { |
92 | 92 | $url = '/_searchable_snapshots/cache/clear'; |
@@ -125,7 +125,7 @@ discard block |
||
125 | 125 | public function mount(array $params = []) |
126 | 126 | { |
127 | 127 | $this->checkRequiredParameters(['repository', 'snapshot', 'body'], $params); |
128 | - $url = '/_snapshot/' . $this->encode($params['repository']) . '/' . $this->encode($params['snapshot']) . '/_mount'; |
|
128 | + $url = '/_snapshot/'.$this->encode($params['repository']).'/'.$this->encode($params['snapshot']).'/_mount'; |
|
129 | 129 | $method = 'POST'; |
130 | 130 | $url = $this->addQueryString($url, $params, ['master_timeout', 'wait_for_completion', 'storage', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
131 | 131 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -155,7 +155,7 @@ discard block |
||
155 | 155 | public function stats(array $params = []) |
156 | 156 | { |
157 | 157 | if (isset($params['index'])) { |
158 | - $url = '/' . $this->encode($params['index']) . '/_searchable_snapshots/stats'; |
|
158 | + $url = '/'.$this->encode($params['index']).'/_searchable_snapshots/stats'; |
|
159 | 159 | $method = 'GET'; |
160 | 160 | } else { |
161 | 161 | $url = '/_searchable_snapshots/stats'; |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class SearchableSnapshots extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class SearchableSnapshots extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Retrieve node-level cache statistics about searchable snapshots. |
30 | 29 | * |
@@ -25,152 +25,152 @@ |
||
25 | 25 | */ |
26 | 26 | class SearchableSnapshots extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Retrieve node-level cache statistics about searchable snapshots. |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html |
|
32 | - * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
33 | - * |
|
34 | - * @param array{ |
|
35 | - * node_id: list, // A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes |
|
36 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
37 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
38 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
39 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
40 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
41 | - * } $params |
|
42 | - * |
|
43 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
44 | - * @throws ClientResponseException if the status code of response is 4xx |
|
45 | - * @throws ServerResponseException if the status code of response is 5xx |
|
46 | - * |
|
47 | - * @return Elasticsearch|Promise |
|
48 | - */ |
|
49 | - public function cacheStats(array $params = []) |
|
50 | - { |
|
51 | - if (isset($params['node_id'])) { |
|
52 | - $url = '/_searchable_snapshots/' . $this->encode($params['node_id']) . '/cache/stats'; |
|
53 | - $method = 'GET'; |
|
54 | - } else { |
|
55 | - $url = '/_searchable_snapshots/cache/stats'; |
|
56 | - $method = 'GET'; |
|
57 | - } |
|
58 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
59 | - $headers = ['Accept' => 'application/json']; |
|
60 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
61 | - $request = $this->addOtelAttributes($params, ['node_id'], $request, 'searchable_snapshots.cache_stats'); |
|
62 | - return $this->client->sendRequest($request); |
|
63 | - } |
|
64 | - /** |
|
65 | - * Clear the cache of searchable snapshots. |
|
66 | - * |
|
67 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html |
|
68 | - * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
69 | - * |
|
70 | - * @param array{ |
|
71 | - * index: list, // A comma-separated list of index names |
|
72 | - * ignore_unavailable: boolean, // Whether specified concrete indices should be ignored when unavailable (missing or closed) |
|
73 | - * allow_no_indices: boolean, // Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified) |
|
74 | - * expand_wildcards: enum, // Whether to expand wildcard expression to concrete indices that are open, closed or both. |
|
75 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
76 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
77 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
78 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
79 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
80 | - * } $params |
|
81 | - * |
|
82 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
83 | - * @throws ClientResponseException if the status code of response is 4xx |
|
84 | - * @throws ServerResponseException if the status code of response is 5xx |
|
85 | - * |
|
86 | - * @return Elasticsearch|Promise |
|
87 | - */ |
|
88 | - public function clearCache(array $params = []) |
|
89 | - { |
|
90 | - if (isset($params['index'])) { |
|
91 | - $url = '/' . $this->encode($params['index']) . '/_searchable_snapshots/cache/clear'; |
|
92 | - $method = 'POST'; |
|
93 | - } else { |
|
94 | - $url = '/_searchable_snapshots/cache/clear'; |
|
95 | - $method = 'POST'; |
|
96 | - } |
|
97 | - $url = $this->addQueryString($url, $params, ['ignore_unavailable', 'allow_no_indices', 'expand_wildcards', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
98 | - $headers = ['Accept' => 'application/json']; |
|
99 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
100 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'searchable_snapshots.clear_cache'); |
|
101 | - return $this->client->sendRequest($request); |
|
102 | - } |
|
103 | - /** |
|
104 | - * Mount a snapshot as a searchable index. |
|
105 | - * |
|
106 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-api-mount-snapshot.html |
|
107 | - * |
|
108 | - * @param array{ |
|
109 | - * repository: string, // (REQUIRED) The name of the repository containing the snapshot of the index to mount |
|
110 | - * snapshot: string, // (REQUIRED) The name of the snapshot of the index to mount |
|
111 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
112 | - * wait_for_completion: boolean, // Should this request wait until the operation has completed before returning |
|
113 | - * storage: string, // Selects the kind of local storage used to accelerate searches. Experimental, and defaults to `full_copy` |
|
114 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
115 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
116 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
117 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
118 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
119 | - * body: array, // (REQUIRED) The restore configuration for mounting the snapshot as searchable |
|
120 | - * } $params |
|
121 | - * |
|
122 | - * @throws MissingParameterException if a required parameter is missing |
|
123 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
124 | - * @throws ClientResponseException if the status code of response is 4xx |
|
125 | - * @throws ServerResponseException if the status code of response is 5xx |
|
126 | - * |
|
127 | - * @return Elasticsearch|Promise |
|
128 | - */ |
|
129 | - public function mount(array $params = []) |
|
130 | - { |
|
131 | - $this->checkRequiredParameters(['repository', 'snapshot', 'body'], $params); |
|
132 | - $url = '/_snapshot/' . $this->encode($params['repository']) . '/' . $this->encode($params['snapshot']) . '/_mount'; |
|
133 | - $method = 'POST'; |
|
134 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'wait_for_completion', 'storage', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
135 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
136 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
137 | - $request = $this->addOtelAttributes($params, ['repository', 'snapshot'], $request, 'searchable_snapshots.mount'); |
|
138 | - return $this->client->sendRequest($request); |
|
139 | - } |
|
140 | - /** |
|
141 | - * Retrieve shard-level statistics about searchable snapshots. |
|
142 | - * |
|
143 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html |
|
144 | - * |
|
145 | - * @param array{ |
|
146 | - * index: list, // A comma-separated list of index names |
|
147 | - * level: enum, // Return stats aggregated at cluster, index or shard level |
|
148 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
149 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
150 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
151 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
152 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
153 | - * } $params |
|
154 | - * |
|
155 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
156 | - * @throws ClientResponseException if the status code of response is 4xx |
|
157 | - * @throws ServerResponseException if the status code of response is 5xx |
|
158 | - * |
|
159 | - * @return Elasticsearch|Promise |
|
160 | - */ |
|
161 | - public function stats(array $params = []) |
|
162 | - { |
|
163 | - if (isset($params['index'])) { |
|
164 | - $url = '/' . $this->encode($params['index']) . '/_searchable_snapshots/stats'; |
|
165 | - $method = 'GET'; |
|
166 | - } else { |
|
167 | - $url = '/_searchable_snapshots/stats'; |
|
168 | - $method = 'GET'; |
|
169 | - } |
|
170 | - $url = $this->addQueryString($url, $params, ['level', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
171 | - $headers = ['Accept' => 'application/json']; |
|
172 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
173 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'searchable_snapshots.stats'); |
|
174 | - return $this->client->sendRequest($request); |
|
175 | - } |
|
28 | + /** |
|
29 | + * Retrieve node-level cache statistics about searchable snapshots. |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html |
|
32 | + * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
33 | + * |
|
34 | + * @param array{ |
|
35 | + * node_id: list, // A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes |
|
36 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
37 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
38 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
39 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
40 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
41 | + * } $params |
|
42 | + * |
|
43 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
44 | + * @throws ClientResponseException if the status code of response is 4xx |
|
45 | + * @throws ServerResponseException if the status code of response is 5xx |
|
46 | + * |
|
47 | + * @return Elasticsearch|Promise |
|
48 | + */ |
|
49 | + public function cacheStats(array $params = []) |
|
50 | + { |
|
51 | + if (isset($params['node_id'])) { |
|
52 | + $url = '/_searchable_snapshots/' . $this->encode($params['node_id']) . '/cache/stats'; |
|
53 | + $method = 'GET'; |
|
54 | + } else { |
|
55 | + $url = '/_searchable_snapshots/cache/stats'; |
|
56 | + $method = 'GET'; |
|
57 | + } |
|
58 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
59 | + $headers = ['Accept' => 'application/json']; |
|
60 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
61 | + $request = $this->addOtelAttributes($params, ['node_id'], $request, 'searchable_snapshots.cache_stats'); |
|
62 | + return $this->client->sendRequest($request); |
|
63 | + } |
|
64 | + /** |
|
65 | + * Clear the cache of searchable snapshots. |
|
66 | + * |
|
67 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html |
|
68 | + * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
69 | + * |
|
70 | + * @param array{ |
|
71 | + * index: list, // A comma-separated list of index names |
|
72 | + * ignore_unavailable: boolean, // Whether specified concrete indices should be ignored when unavailable (missing or closed) |
|
73 | + * allow_no_indices: boolean, // Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have been specified) |
|
74 | + * expand_wildcards: enum, // Whether to expand wildcard expression to concrete indices that are open, closed or both. |
|
75 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
76 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
77 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
78 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
79 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
80 | + * } $params |
|
81 | + * |
|
82 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
83 | + * @throws ClientResponseException if the status code of response is 4xx |
|
84 | + * @throws ServerResponseException if the status code of response is 5xx |
|
85 | + * |
|
86 | + * @return Elasticsearch|Promise |
|
87 | + */ |
|
88 | + public function clearCache(array $params = []) |
|
89 | + { |
|
90 | + if (isset($params['index'])) { |
|
91 | + $url = '/' . $this->encode($params['index']) . '/_searchable_snapshots/cache/clear'; |
|
92 | + $method = 'POST'; |
|
93 | + } else { |
|
94 | + $url = '/_searchable_snapshots/cache/clear'; |
|
95 | + $method = 'POST'; |
|
96 | + } |
|
97 | + $url = $this->addQueryString($url, $params, ['ignore_unavailable', 'allow_no_indices', 'expand_wildcards', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
98 | + $headers = ['Accept' => 'application/json']; |
|
99 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
100 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'searchable_snapshots.clear_cache'); |
|
101 | + return $this->client->sendRequest($request); |
|
102 | + } |
|
103 | + /** |
|
104 | + * Mount a snapshot as a searchable index. |
|
105 | + * |
|
106 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-api-mount-snapshot.html |
|
107 | + * |
|
108 | + * @param array{ |
|
109 | + * repository: string, // (REQUIRED) The name of the repository containing the snapshot of the index to mount |
|
110 | + * snapshot: string, // (REQUIRED) The name of the snapshot of the index to mount |
|
111 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
112 | + * wait_for_completion: boolean, // Should this request wait until the operation has completed before returning |
|
113 | + * storage: string, // Selects the kind of local storage used to accelerate searches. Experimental, and defaults to `full_copy` |
|
114 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
115 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
116 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
117 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
118 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
119 | + * body: array, // (REQUIRED) The restore configuration for mounting the snapshot as searchable |
|
120 | + * } $params |
|
121 | + * |
|
122 | + * @throws MissingParameterException if a required parameter is missing |
|
123 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
124 | + * @throws ClientResponseException if the status code of response is 4xx |
|
125 | + * @throws ServerResponseException if the status code of response is 5xx |
|
126 | + * |
|
127 | + * @return Elasticsearch|Promise |
|
128 | + */ |
|
129 | + public function mount(array $params = []) |
|
130 | + { |
|
131 | + $this->checkRequiredParameters(['repository', 'snapshot', 'body'], $params); |
|
132 | + $url = '/_snapshot/' . $this->encode($params['repository']) . '/' . $this->encode($params['snapshot']) . '/_mount'; |
|
133 | + $method = 'POST'; |
|
134 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'wait_for_completion', 'storage', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
135 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
136 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
137 | + $request = $this->addOtelAttributes($params, ['repository', 'snapshot'], $request, 'searchable_snapshots.mount'); |
|
138 | + return $this->client->sendRequest($request); |
|
139 | + } |
|
140 | + /** |
|
141 | + * Retrieve shard-level statistics about searchable snapshots. |
|
142 | + * |
|
143 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/searchable-snapshots-apis.html |
|
144 | + * |
|
145 | + * @param array{ |
|
146 | + * index: list, // A comma-separated list of index names |
|
147 | + * level: enum, // Return stats aggregated at cluster, index or shard level |
|
148 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
149 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
150 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
151 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
152 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
153 | + * } $params |
|
154 | + * |
|
155 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
156 | + * @throws ClientResponseException if the status code of response is 4xx |
|
157 | + * @throws ServerResponseException if the status code of response is 5xx |
|
158 | + * |
|
159 | + * @return Elasticsearch|Promise |
|
160 | + */ |
|
161 | + public function stats(array $params = []) |
|
162 | + { |
|
163 | + if (isset($params['index'])) { |
|
164 | + $url = '/' . $this->encode($params['index']) . '/_searchable_snapshots/stats'; |
|
165 | + $method = 'GET'; |
|
166 | + } else { |
|
167 | + $url = '/_searchable_snapshots/stats'; |
|
168 | + $method = 'GET'; |
|
169 | + } |
|
170 | + $url = $this->addQueryString($url, $params, ['level', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
171 | + $headers = ['Accept' => 'application/json']; |
|
172 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
173 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'searchable_snapshots.stats'); |
|
174 | + return $this->client->sendRequest($request); |
|
175 | + } |
|
176 | 176 | } |
@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -52,7 +52,7 @@ discard block |
||
52 | 52 | public function deleteTransform(array $params = []) |
53 | 53 | { |
54 | 54 | $this->checkRequiredParameters(['transform_id'], $params); |
55 | - $url = '/_transform/' . $this->encode($params['transform_id']); |
|
55 | + $url = '/_transform/'.$this->encode($params['transform_id']); |
|
56 | 56 | $method = 'DELETE'; |
57 | 57 | $url = $this->addQueryString($url, $params, ['force', 'delete_dest_index', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
58 | 58 | $headers = ['Accept' => 'application/json']; |
@@ -85,7 +85,7 @@ discard block |
||
85 | 85 | public function getTransform(array $params = []) |
86 | 86 | { |
87 | 87 | if (isset($params['transform_id'])) { |
88 | - $url = '/_transform/' . $this->encode($params['transform_id']); |
|
88 | + $url = '/_transform/'.$this->encode($params['transform_id']); |
|
89 | 89 | $method = 'GET'; |
90 | 90 | } else { |
91 | 91 | $url = '/_transform'; |
@@ -123,7 +123,7 @@ discard block |
||
123 | 123 | public function getTransformStats(array $params = []) |
124 | 124 | { |
125 | 125 | $this->checkRequiredParameters(['transform_id'], $params); |
126 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_stats'; |
|
126 | + $url = '/_transform/'.$this->encode($params['transform_id']).'/_stats'; |
|
127 | 127 | $method = 'GET'; |
128 | 128 | $url = $this->addQueryString($url, $params, ['from', 'size', 'timeout', 'allow_no_match', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
129 | 129 | $headers = ['Accept' => 'application/json']; |
@@ -154,7 +154,7 @@ discard block |
||
154 | 154 | public function previewTransform(array $params = []) |
155 | 155 | { |
156 | 156 | if (isset($params['transform_id'])) { |
157 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_preview'; |
|
157 | + $url = '/_transform/'.$this->encode($params['transform_id']).'/_preview'; |
|
158 | 158 | $method = empty($params['body']) ? 'GET' : 'POST'; |
159 | 159 | } else { |
160 | 160 | $url = '/_transform/_preview'; |
@@ -191,7 +191,7 @@ discard block |
||
191 | 191 | public function putTransform(array $params = []) |
192 | 192 | { |
193 | 193 | $this->checkRequiredParameters(['transform_id', 'body'], $params); |
194 | - $url = '/_transform/' . $this->encode($params['transform_id']); |
|
194 | + $url = '/_transform/'.$this->encode($params['transform_id']); |
|
195 | 195 | $method = 'PUT'; |
196 | 196 | $url = $this->addQueryString($url, $params, ['defer_validation', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
197 | 197 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -223,7 +223,7 @@ discard block |
||
223 | 223 | public function resetTransform(array $params = []) |
224 | 224 | { |
225 | 225 | $this->checkRequiredParameters(['transform_id'], $params); |
226 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_reset'; |
|
226 | + $url = '/_transform/'.$this->encode($params['transform_id']).'/_reset'; |
|
227 | 227 | $method = 'POST'; |
228 | 228 | $url = $this->addQueryString($url, $params, ['force', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
229 | 229 | $headers = ['Accept' => 'application/json']; |
@@ -254,7 +254,7 @@ discard block |
||
254 | 254 | public function scheduleNowTransform(array $params = []) |
255 | 255 | { |
256 | 256 | $this->checkRequiredParameters(['transform_id'], $params); |
257 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_schedule_now'; |
|
257 | + $url = '/_transform/'.$this->encode($params['transform_id']).'/_schedule_now'; |
|
258 | 258 | $method = 'POST'; |
259 | 259 | $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
260 | 260 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -286,7 +286,7 @@ discard block |
||
286 | 286 | public function startTransform(array $params = []) |
287 | 287 | { |
288 | 288 | $this->checkRequiredParameters(['transform_id'], $params); |
289 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_start'; |
|
289 | + $url = '/_transform/'.$this->encode($params['transform_id']).'/_start'; |
|
290 | 290 | $method = 'POST'; |
291 | 291 | $url = $this->addQueryString($url, $params, ['from', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
292 | 292 | $headers = ['Accept' => 'application/json']; |
@@ -321,7 +321,7 @@ discard block |
||
321 | 321 | public function stopTransform(array $params = []) |
322 | 322 | { |
323 | 323 | $this->checkRequiredParameters(['transform_id'], $params); |
324 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_stop'; |
|
324 | + $url = '/_transform/'.$this->encode($params['transform_id']).'/_stop'; |
|
325 | 325 | $method = 'POST'; |
326 | 326 | $url = $this->addQueryString($url, $params, ['force', 'wait_for_completion', 'timeout', 'allow_no_match', 'wait_for_checkpoint', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
327 | 327 | $headers = ['Accept' => 'application/json']; |
@@ -354,7 +354,7 @@ discard block |
||
354 | 354 | public function updateTransform(array $params = []) |
355 | 355 | { |
356 | 356 | $this->checkRequiredParameters(['transform_id', 'body'], $params); |
357 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_update'; |
|
357 | + $url = '/_transform/'.$this->encode($params['transform_id']).'/_update'; |
|
358 | 358 | $method = 'POST'; |
359 | 359 | $url = $this->addQueryString($url, $params, ['defer_validation', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
360 | 360 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class Transform extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class Transform extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Deletes an existing transform. |
30 | 29 | * |
@@ -25,419 +25,419 @@ |
||
25 | 25 | */ |
26 | 26 | class Transform extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Deletes an existing transform. |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/delete-transform.html |
|
32 | - * |
|
33 | - * @param array{ |
|
34 | - * transform_id: string, // (REQUIRED) The id of the transform to delete |
|
35 | - * force: boolean, // When `true`, the transform is deleted regardless of its current state. The default value is `false`, meaning that the transform must be `stopped` before it can be deleted. |
|
36 | - * delete_dest_index: boolean, // When `true`, the destination index is deleted together with the transform. The default value is `false`, meaning that the destination index will not be deleted. |
|
37 | - * timeout: time, // Controls the time to wait for the transform deletion |
|
38 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
39 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
40 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
41 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
42 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
43 | - * } $params |
|
44 | - * |
|
45 | - * @throws MissingParameterException if a required parameter is missing |
|
46 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
47 | - * @throws ClientResponseException if the status code of response is 4xx |
|
48 | - * @throws ServerResponseException if the status code of response is 5xx |
|
49 | - * |
|
50 | - * @return Elasticsearch|Promise |
|
51 | - */ |
|
52 | - public function deleteTransform(array $params = []) |
|
53 | - { |
|
54 | - $this->checkRequiredParameters(['transform_id'], $params); |
|
55 | - $url = '/_transform/' . $this->encode($params['transform_id']); |
|
56 | - $method = 'DELETE'; |
|
57 | - $url = $this->addQueryString($url, $params, ['force', 'delete_dest_index', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
58 | - $headers = ['Accept' => 'application/json']; |
|
59 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
60 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.delete_transform'); |
|
61 | - return $this->client->sendRequest($request); |
|
62 | - } |
|
63 | - /** |
|
64 | - * Retrieves transform usage information for transform nodes. |
|
65 | - * |
|
66 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/get-transform-node-stats.html |
|
67 | - * |
|
68 | - * @param array{ |
|
69 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
70 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
71 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
72 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
73 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
74 | - * } $params |
|
75 | - * |
|
76 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
77 | - * @throws ClientResponseException if the status code of response is 4xx |
|
78 | - * @throws ServerResponseException if the status code of response is 5xx |
|
79 | - * |
|
80 | - * @return Elasticsearch|Promise |
|
81 | - */ |
|
82 | - public function getNodeStats(array $params = []) |
|
83 | - { |
|
84 | - $url = '/_transform/_node_stats'; |
|
85 | - $method = 'GET'; |
|
86 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
87 | - $headers = ['Accept' => 'application/json']; |
|
88 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
89 | - $request = $this->addOtelAttributes($params, [], $request, 'transform.get_node_stats'); |
|
90 | - return $this->client->sendRequest($request); |
|
91 | - } |
|
92 | - /** |
|
93 | - * Retrieves configuration information for transforms. |
|
94 | - * |
|
95 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/get-transform.html |
|
96 | - * |
|
97 | - * @param array{ |
|
98 | - * transform_id: string, // The id or comma delimited list of id expressions of the transforms to get, '_all' or '*' implies get all transforms |
|
99 | - * from: int, // skips a number of transform configs, defaults to 0 |
|
100 | - * size: int, // specifies a max number of transforms to get, defaults to 100 |
|
101 | - * allow_no_match: boolean, // Whether to ignore if a wildcard expression matches no transforms. (This includes `_all` string or when no transforms have been specified) |
|
102 | - * exclude_generated: boolean, // Omits fields that are illegal to set on transform PUT |
|
103 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
104 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
105 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
106 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
107 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
108 | - * } $params |
|
109 | - * |
|
110 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
111 | - * @throws ClientResponseException if the status code of response is 4xx |
|
112 | - * @throws ServerResponseException if the status code of response is 5xx |
|
113 | - * |
|
114 | - * @return Elasticsearch|Promise |
|
115 | - */ |
|
116 | - public function getTransform(array $params = []) |
|
117 | - { |
|
118 | - if (isset($params['transform_id'])) { |
|
119 | - $url = '/_transform/' . $this->encode($params['transform_id']); |
|
120 | - $method = 'GET'; |
|
121 | - } else { |
|
122 | - $url = '/_transform'; |
|
123 | - $method = 'GET'; |
|
124 | - } |
|
125 | - $url = $this->addQueryString($url, $params, ['from', 'size', 'allow_no_match', 'exclude_generated', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
126 | - $headers = ['Accept' => 'application/json']; |
|
127 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
128 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.get_transform'); |
|
129 | - return $this->client->sendRequest($request); |
|
130 | - } |
|
131 | - /** |
|
132 | - * Retrieves usage information for transforms. |
|
133 | - * |
|
134 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/get-transform-stats.html |
|
135 | - * |
|
136 | - * @param array{ |
|
137 | - * transform_id: string, // (REQUIRED) The id of the transform for which to get stats. '_all' or '*' implies all transforms |
|
138 | - * from: number, // skips a number of transform stats, defaults to 0 |
|
139 | - * size: number, // specifies a max number of transform stats to get, defaults to 100 |
|
140 | - * timeout: time, // Controls the time to wait for the stats |
|
141 | - * allow_no_match: boolean, // Whether to ignore if a wildcard expression matches no transforms. (This includes `_all` string or when no transforms have been specified) |
|
142 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
143 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
144 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
145 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
146 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
147 | - * } $params |
|
148 | - * |
|
149 | - * @throws MissingParameterException if a required parameter is missing |
|
150 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
151 | - * @throws ClientResponseException if the status code of response is 4xx |
|
152 | - * @throws ServerResponseException if the status code of response is 5xx |
|
153 | - * |
|
154 | - * @return Elasticsearch|Promise |
|
155 | - */ |
|
156 | - public function getTransformStats(array $params = []) |
|
157 | - { |
|
158 | - $this->checkRequiredParameters(['transform_id'], $params); |
|
159 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_stats'; |
|
160 | - $method = 'GET'; |
|
161 | - $url = $this->addQueryString($url, $params, ['from', 'size', 'timeout', 'allow_no_match', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
162 | - $headers = ['Accept' => 'application/json']; |
|
163 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
164 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.get_transform_stats'); |
|
165 | - return $this->client->sendRequest($request); |
|
166 | - } |
|
167 | - /** |
|
168 | - * Previews a transform. |
|
169 | - * |
|
170 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/preview-transform.html |
|
171 | - * |
|
172 | - * @param array{ |
|
173 | - * transform_id: string, // The id of the transform to preview. |
|
174 | - * timeout: time, // Controls the time to wait for the preview |
|
175 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
176 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
177 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
178 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
179 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
180 | - * body: array, // The definition for the transform to preview |
|
181 | - * } $params |
|
182 | - * |
|
183 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
184 | - * @throws ClientResponseException if the status code of response is 4xx |
|
185 | - * @throws ServerResponseException if the status code of response is 5xx |
|
186 | - * |
|
187 | - * @return Elasticsearch|Promise |
|
188 | - */ |
|
189 | - public function previewTransform(array $params = []) |
|
190 | - { |
|
191 | - if (isset($params['transform_id'])) { |
|
192 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_preview'; |
|
193 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
194 | - } else { |
|
195 | - $url = '/_transform/_preview'; |
|
196 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
197 | - } |
|
198 | - $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
199 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
200 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
201 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.preview_transform'); |
|
202 | - return $this->client->sendRequest($request); |
|
203 | - } |
|
204 | - /** |
|
205 | - * Instantiates a transform. |
|
206 | - * |
|
207 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/put-transform.html |
|
208 | - * |
|
209 | - * @param array{ |
|
210 | - * transform_id: string, // (REQUIRED) The id of the new transform. |
|
211 | - * defer_validation: boolean, // If validations should be deferred until transform starts, defaults to false. |
|
212 | - * timeout: time, // Controls the time to wait for the transform to start |
|
213 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
214 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
215 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
216 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
217 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
218 | - * body: array, // (REQUIRED) The transform definition |
|
219 | - * } $params |
|
220 | - * |
|
221 | - * @throws MissingParameterException if a required parameter is missing |
|
222 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
223 | - * @throws ClientResponseException if the status code of response is 4xx |
|
224 | - * @throws ServerResponseException if the status code of response is 5xx |
|
225 | - * |
|
226 | - * @return Elasticsearch|Promise |
|
227 | - */ |
|
228 | - public function putTransform(array $params = []) |
|
229 | - { |
|
230 | - $this->checkRequiredParameters(['transform_id', 'body'], $params); |
|
231 | - $url = '/_transform/' . $this->encode($params['transform_id']); |
|
232 | - $method = 'PUT'; |
|
233 | - $url = $this->addQueryString($url, $params, ['defer_validation', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
234 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
235 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
236 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.put_transform'); |
|
237 | - return $this->client->sendRequest($request); |
|
238 | - } |
|
239 | - /** |
|
240 | - * Resets an existing transform. |
|
241 | - * |
|
242 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/reset-transform.html |
|
243 | - * |
|
244 | - * @param array{ |
|
245 | - * transform_id: string, // (REQUIRED) The id of the transform to reset |
|
246 | - * force: boolean, // When `true`, the transform is reset regardless of its current state. The default value is `false`, meaning that the transform must be `stopped` before it can be reset. |
|
247 | - * timeout: time, // Controls the time to wait for the transform to reset |
|
248 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
249 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
250 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
251 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
252 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
253 | - * } $params |
|
254 | - * |
|
255 | - * @throws MissingParameterException if a required parameter is missing |
|
256 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
257 | - * @throws ClientResponseException if the status code of response is 4xx |
|
258 | - * @throws ServerResponseException if the status code of response is 5xx |
|
259 | - * |
|
260 | - * @return Elasticsearch|Promise |
|
261 | - */ |
|
262 | - public function resetTransform(array $params = []) |
|
263 | - { |
|
264 | - $this->checkRequiredParameters(['transform_id'], $params); |
|
265 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_reset'; |
|
266 | - $method = 'POST'; |
|
267 | - $url = $this->addQueryString($url, $params, ['force', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
268 | - $headers = ['Accept' => 'application/json']; |
|
269 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
270 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.reset_transform'); |
|
271 | - return $this->client->sendRequest($request); |
|
272 | - } |
|
273 | - /** |
|
274 | - * Schedules now a transform. |
|
275 | - * |
|
276 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/schedule-now-transform.html |
|
277 | - * |
|
278 | - * @param array{ |
|
279 | - * transform_id: string, // (REQUIRED) The id of the transform. |
|
280 | - * timeout: time, // Controls the time to wait for the scheduling to take place |
|
281 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
282 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
283 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
284 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
285 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
286 | - * } $params |
|
287 | - * |
|
288 | - * @throws MissingParameterException if a required parameter is missing |
|
289 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
290 | - * @throws ClientResponseException if the status code of response is 4xx |
|
291 | - * @throws ServerResponseException if the status code of response is 5xx |
|
292 | - * |
|
293 | - * @return Elasticsearch|Promise |
|
294 | - */ |
|
295 | - public function scheduleNowTransform(array $params = []) |
|
296 | - { |
|
297 | - $this->checkRequiredParameters(['transform_id'], $params); |
|
298 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_schedule_now'; |
|
299 | - $method = 'POST'; |
|
300 | - $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
301 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
302 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
303 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.schedule_now_transform'); |
|
304 | - return $this->client->sendRequest($request); |
|
305 | - } |
|
306 | - /** |
|
307 | - * Starts one or more transforms. |
|
308 | - * |
|
309 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/start-transform.html |
|
310 | - * |
|
311 | - * @param array{ |
|
312 | - * transform_id: string, // (REQUIRED) The id of the transform to start |
|
313 | - * from: string, // Restricts the set of transformed entities to those changed after this time |
|
314 | - * timeout: time, // Controls the time to wait for the transform to start |
|
315 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
316 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
317 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
318 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
319 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
320 | - * } $params |
|
321 | - * |
|
322 | - * @throws MissingParameterException if a required parameter is missing |
|
323 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
324 | - * @throws ClientResponseException if the status code of response is 4xx |
|
325 | - * @throws ServerResponseException if the status code of response is 5xx |
|
326 | - * |
|
327 | - * @return Elasticsearch|Promise |
|
328 | - */ |
|
329 | - public function startTransform(array $params = []) |
|
330 | - { |
|
331 | - $this->checkRequiredParameters(['transform_id'], $params); |
|
332 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_start'; |
|
333 | - $method = 'POST'; |
|
334 | - $url = $this->addQueryString($url, $params, ['from', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
335 | - $headers = ['Accept' => 'application/json']; |
|
336 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
337 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.start_transform'); |
|
338 | - return $this->client->sendRequest($request); |
|
339 | - } |
|
340 | - /** |
|
341 | - * Stops one or more transforms. |
|
342 | - * |
|
343 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/stop-transform.html |
|
344 | - * |
|
345 | - * @param array{ |
|
346 | - * transform_id: string, // (REQUIRED) The id of the transform to stop |
|
347 | - * force: boolean, // Whether to force stop a failed transform or not. Default to false |
|
348 | - * wait_for_completion: boolean, // Whether to wait for the transform to fully stop before returning or not. Default to false |
|
349 | - * timeout: time, // Controls the time to wait until the transform has stopped. Default to 30 seconds |
|
350 | - * allow_no_match: boolean, // Whether to ignore if a wildcard expression matches no transforms. (This includes `_all` string or when no transforms have been specified) |
|
351 | - * wait_for_checkpoint: boolean, // Whether to wait for the transform to reach a checkpoint before stopping. Default to false |
|
352 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
353 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
354 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
355 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
356 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
357 | - * } $params |
|
358 | - * |
|
359 | - * @throws MissingParameterException if a required parameter is missing |
|
360 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
361 | - * @throws ClientResponseException if the status code of response is 4xx |
|
362 | - * @throws ServerResponseException if the status code of response is 5xx |
|
363 | - * |
|
364 | - * @return Elasticsearch|Promise |
|
365 | - */ |
|
366 | - public function stopTransform(array $params = []) |
|
367 | - { |
|
368 | - $this->checkRequiredParameters(['transform_id'], $params); |
|
369 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_stop'; |
|
370 | - $method = 'POST'; |
|
371 | - $url = $this->addQueryString($url, $params, ['force', 'wait_for_completion', 'timeout', 'allow_no_match', 'wait_for_checkpoint', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
372 | - $headers = ['Accept' => 'application/json']; |
|
373 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
374 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.stop_transform'); |
|
375 | - return $this->client->sendRequest($request); |
|
376 | - } |
|
377 | - /** |
|
378 | - * Updates certain properties of a transform. |
|
379 | - * |
|
380 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/update-transform.html |
|
381 | - * |
|
382 | - * @param array{ |
|
383 | - * transform_id: string, // (REQUIRED) The id of the transform. |
|
384 | - * defer_validation: boolean, // If validations should be deferred until transform starts, defaults to false. |
|
385 | - * timeout: time, // Controls the time to wait for the update |
|
386 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
387 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
388 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
389 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
390 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
391 | - * body: array, // (REQUIRED) The update transform definition |
|
392 | - * } $params |
|
393 | - * |
|
394 | - * @throws MissingParameterException if a required parameter is missing |
|
395 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
396 | - * @throws ClientResponseException if the status code of response is 4xx |
|
397 | - * @throws ServerResponseException if the status code of response is 5xx |
|
398 | - * |
|
399 | - * @return Elasticsearch|Promise |
|
400 | - */ |
|
401 | - public function updateTransform(array $params = []) |
|
402 | - { |
|
403 | - $this->checkRequiredParameters(['transform_id', 'body'], $params); |
|
404 | - $url = '/_transform/' . $this->encode($params['transform_id']) . '/_update'; |
|
405 | - $method = 'POST'; |
|
406 | - $url = $this->addQueryString($url, $params, ['defer_validation', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
407 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
408 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
409 | - $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.update_transform'); |
|
410 | - return $this->client->sendRequest($request); |
|
411 | - } |
|
412 | - /** |
|
413 | - * Upgrades all transforms. |
|
414 | - * |
|
415 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/upgrade-transforms.html |
|
416 | - * |
|
417 | - * @param array{ |
|
418 | - * dry_run: boolean, // Whether to only check for updates but don't execute |
|
419 | - * timeout: time, // Controls the time to wait for the upgrade |
|
420 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
421 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
422 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
423 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
424 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
425 | - * } $params |
|
426 | - * |
|
427 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
428 | - * @throws ClientResponseException if the status code of response is 4xx |
|
429 | - * @throws ServerResponseException if the status code of response is 5xx |
|
430 | - * |
|
431 | - * @return Elasticsearch|Promise |
|
432 | - */ |
|
433 | - public function upgradeTransforms(array $params = []) |
|
434 | - { |
|
435 | - $url = '/_transform/_upgrade'; |
|
436 | - $method = 'POST'; |
|
437 | - $url = $this->addQueryString($url, $params, ['dry_run', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
438 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
439 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
440 | - $request = $this->addOtelAttributes($params, [], $request, 'transform.upgrade_transforms'); |
|
441 | - return $this->client->sendRequest($request); |
|
442 | - } |
|
28 | + /** |
|
29 | + * Deletes an existing transform. |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/delete-transform.html |
|
32 | + * |
|
33 | + * @param array{ |
|
34 | + * transform_id: string, // (REQUIRED) The id of the transform to delete |
|
35 | + * force: boolean, // When `true`, the transform is deleted regardless of its current state. The default value is `false`, meaning that the transform must be `stopped` before it can be deleted. |
|
36 | + * delete_dest_index: boolean, // When `true`, the destination index is deleted together with the transform. The default value is `false`, meaning that the destination index will not be deleted. |
|
37 | + * timeout: time, // Controls the time to wait for the transform deletion |
|
38 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
39 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
40 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
41 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
42 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
43 | + * } $params |
|
44 | + * |
|
45 | + * @throws MissingParameterException if a required parameter is missing |
|
46 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
47 | + * @throws ClientResponseException if the status code of response is 4xx |
|
48 | + * @throws ServerResponseException if the status code of response is 5xx |
|
49 | + * |
|
50 | + * @return Elasticsearch|Promise |
|
51 | + */ |
|
52 | + public function deleteTransform(array $params = []) |
|
53 | + { |
|
54 | + $this->checkRequiredParameters(['transform_id'], $params); |
|
55 | + $url = '/_transform/' . $this->encode($params['transform_id']); |
|
56 | + $method = 'DELETE'; |
|
57 | + $url = $this->addQueryString($url, $params, ['force', 'delete_dest_index', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
58 | + $headers = ['Accept' => 'application/json']; |
|
59 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
60 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.delete_transform'); |
|
61 | + return $this->client->sendRequest($request); |
|
62 | + } |
|
63 | + /** |
|
64 | + * Retrieves transform usage information for transform nodes. |
|
65 | + * |
|
66 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/get-transform-node-stats.html |
|
67 | + * |
|
68 | + * @param array{ |
|
69 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
70 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
71 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
72 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
73 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
74 | + * } $params |
|
75 | + * |
|
76 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
77 | + * @throws ClientResponseException if the status code of response is 4xx |
|
78 | + * @throws ServerResponseException if the status code of response is 5xx |
|
79 | + * |
|
80 | + * @return Elasticsearch|Promise |
|
81 | + */ |
|
82 | + public function getNodeStats(array $params = []) |
|
83 | + { |
|
84 | + $url = '/_transform/_node_stats'; |
|
85 | + $method = 'GET'; |
|
86 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
87 | + $headers = ['Accept' => 'application/json']; |
|
88 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
89 | + $request = $this->addOtelAttributes($params, [], $request, 'transform.get_node_stats'); |
|
90 | + return $this->client->sendRequest($request); |
|
91 | + } |
|
92 | + /** |
|
93 | + * Retrieves configuration information for transforms. |
|
94 | + * |
|
95 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/get-transform.html |
|
96 | + * |
|
97 | + * @param array{ |
|
98 | + * transform_id: string, // The id or comma delimited list of id expressions of the transforms to get, '_all' or '*' implies get all transforms |
|
99 | + * from: int, // skips a number of transform configs, defaults to 0 |
|
100 | + * size: int, // specifies a max number of transforms to get, defaults to 100 |
|
101 | + * allow_no_match: boolean, // Whether to ignore if a wildcard expression matches no transforms. (This includes `_all` string or when no transforms have been specified) |
|
102 | + * exclude_generated: boolean, // Omits fields that are illegal to set on transform PUT |
|
103 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
104 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
105 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
106 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
107 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
108 | + * } $params |
|
109 | + * |
|
110 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
111 | + * @throws ClientResponseException if the status code of response is 4xx |
|
112 | + * @throws ServerResponseException if the status code of response is 5xx |
|
113 | + * |
|
114 | + * @return Elasticsearch|Promise |
|
115 | + */ |
|
116 | + public function getTransform(array $params = []) |
|
117 | + { |
|
118 | + if (isset($params['transform_id'])) { |
|
119 | + $url = '/_transform/' . $this->encode($params['transform_id']); |
|
120 | + $method = 'GET'; |
|
121 | + } else { |
|
122 | + $url = '/_transform'; |
|
123 | + $method = 'GET'; |
|
124 | + } |
|
125 | + $url = $this->addQueryString($url, $params, ['from', 'size', 'allow_no_match', 'exclude_generated', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
126 | + $headers = ['Accept' => 'application/json']; |
|
127 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
128 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.get_transform'); |
|
129 | + return $this->client->sendRequest($request); |
|
130 | + } |
|
131 | + /** |
|
132 | + * Retrieves usage information for transforms. |
|
133 | + * |
|
134 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/get-transform-stats.html |
|
135 | + * |
|
136 | + * @param array{ |
|
137 | + * transform_id: string, // (REQUIRED) The id of the transform for which to get stats. '_all' or '*' implies all transforms |
|
138 | + * from: number, // skips a number of transform stats, defaults to 0 |
|
139 | + * size: number, // specifies a max number of transform stats to get, defaults to 100 |
|
140 | + * timeout: time, // Controls the time to wait for the stats |
|
141 | + * allow_no_match: boolean, // Whether to ignore if a wildcard expression matches no transforms. (This includes `_all` string or when no transforms have been specified) |
|
142 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
143 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
144 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
145 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
146 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
147 | + * } $params |
|
148 | + * |
|
149 | + * @throws MissingParameterException if a required parameter is missing |
|
150 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
151 | + * @throws ClientResponseException if the status code of response is 4xx |
|
152 | + * @throws ServerResponseException if the status code of response is 5xx |
|
153 | + * |
|
154 | + * @return Elasticsearch|Promise |
|
155 | + */ |
|
156 | + public function getTransformStats(array $params = []) |
|
157 | + { |
|
158 | + $this->checkRequiredParameters(['transform_id'], $params); |
|
159 | + $url = '/_transform/' . $this->encode($params['transform_id']) . '/_stats'; |
|
160 | + $method = 'GET'; |
|
161 | + $url = $this->addQueryString($url, $params, ['from', 'size', 'timeout', 'allow_no_match', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
162 | + $headers = ['Accept' => 'application/json']; |
|
163 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
164 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.get_transform_stats'); |
|
165 | + return $this->client->sendRequest($request); |
|
166 | + } |
|
167 | + /** |
|
168 | + * Previews a transform. |
|
169 | + * |
|
170 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/preview-transform.html |
|
171 | + * |
|
172 | + * @param array{ |
|
173 | + * transform_id: string, // The id of the transform to preview. |
|
174 | + * timeout: time, // Controls the time to wait for the preview |
|
175 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
176 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
177 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
178 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
179 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
180 | + * body: array, // The definition for the transform to preview |
|
181 | + * } $params |
|
182 | + * |
|
183 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
184 | + * @throws ClientResponseException if the status code of response is 4xx |
|
185 | + * @throws ServerResponseException if the status code of response is 5xx |
|
186 | + * |
|
187 | + * @return Elasticsearch|Promise |
|
188 | + */ |
|
189 | + public function previewTransform(array $params = []) |
|
190 | + { |
|
191 | + if (isset($params['transform_id'])) { |
|
192 | + $url = '/_transform/' . $this->encode($params['transform_id']) . '/_preview'; |
|
193 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
194 | + } else { |
|
195 | + $url = '/_transform/_preview'; |
|
196 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
197 | + } |
|
198 | + $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
199 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
200 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
201 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.preview_transform'); |
|
202 | + return $this->client->sendRequest($request); |
|
203 | + } |
|
204 | + /** |
|
205 | + * Instantiates a transform. |
|
206 | + * |
|
207 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/put-transform.html |
|
208 | + * |
|
209 | + * @param array{ |
|
210 | + * transform_id: string, // (REQUIRED) The id of the new transform. |
|
211 | + * defer_validation: boolean, // If validations should be deferred until transform starts, defaults to false. |
|
212 | + * timeout: time, // Controls the time to wait for the transform to start |
|
213 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
214 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
215 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
216 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
217 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
218 | + * body: array, // (REQUIRED) The transform definition |
|
219 | + * } $params |
|
220 | + * |
|
221 | + * @throws MissingParameterException if a required parameter is missing |
|
222 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
223 | + * @throws ClientResponseException if the status code of response is 4xx |
|
224 | + * @throws ServerResponseException if the status code of response is 5xx |
|
225 | + * |
|
226 | + * @return Elasticsearch|Promise |
|
227 | + */ |
|
228 | + public function putTransform(array $params = []) |
|
229 | + { |
|
230 | + $this->checkRequiredParameters(['transform_id', 'body'], $params); |
|
231 | + $url = '/_transform/' . $this->encode($params['transform_id']); |
|
232 | + $method = 'PUT'; |
|
233 | + $url = $this->addQueryString($url, $params, ['defer_validation', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
234 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
235 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
236 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.put_transform'); |
|
237 | + return $this->client->sendRequest($request); |
|
238 | + } |
|
239 | + /** |
|
240 | + * Resets an existing transform. |
|
241 | + * |
|
242 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/reset-transform.html |
|
243 | + * |
|
244 | + * @param array{ |
|
245 | + * transform_id: string, // (REQUIRED) The id of the transform to reset |
|
246 | + * force: boolean, // When `true`, the transform is reset regardless of its current state. The default value is `false`, meaning that the transform must be `stopped` before it can be reset. |
|
247 | + * timeout: time, // Controls the time to wait for the transform to reset |
|
248 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
249 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
250 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
251 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
252 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
253 | + * } $params |
|
254 | + * |
|
255 | + * @throws MissingParameterException if a required parameter is missing |
|
256 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
257 | + * @throws ClientResponseException if the status code of response is 4xx |
|
258 | + * @throws ServerResponseException if the status code of response is 5xx |
|
259 | + * |
|
260 | + * @return Elasticsearch|Promise |
|
261 | + */ |
|
262 | + public function resetTransform(array $params = []) |
|
263 | + { |
|
264 | + $this->checkRequiredParameters(['transform_id'], $params); |
|
265 | + $url = '/_transform/' . $this->encode($params['transform_id']) . '/_reset'; |
|
266 | + $method = 'POST'; |
|
267 | + $url = $this->addQueryString($url, $params, ['force', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
268 | + $headers = ['Accept' => 'application/json']; |
|
269 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
270 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.reset_transform'); |
|
271 | + return $this->client->sendRequest($request); |
|
272 | + } |
|
273 | + /** |
|
274 | + * Schedules now a transform. |
|
275 | + * |
|
276 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/schedule-now-transform.html |
|
277 | + * |
|
278 | + * @param array{ |
|
279 | + * transform_id: string, // (REQUIRED) The id of the transform. |
|
280 | + * timeout: time, // Controls the time to wait for the scheduling to take place |
|
281 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
282 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
283 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
284 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
285 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
286 | + * } $params |
|
287 | + * |
|
288 | + * @throws MissingParameterException if a required parameter is missing |
|
289 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
290 | + * @throws ClientResponseException if the status code of response is 4xx |
|
291 | + * @throws ServerResponseException if the status code of response is 5xx |
|
292 | + * |
|
293 | + * @return Elasticsearch|Promise |
|
294 | + */ |
|
295 | + public function scheduleNowTransform(array $params = []) |
|
296 | + { |
|
297 | + $this->checkRequiredParameters(['transform_id'], $params); |
|
298 | + $url = '/_transform/' . $this->encode($params['transform_id']) . '/_schedule_now'; |
|
299 | + $method = 'POST'; |
|
300 | + $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
301 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
302 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
303 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.schedule_now_transform'); |
|
304 | + return $this->client->sendRequest($request); |
|
305 | + } |
|
306 | + /** |
|
307 | + * Starts one or more transforms. |
|
308 | + * |
|
309 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/start-transform.html |
|
310 | + * |
|
311 | + * @param array{ |
|
312 | + * transform_id: string, // (REQUIRED) The id of the transform to start |
|
313 | + * from: string, // Restricts the set of transformed entities to those changed after this time |
|
314 | + * timeout: time, // Controls the time to wait for the transform to start |
|
315 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
316 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
317 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
318 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
319 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
320 | + * } $params |
|
321 | + * |
|
322 | + * @throws MissingParameterException if a required parameter is missing |
|
323 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
324 | + * @throws ClientResponseException if the status code of response is 4xx |
|
325 | + * @throws ServerResponseException if the status code of response is 5xx |
|
326 | + * |
|
327 | + * @return Elasticsearch|Promise |
|
328 | + */ |
|
329 | + public function startTransform(array $params = []) |
|
330 | + { |
|
331 | + $this->checkRequiredParameters(['transform_id'], $params); |
|
332 | + $url = '/_transform/' . $this->encode($params['transform_id']) . '/_start'; |
|
333 | + $method = 'POST'; |
|
334 | + $url = $this->addQueryString($url, $params, ['from', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
335 | + $headers = ['Accept' => 'application/json']; |
|
336 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
337 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.start_transform'); |
|
338 | + return $this->client->sendRequest($request); |
|
339 | + } |
|
340 | + /** |
|
341 | + * Stops one or more transforms. |
|
342 | + * |
|
343 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/stop-transform.html |
|
344 | + * |
|
345 | + * @param array{ |
|
346 | + * transform_id: string, // (REQUIRED) The id of the transform to stop |
|
347 | + * force: boolean, // Whether to force stop a failed transform or not. Default to false |
|
348 | + * wait_for_completion: boolean, // Whether to wait for the transform to fully stop before returning or not. Default to false |
|
349 | + * timeout: time, // Controls the time to wait until the transform has stopped. Default to 30 seconds |
|
350 | + * allow_no_match: boolean, // Whether to ignore if a wildcard expression matches no transforms. (This includes `_all` string or when no transforms have been specified) |
|
351 | + * wait_for_checkpoint: boolean, // Whether to wait for the transform to reach a checkpoint before stopping. Default to false |
|
352 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
353 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
354 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
355 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
356 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
357 | + * } $params |
|
358 | + * |
|
359 | + * @throws MissingParameterException if a required parameter is missing |
|
360 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
361 | + * @throws ClientResponseException if the status code of response is 4xx |
|
362 | + * @throws ServerResponseException if the status code of response is 5xx |
|
363 | + * |
|
364 | + * @return Elasticsearch|Promise |
|
365 | + */ |
|
366 | + public function stopTransform(array $params = []) |
|
367 | + { |
|
368 | + $this->checkRequiredParameters(['transform_id'], $params); |
|
369 | + $url = '/_transform/' . $this->encode($params['transform_id']) . '/_stop'; |
|
370 | + $method = 'POST'; |
|
371 | + $url = $this->addQueryString($url, $params, ['force', 'wait_for_completion', 'timeout', 'allow_no_match', 'wait_for_checkpoint', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
372 | + $headers = ['Accept' => 'application/json']; |
|
373 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
374 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.stop_transform'); |
|
375 | + return $this->client->sendRequest($request); |
|
376 | + } |
|
377 | + /** |
|
378 | + * Updates certain properties of a transform. |
|
379 | + * |
|
380 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/update-transform.html |
|
381 | + * |
|
382 | + * @param array{ |
|
383 | + * transform_id: string, // (REQUIRED) The id of the transform. |
|
384 | + * defer_validation: boolean, // If validations should be deferred until transform starts, defaults to false. |
|
385 | + * timeout: time, // Controls the time to wait for the update |
|
386 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
387 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
388 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
389 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
390 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
391 | + * body: array, // (REQUIRED) The update transform definition |
|
392 | + * } $params |
|
393 | + * |
|
394 | + * @throws MissingParameterException if a required parameter is missing |
|
395 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
396 | + * @throws ClientResponseException if the status code of response is 4xx |
|
397 | + * @throws ServerResponseException if the status code of response is 5xx |
|
398 | + * |
|
399 | + * @return Elasticsearch|Promise |
|
400 | + */ |
|
401 | + public function updateTransform(array $params = []) |
|
402 | + { |
|
403 | + $this->checkRequiredParameters(['transform_id', 'body'], $params); |
|
404 | + $url = '/_transform/' . $this->encode($params['transform_id']) . '/_update'; |
|
405 | + $method = 'POST'; |
|
406 | + $url = $this->addQueryString($url, $params, ['defer_validation', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
407 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
408 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
409 | + $request = $this->addOtelAttributes($params, ['transform_id'], $request, 'transform.update_transform'); |
|
410 | + return $this->client->sendRequest($request); |
|
411 | + } |
|
412 | + /** |
|
413 | + * Upgrades all transforms. |
|
414 | + * |
|
415 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/upgrade-transforms.html |
|
416 | + * |
|
417 | + * @param array{ |
|
418 | + * dry_run: boolean, // Whether to only check for updates but don't execute |
|
419 | + * timeout: time, // Controls the time to wait for the upgrade |
|
420 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
421 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
422 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
423 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
424 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
425 | + * } $params |
|
426 | + * |
|
427 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
428 | + * @throws ClientResponseException if the status code of response is 4xx |
|
429 | + * @throws ServerResponseException if the status code of response is 5xx |
|
430 | + * |
|
431 | + * @return Elasticsearch|Promise |
|
432 | + */ |
|
433 | + public function upgradeTransforms(array $params = []) |
|
434 | + { |
|
435 | + $url = '/_transform/_upgrade'; |
|
436 | + $method = 'POST'; |
|
437 | + $url = $this->addQueryString($url, $params, ['dry_run', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
438 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
439 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
440 | + $request = $this->addOtelAttributes($params, [], $request, 'transform.upgrade_transforms'); |
|
441 | + return $this->client->sendRequest($request); |
|
442 | + } |
|
443 | 443 | } |
@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -51,10 +51,10 @@ discard block |
||
51 | 51 | { |
52 | 52 | $this->checkRequiredParameters(['watch_id'], $params); |
53 | 53 | if (isset($params['action_id'])) { |
54 | - $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_ack/' . $this->encode($params['action_id']); |
|
54 | + $url = '/_watcher/watch/'.$this->encode($params['watch_id']).'/_ack/'.$this->encode($params['action_id']); |
|
55 | 55 | $method = 'PUT'; |
56 | 56 | } else { |
57 | - $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_ack'; |
|
57 | + $url = '/_watcher/watch/'.$this->encode($params['watch_id']).'/_ack'; |
|
58 | 58 | $method = 'PUT'; |
59 | 59 | } |
60 | 60 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
@@ -85,7 +85,7 @@ discard block |
||
85 | 85 | public function activateWatch(array $params = []) |
86 | 86 | { |
87 | 87 | $this->checkRequiredParameters(['watch_id'], $params); |
88 | - $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_activate'; |
|
88 | + $url = '/_watcher/watch/'.$this->encode($params['watch_id']).'/_activate'; |
|
89 | 89 | $method = 'PUT'; |
90 | 90 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
91 | 91 | $headers = ['Accept' => 'application/json']; |
@@ -115,7 +115,7 @@ discard block |
||
115 | 115 | public function deactivateWatch(array $params = []) |
116 | 116 | { |
117 | 117 | $this->checkRequiredParameters(['watch_id'], $params); |
118 | - $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_deactivate'; |
|
118 | + $url = '/_watcher/watch/'.$this->encode($params['watch_id']).'/_deactivate'; |
|
119 | 119 | $method = 'PUT'; |
120 | 120 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
121 | 121 | $headers = ['Accept' => 'application/json']; |
@@ -145,7 +145,7 @@ discard block |
||
145 | 145 | public function deleteWatch(array $params = []) |
146 | 146 | { |
147 | 147 | $this->checkRequiredParameters(['id'], $params); |
148 | - $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
148 | + $url = '/_watcher/watch/'.$this->encode($params['id']); |
|
149 | 149 | $method = 'DELETE'; |
150 | 150 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
151 | 151 | $headers = ['Accept' => 'application/json']; |
@@ -176,7 +176,7 @@ discard block |
||
176 | 176 | public function executeWatch(array $params = []) |
177 | 177 | { |
178 | 178 | if (isset($params['id'])) { |
179 | - $url = '/_watcher/watch/' . $this->encode($params['id']) . '/_execute'; |
|
179 | + $url = '/_watcher/watch/'.$this->encode($params['id']).'/_execute'; |
|
180 | 180 | $method = 'PUT'; |
181 | 181 | } else { |
182 | 182 | $url = '/_watcher/watch/_execute'; |
@@ -237,7 +237,7 @@ discard block |
||
237 | 237 | public function getWatch(array $params = []) |
238 | 238 | { |
239 | 239 | $this->checkRequiredParameters(['id'], $params); |
240 | - $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
240 | + $url = '/_watcher/watch/'.$this->encode($params['id']); |
|
241 | 241 | $method = 'GET'; |
242 | 242 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
243 | 243 | $headers = ['Accept' => 'application/json']; |
@@ -272,7 +272,7 @@ discard block |
||
272 | 272 | public function putWatch(array $params = []) |
273 | 273 | { |
274 | 274 | $this->checkRequiredParameters(['id'], $params); |
275 | - $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
275 | + $url = '/_watcher/watch/'.$this->encode($params['id']); |
|
276 | 276 | $method = 'PUT'; |
277 | 277 | $url = $this->addQueryString($url, $params, ['active', 'version', 'if_seq_no', 'if_primary_term', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
278 | 278 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -357,7 +357,7 @@ discard block |
||
357 | 357 | public function stats(array $params = []) |
358 | 358 | { |
359 | 359 | if (isset($params['metric'])) { |
360 | - $url = '/_watcher/stats/' . $this->encode($params['metric']); |
|
360 | + $url = '/_watcher/stats/'.$this->encode($params['metric']); |
|
361 | 361 | $method = 'GET'; |
362 | 362 | } else { |
363 | 363 | $url = '/_watcher/stats'; |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class Watcher extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class Watcher extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Acknowledges a watch, manually throttling the execution of the watch's actions. |
30 | 29 | * |
@@ -25,433 +25,433 @@ |
||
25 | 25 | */ |
26 | 26 | class Watcher extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Acknowledges a watch, manually throttling the execution of the watch's actions. |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-ack-watch.html |
|
32 | - * |
|
33 | - * @param array{ |
|
34 | - * watch_id: string, // (REQUIRED) Watch ID |
|
35 | - * action_id: list, // A comma-separated list of the action ids to be acked |
|
36 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
37 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
38 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
39 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
40 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
41 | - * } $params |
|
42 | - * |
|
43 | - * @throws MissingParameterException if a required parameter is missing |
|
44 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
45 | - * @throws ClientResponseException if the status code of response is 4xx |
|
46 | - * @throws ServerResponseException if the status code of response is 5xx |
|
47 | - * |
|
48 | - * @return Elasticsearch|Promise |
|
49 | - */ |
|
50 | - public function ackWatch(array $params = []) |
|
51 | - { |
|
52 | - $this->checkRequiredParameters(['watch_id'], $params); |
|
53 | - if (isset($params['action_id'])) { |
|
54 | - $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_ack/' . $this->encode($params['action_id']); |
|
55 | - $method = 'PUT'; |
|
56 | - } else { |
|
57 | - $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_ack'; |
|
58 | - $method = 'PUT'; |
|
59 | - } |
|
60 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
61 | - $headers = ['Accept' => 'application/json']; |
|
62 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
63 | - $request = $this->addOtelAttributes($params, ['watch_id', 'action_id'], $request, 'watcher.ack_watch'); |
|
64 | - return $this->client->sendRequest($request); |
|
65 | - } |
|
66 | - /** |
|
67 | - * Activates a currently inactive watch. |
|
68 | - * |
|
69 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-activate-watch.html |
|
70 | - * |
|
71 | - * @param array{ |
|
72 | - * watch_id: string, // (REQUIRED) Watch ID |
|
73 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
74 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
75 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
76 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
77 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
78 | - * } $params |
|
79 | - * |
|
80 | - * @throws MissingParameterException if a required parameter is missing |
|
81 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
82 | - * @throws ClientResponseException if the status code of response is 4xx |
|
83 | - * @throws ServerResponseException if the status code of response is 5xx |
|
84 | - * |
|
85 | - * @return Elasticsearch|Promise |
|
86 | - */ |
|
87 | - public function activateWatch(array $params = []) |
|
88 | - { |
|
89 | - $this->checkRequiredParameters(['watch_id'], $params); |
|
90 | - $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_activate'; |
|
91 | - $method = 'PUT'; |
|
92 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
93 | - $headers = ['Accept' => 'application/json']; |
|
94 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
95 | - $request = $this->addOtelAttributes($params, ['watch_id'], $request, 'watcher.activate_watch'); |
|
96 | - return $this->client->sendRequest($request); |
|
97 | - } |
|
98 | - /** |
|
99 | - * Deactivates a currently active watch. |
|
100 | - * |
|
101 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-deactivate-watch.html |
|
102 | - * |
|
103 | - * @param array{ |
|
104 | - * watch_id: string, // (REQUIRED) Watch ID |
|
105 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
106 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
107 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
108 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
109 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
110 | - * } $params |
|
111 | - * |
|
112 | - * @throws MissingParameterException if a required parameter is missing |
|
113 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
114 | - * @throws ClientResponseException if the status code of response is 4xx |
|
115 | - * @throws ServerResponseException if the status code of response is 5xx |
|
116 | - * |
|
117 | - * @return Elasticsearch|Promise |
|
118 | - */ |
|
119 | - public function deactivateWatch(array $params = []) |
|
120 | - { |
|
121 | - $this->checkRequiredParameters(['watch_id'], $params); |
|
122 | - $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_deactivate'; |
|
123 | - $method = 'PUT'; |
|
124 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
125 | - $headers = ['Accept' => 'application/json']; |
|
126 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
127 | - $request = $this->addOtelAttributes($params, ['watch_id'], $request, 'watcher.deactivate_watch'); |
|
128 | - return $this->client->sendRequest($request); |
|
129 | - } |
|
130 | - /** |
|
131 | - * Removes a watch from Watcher. |
|
132 | - * |
|
133 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-delete-watch.html |
|
134 | - * |
|
135 | - * @param array{ |
|
136 | - * id: string, // (REQUIRED) Watch ID |
|
137 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
138 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
139 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
140 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
141 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
142 | - * } $params |
|
143 | - * |
|
144 | - * @throws MissingParameterException if a required parameter is missing |
|
145 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
146 | - * @throws ClientResponseException if the status code of response is 4xx |
|
147 | - * @throws ServerResponseException if the status code of response is 5xx |
|
148 | - * |
|
149 | - * @return Elasticsearch|Promise |
|
150 | - */ |
|
151 | - public function deleteWatch(array $params = []) |
|
152 | - { |
|
153 | - $this->checkRequiredParameters(['id'], $params); |
|
154 | - $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
155 | - $method = 'DELETE'; |
|
156 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
157 | - $headers = ['Accept' => 'application/json']; |
|
158 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
159 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'watcher.delete_watch'); |
|
160 | - return $this->client->sendRequest($request); |
|
161 | - } |
|
162 | - /** |
|
163 | - * Forces the execution of a stored watch. |
|
164 | - * |
|
165 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-execute-watch.html |
|
166 | - * |
|
167 | - * @param array{ |
|
168 | - * id: string, // Watch ID |
|
169 | - * debug: boolean, // indicates whether the watch should execute in debug mode |
|
170 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
171 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
172 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
173 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
174 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
175 | - * body: array, // Execution control |
|
176 | - * } $params |
|
177 | - * |
|
178 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
179 | - * @throws ClientResponseException if the status code of response is 4xx |
|
180 | - * @throws ServerResponseException if the status code of response is 5xx |
|
181 | - * |
|
182 | - * @return Elasticsearch|Promise |
|
183 | - */ |
|
184 | - public function executeWatch(array $params = []) |
|
185 | - { |
|
186 | - if (isset($params['id'])) { |
|
187 | - $url = '/_watcher/watch/' . $this->encode($params['id']) . '/_execute'; |
|
188 | - $method = 'PUT'; |
|
189 | - } else { |
|
190 | - $url = '/_watcher/watch/_execute'; |
|
191 | - $method = 'PUT'; |
|
192 | - } |
|
193 | - $url = $this->addQueryString($url, $params, ['debug', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
194 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
195 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
196 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'watcher.execute_watch'); |
|
197 | - return $this->client->sendRequest($request); |
|
198 | - } |
|
199 | - /** |
|
200 | - * Retrieve settings for the watcher system index |
|
201 | - * |
|
202 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-get-settings.html |
|
203 | - * |
|
204 | - * @param array{ |
|
205 | - * master_timeout: time, // Specify timeout for connection to master |
|
206 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
207 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
208 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
209 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
210 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
211 | - * } $params |
|
212 | - * |
|
213 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
214 | - * @throws ClientResponseException if the status code of response is 4xx |
|
215 | - * @throws ServerResponseException if the status code of response is 5xx |
|
216 | - * |
|
217 | - * @return Elasticsearch|Promise |
|
218 | - */ |
|
219 | - public function getSettings(array $params = []) |
|
220 | - { |
|
221 | - $url = '/_watcher/settings'; |
|
222 | - $method = 'GET'; |
|
223 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
224 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
225 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
226 | - $request = $this->addOtelAttributes($params, [], $request, 'watcher.get_settings'); |
|
227 | - return $this->client->sendRequest($request); |
|
228 | - } |
|
229 | - /** |
|
230 | - * Retrieves a watch by its ID. |
|
231 | - * |
|
232 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-get-watch.html |
|
233 | - * |
|
234 | - * @param array{ |
|
235 | - * id: string, // (REQUIRED) Watch ID |
|
236 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
237 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
238 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
239 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
240 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
241 | - * } $params |
|
242 | - * |
|
243 | - * @throws MissingParameterException if a required parameter is missing |
|
244 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
245 | - * @throws ClientResponseException if the status code of response is 4xx |
|
246 | - * @throws ServerResponseException if the status code of response is 5xx |
|
247 | - * |
|
248 | - * @return Elasticsearch|Promise |
|
249 | - */ |
|
250 | - public function getWatch(array $params = []) |
|
251 | - { |
|
252 | - $this->checkRequiredParameters(['id'], $params); |
|
253 | - $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
254 | - $method = 'GET'; |
|
255 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
256 | - $headers = ['Accept' => 'application/json']; |
|
257 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
258 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'watcher.get_watch'); |
|
259 | - return $this->client->sendRequest($request); |
|
260 | - } |
|
261 | - /** |
|
262 | - * Creates a new watch, or updates an existing one. |
|
263 | - * |
|
264 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-put-watch.html |
|
265 | - * |
|
266 | - * @param array{ |
|
267 | - * id: string, // (REQUIRED) Watch ID |
|
268 | - * active: boolean, // Specify whether the watch is in/active by default |
|
269 | - * version: number, // Explicit version number for concurrency control |
|
270 | - * if_seq_no: number, // only update the watch if the last operation that has changed the watch has the specified sequence number |
|
271 | - * if_primary_term: number, // only update the watch if the last operation that has changed the watch has the specified primary term |
|
272 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
273 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
274 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
275 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
276 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
277 | - * body: array, // The watch |
|
278 | - * } $params |
|
279 | - * |
|
280 | - * @throws MissingParameterException if a required parameter is missing |
|
281 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
282 | - * @throws ClientResponseException if the status code of response is 4xx |
|
283 | - * @throws ServerResponseException if the status code of response is 5xx |
|
284 | - * |
|
285 | - * @return Elasticsearch|Promise |
|
286 | - */ |
|
287 | - public function putWatch(array $params = []) |
|
288 | - { |
|
289 | - $this->checkRequiredParameters(['id'], $params); |
|
290 | - $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
291 | - $method = 'PUT'; |
|
292 | - $url = $this->addQueryString($url, $params, ['active', 'version', 'if_seq_no', 'if_primary_term', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
293 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
294 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
295 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'watcher.put_watch'); |
|
296 | - return $this->client->sendRequest($request); |
|
297 | - } |
|
298 | - /** |
|
299 | - * Retrieves stored watches. |
|
300 | - * |
|
301 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-query-watches.html |
|
302 | - * |
|
303 | - * @param array{ |
|
304 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
305 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
306 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
307 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
308 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
309 | - * body: array, // From, size, query, sort and search_after |
|
310 | - * } $params |
|
311 | - * |
|
312 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
313 | - * @throws ClientResponseException if the status code of response is 4xx |
|
314 | - * @throws ServerResponseException if the status code of response is 5xx |
|
315 | - * |
|
316 | - * @return Elasticsearch|Promise |
|
317 | - */ |
|
318 | - public function queryWatches(array $params = []) |
|
319 | - { |
|
320 | - $url = '/_watcher/_query/watches'; |
|
321 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
322 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
323 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
324 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
325 | - $request = $this->addOtelAttributes($params, [], $request, 'watcher.query_watches'); |
|
326 | - return $this->client->sendRequest($request); |
|
327 | - } |
|
328 | - /** |
|
329 | - * Starts Watcher if it is not already running. |
|
330 | - * |
|
331 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-start.html |
|
332 | - * |
|
333 | - * @param array{ |
|
334 | - * master_timeout: time, // Specify timeout for connection to master |
|
335 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
336 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
337 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
338 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
339 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
340 | - * } $params |
|
341 | - * |
|
342 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
343 | - * @throws ClientResponseException if the status code of response is 4xx |
|
344 | - * @throws ServerResponseException if the status code of response is 5xx |
|
345 | - * |
|
346 | - * @return Elasticsearch|Promise |
|
347 | - */ |
|
348 | - public function start(array $params = []) |
|
349 | - { |
|
350 | - $url = '/_watcher/_start'; |
|
351 | - $method = 'POST'; |
|
352 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
353 | - $headers = ['Accept' => 'application/json']; |
|
354 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
355 | - $request = $this->addOtelAttributes($params, [], $request, 'watcher.start'); |
|
356 | - return $this->client->sendRequest($request); |
|
357 | - } |
|
358 | - /** |
|
359 | - * Retrieves the current Watcher metrics. |
|
360 | - * |
|
361 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-stats.html |
|
362 | - * |
|
363 | - * @param array{ |
|
364 | - * metric: list, // Controls what additional stat metrics should be include in the response |
|
365 | - * emit_stacktraces: boolean, // Emits stack traces of currently running watches |
|
366 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
367 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
368 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
369 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
370 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
371 | - * } $params |
|
372 | - * |
|
373 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
374 | - * @throws ClientResponseException if the status code of response is 4xx |
|
375 | - * @throws ServerResponseException if the status code of response is 5xx |
|
376 | - * |
|
377 | - * @return Elasticsearch|Promise |
|
378 | - */ |
|
379 | - public function stats(array $params = []) |
|
380 | - { |
|
381 | - if (isset($params['metric'])) { |
|
382 | - $url = '/_watcher/stats/' . $this->encode($params['metric']); |
|
383 | - $method = 'GET'; |
|
384 | - } else { |
|
385 | - $url = '/_watcher/stats'; |
|
386 | - $method = 'GET'; |
|
387 | - } |
|
388 | - $url = $this->addQueryString($url, $params, ['emit_stacktraces', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
389 | - $headers = ['Accept' => 'application/json']; |
|
390 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
391 | - $request = $this->addOtelAttributes($params, ['metric'], $request, 'watcher.stats'); |
|
392 | - return $this->client->sendRequest($request); |
|
393 | - } |
|
394 | - /** |
|
395 | - * Stops Watcher if it is running. |
|
396 | - * |
|
397 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-stop.html |
|
398 | - * |
|
399 | - * @param array{ |
|
400 | - * master_timeout: time, // Specify timeout for connection to master |
|
401 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
402 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
403 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
404 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
405 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
406 | - * } $params |
|
407 | - * |
|
408 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
409 | - * @throws ClientResponseException if the status code of response is 4xx |
|
410 | - * @throws ServerResponseException if the status code of response is 5xx |
|
411 | - * |
|
412 | - * @return Elasticsearch|Promise |
|
413 | - */ |
|
414 | - public function stop(array $params = []) |
|
415 | - { |
|
416 | - $url = '/_watcher/_stop'; |
|
417 | - $method = 'POST'; |
|
418 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
419 | - $headers = ['Accept' => 'application/json']; |
|
420 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
421 | - $request = $this->addOtelAttributes($params, [], $request, 'watcher.stop'); |
|
422 | - return $this->client->sendRequest($request); |
|
423 | - } |
|
424 | - /** |
|
425 | - * Update settings for the watcher system index |
|
426 | - * |
|
427 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-update-settings.html |
|
428 | - * |
|
429 | - * @param array{ |
|
430 | - * timeout: time, // Specify timeout for waiting for acknowledgement from all nodes |
|
431 | - * master_timeout: time, // Specify timeout for connection to master |
|
432 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
433 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
434 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
435 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
436 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
437 | - * body: array, // (REQUIRED) An object with the new index settings |
|
438 | - * } $params |
|
439 | - * |
|
440 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
441 | - * @throws ClientResponseException if the status code of response is 4xx |
|
442 | - * @throws ServerResponseException if the status code of response is 5xx |
|
443 | - * |
|
444 | - * @return Elasticsearch|Promise |
|
445 | - */ |
|
446 | - public function updateSettings(array $params = []) |
|
447 | - { |
|
448 | - $this->checkRequiredParameters(['body'], $params); |
|
449 | - $url = '/_watcher/settings'; |
|
450 | - $method = 'PUT'; |
|
451 | - $url = $this->addQueryString($url, $params, ['timeout', 'master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
452 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
453 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
454 | - $request = $this->addOtelAttributes($params, [], $request, 'watcher.update_settings'); |
|
455 | - return $this->client->sendRequest($request); |
|
456 | - } |
|
28 | + /** |
|
29 | + * Acknowledges a watch, manually throttling the execution of the watch's actions. |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-ack-watch.html |
|
32 | + * |
|
33 | + * @param array{ |
|
34 | + * watch_id: string, // (REQUIRED) Watch ID |
|
35 | + * action_id: list, // A comma-separated list of the action ids to be acked |
|
36 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
37 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
38 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
39 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
40 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
41 | + * } $params |
|
42 | + * |
|
43 | + * @throws MissingParameterException if a required parameter is missing |
|
44 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
45 | + * @throws ClientResponseException if the status code of response is 4xx |
|
46 | + * @throws ServerResponseException if the status code of response is 5xx |
|
47 | + * |
|
48 | + * @return Elasticsearch|Promise |
|
49 | + */ |
|
50 | + public function ackWatch(array $params = []) |
|
51 | + { |
|
52 | + $this->checkRequiredParameters(['watch_id'], $params); |
|
53 | + if (isset($params['action_id'])) { |
|
54 | + $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_ack/' . $this->encode($params['action_id']); |
|
55 | + $method = 'PUT'; |
|
56 | + } else { |
|
57 | + $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_ack'; |
|
58 | + $method = 'PUT'; |
|
59 | + } |
|
60 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
61 | + $headers = ['Accept' => 'application/json']; |
|
62 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
63 | + $request = $this->addOtelAttributes($params, ['watch_id', 'action_id'], $request, 'watcher.ack_watch'); |
|
64 | + return $this->client->sendRequest($request); |
|
65 | + } |
|
66 | + /** |
|
67 | + * Activates a currently inactive watch. |
|
68 | + * |
|
69 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-activate-watch.html |
|
70 | + * |
|
71 | + * @param array{ |
|
72 | + * watch_id: string, // (REQUIRED) Watch ID |
|
73 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
74 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
75 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
76 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
77 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
78 | + * } $params |
|
79 | + * |
|
80 | + * @throws MissingParameterException if a required parameter is missing |
|
81 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
82 | + * @throws ClientResponseException if the status code of response is 4xx |
|
83 | + * @throws ServerResponseException if the status code of response is 5xx |
|
84 | + * |
|
85 | + * @return Elasticsearch|Promise |
|
86 | + */ |
|
87 | + public function activateWatch(array $params = []) |
|
88 | + { |
|
89 | + $this->checkRequiredParameters(['watch_id'], $params); |
|
90 | + $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_activate'; |
|
91 | + $method = 'PUT'; |
|
92 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
93 | + $headers = ['Accept' => 'application/json']; |
|
94 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
95 | + $request = $this->addOtelAttributes($params, ['watch_id'], $request, 'watcher.activate_watch'); |
|
96 | + return $this->client->sendRequest($request); |
|
97 | + } |
|
98 | + /** |
|
99 | + * Deactivates a currently active watch. |
|
100 | + * |
|
101 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-deactivate-watch.html |
|
102 | + * |
|
103 | + * @param array{ |
|
104 | + * watch_id: string, // (REQUIRED) Watch ID |
|
105 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
106 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
107 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
108 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
109 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
110 | + * } $params |
|
111 | + * |
|
112 | + * @throws MissingParameterException if a required parameter is missing |
|
113 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
114 | + * @throws ClientResponseException if the status code of response is 4xx |
|
115 | + * @throws ServerResponseException if the status code of response is 5xx |
|
116 | + * |
|
117 | + * @return Elasticsearch|Promise |
|
118 | + */ |
|
119 | + public function deactivateWatch(array $params = []) |
|
120 | + { |
|
121 | + $this->checkRequiredParameters(['watch_id'], $params); |
|
122 | + $url = '/_watcher/watch/' . $this->encode($params['watch_id']) . '/_deactivate'; |
|
123 | + $method = 'PUT'; |
|
124 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
125 | + $headers = ['Accept' => 'application/json']; |
|
126 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
127 | + $request = $this->addOtelAttributes($params, ['watch_id'], $request, 'watcher.deactivate_watch'); |
|
128 | + return $this->client->sendRequest($request); |
|
129 | + } |
|
130 | + /** |
|
131 | + * Removes a watch from Watcher. |
|
132 | + * |
|
133 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-delete-watch.html |
|
134 | + * |
|
135 | + * @param array{ |
|
136 | + * id: string, // (REQUIRED) Watch ID |
|
137 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
138 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
139 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
140 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
141 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
142 | + * } $params |
|
143 | + * |
|
144 | + * @throws MissingParameterException if a required parameter is missing |
|
145 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
146 | + * @throws ClientResponseException if the status code of response is 4xx |
|
147 | + * @throws ServerResponseException if the status code of response is 5xx |
|
148 | + * |
|
149 | + * @return Elasticsearch|Promise |
|
150 | + */ |
|
151 | + public function deleteWatch(array $params = []) |
|
152 | + { |
|
153 | + $this->checkRequiredParameters(['id'], $params); |
|
154 | + $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
155 | + $method = 'DELETE'; |
|
156 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
157 | + $headers = ['Accept' => 'application/json']; |
|
158 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
159 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'watcher.delete_watch'); |
|
160 | + return $this->client->sendRequest($request); |
|
161 | + } |
|
162 | + /** |
|
163 | + * Forces the execution of a stored watch. |
|
164 | + * |
|
165 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-execute-watch.html |
|
166 | + * |
|
167 | + * @param array{ |
|
168 | + * id: string, // Watch ID |
|
169 | + * debug: boolean, // indicates whether the watch should execute in debug mode |
|
170 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
171 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
172 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
173 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
174 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
175 | + * body: array, // Execution control |
|
176 | + * } $params |
|
177 | + * |
|
178 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
179 | + * @throws ClientResponseException if the status code of response is 4xx |
|
180 | + * @throws ServerResponseException if the status code of response is 5xx |
|
181 | + * |
|
182 | + * @return Elasticsearch|Promise |
|
183 | + */ |
|
184 | + public function executeWatch(array $params = []) |
|
185 | + { |
|
186 | + if (isset($params['id'])) { |
|
187 | + $url = '/_watcher/watch/' . $this->encode($params['id']) . '/_execute'; |
|
188 | + $method = 'PUT'; |
|
189 | + } else { |
|
190 | + $url = '/_watcher/watch/_execute'; |
|
191 | + $method = 'PUT'; |
|
192 | + } |
|
193 | + $url = $this->addQueryString($url, $params, ['debug', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
194 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
195 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
196 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'watcher.execute_watch'); |
|
197 | + return $this->client->sendRequest($request); |
|
198 | + } |
|
199 | + /** |
|
200 | + * Retrieve settings for the watcher system index |
|
201 | + * |
|
202 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-get-settings.html |
|
203 | + * |
|
204 | + * @param array{ |
|
205 | + * master_timeout: time, // Specify timeout for connection to master |
|
206 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
207 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
208 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
209 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
210 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
211 | + * } $params |
|
212 | + * |
|
213 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
214 | + * @throws ClientResponseException if the status code of response is 4xx |
|
215 | + * @throws ServerResponseException if the status code of response is 5xx |
|
216 | + * |
|
217 | + * @return Elasticsearch|Promise |
|
218 | + */ |
|
219 | + public function getSettings(array $params = []) |
|
220 | + { |
|
221 | + $url = '/_watcher/settings'; |
|
222 | + $method = 'GET'; |
|
223 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
224 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
225 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
226 | + $request = $this->addOtelAttributes($params, [], $request, 'watcher.get_settings'); |
|
227 | + return $this->client->sendRequest($request); |
|
228 | + } |
|
229 | + /** |
|
230 | + * Retrieves a watch by its ID. |
|
231 | + * |
|
232 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-get-watch.html |
|
233 | + * |
|
234 | + * @param array{ |
|
235 | + * id: string, // (REQUIRED) Watch ID |
|
236 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
237 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
238 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
239 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
240 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
241 | + * } $params |
|
242 | + * |
|
243 | + * @throws MissingParameterException if a required parameter is missing |
|
244 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
245 | + * @throws ClientResponseException if the status code of response is 4xx |
|
246 | + * @throws ServerResponseException if the status code of response is 5xx |
|
247 | + * |
|
248 | + * @return Elasticsearch|Promise |
|
249 | + */ |
|
250 | + public function getWatch(array $params = []) |
|
251 | + { |
|
252 | + $this->checkRequiredParameters(['id'], $params); |
|
253 | + $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
254 | + $method = 'GET'; |
|
255 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
256 | + $headers = ['Accept' => 'application/json']; |
|
257 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
258 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'watcher.get_watch'); |
|
259 | + return $this->client->sendRequest($request); |
|
260 | + } |
|
261 | + /** |
|
262 | + * Creates a new watch, or updates an existing one. |
|
263 | + * |
|
264 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-put-watch.html |
|
265 | + * |
|
266 | + * @param array{ |
|
267 | + * id: string, // (REQUIRED) Watch ID |
|
268 | + * active: boolean, // Specify whether the watch is in/active by default |
|
269 | + * version: number, // Explicit version number for concurrency control |
|
270 | + * if_seq_no: number, // only update the watch if the last operation that has changed the watch has the specified sequence number |
|
271 | + * if_primary_term: number, // only update the watch if the last operation that has changed the watch has the specified primary term |
|
272 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
273 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
274 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
275 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
276 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
277 | + * body: array, // The watch |
|
278 | + * } $params |
|
279 | + * |
|
280 | + * @throws MissingParameterException if a required parameter is missing |
|
281 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
282 | + * @throws ClientResponseException if the status code of response is 4xx |
|
283 | + * @throws ServerResponseException if the status code of response is 5xx |
|
284 | + * |
|
285 | + * @return Elasticsearch|Promise |
|
286 | + */ |
|
287 | + public function putWatch(array $params = []) |
|
288 | + { |
|
289 | + $this->checkRequiredParameters(['id'], $params); |
|
290 | + $url = '/_watcher/watch/' . $this->encode($params['id']); |
|
291 | + $method = 'PUT'; |
|
292 | + $url = $this->addQueryString($url, $params, ['active', 'version', 'if_seq_no', 'if_primary_term', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
293 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
294 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
295 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'watcher.put_watch'); |
|
296 | + return $this->client->sendRequest($request); |
|
297 | + } |
|
298 | + /** |
|
299 | + * Retrieves stored watches. |
|
300 | + * |
|
301 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-query-watches.html |
|
302 | + * |
|
303 | + * @param array{ |
|
304 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
305 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
306 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
307 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
308 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
309 | + * body: array, // From, size, query, sort and search_after |
|
310 | + * } $params |
|
311 | + * |
|
312 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
313 | + * @throws ClientResponseException if the status code of response is 4xx |
|
314 | + * @throws ServerResponseException if the status code of response is 5xx |
|
315 | + * |
|
316 | + * @return Elasticsearch|Promise |
|
317 | + */ |
|
318 | + public function queryWatches(array $params = []) |
|
319 | + { |
|
320 | + $url = '/_watcher/_query/watches'; |
|
321 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
322 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
323 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
324 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
325 | + $request = $this->addOtelAttributes($params, [], $request, 'watcher.query_watches'); |
|
326 | + return $this->client->sendRequest($request); |
|
327 | + } |
|
328 | + /** |
|
329 | + * Starts Watcher if it is not already running. |
|
330 | + * |
|
331 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-start.html |
|
332 | + * |
|
333 | + * @param array{ |
|
334 | + * master_timeout: time, // Specify timeout for connection to master |
|
335 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
336 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
337 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
338 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
339 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
340 | + * } $params |
|
341 | + * |
|
342 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
343 | + * @throws ClientResponseException if the status code of response is 4xx |
|
344 | + * @throws ServerResponseException if the status code of response is 5xx |
|
345 | + * |
|
346 | + * @return Elasticsearch|Promise |
|
347 | + */ |
|
348 | + public function start(array $params = []) |
|
349 | + { |
|
350 | + $url = '/_watcher/_start'; |
|
351 | + $method = 'POST'; |
|
352 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
353 | + $headers = ['Accept' => 'application/json']; |
|
354 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
355 | + $request = $this->addOtelAttributes($params, [], $request, 'watcher.start'); |
|
356 | + return $this->client->sendRequest($request); |
|
357 | + } |
|
358 | + /** |
|
359 | + * Retrieves the current Watcher metrics. |
|
360 | + * |
|
361 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-stats.html |
|
362 | + * |
|
363 | + * @param array{ |
|
364 | + * metric: list, // Controls what additional stat metrics should be include in the response |
|
365 | + * emit_stacktraces: boolean, // Emits stack traces of currently running watches |
|
366 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
367 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
368 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
369 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
370 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
371 | + * } $params |
|
372 | + * |
|
373 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
374 | + * @throws ClientResponseException if the status code of response is 4xx |
|
375 | + * @throws ServerResponseException if the status code of response is 5xx |
|
376 | + * |
|
377 | + * @return Elasticsearch|Promise |
|
378 | + */ |
|
379 | + public function stats(array $params = []) |
|
380 | + { |
|
381 | + if (isset($params['metric'])) { |
|
382 | + $url = '/_watcher/stats/' . $this->encode($params['metric']); |
|
383 | + $method = 'GET'; |
|
384 | + } else { |
|
385 | + $url = '/_watcher/stats'; |
|
386 | + $method = 'GET'; |
|
387 | + } |
|
388 | + $url = $this->addQueryString($url, $params, ['emit_stacktraces', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
389 | + $headers = ['Accept' => 'application/json']; |
|
390 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
391 | + $request = $this->addOtelAttributes($params, ['metric'], $request, 'watcher.stats'); |
|
392 | + return $this->client->sendRequest($request); |
|
393 | + } |
|
394 | + /** |
|
395 | + * Stops Watcher if it is running. |
|
396 | + * |
|
397 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-stop.html |
|
398 | + * |
|
399 | + * @param array{ |
|
400 | + * master_timeout: time, // Specify timeout for connection to master |
|
401 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
402 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
403 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
404 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
405 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
406 | + * } $params |
|
407 | + * |
|
408 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
409 | + * @throws ClientResponseException if the status code of response is 4xx |
|
410 | + * @throws ServerResponseException if the status code of response is 5xx |
|
411 | + * |
|
412 | + * @return Elasticsearch|Promise |
|
413 | + */ |
|
414 | + public function stop(array $params = []) |
|
415 | + { |
|
416 | + $url = '/_watcher/_stop'; |
|
417 | + $method = 'POST'; |
|
418 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
419 | + $headers = ['Accept' => 'application/json']; |
|
420 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
421 | + $request = $this->addOtelAttributes($params, [], $request, 'watcher.stop'); |
|
422 | + return $this->client->sendRequest($request); |
|
423 | + } |
|
424 | + /** |
|
425 | + * Update settings for the watcher system index |
|
426 | + * |
|
427 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-update-settings.html |
|
428 | + * |
|
429 | + * @param array{ |
|
430 | + * timeout: time, // Specify timeout for waiting for acknowledgement from all nodes |
|
431 | + * master_timeout: time, // Specify timeout for connection to master |
|
432 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
433 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
434 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
435 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
436 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
437 | + * body: array, // (REQUIRED) An object with the new index settings |
|
438 | + * } $params |
|
439 | + * |
|
440 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
441 | + * @throws ClientResponseException if the status code of response is 4xx |
|
442 | + * @throws ServerResponseException if the status code of response is 5xx |
|
443 | + * |
|
444 | + * @return Elasticsearch|Promise |
|
445 | + */ |
|
446 | + public function updateSettings(array $params = []) |
|
447 | + { |
|
448 | + $this->checkRequiredParameters(['body'], $params); |
|
449 | + $url = '/_watcher/settings'; |
|
450 | + $method = 'PUT'; |
|
451 | + $url = $this->addQueryString($url, $params, ['timeout', 'master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
452 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
453 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
454 | + $request = $this->addOtelAttributes($params, [], $request, 'watcher.update_settings'); |
|
455 | + return $this->client->sendRequest($request); |
|
456 | + } |
|
457 | 457 | } |
@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -136,7 +136,7 @@ discard block |
||
136 | 136 | { |
137 | 137 | $this->checkRequiredParameters(['body'], $params); |
138 | 138 | if (isset($params['username'])) { |
139 | - $url = '/_security/user/' . $this->encode($params['username']) . '/_password'; |
|
139 | + $url = '/_security/user/'.$this->encode($params['username']).'/_password'; |
|
140 | 140 | $method = 'PUT'; |
141 | 141 | } else { |
142 | 142 | $url = '/_security/user/_password'; |
@@ -170,7 +170,7 @@ discard block |
||
170 | 170 | public function clearApiKeyCache(array $params = []) |
171 | 171 | { |
172 | 172 | $this->checkRequiredParameters(['ids'], $params); |
173 | - $url = '/_security/api_key/' . $this->encode($params['ids']) . '/_clear_cache'; |
|
173 | + $url = '/_security/api_key/'.$this->encode($params['ids']).'/_clear_cache'; |
|
174 | 174 | $method = 'POST'; |
175 | 175 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
176 | 176 | $headers = ['Accept' => 'application/json']; |
@@ -200,7 +200,7 @@ discard block |
||
200 | 200 | public function clearCachedPrivileges(array $params = []) |
201 | 201 | { |
202 | 202 | $this->checkRequiredParameters(['application'], $params); |
203 | - $url = '/_security/privilege/' . $this->encode($params['application']) . '/_clear_cache'; |
|
203 | + $url = '/_security/privilege/'.$this->encode($params['application']).'/_clear_cache'; |
|
204 | 204 | $method = 'POST'; |
205 | 205 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
206 | 206 | $headers = ['Accept' => 'application/json']; |
@@ -231,7 +231,7 @@ discard block |
||
231 | 231 | public function clearCachedRealms(array $params = []) |
232 | 232 | { |
233 | 233 | $this->checkRequiredParameters(['realms'], $params); |
234 | - $url = '/_security/realm/' . $this->encode($params['realms']) . '/_clear_cache'; |
|
234 | + $url = '/_security/realm/'.$this->encode($params['realms']).'/_clear_cache'; |
|
235 | 235 | $method = 'POST'; |
236 | 236 | $url = $this->addQueryString($url, $params, ['usernames', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
237 | 237 | $headers = ['Accept' => 'application/json']; |
@@ -261,7 +261,7 @@ discard block |
||
261 | 261 | public function clearCachedRoles(array $params = []) |
262 | 262 | { |
263 | 263 | $this->checkRequiredParameters(['name'], $params); |
264 | - $url = '/_security/role/' . $this->encode($params['name']) . '/_clear_cache'; |
|
264 | + $url = '/_security/role/'.$this->encode($params['name']).'/_clear_cache'; |
|
265 | 265 | $method = 'POST'; |
266 | 266 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
267 | 267 | $headers = ['Accept' => 'application/json']; |
@@ -293,7 +293,7 @@ discard block |
||
293 | 293 | public function clearCachedServiceTokens(array $params = []) |
294 | 294 | { |
295 | 295 | $this->checkRequiredParameters(['namespace', 'service', 'name'], $params); |
296 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']) . '/_clear_cache'; |
|
296 | + $url = '/_security/service/'.$this->encode($params['namespace']).'/'.$this->encode($params['service']).'/credential/token/'.$this->encode($params['name']).'/_clear_cache'; |
|
297 | 297 | $method = 'POST'; |
298 | 298 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
299 | 299 | $headers = ['Accept' => 'application/json']; |
@@ -386,10 +386,10 @@ discard block |
||
386 | 386 | { |
387 | 387 | $this->checkRequiredParameters(['namespace', 'service'], $params); |
388 | 388 | if (isset($params['name'])) { |
389 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']); |
|
389 | + $url = '/_security/service/'.$this->encode($params['namespace']).'/'.$this->encode($params['service']).'/credential/token/'.$this->encode($params['name']); |
|
390 | 390 | $method = 'PUT'; |
391 | 391 | } else { |
392 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token'; |
|
392 | + $url = '/_security/service/'.$this->encode($params['namespace']).'/'.$this->encode($params['service']).'/credential/token'; |
|
393 | 393 | $method = 'POST'; |
394 | 394 | } |
395 | 395 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
@@ -422,7 +422,7 @@ discard block |
||
422 | 422 | public function deletePrivileges(array $params = []) |
423 | 423 | { |
424 | 424 | $this->checkRequiredParameters(['application', 'name'], $params); |
425 | - $url = '/_security/privilege/' . $this->encode($params['application']) . '/' . $this->encode($params['name']); |
|
425 | + $url = '/_security/privilege/'.$this->encode($params['application']).'/'.$this->encode($params['name']); |
|
426 | 426 | $method = 'DELETE'; |
427 | 427 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
428 | 428 | $headers = ['Accept' => 'application/json']; |
@@ -453,7 +453,7 @@ discard block |
||
453 | 453 | public function deleteRole(array $params = []) |
454 | 454 | { |
455 | 455 | $this->checkRequiredParameters(['name'], $params); |
456 | - $url = '/_security/role/' . $this->encode($params['name']); |
|
456 | + $url = '/_security/role/'.$this->encode($params['name']); |
|
457 | 457 | $method = 'DELETE'; |
458 | 458 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
459 | 459 | $headers = ['Accept' => 'application/json']; |
@@ -484,7 +484,7 @@ discard block |
||
484 | 484 | public function deleteRoleMapping(array $params = []) |
485 | 485 | { |
486 | 486 | $this->checkRequiredParameters(['name'], $params); |
487 | - $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
487 | + $url = '/_security/role_mapping/'.$this->encode($params['name']); |
|
488 | 488 | $method = 'DELETE'; |
489 | 489 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
490 | 490 | $headers = ['Accept' => 'application/json']; |
@@ -517,7 +517,7 @@ discard block |
||
517 | 517 | public function deleteServiceToken(array $params = []) |
518 | 518 | { |
519 | 519 | $this->checkRequiredParameters(['namespace', 'service', 'name'], $params); |
520 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']); |
|
520 | + $url = '/_security/service/'.$this->encode($params['namespace']).'/'.$this->encode($params['service']).'/credential/token/'.$this->encode($params['name']); |
|
521 | 521 | $method = 'DELETE'; |
522 | 522 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
523 | 523 | $headers = ['Accept' => 'application/json']; |
@@ -548,7 +548,7 @@ discard block |
||
548 | 548 | public function deleteUser(array $params = []) |
549 | 549 | { |
550 | 550 | $this->checkRequiredParameters(['username'], $params); |
551 | - $url = '/_security/user/' . $this->encode($params['username']); |
|
551 | + $url = '/_security/user/'.$this->encode($params['username']); |
|
552 | 552 | $method = 'DELETE'; |
553 | 553 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
554 | 554 | $headers = ['Accept' => 'application/json']; |
@@ -579,7 +579,7 @@ discard block |
||
579 | 579 | public function disableUser(array $params = []) |
580 | 580 | { |
581 | 581 | $this->checkRequiredParameters(['username'], $params); |
582 | - $url = '/_security/user/' . $this->encode($params['username']) . '/_disable'; |
|
582 | + $url = '/_security/user/'.$this->encode($params['username']).'/_disable'; |
|
583 | 583 | $method = 'PUT'; |
584 | 584 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
585 | 585 | $headers = ['Accept' => 'application/json']; |
@@ -610,7 +610,7 @@ discard block |
||
610 | 610 | public function disableUserProfile(array $params = []) |
611 | 611 | { |
612 | 612 | $this->checkRequiredParameters(['uid'], $params); |
613 | - $url = '/_security/profile/' . $this->encode($params['uid']) . '/_disable'; |
|
613 | + $url = '/_security/profile/'.$this->encode($params['uid']).'/_disable'; |
|
614 | 614 | $method = 'PUT'; |
615 | 615 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
616 | 616 | $headers = ['Accept' => 'application/json']; |
@@ -641,7 +641,7 @@ discard block |
||
641 | 641 | public function enableUser(array $params = []) |
642 | 642 | { |
643 | 643 | $this->checkRequiredParameters(['username'], $params); |
644 | - $url = '/_security/user/' . $this->encode($params['username']) . '/_enable'; |
|
644 | + $url = '/_security/user/'.$this->encode($params['username']).'/_enable'; |
|
645 | 645 | $method = 'PUT'; |
646 | 646 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
647 | 647 | $headers = ['Accept' => 'application/json']; |
@@ -672,7 +672,7 @@ discard block |
||
672 | 672 | public function enableUserProfile(array $params = []) |
673 | 673 | { |
674 | 674 | $this->checkRequiredParameters(['uid'], $params); |
675 | - $url = '/_security/profile/' . $this->encode($params['uid']) . '/_enable'; |
|
675 | + $url = '/_security/profile/'.$this->encode($params['uid']).'/_enable'; |
|
676 | 676 | $method = 'PUT'; |
677 | 677 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
678 | 678 | $headers = ['Accept' => 'application/json']; |
@@ -817,10 +817,10 @@ discard block |
||
817 | 817 | public function getPrivileges(array $params = []) |
818 | 818 | { |
819 | 819 | if (isset($params['application']) && isset($params['name'])) { |
820 | - $url = '/_security/privilege/' . $this->encode($params['application']) . '/' . $this->encode($params['name']); |
|
820 | + $url = '/_security/privilege/'.$this->encode($params['application']).'/'.$this->encode($params['name']); |
|
821 | 821 | $method = 'GET'; |
822 | 822 | } elseif (isset($params['application'])) { |
823 | - $url = '/_security/privilege/' . $this->encode($params['application']); |
|
823 | + $url = '/_security/privilege/'.$this->encode($params['application']); |
|
824 | 824 | $method = 'GET'; |
825 | 825 | } else { |
826 | 826 | $url = '/_security/privilege'; |
@@ -853,7 +853,7 @@ discard block |
||
853 | 853 | public function getRole(array $params = []) |
854 | 854 | { |
855 | 855 | if (isset($params['name'])) { |
856 | - $url = '/_security/role/' . $this->encode($params['name']); |
|
856 | + $url = '/_security/role/'.$this->encode($params['name']); |
|
857 | 857 | $method = 'GET'; |
858 | 858 | } else { |
859 | 859 | $url = '/_security/role'; |
@@ -886,7 +886,7 @@ discard block |
||
886 | 886 | public function getRoleMapping(array $params = []) |
887 | 887 | { |
888 | 888 | if (isset($params['name'])) { |
889 | - $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
889 | + $url = '/_security/role_mapping/'.$this->encode($params['name']); |
|
890 | 890 | $method = 'GET'; |
891 | 891 | } else { |
892 | 892 | $url = '/_security/role_mapping'; |
@@ -920,10 +920,10 @@ discard block |
||
920 | 920 | public function getServiceAccounts(array $params = []) |
921 | 921 | { |
922 | 922 | if (isset($params['namespace']) && isset($params['service'])) { |
923 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']); |
|
923 | + $url = '/_security/service/'.$this->encode($params['namespace']).'/'.$this->encode($params['service']); |
|
924 | 924 | $method = 'GET'; |
925 | 925 | } elseif (isset($params['namespace'])) { |
926 | - $url = '/_security/service/' . $this->encode($params['namespace']); |
|
926 | + $url = '/_security/service/'.$this->encode($params['namespace']); |
|
927 | 927 | $method = 'GET'; |
928 | 928 | } else { |
929 | 929 | $url = '/_security/service'; |
@@ -958,7 +958,7 @@ discard block |
||
958 | 958 | public function getServiceCredentials(array $params = []) |
959 | 959 | { |
960 | 960 | $this->checkRequiredParameters(['namespace', 'service'], $params); |
961 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential'; |
|
961 | + $url = '/_security/service/'.$this->encode($params['namespace']).'/'.$this->encode($params['service']).'/credential'; |
|
962 | 962 | $method = 'GET'; |
963 | 963 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
964 | 964 | $headers = ['Accept' => 'application/json']; |
@@ -1044,7 +1044,7 @@ discard block |
||
1044 | 1044 | public function getUser(array $params = []) |
1045 | 1045 | { |
1046 | 1046 | if (isset($params['username'])) { |
1047 | - $url = '/_security/user/' . $this->encode($params['username']); |
|
1047 | + $url = '/_security/user/'.$this->encode($params['username']); |
|
1048 | 1048 | $method = 'GET'; |
1049 | 1049 | } else { |
1050 | 1050 | $url = '/_security/user'; |
@@ -1106,7 +1106,7 @@ discard block |
||
1106 | 1106 | public function getUserProfile(array $params = []) |
1107 | 1107 | { |
1108 | 1108 | $this->checkRequiredParameters(['uid'], $params); |
1109 | - $url = '/_security/profile/' . $this->encode($params['uid']); |
|
1109 | + $url = '/_security/profile/'.$this->encode($params['uid']); |
|
1110 | 1110 | $method = 'GET'; |
1111 | 1111 | $url = $this->addQueryString($url, $params, ['data', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
1112 | 1112 | $headers = ['Accept' => 'application/json']; |
@@ -1167,7 +1167,7 @@ discard block |
||
1167 | 1167 | { |
1168 | 1168 | $this->checkRequiredParameters(['body'], $params); |
1169 | 1169 | if (isset($params['user'])) { |
1170 | - $url = '/_security/user/' . $this->encode($params['user']) . '/_has_privileges'; |
|
1170 | + $url = '/_security/user/'.$this->encode($params['user']).'/_has_privileges'; |
|
1171 | 1171 | $method = empty($params['body']) ? 'GET' : 'POST'; |
1172 | 1172 | } else { |
1173 | 1173 | $url = '/_security/user/_has_privileges'; |
@@ -1407,7 +1407,7 @@ discard block |
||
1407 | 1407 | public function putRole(array $params = []) |
1408 | 1408 | { |
1409 | 1409 | $this->checkRequiredParameters(['name', 'body'], $params); |
1410 | - $url = '/_security/role/' . $this->encode($params['name']); |
|
1410 | + $url = '/_security/role/'.$this->encode($params['name']); |
|
1411 | 1411 | $method = 'PUT'; |
1412 | 1412 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
1413 | 1413 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -1439,7 +1439,7 @@ discard block |
||
1439 | 1439 | public function putRoleMapping(array $params = []) |
1440 | 1440 | { |
1441 | 1441 | $this->checkRequiredParameters(['name', 'body'], $params); |
1442 | - $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
1442 | + $url = '/_security/role_mapping/'.$this->encode($params['name']); |
|
1443 | 1443 | $method = 'PUT'; |
1444 | 1444 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
1445 | 1445 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -1471,7 +1471,7 @@ discard block |
||
1471 | 1471 | public function putUser(array $params = []) |
1472 | 1472 | { |
1473 | 1473 | $this->checkRequiredParameters(['username', 'body'], $params); |
1474 | - $url = '/_security/user/' . $this->encode($params['username']); |
|
1474 | + $url = '/_security/user/'.$this->encode($params['username']); |
|
1475 | 1475 | $method = 'PUT'; |
1476 | 1476 | $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
1477 | 1477 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -1704,7 +1704,7 @@ discard block |
||
1704 | 1704 | public function samlServiceProviderMetadata(array $params = []) |
1705 | 1705 | { |
1706 | 1706 | $this->checkRequiredParameters(['realm_name'], $params); |
1707 | - $url = '/_security/saml/metadata/' . $this->encode($params['realm_name']); |
|
1707 | + $url = '/_security/saml/metadata/'.$this->encode($params['realm_name']); |
|
1708 | 1708 | $method = 'GET'; |
1709 | 1709 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
1710 | 1710 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -1764,7 +1764,7 @@ discard block |
||
1764 | 1764 | public function updateApiKey(array $params = []) |
1765 | 1765 | { |
1766 | 1766 | $this->checkRequiredParameters(['id'], $params); |
1767 | - $url = '/_security/api_key/' . $this->encode($params['id']); |
|
1767 | + $url = '/_security/api_key/'.$this->encode($params['id']); |
|
1768 | 1768 | $method = 'PUT'; |
1769 | 1769 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
1770 | 1770 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -1795,7 +1795,7 @@ discard block |
||
1795 | 1795 | public function updateCrossClusterApiKey(array $params = []) |
1796 | 1796 | { |
1797 | 1797 | $this->checkRequiredParameters(['id', 'body'], $params); |
1798 | - $url = '/_security/cross_cluster/api_key/' . $this->encode($params['id']); |
|
1798 | + $url = '/_security/cross_cluster/api_key/'.$this->encode($params['id']); |
|
1799 | 1799 | $method = 'PUT'; |
1800 | 1800 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
1801 | 1801 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -1858,7 +1858,7 @@ discard block |
||
1858 | 1858 | public function updateUserProfileData(array $params = []) |
1859 | 1859 | { |
1860 | 1860 | $this->checkRequiredParameters(['uid', 'body'], $params); |
1861 | - $url = '/_security/profile/' . $this->encode($params['uid']) . '/_data'; |
|
1861 | + $url = '/_security/profile/'.$this->encode($params['uid']).'/_data'; |
|
1862 | 1862 | $method = 'PUT'; |
1863 | 1863 | $url = $this->addQueryString($url, $params, ['if_seq_no', 'if_primary_term', 'refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
1864 | 1864 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class Security extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class Security extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Creates or updates the user profile on behalf of another user. |
30 | 29 | * |
@@ -25,2063 +25,2063 @@ |
||
25 | 25 | */ |
26 | 26 | class Security extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Creates or updates the user profile on behalf of another user. |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-activate-user-profile.html |
|
32 | - * |
|
33 | - * @param array{ |
|
34 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
35 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
36 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
37 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
38 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
39 | - * body: array, // (REQUIRED) The grant type and user's credential |
|
40 | - * } $params |
|
41 | - * |
|
42 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
43 | - * @throws ClientResponseException if the status code of response is 4xx |
|
44 | - * @throws ServerResponseException if the status code of response is 5xx |
|
45 | - * |
|
46 | - * @return Elasticsearch|Promise |
|
47 | - */ |
|
48 | - public function activateUserProfile(array $params = []) |
|
49 | - { |
|
50 | - $this->checkRequiredParameters(['body'], $params); |
|
51 | - $url = '/_security/profile/_activate'; |
|
52 | - $method = 'POST'; |
|
53 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
54 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
55 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
56 | - $request = $this->addOtelAttributes($params, [], $request, 'security.activate_user_profile'); |
|
57 | - return $this->client->sendRequest($request); |
|
58 | - } |
|
59 | - /** |
|
60 | - * Enables authentication as a user and retrieve information about the authenticated user. |
|
61 | - * |
|
62 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-authenticate.html |
|
63 | - * |
|
64 | - * @param array{ |
|
65 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
66 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
67 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
68 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
69 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
70 | - * } $params |
|
71 | - * |
|
72 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
73 | - * @throws ClientResponseException if the status code of response is 4xx |
|
74 | - * @throws ServerResponseException if the status code of response is 5xx |
|
75 | - * |
|
76 | - * @return Elasticsearch|Promise |
|
77 | - */ |
|
78 | - public function authenticate(array $params = []) |
|
79 | - { |
|
80 | - $url = '/_security/_authenticate'; |
|
81 | - $method = 'GET'; |
|
82 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
83 | - $headers = ['Accept' => 'application/json']; |
|
84 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
85 | - $request = $this->addOtelAttributes($params, [], $request, 'security.authenticate'); |
|
86 | - return $this->client->sendRequest($request); |
|
87 | - } |
|
88 | - /** |
|
89 | - * Bulk delete roles in the native realm. |
|
90 | - * |
|
91 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-bulk-delete-role.html |
|
92 | - * |
|
93 | - * @param array{ |
|
94 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
95 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
96 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
97 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
98 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
99 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
100 | - * body: array, // (REQUIRED) The roles to delete |
|
101 | - * } $params |
|
102 | - * |
|
103 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
104 | - * @throws ClientResponseException if the status code of response is 4xx |
|
105 | - * @throws ServerResponseException if the status code of response is 5xx |
|
106 | - * |
|
107 | - * @return Elasticsearch|Promise |
|
108 | - */ |
|
109 | - public function bulkDeleteRole(array $params = []) |
|
110 | - { |
|
111 | - $this->checkRequiredParameters(['body'], $params); |
|
112 | - $url = '/_security/role'; |
|
113 | - $method = 'DELETE'; |
|
114 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
115 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
116 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
117 | - $request = $this->addOtelAttributes($params, [], $request, 'security.bulk_delete_role'); |
|
118 | - return $this->client->sendRequest($request); |
|
119 | - } |
|
120 | - /** |
|
121 | - * Bulk adds and updates roles in the native realm. |
|
122 | - * |
|
123 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-bulk-put-role.html |
|
124 | - * |
|
125 | - * @param array{ |
|
126 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
127 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
128 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
129 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
130 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
131 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
132 | - * body: array, // (REQUIRED) The roles to add |
|
133 | - * } $params |
|
134 | - * |
|
135 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
136 | - * @throws ClientResponseException if the status code of response is 4xx |
|
137 | - * @throws ServerResponseException if the status code of response is 5xx |
|
138 | - * |
|
139 | - * @return Elasticsearch|Promise |
|
140 | - */ |
|
141 | - public function bulkPutRole(array $params = []) |
|
142 | - { |
|
143 | - $this->checkRequiredParameters(['body'], $params); |
|
144 | - $url = '/_security/role'; |
|
145 | - $method = 'POST'; |
|
146 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
147 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
148 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
149 | - $request = $this->addOtelAttributes($params, [], $request, 'security.bulk_put_role'); |
|
150 | - return $this->client->sendRequest($request); |
|
151 | - } |
|
152 | - /** |
|
153 | - * Updates the attributes of multiple existing API keys. |
|
154 | - * |
|
155 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-bulk-update-api-keys.html |
|
156 | - * |
|
157 | - * @param array{ |
|
158 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
159 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
160 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
161 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
162 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
163 | - * body: array, // (REQUIRED) The API key request to update the attributes of multiple API keys. |
|
164 | - * } $params |
|
165 | - * |
|
166 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
167 | - * @throws ClientResponseException if the status code of response is 4xx |
|
168 | - * @throws ServerResponseException if the status code of response is 5xx |
|
169 | - * |
|
170 | - * @return Elasticsearch|Promise |
|
171 | - */ |
|
172 | - public function bulkUpdateApiKeys(array $params = []) |
|
173 | - { |
|
174 | - $this->checkRequiredParameters(['body'], $params); |
|
175 | - $url = '/_security/api_key/_bulk_update'; |
|
176 | - $method = 'POST'; |
|
177 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
178 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
179 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
180 | - $request = $this->addOtelAttributes($params, [], $request, 'security.bulk_update_api_keys'); |
|
181 | - return $this->client->sendRequest($request); |
|
182 | - } |
|
183 | - /** |
|
184 | - * Changes the passwords of users in the native realm and built-in users. |
|
185 | - * |
|
186 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-change-password.html |
|
187 | - * |
|
188 | - * @param array{ |
|
189 | - * username: string, // The username of the user to change the password for |
|
190 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
191 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
192 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
193 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
194 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
195 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
196 | - * body: array, // (REQUIRED) the new password for the user |
|
197 | - * } $params |
|
198 | - * |
|
199 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
200 | - * @throws ClientResponseException if the status code of response is 4xx |
|
201 | - * @throws ServerResponseException if the status code of response is 5xx |
|
202 | - * |
|
203 | - * @return Elasticsearch|Promise |
|
204 | - */ |
|
205 | - public function changePassword(array $params = []) |
|
206 | - { |
|
207 | - $this->checkRequiredParameters(['body'], $params); |
|
208 | - if (isset($params['username'])) { |
|
209 | - $url = '/_security/user/' . $this->encode($params['username']) . '/_password'; |
|
210 | - $method = 'PUT'; |
|
211 | - } else { |
|
212 | - $url = '/_security/user/_password'; |
|
213 | - $method = 'PUT'; |
|
214 | - } |
|
215 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
216 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
217 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
218 | - $request = $this->addOtelAttributes($params, ['username'], $request, 'security.change_password'); |
|
219 | - return $this->client->sendRequest($request); |
|
220 | - } |
|
221 | - /** |
|
222 | - * Clear a subset or all entries from the API key cache. |
|
223 | - * |
|
224 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-api-key-cache.html |
|
225 | - * |
|
226 | - * @param array{ |
|
227 | - * ids: list, // (REQUIRED) A comma-separated list of IDs of API keys to clear from the cache |
|
228 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
229 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
230 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
231 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
232 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
233 | - * } $params |
|
234 | - * |
|
235 | - * @throws MissingParameterException if a required parameter is missing |
|
236 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
237 | - * @throws ClientResponseException if the status code of response is 4xx |
|
238 | - * @throws ServerResponseException if the status code of response is 5xx |
|
239 | - * |
|
240 | - * @return Elasticsearch|Promise |
|
241 | - */ |
|
242 | - public function clearApiKeyCache(array $params = []) |
|
243 | - { |
|
244 | - $this->checkRequiredParameters(['ids'], $params); |
|
245 | - $url = '/_security/api_key/' . $this->encode($params['ids']) . '/_clear_cache'; |
|
246 | - $method = 'POST'; |
|
247 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
248 | - $headers = ['Accept' => 'application/json']; |
|
249 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
250 | - $request = $this->addOtelAttributes($params, ['ids'], $request, 'security.clear_api_key_cache'); |
|
251 | - return $this->client->sendRequest($request); |
|
252 | - } |
|
253 | - /** |
|
254 | - * Evicts application privileges from the native application privileges cache. |
|
255 | - * |
|
256 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-privilege-cache.html |
|
257 | - * |
|
258 | - * @param array{ |
|
259 | - * application: list, // (REQUIRED) A comma-separated list of application names |
|
260 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
261 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
262 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
263 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
264 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
265 | - * } $params |
|
266 | - * |
|
267 | - * @throws MissingParameterException if a required parameter is missing |
|
268 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
269 | - * @throws ClientResponseException if the status code of response is 4xx |
|
270 | - * @throws ServerResponseException if the status code of response is 5xx |
|
271 | - * |
|
272 | - * @return Elasticsearch|Promise |
|
273 | - */ |
|
274 | - public function clearCachedPrivileges(array $params = []) |
|
275 | - { |
|
276 | - $this->checkRequiredParameters(['application'], $params); |
|
277 | - $url = '/_security/privilege/' . $this->encode($params['application']) . '/_clear_cache'; |
|
278 | - $method = 'POST'; |
|
279 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
280 | - $headers = ['Accept' => 'application/json']; |
|
281 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
282 | - $request = $this->addOtelAttributes($params, ['application'], $request, 'security.clear_cached_privileges'); |
|
283 | - return $this->client->sendRequest($request); |
|
284 | - } |
|
285 | - /** |
|
286 | - * Evicts users from the user cache. Can completely clear the cache or evict specific users. |
|
287 | - * |
|
288 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-cache.html |
|
289 | - * |
|
290 | - * @param array{ |
|
291 | - * realms: list, // (REQUIRED) Comma-separated list of realms to clear |
|
292 | - * usernames: list, // Comma-separated list of usernames to clear from the cache |
|
293 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
294 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
295 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
296 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
297 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
298 | - * } $params |
|
299 | - * |
|
300 | - * @throws MissingParameterException if a required parameter is missing |
|
301 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
302 | - * @throws ClientResponseException if the status code of response is 4xx |
|
303 | - * @throws ServerResponseException if the status code of response is 5xx |
|
304 | - * |
|
305 | - * @return Elasticsearch|Promise |
|
306 | - */ |
|
307 | - public function clearCachedRealms(array $params = []) |
|
308 | - { |
|
309 | - $this->checkRequiredParameters(['realms'], $params); |
|
310 | - $url = '/_security/realm/' . $this->encode($params['realms']) . '/_clear_cache'; |
|
311 | - $method = 'POST'; |
|
312 | - $url = $this->addQueryString($url, $params, ['usernames', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
313 | - $headers = ['Accept' => 'application/json']; |
|
314 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
315 | - $request = $this->addOtelAttributes($params, ['realms'], $request, 'security.clear_cached_realms'); |
|
316 | - return $this->client->sendRequest($request); |
|
317 | - } |
|
318 | - /** |
|
319 | - * Evicts roles from the native role cache. |
|
320 | - * |
|
321 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-role-cache.html |
|
322 | - * |
|
323 | - * @param array{ |
|
324 | - * name: list, // (REQUIRED) Role name |
|
325 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
326 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
327 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
328 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
329 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
330 | - * } $params |
|
331 | - * |
|
332 | - * @throws MissingParameterException if a required parameter is missing |
|
333 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
334 | - * @throws ClientResponseException if the status code of response is 4xx |
|
335 | - * @throws ServerResponseException if the status code of response is 5xx |
|
336 | - * |
|
337 | - * @return Elasticsearch|Promise |
|
338 | - */ |
|
339 | - public function clearCachedRoles(array $params = []) |
|
340 | - { |
|
341 | - $this->checkRequiredParameters(['name'], $params); |
|
342 | - $url = '/_security/role/' . $this->encode($params['name']) . '/_clear_cache'; |
|
343 | - $method = 'POST'; |
|
344 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
345 | - $headers = ['Accept' => 'application/json']; |
|
346 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
347 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'security.clear_cached_roles'); |
|
348 | - return $this->client->sendRequest($request); |
|
349 | - } |
|
350 | - /** |
|
351 | - * Evicts tokens from the service account token caches. |
|
352 | - * |
|
353 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-service-token-caches.html |
|
354 | - * |
|
355 | - * @param array{ |
|
356 | - * namespace: string, // (REQUIRED) An identifier for the namespace |
|
357 | - * service: string, // (REQUIRED) An identifier for the service name |
|
358 | - * name: list, // (REQUIRED) A comma-separated list of service token names |
|
359 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
360 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
361 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
362 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
363 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
364 | - * } $params |
|
365 | - * |
|
366 | - * @throws MissingParameterException if a required parameter is missing |
|
367 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
368 | - * @throws ClientResponseException if the status code of response is 4xx |
|
369 | - * @throws ServerResponseException if the status code of response is 5xx |
|
370 | - * |
|
371 | - * @return Elasticsearch|Promise |
|
372 | - */ |
|
373 | - public function clearCachedServiceTokens(array $params = []) |
|
374 | - { |
|
375 | - $this->checkRequiredParameters(['namespace', 'service', 'name'], $params); |
|
376 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']) . '/_clear_cache'; |
|
377 | - $method = 'POST'; |
|
378 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
379 | - $headers = ['Accept' => 'application/json']; |
|
380 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
381 | - $request = $this->addOtelAttributes($params, ['namespace', 'service', 'name'], $request, 'security.clear_cached_service_tokens'); |
|
382 | - return $this->client->sendRequest($request); |
|
383 | - } |
|
384 | - /** |
|
385 | - * Creates an API key for access without requiring basic authentication. |
|
386 | - * |
|
387 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-api-key.html |
|
388 | - * |
|
389 | - * @param array{ |
|
390 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
391 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
392 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
393 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
394 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
395 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
396 | - * body: array, // (REQUIRED) The api key request to create an API key |
|
397 | - * } $params |
|
398 | - * |
|
399 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
400 | - * @throws ClientResponseException if the status code of response is 4xx |
|
401 | - * @throws ServerResponseException if the status code of response is 5xx |
|
402 | - * |
|
403 | - * @return Elasticsearch|Promise |
|
404 | - */ |
|
405 | - public function createApiKey(array $params = []) |
|
406 | - { |
|
407 | - $this->checkRequiredParameters(['body'], $params); |
|
408 | - $url = '/_security/api_key'; |
|
409 | - $method = 'PUT'; |
|
410 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
411 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
412 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
413 | - $request = $this->addOtelAttributes($params, [], $request, 'security.create_api_key'); |
|
414 | - return $this->client->sendRequest($request); |
|
415 | - } |
|
416 | - /** |
|
417 | - * Creates a cross-cluster API key for API key based remote cluster access. |
|
418 | - * |
|
419 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-cross-cluster-api-key.html |
|
420 | - * |
|
421 | - * @param array{ |
|
422 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
423 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
424 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
425 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
426 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
427 | - * body: array, // (REQUIRED) The request to create a cross-cluster API key |
|
428 | - * } $params |
|
429 | - * |
|
430 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
431 | - * @throws ClientResponseException if the status code of response is 4xx |
|
432 | - * @throws ServerResponseException if the status code of response is 5xx |
|
433 | - * |
|
434 | - * @return Elasticsearch|Promise |
|
435 | - */ |
|
436 | - public function createCrossClusterApiKey(array $params = []) |
|
437 | - { |
|
438 | - $this->checkRequiredParameters(['body'], $params); |
|
439 | - $url = '/_security/cross_cluster/api_key'; |
|
440 | - $method = 'POST'; |
|
441 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
442 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
443 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
444 | - $request = $this->addOtelAttributes($params, [], $request, 'security.create_cross_cluster_api_key'); |
|
445 | - return $this->client->sendRequest($request); |
|
446 | - } |
|
447 | - /** |
|
448 | - * Creates a service account token for access without requiring basic authentication. |
|
449 | - * |
|
450 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-service-token.html |
|
451 | - * |
|
452 | - * @param array{ |
|
453 | - * namespace: string, // (REQUIRED) An identifier for the namespace |
|
454 | - * service: string, // (REQUIRED) An identifier for the service name |
|
455 | - * name: string, // An identifier for the token name |
|
456 | - * refresh: enum, // If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` (the default) then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
457 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
458 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
459 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
460 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
461 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
462 | - * } $params |
|
463 | - * |
|
464 | - * @throws MissingParameterException if a required parameter is missing |
|
465 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
466 | - * @throws ClientResponseException if the status code of response is 4xx |
|
467 | - * @throws ServerResponseException if the status code of response is 5xx |
|
468 | - * |
|
469 | - * @return Elasticsearch|Promise |
|
470 | - */ |
|
471 | - public function createServiceToken(array $params = []) |
|
472 | - { |
|
473 | - $this->checkRequiredParameters(['namespace', 'service'], $params); |
|
474 | - if (isset($params['name'])) { |
|
475 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']); |
|
476 | - $method = 'PUT'; |
|
477 | - } else { |
|
478 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token'; |
|
479 | - $method = 'POST'; |
|
480 | - } |
|
481 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
482 | - $headers = ['Accept' => 'application/json']; |
|
483 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
484 | - $request = $this->addOtelAttributes($params, ['namespace', 'service', 'name'], $request, 'security.create_service_token'); |
|
485 | - return $this->client->sendRequest($request); |
|
486 | - } |
|
487 | - /** |
|
488 | - * Removes application privileges. |
|
489 | - * |
|
490 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-privilege.html |
|
491 | - * |
|
492 | - * @param array{ |
|
493 | - * application: string, // (REQUIRED) Application name |
|
494 | - * name: string, // (REQUIRED) Privilege name |
|
495 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
496 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
497 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
498 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
499 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
500 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
501 | - * } $params |
|
502 | - * |
|
503 | - * @throws MissingParameterException if a required parameter is missing |
|
504 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
505 | - * @throws ClientResponseException if the status code of response is 4xx |
|
506 | - * @throws ServerResponseException if the status code of response is 5xx |
|
507 | - * |
|
508 | - * @return Elasticsearch|Promise |
|
509 | - */ |
|
510 | - public function deletePrivileges(array $params = []) |
|
511 | - { |
|
512 | - $this->checkRequiredParameters(['application', 'name'], $params); |
|
513 | - $url = '/_security/privilege/' . $this->encode($params['application']) . '/' . $this->encode($params['name']); |
|
514 | - $method = 'DELETE'; |
|
515 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
516 | - $headers = ['Accept' => 'application/json']; |
|
517 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
518 | - $request = $this->addOtelAttributes($params, ['application', 'name'], $request, 'security.delete_privileges'); |
|
519 | - return $this->client->sendRequest($request); |
|
520 | - } |
|
521 | - /** |
|
522 | - * Removes roles in the native realm. |
|
523 | - * |
|
524 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-role.html |
|
525 | - * |
|
526 | - * @param array{ |
|
527 | - * name: string, // (REQUIRED) Role name |
|
528 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
529 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
530 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
531 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
532 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
533 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
534 | - * } $params |
|
535 | - * |
|
536 | - * @throws MissingParameterException if a required parameter is missing |
|
537 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
538 | - * @throws ClientResponseException if the status code of response is 4xx |
|
539 | - * @throws ServerResponseException if the status code of response is 5xx |
|
540 | - * |
|
541 | - * @return Elasticsearch|Promise |
|
542 | - */ |
|
543 | - public function deleteRole(array $params = []) |
|
544 | - { |
|
545 | - $this->checkRequiredParameters(['name'], $params); |
|
546 | - $url = '/_security/role/' . $this->encode($params['name']); |
|
547 | - $method = 'DELETE'; |
|
548 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
549 | - $headers = ['Accept' => 'application/json']; |
|
550 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
551 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'security.delete_role'); |
|
552 | - return $this->client->sendRequest($request); |
|
553 | - } |
|
554 | - /** |
|
555 | - * Removes role mappings. |
|
556 | - * |
|
557 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-role-mapping.html |
|
558 | - * |
|
559 | - * @param array{ |
|
560 | - * name: string, // (REQUIRED) Role-mapping name |
|
561 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
562 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
563 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
564 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
565 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
566 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
567 | - * } $params |
|
568 | - * |
|
569 | - * @throws MissingParameterException if a required parameter is missing |
|
570 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
571 | - * @throws ClientResponseException if the status code of response is 4xx |
|
572 | - * @throws ServerResponseException if the status code of response is 5xx |
|
573 | - * |
|
574 | - * @return Elasticsearch|Promise |
|
575 | - */ |
|
576 | - public function deleteRoleMapping(array $params = []) |
|
577 | - { |
|
578 | - $this->checkRequiredParameters(['name'], $params); |
|
579 | - $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
580 | - $method = 'DELETE'; |
|
581 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
582 | - $headers = ['Accept' => 'application/json']; |
|
583 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
584 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'security.delete_role_mapping'); |
|
585 | - return $this->client->sendRequest($request); |
|
586 | - } |
|
587 | - /** |
|
588 | - * Deletes a service account token. |
|
589 | - * |
|
590 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-service-token.html |
|
591 | - * |
|
592 | - * @param array{ |
|
593 | - * namespace: string, // (REQUIRED) An identifier for the namespace |
|
594 | - * service: string, // (REQUIRED) An identifier for the service name |
|
595 | - * name: string, // (REQUIRED) An identifier for the token name |
|
596 | - * refresh: enum, // If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` (the default) then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
597 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
598 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
599 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
600 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
601 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
602 | - * } $params |
|
603 | - * |
|
604 | - * @throws MissingParameterException if a required parameter is missing |
|
605 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
606 | - * @throws ClientResponseException if the status code of response is 4xx |
|
607 | - * @throws ServerResponseException if the status code of response is 5xx |
|
608 | - * |
|
609 | - * @return Elasticsearch|Promise |
|
610 | - */ |
|
611 | - public function deleteServiceToken(array $params = []) |
|
612 | - { |
|
613 | - $this->checkRequiredParameters(['namespace', 'service', 'name'], $params); |
|
614 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']); |
|
615 | - $method = 'DELETE'; |
|
616 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
617 | - $headers = ['Accept' => 'application/json']; |
|
618 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
619 | - $request = $this->addOtelAttributes($params, ['namespace', 'service', 'name'], $request, 'security.delete_service_token'); |
|
620 | - return $this->client->sendRequest($request); |
|
621 | - } |
|
622 | - /** |
|
623 | - * Deletes users from the native realm. |
|
624 | - * |
|
625 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-user.html |
|
626 | - * |
|
627 | - * @param array{ |
|
628 | - * username: string, // (REQUIRED) username |
|
629 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
630 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
631 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
632 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
633 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
634 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
635 | - * } $params |
|
636 | - * |
|
637 | - * @throws MissingParameterException if a required parameter is missing |
|
638 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
639 | - * @throws ClientResponseException if the status code of response is 4xx |
|
640 | - * @throws ServerResponseException if the status code of response is 5xx |
|
641 | - * |
|
642 | - * @return Elasticsearch|Promise |
|
643 | - */ |
|
644 | - public function deleteUser(array $params = []) |
|
645 | - { |
|
646 | - $this->checkRequiredParameters(['username'], $params); |
|
647 | - $url = '/_security/user/' . $this->encode($params['username']); |
|
648 | - $method = 'DELETE'; |
|
649 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
650 | - $headers = ['Accept' => 'application/json']; |
|
651 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
652 | - $request = $this->addOtelAttributes($params, ['username'], $request, 'security.delete_user'); |
|
653 | - return $this->client->sendRequest($request); |
|
654 | - } |
|
655 | - /** |
|
656 | - * Disables users in the native realm. |
|
657 | - * |
|
658 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-disable-user.html |
|
659 | - * |
|
660 | - * @param array{ |
|
661 | - * username: string, // (REQUIRED) The username of the user to disable |
|
662 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
663 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
664 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
665 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
666 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
667 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
668 | - * } $params |
|
669 | - * |
|
670 | - * @throws MissingParameterException if a required parameter is missing |
|
671 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
672 | - * @throws ClientResponseException if the status code of response is 4xx |
|
673 | - * @throws ServerResponseException if the status code of response is 5xx |
|
674 | - * |
|
675 | - * @return Elasticsearch|Promise |
|
676 | - */ |
|
677 | - public function disableUser(array $params = []) |
|
678 | - { |
|
679 | - $this->checkRequiredParameters(['username'], $params); |
|
680 | - $url = '/_security/user/' . $this->encode($params['username']) . '/_disable'; |
|
681 | - $method = 'PUT'; |
|
682 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
683 | - $headers = ['Accept' => 'application/json']; |
|
684 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
685 | - $request = $this->addOtelAttributes($params, ['username'], $request, 'security.disable_user'); |
|
686 | - return $this->client->sendRequest($request); |
|
687 | - } |
|
688 | - /** |
|
689 | - * Disables a user profile so it's not visible in user profile searches. |
|
690 | - * |
|
691 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-disable-user-profile.html |
|
692 | - * |
|
693 | - * @param array{ |
|
694 | - * uid: string, // (REQUIRED) Unique identifier for the user profile |
|
695 | - * refresh: enum, // If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` (the default) then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
696 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
697 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
698 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
699 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
700 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
701 | - * } $params |
|
702 | - * |
|
703 | - * @throws MissingParameterException if a required parameter is missing |
|
704 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
705 | - * @throws ClientResponseException if the status code of response is 4xx |
|
706 | - * @throws ServerResponseException if the status code of response is 5xx |
|
707 | - * |
|
708 | - * @return Elasticsearch|Promise |
|
709 | - */ |
|
710 | - public function disableUserProfile(array $params = []) |
|
711 | - { |
|
712 | - $this->checkRequiredParameters(['uid'], $params); |
|
713 | - $url = '/_security/profile/' . $this->encode($params['uid']) . '/_disable'; |
|
714 | - $method = 'PUT'; |
|
715 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
716 | - $headers = ['Accept' => 'application/json']; |
|
717 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
718 | - $request = $this->addOtelAttributes($params, ['uid'], $request, 'security.disable_user_profile'); |
|
719 | - return $this->client->sendRequest($request); |
|
720 | - } |
|
721 | - /** |
|
722 | - * Enables users in the native realm. |
|
723 | - * |
|
724 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-enable-user.html |
|
725 | - * |
|
726 | - * @param array{ |
|
727 | - * username: string, // (REQUIRED) The username of the user to enable |
|
728 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
729 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
730 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
731 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
732 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
733 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
734 | - * } $params |
|
735 | - * |
|
736 | - * @throws MissingParameterException if a required parameter is missing |
|
737 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
738 | - * @throws ClientResponseException if the status code of response is 4xx |
|
739 | - * @throws ServerResponseException if the status code of response is 5xx |
|
740 | - * |
|
741 | - * @return Elasticsearch|Promise |
|
742 | - */ |
|
743 | - public function enableUser(array $params = []) |
|
744 | - { |
|
745 | - $this->checkRequiredParameters(['username'], $params); |
|
746 | - $url = '/_security/user/' . $this->encode($params['username']) . '/_enable'; |
|
747 | - $method = 'PUT'; |
|
748 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
749 | - $headers = ['Accept' => 'application/json']; |
|
750 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
751 | - $request = $this->addOtelAttributes($params, ['username'], $request, 'security.enable_user'); |
|
752 | - return $this->client->sendRequest($request); |
|
753 | - } |
|
754 | - /** |
|
755 | - * Enables a user profile so it's visible in user profile searches. |
|
756 | - * |
|
757 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-enable-user-profile.html |
|
758 | - * |
|
759 | - * @param array{ |
|
760 | - * uid: string, // (REQUIRED) An unique identifier of the user profile |
|
761 | - * refresh: enum, // If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` (the default) then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
762 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
763 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
764 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
765 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
766 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
767 | - * } $params |
|
768 | - * |
|
769 | - * @throws MissingParameterException if a required parameter is missing |
|
770 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
771 | - * @throws ClientResponseException if the status code of response is 4xx |
|
772 | - * @throws ServerResponseException if the status code of response is 5xx |
|
773 | - * |
|
774 | - * @return Elasticsearch|Promise |
|
775 | - */ |
|
776 | - public function enableUserProfile(array $params = []) |
|
777 | - { |
|
778 | - $this->checkRequiredParameters(['uid'], $params); |
|
779 | - $url = '/_security/profile/' . $this->encode($params['uid']) . '/_enable'; |
|
780 | - $method = 'PUT'; |
|
781 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
782 | - $headers = ['Accept' => 'application/json']; |
|
783 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
784 | - $request = $this->addOtelAttributes($params, ['uid'], $request, 'security.enable_user_profile'); |
|
785 | - return $this->client->sendRequest($request); |
|
786 | - } |
|
787 | - /** |
|
788 | - * Allows a kibana instance to configure itself to communicate with a secured elasticsearch cluster. |
|
789 | - * |
|
790 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-kibana-enrollment.html |
|
791 | - * |
|
792 | - * @param array{ |
|
793 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
794 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
795 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
796 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
797 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
798 | - * } $params |
|
799 | - * |
|
800 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
801 | - * @throws ClientResponseException if the status code of response is 4xx |
|
802 | - * @throws ServerResponseException if the status code of response is 5xx |
|
803 | - * |
|
804 | - * @return Elasticsearch|Promise |
|
805 | - */ |
|
806 | - public function enrollKibana(array $params = []) |
|
807 | - { |
|
808 | - $url = '/_security/enroll/kibana'; |
|
809 | - $method = 'GET'; |
|
810 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
811 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
812 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
813 | - $request = $this->addOtelAttributes($params, [], $request, 'security.enroll_kibana'); |
|
814 | - return $this->client->sendRequest($request); |
|
815 | - } |
|
816 | - /** |
|
817 | - * Allows a new node to enroll to an existing cluster with security enabled. |
|
818 | - * |
|
819 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-node-enrollment.html |
|
820 | - * |
|
821 | - * @param array{ |
|
822 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
823 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
824 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
825 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
826 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
827 | - * } $params |
|
828 | - * |
|
829 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
830 | - * @throws ClientResponseException if the status code of response is 4xx |
|
831 | - * @throws ServerResponseException if the status code of response is 5xx |
|
832 | - * |
|
833 | - * @return Elasticsearch|Promise |
|
834 | - */ |
|
835 | - public function enrollNode(array $params = []) |
|
836 | - { |
|
837 | - $url = '/_security/enroll/node'; |
|
838 | - $method = 'GET'; |
|
839 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
840 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
841 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
842 | - $request = $this->addOtelAttributes($params, [], $request, 'security.enroll_node'); |
|
843 | - return $this->client->sendRequest($request); |
|
844 | - } |
|
845 | - /** |
|
846 | - * Retrieves information for one or more API keys. |
|
847 | - * |
|
848 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-api-key.html |
|
849 | - * |
|
850 | - * @param array{ |
|
851 | - * id: string, // API key id of the API key to be retrieved |
|
852 | - * name: string, // API key name of the API key to be retrieved |
|
853 | - * username: string, // user name of the user who created this API key to be retrieved |
|
854 | - * realm_name: string, // realm name of the user who created this API key to be retrieved |
|
855 | - * owner: boolean, // flag to query API keys owned by the currently authenticated user |
|
856 | - * with_limited_by: boolean, // flag to show the limited-by role descriptors of API Keys |
|
857 | - * with_profile_uid: boolean, // flag to also retrieve the API Key's owner profile uid, if it exists |
|
858 | - * active_only: boolean, // flag to limit response to only active (not invalidated or expired) API keys |
|
859 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
860 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
861 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
862 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
863 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
864 | - * } $params |
|
865 | - * |
|
866 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
867 | - * @throws ClientResponseException if the status code of response is 4xx |
|
868 | - * @throws ServerResponseException if the status code of response is 5xx |
|
869 | - * |
|
870 | - * @return Elasticsearch|Promise |
|
871 | - */ |
|
872 | - public function getApiKey(array $params = []) |
|
873 | - { |
|
874 | - $url = '/_security/api_key'; |
|
875 | - $method = 'GET'; |
|
876 | - $url = $this->addQueryString($url, $params, ['id', 'name', 'username', 'realm_name', 'owner', 'with_limited_by', 'with_profile_uid', 'active_only', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
877 | - $headers = ['Accept' => 'application/json']; |
|
878 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
879 | - $request = $this->addOtelAttributes($params, [], $request, 'security.get_api_key'); |
|
880 | - return $this->client->sendRequest($request); |
|
881 | - } |
|
882 | - /** |
|
883 | - * Retrieves the list of cluster privileges and index privileges that are available in this version of Elasticsearch. |
|
884 | - * |
|
885 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-builtin-privileges.html |
|
886 | - * |
|
887 | - * @param array{ |
|
888 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
889 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
890 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
891 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
892 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
893 | - * } $params |
|
894 | - * |
|
895 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
896 | - * @throws ClientResponseException if the status code of response is 4xx |
|
897 | - * @throws ServerResponseException if the status code of response is 5xx |
|
898 | - * |
|
899 | - * @return Elasticsearch|Promise |
|
900 | - */ |
|
901 | - public function getBuiltinPrivileges(array $params = []) |
|
902 | - { |
|
903 | - $url = '/_security/privilege/_builtin'; |
|
904 | - $method = 'GET'; |
|
905 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
906 | - $headers = ['Accept' => 'application/json']; |
|
907 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
908 | - $request = $this->addOtelAttributes($params, [], $request, 'security.get_builtin_privileges'); |
|
909 | - return $this->client->sendRequest($request); |
|
910 | - } |
|
911 | - /** |
|
912 | - * Retrieves application privileges. |
|
913 | - * |
|
914 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-privileges.html |
|
915 | - * |
|
916 | - * @param array{ |
|
917 | - * application: string, // Application name |
|
918 | - * name: string, // Privilege name |
|
919 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
920 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
921 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
922 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
923 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
924 | - * } $params |
|
925 | - * |
|
926 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
927 | - * @throws ClientResponseException if the status code of response is 4xx |
|
928 | - * @throws ServerResponseException if the status code of response is 5xx |
|
929 | - * |
|
930 | - * @return Elasticsearch|Promise |
|
931 | - */ |
|
932 | - public function getPrivileges(array $params = []) |
|
933 | - { |
|
934 | - if (isset($params['application']) && isset($params['name'])) { |
|
935 | - $url = '/_security/privilege/' . $this->encode($params['application']) . '/' . $this->encode($params['name']); |
|
936 | - $method = 'GET'; |
|
937 | - } elseif (isset($params['application'])) { |
|
938 | - $url = '/_security/privilege/' . $this->encode($params['application']); |
|
939 | - $method = 'GET'; |
|
940 | - } else { |
|
941 | - $url = '/_security/privilege'; |
|
942 | - $method = 'GET'; |
|
943 | - } |
|
944 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
945 | - $headers = ['Accept' => 'application/json']; |
|
946 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
947 | - $request = $this->addOtelAttributes($params, ['application', 'name'], $request, 'security.get_privileges'); |
|
948 | - return $this->client->sendRequest($request); |
|
949 | - } |
|
950 | - /** |
|
951 | - * Retrieves roles in the native realm. |
|
952 | - * |
|
953 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-role.html |
|
954 | - * |
|
955 | - * @param array{ |
|
956 | - * name: list, // A comma-separated list of role names |
|
957 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
958 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
959 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
960 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
961 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
962 | - * } $params |
|
963 | - * |
|
964 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
965 | - * @throws ClientResponseException if the status code of response is 4xx |
|
966 | - * @throws ServerResponseException if the status code of response is 5xx |
|
967 | - * |
|
968 | - * @return Elasticsearch|Promise |
|
969 | - */ |
|
970 | - public function getRole(array $params = []) |
|
971 | - { |
|
972 | - if (isset($params['name'])) { |
|
973 | - $url = '/_security/role/' . $this->encode($params['name']); |
|
974 | - $method = 'GET'; |
|
975 | - } else { |
|
976 | - $url = '/_security/role'; |
|
977 | - $method = 'GET'; |
|
978 | - } |
|
979 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
980 | - $headers = ['Accept' => 'application/json']; |
|
981 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
982 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'security.get_role'); |
|
983 | - return $this->client->sendRequest($request); |
|
984 | - } |
|
985 | - /** |
|
986 | - * Retrieves role mappings. |
|
987 | - * |
|
988 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-role-mapping.html |
|
989 | - * |
|
990 | - * @param array{ |
|
991 | - * name: list, // A comma-separated list of role-mapping names |
|
992 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
993 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
994 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
995 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
996 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
997 | - * } $params |
|
998 | - * |
|
999 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1000 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1001 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1002 | - * |
|
1003 | - * @return Elasticsearch|Promise |
|
1004 | - */ |
|
1005 | - public function getRoleMapping(array $params = []) |
|
1006 | - { |
|
1007 | - if (isset($params['name'])) { |
|
1008 | - $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
1009 | - $method = 'GET'; |
|
1010 | - } else { |
|
1011 | - $url = '/_security/role_mapping'; |
|
1012 | - $method = 'GET'; |
|
1013 | - } |
|
1014 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1015 | - $headers = ['Accept' => 'application/json']; |
|
1016 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1017 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'security.get_role_mapping'); |
|
1018 | - return $this->client->sendRequest($request); |
|
1019 | - } |
|
1020 | - /** |
|
1021 | - * Retrieves information about service accounts. |
|
1022 | - * |
|
1023 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-service-accounts.html |
|
1024 | - * |
|
1025 | - * @param array{ |
|
1026 | - * namespace: string, // An identifier for the namespace |
|
1027 | - * service: string, // An identifier for the service name |
|
1028 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1029 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1030 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1031 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1032 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1033 | - * } $params |
|
1034 | - * |
|
1035 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1036 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1037 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1038 | - * |
|
1039 | - * @return Elasticsearch|Promise |
|
1040 | - */ |
|
1041 | - public function getServiceAccounts(array $params = []) |
|
1042 | - { |
|
1043 | - if (isset($params['namespace']) && isset($params['service'])) { |
|
1044 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']); |
|
1045 | - $method = 'GET'; |
|
1046 | - } elseif (isset($params['namespace'])) { |
|
1047 | - $url = '/_security/service/' . $this->encode($params['namespace']); |
|
1048 | - $method = 'GET'; |
|
1049 | - } else { |
|
1050 | - $url = '/_security/service'; |
|
1051 | - $method = 'GET'; |
|
1052 | - } |
|
1053 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1054 | - $headers = ['Accept' => 'application/json']; |
|
1055 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1056 | - $request = $this->addOtelAttributes($params, ['namespace', 'service'], $request, 'security.get_service_accounts'); |
|
1057 | - return $this->client->sendRequest($request); |
|
1058 | - } |
|
1059 | - /** |
|
1060 | - * Retrieves information of all service credentials for a service account. |
|
1061 | - * |
|
1062 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-service-credentials.html |
|
1063 | - * |
|
1064 | - * @param array{ |
|
1065 | - * namespace: string, // (REQUIRED) An identifier for the namespace |
|
1066 | - * service: string, // (REQUIRED) An identifier for the service name |
|
1067 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1068 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1069 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1070 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1071 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1072 | - * } $params |
|
1073 | - * |
|
1074 | - * @throws MissingParameterException if a required parameter is missing |
|
1075 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1076 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1077 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1078 | - * |
|
1079 | - * @return Elasticsearch|Promise |
|
1080 | - */ |
|
1081 | - public function getServiceCredentials(array $params = []) |
|
1082 | - { |
|
1083 | - $this->checkRequiredParameters(['namespace', 'service'], $params); |
|
1084 | - $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential'; |
|
1085 | - $method = 'GET'; |
|
1086 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1087 | - $headers = ['Accept' => 'application/json']; |
|
1088 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1089 | - $request = $this->addOtelAttributes($params, ['namespace', 'service'], $request, 'security.get_service_credentials'); |
|
1090 | - return $this->client->sendRequest($request); |
|
1091 | - } |
|
1092 | - /** |
|
1093 | - * Retrieve settings for the security system indices |
|
1094 | - * |
|
1095 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-settings.html |
|
1096 | - * |
|
1097 | - * @param array{ |
|
1098 | - * master_timeout: time, // Timeout for connection to master |
|
1099 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1100 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1101 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1102 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1103 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1104 | - * } $params |
|
1105 | - * |
|
1106 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1107 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1108 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1109 | - * |
|
1110 | - * @return Elasticsearch|Promise |
|
1111 | - */ |
|
1112 | - public function getSettings(array $params = []) |
|
1113 | - { |
|
1114 | - $url = '/_security/settings'; |
|
1115 | - $method = 'GET'; |
|
1116 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1117 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1118 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1119 | - $request = $this->addOtelAttributes($params, [], $request, 'security.get_settings'); |
|
1120 | - return $this->client->sendRequest($request); |
|
1121 | - } |
|
1122 | - /** |
|
1123 | - * Creates a bearer token for access without requiring basic authentication. |
|
1124 | - * |
|
1125 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-token.html |
|
1126 | - * |
|
1127 | - * @param array{ |
|
1128 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1129 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1130 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1131 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1132 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1133 | - * body: array, // (REQUIRED) The token request to get |
|
1134 | - * } $params |
|
1135 | - * |
|
1136 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1137 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1138 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1139 | - * |
|
1140 | - * @return Elasticsearch|Promise |
|
1141 | - */ |
|
1142 | - public function getToken(array $params = []) |
|
1143 | - { |
|
1144 | - $this->checkRequiredParameters(['body'], $params); |
|
1145 | - $url = '/_security/oauth2/token'; |
|
1146 | - $method = 'POST'; |
|
1147 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1148 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1149 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1150 | - $request = $this->addOtelAttributes($params, [], $request, 'security.get_token'); |
|
1151 | - return $this->client->sendRequest($request); |
|
1152 | - } |
|
1153 | - /** |
|
1154 | - * Retrieves information about users in the native realm and built-in users. |
|
1155 | - * |
|
1156 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-user.html |
|
1157 | - * |
|
1158 | - * @param array{ |
|
1159 | - * username: list, // A comma-separated list of usernames |
|
1160 | - * with_profile_uid: boolean, // flag to retrieve profile uid (if exists) associated to the user |
|
1161 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1162 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1163 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1164 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1165 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1166 | - * } $params |
|
1167 | - * |
|
1168 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1169 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1170 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1171 | - * |
|
1172 | - * @return Elasticsearch|Promise |
|
1173 | - */ |
|
1174 | - public function getUser(array $params = []) |
|
1175 | - { |
|
1176 | - if (isset($params['username'])) { |
|
1177 | - $url = '/_security/user/' . $this->encode($params['username']); |
|
1178 | - $method = 'GET'; |
|
1179 | - } else { |
|
1180 | - $url = '/_security/user'; |
|
1181 | - $method = 'GET'; |
|
1182 | - } |
|
1183 | - $url = $this->addQueryString($url, $params, ['with_profile_uid', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1184 | - $headers = ['Accept' => 'application/json']; |
|
1185 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1186 | - $request = $this->addOtelAttributes($params, ['username'], $request, 'security.get_user'); |
|
1187 | - return $this->client->sendRequest($request); |
|
1188 | - } |
|
1189 | - /** |
|
1190 | - * Retrieves security privileges for the logged in user. |
|
1191 | - * |
|
1192 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-user-privileges.html |
|
1193 | - * |
|
1194 | - * @param array{ |
|
1195 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1196 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1197 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1198 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1199 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1200 | - * } $params |
|
1201 | - * |
|
1202 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1203 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1204 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1205 | - * |
|
1206 | - * @return Elasticsearch|Promise |
|
1207 | - */ |
|
1208 | - public function getUserPrivileges(array $params = []) |
|
1209 | - { |
|
1210 | - $url = '/_security/user/_privileges'; |
|
1211 | - $method = 'GET'; |
|
1212 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1213 | - $headers = ['Accept' => 'application/json']; |
|
1214 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1215 | - $request = $this->addOtelAttributes($params, [], $request, 'security.get_user_privileges'); |
|
1216 | - return $this->client->sendRequest($request); |
|
1217 | - } |
|
1218 | - /** |
|
1219 | - * Retrieves user profiles for the given unique ID(s). |
|
1220 | - * |
|
1221 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-user-profile.html |
|
1222 | - * |
|
1223 | - * @param array{ |
|
1224 | - * uid: list, // (REQUIRED) A comma-separated list of unique identifier for user profiles |
|
1225 | - * data: list, // A comma-separated list of keys for which the corresponding application data are retrieved. |
|
1226 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1227 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1228 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1229 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1230 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1231 | - * } $params |
|
1232 | - * |
|
1233 | - * @throws MissingParameterException if a required parameter is missing |
|
1234 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1235 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1236 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1237 | - * |
|
1238 | - * @return Elasticsearch|Promise |
|
1239 | - */ |
|
1240 | - public function getUserProfile(array $params = []) |
|
1241 | - { |
|
1242 | - $this->checkRequiredParameters(['uid'], $params); |
|
1243 | - $url = '/_security/profile/' . $this->encode($params['uid']); |
|
1244 | - $method = 'GET'; |
|
1245 | - $url = $this->addQueryString($url, $params, ['data', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1246 | - $headers = ['Accept' => 'application/json']; |
|
1247 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1248 | - $request = $this->addOtelAttributes($params, ['uid'], $request, 'security.get_user_profile'); |
|
1249 | - return $this->client->sendRequest($request); |
|
1250 | - } |
|
1251 | - /** |
|
1252 | - * Creates an API key on behalf of another user. |
|
1253 | - * |
|
1254 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-grant-api-key.html |
|
1255 | - * |
|
1256 | - * @param array{ |
|
1257 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1258 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1259 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1260 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1261 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1262 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1263 | - * body: array, // (REQUIRED) The api key request to create an API key |
|
1264 | - * } $params |
|
1265 | - * |
|
1266 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1267 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1268 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1269 | - * |
|
1270 | - * @return Elasticsearch|Promise |
|
1271 | - */ |
|
1272 | - public function grantApiKey(array $params = []) |
|
1273 | - { |
|
1274 | - $this->checkRequiredParameters(['body'], $params); |
|
1275 | - $url = '/_security/api_key/grant'; |
|
1276 | - $method = 'POST'; |
|
1277 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1278 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1279 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1280 | - $request = $this->addOtelAttributes($params, [], $request, 'security.grant_api_key'); |
|
1281 | - return $this->client->sendRequest($request); |
|
1282 | - } |
|
1283 | - /** |
|
1284 | - * Determines whether the specified user has a specified list of privileges. |
|
1285 | - * |
|
1286 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-has-privileges.html |
|
1287 | - * |
|
1288 | - * @param array{ |
|
1289 | - * user: string, // Username |
|
1290 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1291 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1292 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1293 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1294 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1295 | - * body: array, // (REQUIRED) The privileges to test |
|
1296 | - * } $params |
|
1297 | - * |
|
1298 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1299 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1300 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1301 | - * |
|
1302 | - * @return Elasticsearch|Promise |
|
1303 | - */ |
|
1304 | - public function hasPrivileges(array $params = []) |
|
1305 | - { |
|
1306 | - $this->checkRequiredParameters(['body'], $params); |
|
1307 | - if (isset($params['user'])) { |
|
1308 | - $url = '/_security/user/' . $this->encode($params['user']) . '/_has_privileges'; |
|
1309 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1310 | - } else { |
|
1311 | - $url = '/_security/user/_has_privileges'; |
|
1312 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1313 | - } |
|
1314 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1315 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1316 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1317 | - $request = $this->addOtelAttributes($params, ['user'], $request, 'security.has_privileges'); |
|
1318 | - return $this->client->sendRequest($request); |
|
1319 | - } |
|
1320 | - /** |
|
1321 | - * Determines whether the users associated with the specified profile IDs have all the requested privileges. |
|
1322 | - * |
|
1323 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-has-privileges-user-profile.html |
|
1324 | - * |
|
1325 | - * @param array{ |
|
1326 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1327 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1328 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1329 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1330 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1331 | - * body: array, // (REQUIRED) The privileges to check and the list of profile IDs |
|
1332 | - * } $params |
|
1333 | - * |
|
1334 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1335 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1336 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1337 | - * |
|
1338 | - * @return Elasticsearch|Promise |
|
1339 | - */ |
|
1340 | - public function hasPrivilegesUserProfile(array $params = []) |
|
1341 | - { |
|
1342 | - $this->checkRequiredParameters(['body'], $params); |
|
1343 | - $url = '/_security/profile/_has_privileges'; |
|
1344 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1345 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1346 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1347 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1348 | - $request = $this->addOtelAttributes($params, [], $request, 'security.has_privileges_user_profile'); |
|
1349 | - return $this->client->sendRequest($request); |
|
1350 | - } |
|
1351 | - /** |
|
1352 | - * Invalidates one or more API keys. |
|
1353 | - * |
|
1354 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-invalidate-api-key.html |
|
1355 | - * |
|
1356 | - * @param array{ |
|
1357 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1358 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1359 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1360 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1361 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1362 | - * body: array, // (REQUIRED) The api key request to invalidate API key(s) |
|
1363 | - * } $params |
|
1364 | - * |
|
1365 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1366 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1367 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1368 | - * |
|
1369 | - * @return Elasticsearch|Promise |
|
1370 | - */ |
|
1371 | - public function invalidateApiKey(array $params = []) |
|
1372 | - { |
|
1373 | - $this->checkRequiredParameters(['body'], $params); |
|
1374 | - $url = '/_security/api_key'; |
|
1375 | - $method = 'DELETE'; |
|
1376 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1377 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1378 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1379 | - $request = $this->addOtelAttributes($params, [], $request, 'security.invalidate_api_key'); |
|
1380 | - return $this->client->sendRequest($request); |
|
1381 | - } |
|
1382 | - /** |
|
1383 | - * Invalidates one or more access tokens or refresh tokens. |
|
1384 | - * |
|
1385 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-invalidate-token.html |
|
1386 | - * |
|
1387 | - * @param array{ |
|
1388 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1389 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1390 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1391 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1392 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1393 | - * body: array, // (REQUIRED) The token to invalidate |
|
1394 | - * } $params |
|
1395 | - * |
|
1396 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1397 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1398 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1399 | - * |
|
1400 | - * @return Elasticsearch|Promise |
|
1401 | - */ |
|
1402 | - public function invalidateToken(array $params = []) |
|
1403 | - { |
|
1404 | - $this->checkRequiredParameters(['body'], $params); |
|
1405 | - $url = '/_security/oauth2/token'; |
|
1406 | - $method = 'DELETE'; |
|
1407 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1408 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1409 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1410 | - $request = $this->addOtelAttributes($params, [], $request, 'security.invalidate_token'); |
|
1411 | - return $this->client->sendRequest($request); |
|
1412 | - } |
|
1413 | - /** |
|
1414 | - * Exchanges an OpenID Connection authentication response message for an Elasticsearch access token and refresh token pair |
|
1415 | - * |
|
1416 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-oidc-authenticate.html |
|
1417 | - * |
|
1418 | - * @param array{ |
|
1419 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1420 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1421 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1422 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1423 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1424 | - * body: array, // (REQUIRED) The OpenID Connect response to authenticate |
|
1425 | - * } $params |
|
1426 | - * |
|
1427 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1428 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1429 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1430 | - * |
|
1431 | - * @return Elasticsearch|Promise |
|
1432 | - */ |
|
1433 | - public function oidcAuthenticate(array $params = []) |
|
1434 | - { |
|
1435 | - $this->checkRequiredParameters(['body'], $params); |
|
1436 | - $url = '/_security/oidc/authenticate'; |
|
1437 | - $method = 'POST'; |
|
1438 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1439 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1440 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1441 | - $request = $this->addOtelAttributes($params, [], $request, 'security.oidc_authenticate'); |
|
1442 | - return $this->client->sendRequest($request); |
|
1443 | - } |
|
1444 | - /** |
|
1445 | - * Invalidates a refresh token and access token that was generated from the OpenID Connect Authenticate API |
|
1446 | - * |
|
1447 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-oidc-logout.html |
|
1448 | - * |
|
1449 | - * @param array{ |
|
1450 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1451 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1452 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1453 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1454 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1455 | - * body: array, // (REQUIRED) Access token and refresh token to invalidate |
|
1456 | - * } $params |
|
1457 | - * |
|
1458 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1459 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1460 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1461 | - * |
|
1462 | - * @return Elasticsearch|Promise |
|
1463 | - */ |
|
1464 | - public function oidcLogout(array $params = []) |
|
1465 | - { |
|
1466 | - $this->checkRequiredParameters(['body'], $params); |
|
1467 | - $url = '/_security/oidc/logout'; |
|
1468 | - $method = 'POST'; |
|
1469 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1470 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1471 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1472 | - $request = $this->addOtelAttributes($params, [], $request, 'security.oidc_logout'); |
|
1473 | - return $this->client->sendRequest($request); |
|
1474 | - } |
|
1475 | - /** |
|
1476 | - * Creates an OAuth 2.0 authentication request as a URL string |
|
1477 | - * |
|
1478 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-oidc-prepare-authentication.html |
|
1479 | - * |
|
1480 | - * @param array{ |
|
1481 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1482 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1483 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1484 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1485 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1486 | - * body: array, // (REQUIRED) The OpenID Connect authentication realm configuration |
|
1487 | - * } $params |
|
1488 | - * |
|
1489 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1490 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1491 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1492 | - * |
|
1493 | - * @return Elasticsearch|Promise |
|
1494 | - */ |
|
1495 | - public function oidcPrepareAuthentication(array $params = []) |
|
1496 | - { |
|
1497 | - $this->checkRequiredParameters(['body'], $params); |
|
1498 | - $url = '/_security/oidc/prepare'; |
|
1499 | - $method = 'POST'; |
|
1500 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1501 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1502 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1503 | - $request = $this->addOtelAttributes($params, [], $request, 'security.oidc_prepare_authentication'); |
|
1504 | - return $this->client->sendRequest($request); |
|
1505 | - } |
|
1506 | - /** |
|
1507 | - * Adds or updates application privileges. |
|
1508 | - * |
|
1509 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-privileges.html |
|
1510 | - * |
|
1511 | - * @param array{ |
|
1512 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1513 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1514 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1515 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1516 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1517 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1518 | - * body: array, // (REQUIRED) The privilege(s) to add |
|
1519 | - * } $params |
|
1520 | - * |
|
1521 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1522 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1523 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1524 | - * |
|
1525 | - * @return Elasticsearch|Promise |
|
1526 | - */ |
|
1527 | - public function putPrivileges(array $params = []) |
|
1528 | - { |
|
1529 | - $this->checkRequiredParameters(['body'], $params); |
|
1530 | - $url = '/_security/privilege'; |
|
1531 | - $method = 'PUT'; |
|
1532 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1533 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1534 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1535 | - $request = $this->addOtelAttributes($params, [], $request, 'security.put_privileges'); |
|
1536 | - return $this->client->sendRequest($request); |
|
1537 | - } |
|
1538 | - /** |
|
1539 | - * Adds and updates roles in the native realm. |
|
1540 | - * |
|
1541 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-role.html |
|
1542 | - * |
|
1543 | - * @param array{ |
|
1544 | - * name: string, // (REQUIRED) Role name |
|
1545 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1546 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1547 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1548 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1549 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1550 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1551 | - * body: array, // (REQUIRED) The role to add |
|
1552 | - * } $params |
|
1553 | - * |
|
1554 | - * @throws MissingParameterException if a required parameter is missing |
|
1555 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1556 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1557 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1558 | - * |
|
1559 | - * @return Elasticsearch|Promise |
|
1560 | - */ |
|
1561 | - public function putRole(array $params = []) |
|
1562 | - { |
|
1563 | - $this->checkRequiredParameters(['name', 'body'], $params); |
|
1564 | - $url = '/_security/role/' . $this->encode($params['name']); |
|
1565 | - $method = 'PUT'; |
|
1566 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1567 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1568 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1569 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'security.put_role'); |
|
1570 | - return $this->client->sendRequest($request); |
|
1571 | - } |
|
1572 | - /** |
|
1573 | - * Creates and updates role mappings. |
|
1574 | - * |
|
1575 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-role-mapping.html |
|
1576 | - * |
|
1577 | - * @param array{ |
|
1578 | - * name: string, // (REQUIRED) Role-mapping name |
|
1579 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1580 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1581 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1582 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1583 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1584 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1585 | - * body: array, // (REQUIRED) The role mapping to add |
|
1586 | - * } $params |
|
1587 | - * |
|
1588 | - * @throws MissingParameterException if a required parameter is missing |
|
1589 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1590 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1591 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1592 | - * |
|
1593 | - * @return Elasticsearch|Promise |
|
1594 | - */ |
|
1595 | - public function putRoleMapping(array $params = []) |
|
1596 | - { |
|
1597 | - $this->checkRequiredParameters(['name', 'body'], $params); |
|
1598 | - $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
1599 | - $method = 'PUT'; |
|
1600 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1601 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1602 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1603 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'security.put_role_mapping'); |
|
1604 | - return $this->client->sendRequest($request); |
|
1605 | - } |
|
1606 | - /** |
|
1607 | - * Adds and updates users in the native realm. These users are commonly referred to as native users. |
|
1608 | - * |
|
1609 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-user.html |
|
1610 | - * |
|
1611 | - * @param array{ |
|
1612 | - * username: string, // (REQUIRED) The username of the User |
|
1613 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1614 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1615 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1616 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1617 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1618 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1619 | - * body: array, // (REQUIRED) The user to add |
|
1620 | - * } $params |
|
1621 | - * |
|
1622 | - * @throws MissingParameterException if a required parameter is missing |
|
1623 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1624 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1625 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1626 | - * |
|
1627 | - * @return Elasticsearch|Promise |
|
1628 | - */ |
|
1629 | - public function putUser(array $params = []) |
|
1630 | - { |
|
1631 | - $this->checkRequiredParameters(['username', 'body'], $params); |
|
1632 | - $url = '/_security/user/' . $this->encode($params['username']); |
|
1633 | - $method = 'PUT'; |
|
1634 | - $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1635 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1636 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1637 | - $request = $this->addOtelAttributes($params, ['username'], $request, 'security.put_user'); |
|
1638 | - return $this->client->sendRequest($request); |
|
1639 | - } |
|
1640 | - /** |
|
1641 | - * Retrieves information for API keys using a subset of query DSL |
|
1642 | - * |
|
1643 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-query-api-key.html |
|
1644 | - * |
|
1645 | - * @param array{ |
|
1646 | - * with_limited_by: boolean, // flag to show the limited-by role descriptors of API Keys |
|
1647 | - * with_profile_uid: boolean, // flag to also retrieve the API Key's owner profile uid, if it exists |
|
1648 | - * typed_keys: boolean, // flag to prefix aggregation names by their respective types in the response |
|
1649 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1650 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1651 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1652 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1653 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1654 | - * body: array, // From, size, query, sort and search_after |
|
1655 | - * } $params |
|
1656 | - * |
|
1657 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1658 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1659 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1660 | - * |
|
1661 | - * @return Elasticsearch|Promise |
|
1662 | - */ |
|
1663 | - public function queryApiKeys(array $params = []) |
|
1664 | - { |
|
1665 | - $url = '/_security/_query/api_key'; |
|
1666 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1667 | - $url = $this->addQueryString($url, $params, ['with_limited_by', 'with_profile_uid', 'typed_keys', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1668 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1669 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1670 | - $request = $this->addOtelAttributes($params, [], $request, 'security.query_api_keys'); |
|
1671 | - return $this->client->sendRequest($request); |
|
1672 | - } |
|
1673 | - /** |
|
1674 | - * Retrieves information for Roles using a subset of query DSL |
|
1675 | - * |
|
1676 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-query-role.html |
|
1677 | - * |
|
1678 | - * @param array{ |
|
1679 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1680 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1681 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1682 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1683 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1684 | - * body: array, // From, size, query, sort and search_after |
|
1685 | - * } $params |
|
1686 | - * |
|
1687 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1688 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1689 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1690 | - * |
|
1691 | - * @return Elasticsearch|Promise |
|
1692 | - */ |
|
1693 | - public function queryRole(array $params = []) |
|
1694 | - { |
|
1695 | - $url = '/_security/_query/role'; |
|
1696 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1697 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1698 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1699 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1700 | - $request = $this->addOtelAttributes($params, [], $request, 'security.query_role'); |
|
1701 | - return $this->client->sendRequest($request); |
|
1702 | - } |
|
1703 | - /** |
|
1704 | - * Retrieves information for Users using a subset of query DSL |
|
1705 | - * |
|
1706 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-query-user.html |
|
1707 | - * |
|
1708 | - * @param array{ |
|
1709 | - * with_profile_uid: boolean, // flag to retrieve profile uid (if exists) associated with the user |
|
1710 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1711 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1712 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1713 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1714 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1715 | - * body: array, // From, size, query, sort and search_after |
|
1716 | - * } $params |
|
1717 | - * |
|
1718 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1719 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1720 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1721 | - * |
|
1722 | - * @return Elasticsearch|Promise |
|
1723 | - */ |
|
1724 | - public function queryUser(array $params = []) |
|
1725 | - { |
|
1726 | - $url = '/_security/_query/user'; |
|
1727 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1728 | - $url = $this->addQueryString($url, $params, ['with_profile_uid', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1729 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1730 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1731 | - $request = $this->addOtelAttributes($params, [], $request, 'security.query_user'); |
|
1732 | - return $this->client->sendRequest($request); |
|
1733 | - } |
|
1734 | - /** |
|
1735 | - * Exchanges a SAML Response message for an Elasticsearch access token and refresh token pair |
|
1736 | - * |
|
1737 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-authenticate.html |
|
1738 | - * |
|
1739 | - * @param array{ |
|
1740 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1741 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1742 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1743 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1744 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1745 | - * body: array, // (REQUIRED) The SAML response to authenticate |
|
1746 | - * } $params |
|
1747 | - * |
|
1748 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1749 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1750 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1751 | - * |
|
1752 | - * @return Elasticsearch|Promise |
|
1753 | - */ |
|
1754 | - public function samlAuthenticate(array $params = []) |
|
1755 | - { |
|
1756 | - $this->checkRequiredParameters(['body'], $params); |
|
1757 | - $url = '/_security/saml/authenticate'; |
|
1758 | - $method = 'POST'; |
|
1759 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1760 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1761 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1762 | - $request = $this->addOtelAttributes($params, [], $request, 'security.saml_authenticate'); |
|
1763 | - return $this->client->sendRequest($request); |
|
1764 | - } |
|
1765 | - /** |
|
1766 | - * Verifies the logout response sent from the SAML IdP |
|
1767 | - * |
|
1768 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-complete-logout.html |
|
1769 | - * |
|
1770 | - * @param array{ |
|
1771 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1772 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1773 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1774 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1775 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1776 | - * body: array, // (REQUIRED) The logout response to verify |
|
1777 | - * } $params |
|
1778 | - * |
|
1779 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1780 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1781 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1782 | - * |
|
1783 | - * @return Elasticsearch|Promise |
|
1784 | - */ |
|
1785 | - public function samlCompleteLogout(array $params = []) |
|
1786 | - { |
|
1787 | - $this->checkRequiredParameters(['body'], $params); |
|
1788 | - $url = '/_security/saml/complete_logout'; |
|
1789 | - $method = 'POST'; |
|
1790 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1791 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1792 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1793 | - $request = $this->addOtelAttributes($params, [], $request, 'security.saml_complete_logout'); |
|
1794 | - return $this->client->sendRequest($request); |
|
1795 | - } |
|
1796 | - /** |
|
1797 | - * Consumes a SAML LogoutRequest |
|
1798 | - * |
|
1799 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-invalidate.html |
|
1800 | - * |
|
1801 | - * @param array{ |
|
1802 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1803 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1804 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1805 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1806 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1807 | - * body: array, // (REQUIRED) The LogoutRequest message |
|
1808 | - * } $params |
|
1809 | - * |
|
1810 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1811 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1812 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1813 | - * |
|
1814 | - * @return Elasticsearch|Promise |
|
1815 | - */ |
|
1816 | - public function samlInvalidate(array $params = []) |
|
1817 | - { |
|
1818 | - $this->checkRequiredParameters(['body'], $params); |
|
1819 | - $url = '/_security/saml/invalidate'; |
|
1820 | - $method = 'POST'; |
|
1821 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1822 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1823 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1824 | - $request = $this->addOtelAttributes($params, [], $request, 'security.saml_invalidate'); |
|
1825 | - return $this->client->sendRequest($request); |
|
1826 | - } |
|
1827 | - /** |
|
1828 | - * Invalidates an access token and a refresh token that were generated via the SAML Authenticate API |
|
1829 | - * |
|
1830 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-logout.html |
|
1831 | - * |
|
1832 | - * @param array{ |
|
1833 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1834 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1835 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1836 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1837 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1838 | - * body: array, // (REQUIRED) The tokens to invalidate |
|
1839 | - * } $params |
|
1840 | - * |
|
1841 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1842 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1843 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1844 | - * |
|
1845 | - * @return Elasticsearch|Promise |
|
1846 | - */ |
|
1847 | - public function samlLogout(array $params = []) |
|
1848 | - { |
|
1849 | - $this->checkRequiredParameters(['body'], $params); |
|
1850 | - $url = '/_security/saml/logout'; |
|
1851 | - $method = 'POST'; |
|
1852 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1853 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1854 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1855 | - $request = $this->addOtelAttributes($params, [], $request, 'security.saml_logout'); |
|
1856 | - return $this->client->sendRequest($request); |
|
1857 | - } |
|
1858 | - /** |
|
1859 | - * Creates a SAML authentication request |
|
1860 | - * |
|
1861 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-prepare-authentication.html |
|
1862 | - * |
|
1863 | - * @param array{ |
|
1864 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1865 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1866 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1867 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1868 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1869 | - * body: array, // (REQUIRED) The realm for which to create the authentication request, identified by either its name or the ACS URL |
|
1870 | - * } $params |
|
1871 | - * |
|
1872 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1873 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1874 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1875 | - * |
|
1876 | - * @return Elasticsearch|Promise |
|
1877 | - */ |
|
1878 | - public function samlPrepareAuthentication(array $params = []) |
|
1879 | - { |
|
1880 | - $this->checkRequiredParameters(['body'], $params); |
|
1881 | - $url = '/_security/saml/prepare'; |
|
1882 | - $method = 'POST'; |
|
1883 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1884 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1885 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1886 | - $request = $this->addOtelAttributes($params, [], $request, 'security.saml_prepare_authentication'); |
|
1887 | - return $this->client->sendRequest($request); |
|
1888 | - } |
|
1889 | - /** |
|
1890 | - * Generates SAML metadata for the Elastic stack SAML 2.0 Service Provider |
|
1891 | - * |
|
1892 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-sp-metadata.html |
|
1893 | - * |
|
1894 | - * @param array{ |
|
1895 | - * realm_name: string, // (REQUIRED) The name of the SAML realm to get the metadata for |
|
1896 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1897 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1898 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1899 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1900 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1901 | - * } $params |
|
1902 | - * |
|
1903 | - * @throws MissingParameterException if a required parameter is missing |
|
1904 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1905 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1906 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1907 | - * |
|
1908 | - * @return Elasticsearch|Promise |
|
1909 | - */ |
|
1910 | - public function samlServiceProviderMetadata(array $params = []) |
|
1911 | - { |
|
1912 | - $this->checkRequiredParameters(['realm_name'], $params); |
|
1913 | - $url = '/_security/saml/metadata/' . $this->encode($params['realm_name']); |
|
1914 | - $method = 'GET'; |
|
1915 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1916 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1917 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1918 | - $request = $this->addOtelAttributes($params, ['realm_name'], $request, 'security.saml_service_provider_metadata'); |
|
1919 | - return $this->client->sendRequest($request); |
|
1920 | - } |
|
1921 | - /** |
|
1922 | - * Get suggestions for user profiles that match specified search criteria. |
|
1923 | - * |
|
1924 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-suggest-user-profile.html |
|
1925 | - * |
|
1926 | - * @param array{ |
|
1927 | - * data: list, // A comma-separated list of keys for which the corresponding application data are retrieved. |
|
1928 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1929 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1930 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1931 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1932 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1933 | - * body: array, // The suggestion definition for user profiles |
|
1934 | - * } $params |
|
1935 | - * |
|
1936 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1937 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1938 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1939 | - * |
|
1940 | - * @return Elasticsearch|Promise |
|
1941 | - */ |
|
1942 | - public function suggestUserProfiles(array $params = []) |
|
1943 | - { |
|
1944 | - $url = '/_security/profile/_suggest'; |
|
1945 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1946 | - $url = $this->addQueryString($url, $params, ['data', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1947 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1948 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1949 | - $request = $this->addOtelAttributes($params, [], $request, 'security.suggest_user_profiles'); |
|
1950 | - return $this->client->sendRequest($request); |
|
1951 | - } |
|
1952 | - /** |
|
1953 | - * Updates attributes of an existing API key. |
|
1954 | - * |
|
1955 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-update-api-key.html |
|
1956 | - * |
|
1957 | - * @param array{ |
|
1958 | - * id: string, // (REQUIRED) The ID of the API key to update |
|
1959 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1960 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1961 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1962 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1963 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1964 | - * body: array, // The API key request to update attributes of an API key. |
|
1965 | - * } $params |
|
1966 | - * |
|
1967 | - * @throws MissingParameterException if a required parameter is missing |
|
1968 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
1969 | - * @throws ClientResponseException if the status code of response is 4xx |
|
1970 | - * @throws ServerResponseException if the status code of response is 5xx |
|
1971 | - * |
|
1972 | - * @return Elasticsearch|Promise |
|
1973 | - */ |
|
1974 | - public function updateApiKey(array $params = []) |
|
1975 | - { |
|
1976 | - $this->checkRequiredParameters(['id'], $params); |
|
1977 | - $url = '/_security/api_key/' . $this->encode($params['id']); |
|
1978 | - $method = 'PUT'; |
|
1979 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1980 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1981 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1982 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'security.update_api_key'); |
|
1983 | - return $this->client->sendRequest($request); |
|
1984 | - } |
|
1985 | - /** |
|
1986 | - * Updates attributes of an existing cross-cluster API key. |
|
1987 | - * |
|
1988 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-update-cross-cluster-api-key.html |
|
1989 | - * |
|
1990 | - * @param array{ |
|
1991 | - * id: string, // (REQUIRED) The ID of the cross-cluster API key to update |
|
1992 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1993 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1994 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1995 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1996 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1997 | - * body: array, // (REQUIRED) The request to update attributes of a cross-cluster API key. |
|
1998 | - * } $params |
|
1999 | - * |
|
2000 | - * @throws MissingParameterException if a required parameter is missing |
|
2001 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
2002 | - * @throws ClientResponseException if the status code of response is 4xx |
|
2003 | - * @throws ServerResponseException if the status code of response is 5xx |
|
2004 | - * |
|
2005 | - * @return Elasticsearch|Promise |
|
2006 | - */ |
|
2007 | - public function updateCrossClusterApiKey(array $params = []) |
|
2008 | - { |
|
2009 | - $this->checkRequiredParameters(['id', 'body'], $params); |
|
2010 | - $url = '/_security/cross_cluster/api_key/' . $this->encode($params['id']); |
|
2011 | - $method = 'PUT'; |
|
2012 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
2013 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
2014 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
2015 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'security.update_cross_cluster_api_key'); |
|
2016 | - return $this->client->sendRequest($request); |
|
2017 | - } |
|
2018 | - /** |
|
2019 | - * Update settings for the security system index |
|
2020 | - * |
|
2021 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-update-settings.html |
|
2022 | - * |
|
2023 | - * @param array{ |
|
2024 | - * master_timeout: time, // Timeout for connection to master |
|
2025 | - * timeout: time, // Timeout for acknowledgements from all nodes |
|
2026 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
2027 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
2028 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
2029 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
2030 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
2031 | - * body: array, // (REQUIRED) An object with the new settings for each index, if any |
|
2032 | - * } $params |
|
2033 | - * |
|
2034 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
2035 | - * @throws ClientResponseException if the status code of response is 4xx |
|
2036 | - * @throws ServerResponseException if the status code of response is 5xx |
|
2037 | - * |
|
2038 | - * @return Elasticsearch|Promise |
|
2039 | - */ |
|
2040 | - public function updateSettings(array $params = []) |
|
2041 | - { |
|
2042 | - $this->checkRequiredParameters(['body'], $params); |
|
2043 | - $url = '/_security/settings'; |
|
2044 | - $method = 'PUT'; |
|
2045 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
2046 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
2047 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
2048 | - $request = $this->addOtelAttributes($params, [], $request, 'security.update_settings'); |
|
2049 | - return $this->client->sendRequest($request); |
|
2050 | - } |
|
2051 | - /** |
|
2052 | - * Update application specific data for the user profile of the given unique ID. |
|
2053 | - * |
|
2054 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-update-user-profile-data.html |
|
2055 | - * |
|
2056 | - * @param array{ |
|
2057 | - * uid: string, // (REQUIRED) An unique identifier of the user profile |
|
2058 | - * if_seq_no: number, // only perform the update operation if the last operation that has changed the document has the specified sequence number |
|
2059 | - * if_primary_term: number, // only perform the update operation if the last operation that has changed the document has the specified primary term |
|
2060 | - * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
2061 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
2062 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
2063 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
2064 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
2065 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
2066 | - * body: array, // (REQUIRED) The application data to update |
|
2067 | - * } $params |
|
2068 | - * |
|
2069 | - * @throws MissingParameterException if a required parameter is missing |
|
2070 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
2071 | - * @throws ClientResponseException if the status code of response is 4xx |
|
2072 | - * @throws ServerResponseException if the status code of response is 5xx |
|
2073 | - * |
|
2074 | - * @return Elasticsearch|Promise |
|
2075 | - */ |
|
2076 | - public function updateUserProfileData(array $params = []) |
|
2077 | - { |
|
2078 | - $this->checkRequiredParameters(['uid', 'body'], $params); |
|
2079 | - $url = '/_security/profile/' . $this->encode($params['uid']) . '/_data'; |
|
2080 | - $method = 'PUT'; |
|
2081 | - $url = $this->addQueryString($url, $params, ['if_seq_no', 'if_primary_term', 'refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
2082 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
2083 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
2084 | - $request = $this->addOtelAttributes($params, ['uid'], $request, 'security.update_user_profile_data'); |
|
2085 | - return $this->client->sendRequest($request); |
|
2086 | - } |
|
28 | + /** |
|
29 | + * Creates or updates the user profile on behalf of another user. |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-activate-user-profile.html |
|
32 | + * |
|
33 | + * @param array{ |
|
34 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
35 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
36 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
37 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
38 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
39 | + * body: array, // (REQUIRED) The grant type and user's credential |
|
40 | + * } $params |
|
41 | + * |
|
42 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
43 | + * @throws ClientResponseException if the status code of response is 4xx |
|
44 | + * @throws ServerResponseException if the status code of response is 5xx |
|
45 | + * |
|
46 | + * @return Elasticsearch|Promise |
|
47 | + */ |
|
48 | + public function activateUserProfile(array $params = []) |
|
49 | + { |
|
50 | + $this->checkRequiredParameters(['body'], $params); |
|
51 | + $url = '/_security/profile/_activate'; |
|
52 | + $method = 'POST'; |
|
53 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
54 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
55 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
56 | + $request = $this->addOtelAttributes($params, [], $request, 'security.activate_user_profile'); |
|
57 | + return $this->client->sendRequest($request); |
|
58 | + } |
|
59 | + /** |
|
60 | + * Enables authentication as a user and retrieve information about the authenticated user. |
|
61 | + * |
|
62 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-authenticate.html |
|
63 | + * |
|
64 | + * @param array{ |
|
65 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
66 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
67 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
68 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
69 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
70 | + * } $params |
|
71 | + * |
|
72 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
73 | + * @throws ClientResponseException if the status code of response is 4xx |
|
74 | + * @throws ServerResponseException if the status code of response is 5xx |
|
75 | + * |
|
76 | + * @return Elasticsearch|Promise |
|
77 | + */ |
|
78 | + public function authenticate(array $params = []) |
|
79 | + { |
|
80 | + $url = '/_security/_authenticate'; |
|
81 | + $method = 'GET'; |
|
82 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
83 | + $headers = ['Accept' => 'application/json']; |
|
84 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
85 | + $request = $this->addOtelAttributes($params, [], $request, 'security.authenticate'); |
|
86 | + return $this->client->sendRequest($request); |
|
87 | + } |
|
88 | + /** |
|
89 | + * Bulk delete roles in the native realm. |
|
90 | + * |
|
91 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-bulk-delete-role.html |
|
92 | + * |
|
93 | + * @param array{ |
|
94 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
95 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
96 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
97 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
98 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
99 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
100 | + * body: array, // (REQUIRED) The roles to delete |
|
101 | + * } $params |
|
102 | + * |
|
103 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
104 | + * @throws ClientResponseException if the status code of response is 4xx |
|
105 | + * @throws ServerResponseException if the status code of response is 5xx |
|
106 | + * |
|
107 | + * @return Elasticsearch|Promise |
|
108 | + */ |
|
109 | + public function bulkDeleteRole(array $params = []) |
|
110 | + { |
|
111 | + $this->checkRequiredParameters(['body'], $params); |
|
112 | + $url = '/_security/role'; |
|
113 | + $method = 'DELETE'; |
|
114 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
115 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
116 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
117 | + $request = $this->addOtelAttributes($params, [], $request, 'security.bulk_delete_role'); |
|
118 | + return $this->client->sendRequest($request); |
|
119 | + } |
|
120 | + /** |
|
121 | + * Bulk adds and updates roles in the native realm. |
|
122 | + * |
|
123 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-bulk-put-role.html |
|
124 | + * |
|
125 | + * @param array{ |
|
126 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
127 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
128 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
129 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
130 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
131 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
132 | + * body: array, // (REQUIRED) The roles to add |
|
133 | + * } $params |
|
134 | + * |
|
135 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
136 | + * @throws ClientResponseException if the status code of response is 4xx |
|
137 | + * @throws ServerResponseException if the status code of response is 5xx |
|
138 | + * |
|
139 | + * @return Elasticsearch|Promise |
|
140 | + */ |
|
141 | + public function bulkPutRole(array $params = []) |
|
142 | + { |
|
143 | + $this->checkRequiredParameters(['body'], $params); |
|
144 | + $url = '/_security/role'; |
|
145 | + $method = 'POST'; |
|
146 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
147 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
148 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
149 | + $request = $this->addOtelAttributes($params, [], $request, 'security.bulk_put_role'); |
|
150 | + return $this->client->sendRequest($request); |
|
151 | + } |
|
152 | + /** |
|
153 | + * Updates the attributes of multiple existing API keys. |
|
154 | + * |
|
155 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-bulk-update-api-keys.html |
|
156 | + * |
|
157 | + * @param array{ |
|
158 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
159 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
160 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
161 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
162 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
163 | + * body: array, // (REQUIRED) The API key request to update the attributes of multiple API keys. |
|
164 | + * } $params |
|
165 | + * |
|
166 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
167 | + * @throws ClientResponseException if the status code of response is 4xx |
|
168 | + * @throws ServerResponseException if the status code of response is 5xx |
|
169 | + * |
|
170 | + * @return Elasticsearch|Promise |
|
171 | + */ |
|
172 | + public function bulkUpdateApiKeys(array $params = []) |
|
173 | + { |
|
174 | + $this->checkRequiredParameters(['body'], $params); |
|
175 | + $url = '/_security/api_key/_bulk_update'; |
|
176 | + $method = 'POST'; |
|
177 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
178 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
179 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
180 | + $request = $this->addOtelAttributes($params, [], $request, 'security.bulk_update_api_keys'); |
|
181 | + return $this->client->sendRequest($request); |
|
182 | + } |
|
183 | + /** |
|
184 | + * Changes the passwords of users in the native realm and built-in users. |
|
185 | + * |
|
186 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-change-password.html |
|
187 | + * |
|
188 | + * @param array{ |
|
189 | + * username: string, // The username of the user to change the password for |
|
190 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
191 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
192 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
193 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
194 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
195 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
196 | + * body: array, // (REQUIRED) the new password for the user |
|
197 | + * } $params |
|
198 | + * |
|
199 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
200 | + * @throws ClientResponseException if the status code of response is 4xx |
|
201 | + * @throws ServerResponseException if the status code of response is 5xx |
|
202 | + * |
|
203 | + * @return Elasticsearch|Promise |
|
204 | + */ |
|
205 | + public function changePassword(array $params = []) |
|
206 | + { |
|
207 | + $this->checkRequiredParameters(['body'], $params); |
|
208 | + if (isset($params['username'])) { |
|
209 | + $url = '/_security/user/' . $this->encode($params['username']) . '/_password'; |
|
210 | + $method = 'PUT'; |
|
211 | + } else { |
|
212 | + $url = '/_security/user/_password'; |
|
213 | + $method = 'PUT'; |
|
214 | + } |
|
215 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
216 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
217 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
218 | + $request = $this->addOtelAttributes($params, ['username'], $request, 'security.change_password'); |
|
219 | + return $this->client->sendRequest($request); |
|
220 | + } |
|
221 | + /** |
|
222 | + * Clear a subset or all entries from the API key cache. |
|
223 | + * |
|
224 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-api-key-cache.html |
|
225 | + * |
|
226 | + * @param array{ |
|
227 | + * ids: list, // (REQUIRED) A comma-separated list of IDs of API keys to clear from the cache |
|
228 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
229 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
230 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
231 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
232 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
233 | + * } $params |
|
234 | + * |
|
235 | + * @throws MissingParameterException if a required parameter is missing |
|
236 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
237 | + * @throws ClientResponseException if the status code of response is 4xx |
|
238 | + * @throws ServerResponseException if the status code of response is 5xx |
|
239 | + * |
|
240 | + * @return Elasticsearch|Promise |
|
241 | + */ |
|
242 | + public function clearApiKeyCache(array $params = []) |
|
243 | + { |
|
244 | + $this->checkRequiredParameters(['ids'], $params); |
|
245 | + $url = '/_security/api_key/' . $this->encode($params['ids']) . '/_clear_cache'; |
|
246 | + $method = 'POST'; |
|
247 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
248 | + $headers = ['Accept' => 'application/json']; |
|
249 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
250 | + $request = $this->addOtelAttributes($params, ['ids'], $request, 'security.clear_api_key_cache'); |
|
251 | + return $this->client->sendRequest($request); |
|
252 | + } |
|
253 | + /** |
|
254 | + * Evicts application privileges from the native application privileges cache. |
|
255 | + * |
|
256 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-privilege-cache.html |
|
257 | + * |
|
258 | + * @param array{ |
|
259 | + * application: list, // (REQUIRED) A comma-separated list of application names |
|
260 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
261 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
262 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
263 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
264 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
265 | + * } $params |
|
266 | + * |
|
267 | + * @throws MissingParameterException if a required parameter is missing |
|
268 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
269 | + * @throws ClientResponseException if the status code of response is 4xx |
|
270 | + * @throws ServerResponseException if the status code of response is 5xx |
|
271 | + * |
|
272 | + * @return Elasticsearch|Promise |
|
273 | + */ |
|
274 | + public function clearCachedPrivileges(array $params = []) |
|
275 | + { |
|
276 | + $this->checkRequiredParameters(['application'], $params); |
|
277 | + $url = '/_security/privilege/' . $this->encode($params['application']) . '/_clear_cache'; |
|
278 | + $method = 'POST'; |
|
279 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
280 | + $headers = ['Accept' => 'application/json']; |
|
281 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
282 | + $request = $this->addOtelAttributes($params, ['application'], $request, 'security.clear_cached_privileges'); |
|
283 | + return $this->client->sendRequest($request); |
|
284 | + } |
|
285 | + /** |
|
286 | + * Evicts users from the user cache. Can completely clear the cache or evict specific users. |
|
287 | + * |
|
288 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-cache.html |
|
289 | + * |
|
290 | + * @param array{ |
|
291 | + * realms: list, // (REQUIRED) Comma-separated list of realms to clear |
|
292 | + * usernames: list, // Comma-separated list of usernames to clear from the cache |
|
293 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
294 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
295 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
296 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
297 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
298 | + * } $params |
|
299 | + * |
|
300 | + * @throws MissingParameterException if a required parameter is missing |
|
301 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
302 | + * @throws ClientResponseException if the status code of response is 4xx |
|
303 | + * @throws ServerResponseException if the status code of response is 5xx |
|
304 | + * |
|
305 | + * @return Elasticsearch|Promise |
|
306 | + */ |
|
307 | + public function clearCachedRealms(array $params = []) |
|
308 | + { |
|
309 | + $this->checkRequiredParameters(['realms'], $params); |
|
310 | + $url = '/_security/realm/' . $this->encode($params['realms']) . '/_clear_cache'; |
|
311 | + $method = 'POST'; |
|
312 | + $url = $this->addQueryString($url, $params, ['usernames', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
313 | + $headers = ['Accept' => 'application/json']; |
|
314 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
315 | + $request = $this->addOtelAttributes($params, ['realms'], $request, 'security.clear_cached_realms'); |
|
316 | + return $this->client->sendRequest($request); |
|
317 | + } |
|
318 | + /** |
|
319 | + * Evicts roles from the native role cache. |
|
320 | + * |
|
321 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-role-cache.html |
|
322 | + * |
|
323 | + * @param array{ |
|
324 | + * name: list, // (REQUIRED) Role name |
|
325 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
326 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
327 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
328 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
329 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
330 | + * } $params |
|
331 | + * |
|
332 | + * @throws MissingParameterException if a required parameter is missing |
|
333 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
334 | + * @throws ClientResponseException if the status code of response is 4xx |
|
335 | + * @throws ServerResponseException if the status code of response is 5xx |
|
336 | + * |
|
337 | + * @return Elasticsearch|Promise |
|
338 | + */ |
|
339 | + public function clearCachedRoles(array $params = []) |
|
340 | + { |
|
341 | + $this->checkRequiredParameters(['name'], $params); |
|
342 | + $url = '/_security/role/' . $this->encode($params['name']) . '/_clear_cache'; |
|
343 | + $method = 'POST'; |
|
344 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
345 | + $headers = ['Accept' => 'application/json']; |
|
346 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
347 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'security.clear_cached_roles'); |
|
348 | + return $this->client->sendRequest($request); |
|
349 | + } |
|
350 | + /** |
|
351 | + * Evicts tokens from the service account token caches. |
|
352 | + * |
|
353 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-clear-service-token-caches.html |
|
354 | + * |
|
355 | + * @param array{ |
|
356 | + * namespace: string, // (REQUIRED) An identifier for the namespace |
|
357 | + * service: string, // (REQUIRED) An identifier for the service name |
|
358 | + * name: list, // (REQUIRED) A comma-separated list of service token names |
|
359 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
360 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
361 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
362 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
363 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
364 | + * } $params |
|
365 | + * |
|
366 | + * @throws MissingParameterException if a required parameter is missing |
|
367 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
368 | + * @throws ClientResponseException if the status code of response is 4xx |
|
369 | + * @throws ServerResponseException if the status code of response is 5xx |
|
370 | + * |
|
371 | + * @return Elasticsearch|Promise |
|
372 | + */ |
|
373 | + public function clearCachedServiceTokens(array $params = []) |
|
374 | + { |
|
375 | + $this->checkRequiredParameters(['namespace', 'service', 'name'], $params); |
|
376 | + $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']) . '/_clear_cache'; |
|
377 | + $method = 'POST'; |
|
378 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
379 | + $headers = ['Accept' => 'application/json']; |
|
380 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
381 | + $request = $this->addOtelAttributes($params, ['namespace', 'service', 'name'], $request, 'security.clear_cached_service_tokens'); |
|
382 | + return $this->client->sendRequest($request); |
|
383 | + } |
|
384 | + /** |
|
385 | + * Creates an API key for access without requiring basic authentication. |
|
386 | + * |
|
387 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-api-key.html |
|
388 | + * |
|
389 | + * @param array{ |
|
390 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
391 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
392 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
393 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
394 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
395 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
396 | + * body: array, // (REQUIRED) The api key request to create an API key |
|
397 | + * } $params |
|
398 | + * |
|
399 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
400 | + * @throws ClientResponseException if the status code of response is 4xx |
|
401 | + * @throws ServerResponseException if the status code of response is 5xx |
|
402 | + * |
|
403 | + * @return Elasticsearch|Promise |
|
404 | + */ |
|
405 | + public function createApiKey(array $params = []) |
|
406 | + { |
|
407 | + $this->checkRequiredParameters(['body'], $params); |
|
408 | + $url = '/_security/api_key'; |
|
409 | + $method = 'PUT'; |
|
410 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
411 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
412 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
413 | + $request = $this->addOtelAttributes($params, [], $request, 'security.create_api_key'); |
|
414 | + return $this->client->sendRequest($request); |
|
415 | + } |
|
416 | + /** |
|
417 | + * Creates a cross-cluster API key for API key based remote cluster access. |
|
418 | + * |
|
419 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-cross-cluster-api-key.html |
|
420 | + * |
|
421 | + * @param array{ |
|
422 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
423 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
424 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
425 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
426 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
427 | + * body: array, // (REQUIRED) The request to create a cross-cluster API key |
|
428 | + * } $params |
|
429 | + * |
|
430 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
431 | + * @throws ClientResponseException if the status code of response is 4xx |
|
432 | + * @throws ServerResponseException if the status code of response is 5xx |
|
433 | + * |
|
434 | + * @return Elasticsearch|Promise |
|
435 | + */ |
|
436 | + public function createCrossClusterApiKey(array $params = []) |
|
437 | + { |
|
438 | + $this->checkRequiredParameters(['body'], $params); |
|
439 | + $url = '/_security/cross_cluster/api_key'; |
|
440 | + $method = 'POST'; |
|
441 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
442 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
443 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
444 | + $request = $this->addOtelAttributes($params, [], $request, 'security.create_cross_cluster_api_key'); |
|
445 | + return $this->client->sendRequest($request); |
|
446 | + } |
|
447 | + /** |
|
448 | + * Creates a service account token for access without requiring basic authentication. |
|
449 | + * |
|
450 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-service-token.html |
|
451 | + * |
|
452 | + * @param array{ |
|
453 | + * namespace: string, // (REQUIRED) An identifier for the namespace |
|
454 | + * service: string, // (REQUIRED) An identifier for the service name |
|
455 | + * name: string, // An identifier for the token name |
|
456 | + * refresh: enum, // If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` (the default) then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
457 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
458 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
459 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
460 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
461 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
462 | + * } $params |
|
463 | + * |
|
464 | + * @throws MissingParameterException if a required parameter is missing |
|
465 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
466 | + * @throws ClientResponseException if the status code of response is 4xx |
|
467 | + * @throws ServerResponseException if the status code of response is 5xx |
|
468 | + * |
|
469 | + * @return Elasticsearch|Promise |
|
470 | + */ |
|
471 | + public function createServiceToken(array $params = []) |
|
472 | + { |
|
473 | + $this->checkRequiredParameters(['namespace', 'service'], $params); |
|
474 | + if (isset($params['name'])) { |
|
475 | + $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']); |
|
476 | + $method = 'PUT'; |
|
477 | + } else { |
|
478 | + $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token'; |
|
479 | + $method = 'POST'; |
|
480 | + } |
|
481 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
482 | + $headers = ['Accept' => 'application/json']; |
|
483 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
484 | + $request = $this->addOtelAttributes($params, ['namespace', 'service', 'name'], $request, 'security.create_service_token'); |
|
485 | + return $this->client->sendRequest($request); |
|
486 | + } |
|
487 | + /** |
|
488 | + * Removes application privileges. |
|
489 | + * |
|
490 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-privilege.html |
|
491 | + * |
|
492 | + * @param array{ |
|
493 | + * application: string, // (REQUIRED) Application name |
|
494 | + * name: string, // (REQUIRED) Privilege name |
|
495 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
496 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
497 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
498 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
499 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
500 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
501 | + * } $params |
|
502 | + * |
|
503 | + * @throws MissingParameterException if a required parameter is missing |
|
504 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
505 | + * @throws ClientResponseException if the status code of response is 4xx |
|
506 | + * @throws ServerResponseException if the status code of response is 5xx |
|
507 | + * |
|
508 | + * @return Elasticsearch|Promise |
|
509 | + */ |
|
510 | + public function deletePrivileges(array $params = []) |
|
511 | + { |
|
512 | + $this->checkRequiredParameters(['application', 'name'], $params); |
|
513 | + $url = '/_security/privilege/' . $this->encode($params['application']) . '/' . $this->encode($params['name']); |
|
514 | + $method = 'DELETE'; |
|
515 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
516 | + $headers = ['Accept' => 'application/json']; |
|
517 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
518 | + $request = $this->addOtelAttributes($params, ['application', 'name'], $request, 'security.delete_privileges'); |
|
519 | + return $this->client->sendRequest($request); |
|
520 | + } |
|
521 | + /** |
|
522 | + * Removes roles in the native realm. |
|
523 | + * |
|
524 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-role.html |
|
525 | + * |
|
526 | + * @param array{ |
|
527 | + * name: string, // (REQUIRED) Role name |
|
528 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
529 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
530 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
531 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
532 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
533 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
534 | + * } $params |
|
535 | + * |
|
536 | + * @throws MissingParameterException if a required parameter is missing |
|
537 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
538 | + * @throws ClientResponseException if the status code of response is 4xx |
|
539 | + * @throws ServerResponseException if the status code of response is 5xx |
|
540 | + * |
|
541 | + * @return Elasticsearch|Promise |
|
542 | + */ |
|
543 | + public function deleteRole(array $params = []) |
|
544 | + { |
|
545 | + $this->checkRequiredParameters(['name'], $params); |
|
546 | + $url = '/_security/role/' . $this->encode($params['name']); |
|
547 | + $method = 'DELETE'; |
|
548 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
549 | + $headers = ['Accept' => 'application/json']; |
|
550 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
551 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'security.delete_role'); |
|
552 | + return $this->client->sendRequest($request); |
|
553 | + } |
|
554 | + /** |
|
555 | + * Removes role mappings. |
|
556 | + * |
|
557 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-role-mapping.html |
|
558 | + * |
|
559 | + * @param array{ |
|
560 | + * name: string, // (REQUIRED) Role-mapping name |
|
561 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
562 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
563 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
564 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
565 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
566 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
567 | + * } $params |
|
568 | + * |
|
569 | + * @throws MissingParameterException if a required parameter is missing |
|
570 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
571 | + * @throws ClientResponseException if the status code of response is 4xx |
|
572 | + * @throws ServerResponseException if the status code of response is 5xx |
|
573 | + * |
|
574 | + * @return Elasticsearch|Promise |
|
575 | + */ |
|
576 | + public function deleteRoleMapping(array $params = []) |
|
577 | + { |
|
578 | + $this->checkRequiredParameters(['name'], $params); |
|
579 | + $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
580 | + $method = 'DELETE'; |
|
581 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
582 | + $headers = ['Accept' => 'application/json']; |
|
583 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
584 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'security.delete_role_mapping'); |
|
585 | + return $this->client->sendRequest($request); |
|
586 | + } |
|
587 | + /** |
|
588 | + * Deletes a service account token. |
|
589 | + * |
|
590 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-service-token.html |
|
591 | + * |
|
592 | + * @param array{ |
|
593 | + * namespace: string, // (REQUIRED) An identifier for the namespace |
|
594 | + * service: string, // (REQUIRED) An identifier for the service name |
|
595 | + * name: string, // (REQUIRED) An identifier for the token name |
|
596 | + * refresh: enum, // If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` (the default) then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
597 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
598 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
599 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
600 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
601 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
602 | + * } $params |
|
603 | + * |
|
604 | + * @throws MissingParameterException if a required parameter is missing |
|
605 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
606 | + * @throws ClientResponseException if the status code of response is 4xx |
|
607 | + * @throws ServerResponseException if the status code of response is 5xx |
|
608 | + * |
|
609 | + * @return Elasticsearch|Promise |
|
610 | + */ |
|
611 | + public function deleteServiceToken(array $params = []) |
|
612 | + { |
|
613 | + $this->checkRequiredParameters(['namespace', 'service', 'name'], $params); |
|
614 | + $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential/token/' . $this->encode($params['name']); |
|
615 | + $method = 'DELETE'; |
|
616 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
617 | + $headers = ['Accept' => 'application/json']; |
|
618 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
619 | + $request = $this->addOtelAttributes($params, ['namespace', 'service', 'name'], $request, 'security.delete_service_token'); |
|
620 | + return $this->client->sendRequest($request); |
|
621 | + } |
|
622 | + /** |
|
623 | + * Deletes users from the native realm. |
|
624 | + * |
|
625 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-delete-user.html |
|
626 | + * |
|
627 | + * @param array{ |
|
628 | + * username: string, // (REQUIRED) username |
|
629 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
630 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
631 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
632 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
633 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
634 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
635 | + * } $params |
|
636 | + * |
|
637 | + * @throws MissingParameterException if a required parameter is missing |
|
638 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
639 | + * @throws ClientResponseException if the status code of response is 4xx |
|
640 | + * @throws ServerResponseException if the status code of response is 5xx |
|
641 | + * |
|
642 | + * @return Elasticsearch|Promise |
|
643 | + */ |
|
644 | + public function deleteUser(array $params = []) |
|
645 | + { |
|
646 | + $this->checkRequiredParameters(['username'], $params); |
|
647 | + $url = '/_security/user/' . $this->encode($params['username']); |
|
648 | + $method = 'DELETE'; |
|
649 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
650 | + $headers = ['Accept' => 'application/json']; |
|
651 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
652 | + $request = $this->addOtelAttributes($params, ['username'], $request, 'security.delete_user'); |
|
653 | + return $this->client->sendRequest($request); |
|
654 | + } |
|
655 | + /** |
|
656 | + * Disables users in the native realm. |
|
657 | + * |
|
658 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-disable-user.html |
|
659 | + * |
|
660 | + * @param array{ |
|
661 | + * username: string, // (REQUIRED) The username of the user to disable |
|
662 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
663 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
664 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
665 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
666 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
667 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
668 | + * } $params |
|
669 | + * |
|
670 | + * @throws MissingParameterException if a required parameter is missing |
|
671 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
672 | + * @throws ClientResponseException if the status code of response is 4xx |
|
673 | + * @throws ServerResponseException if the status code of response is 5xx |
|
674 | + * |
|
675 | + * @return Elasticsearch|Promise |
|
676 | + */ |
|
677 | + public function disableUser(array $params = []) |
|
678 | + { |
|
679 | + $this->checkRequiredParameters(['username'], $params); |
|
680 | + $url = '/_security/user/' . $this->encode($params['username']) . '/_disable'; |
|
681 | + $method = 'PUT'; |
|
682 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
683 | + $headers = ['Accept' => 'application/json']; |
|
684 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
685 | + $request = $this->addOtelAttributes($params, ['username'], $request, 'security.disable_user'); |
|
686 | + return $this->client->sendRequest($request); |
|
687 | + } |
|
688 | + /** |
|
689 | + * Disables a user profile so it's not visible in user profile searches. |
|
690 | + * |
|
691 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-disable-user-profile.html |
|
692 | + * |
|
693 | + * @param array{ |
|
694 | + * uid: string, // (REQUIRED) Unique identifier for the user profile |
|
695 | + * refresh: enum, // If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` (the default) then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
696 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
697 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
698 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
699 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
700 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
701 | + * } $params |
|
702 | + * |
|
703 | + * @throws MissingParameterException if a required parameter is missing |
|
704 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
705 | + * @throws ClientResponseException if the status code of response is 4xx |
|
706 | + * @throws ServerResponseException if the status code of response is 5xx |
|
707 | + * |
|
708 | + * @return Elasticsearch|Promise |
|
709 | + */ |
|
710 | + public function disableUserProfile(array $params = []) |
|
711 | + { |
|
712 | + $this->checkRequiredParameters(['uid'], $params); |
|
713 | + $url = '/_security/profile/' . $this->encode($params['uid']) . '/_disable'; |
|
714 | + $method = 'PUT'; |
|
715 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
716 | + $headers = ['Accept' => 'application/json']; |
|
717 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
718 | + $request = $this->addOtelAttributes($params, ['uid'], $request, 'security.disable_user_profile'); |
|
719 | + return $this->client->sendRequest($request); |
|
720 | + } |
|
721 | + /** |
|
722 | + * Enables users in the native realm. |
|
723 | + * |
|
724 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-enable-user.html |
|
725 | + * |
|
726 | + * @param array{ |
|
727 | + * username: string, // (REQUIRED) The username of the user to enable |
|
728 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
729 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
730 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
731 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
732 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
733 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
734 | + * } $params |
|
735 | + * |
|
736 | + * @throws MissingParameterException if a required parameter is missing |
|
737 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
738 | + * @throws ClientResponseException if the status code of response is 4xx |
|
739 | + * @throws ServerResponseException if the status code of response is 5xx |
|
740 | + * |
|
741 | + * @return Elasticsearch|Promise |
|
742 | + */ |
|
743 | + public function enableUser(array $params = []) |
|
744 | + { |
|
745 | + $this->checkRequiredParameters(['username'], $params); |
|
746 | + $url = '/_security/user/' . $this->encode($params['username']) . '/_enable'; |
|
747 | + $method = 'PUT'; |
|
748 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
749 | + $headers = ['Accept' => 'application/json']; |
|
750 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
751 | + $request = $this->addOtelAttributes($params, ['username'], $request, 'security.enable_user'); |
|
752 | + return $this->client->sendRequest($request); |
|
753 | + } |
|
754 | + /** |
|
755 | + * Enables a user profile so it's visible in user profile searches. |
|
756 | + * |
|
757 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-enable-user-profile.html |
|
758 | + * |
|
759 | + * @param array{ |
|
760 | + * uid: string, // (REQUIRED) An unique identifier of the user profile |
|
761 | + * refresh: enum, // If `true` then refresh the affected shards to make this operation visible to search, if `wait_for` (the default) then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
762 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
763 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
764 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
765 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
766 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
767 | + * } $params |
|
768 | + * |
|
769 | + * @throws MissingParameterException if a required parameter is missing |
|
770 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
771 | + * @throws ClientResponseException if the status code of response is 4xx |
|
772 | + * @throws ServerResponseException if the status code of response is 5xx |
|
773 | + * |
|
774 | + * @return Elasticsearch|Promise |
|
775 | + */ |
|
776 | + public function enableUserProfile(array $params = []) |
|
777 | + { |
|
778 | + $this->checkRequiredParameters(['uid'], $params); |
|
779 | + $url = '/_security/profile/' . $this->encode($params['uid']) . '/_enable'; |
|
780 | + $method = 'PUT'; |
|
781 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
782 | + $headers = ['Accept' => 'application/json']; |
|
783 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
784 | + $request = $this->addOtelAttributes($params, ['uid'], $request, 'security.enable_user_profile'); |
|
785 | + return $this->client->sendRequest($request); |
|
786 | + } |
|
787 | + /** |
|
788 | + * Allows a kibana instance to configure itself to communicate with a secured elasticsearch cluster. |
|
789 | + * |
|
790 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-kibana-enrollment.html |
|
791 | + * |
|
792 | + * @param array{ |
|
793 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
794 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
795 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
796 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
797 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
798 | + * } $params |
|
799 | + * |
|
800 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
801 | + * @throws ClientResponseException if the status code of response is 4xx |
|
802 | + * @throws ServerResponseException if the status code of response is 5xx |
|
803 | + * |
|
804 | + * @return Elasticsearch|Promise |
|
805 | + */ |
|
806 | + public function enrollKibana(array $params = []) |
|
807 | + { |
|
808 | + $url = '/_security/enroll/kibana'; |
|
809 | + $method = 'GET'; |
|
810 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
811 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
812 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
813 | + $request = $this->addOtelAttributes($params, [], $request, 'security.enroll_kibana'); |
|
814 | + return $this->client->sendRequest($request); |
|
815 | + } |
|
816 | + /** |
|
817 | + * Allows a new node to enroll to an existing cluster with security enabled. |
|
818 | + * |
|
819 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-node-enrollment.html |
|
820 | + * |
|
821 | + * @param array{ |
|
822 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
823 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
824 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
825 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
826 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
827 | + * } $params |
|
828 | + * |
|
829 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
830 | + * @throws ClientResponseException if the status code of response is 4xx |
|
831 | + * @throws ServerResponseException if the status code of response is 5xx |
|
832 | + * |
|
833 | + * @return Elasticsearch|Promise |
|
834 | + */ |
|
835 | + public function enrollNode(array $params = []) |
|
836 | + { |
|
837 | + $url = '/_security/enroll/node'; |
|
838 | + $method = 'GET'; |
|
839 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
840 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
841 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
842 | + $request = $this->addOtelAttributes($params, [], $request, 'security.enroll_node'); |
|
843 | + return $this->client->sendRequest($request); |
|
844 | + } |
|
845 | + /** |
|
846 | + * Retrieves information for one or more API keys. |
|
847 | + * |
|
848 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-api-key.html |
|
849 | + * |
|
850 | + * @param array{ |
|
851 | + * id: string, // API key id of the API key to be retrieved |
|
852 | + * name: string, // API key name of the API key to be retrieved |
|
853 | + * username: string, // user name of the user who created this API key to be retrieved |
|
854 | + * realm_name: string, // realm name of the user who created this API key to be retrieved |
|
855 | + * owner: boolean, // flag to query API keys owned by the currently authenticated user |
|
856 | + * with_limited_by: boolean, // flag to show the limited-by role descriptors of API Keys |
|
857 | + * with_profile_uid: boolean, // flag to also retrieve the API Key's owner profile uid, if it exists |
|
858 | + * active_only: boolean, // flag to limit response to only active (not invalidated or expired) API keys |
|
859 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
860 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
861 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
862 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
863 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
864 | + * } $params |
|
865 | + * |
|
866 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
867 | + * @throws ClientResponseException if the status code of response is 4xx |
|
868 | + * @throws ServerResponseException if the status code of response is 5xx |
|
869 | + * |
|
870 | + * @return Elasticsearch|Promise |
|
871 | + */ |
|
872 | + public function getApiKey(array $params = []) |
|
873 | + { |
|
874 | + $url = '/_security/api_key'; |
|
875 | + $method = 'GET'; |
|
876 | + $url = $this->addQueryString($url, $params, ['id', 'name', 'username', 'realm_name', 'owner', 'with_limited_by', 'with_profile_uid', 'active_only', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
877 | + $headers = ['Accept' => 'application/json']; |
|
878 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
879 | + $request = $this->addOtelAttributes($params, [], $request, 'security.get_api_key'); |
|
880 | + return $this->client->sendRequest($request); |
|
881 | + } |
|
882 | + /** |
|
883 | + * Retrieves the list of cluster privileges and index privileges that are available in this version of Elasticsearch. |
|
884 | + * |
|
885 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-builtin-privileges.html |
|
886 | + * |
|
887 | + * @param array{ |
|
888 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
889 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
890 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
891 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
892 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
893 | + * } $params |
|
894 | + * |
|
895 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
896 | + * @throws ClientResponseException if the status code of response is 4xx |
|
897 | + * @throws ServerResponseException if the status code of response is 5xx |
|
898 | + * |
|
899 | + * @return Elasticsearch|Promise |
|
900 | + */ |
|
901 | + public function getBuiltinPrivileges(array $params = []) |
|
902 | + { |
|
903 | + $url = '/_security/privilege/_builtin'; |
|
904 | + $method = 'GET'; |
|
905 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
906 | + $headers = ['Accept' => 'application/json']; |
|
907 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
908 | + $request = $this->addOtelAttributes($params, [], $request, 'security.get_builtin_privileges'); |
|
909 | + return $this->client->sendRequest($request); |
|
910 | + } |
|
911 | + /** |
|
912 | + * Retrieves application privileges. |
|
913 | + * |
|
914 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-privileges.html |
|
915 | + * |
|
916 | + * @param array{ |
|
917 | + * application: string, // Application name |
|
918 | + * name: string, // Privilege name |
|
919 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
920 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
921 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
922 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
923 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
924 | + * } $params |
|
925 | + * |
|
926 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
927 | + * @throws ClientResponseException if the status code of response is 4xx |
|
928 | + * @throws ServerResponseException if the status code of response is 5xx |
|
929 | + * |
|
930 | + * @return Elasticsearch|Promise |
|
931 | + */ |
|
932 | + public function getPrivileges(array $params = []) |
|
933 | + { |
|
934 | + if (isset($params['application']) && isset($params['name'])) { |
|
935 | + $url = '/_security/privilege/' . $this->encode($params['application']) . '/' . $this->encode($params['name']); |
|
936 | + $method = 'GET'; |
|
937 | + } elseif (isset($params['application'])) { |
|
938 | + $url = '/_security/privilege/' . $this->encode($params['application']); |
|
939 | + $method = 'GET'; |
|
940 | + } else { |
|
941 | + $url = '/_security/privilege'; |
|
942 | + $method = 'GET'; |
|
943 | + } |
|
944 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
945 | + $headers = ['Accept' => 'application/json']; |
|
946 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
947 | + $request = $this->addOtelAttributes($params, ['application', 'name'], $request, 'security.get_privileges'); |
|
948 | + return $this->client->sendRequest($request); |
|
949 | + } |
|
950 | + /** |
|
951 | + * Retrieves roles in the native realm. |
|
952 | + * |
|
953 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-role.html |
|
954 | + * |
|
955 | + * @param array{ |
|
956 | + * name: list, // A comma-separated list of role names |
|
957 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
958 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
959 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
960 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
961 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
962 | + * } $params |
|
963 | + * |
|
964 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
965 | + * @throws ClientResponseException if the status code of response is 4xx |
|
966 | + * @throws ServerResponseException if the status code of response is 5xx |
|
967 | + * |
|
968 | + * @return Elasticsearch|Promise |
|
969 | + */ |
|
970 | + public function getRole(array $params = []) |
|
971 | + { |
|
972 | + if (isset($params['name'])) { |
|
973 | + $url = '/_security/role/' . $this->encode($params['name']); |
|
974 | + $method = 'GET'; |
|
975 | + } else { |
|
976 | + $url = '/_security/role'; |
|
977 | + $method = 'GET'; |
|
978 | + } |
|
979 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
980 | + $headers = ['Accept' => 'application/json']; |
|
981 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
982 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'security.get_role'); |
|
983 | + return $this->client->sendRequest($request); |
|
984 | + } |
|
985 | + /** |
|
986 | + * Retrieves role mappings. |
|
987 | + * |
|
988 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-role-mapping.html |
|
989 | + * |
|
990 | + * @param array{ |
|
991 | + * name: list, // A comma-separated list of role-mapping names |
|
992 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
993 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
994 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
995 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
996 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
997 | + * } $params |
|
998 | + * |
|
999 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1000 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1001 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1002 | + * |
|
1003 | + * @return Elasticsearch|Promise |
|
1004 | + */ |
|
1005 | + public function getRoleMapping(array $params = []) |
|
1006 | + { |
|
1007 | + if (isset($params['name'])) { |
|
1008 | + $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
1009 | + $method = 'GET'; |
|
1010 | + } else { |
|
1011 | + $url = '/_security/role_mapping'; |
|
1012 | + $method = 'GET'; |
|
1013 | + } |
|
1014 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1015 | + $headers = ['Accept' => 'application/json']; |
|
1016 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1017 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'security.get_role_mapping'); |
|
1018 | + return $this->client->sendRequest($request); |
|
1019 | + } |
|
1020 | + /** |
|
1021 | + * Retrieves information about service accounts. |
|
1022 | + * |
|
1023 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-service-accounts.html |
|
1024 | + * |
|
1025 | + * @param array{ |
|
1026 | + * namespace: string, // An identifier for the namespace |
|
1027 | + * service: string, // An identifier for the service name |
|
1028 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1029 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1030 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1031 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1032 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1033 | + * } $params |
|
1034 | + * |
|
1035 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1036 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1037 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1038 | + * |
|
1039 | + * @return Elasticsearch|Promise |
|
1040 | + */ |
|
1041 | + public function getServiceAccounts(array $params = []) |
|
1042 | + { |
|
1043 | + if (isset($params['namespace']) && isset($params['service'])) { |
|
1044 | + $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']); |
|
1045 | + $method = 'GET'; |
|
1046 | + } elseif (isset($params['namespace'])) { |
|
1047 | + $url = '/_security/service/' . $this->encode($params['namespace']); |
|
1048 | + $method = 'GET'; |
|
1049 | + } else { |
|
1050 | + $url = '/_security/service'; |
|
1051 | + $method = 'GET'; |
|
1052 | + } |
|
1053 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1054 | + $headers = ['Accept' => 'application/json']; |
|
1055 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1056 | + $request = $this->addOtelAttributes($params, ['namespace', 'service'], $request, 'security.get_service_accounts'); |
|
1057 | + return $this->client->sendRequest($request); |
|
1058 | + } |
|
1059 | + /** |
|
1060 | + * Retrieves information of all service credentials for a service account. |
|
1061 | + * |
|
1062 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-service-credentials.html |
|
1063 | + * |
|
1064 | + * @param array{ |
|
1065 | + * namespace: string, // (REQUIRED) An identifier for the namespace |
|
1066 | + * service: string, // (REQUIRED) An identifier for the service name |
|
1067 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1068 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1069 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1070 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1071 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1072 | + * } $params |
|
1073 | + * |
|
1074 | + * @throws MissingParameterException if a required parameter is missing |
|
1075 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1076 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1077 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1078 | + * |
|
1079 | + * @return Elasticsearch|Promise |
|
1080 | + */ |
|
1081 | + public function getServiceCredentials(array $params = []) |
|
1082 | + { |
|
1083 | + $this->checkRequiredParameters(['namespace', 'service'], $params); |
|
1084 | + $url = '/_security/service/' . $this->encode($params['namespace']) . '/' . $this->encode($params['service']) . '/credential'; |
|
1085 | + $method = 'GET'; |
|
1086 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1087 | + $headers = ['Accept' => 'application/json']; |
|
1088 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1089 | + $request = $this->addOtelAttributes($params, ['namespace', 'service'], $request, 'security.get_service_credentials'); |
|
1090 | + return $this->client->sendRequest($request); |
|
1091 | + } |
|
1092 | + /** |
|
1093 | + * Retrieve settings for the security system indices |
|
1094 | + * |
|
1095 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-settings.html |
|
1096 | + * |
|
1097 | + * @param array{ |
|
1098 | + * master_timeout: time, // Timeout for connection to master |
|
1099 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1100 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1101 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1102 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1103 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1104 | + * } $params |
|
1105 | + * |
|
1106 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1107 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1108 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1109 | + * |
|
1110 | + * @return Elasticsearch|Promise |
|
1111 | + */ |
|
1112 | + public function getSettings(array $params = []) |
|
1113 | + { |
|
1114 | + $url = '/_security/settings'; |
|
1115 | + $method = 'GET'; |
|
1116 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1117 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1118 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1119 | + $request = $this->addOtelAttributes($params, [], $request, 'security.get_settings'); |
|
1120 | + return $this->client->sendRequest($request); |
|
1121 | + } |
|
1122 | + /** |
|
1123 | + * Creates a bearer token for access without requiring basic authentication. |
|
1124 | + * |
|
1125 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-token.html |
|
1126 | + * |
|
1127 | + * @param array{ |
|
1128 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1129 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1130 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1131 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1132 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1133 | + * body: array, // (REQUIRED) The token request to get |
|
1134 | + * } $params |
|
1135 | + * |
|
1136 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1137 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1138 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1139 | + * |
|
1140 | + * @return Elasticsearch|Promise |
|
1141 | + */ |
|
1142 | + public function getToken(array $params = []) |
|
1143 | + { |
|
1144 | + $this->checkRequiredParameters(['body'], $params); |
|
1145 | + $url = '/_security/oauth2/token'; |
|
1146 | + $method = 'POST'; |
|
1147 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1148 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1149 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1150 | + $request = $this->addOtelAttributes($params, [], $request, 'security.get_token'); |
|
1151 | + return $this->client->sendRequest($request); |
|
1152 | + } |
|
1153 | + /** |
|
1154 | + * Retrieves information about users in the native realm and built-in users. |
|
1155 | + * |
|
1156 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-user.html |
|
1157 | + * |
|
1158 | + * @param array{ |
|
1159 | + * username: list, // A comma-separated list of usernames |
|
1160 | + * with_profile_uid: boolean, // flag to retrieve profile uid (if exists) associated to the user |
|
1161 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1162 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1163 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1164 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1165 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1166 | + * } $params |
|
1167 | + * |
|
1168 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1169 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1170 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1171 | + * |
|
1172 | + * @return Elasticsearch|Promise |
|
1173 | + */ |
|
1174 | + public function getUser(array $params = []) |
|
1175 | + { |
|
1176 | + if (isset($params['username'])) { |
|
1177 | + $url = '/_security/user/' . $this->encode($params['username']); |
|
1178 | + $method = 'GET'; |
|
1179 | + } else { |
|
1180 | + $url = '/_security/user'; |
|
1181 | + $method = 'GET'; |
|
1182 | + } |
|
1183 | + $url = $this->addQueryString($url, $params, ['with_profile_uid', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1184 | + $headers = ['Accept' => 'application/json']; |
|
1185 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1186 | + $request = $this->addOtelAttributes($params, ['username'], $request, 'security.get_user'); |
|
1187 | + return $this->client->sendRequest($request); |
|
1188 | + } |
|
1189 | + /** |
|
1190 | + * Retrieves security privileges for the logged in user. |
|
1191 | + * |
|
1192 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-user-privileges.html |
|
1193 | + * |
|
1194 | + * @param array{ |
|
1195 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1196 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1197 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1198 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1199 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1200 | + * } $params |
|
1201 | + * |
|
1202 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1203 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1204 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1205 | + * |
|
1206 | + * @return Elasticsearch|Promise |
|
1207 | + */ |
|
1208 | + public function getUserPrivileges(array $params = []) |
|
1209 | + { |
|
1210 | + $url = '/_security/user/_privileges'; |
|
1211 | + $method = 'GET'; |
|
1212 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1213 | + $headers = ['Accept' => 'application/json']; |
|
1214 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1215 | + $request = $this->addOtelAttributes($params, [], $request, 'security.get_user_privileges'); |
|
1216 | + return $this->client->sendRequest($request); |
|
1217 | + } |
|
1218 | + /** |
|
1219 | + * Retrieves user profiles for the given unique ID(s). |
|
1220 | + * |
|
1221 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-get-user-profile.html |
|
1222 | + * |
|
1223 | + * @param array{ |
|
1224 | + * uid: list, // (REQUIRED) A comma-separated list of unique identifier for user profiles |
|
1225 | + * data: list, // A comma-separated list of keys for which the corresponding application data are retrieved. |
|
1226 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1227 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1228 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1229 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1230 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1231 | + * } $params |
|
1232 | + * |
|
1233 | + * @throws MissingParameterException if a required parameter is missing |
|
1234 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1235 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1236 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1237 | + * |
|
1238 | + * @return Elasticsearch|Promise |
|
1239 | + */ |
|
1240 | + public function getUserProfile(array $params = []) |
|
1241 | + { |
|
1242 | + $this->checkRequiredParameters(['uid'], $params); |
|
1243 | + $url = '/_security/profile/' . $this->encode($params['uid']); |
|
1244 | + $method = 'GET'; |
|
1245 | + $url = $this->addQueryString($url, $params, ['data', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1246 | + $headers = ['Accept' => 'application/json']; |
|
1247 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1248 | + $request = $this->addOtelAttributes($params, ['uid'], $request, 'security.get_user_profile'); |
|
1249 | + return $this->client->sendRequest($request); |
|
1250 | + } |
|
1251 | + /** |
|
1252 | + * Creates an API key on behalf of another user. |
|
1253 | + * |
|
1254 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-grant-api-key.html |
|
1255 | + * |
|
1256 | + * @param array{ |
|
1257 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1258 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1259 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1260 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1261 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1262 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1263 | + * body: array, // (REQUIRED) The api key request to create an API key |
|
1264 | + * } $params |
|
1265 | + * |
|
1266 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1267 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1268 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1269 | + * |
|
1270 | + * @return Elasticsearch|Promise |
|
1271 | + */ |
|
1272 | + public function grantApiKey(array $params = []) |
|
1273 | + { |
|
1274 | + $this->checkRequiredParameters(['body'], $params); |
|
1275 | + $url = '/_security/api_key/grant'; |
|
1276 | + $method = 'POST'; |
|
1277 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1278 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1279 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1280 | + $request = $this->addOtelAttributes($params, [], $request, 'security.grant_api_key'); |
|
1281 | + return $this->client->sendRequest($request); |
|
1282 | + } |
|
1283 | + /** |
|
1284 | + * Determines whether the specified user has a specified list of privileges. |
|
1285 | + * |
|
1286 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-has-privileges.html |
|
1287 | + * |
|
1288 | + * @param array{ |
|
1289 | + * user: string, // Username |
|
1290 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1291 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1292 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1293 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1294 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1295 | + * body: array, // (REQUIRED) The privileges to test |
|
1296 | + * } $params |
|
1297 | + * |
|
1298 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1299 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1300 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1301 | + * |
|
1302 | + * @return Elasticsearch|Promise |
|
1303 | + */ |
|
1304 | + public function hasPrivileges(array $params = []) |
|
1305 | + { |
|
1306 | + $this->checkRequiredParameters(['body'], $params); |
|
1307 | + if (isset($params['user'])) { |
|
1308 | + $url = '/_security/user/' . $this->encode($params['user']) . '/_has_privileges'; |
|
1309 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1310 | + } else { |
|
1311 | + $url = '/_security/user/_has_privileges'; |
|
1312 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1313 | + } |
|
1314 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1315 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1316 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1317 | + $request = $this->addOtelAttributes($params, ['user'], $request, 'security.has_privileges'); |
|
1318 | + return $this->client->sendRequest($request); |
|
1319 | + } |
|
1320 | + /** |
|
1321 | + * Determines whether the users associated with the specified profile IDs have all the requested privileges. |
|
1322 | + * |
|
1323 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-has-privileges-user-profile.html |
|
1324 | + * |
|
1325 | + * @param array{ |
|
1326 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1327 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1328 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1329 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1330 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1331 | + * body: array, // (REQUIRED) The privileges to check and the list of profile IDs |
|
1332 | + * } $params |
|
1333 | + * |
|
1334 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1335 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1336 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1337 | + * |
|
1338 | + * @return Elasticsearch|Promise |
|
1339 | + */ |
|
1340 | + public function hasPrivilegesUserProfile(array $params = []) |
|
1341 | + { |
|
1342 | + $this->checkRequiredParameters(['body'], $params); |
|
1343 | + $url = '/_security/profile/_has_privileges'; |
|
1344 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1345 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1346 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1347 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1348 | + $request = $this->addOtelAttributes($params, [], $request, 'security.has_privileges_user_profile'); |
|
1349 | + return $this->client->sendRequest($request); |
|
1350 | + } |
|
1351 | + /** |
|
1352 | + * Invalidates one or more API keys. |
|
1353 | + * |
|
1354 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-invalidate-api-key.html |
|
1355 | + * |
|
1356 | + * @param array{ |
|
1357 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1358 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1359 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1360 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1361 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1362 | + * body: array, // (REQUIRED) The api key request to invalidate API key(s) |
|
1363 | + * } $params |
|
1364 | + * |
|
1365 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1366 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1367 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1368 | + * |
|
1369 | + * @return Elasticsearch|Promise |
|
1370 | + */ |
|
1371 | + public function invalidateApiKey(array $params = []) |
|
1372 | + { |
|
1373 | + $this->checkRequiredParameters(['body'], $params); |
|
1374 | + $url = '/_security/api_key'; |
|
1375 | + $method = 'DELETE'; |
|
1376 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1377 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1378 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1379 | + $request = $this->addOtelAttributes($params, [], $request, 'security.invalidate_api_key'); |
|
1380 | + return $this->client->sendRequest($request); |
|
1381 | + } |
|
1382 | + /** |
|
1383 | + * Invalidates one or more access tokens or refresh tokens. |
|
1384 | + * |
|
1385 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-invalidate-token.html |
|
1386 | + * |
|
1387 | + * @param array{ |
|
1388 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1389 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1390 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1391 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1392 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1393 | + * body: array, // (REQUIRED) The token to invalidate |
|
1394 | + * } $params |
|
1395 | + * |
|
1396 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1397 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1398 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1399 | + * |
|
1400 | + * @return Elasticsearch|Promise |
|
1401 | + */ |
|
1402 | + public function invalidateToken(array $params = []) |
|
1403 | + { |
|
1404 | + $this->checkRequiredParameters(['body'], $params); |
|
1405 | + $url = '/_security/oauth2/token'; |
|
1406 | + $method = 'DELETE'; |
|
1407 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1408 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1409 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1410 | + $request = $this->addOtelAttributes($params, [], $request, 'security.invalidate_token'); |
|
1411 | + return $this->client->sendRequest($request); |
|
1412 | + } |
|
1413 | + /** |
|
1414 | + * Exchanges an OpenID Connection authentication response message for an Elasticsearch access token and refresh token pair |
|
1415 | + * |
|
1416 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-oidc-authenticate.html |
|
1417 | + * |
|
1418 | + * @param array{ |
|
1419 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1420 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1421 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1422 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1423 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1424 | + * body: array, // (REQUIRED) The OpenID Connect response to authenticate |
|
1425 | + * } $params |
|
1426 | + * |
|
1427 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1428 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1429 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1430 | + * |
|
1431 | + * @return Elasticsearch|Promise |
|
1432 | + */ |
|
1433 | + public function oidcAuthenticate(array $params = []) |
|
1434 | + { |
|
1435 | + $this->checkRequiredParameters(['body'], $params); |
|
1436 | + $url = '/_security/oidc/authenticate'; |
|
1437 | + $method = 'POST'; |
|
1438 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1439 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1440 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1441 | + $request = $this->addOtelAttributes($params, [], $request, 'security.oidc_authenticate'); |
|
1442 | + return $this->client->sendRequest($request); |
|
1443 | + } |
|
1444 | + /** |
|
1445 | + * Invalidates a refresh token and access token that was generated from the OpenID Connect Authenticate API |
|
1446 | + * |
|
1447 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-oidc-logout.html |
|
1448 | + * |
|
1449 | + * @param array{ |
|
1450 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1451 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1452 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1453 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1454 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1455 | + * body: array, // (REQUIRED) Access token and refresh token to invalidate |
|
1456 | + * } $params |
|
1457 | + * |
|
1458 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1459 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1460 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1461 | + * |
|
1462 | + * @return Elasticsearch|Promise |
|
1463 | + */ |
|
1464 | + public function oidcLogout(array $params = []) |
|
1465 | + { |
|
1466 | + $this->checkRequiredParameters(['body'], $params); |
|
1467 | + $url = '/_security/oidc/logout'; |
|
1468 | + $method = 'POST'; |
|
1469 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1470 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1471 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1472 | + $request = $this->addOtelAttributes($params, [], $request, 'security.oidc_logout'); |
|
1473 | + return $this->client->sendRequest($request); |
|
1474 | + } |
|
1475 | + /** |
|
1476 | + * Creates an OAuth 2.0 authentication request as a URL string |
|
1477 | + * |
|
1478 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-oidc-prepare-authentication.html |
|
1479 | + * |
|
1480 | + * @param array{ |
|
1481 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1482 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1483 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1484 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1485 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1486 | + * body: array, // (REQUIRED) The OpenID Connect authentication realm configuration |
|
1487 | + * } $params |
|
1488 | + * |
|
1489 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1490 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1491 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1492 | + * |
|
1493 | + * @return Elasticsearch|Promise |
|
1494 | + */ |
|
1495 | + public function oidcPrepareAuthentication(array $params = []) |
|
1496 | + { |
|
1497 | + $this->checkRequiredParameters(['body'], $params); |
|
1498 | + $url = '/_security/oidc/prepare'; |
|
1499 | + $method = 'POST'; |
|
1500 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1501 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1502 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1503 | + $request = $this->addOtelAttributes($params, [], $request, 'security.oidc_prepare_authentication'); |
|
1504 | + return $this->client->sendRequest($request); |
|
1505 | + } |
|
1506 | + /** |
|
1507 | + * Adds or updates application privileges. |
|
1508 | + * |
|
1509 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-privileges.html |
|
1510 | + * |
|
1511 | + * @param array{ |
|
1512 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1513 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1514 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1515 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1516 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1517 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1518 | + * body: array, // (REQUIRED) The privilege(s) to add |
|
1519 | + * } $params |
|
1520 | + * |
|
1521 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1522 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1523 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1524 | + * |
|
1525 | + * @return Elasticsearch|Promise |
|
1526 | + */ |
|
1527 | + public function putPrivileges(array $params = []) |
|
1528 | + { |
|
1529 | + $this->checkRequiredParameters(['body'], $params); |
|
1530 | + $url = '/_security/privilege'; |
|
1531 | + $method = 'PUT'; |
|
1532 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1533 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1534 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1535 | + $request = $this->addOtelAttributes($params, [], $request, 'security.put_privileges'); |
|
1536 | + return $this->client->sendRequest($request); |
|
1537 | + } |
|
1538 | + /** |
|
1539 | + * Adds and updates roles in the native realm. |
|
1540 | + * |
|
1541 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-role.html |
|
1542 | + * |
|
1543 | + * @param array{ |
|
1544 | + * name: string, // (REQUIRED) Role name |
|
1545 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1546 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1547 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1548 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1549 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1550 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1551 | + * body: array, // (REQUIRED) The role to add |
|
1552 | + * } $params |
|
1553 | + * |
|
1554 | + * @throws MissingParameterException if a required parameter is missing |
|
1555 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1556 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1557 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1558 | + * |
|
1559 | + * @return Elasticsearch|Promise |
|
1560 | + */ |
|
1561 | + public function putRole(array $params = []) |
|
1562 | + { |
|
1563 | + $this->checkRequiredParameters(['name', 'body'], $params); |
|
1564 | + $url = '/_security/role/' . $this->encode($params['name']); |
|
1565 | + $method = 'PUT'; |
|
1566 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1567 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1568 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1569 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'security.put_role'); |
|
1570 | + return $this->client->sendRequest($request); |
|
1571 | + } |
|
1572 | + /** |
|
1573 | + * Creates and updates role mappings. |
|
1574 | + * |
|
1575 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-role-mapping.html |
|
1576 | + * |
|
1577 | + * @param array{ |
|
1578 | + * name: string, // (REQUIRED) Role-mapping name |
|
1579 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1580 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1581 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1582 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1583 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1584 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1585 | + * body: array, // (REQUIRED) The role mapping to add |
|
1586 | + * } $params |
|
1587 | + * |
|
1588 | + * @throws MissingParameterException if a required parameter is missing |
|
1589 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1590 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1591 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1592 | + * |
|
1593 | + * @return Elasticsearch|Promise |
|
1594 | + */ |
|
1595 | + public function putRoleMapping(array $params = []) |
|
1596 | + { |
|
1597 | + $this->checkRequiredParameters(['name', 'body'], $params); |
|
1598 | + $url = '/_security/role_mapping/' . $this->encode($params['name']); |
|
1599 | + $method = 'PUT'; |
|
1600 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1601 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1602 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1603 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'security.put_role_mapping'); |
|
1604 | + return $this->client->sendRequest($request); |
|
1605 | + } |
|
1606 | + /** |
|
1607 | + * Adds and updates users in the native realm. These users are commonly referred to as native users. |
|
1608 | + * |
|
1609 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-put-user.html |
|
1610 | + * |
|
1611 | + * @param array{ |
|
1612 | + * username: string, // (REQUIRED) The username of the User |
|
1613 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
1614 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1615 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1616 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1617 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1618 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1619 | + * body: array, // (REQUIRED) The user to add |
|
1620 | + * } $params |
|
1621 | + * |
|
1622 | + * @throws MissingParameterException if a required parameter is missing |
|
1623 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1624 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1625 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1626 | + * |
|
1627 | + * @return Elasticsearch|Promise |
|
1628 | + */ |
|
1629 | + public function putUser(array $params = []) |
|
1630 | + { |
|
1631 | + $this->checkRequiredParameters(['username', 'body'], $params); |
|
1632 | + $url = '/_security/user/' . $this->encode($params['username']); |
|
1633 | + $method = 'PUT'; |
|
1634 | + $url = $this->addQueryString($url, $params, ['refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1635 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1636 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1637 | + $request = $this->addOtelAttributes($params, ['username'], $request, 'security.put_user'); |
|
1638 | + return $this->client->sendRequest($request); |
|
1639 | + } |
|
1640 | + /** |
|
1641 | + * Retrieves information for API keys using a subset of query DSL |
|
1642 | + * |
|
1643 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-query-api-key.html |
|
1644 | + * |
|
1645 | + * @param array{ |
|
1646 | + * with_limited_by: boolean, // flag to show the limited-by role descriptors of API Keys |
|
1647 | + * with_profile_uid: boolean, // flag to also retrieve the API Key's owner profile uid, if it exists |
|
1648 | + * typed_keys: boolean, // flag to prefix aggregation names by their respective types in the response |
|
1649 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1650 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1651 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1652 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1653 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1654 | + * body: array, // From, size, query, sort and search_after |
|
1655 | + * } $params |
|
1656 | + * |
|
1657 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1658 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1659 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1660 | + * |
|
1661 | + * @return Elasticsearch|Promise |
|
1662 | + */ |
|
1663 | + public function queryApiKeys(array $params = []) |
|
1664 | + { |
|
1665 | + $url = '/_security/_query/api_key'; |
|
1666 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1667 | + $url = $this->addQueryString($url, $params, ['with_limited_by', 'with_profile_uid', 'typed_keys', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1668 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1669 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1670 | + $request = $this->addOtelAttributes($params, [], $request, 'security.query_api_keys'); |
|
1671 | + return $this->client->sendRequest($request); |
|
1672 | + } |
|
1673 | + /** |
|
1674 | + * Retrieves information for Roles using a subset of query DSL |
|
1675 | + * |
|
1676 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-query-role.html |
|
1677 | + * |
|
1678 | + * @param array{ |
|
1679 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1680 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1681 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1682 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1683 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1684 | + * body: array, // From, size, query, sort and search_after |
|
1685 | + * } $params |
|
1686 | + * |
|
1687 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1688 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1689 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1690 | + * |
|
1691 | + * @return Elasticsearch|Promise |
|
1692 | + */ |
|
1693 | + public function queryRole(array $params = []) |
|
1694 | + { |
|
1695 | + $url = '/_security/_query/role'; |
|
1696 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1697 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1698 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1699 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1700 | + $request = $this->addOtelAttributes($params, [], $request, 'security.query_role'); |
|
1701 | + return $this->client->sendRequest($request); |
|
1702 | + } |
|
1703 | + /** |
|
1704 | + * Retrieves information for Users using a subset of query DSL |
|
1705 | + * |
|
1706 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-query-user.html |
|
1707 | + * |
|
1708 | + * @param array{ |
|
1709 | + * with_profile_uid: boolean, // flag to retrieve profile uid (if exists) associated with the user |
|
1710 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1711 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1712 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1713 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1714 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1715 | + * body: array, // From, size, query, sort and search_after |
|
1716 | + * } $params |
|
1717 | + * |
|
1718 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1719 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1720 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1721 | + * |
|
1722 | + * @return Elasticsearch|Promise |
|
1723 | + */ |
|
1724 | + public function queryUser(array $params = []) |
|
1725 | + { |
|
1726 | + $url = '/_security/_query/user'; |
|
1727 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1728 | + $url = $this->addQueryString($url, $params, ['with_profile_uid', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1729 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1730 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1731 | + $request = $this->addOtelAttributes($params, [], $request, 'security.query_user'); |
|
1732 | + return $this->client->sendRequest($request); |
|
1733 | + } |
|
1734 | + /** |
|
1735 | + * Exchanges a SAML Response message for an Elasticsearch access token and refresh token pair |
|
1736 | + * |
|
1737 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-authenticate.html |
|
1738 | + * |
|
1739 | + * @param array{ |
|
1740 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1741 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1742 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1743 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1744 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1745 | + * body: array, // (REQUIRED) The SAML response to authenticate |
|
1746 | + * } $params |
|
1747 | + * |
|
1748 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1749 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1750 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1751 | + * |
|
1752 | + * @return Elasticsearch|Promise |
|
1753 | + */ |
|
1754 | + public function samlAuthenticate(array $params = []) |
|
1755 | + { |
|
1756 | + $this->checkRequiredParameters(['body'], $params); |
|
1757 | + $url = '/_security/saml/authenticate'; |
|
1758 | + $method = 'POST'; |
|
1759 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1760 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1761 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1762 | + $request = $this->addOtelAttributes($params, [], $request, 'security.saml_authenticate'); |
|
1763 | + return $this->client->sendRequest($request); |
|
1764 | + } |
|
1765 | + /** |
|
1766 | + * Verifies the logout response sent from the SAML IdP |
|
1767 | + * |
|
1768 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-complete-logout.html |
|
1769 | + * |
|
1770 | + * @param array{ |
|
1771 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1772 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1773 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1774 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1775 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1776 | + * body: array, // (REQUIRED) The logout response to verify |
|
1777 | + * } $params |
|
1778 | + * |
|
1779 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1780 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1781 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1782 | + * |
|
1783 | + * @return Elasticsearch|Promise |
|
1784 | + */ |
|
1785 | + public function samlCompleteLogout(array $params = []) |
|
1786 | + { |
|
1787 | + $this->checkRequiredParameters(['body'], $params); |
|
1788 | + $url = '/_security/saml/complete_logout'; |
|
1789 | + $method = 'POST'; |
|
1790 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1791 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1792 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1793 | + $request = $this->addOtelAttributes($params, [], $request, 'security.saml_complete_logout'); |
|
1794 | + return $this->client->sendRequest($request); |
|
1795 | + } |
|
1796 | + /** |
|
1797 | + * Consumes a SAML LogoutRequest |
|
1798 | + * |
|
1799 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-invalidate.html |
|
1800 | + * |
|
1801 | + * @param array{ |
|
1802 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1803 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1804 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1805 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1806 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1807 | + * body: array, // (REQUIRED) The LogoutRequest message |
|
1808 | + * } $params |
|
1809 | + * |
|
1810 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1811 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1812 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1813 | + * |
|
1814 | + * @return Elasticsearch|Promise |
|
1815 | + */ |
|
1816 | + public function samlInvalidate(array $params = []) |
|
1817 | + { |
|
1818 | + $this->checkRequiredParameters(['body'], $params); |
|
1819 | + $url = '/_security/saml/invalidate'; |
|
1820 | + $method = 'POST'; |
|
1821 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1822 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1823 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1824 | + $request = $this->addOtelAttributes($params, [], $request, 'security.saml_invalidate'); |
|
1825 | + return $this->client->sendRequest($request); |
|
1826 | + } |
|
1827 | + /** |
|
1828 | + * Invalidates an access token and a refresh token that were generated via the SAML Authenticate API |
|
1829 | + * |
|
1830 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-logout.html |
|
1831 | + * |
|
1832 | + * @param array{ |
|
1833 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1834 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1835 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1836 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1837 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1838 | + * body: array, // (REQUIRED) The tokens to invalidate |
|
1839 | + * } $params |
|
1840 | + * |
|
1841 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1842 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1843 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1844 | + * |
|
1845 | + * @return Elasticsearch|Promise |
|
1846 | + */ |
|
1847 | + public function samlLogout(array $params = []) |
|
1848 | + { |
|
1849 | + $this->checkRequiredParameters(['body'], $params); |
|
1850 | + $url = '/_security/saml/logout'; |
|
1851 | + $method = 'POST'; |
|
1852 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1853 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1854 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1855 | + $request = $this->addOtelAttributes($params, [], $request, 'security.saml_logout'); |
|
1856 | + return $this->client->sendRequest($request); |
|
1857 | + } |
|
1858 | + /** |
|
1859 | + * Creates a SAML authentication request |
|
1860 | + * |
|
1861 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-prepare-authentication.html |
|
1862 | + * |
|
1863 | + * @param array{ |
|
1864 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1865 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1866 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1867 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1868 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1869 | + * body: array, // (REQUIRED) The realm for which to create the authentication request, identified by either its name or the ACS URL |
|
1870 | + * } $params |
|
1871 | + * |
|
1872 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1873 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1874 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1875 | + * |
|
1876 | + * @return Elasticsearch|Promise |
|
1877 | + */ |
|
1878 | + public function samlPrepareAuthentication(array $params = []) |
|
1879 | + { |
|
1880 | + $this->checkRequiredParameters(['body'], $params); |
|
1881 | + $url = '/_security/saml/prepare'; |
|
1882 | + $method = 'POST'; |
|
1883 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1884 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1885 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1886 | + $request = $this->addOtelAttributes($params, [], $request, 'security.saml_prepare_authentication'); |
|
1887 | + return $this->client->sendRequest($request); |
|
1888 | + } |
|
1889 | + /** |
|
1890 | + * Generates SAML metadata for the Elastic stack SAML 2.0 Service Provider |
|
1891 | + * |
|
1892 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-saml-sp-metadata.html |
|
1893 | + * |
|
1894 | + * @param array{ |
|
1895 | + * realm_name: string, // (REQUIRED) The name of the SAML realm to get the metadata for |
|
1896 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1897 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1898 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1899 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1900 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1901 | + * } $params |
|
1902 | + * |
|
1903 | + * @throws MissingParameterException if a required parameter is missing |
|
1904 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1905 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1906 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1907 | + * |
|
1908 | + * @return Elasticsearch|Promise |
|
1909 | + */ |
|
1910 | + public function samlServiceProviderMetadata(array $params = []) |
|
1911 | + { |
|
1912 | + $this->checkRequiredParameters(['realm_name'], $params); |
|
1913 | + $url = '/_security/saml/metadata/' . $this->encode($params['realm_name']); |
|
1914 | + $method = 'GET'; |
|
1915 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1916 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1917 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1918 | + $request = $this->addOtelAttributes($params, ['realm_name'], $request, 'security.saml_service_provider_metadata'); |
|
1919 | + return $this->client->sendRequest($request); |
|
1920 | + } |
|
1921 | + /** |
|
1922 | + * Get suggestions for user profiles that match specified search criteria. |
|
1923 | + * |
|
1924 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/security-api-suggest-user-profile.html |
|
1925 | + * |
|
1926 | + * @param array{ |
|
1927 | + * data: list, // A comma-separated list of keys for which the corresponding application data are retrieved. |
|
1928 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1929 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1930 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1931 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1932 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1933 | + * body: array, // The suggestion definition for user profiles |
|
1934 | + * } $params |
|
1935 | + * |
|
1936 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1937 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1938 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1939 | + * |
|
1940 | + * @return Elasticsearch|Promise |
|
1941 | + */ |
|
1942 | + public function suggestUserProfiles(array $params = []) |
|
1943 | + { |
|
1944 | + $url = '/_security/profile/_suggest'; |
|
1945 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
1946 | + $url = $this->addQueryString($url, $params, ['data', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1947 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1948 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1949 | + $request = $this->addOtelAttributes($params, [], $request, 'security.suggest_user_profiles'); |
|
1950 | + return $this->client->sendRequest($request); |
|
1951 | + } |
|
1952 | + /** |
|
1953 | + * Updates attributes of an existing API key. |
|
1954 | + * |
|
1955 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-update-api-key.html |
|
1956 | + * |
|
1957 | + * @param array{ |
|
1958 | + * id: string, // (REQUIRED) The ID of the API key to update |
|
1959 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1960 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1961 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1962 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1963 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1964 | + * body: array, // The API key request to update attributes of an API key. |
|
1965 | + * } $params |
|
1966 | + * |
|
1967 | + * @throws MissingParameterException if a required parameter is missing |
|
1968 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
1969 | + * @throws ClientResponseException if the status code of response is 4xx |
|
1970 | + * @throws ServerResponseException if the status code of response is 5xx |
|
1971 | + * |
|
1972 | + * @return Elasticsearch|Promise |
|
1973 | + */ |
|
1974 | + public function updateApiKey(array $params = []) |
|
1975 | + { |
|
1976 | + $this->checkRequiredParameters(['id'], $params); |
|
1977 | + $url = '/_security/api_key/' . $this->encode($params['id']); |
|
1978 | + $method = 'PUT'; |
|
1979 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
1980 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
1981 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
1982 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'security.update_api_key'); |
|
1983 | + return $this->client->sendRequest($request); |
|
1984 | + } |
|
1985 | + /** |
|
1986 | + * Updates attributes of an existing cross-cluster API key. |
|
1987 | + * |
|
1988 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-update-cross-cluster-api-key.html |
|
1989 | + * |
|
1990 | + * @param array{ |
|
1991 | + * id: string, // (REQUIRED) The ID of the cross-cluster API key to update |
|
1992 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
1993 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
1994 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
1995 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
1996 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
1997 | + * body: array, // (REQUIRED) The request to update attributes of a cross-cluster API key. |
|
1998 | + * } $params |
|
1999 | + * |
|
2000 | + * @throws MissingParameterException if a required parameter is missing |
|
2001 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
2002 | + * @throws ClientResponseException if the status code of response is 4xx |
|
2003 | + * @throws ServerResponseException if the status code of response is 5xx |
|
2004 | + * |
|
2005 | + * @return Elasticsearch|Promise |
|
2006 | + */ |
|
2007 | + public function updateCrossClusterApiKey(array $params = []) |
|
2008 | + { |
|
2009 | + $this->checkRequiredParameters(['id', 'body'], $params); |
|
2010 | + $url = '/_security/cross_cluster/api_key/' . $this->encode($params['id']); |
|
2011 | + $method = 'PUT'; |
|
2012 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
2013 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
2014 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
2015 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'security.update_cross_cluster_api_key'); |
|
2016 | + return $this->client->sendRequest($request); |
|
2017 | + } |
|
2018 | + /** |
|
2019 | + * Update settings for the security system index |
|
2020 | + * |
|
2021 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-update-settings.html |
|
2022 | + * |
|
2023 | + * @param array{ |
|
2024 | + * master_timeout: time, // Timeout for connection to master |
|
2025 | + * timeout: time, // Timeout for acknowledgements from all nodes |
|
2026 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
2027 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
2028 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
2029 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
2030 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
2031 | + * body: array, // (REQUIRED) An object with the new settings for each index, if any |
|
2032 | + * } $params |
|
2033 | + * |
|
2034 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
2035 | + * @throws ClientResponseException if the status code of response is 4xx |
|
2036 | + * @throws ServerResponseException if the status code of response is 5xx |
|
2037 | + * |
|
2038 | + * @return Elasticsearch|Promise |
|
2039 | + */ |
|
2040 | + public function updateSettings(array $params = []) |
|
2041 | + { |
|
2042 | + $this->checkRequiredParameters(['body'], $params); |
|
2043 | + $url = '/_security/settings'; |
|
2044 | + $method = 'PUT'; |
|
2045 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
2046 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
2047 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
2048 | + $request = $this->addOtelAttributes($params, [], $request, 'security.update_settings'); |
|
2049 | + return $this->client->sendRequest($request); |
|
2050 | + } |
|
2051 | + /** |
|
2052 | + * Update application specific data for the user profile of the given unique ID. |
|
2053 | + * |
|
2054 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-update-user-profile-data.html |
|
2055 | + * |
|
2056 | + * @param array{ |
|
2057 | + * uid: string, // (REQUIRED) An unique identifier of the user profile |
|
2058 | + * if_seq_no: number, // only perform the update operation if the last operation that has changed the document has the specified sequence number |
|
2059 | + * if_primary_term: number, // only perform the update operation if the last operation that has changed the document has the specified primary term |
|
2060 | + * refresh: enum, // If `true` (the default) then refresh the affected shards to make this operation visible to search, if `wait_for` then wait for a refresh to make this operation visible to search, if `false` then do nothing with refreshes. |
|
2061 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
2062 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
2063 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
2064 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
2065 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
2066 | + * body: array, // (REQUIRED) The application data to update |
|
2067 | + * } $params |
|
2068 | + * |
|
2069 | + * @throws MissingParameterException if a required parameter is missing |
|
2070 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
2071 | + * @throws ClientResponseException if the status code of response is 4xx |
|
2072 | + * @throws ServerResponseException if the status code of response is 5xx |
|
2073 | + * |
|
2074 | + * @return Elasticsearch|Promise |
|
2075 | + */ |
|
2076 | + public function updateUserProfileData(array $params = []) |
|
2077 | + { |
|
2078 | + $this->checkRequiredParameters(['uid', 'body'], $params); |
|
2079 | + $url = '/_security/profile/' . $this->encode($params['uid']) . '/_data'; |
|
2080 | + $method = 'PUT'; |
|
2081 | + $url = $this->addQueryString($url, $params, ['if_seq_no', 'if_primary_term', 'refresh', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
2082 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
2083 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
2084 | + $request = $this->addOtelAttributes($params, ['uid'], $request, 'security.update_user_profile_data'); |
|
2085 | + return $this->client->sendRequest($request); |
|
2086 | + } |
|
2087 | 2087 | } |
@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -53,7 +53,7 @@ discard block |
||
53 | 53 | public function cancel(array $params = []) |
54 | 54 | { |
55 | 55 | if (isset($params['task_id'])) { |
56 | - $url = '/_tasks/' . $this->encode($params['task_id']) . '/_cancel'; |
|
56 | + $url = '/_tasks/'.$this->encode($params['task_id']).'/_cancel'; |
|
57 | 57 | $method = 'POST'; |
58 | 58 | } else { |
59 | 59 | $url = '/_tasks/_cancel'; |
@@ -90,7 +90,7 @@ discard block |
||
90 | 90 | public function get(array $params = []) |
91 | 91 | { |
92 | 92 | $this->checkRequiredParameters(['task_id'], $params); |
93 | - $url = '/_tasks/' . $this->encode($params['task_id']); |
|
93 | + $url = '/_tasks/'.$this->encode($params['task_id']); |
|
94 | 94 | $method = 'GET'; |
95 | 95 | $url = $this->addQueryString($url, $params, ['wait_for_completion', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
96 | 96 | $headers = ['Accept' => 'application/json']; |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class Tasks extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class Tasks extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Cancels a task, if it can be cancelled through an API. |
30 | 29 | * |
@@ -25,116 +25,116 @@ |
||
25 | 25 | */ |
26 | 26 | class Tasks extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Cancels a task, if it can be cancelled through an API. |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html |
|
32 | - * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
33 | - * |
|
34 | - * @param array{ |
|
35 | - * task_id: string, // Cancel the task with specified task id (node_id:task_number) |
|
36 | - * nodes: list, // A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes |
|
37 | - * actions: list, // A comma-separated list of actions that should be cancelled. Leave empty to cancel all. |
|
38 | - * parent_task_id: string, // Cancel tasks with specified parent task id (node_id:task_number). Set to -1 to cancel all. |
|
39 | - * wait_for_completion: boolean, // Should the request block until the cancellation of the task and its descendant tasks is completed. Defaults to false |
|
40 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
41 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
42 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
43 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
44 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
45 | - * } $params |
|
46 | - * |
|
47 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
48 | - * @throws ClientResponseException if the status code of response is 4xx |
|
49 | - * @throws ServerResponseException if the status code of response is 5xx |
|
50 | - * |
|
51 | - * @return Elasticsearch|Promise |
|
52 | - */ |
|
53 | - public function cancel(array $params = []) |
|
54 | - { |
|
55 | - if (isset($params['task_id'])) { |
|
56 | - $url = '/_tasks/' . $this->encode($params['task_id']) . '/_cancel'; |
|
57 | - $method = 'POST'; |
|
58 | - } else { |
|
59 | - $url = '/_tasks/_cancel'; |
|
60 | - $method = 'POST'; |
|
61 | - } |
|
62 | - $url = $this->addQueryString($url, $params, ['nodes', 'actions', 'parent_task_id', 'wait_for_completion', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
63 | - $headers = ['Accept' => 'application/json']; |
|
64 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
65 | - $request = $this->addOtelAttributes($params, ['task_id'], $request, 'tasks.cancel'); |
|
66 | - return $this->client->sendRequest($request); |
|
67 | - } |
|
68 | - /** |
|
69 | - * Returns information about a task. |
|
70 | - * |
|
71 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html |
|
72 | - * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
73 | - * |
|
74 | - * @param array{ |
|
75 | - * task_id: string, // (REQUIRED) Return the task with specified id (node_id:task_number) |
|
76 | - * wait_for_completion: boolean, // Wait for the matching tasks to complete (default: false) |
|
77 | - * timeout: time, // Explicit operation timeout |
|
78 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
79 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
80 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
81 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
82 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
83 | - * } $params |
|
84 | - * |
|
85 | - * @throws MissingParameterException if a required parameter is missing |
|
86 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
87 | - * @throws ClientResponseException if the status code of response is 4xx |
|
88 | - * @throws ServerResponseException if the status code of response is 5xx |
|
89 | - * |
|
90 | - * @return Elasticsearch|Promise |
|
91 | - */ |
|
92 | - public function get(array $params = []) |
|
93 | - { |
|
94 | - $this->checkRequiredParameters(['task_id'], $params); |
|
95 | - $url = '/_tasks/' . $this->encode($params['task_id']); |
|
96 | - $method = 'GET'; |
|
97 | - $url = $this->addQueryString($url, $params, ['wait_for_completion', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
98 | - $headers = ['Accept' => 'application/json']; |
|
99 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
100 | - $request = $this->addOtelAttributes($params, ['task_id'], $request, 'tasks.get'); |
|
101 | - return $this->client->sendRequest($request); |
|
102 | - } |
|
103 | - /** |
|
104 | - * Returns a list of tasks. |
|
105 | - * |
|
106 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html |
|
107 | - * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
108 | - * |
|
109 | - * @param array{ |
|
110 | - * nodes: list, // A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes |
|
111 | - * actions: list, // A comma-separated list of actions that should be returned. Leave empty to return all. |
|
112 | - * detailed: boolean, // Return detailed task information (default: false) |
|
113 | - * parent_task_id: string, // Return tasks with specified parent task id (node_id:task_number). Set to -1 to return all. |
|
114 | - * wait_for_completion: boolean, // Wait for the matching tasks to complete (default: false) |
|
115 | - * group_by: enum, // Group tasks by nodes or parent/child relationships |
|
116 | - * timeout: time, // Explicit operation timeout |
|
117 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
118 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
119 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
120 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
121 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
122 | - * } $params |
|
123 | - * |
|
124 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
125 | - * @throws ClientResponseException if the status code of response is 4xx |
|
126 | - * @throws ServerResponseException if the status code of response is 5xx |
|
127 | - * |
|
128 | - * @return Elasticsearch|Promise |
|
129 | - */ |
|
130 | - public function list(array $params = []) |
|
131 | - { |
|
132 | - $url = '/_tasks'; |
|
133 | - $method = 'GET'; |
|
134 | - $url = $this->addQueryString($url, $params, ['nodes', 'actions', 'detailed', 'parent_task_id', 'wait_for_completion', 'group_by', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
135 | - $headers = ['Accept' => 'application/json']; |
|
136 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
137 | - $request = $this->addOtelAttributes($params, [], $request, 'tasks.list'); |
|
138 | - return $this->client->sendRequest($request); |
|
139 | - } |
|
28 | + /** |
|
29 | + * Cancels a task, if it can be cancelled through an API. |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html |
|
32 | + * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
33 | + * |
|
34 | + * @param array{ |
|
35 | + * task_id: string, // Cancel the task with specified task id (node_id:task_number) |
|
36 | + * nodes: list, // A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes |
|
37 | + * actions: list, // A comma-separated list of actions that should be cancelled. Leave empty to cancel all. |
|
38 | + * parent_task_id: string, // Cancel tasks with specified parent task id (node_id:task_number). Set to -1 to cancel all. |
|
39 | + * wait_for_completion: boolean, // Should the request block until the cancellation of the task and its descendant tasks is completed. Defaults to false |
|
40 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
41 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
42 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
43 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
44 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
45 | + * } $params |
|
46 | + * |
|
47 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
48 | + * @throws ClientResponseException if the status code of response is 4xx |
|
49 | + * @throws ServerResponseException if the status code of response is 5xx |
|
50 | + * |
|
51 | + * @return Elasticsearch|Promise |
|
52 | + */ |
|
53 | + public function cancel(array $params = []) |
|
54 | + { |
|
55 | + if (isset($params['task_id'])) { |
|
56 | + $url = '/_tasks/' . $this->encode($params['task_id']) . '/_cancel'; |
|
57 | + $method = 'POST'; |
|
58 | + } else { |
|
59 | + $url = '/_tasks/_cancel'; |
|
60 | + $method = 'POST'; |
|
61 | + } |
|
62 | + $url = $this->addQueryString($url, $params, ['nodes', 'actions', 'parent_task_id', 'wait_for_completion', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
63 | + $headers = ['Accept' => 'application/json']; |
|
64 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
65 | + $request = $this->addOtelAttributes($params, ['task_id'], $request, 'tasks.cancel'); |
|
66 | + return $this->client->sendRequest($request); |
|
67 | + } |
|
68 | + /** |
|
69 | + * Returns information about a task. |
|
70 | + * |
|
71 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html |
|
72 | + * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
73 | + * |
|
74 | + * @param array{ |
|
75 | + * task_id: string, // (REQUIRED) Return the task with specified id (node_id:task_number) |
|
76 | + * wait_for_completion: boolean, // Wait for the matching tasks to complete (default: false) |
|
77 | + * timeout: time, // Explicit operation timeout |
|
78 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
79 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
80 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
81 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
82 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
83 | + * } $params |
|
84 | + * |
|
85 | + * @throws MissingParameterException if a required parameter is missing |
|
86 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
87 | + * @throws ClientResponseException if the status code of response is 4xx |
|
88 | + * @throws ServerResponseException if the status code of response is 5xx |
|
89 | + * |
|
90 | + * @return Elasticsearch|Promise |
|
91 | + */ |
|
92 | + public function get(array $params = []) |
|
93 | + { |
|
94 | + $this->checkRequiredParameters(['task_id'], $params); |
|
95 | + $url = '/_tasks/' . $this->encode($params['task_id']); |
|
96 | + $method = 'GET'; |
|
97 | + $url = $this->addQueryString($url, $params, ['wait_for_completion', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
98 | + $headers = ['Accept' => 'application/json']; |
|
99 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
100 | + $request = $this->addOtelAttributes($params, ['task_id'], $request, 'tasks.get'); |
|
101 | + return $this->client->sendRequest($request); |
|
102 | + } |
|
103 | + /** |
|
104 | + * Returns a list of tasks. |
|
105 | + * |
|
106 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/tasks.html |
|
107 | + * @internal This API is EXPERIMENTAL and may be changed or removed completely in a future release |
|
108 | + * |
|
109 | + * @param array{ |
|
110 | + * nodes: list, // A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes |
|
111 | + * actions: list, // A comma-separated list of actions that should be returned. Leave empty to return all. |
|
112 | + * detailed: boolean, // Return detailed task information (default: false) |
|
113 | + * parent_task_id: string, // Return tasks with specified parent task id (node_id:task_number). Set to -1 to return all. |
|
114 | + * wait_for_completion: boolean, // Wait for the matching tasks to complete (default: false) |
|
115 | + * group_by: enum, // Group tasks by nodes or parent/child relationships |
|
116 | + * timeout: time, // Explicit operation timeout |
|
117 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
118 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
119 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
120 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
121 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
122 | + * } $params |
|
123 | + * |
|
124 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
125 | + * @throws ClientResponseException if the status code of response is 4xx |
|
126 | + * @throws ServerResponseException if the status code of response is 5xx |
|
127 | + * |
|
128 | + * @return Elasticsearch|Promise |
|
129 | + */ |
|
130 | + public function list(array $params = []) |
|
131 | + { |
|
132 | + $url = '/_tasks'; |
|
133 | + $method = 'GET'; |
|
134 | + $url = $this->addQueryString($url, $params, ['nodes', 'actions', 'detailed', 'parent_task_id', 'wait_for_completion', 'group_by', 'timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
135 | + $headers = ['Accept' => 'application/json']; |
|
136 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
137 | + $request = $this->addOtelAttributes($params, [], $request, 'tasks.list'); |
|
138 | + return $this->client->sendRequest($request); |
|
139 | + } |
|
140 | 140 | } |
@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -78,7 +78,7 @@ discard block |
||
78 | 78 | public function deleteAsync(array $params = []) |
79 | 79 | { |
80 | 80 | $this->checkRequiredParameters(['id'], $params); |
81 | - $url = '/_sql/async/delete/' . $this->encode($params['id']); |
|
81 | + $url = '/_sql/async/delete/'.$this->encode($params['id']); |
|
82 | 82 | $method = 'DELETE'; |
83 | 83 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
84 | 84 | $headers = ['Accept' => 'application/json']; |
@@ -112,7 +112,7 @@ discard block |
||
112 | 112 | public function getAsync(array $params = []) |
113 | 113 | { |
114 | 114 | $this->checkRequiredParameters(['id'], $params); |
115 | - $url = '/_sql/async/' . $this->encode($params['id']); |
|
115 | + $url = '/_sql/async/'.$this->encode($params['id']); |
|
116 | 116 | $method = 'GET'; |
117 | 117 | $url = $this->addQueryString($url, $params, ['delimiter', 'format', 'keep_alive', 'wait_for_completion_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
118 | 118 | $headers = ['Accept' => 'application/json']; |
@@ -142,7 +142,7 @@ discard block |
||
142 | 142 | public function getAsyncStatus(array $params = []) |
143 | 143 | { |
144 | 144 | $this->checkRequiredParameters(['id'], $params); |
145 | - $url = '/_sql/async/status/' . $this->encode($params['id']); |
|
145 | + $url = '/_sql/async/status/'.$this->encode($params['id']); |
|
146 | 146 | $method = 'GET'; |
147 | 147 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
148 | 148 | $headers = ['Accept' => 'application/json']; |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class Sql extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class Sql extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Clears the SQL cursor |
30 | 29 | * |
@@ -25,198 +25,198 @@ |
||
25 | 25 | */ |
26 | 26 | class Sql extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Clears the SQL cursor |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/clear-sql-cursor-api.html |
|
32 | - * |
|
33 | - * @param array{ |
|
34 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
35 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
36 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
37 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
38 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
39 | - * body: array, // (REQUIRED) Specify the cursor value in the `cursor` element to clean the cursor. |
|
40 | - * } $params |
|
41 | - * |
|
42 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
43 | - * @throws ClientResponseException if the status code of response is 4xx |
|
44 | - * @throws ServerResponseException if the status code of response is 5xx |
|
45 | - * |
|
46 | - * @return Elasticsearch|Promise |
|
47 | - */ |
|
48 | - public function clearCursor(array $params = []) |
|
49 | - { |
|
50 | - $this->checkRequiredParameters(['body'], $params); |
|
51 | - $url = '/_sql/close'; |
|
52 | - $method = 'POST'; |
|
53 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
54 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
55 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
56 | - $request = $this->addOtelAttributes($params, [], $request, 'sql.clear_cursor'); |
|
57 | - return $this->client->sendRequest($request); |
|
58 | - } |
|
59 | - /** |
|
60 | - * Deletes an async SQL search or a stored synchronous SQL search. If the search is still running, the API cancels it. |
|
61 | - * |
|
62 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-async-sql-search-api.html |
|
63 | - * |
|
64 | - * @param array{ |
|
65 | - * id: string, // (REQUIRED) The async search ID |
|
66 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
67 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
68 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
69 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
70 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
71 | - * } $params |
|
72 | - * |
|
73 | - * @throws MissingParameterException if a required parameter is missing |
|
74 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
75 | - * @throws ClientResponseException if the status code of response is 4xx |
|
76 | - * @throws ServerResponseException if the status code of response is 5xx |
|
77 | - * |
|
78 | - * @return Elasticsearch|Promise |
|
79 | - */ |
|
80 | - public function deleteAsync(array $params = []) |
|
81 | - { |
|
82 | - $this->checkRequiredParameters(['id'], $params); |
|
83 | - $url = '/_sql/async/delete/' . $this->encode($params['id']); |
|
84 | - $method = 'DELETE'; |
|
85 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
86 | - $headers = ['Accept' => 'application/json']; |
|
87 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
88 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'sql.delete_async'); |
|
89 | - return $this->client->sendRequest($request); |
|
90 | - } |
|
91 | - /** |
|
92 | - * Returns the current status and available results for an async SQL search or stored synchronous SQL search |
|
93 | - * |
|
94 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/get-async-sql-search-api.html |
|
95 | - * |
|
96 | - * @param array{ |
|
97 | - * id: string, // (REQUIRED) The async search ID |
|
98 | - * delimiter: string, // Separator for CSV results |
|
99 | - * format: string, // Short version of the Accept header, e.g. json, yaml |
|
100 | - * keep_alive: time, // Retention period for the search and its results |
|
101 | - * wait_for_completion_timeout: time, // Duration to wait for complete results |
|
102 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
103 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
104 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
105 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
106 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
107 | - * } $params |
|
108 | - * |
|
109 | - * @throws MissingParameterException if a required parameter is missing |
|
110 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
111 | - * @throws ClientResponseException if the status code of response is 4xx |
|
112 | - * @throws ServerResponseException if the status code of response is 5xx |
|
113 | - * |
|
114 | - * @return Elasticsearch|Promise |
|
115 | - */ |
|
116 | - public function getAsync(array $params = []) |
|
117 | - { |
|
118 | - $this->checkRequiredParameters(['id'], $params); |
|
119 | - $url = '/_sql/async/' . $this->encode($params['id']); |
|
120 | - $method = 'GET'; |
|
121 | - $url = $this->addQueryString($url, $params, ['delimiter', 'format', 'keep_alive', 'wait_for_completion_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
122 | - $headers = ['Accept' => 'application/json']; |
|
123 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
124 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'sql.get_async'); |
|
125 | - return $this->client->sendRequest($request); |
|
126 | - } |
|
127 | - /** |
|
128 | - * Returns the current status of an async SQL search or a stored synchronous SQL search |
|
129 | - * |
|
130 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/get-async-sql-search-status-api.html |
|
131 | - * |
|
132 | - * @param array{ |
|
133 | - * id: string, // (REQUIRED) The async search ID |
|
134 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
135 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
136 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
137 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
138 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
139 | - * } $params |
|
140 | - * |
|
141 | - * @throws MissingParameterException if a required parameter is missing |
|
142 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
143 | - * @throws ClientResponseException if the status code of response is 4xx |
|
144 | - * @throws ServerResponseException if the status code of response is 5xx |
|
145 | - * |
|
146 | - * @return Elasticsearch|Promise |
|
147 | - */ |
|
148 | - public function getAsyncStatus(array $params = []) |
|
149 | - { |
|
150 | - $this->checkRequiredParameters(['id'], $params); |
|
151 | - $url = '/_sql/async/status/' . $this->encode($params['id']); |
|
152 | - $method = 'GET'; |
|
153 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
154 | - $headers = ['Accept' => 'application/json']; |
|
155 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
156 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'sql.get_async_status'); |
|
157 | - return $this->client->sendRequest($request); |
|
158 | - } |
|
159 | - /** |
|
160 | - * Executes a SQL request |
|
161 | - * |
|
162 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/sql-search-api.html |
|
163 | - * |
|
164 | - * @param array{ |
|
165 | - * format: string, // a short version of the Accept header, e.g. json, yaml |
|
166 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
167 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
168 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
169 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
170 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
171 | - * body: array, // (REQUIRED) Use the `query` element to start a query. Use the `cursor` element to continue a query. |
|
172 | - * } $params |
|
173 | - * |
|
174 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
175 | - * @throws ClientResponseException if the status code of response is 4xx |
|
176 | - * @throws ServerResponseException if the status code of response is 5xx |
|
177 | - * |
|
178 | - * @return Elasticsearch|Promise |
|
179 | - */ |
|
180 | - public function query(array $params = []) |
|
181 | - { |
|
182 | - $this->checkRequiredParameters(['body'], $params); |
|
183 | - $url = '/_sql'; |
|
184 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
185 | - $url = $this->addQueryString($url, $params, ['format', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
186 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
187 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
188 | - $request = $this->addOtelAttributes($params, [], $request, 'sql.query'); |
|
189 | - return $this->client->sendRequest($request); |
|
190 | - } |
|
191 | - /** |
|
192 | - * Translates SQL into Elasticsearch queries |
|
193 | - * |
|
194 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/sql-translate-api.html |
|
195 | - * |
|
196 | - * @param array{ |
|
197 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
198 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
199 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
200 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
201 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
202 | - * body: array, // (REQUIRED) Specify the query in the `query` element. |
|
203 | - * } $params |
|
204 | - * |
|
205 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
206 | - * @throws ClientResponseException if the status code of response is 4xx |
|
207 | - * @throws ServerResponseException if the status code of response is 5xx |
|
208 | - * |
|
209 | - * @return Elasticsearch|Promise |
|
210 | - */ |
|
211 | - public function translate(array $params = []) |
|
212 | - { |
|
213 | - $this->checkRequiredParameters(['body'], $params); |
|
214 | - $url = '/_sql/translate'; |
|
215 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
216 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
217 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
218 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
219 | - $request = $this->addOtelAttributes($params, [], $request, 'sql.translate'); |
|
220 | - return $this->client->sendRequest($request); |
|
221 | - } |
|
28 | + /** |
|
29 | + * Clears the SQL cursor |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/clear-sql-cursor-api.html |
|
32 | + * |
|
33 | + * @param array{ |
|
34 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
35 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
36 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
37 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
38 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
39 | + * body: array, // (REQUIRED) Specify the cursor value in the `cursor` element to clean the cursor. |
|
40 | + * } $params |
|
41 | + * |
|
42 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
43 | + * @throws ClientResponseException if the status code of response is 4xx |
|
44 | + * @throws ServerResponseException if the status code of response is 5xx |
|
45 | + * |
|
46 | + * @return Elasticsearch|Promise |
|
47 | + */ |
|
48 | + public function clearCursor(array $params = []) |
|
49 | + { |
|
50 | + $this->checkRequiredParameters(['body'], $params); |
|
51 | + $url = '/_sql/close'; |
|
52 | + $method = 'POST'; |
|
53 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
54 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
55 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
56 | + $request = $this->addOtelAttributes($params, [], $request, 'sql.clear_cursor'); |
|
57 | + return $this->client->sendRequest($request); |
|
58 | + } |
|
59 | + /** |
|
60 | + * Deletes an async SQL search or a stored synchronous SQL search. If the search is still running, the API cancels it. |
|
61 | + * |
|
62 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/delete-async-sql-search-api.html |
|
63 | + * |
|
64 | + * @param array{ |
|
65 | + * id: string, // (REQUIRED) The async search ID |
|
66 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
67 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
68 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
69 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
70 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
71 | + * } $params |
|
72 | + * |
|
73 | + * @throws MissingParameterException if a required parameter is missing |
|
74 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
75 | + * @throws ClientResponseException if the status code of response is 4xx |
|
76 | + * @throws ServerResponseException if the status code of response is 5xx |
|
77 | + * |
|
78 | + * @return Elasticsearch|Promise |
|
79 | + */ |
|
80 | + public function deleteAsync(array $params = []) |
|
81 | + { |
|
82 | + $this->checkRequiredParameters(['id'], $params); |
|
83 | + $url = '/_sql/async/delete/' . $this->encode($params['id']); |
|
84 | + $method = 'DELETE'; |
|
85 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
86 | + $headers = ['Accept' => 'application/json']; |
|
87 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
88 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'sql.delete_async'); |
|
89 | + return $this->client->sendRequest($request); |
|
90 | + } |
|
91 | + /** |
|
92 | + * Returns the current status and available results for an async SQL search or stored synchronous SQL search |
|
93 | + * |
|
94 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/get-async-sql-search-api.html |
|
95 | + * |
|
96 | + * @param array{ |
|
97 | + * id: string, // (REQUIRED) The async search ID |
|
98 | + * delimiter: string, // Separator for CSV results |
|
99 | + * format: string, // Short version of the Accept header, e.g. json, yaml |
|
100 | + * keep_alive: time, // Retention period for the search and its results |
|
101 | + * wait_for_completion_timeout: time, // Duration to wait for complete results |
|
102 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
103 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
104 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
105 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
106 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
107 | + * } $params |
|
108 | + * |
|
109 | + * @throws MissingParameterException if a required parameter is missing |
|
110 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
111 | + * @throws ClientResponseException if the status code of response is 4xx |
|
112 | + * @throws ServerResponseException if the status code of response is 5xx |
|
113 | + * |
|
114 | + * @return Elasticsearch|Promise |
|
115 | + */ |
|
116 | + public function getAsync(array $params = []) |
|
117 | + { |
|
118 | + $this->checkRequiredParameters(['id'], $params); |
|
119 | + $url = '/_sql/async/' . $this->encode($params['id']); |
|
120 | + $method = 'GET'; |
|
121 | + $url = $this->addQueryString($url, $params, ['delimiter', 'format', 'keep_alive', 'wait_for_completion_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
122 | + $headers = ['Accept' => 'application/json']; |
|
123 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
124 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'sql.get_async'); |
|
125 | + return $this->client->sendRequest($request); |
|
126 | + } |
|
127 | + /** |
|
128 | + * Returns the current status of an async SQL search or a stored synchronous SQL search |
|
129 | + * |
|
130 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/get-async-sql-search-status-api.html |
|
131 | + * |
|
132 | + * @param array{ |
|
133 | + * id: string, // (REQUIRED) The async search ID |
|
134 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
135 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
136 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
137 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
138 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
139 | + * } $params |
|
140 | + * |
|
141 | + * @throws MissingParameterException if a required parameter is missing |
|
142 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
143 | + * @throws ClientResponseException if the status code of response is 4xx |
|
144 | + * @throws ServerResponseException if the status code of response is 5xx |
|
145 | + * |
|
146 | + * @return Elasticsearch|Promise |
|
147 | + */ |
|
148 | + public function getAsyncStatus(array $params = []) |
|
149 | + { |
|
150 | + $this->checkRequiredParameters(['id'], $params); |
|
151 | + $url = '/_sql/async/status/' . $this->encode($params['id']); |
|
152 | + $method = 'GET'; |
|
153 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
154 | + $headers = ['Accept' => 'application/json']; |
|
155 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
156 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'sql.get_async_status'); |
|
157 | + return $this->client->sendRequest($request); |
|
158 | + } |
|
159 | + /** |
|
160 | + * Executes a SQL request |
|
161 | + * |
|
162 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/sql-search-api.html |
|
163 | + * |
|
164 | + * @param array{ |
|
165 | + * format: string, // a short version of the Accept header, e.g. json, yaml |
|
166 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
167 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
168 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
169 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
170 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
171 | + * body: array, // (REQUIRED) Use the `query` element to start a query. Use the `cursor` element to continue a query. |
|
172 | + * } $params |
|
173 | + * |
|
174 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
175 | + * @throws ClientResponseException if the status code of response is 4xx |
|
176 | + * @throws ServerResponseException if the status code of response is 5xx |
|
177 | + * |
|
178 | + * @return Elasticsearch|Promise |
|
179 | + */ |
|
180 | + public function query(array $params = []) |
|
181 | + { |
|
182 | + $this->checkRequiredParameters(['body'], $params); |
|
183 | + $url = '/_sql'; |
|
184 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
185 | + $url = $this->addQueryString($url, $params, ['format', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
186 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
187 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
188 | + $request = $this->addOtelAttributes($params, [], $request, 'sql.query'); |
|
189 | + return $this->client->sendRequest($request); |
|
190 | + } |
|
191 | + /** |
|
192 | + * Translates SQL into Elasticsearch queries |
|
193 | + * |
|
194 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/sql-translate-api.html |
|
195 | + * |
|
196 | + * @param array{ |
|
197 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
198 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
199 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
200 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
201 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
202 | + * body: array, // (REQUIRED) Specify the query in the `query` element. |
|
203 | + * } $params |
|
204 | + * |
|
205 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
206 | + * @throws ClientResponseException if the status code of response is 4xx |
|
207 | + * @throws ServerResponseException if the status code of response is 5xx |
|
208 | + * |
|
209 | + * @return Elasticsearch|Promise |
|
210 | + */ |
|
211 | + public function translate(array $params = []) |
|
212 | + { |
|
213 | + $this->checkRequiredParameters(['body'], $params); |
|
214 | + $url = '/_sql/translate'; |
|
215 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
216 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
217 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
218 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
219 | + $request = $this->addOtelAttributes($params, [], $request, 'sql.translate'); |
|
220 | + return $this->client->sendRequest($request); |
|
221 | + } |
|
222 | 222 | } |
@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -85,7 +85,7 @@ discard block |
||
85 | 85 | public function asyncQueryGet(array $params = []) |
86 | 86 | { |
87 | 87 | $this->checkRequiredParameters(['id'], $params); |
88 | - $url = '/_query/async/' . $this->encode($params['id']); |
|
88 | + $url = '/_query/async/'.$this->encode($params['id']); |
|
89 | 89 | $method = 'GET'; |
90 | 90 | $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_alive', 'drop_null_columns', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
91 | 91 | $headers = ['Accept' => 'application/json']; |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class Esql extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class Esql extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Executes an ESQL request asynchronously |
30 | 29 | * |
@@ -25,107 +25,107 @@ |
||
25 | 25 | */ |
26 | 26 | class Esql extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Executes an ESQL request asynchronously |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/esql-async-query-api.html |
|
32 | - * |
|
33 | - * @param array{ |
|
34 | - * format: string, // a short version of the Accept header, e.g. json, yaml |
|
35 | - * delimiter: string, // The character to use between values within a CSV row. Only valid for the csv format. |
|
36 | - * drop_null_columns: boolean, // Should entirely null columns be removed from the results? Their name and type will be returning in a new `all_columns` section. |
|
37 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
38 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
39 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
40 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
41 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
42 | - * body: array, // (REQUIRED) Use the `query` element to start a query. Use `columnar` to format the answer. |
|
43 | - * } $params |
|
44 | - * |
|
45 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
46 | - * @throws ClientResponseException if the status code of response is 4xx |
|
47 | - * @throws ServerResponseException if the status code of response is 5xx |
|
48 | - * |
|
49 | - * @return Elasticsearch|Promise |
|
50 | - */ |
|
51 | - public function asyncQuery(array $params = []) |
|
52 | - { |
|
53 | - $this->checkRequiredParameters(['body'], $params); |
|
54 | - $url = '/_query/async'; |
|
55 | - $method = 'POST'; |
|
56 | - $url = $this->addQueryString($url, $params, ['format', 'delimiter', 'drop_null_columns', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
57 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
58 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
59 | - $request = $this->addOtelAttributes($params, [], $request, 'esql.async_query'); |
|
60 | - return $this->client->sendRequest($request); |
|
61 | - } |
|
62 | - /** |
|
63 | - * Retrieves the results of a previously submitted async query request given its ID. |
|
64 | - * |
|
65 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/esql-async-query-get-api.html |
|
66 | - * |
|
67 | - * @param array{ |
|
68 | - * id: string, // (REQUIRED) The async query ID |
|
69 | - * wait_for_completion_timeout: time, // Specify the time that the request should block waiting for the final response |
|
70 | - * keep_alive: time, // Specify the time interval in which the results (partial or final) for this search will be available |
|
71 | - * drop_null_columns: boolean, // Should entirely null columns be removed from the results? Their name and type will be returning in a new `all_columns` section. |
|
72 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
73 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
74 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
75 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
76 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
77 | - * } $params |
|
78 | - * |
|
79 | - * @throws MissingParameterException if a required parameter is missing |
|
80 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
81 | - * @throws ClientResponseException if the status code of response is 4xx |
|
82 | - * @throws ServerResponseException if the status code of response is 5xx |
|
83 | - * |
|
84 | - * @return Elasticsearch|Promise |
|
85 | - */ |
|
86 | - public function asyncQueryGet(array $params = []) |
|
87 | - { |
|
88 | - $this->checkRequiredParameters(['id'], $params); |
|
89 | - $url = '/_query/async/' . $this->encode($params['id']); |
|
90 | - $method = 'GET'; |
|
91 | - $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_alive', 'drop_null_columns', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
92 | - $headers = ['Accept' => 'application/json']; |
|
93 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
94 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'esql.async_query_get'); |
|
95 | - return $this->client->sendRequest($request); |
|
96 | - } |
|
97 | - /** |
|
98 | - * Executes an ESQL request |
|
99 | - * |
|
100 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/esql-query-api.html |
|
101 | - * |
|
102 | - * @param array{ |
|
103 | - * format: string, // a short version of the Accept header, e.g. json, yaml |
|
104 | - * delimiter: string, // The character to use between values within a CSV row. Only valid for the csv format. |
|
105 | - * drop_null_columns: boolean, // Should entirely null columns be removed from the results? Their name and type will be returning in a new `all_columns` section. |
|
106 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
107 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
108 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
109 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
110 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
111 | - * body: array, // (REQUIRED) Use the `query` element to start a query. Use `columnar` to format the answer. |
|
112 | - * } $params |
|
113 | - * |
|
114 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
115 | - * @throws ClientResponseException if the status code of response is 4xx |
|
116 | - * @throws ServerResponseException if the status code of response is 5xx |
|
117 | - * |
|
118 | - * @return Elasticsearch|Promise |
|
119 | - */ |
|
120 | - public function query(array $params = []) |
|
121 | - { |
|
122 | - $this->checkRequiredParameters(['body'], $params); |
|
123 | - $url = '/_query'; |
|
124 | - $method = 'POST'; |
|
125 | - $url = $this->addQueryString($url, $params, ['format', 'delimiter', 'drop_null_columns', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
126 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
127 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
128 | - $request = $this->addOtelAttributes($params, [], $request, 'esql.query'); |
|
129 | - return $this->client->sendRequest($request); |
|
130 | - } |
|
28 | + /** |
|
29 | + * Executes an ESQL request asynchronously |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/esql-async-query-api.html |
|
32 | + * |
|
33 | + * @param array{ |
|
34 | + * format: string, // a short version of the Accept header, e.g. json, yaml |
|
35 | + * delimiter: string, // The character to use between values within a CSV row. Only valid for the csv format. |
|
36 | + * drop_null_columns: boolean, // Should entirely null columns be removed from the results? Their name and type will be returning in a new `all_columns` section. |
|
37 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
38 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
39 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
40 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
41 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
42 | + * body: array, // (REQUIRED) Use the `query` element to start a query. Use `columnar` to format the answer. |
|
43 | + * } $params |
|
44 | + * |
|
45 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
46 | + * @throws ClientResponseException if the status code of response is 4xx |
|
47 | + * @throws ServerResponseException if the status code of response is 5xx |
|
48 | + * |
|
49 | + * @return Elasticsearch|Promise |
|
50 | + */ |
|
51 | + public function asyncQuery(array $params = []) |
|
52 | + { |
|
53 | + $this->checkRequiredParameters(['body'], $params); |
|
54 | + $url = '/_query/async'; |
|
55 | + $method = 'POST'; |
|
56 | + $url = $this->addQueryString($url, $params, ['format', 'delimiter', 'drop_null_columns', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
57 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
58 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
59 | + $request = $this->addOtelAttributes($params, [], $request, 'esql.async_query'); |
|
60 | + return $this->client->sendRequest($request); |
|
61 | + } |
|
62 | + /** |
|
63 | + * Retrieves the results of a previously submitted async query request given its ID. |
|
64 | + * |
|
65 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/master/esql-async-query-get-api.html |
|
66 | + * |
|
67 | + * @param array{ |
|
68 | + * id: string, // (REQUIRED) The async query ID |
|
69 | + * wait_for_completion_timeout: time, // Specify the time that the request should block waiting for the final response |
|
70 | + * keep_alive: time, // Specify the time interval in which the results (partial or final) for this search will be available |
|
71 | + * drop_null_columns: boolean, // Should entirely null columns be removed from the results? Their name and type will be returning in a new `all_columns` section. |
|
72 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
73 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
74 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
75 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
76 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
77 | + * } $params |
|
78 | + * |
|
79 | + * @throws MissingParameterException if a required parameter is missing |
|
80 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
81 | + * @throws ClientResponseException if the status code of response is 4xx |
|
82 | + * @throws ServerResponseException if the status code of response is 5xx |
|
83 | + * |
|
84 | + * @return Elasticsearch|Promise |
|
85 | + */ |
|
86 | + public function asyncQueryGet(array $params = []) |
|
87 | + { |
|
88 | + $this->checkRequiredParameters(['id'], $params); |
|
89 | + $url = '/_query/async/' . $this->encode($params['id']); |
|
90 | + $method = 'GET'; |
|
91 | + $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_alive', 'drop_null_columns', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
92 | + $headers = ['Accept' => 'application/json']; |
|
93 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
94 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'esql.async_query_get'); |
|
95 | + return $this->client->sendRequest($request); |
|
96 | + } |
|
97 | + /** |
|
98 | + * Executes an ESQL request |
|
99 | + * |
|
100 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/esql-query-api.html |
|
101 | + * |
|
102 | + * @param array{ |
|
103 | + * format: string, // a short version of the Accept header, e.g. json, yaml |
|
104 | + * delimiter: string, // The character to use between values within a CSV row. Only valid for the csv format. |
|
105 | + * drop_null_columns: boolean, // Should entirely null columns be removed from the results? Their name and type will be returning in a new `all_columns` section. |
|
106 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
107 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
108 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
109 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
110 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
111 | + * body: array, // (REQUIRED) Use the `query` element to start a query. Use `columnar` to format the answer. |
|
112 | + * } $params |
|
113 | + * |
|
114 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
115 | + * @throws ClientResponseException if the status code of response is 4xx |
|
116 | + * @throws ServerResponseException if the status code of response is 5xx |
|
117 | + * |
|
118 | + * @return Elasticsearch|Promise |
|
119 | + */ |
|
120 | + public function query(array $params = []) |
|
121 | + { |
|
122 | + $this->checkRequiredParameters(['body'], $params); |
|
123 | + $url = '/_query'; |
|
124 | + $method = 'POST'; |
|
125 | + $url = $this->addQueryString($url, $params, ['format', 'delimiter', 'drop_null_columns', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
126 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
127 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
128 | + $request = $this->addOtelAttributes($params, [], $request, 'esql.query'); |
|
129 | + return $this->client->sendRequest($request); |
|
130 | + } |
|
131 | 131 | } |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class Ccr extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class Ccr extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Deletes auto-follow patterns. |
30 | 29 | * |
@@ -25,439 +25,439 @@ |
||
25 | 25 | */ |
26 | 26 | class Ccr extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Deletes auto-follow patterns. |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-delete-auto-follow-pattern.html |
|
32 | - * |
|
33 | - * @param array{ |
|
34 | - * name: string, // (REQUIRED) The name of the auto follow pattern. |
|
35 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
36 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
37 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
38 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
39 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
40 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
41 | - * } $params |
|
42 | - * |
|
43 | - * @throws MissingParameterException if a required parameter is missing |
|
44 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
45 | - * @throws ClientResponseException if the status code of response is 4xx |
|
46 | - * @throws ServerResponseException if the status code of response is 5xx |
|
47 | - * |
|
48 | - * @return Elasticsearch|Promise |
|
49 | - */ |
|
50 | - public function deleteAutoFollowPattern(array $params = []) |
|
51 | - { |
|
52 | - $this->checkRequiredParameters(['name'], $params); |
|
53 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
54 | - $method = 'DELETE'; |
|
55 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
56 | - $headers = ['Accept' => 'application/json']; |
|
57 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
58 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.delete_auto_follow_pattern'); |
|
59 | - return $this->client->sendRequest($request); |
|
60 | - } |
|
61 | - /** |
|
62 | - * Creates a new follower index configured to follow the referenced leader index. |
|
63 | - * |
|
64 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-put-follow.html |
|
65 | - * |
|
66 | - * @param array{ |
|
67 | - * index: string, // (REQUIRED) The name of the follower index |
|
68 | - * wait_for_active_shards: string, // Sets the number of shard copies that must be active before returning. Defaults to 0. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1) |
|
69 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
70 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
71 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
72 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
73 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
74 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
75 | - * body: array, // (REQUIRED) The name of the leader index and other optional ccr related parameters |
|
76 | - * } $params |
|
77 | - * |
|
78 | - * @throws MissingParameterException if a required parameter is missing |
|
79 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
80 | - * @throws ClientResponseException if the status code of response is 4xx |
|
81 | - * @throws ServerResponseException if the status code of response is 5xx |
|
82 | - * |
|
83 | - * @return Elasticsearch|Promise |
|
84 | - */ |
|
85 | - public function follow(array $params = []) |
|
86 | - { |
|
87 | - $this->checkRequiredParameters(['index', 'body'], $params); |
|
88 | - $url = '/' . $this->encode($params['index']) . '/_ccr/follow'; |
|
89 | - $method = 'PUT'; |
|
90 | - $url = $this->addQueryString($url, $params, ['wait_for_active_shards', 'master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
91 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
92 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
93 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.follow'); |
|
94 | - return $this->client->sendRequest($request); |
|
95 | - } |
|
96 | - /** |
|
97 | - * Retrieves information about all follower indices, including parameters and status for each follower index |
|
98 | - * |
|
99 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-get-follow-info.html |
|
100 | - * |
|
101 | - * @param array{ |
|
102 | - * index: list, // (REQUIRED) A comma-separated list of index patterns; use `_all` to perform the operation on all indices |
|
103 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
104 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
105 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
106 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
107 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
108 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
109 | - * } $params |
|
110 | - * |
|
111 | - * @throws MissingParameterException if a required parameter is missing |
|
112 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
113 | - * @throws ClientResponseException if the status code of response is 4xx |
|
114 | - * @throws ServerResponseException if the status code of response is 5xx |
|
115 | - * |
|
116 | - * @return Elasticsearch|Promise |
|
117 | - */ |
|
118 | - public function followInfo(array $params = []) |
|
119 | - { |
|
120 | - $this->checkRequiredParameters(['index'], $params); |
|
121 | - $url = '/' . $this->encode($params['index']) . '/_ccr/info'; |
|
122 | - $method = 'GET'; |
|
123 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
124 | - $headers = ['Accept' => 'application/json']; |
|
125 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
126 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.follow_info'); |
|
127 | - return $this->client->sendRequest($request); |
|
128 | - } |
|
129 | - /** |
|
130 | - * Retrieves follower stats. return shard-level stats about the following tasks associated with each shard for the specified indices. |
|
131 | - * |
|
132 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-get-follow-stats.html |
|
133 | - * |
|
134 | - * @param array{ |
|
135 | - * index: list, // (REQUIRED) A comma-separated list of index patterns; use `_all` to perform the operation on all indices |
|
136 | - * timeout: time, // Explicit operation timeout |
|
137 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
138 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
139 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
140 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
141 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
142 | - * } $params |
|
143 | - * |
|
144 | - * @throws MissingParameterException if a required parameter is missing |
|
145 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
146 | - * @throws ClientResponseException if the status code of response is 4xx |
|
147 | - * @throws ServerResponseException if the status code of response is 5xx |
|
148 | - * |
|
149 | - * @return Elasticsearch|Promise |
|
150 | - */ |
|
151 | - public function followStats(array $params = []) |
|
152 | - { |
|
153 | - $this->checkRequiredParameters(['index'], $params); |
|
154 | - $url = '/' . $this->encode($params['index']) . '/_ccr/stats'; |
|
155 | - $method = 'GET'; |
|
156 | - $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
157 | - $headers = ['Accept' => 'application/json']; |
|
158 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
159 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.follow_stats'); |
|
160 | - return $this->client->sendRequest($request); |
|
161 | - } |
|
162 | - /** |
|
163 | - * Removes the follower retention leases from the leader. |
|
164 | - * |
|
165 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-forget-follower.html |
|
166 | - * |
|
167 | - * @param array{ |
|
168 | - * index: string, // (REQUIRED) the name of the leader index for which specified follower retention leases should be removed |
|
169 | - * timeout: time, // Explicit operation timeout |
|
170 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
171 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
172 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
173 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
174 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
175 | - * body: array, // (REQUIRED) the name and UUID of the follower index, the name of the cluster containing the follower index, and the alias from the perspective of that cluster for the remote cluster containing the leader index |
|
176 | - * } $params |
|
177 | - * |
|
178 | - * @throws MissingParameterException if a required parameter is missing |
|
179 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
180 | - * @throws ClientResponseException if the status code of response is 4xx |
|
181 | - * @throws ServerResponseException if the status code of response is 5xx |
|
182 | - * |
|
183 | - * @return Elasticsearch|Promise |
|
184 | - */ |
|
185 | - public function forgetFollower(array $params = []) |
|
186 | - { |
|
187 | - $this->checkRequiredParameters(['index', 'body'], $params); |
|
188 | - $url = '/' . $this->encode($params['index']) . '/_ccr/forget_follower'; |
|
189 | - $method = 'POST'; |
|
190 | - $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
191 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
192 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
193 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.forget_follower'); |
|
194 | - return $this->client->sendRequest($request); |
|
195 | - } |
|
196 | - /** |
|
197 | - * Gets configured auto-follow patterns. Returns the specified auto-follow pattern collection. |
|
198 | - * |
|
199 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-get-auto-follow-pattern.html |
|
200 | - * |
|
201 | - * @param array{ |
|
202 | - * name: string, // The name of the auto follow pattern. |
|
203 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
204 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
205 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
206 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
207 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
208 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
209 | - * } $params |
|
210 | - * |
|
211 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
212 | - * @throws ClientResponseException if the status code of response is 4xx |
|
213 | - * @throws ServerResponseException if the status code of response is 5xx |
|
214 | - * |
|
215 | - * @return Elasticsearch|Promise |
|
216 | - */ |
|
217 | - public function getAutoFollowPattern(array $params = []) |
|
218 | - { |
|
219 | - if (isset($params['name'])) { |
|
220 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
221 | - $method = 'GET'; |
|
222 | - } else { |
|
223 | - $url = '/_ccr/auto_follow'; |
|
224 | - $method = 'GET'; |
|
225 | - } |
|
226 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
227 | - $headers = ['Accept' => 'application/json']; |
|
228 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
229 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.get_auto_follow_pattern'); |
|
230 | - return $this->client->sendRequest($request); |
|
231 | - } |
|
232 | - /** |
|
233 | - * Pauses an auto-follow pattern |
|
234 | - * |
|
235 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-pause-auto-follow-pattern.html |
|
236 | - * |
|
237 | - * @param array{ |
|
238 | - * name: string, // (REQUIRED) The name of the auto follow pattern that should pause discovering new indices to follow. |
|
239 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
240 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
241 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
242 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
243 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
244 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
245 | - * } $params |
|
246 | - * |
|
247 | - * @throws MissingParameterException if a required parameter is missing |
|
248 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
249 | - * @throws ClientResponseException if the status code of response is 4xx |
|
250 | - * @throws ServerResponseException if the status code of response is 5xx |
|
251 | - * |
|
252 | - * @return Elasticsearch|Promise |
|
253 | - */ |
|
254 | - public function pauseAutoFollowPattern(array $params = []) |
|
255 | - { |
|
256 | - $this->checkRequiredParameters(['name'], $params); |
|
257 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']) . '/pause'; |
|
258 | - $method = 'POST'; |
|
259 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
260 | - $headers = ['Accept' => 'application/json']; |
|
261 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
262 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.pause_auto_follow_pattern'); |
|
263 | - return $this->client->sendRequest($request); |
|
264 | - } |
|
265 | - /** |
|
266 | - * Pauses a follower index. The follower index will not fetch any additional operations from the leader index. |
|
267 | - * |
|
268 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-pause-follow.html |
|
269 | - * |
|
270 | - * @param array{ |
|
271 | - * index: string, // (REQUIRED) The name of the follower index that should pause following its leader index. |
|
272 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
273 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
274 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
275 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
276 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
277 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
278 | - * } $params |
|
279 | - * |
|
280 | - * @throws MissingParameterException if a required parameter is missing |
|
281 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
282 | - * @throws ClientResponseException if the status code of response is 4xx |
|
283 | - * @throws ServerResponseException if the status code of response is 5xx |
|
284 | - * |
|
285 | - * @return Elasticsearch|Promise |
|
286 | - */ |
|
287 | - public function pauseFollow(array $params = []) |
|
288 | - { |
|
289 | - $this->checkRequiredParameters(['index'], $params); |
|
290 | - $url = '/' . $this->encode($params['index']) . '/_ccr/pause_follow'; |
|
291 | - $method = 'POST'; |
|
292 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
293 | - $headers = ['Accept' => 'application/json']; |
|
294 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
295 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.pause_follow'); |
|
296 | - return $this->client->sendRequest($request); |
|
297 | - } |
|
298 | - /** |
|
299 | - * Creates a new named collection of auto-follow patterns against a specified remote cluster. Newly created indices on the remote cluster matching any of the specified patterns will be automatically configured as follower indices. |
|
300 | - * |
|
301 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-put-auto-follow-pattern.html |
|
302 | - * |
|
303 | - * @param array{ |
|
304 | - * name: string, // (REQUIRED) The name of the auto follow pattern. |
|
305 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
306 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
307 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
308 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
309 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
310 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
311 | - * body: array, // (REQUIRED) The specification of the auto follow pattern |
|
312 | - * } $params |
|
313 | - * |
|
314 | - * @throws MissingParameterException if a required parameter is missing |
|
315 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
316 | - * @throws ClientResponseException if the status code of response is 4xx |
|
317 | - * @throws ServerResponseException if the status code of response is 5xx |
|
318 | - * |
|
319 | - * @return Elasticsearch|Promise |
|
320 | - */ |
|
321 | - public function putAutoFollowPattern(array $params = []) |
|
322 | - { |
|
323 | - $this->checkRequiredParameters(['name', 'body'], $params); |
|
324 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
325 | - $method = 'PUT'; |
|
326 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
327 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
328 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
329 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.put_auto_follow_pattern'); |
|
330 | - return $this->client->sendRequest($request); |
|
331 | - } |
|
332 | - /** |
|
333 | - * Resumes an auto-follow pattern that has been paused |
|
334 | - * |
|
335 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-resume-auto-follow-pattern.html |
|
336 | - * |
|
337 | - * @param array{ |
|
338 | - * name: string, // (REQUIRED) The name of the auto follow pattern to resume discovering new indices to follow. |
|
339 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
340 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
341 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
342 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
343 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
344 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
345 | - * } $params |
|
346 | - * |
|
347 | - * @throws MissingParameterException if a required parameter is missing |
|
348 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
349 | - * @throws ClientResponseException if the status code of response is 4xx |
|
350 | - * @throws ServerResponseException if the status code of response is 5xx |
|
351 | - * |
|
352 | - * @return Elasticsearch|Promise |
|
353 | - */ |
|
354 | - public function resumeAutoFollowPattern(array $params = []) |
|
355 | - { |
|
356 | - $this->checkRequiredParameters(['name'], $params); |
|
357 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']) . '/resume'; |
|
358 | - $method = 'POST'; |
|
359 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
360 | - $headers = ['Accept' => 'application/json']; |
|
361 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
362 | - $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.resume_auto_follow_pattern'); |
|
363 | - return $this->client->sendRequest($request); |
|
364 | - } |
|
365 | - /** |
|
366 | - * Resumes a follower index that has been paused |
|
367 | - * |
|
368 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-resume-follow.html |
|
369 | - * |
|
370 | - * @param array{ |
|
371 | - * index: string, // (REQUIRED) The name of the follow index to resume following. |
|
372 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
373 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
374 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
375 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
376 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
377 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
378 | - * body: array, // The name of the leader index and other optional ccr related parameters |
|
379 | - * } $params |
|
380 | - * |
|
381 | - * @throws MissingParameterException if a required parameter is missing |
|
382 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
383 | - * @throws ClientResponseException if the status code of response is 4xx |
|
384 | - * @throws ServerResponseException if the status code of response is 5xx |
|
385 | - * |
|
386 | - * @return Elasticsearch|Promise |
|
387 | - */ |
|
388 | - public function resumeFollow(array $params = []) |
|
389 | - { |
|
390 | - $this->checkRequiredParameters(['index'], $params); |
|
391 | - $url = '/' . $this->encode($params['index']) . '/_ccr/resume_follow'; |
|
392 | - $method = 'POST'; |
|
393 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
394 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
395 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
396 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.resume_follow'); |
|
397 | - return $this->client->sendRequest($request); |
|
398 | - } |
|
399 | - /** |
|
400 | - * Gets all stats related to cross-cluster replication. |
|
401 | - * |
|
402 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-get-stats.html |
|
403 | - * |
|
404 | - * @param array{ |
|
405 | - * timeout: time, // Explicit operation timeout |
|
406 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
407 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
408 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
409 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
410 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
411 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
412 | - * } $params |
|
413 | - * |
|
414 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
415 | - * @throws ClientResponseException if the status code of response is 4xx |
|
416 | - * @throws ServerResponseException if the status code of response is 5xx |
|
417 | - * |
|
418 | - * @return Elasticsearch|Promise |
|
419 | - */ |
|
420 | - public function stats(array $params = []) |
|
421 | - { |
|
422 | - $url = '/_ccr/stats'; |
|
423 | - $method = 'GET'; |
|
424 | - $url = $this->addQueryString($url, $params, ['timeout', 'master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
425 | - $headers = ['Accept' => 'application/json']; |
|
426 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
427 | - $request = $this->addOtelAttributes($params, [], $request, 'ccr.stats'); |
|
428 | - return $this->client->sendRequest($request); |
|
429 | - } |
|
430 | - /** |
|
431 | - * Stops the following task associated with a follower index and removes index metadata and settings associated with cross-cluster replication. |
|
432 | - * |
|
433 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-unfollow.html |
|
434 | - * |
|
435 | - * @param array{ |
|
436 | - * index: string, // (REQUIRED) The name of the follower index that should be turned into a regular index. |
|
437 | - * master_timeout: time, // Explicit operation timeout for connection to master node |
|
438 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
439 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
440 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
441 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
442 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
443 | - * } $params |
|
444 | - * |
|
445 | - * @throws MissingParameterException if a required parameter is missing |
|
446 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
447 | - * @throws ClientResponseException if the status code of response is 4xx |
|
448 | - * @throws ServerResponseException if the status code of response is 5xx |
|
449 | - * |
|
450 | - * @return Elasticsearch|Promise |
|
451 | - */ |
|
452 | - public function unfollow(array $params = []) |
|
453 | - { |
|
454 | - $this->checkRequiredParameters(['index'], $params); |
|
455 | - $url = '/' . $this->encode($params['index']) . '/_ccr/unfollow'; |
|
456 | - $method = 'POST'; |
|
457 | - $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
458 | - $headers = ['Accept' => 'application/json']; |
|
459 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
460 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.unfollow'); |
|
461 | - return $this->client->sendRequest($request); |
|
462 | - } |
|
28 | + /** |
|
29 | + * Deletes auto-follow patterns. |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-delete-auto-follow-pattern.html |
|
32 | + * |
|
33 | + * @param array{ |
|
34 | + * name: string, // (REQUIRED) The name of the auto follow pattern. |
|
35 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
36 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
37 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
38 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
39 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
40 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
41 | + * } $params |
|
42 | + * |
|
43 | + * @throws MissingParameterException if a required parameter is missing |
|
44 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
45 | + * @throws ClientResponseException if the status code of response is 4xx |
|
46 | + * @throws ServerResponseException if the status code of response is 5xx |
|
47 | + * |
|
48 | + * @return Elasticsearch|Promise |
|
49 | + */ |
|
50 | + public function deleteAutoFollowPattern(array $params = []) |
|
51 | + { |
|
52 | + $this->checkRequiredParameters(['name'], $params); |
|
53 | + $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
54 | + $method = 'DELETE'; |
|
55 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
56 | + $headers = ['Accept' => 'application/json']; |
|
57 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
58 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.delete_auto_follow_pattern'); |
|
59 | + return $this->client->sendRequest($request); |
|
60 | + } |
|
61 | + /** |
|
62 | + * Creates a new follower index configured to follow the referenced leader index. |
|
63 | + * |
|
64 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-put-follow.html |
|
65 | + * |
|
66 | + * @param array{ |
|
67 | + * index: string, // (REQUIRED) The name of the follower index |
|
68 | + * wait_for_active_shards: string, // Sets the number of shard copies that must be active before returning. Defaults to 0. Set to `all` for all shard copies, otherwise set to any non-negative value less than or equal to the total number of copies for the shard (number of replicas + 1) |
|
69 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
70 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
71 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
72 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
73 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
74 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
75 | + * body: array, // (REQUIRED) The name of the leader index and other optional ccr related parameters |
|
76 | + * } $params |
|
77 | + * |
|
78 | + * @throws MissingParameterException if a required parameter is missing |
|
79 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
80 | + * @throws ClientResponseException if the status code of response is 4xx |
|
81 | + * @throws ServerResponseException if the status code of response is 5xx |
|
82 | + * |
|
83 | + * @return Elasticsearch|Promise |
|
84 | + */ |
|
85 | + public function follow(array $params = []) |
|
86 | + { |
|
87 | + $this->checkRequiredParameters(['index', 'body'], $params); |
|
88 | + $url = '/' . $this->encode($params['index']) . '/_ccr/follow'; |
|
89 | + $method = 'PUT'; |
|
90 | + $url = $this->addQueryString($url, $params, ['wait_for_active_shards', 'master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
91 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
92 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
93 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.follow'); |
|
94 | + return $this->client->sendRequest($request); |
|
95 | + } |
|
96 | + /** |
|
97 | + * Retrieves information about all follower indices, including parameters and status for each follower index |
|
98 | + * |
|
99 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-get-follow-info.html |
|
100 | + * |
|
101 | + * @param array{ |
|
102 | + * index: list, // (REQUIRED) A comma-separated list of index patterns; use `_all` to perform the operation on all indices |
|
103 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
104 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
105 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
106 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
107 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
108 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
109 | + * } $params |
|
110 | + * |
|
111 | + * @throws MissingParameterException if a required parameter is missing |
|
112 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
113 | + * @throws ClientResponseException if the status code of response is 4xx |
|
114 | + * @throws ServerResponseException if the status code of response is 5xx |
|
115 | + * |
|
116 | + * @return Elasticsearch|Promise |
|
117 | + */ |
|
118 | + public function followInfo(array $params = []) |
|
119 | + { |
|
120 | + $this->checkRequiredParameters(['index'], $params); |
|
121 | + $url = '/' . $this->encode($params['index']) . '/_ccr/info'; |
|
122 | + $method = 'GET'; |
|
123 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
124 | + $headers = ['Accept' => 'application/json']; |
|
125 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
126 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.follow_info'); |
|
127 | + return $this->client->sendRequest($request); |
|
128 | + } |
|
129 | + /** |
|
130 | + * Retrieves follower stats. return shard-level stats about the following tasks associated with each shard for the specified indices. |
|
131 | + * |
|
132 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-get-follow-stats.html |
|
133 | + * |
|
134 | + * @param array{ |
|
135 | + * index: list, // (REQUIRED) A comma-separated list of index patterns; use `_all` to perform the operation on all indices |
|
136 | + * timeout: time, // Explicit operation timeout |
|
137 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
138 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
139 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
140 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
141 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
142 | + * } $params |
|
143 | + * |
|
144 | + * @throws MissingParameterException if a required parameter is missing |
|
145 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
146 | + * @throws ClientResponseException if the status code of response is 4xx |
|
147 | + * @throws ServerResponseException if the status code of response is 5xx |
|
148 | + * |
|
149 | + * @return Elasticsearch|Promise |
|
150 | + */ |
|
151 | + public function followStats(array $params = []) |
|
152 | + { |
|
153 | + $this->checkRequiredParameters(['index'], $params); |
|
154 | + $url = '/' . $this->encode($params['index']) . '/_ccr/stats'; |
|
155 | + $method = 'GET'; |
|
156 | + $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
157 | + $headers = ['Accept' => 'application/json']; |
|
158 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
159 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.follow_stats'); |
|
160 | + return $this->client->sendRequest($request); |
|
161 | + } |
|
162 | + /** |
|
163 | + * Removes the follower retention leases from the leader. |
|
164 | + * |
|
165 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-forget-follower.html |
|
166 | + * |
|
167 | + * @param array{ |
|
168 | + * index: string, // (REQUIRED) the name of the leader index for which specified follower retention leases should be removed |
|
169 | + * timeout: time, // Explicit operation timeout |
|
170 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
171 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
172 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
173 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
174 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
175 | + * body: array, // (REQUIRED) the name and UUID of the follower index, the name of the cluster containing the follower index, and the alias from the perspective of that cluster for the remote cluster containing the leader index |
|
176 | + * } $params |
|
177 | + * |
|
178 | + * @throws MissingParameterException if a required parameter is missing |
|
179 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
180 | + * @throws ClientResponseException if the status code of response is 4xx |
|
181 | + * @throws ServerResponseException if the status code of response is 5xx |
|
182 | + * |
|
183 | + * @return Elasticsearch|Promise |
|
184 | + */ |
|
185 | + public function forgetFollower(array $params = []) |
|
186 | + { |
|
187 | + $this->checkRequiredParameters(['index', 'body'], $params); |
|
188 | + $url = '/' . $this->encode($params['index']) . '/_ccr/forget_follower'; |
|
189 | + $method = 'POST'; |
|
190 | + $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
191 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
192 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
193 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.forget_follower'); |
|
194 | + return $this->client->sendRequest($request); |
|
195 | + } |
|
196 | + /** |
|
197 | + * Gets configured auto-follow patterns. Returns the specified auto-follow pattern collection. |
|
198 | + * |
|
199 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-get-auto-follow-pattern.html |
|
200 | + * |
|
201 | + * @param array{ |
|
202 | + * name: string, // The name of the auto follow pattern. |
|
203 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
204 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
205 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
206 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
207 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
208 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
209 | + * } $params |
|
210 | + * |
|
211 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
212 | + * @throws ClientResponseException if the status code of response is 4xx |
|
213 | + * @throws ServerResponseException if the status code of response is 5xx |
|
214 | + * |
|
215 | + * @return Elasticsearch|Promise |
|
216 | + */ |
|
217 | + public function getAutoFollowPattern(array $params = []) |
|
218 | + { |
|
219 | + if (isset($params['name'])) { |
|
220 | + $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
221 | + $method = 'GET'; |
|
222 | + } else { |
|
223 | + $url = '/_ccr/auto_follow'; |
|
224 | + $method = 'GET'; |
|
225 | + } |
|
226 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
227 | + $headers = ['Accept' => 'application/json']; |
|
228 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
229 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.get_auto_follow_pattern'); |
|
230 | + return $this->client->sendRequest($request); |
|
231 | + } |
|
232 | + /** |
|
233 | + * Pauses an auto-follow pattern |
|
234 | + * |
|
235 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-pause-auto-follow-pattern.html |
|
236 | + * |
|
237 | + * @param array{ |
|
238 | + * name: string, // (REQUIRED) The name of the auto follow pattern that should pause discovering new indices to follow. |
|
239 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
240 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
241 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
242 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
243 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
244 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
245 | + * } $params |
|
246 | + * |
|
247 | + * @throws MissingParameterException if a required parameter is missing |
|
248 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
249 | + * @throws ClientResponseException if the status code of response is 4xx |
|
250 | + * @throws ServerResponseException if the status code of response is 5xx |
|
251 | + * |
|
252 | + * @return Elasticsearch|Promise |
|
253 | + */ |
|
254 | + public function pauseAutoFollowPattern(array $params = []) |
|
255 | + { |
|
256 | + $this->checkRequiredParameters(['name'], $params); |
|
257 | + $url = '/_ccr/auto_follow/' . $this->encode($params['name']) . '/pause'; |
|
258 | + $method = 'POST'; |
|
259 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
260 | + $headers = ['Accept' => 'application/json']; |
|
261 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
262 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.pause_auto_follow_pattern'); |
|
263 | + return $this->client->sendRequest($request); |
|
264 | + } |
|
265 | + /** |
|
266 | + * Pauses a follower index. The follower index will not fetch any additional operations from the leader index. |
|
267 | + * |
|
268 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-pause-follow.html |
|
269 | + * |
|
270 | + * @param array{ |
|
271 | + * index: string, // (REQUIRED) The name of the follower index that should pause following its leader index. |
|
272 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
273 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
274 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
275 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
276 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
277 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
278 | + * } $params |
|
279 | + * |
|
280 | + * @throws MissingParameterException if a required parameter is missing |
|
281 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
282 | + * @throws ClientResponseException if the status code of response is 4xx |
|
283 | + * @throws ServerResponseException if the status code of response is 5xx |
|
284 | + * |
|
285 | + * @return Elasticsearch|Promise |
|
286 | + */ |
|
287 | + public function pauseFollow(array $params = []) |
|
288 | + { |
|
289 | + $this->checkRequiredParameters(['index'], $params); |
|
290 | + $url = '/' . $this->encode($params['index']) . '/_ccr/pause_follow'; |
|
291 | + $method = 'POST'; |
|
292 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
293 | + $headers = ['Accept' => 'application/json']; |
|
294 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
295 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.pause_follow'); |
|
296 | + return $this->client->sendRequest($request); |
|
297 | + } |
|
298 | + /** |
|
299 | + * Creates a new named collection of auto-follow patterns against a specified remote cluster. Newly created indices on the remote cluster matching any of the specified patterns will be automatically configured as follower indices. |
|
300 | + * |
|
301 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-put-auto-follow-pattern.html |
|
302 | + * |
|
303 | + * @param array{ |
|
304 | + * name: string, // (REQUIRED) The name of the auto follow pattern. |
|
305 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
306 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
307 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
308 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
309 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
310 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
311 | + * body: array, // (REQUIRED) The specification of the auto follow pattern |
|
312 | + * } $params |
|
313 | + * |
|
314 | + * @throws MissingParameterException if a required parameter is missing |
|
315 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
316 | + * @throws ClientResponseException if the status code of response is 4xx |
|
317 | + * @throws ServerResponseException if the status code of response is 5xx |
|
318 | + * |
|
319 | + * @return Elasticsearch|Promise |
|
320 | + */ |
|
321 | + public function putAutoFollowPattern(array $params = []) |
|
322 | + { |
|
323 | + $this->checkRequiredParameters(['name', 'body'], $params); |
|
324 | + $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
325 | + $method = 'PUT'; |
|
326 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
327 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
328 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
329 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.put_auto_follow_pattern'); |
|
330 | + return $this->client->sendRequest($request); |
|
331 | + } |
|
332 | + /** |
|
333 | + * Resumes an auto-follow pattern that has been paused |
|
334 | + * |
|
335 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-resume-auto-follow-pattern.html |
|
336 | + * |
|
337 | + * @param array{ |
|
338 | + * name: string, // (REQUIRED) The name of the auto follow pattern to resume discovering new indices to follow. |
|
339 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
340 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
341 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
342 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
343 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
344 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
345 | + * } $params |
|
346 | + * |
|
347 | + * @throws MissingParameterException if a required parameter is missing |
|
348 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
349 | + * @throws ClientResponseException if the status code of response is 4xx |
|
350 | + * @throws ServerResponseException if the status code of response is 5xx |
|
351 | + * |
|
352 | + * @return Elasticsearch|Promise |
|
353 | + */ |
|
354 | + public function resumeAutoFollowPattern(array $params = []) |
|
355 | + { |
|
356 | + $this->checkRequiredParameters(['name'], $params); |
|
357 | + $url = '/_ccr/auto_follow/' . $this->encode($params['name']) . '/resume'; |
|
358 | + $method = 'POST'; |
|
359 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
360 | + $headers = ['Accept' => 'application/json']; |
|
361 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
362 | + $request = $this->addOtelAttributes($params, ['name'], $request, 'ccr.resume_auto_follow_pattern'); |
|
363 | + return $this->client->sendRequest($request); |
|
364 | + } |
|
365 | + /** |
|
366 | + * Resumes a follower index that has been paused |
|
367 | + * |
|
368 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-resume-follow.html |
|
369 | + * |
|
370 | + * @param array{ |
|
371 | + * index: string, // (REQUIRED) The name of the follow index to resume following. |
|
372 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
373 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
374 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
375 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
376 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
377 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
378 | + * body: array, // The name of the leader index and other optional ccr related parameters |
|
379 | + * } $params |
|
380 | + * |
|
381 | + * @throws MissingParameterException if a required parameter is missing |
|
382 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
383 | + * @throws ClientResponseException if the status code of response is 4xx |
|
384 | + * @throws ServerResponseException if the status code of response is 5xx |
|
385 | + * |
|
386 | + * @return Elasticsearch|Promise |
|
387 | + */ |
|
388 | + public function resumeFollow(array $params = []) |
|
389 | + { |
|
390 | + $this->checkRequiredParameters(['index'], $params); |
|
391 | + $url = '/' . $this->encode($params['index']) . '/_ccr/resume_follow'; |
|
392 | + $method = 'POST'; |
|
393 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
394 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
395 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
396 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.resume_follow'); |
|
397 | + return $this->client->sendRequest($request); |
|
398 | + } |
|
399 | + /** |
|
400 | + * Gets all stats related to cross-cluster replication. |
|
401 | + * |
|
402 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-get-stats.html |
|
403 | + * |
|
404 | + * @param array{ |
|
405 | + * timeout: time, // Explicit operation timeout |
|
406 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
407 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
408 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
409 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
410 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
411 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
412 | + * } $params |
|
413 | + * |
|
414 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
415 | + * @throws ClientResponseException if the status code of response is 4xx |
|
416 | + * @throws ServerResponseException if the status code of response is 5xx |
|
417 | + * |
|
418 | + * @return Elasticsearch|Promise |
|
419 | + */ |
|
420 | + public function stats(array $params = []) |
|
421 | + { |
|
422 | + $url = '/_ccr/stats'; |
|
423 | + $method = 'GET'; |
|
424 | + $url = $this->addQueryString($url, $params, ['timeout', 'master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
425 | + $headers = ['Accept' => 'application/json']; |
|
426 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
427 | + $request = $this->addOtelAttributes($params, [], $request, 'ccr.stats'); |
|
428 | + return $this->client->sendRequest($request); |
|
429 | + } |
|
430 | + /** |
|
431 | + * Stops the following task associated with a follower index and removes index metadata and settings associated with cross-cluster replication. |
|
432 | + * |
|
433 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/ccr-post-unfollow.html |
|
434 | + * |
|
435 | + * @param array{ |
|
436 | + * index: string, // (REQUIRED) The name of the follower index that should be turned into a regular index. |
|
437 | + * master_timeout: time, // Explicit operation timeout for connection to master node |
|
438 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
439 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
440 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
441 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
442 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
443 | + * } $params |
|
444 | + * |
|
445 | + * @throws MissingParameterException if a required parameter is missing |
|
446 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
447 | + * @throws ClientResponseException if the status code of response is 4xx |
|
448 | + * @throws ServerResponseException if the status code of response is 5xx |
|
449 | + * |
|
450 | + * @return Elasticsearch|Promise |
|
451 | + */ |
|
452 | + public function unfollow(array $params = []) |
|
453 | + { |
|
454 | + $this->checkRequiredParameters(['index'], $params); |
|
455 | + $url = '/' . $this->encode($params['index']) . '/_ccr/unfollow'; |
|
456 | + $method = 'POST'; |
|
457 | + $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
458 | + $headers = ['Accept' => 'application/json']; |
|
459 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
460 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'ccr.unfollow'); |
|
461 | + return $this->client->sendRequest($request); |
|
462 | + } |
|
463 | 463 | } |
@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -50,7 +50,7 @@ discard block |
||
50 | 50 | public function deleteAutoFollowPattern(array $params = []) |
51 | 51 | { |
52 | 52 | $this->checkRequiredParameters(['name'], $params); |
53 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
53 | + $url = '/_ccr/auto_follow/'.$this->encode($params['name']); |
|
54 | 54 | $method = 'DELETE'; |
55 | 55 | $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
56 | 56 | $headers = ['Accept' => 'application/json']; |
@@ -85,7 +85,7 @@ discard block |
||
85 | 85 | public function follow(array $params = []) |
86 | 86 | { |
87 | 87 | $this->checkRequiredParameters(['index', 'body'], $params); |
88 | - $url = '/' . $this->encode($params['index']) . '/_ccr/follow'; |
|
88 | + $url = '/'.$this->encode($params['index']).'/_ccr/follow'; |
|
89 | 89 | $method = 'PUT'; |
90 | 90 | $url = $this->addQueryString($url, $params, ['wait_for_active_shards', 'master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
91 | 91 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -118,7 +118,7 @@ discard block |
||
118 | 118 | public function followInfo(array $params = []) |
119 | 119 | { |
120 | 120 | $this->checkRequiredParameters(['index'], $params); |
121 | - $url = '/' . $this->encode($params['index']) . '/_ccr/info'; |
|
121 | + $url = '/'.$this->encode($params['index']).'/_ccr/info'; |
|
122 | 122 | $method = 'GET'; |
123 | 123 | $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
124 | 124 | $headers = ['Accept' => 'application/json']; |
@@ -151,7 +151,7 @@ discard block |
||
151 | 151 | public function followStats(array $params = []) |
152 | 152 | { |
153 | 153 | $this->checkRequiredParameters(['index'], $params); |
154 | - $url = '/' . $this->encode($params['index']) . '/_ccr/stats'; |
|
154 | + $url = '/'.$this->encode($params['index']).'/_ccr/stats'; |
|
155 | 155 | $method = 'GET'; |
156 | 156 | $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
157 | 157 | $headers = ['Accept' => 'application/json']; |
@@ -185,7 +185,7 @@ discard block |
||
185 | 185 | public function forgetFollower(array $params = []) |
186 | 186 | { |
187 | 187 | $this->checkRequiredParameters(['index', 'body'], $params); |
188 | - $url = '/' . $this->encode($params['index']) . '/_ccr/forget_follower'; |
|
188 | + $url = '/'.$this->encode($params['index']).'/_ccr/forget_follower'; |
|
189 | 189 | $method = 'POST'; |
190 | 190 | $url = $this->addQueryString($url, $params, ['timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
191 | 191 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -217,7 +217,7 @@ discard block |
||
217 | 217 | public function getAutoFollowPattern(array $params = []) |
218 | 218 | { |
219 | 219 | if (isset($params['name'])) { |
220 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
220 | + $url = '/_ccr/auto_follow/'.$this->encode($params['name']); |
|
221 | 221 | $method = 'GET'; |
222 | 222 | } else { |
223 | 223 | $url = '/_ccr/auto_follow'; |
@@ -254,7 +254,7 @@ discard block |
||
254 | 254 | public function pauseAutoFollowPattern(array $params = []) |
255 | 255 | { |
256 | 256 | $this->checkRequiredParameters(['name'], $params); |
257 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']) . '/pause'; |
|
257 | + $url = '/_ccr/auto_follow/'.$this->encode($params['name']).'/pause'; |
|
258 | 258 | $method = 'POST'; |
259 | 259 | $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
260 | 260 | $headers = ['Accept' => 'application/json']; |
@@ -287,7 +287,7 @@ discard block |
||
287 | 287 | public function pauseFollow(array $params = []) |
288 | 288 | { |
289 | 289 | $this->checkRequiredParameters(['index'], $params); |
290 | - $url = '/' . $this->encode($params['index']) . '/_ccr/pause_follow'; |
|
290 | + $url = '/'.$this->encode($params['index']).'/_ccr/pause_follow'; |
|
291 | 291 | $method = 'POST'; |
292 | 292 | $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
293 | 293 | $headers = ['Accept' => 'application/json']; |
@@ -321,7 +321,7 @@ discard block |
||
321 | 321 | public function putAutoFollowPattern(array $params = []) |
322 | 322 | { |
323 | 323 | $this->checkRequiredParameters(['name', 'body'], $params); |
324 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']); |
|
324 | + $url = '/_ccr/auto_follow/'.$this->encode($params['name']); |
|
325 | 325 | $method = 'PUT'; |
326 | 326 | $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
327 | 327 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -354,7 +354,7 @@ discard block |
||
354 | 354 | public function resumeAutoFollowPattern(array $params = []) |
355 | 355 | { |
356 | 356 | $this->checkRequiredParameters(['name'], $params); |
357 | - $url = '/_ccr/auto_follow/' . $this->encode($params['name']) . '/resume'; |
|
357 | + $url = '/_ccr/auto_follow/'.$this->encode($params['name']).'/resume'; |
|
358 | 358 | $method = 'POST'; |
359 | 359 | $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
360 | 360 | $headers = ['Accept' => 'application/json']; |
@@ -388,7 +388,7 @@ discard block |
||
388 | 388 | public function resumeFollow(array $params = []) |
389 | 389 | { |
390 | 390 | $this->checkRequiredParameters(['index'], $params); |
391 | - $url = '/' . $this->encode($params['index']) . '/_ccr/resume_follow'; |
|
391 | + $url = '/'.$this->encode($params['index']).'/_ccr/resume_follow'; |
|
392 | 392 | $method = 'POST'; |
393 | 393 | $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
394 | 394 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -452,7 +452,7 @@ discard block |
||
452 | 452 | public function unfollow(array $params = []) |
453 | 453 | { |
454 | 454 | $this->checkRequiredParameters(['index'], $params); |
455 | - $url = '/' . $this->encode($params['index']) . '/_ccr/unfollow'; |
|
455 | + $url = '/'.$this->encode($params['index']).'/_ccr/unfollow'; |
|
456 | 456 | $method = 'POST'; |
457 | 457 | $url = $this->addQueryString($url, $params, ['master_timeout', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
458 | 458 | $headers = ['Accept' => 'application/json']; |
@@ -11,7 +11,7 @@ discard block |
||
11 | 11 | * Elasticsearch B.V licenses this file to you under the MIT License. |
12 | 12 | * See the LICENSE file in the project root for more information. |
13 | 13 | */ |
14 | -declare (strict_types=1); |
|
14 | +declare(strict_types=1); |
|
15 | 15 | namespace OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Endpoints; |
16 | 16 | |
17 | 17 | use OCA\FullTextSearch_Elasticsearch\Vendor\Elastic\Elasticsearch\Exception\ClientResponseException; |
@@ -49,7 +49,7 @@ discard block |
||
49 | 49 | public function delete(array $params = []) |
50 | 50 | { |
51 | 51 | $this->checkRequiredParameters(['id'], $params); |
52 | - $url = '/_eql/search/' . $this->encode($params['id']); |
|
52 | + $url = '/_eql/search/'.$this->encode($params['id']); |
|
53 | 53 | $method = 'DELETE'; |
54 | 54 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
55 | 55 | $headers = ['Accept' => 'application/json']; |
@@ -81,7 +81,7 @@ discard block |
||
81 | 81 | public function get(array $params = []) |
82 | 82 | { |
83 | 83 | $this->checkRequiredParameters(['id'], $params); |
84 | - $url = '/_eql/search/' . $this->encode($params['id']); |
|
84 | + $url = '/_eql/search/'.$this->encode($params['id']); |
|
85 | 85 | $method = 'GET'; |
86 | 86 | $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_alive', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
87 | 87 | $headers = ['Accept' => 'application/json']; |
@@ -111,7 +111,7 @@ discard block |
||
111 | 111 | public function getStatus(array $params = []) |
112 | 112 | { |
113 | 113 | $this->checkRequiredParameters(['id'], $params); |
114 | - $url = '/_eql/search/status/' . $this->encode($params['id']); |
|
114 | + $url = '/_eql/search/status/'.$this->encode($params['id']); |
|
115 | 115 | $method = 'GET'; |
116 | 116 | $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
117 | 117 | $headers = ['Accept' => 'application/json']; |
@@ -145,7 +145,7 @@ discard block |
||
145 | 145 | public function search(array $params = []) |
146 | 146 | { |
147 | 147 | $this->checkRequiredParameters(['index', 'body'], $params); |
148 | - $url = '/' . $this->encode($params['index']) . '/_eql/search'; |
|
148 | + $url = '/'.$this->encode($params['index']).'/_eql/search'; |
|
149 | 149 | $method = empty($params['body']) ? 'GET' : 'POST'; |
150 | 150 | $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_on_completion', 'keep_alive', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
151 | 151 | $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
@@ -23,8 +23,7 @@ |
||
23 | 23 | /** |
24 | 24 | * @generated This file is generated, please do not edit |
25 | 25 | */ |
26 | -class Eql extends AbstractEndpoint |
|
27 | -{ |
|
26 | +class Eql extends AbstractEndpoint { |
|
28 | 27 | /** |
29 | 28 | * Deletes an async EQL search by ID. If the search is still running, the search request will be cancelled. Otherwise, the saved search results are deleted. |
30 | 29 | * |
@@ -25,138 +25,138 @@ |
||
25 | 25 | */ |
26 | 26 | class Eql extends AbstractEndpoint |
27 | 27 | { |
28 | - /** |
|
29 | - * Deletes an async EQL search by ID. If the search is still running, the search request will be cancelled. Otherwise, the saved search results are deleted. |
|
30 | - * |
|
31 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/eql-search-api.html |
|
32 | - * |
|
33 | - * @param array{ |
|
34 | - * id: string, // (REQUIRED) The async search ID |
|
35 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
36 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
37 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
38 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
39 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
40 | - * } $params |
|
41 | - * |
|
42 | - * @throws MissingParameterException if a required parameter is missing |
|
43 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
44 | - * @throws ClientResponseException if the status code of response is 4xx |
|
45 | - * @throws ServerResponseException if the status code of response is 5xx |
|
46 | - * |
|
47 | - * @return Elasticsearch|Promise |
|
48 | - */ |
|
49 | - public function delete(array $params = []) |
|
50 | - { |
|
51 | - $this->checkRequiredParameters(['id'], $params); |
|
52 | - $url = '/_eql/search/' . $this->encode($params['id']); |
|
53 | - $method = 'DELETE'; |
|
54 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
55 | - $headers = ['Accept' => 'application/json']; |
|
56 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
57 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'eql.delete'); |
|
58 | - return $this->client->sendRequest($request); |
|
59 | - } |
|
60 | - /** |
|
61 | - * Returns async results from previously executed Event Query Language (EQL) search |
|
62 | - * |
|
63 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/eql-search-api.html |
|
64 | - * |
|
65 | - * @param array{ |
|
66 | - * id: string, // (REQUIRED) The async search ID |
|
67 | - * wait_for_completion_timeout: time, // Specify the time that the request should block waiting for the final response |
|
68 | - * keep_alive: time, // Update the time interval in which the results (partial or final) for this search will be available |
|
69 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
70 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
71 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
72 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
73 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
74 | - * } $params |
|
75 | - * |
|
76 | - * @throws MissingParameterException if a required parameter is missing |
|
77 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
78 | - * @throws ClientResponseException if the status code of response is 4xx |
|
79 | - * @throws ServerResponseException if the status code of response is 5xx |
|
80 | - * |
|
81 | - * @return Elasticsearch|Promise |
|
82 | - */ |
|
83 | - public function get(array $params = []) |
|
84 | - { |
|
85 | - $this->checkRequiredParameters(['id'], $params); |
|
86 | - $url = '/_eql/search/' . $this->encode($params['id']); |
|
87 | - $method = 'GET'; |
|
88 | - $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_alive', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
89 | - $headers = ['Accept' => 'application/json']; |
|
90 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
91 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'eql.get'); |
|
92 | - return $this->client->sendRequest($request); |
|
93 | - } |
|
94 | - /** |
|
95 | - * Returns the status of a previously submitted async or stored Event Query Language (EQL) search |
|
96 | - * |
|
97 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/eql-search-api.html |
|
98 | - * |
|
99 | - * @param array{ |
|
100 | - * id: string, // (REQUIRED) The async search ID |
|
101 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
102 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
103 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
104 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
105 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
106 | - * } $params |
|
107 | - * |
|
108 | - * @throws MissingParameterException if a required parameter is missing |
|
109 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
110 | - * @throws ClientResponseException if the status code of response is 4xx |
|
111 | - * @throws ServerResponseException if the status code of response is 5xx |
|
112 | - * |
|
113 | - * @return Elasticsearch|Promise |
|
114 | - */ |
|
115 | - public function getStatus(array $params = []) |
|
116 | - { |
|
117 | - $this->checkRequiredParameters(['id'], $params); |
|
118 | - $url = '/_eql/search/status/' . $this->encode($params['id']); |
|
119 | - $method = 'GET'; |
|
120 | - $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
121 | - $headers = ['Accept' => 'application/json']; |
|
122 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
123 | - $request = $this->addOtelAttributes($params, ['id'], $request, 'eql.get_status'); |
|
124 | - return $this->client->sendRequest($request); |
|
125 | - } |
|
126 | - /** |
|
127 | - * Returns results matching a query expressed in Event Query Language (EQL) |
|
128 | - * |
|
129 | - * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/eql-search-api.html |
|
130 | - * |
|
131 | - * @param array{ |
|
132 | - * index: string, // (REQUIRED) The name of the index to scope the operation |
|
133 | - * wait_for_completion_timeout: time, // Specify the time that the request should block waiting for the final response |
|
134 | - * keep_on_completion: boolean, // Control whether the response should be stored in the cluster if it completed within the provided [wait_for_completion] time (default: false) |
|
135 | - * keep_alive: time, // Update the time interval in which the results (partial or final) for this search will be available |
|
136 | - * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
137 | - * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
138 | - * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
139 | - * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
140 | - * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
141 | - * body: array, // (REQUIRED) Eql request body. Use the `query` to limit the query scope. |
|
142 | - * } $params |
|
143 | - * |
|
144 | - * @throws MissingParameterException if a required parameter is missing |
|
145 | - * @throws NoNodeAvailableException if all the hosts are offline |
|
146 | - * @throws ClientResponseException if the status code of response is 4xx |
|
147 | - * @throws ServerResponseException if the status code of response is 5xx |
|
148 | - * |
|
149 | - * @return Elasticsearch|Promise |
|
150 | - */ |
|
151 | - public function search(array $params = []) |
|
152 | - { |
|
153 | - $this->checkRequiredParameters(['index', 'body'], $params); |
|
154 | - $url = '/' . $this->encode($params['index']) . '/_eql/search'; |
|
155 | - $method = empty($params['body']) ? 'GET' : 'POST'; |
|
156 | - $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_on_completion', 'keep_alive', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
157 | - $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
158 | - $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
159 | - $request = $this->addOtelAttributes($params, ['index'], $request, 'eql.search'); |
|
160 | - return $this->client->sendRequest($request); |
|
161 | - } |
|
28 | + /** |
|
29 | + * Deletes an async EQL search by ID. If the search is still running, the search request will be cancelled. Otherwise, the saved search results are deleted. |
|
30 | + * |
|
31 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/eql-search-api.html |
|
32 | + * |
|
33 | + * @param array{ |
|
34 | + * id: string, // (REQUIRED) The async search ID |
|
35 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
36 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
37 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
38 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
39 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
40 | + * } $params |
|
41 | + * |
|
42 | + * @throws MissingParameterException if a required parameter is missing |
|
43 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
44 | + * @throws ClientResponseException if the status code of response is 4xx |
|
45 | + * @throws ServerResponseException if the status code of response is 5xx |
|
46 | + * |
|
47 | + * @return Elasticsearch|Promise |
|
48 | + */ |
|
49 | + public function delete(array $params = []) |
|
50 | + { |
|
51 | + $this->checkRequiredParameters(['id'], $params); |
|
52 | + $url = '/_eql/search/' . $this->encode($params['id']); |
|
53 | + $method = 'DELETE'; |
|
54 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
55 | + $headers = ['Accept' => 'application/json']; |
|
56 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
57 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'eql.delete'); |
|
58 | + return $this->client->sendRequest($request); |
|
59 | + } |
|
60 | + /** |
|
61 | + * Returns async results from previously executed Event Query Language (EQL) search |
|
62 | + * |
|
63 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/eql-search-api.html |
|
64 | + * |
|
65 | + * @param array{ |
|
66 | + * id: string, // (REQUIRED) The async search ID |
|
67 | + * wait_for_completion_timeout: time, // Specify the time that the request should block waiting for the final response |
|
68 | + * keep_alive: time, // Update the time interval in which the results (partial or final) for this search will be available |
|
69 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
70 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
71 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
72 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
73 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
74 | + * } $params |
|
75 | + * |
|
76 | + * @throws MissingParameterException if a required parameter is missing |
|
77 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
78 | + * @throws ClientResponseException if the status code of response is 4xx |
|
79 | + * @throws ServerResponseException if the status code of response is 5xx |
|
80 | + * |
|
81 | + * @return Elasticsearch|Promise |
|
82 | + */ |
|
83 | + public function get(array $params = []) |
|
84 | + { |
|
85 | + $this->checkRequiredParameters(['id'], $params); |
|
86 | + $url = '/_eql/search/' . $this->encode($params['id']); |
|
87 | + $method = 'GET'; |
|
88 | + $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_alive', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
89 | + $headers = ['Accept' => 'application/json']; |
|
90 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
91 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'eql.get'); |
|
92 | + return $this->client->sendRequest($request); |
|
93 | + } |
|
94 | + /** |
|
95 | + * Returns the status of a previously submitted async or stored Event Query Language (EQL) search |
|
96 | + * |
|
97 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/eql-search-api.html |
|
98 | + * |
|
99 | + * @param array{ |
|
100 | + * id: string, // (REQUIRED) The async search ID |
|
101 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
102 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
103 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
104 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
105 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
106 | + * } $params |
|
107 | + * |
|
108 | + * @throws MissingParameterException if a required parameter is missing |
|
109 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
110 | + * @throws ClientResponseException if the status code of response is 4xx |
|
111 | + * @throws ServerResponseException if the status code of response is 5xx |
|
112 | + * |
|
113 | + * @return Elasticsearch|Promise |
|
114 | + */ |
|
115 | + public function getStatus(array $params = []) |
|
116 | + { |
|
117 | + $this->checkRequiredParameters(['id'], $params); |
|
118 | + $url = '/_eql/search/status/' . $this->encode($params['id']); |
|
119 | + $method = 'GET'; |
|
120 | + $url = $this->addQueryString($url, $params, ['pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
121 | + $headers = ['Accept' => 'application/json']; |
|
122 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
123 | + $request = $this->addOtelAttributes($params, ['id'], $request, 'eql.get_status'); |
|
124 | + return $this->client->sendRequest($request); |
|
125 | + } |
|
126 | + /** |
|
127 | + * Returns results matching a query expressed in Event Query Language (EQL) |
|
128 | + * |
|
129 | + * @see https://www.elastic.co/guide/en/elasticsearch/reference/current/eql-search-api.html |
|
130 | + * |
|
131 | + * @param array{ |
|
132 | + * index: string, // (REQUIRED) The name of the index to scope the operation |
|
133 | + * wait_for_completion_timeout: time, // Specify the time that the request should block waiting for the final response |
|
134 | + * keep_on_completion: boolean, // Control whether the response should be stored in the cluster if it completed within the provided [wait_for_completion] time (default: false) |
|
135 | + * keep_alive: time, // Update the time interval in which the results (partial or final) for this search will be available |
|
136 | + * pretty: boolean, // Pretty format the returned JSON response. (DEFAULT: false) |
|
137 | + * human: boolean, // Return human readable values for statistics. (DEFAULT: true) |
|
138 | + * error_trace: boolean, // Include the stack trace of returned errors. (DEFAULT: false) |
|
139 | + * source: string, // The URL-encoded request definition. Useful for libraries that do not accept a request body for non-POST requests. |
|
140 | + * filter_path: list, // A comma-separated list of filters used to reduce the response. |
|
141 | + * body: array, // (REQUIRED) Eql request body. Use the `query` to limit the query scope. |
|
142 | + * } $params |
|
143 | + * |
|
144 | + * @throws MissingParameterException if a required parameter is missing |
|
145 | + * @throws NoNodeAvailableException if all the hosts are offline |
|
146 | + * @throws ClientResponseException if the status code of response is 4xx |
|
147 | + * @throws ServerResponseException if the status code of response is 5xx |
|
148 | + * |
|
149 | + * @return Elasticsearch|Promise |
|
150 | + */ |
|
151 | + public function search(array $params = []) |
|
152 | + { |
|
153 | + $this->checkRequiredParameters(['index', 'body'], $params); |
|
154 | + $url = '/' . $this->encode($params['index']) . '/_eql/search'; |
|
155 | + $method = empty($params['body']) ? 'GET' : 'POST'; |
|
156 | + $url = $this->addQueryString($url, $params, ['wait_for_completion_timeout', 'keep_on_completion', 'keep_alive', 'pretty', 'human', 'error_trace', 'source', 'filter_path']); |
|
157 | + $headers = ['Accept' => 'application/json', 'Content-Type' => 'application/json']; |
|
158 | + $request = $this->createRequest($method, $url, $headers, $params['body'] ?? null); |
|
159 | + $request = $this->addOtelAttributes($params, ['index'], $request, 'eql.search'); |
|
160 | + return $this->client->sendRequest($request); |
|
161 | + } |
|
162 | 162 | } |