@@ -616,6 +616,84 @@ async def get_repository(
616616 path_parts = __path_parts ,
617617 )
618618
619+ @_rewrite_parameters ()
620+ async def repository_verify_integrity (
621+ self ,
622+ * ,
623+ name : t .Union [str , t .Sequence [str ]],
624+ blob_thread_pool_concurrency : t .Optional [int ] = None ,
625+ error_trace : t .Optional [bool ] = None ,
626+ filter_path : t .Optional [t .Union [str , t .Sequence [str ]]] = None ,
627+ human : t .Optional [bool ] = None ,
628+ index_snapshot_verification_concurrency : t .Optional [int ] = None ,
629+ index_verification_concurrency : t .Optional [int ] = None ,
630+ max_bytes_per_sec : t .Optional [str ] = None ,
631+ max_failed_shard_snapshots : t .Optional [int ] = None ,
632+ meta_thread_pool_concurrency : t .Optional [int ] = None ,
633+ pretty : t .Optional [bool ] = None ,
634+ snapshot_verification_concurrency : t .Optional [int ] = None ,
635+ verify_blob_contents : t .Optional [bool ] = None ,
636+ ) -> ObjectApiResponse [t .Any ]:
637+ """
638+ Verifies the integrity of the contents of a snapshot repository
639+
640+ `<https://www.elastic.co/guide/en/elasticsearch/reference/master/modules-snapshots.html>`_
641+
642+ :param name: A repository name
643+ :param blob_thread_pool_concurrency: Number of threads to use for reading blob
644+ contents
645+ :param index_snapshot_verification_concurrency: Number of snapshots to verify
646+ concurrently within each index
647+ :param index_verification_concurrency: Number of indices to verify concurrently
648+ :param max_bytes_per_sec: Rate limit for individual blob verification
649+ :param max_failed_shard_snapshots: Maximum permitted number of failed shard snapshots
650+ :param meta_thread_pool_concurrency: Number of threads to use for reading metadata
651+ :param snapshot_verification_concurrency: Number of snapshots to verify concurrently
652+ :param verify_blob_contents: Whether to verify the contents of individual blobs
653+ """
654+ if name in SKIP_IN_PATH :
655+ raise ValueError ("Empty value passed for parameter 'name'" )
656+ __path_parts : t .Dict [str , str ] = {"repository" : _quote (name )}
657+ __path = f'/_snapshot/{ __path_parts ["repository" ]} /_verify_integrity'
658+ __query : t .Dict [str , t .Any ] = {}
659+ if blob_thread_pool_concurrency is not None :
660+ __query ["blob_thread_pool_concurrency" ] = blob_thread_pool_concurrency
661+ if error_trace is not None :
662+ __query ["error_trace" ] = error_trace
663+ if filter_path is not None :
664+ __query ["filter_path" ] = filter_path
665+ if human is not None :
666+ __query ["human" ] = human
667+ if index_snapshot_verification_concurrency is not None :
668+ __query ["index_snapshot_verification_concurrency" ] = (
669+ index_snapshot_verification_concurrency
670+ )
671+ if index_verification_concurrency is not None :
672+ __query ["index_verification_concurrency" ] = index_verification_concurrency
673+ if max_bytes_per_sec is not None :
674+ __query ["max_bytes_per_sec" ] = max_bytes_per_sec
675+ if max_failed_shard_snapshots is not None :
676+ __query ["max_failed_shard_snapshots" ] = max_failed_shard_snapshots
677+ if meta_thread_pool_concurrency is not None :
678+ __query ["meta_thread_pool_concurrency" ] = meta_thread_pool_concurrency
679+ if pretty is not None :
680+ __query ["pretty" ] = pretty
681+ if snapshot_verification_concurrency is not None :
682+ __query ["snapshot_verification_concurrency" ] = (
683+ snapshot_verification_concurrency
684+ )
685+ if verify_blob_contents is not None :
686+ __query ["verify_blob_contents" ] = verify_blob_contents
687+ __headers = {"accept" : "application/json" }
688+ return await self .perform_request ( # type: ignore[return-value]
689+ "POST" ,
690+ __path ,
691+ params = __query ,
692+ headers = __headers ,
693+ endpoint_id = "snapshot.repository_verify_integrity" ,
694+ path_parts = __path_parts ,
695+ )
696+
619697 @_rewrite_parameters (
620698 body_fields = (
621699 "feature_states" ,
0 commit comments