async def reindex_rethrottle(
        self,
        *,
        task_id: str,
        error_trace: t.Optional[bool] = None,
        filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
        human: t.Optional[bool] = None,
        pretty: t.Optional[bool] = None,
        requests_per_second: t.Optional[float] = None,
    ) -> ObjectApiResponse[t.Any]:
        """
        .. raw:: html

          <p>Throttle a reindex operation.</p>
          <p>Change the number of requests per second for a particular reindex operation.
          For example:</p>
          <pre><code>POST _reindex/r1A2WoRbTwKZ516z6NEs5A:36619/_rethrottle?requests_per_second=-1
          </code></pre>
          <p>Rethrottling that speeds up the query takes effect immediately.
          Rethrottling that slows down the query will take effect after completing the current batch.
          This behavior prevents scroll timeouts.</p>


        `<https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-reindex>`_

        :param task_id: The task identifier, which can be found by using the tasks API.
        :param requests_per_second: The throttle for this request in sub-requests per
            second. It can be either `-1` to turn off throttling or any decimal number
            like `1.7` or `12` to throttle to that level.
        """
        if task_id in SKIP_IN_PATH:
            raise ValueError("Empty value passed for parameter 'task_id'")
        __path_parts: t.Dict[str, str] = {"task_id": _quote(task_id)}
        __path = f'/_reindex/{__path_parts["task_id"]}/_rethrottle'
        __query: t.Dict[str, t.Any] = {}
        if error_trace is not None:
            __query["error_trace"] = error_trace
        if filter_path is not None:
            __query["filter_path"] = filter_path
        if human is not None:
            __query["human"] = human
        if pretty is not None:
            __query["pretty"] = pretty
        if requests_per_second is not None:
            __query["requests_per_second"] = requests_per_second
        __headers = {"accept": "application/json"}
        return await self.perform_request(  # type: ignore[return-value]
            "POST",
            __path,
            params=__query,
            headers=__headers,
            endpoint_id="reindex_rethrottle",
            path_parts=__path_parts,
        )

        .. raw:: html

          <p>Throttle a reindex operation.</p>
          <p>Change the number of requests per second for a particular reindex operation.
          For example:</p>
          <pre><code>POST _reindex/r1A2WoRbTwKZ516z6NEs5A:36619/_rethrottle?requests_per_second=-1
          </code></pre>
          <p>Rethrottling that speeds up the query takes effect immediately.
          Rethrottling that slows down the query will take effect after completing the current batch.
          This behavior prevents scroll timeouts.</p>


        `<https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-reindex>`_

        :param task_id: The task identifier, which can be found by using the tasks API.
        :param requests_per_second: The throttle for this request in sub-requests per
            second. It can be either `-1` to turn off throttling or any decimal number
            like `1.7` or `12` to throttle to that level.
        
elasticsearch/_async/client/__init__.py