| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 | [[java-rest-high-aggregation-builders]]=== Building AggregationsThis page lists all the available aggregations with their corresponding `AggregationBuilder` class name and helper method name in the`AggregationBuilders` or `PipelineAggregatorBuilders` utility classes.:agg-ref:        {elasticsearch-javadoc}/org/elasticsearch/search/aggregations:parentjoin-ref: {parent-join-client-javadoc}/org/elasticsearch/join/aggregations:matrixstats-ref: {matrixstats-client-javadoc}/org/elasticsearch/search/aggregations==== Metrics Aggregations[options="header"]|======| Aggregation                                                                                        | AggregationBuilder Class                                                                                | Method in AggregationBuilders| {ref}/search-aggregations-metrics-avg-aggregation.html[Avg]                                        | {agg-ref}/metrics/AvgAggregationBuilder.html[AvgAggregationBuilder]                                 | {agg-ref}/AggregationBuilders.html#avg-java.lang.String-[AggregationBuilders.avg()]| {ref}/search-aggregations-metrics-cardinality-aggregation.html[Cardinality]                        | {agg-ref}/metrics/CardinalityAggregationBuilder.html[CardinalityAggregationBuilder]         | {agg-ref}/AggregationBuilders.html#cardinality-java.lang.String-[AggregationBuilders.cardinality()]| {ref}/search-aggregations-metrics-extendedstats-aggregation.html[Extended Stats]                   | {agg-ref}/metrics/ExtendedStatsAggregationBuilder.html[ExtendedStatsAggregationBuilder]  | {agg-ref}/AggregationBuilders.html#extendedStats-java.lang.String-[AggregationBuilders.extendedStats()]| {ref}/search-aggregations-metrics-geobounds-aggregation.html[Geo Bounds]                           | {agg-ref}/metrics/GeoBoundsAggregationBuilder.html[GeoBoundsAggregationBuilder]               | {agg-ref}/AggregationBuilders.html#geoBounds-java.lang.String-[AggregationBuilders.geoBounds()]| {ref}/search-aggregations-metrics-geocentroid-aggregation.html[Geo Centroid]                       | {agg-ref}/metrics/GeoCentroidAggregationBuilder.html[GeoCentroidAggregationBuilder]         | {agg-ref}/AggregationBuilders.html#geoCentroid-java.lang.String-[AggregationBuilders.geoCentroid()]| {ref}/search-aggregations-metrics-max-aggregation.html[Max]                                        | {agg-ref}/metrics/MaxAggregationBuilder.html[MaxAggregationBuilder]                                 | {agg-ref}/AggregationBuilders.html#max-java.lang.String-[AggregationBuilders.max()]| {ref}/search-aggregations-metrics-min-aggregation.html[Min]                                        | {agg-ref}/metrics/MinAggregationBuilder.html[MinAggregationBuilder]                                | {agg-ref}/AggregationBuilders.html#min-java.lang.String-[AggregationBuilders.min()]| {ref}/search-aggregations-metrics-percentile-aggregation.html[Percentiles]                         | {agg-ref}/metrics/PercentilesAggregationBuilder.html[PercentilesAggregationBuilder]         | {agg-ref}/AggregationBuilders.html#percentiles-java.lang.String-[AggregationBuilders.percentiles()]| {ref}/search-aggregations-metrics-percentile-rank-aggregation.html[Percentile Ranks]               | {agg-ref}/metrics/PercentileRanksAggregationBuilder.html[PercentileRanksAggregationBuilder] | {agg-ref}/AggregationBuilders.html#percentileRanks-java.lang.String-[AggregationBuilders.percentileRanks()]| {ref}/search-aggregations-metrics-scripted-metric-aggregation.html[Scripted Metric]                | {agg-ref}/metrics/ScriptedMetricAggregationBuilder.html[ScriptedMetricAggregationBuilder]      | {agg-ref}/AggregationBuilders.html#scriptedMetric-java.lang.String-[AggregationBuilders.scriptedMetric()]| {ref}/search-aggregations-metrics-stats-aggregation.html[Stats]                                    | {agg-ref}/metrics/StatsAggregationBuilder.html[StatsAggregationBuilder]                           | {agg-ref}/AggregationBuilders.html#stats-java.lang.String-[AggregationBuilders.stats()]| {ref}/search-aggregations-metrics-sum-aggregation.html[Sum]                                        | {agg-ref}/metrics/SumAggregationBuilder.html[SumAggregationBuilder]                                 | {agg-ref}/AggregationBuilders.html#sum-java.lang.String-[AggregationBuilders.sum()]| {ref}/search-aggregations-metrics-top-hits-aggregation.html[Top hits]                              | {agg-ref}/metrics/TopHitsAggregationBuilder.html[TopHitsAggregationBuilder]                     | {agg-ref}/AggregationBuilders.html#topHits-java.lang.String-[AggregationBuilders.topHits()]| {ref}/search-aggregations-metrics-top-metrics.html[Top Metrics]                                    | {javadoc-client}/analytics/TopMetricsAggregationBuilder.html[TopMetricsAggregationBuilder]              | None| {ref}/search-aggregations-metrics-valuecount-aggregation.html[Value Count]                         | {agg-ref}/metrics/ValueCountAggregationBuilder.html[ValueCountAggregationBuilder]            | {agg-ref}/AggregationBuilders.html#count-java.lang.String-[AggregationBuilders.count()]| {ref}/search-aggregations-metrics-string-stats-aggregation.html[String Stats]                      | {javadoc-client}/analytics/StringStatsAggregationBuilder.html[StringStatsAggregationBuilder]            | None|========== Bucket Aggregations[options="header"]|======| Aggregation                                                                                        | AggregationBuilder Class                                                                                 | Method in AggregationBuilders| {ref}/search-aggregations-bucket-adjacency-matrix-aggregation.html[Adjacency Matrix]               | {agg-ref}/bucket/adjacency/AdjacencyMatrixAggregationBuilder.html[AdjacencyMatrixAggregationBuilder]     | {agg-ref}/AggregationBuilders.html#adjacencyMatrix-java.lang.String-java.util.Map-[AggregationBuilders.adjacencyMatrix()]| {ref}/search-aggregations-bucket-children-aggregation.html[Children]                               | {parentjoin-ref}/ChildrenAggregationBuilder.html[ChildrenAggregationBuilder]                             || {ref}/search-aggregations-bucket-datehistogram-aggregation.html[Date Histogram]                    | {agg-ref}/bucket/histogram/DateHistogramAggregationBuilder.html[DateHistogramAggregationBuilder]         | {agg-ref}/AggregationBuilders.html#dateHistogram-java.lang.String-[AggregationBuilders.dateHistogram()]| {ref}/search-aggregations-bucket-daterange-aggregation.html[Date Range]                            | {agg-ref}/bucket/range/DateRangeAggregationBuilder.html[DateRangeAggregationBuilder]                     | {agg-ref}/AggregationBuilders.html#dateRange-java.lang.String-[AggregationBuilders.dateRange()]| {ref}/search-aggregations-bucket-diversified-sampler-aggregation.html[Diversified Sampler]         | {agg-ref}/bucket/sampler/DiversifiedAggregationBuilder.html[DiversifiedAggregationBuilder]               | {agg-ref}/AggregationBuilders.html#diversifiedSampler-java.lang.String-[AggregationBuilders.diversifiedSampler()]| {ref}/search-aggregations-bucket-filter-aggregation.html[Filter]                                   | {agg-ref}/bucket/filter/FilterAggregationBuilder.html[FilterAggregationBuilder]                          | {agg-ref}/AggregationBuilders.html#filter-java.lang.String-org.elasticsearch.index.query.QueryBuilder-[AggregationBuilders.filter()]| {ref}/search-aggregations-bucket-filters-aggregation.html[Filters]                                 | {agg-ref}/bucket/filters/FiltersAggregationBuilder.html[FiltersAggregationBuilder]                        | {agg-ref}/AggregationBuilders.html#filters-java.lang.String-org.elasticsearch.index.query.QueryBuilder...-[AggregationBuilders.filters()]| {ref}/search-aggregations-bucket-geodistance-aggregation.html[Geo Distance]                        | {agg-ref}/bucket/range/GeoDistanceAggregationBuilder.html[GeoDistanceAggregationBuilder]                 | {agg-ref}/AggregationBuilders.html#geoDistance-java.lang.String-org.elasticsearch.common.geo.GeoPoint-[AggregationBuilders.geoDistance()]| {ref}/search-aggregations-bucket-geohashgrid-aggregation.html[GeoHash Grid]                        | {agg-ref}/bucket/geogrid/GeoGridAggregationBuilder.html[GeoGridAggregationBuilder]                       | {agg-ref}/AggregationBuilders.html#geohashGrid-java.lang.String-[AggregationBuilders.geohashGrid()]| {ref}/search-aggregations-bucket-global-aggregation.html[Global]                                   | {agg-ref}/bucket/global/GlobalAggregationBuilder.html[GlobalAggregationBuilder]                          | {agg-ref}/AggregationBuilders.html#global-java.lang.String-[AggregationBuilders.global()]| {ref}/search-aggregations-bucket-histogram-aggregation.html[Histogram]                             | {agg-ref}/bucket/histogram/HistogramAggregationBuilder.html[HistogramAggregationBuilder]                 | {agg-ref}/AggregationBuilders.html#histogram-java.lang.String-[AggregationBuilders.histogram()]| {ref}/search-aggregations-bucket-iprange-aggregation.html[IP Range]                                | {agg-ref}/bucket/range/IpRangeAggregationBuilder.html[IpRangeAggregationBuilder]                         | {agg-ref}/AggregationBuilders.html#ipRange-java.lang.String-[AggregationBuilders.ipRange()]| {ref}/search-aggregations-bucket-missing-aggregation.html[Missing]                                 | {agg-ref}/bucket/missing/MissingAggregationBuilder.html[MissingAggregationBuilder]                       | {agg-ref}/AggregationBuilders.html#missing-java.lang.String-[AggregationBuilders.missing()]| {ref}/search-aggregations-bucket-nested-aggregation.html[Nested]                                   | {agg-ref}/bucket/nested/NestedAggregationBuilder.html[NestedAggregationBuilder]                          | {agg-ref}/AggregationBuilders.html#nested-java.lang.String-java.lang.String-[AggregationBuilders.nested()]| {ref}/search-aggregations-bucket-range-aggregation.html[Range]                                     | {agg-ref}/bucket/range/RangeAggregationBuilder.html[RangeAggregationBuilder]                             | {agg-ref}/AggregationBuilders.html#range-java.lang.String-[AggregationBuilders.range()]| {ref}/search-aggregations-bucket-reverse-nested-aggregation.html[Reverse nested]                   | {agg-ref}/bucket/nested/ReverseNestedAggregationBuilder.html[ReverseNestedAggregationBuilder]            | {agg-ref}/AggregationBuilders.html#reverseNested-java.lang.String-[AggregationBuilders.reverseNested()]| {ref}/search-aggregations-bucket-sampler-aggregation.html[Sampler]                                 | {agg-ref}/bucket/sampler/SamplerAggregationBuilder.html[SamplerAggregationBuilder]                       | {agg-ref}/AggregationBuilders.html#sampler-java.lang.String-[AggregationBuilders.sampler()]| {ref}/search-aggregations-bucket-significantterms-aggregation.html[Significant Terms]              | {agg-ref}/bucket/significant/SignificantTermsAggregationBuilder.html[SignificantTermsAggregationBuilder] | {agg-ref}/AggregationBuilders.html#significantTerms-java.lang.String-[AggregationBuilders.significantTerms()]| {ref}/search-aggregations-bucket-significanttext-aggregation.html[Significant Text]                | {agg-ref}/bucket/significant/SignificantTextAggregationBuilder.html[SignificantTextAggregationBuilder]   | {agg-ref}/AggregationBuilders.html#significantText-java.lang.String-java.lang.String-[AggregationBuilders.significantText()]| {ref}/search-aggregations-bucket-terms-aggregation.html[Terms]                                     | {agg-ref}/bucket/terms/TermsAggregationBuilder.html[TermsAggregationBuilder]                             | {agg-ref}/AggregationBuilders.html#terms-java.lang.String-[AggregationBuilders.terms()]|========== Pipeline Aggregations[options="header"]|======| Pipeline on                                                                                        | PipelineAggregationBuilder Class                                                                                                | Method in PipelineAggregatorBuilders| {ref}/search-aggregations-pipeline-avg-bucket-aggregation.html[Avg Bucket]                         | {agg-ref}/pipeline/AvgBucketPipelineAggregationBuilder.html[AvgBucketPipelineAggregationBuilder]                                | {agg-ref}/PipelineAggregatorBuilders.html#avgBucket-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.avgBucket()]| {ref}/search-aggregations-pipeline-derivative-aggregation.html[Derivative]                         | {agg-ref}/pipeline/DerivativePipelineAggregationBuilder.html[DerivativePipelineAggregationBuilder]                              | {agg-ref}/PipelineAggregatorBuilders.html#derivative-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.derivative()]| {ref}/search-aggregations-pipeline-inference-bucket-aggregation.html[Inference]                    | {javadoc-client}/analytics/InferencePipelineAggregationBuilder.html[InferencePipelineAggregationBuilder]                        | None| {ref}/search-aggregations-pipeline-max-bucket-aggregation.html[Max Bucket]                         | {agg-ref}/pipeline/MaxBucketPipelineAggregationBuilder.html[MaxBucketPipelineAggregationBuilder]                                | {agg-ref}/PipelineAggregatorBuilders.html#maxBucket-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.maxBucket()]| {ref}/search-aggregations-pipeline-min-bucket-aggregation.html[Min Bucket]                         | {agg-ref}/pipeline/MinBucketPipelineAggregationBuilder.html[MinBucketPipelineAggregationBuilder]                                | {agg-ref}/PipelineAggregatorBuilders.html#minBucket-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.minBucket()]| {ref}/search-aggregations-pipeline-sum-bucket-aggregation.html[Sum Bucket]                         | {agg-ref}/pipeline/SumBucketPipelineAggregationBuilder.html[SumBucketPipelineAggregationBuilder]                                | {agg-ref}/PipelineAggregatorBuilders.html#sumBucket-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.sumBucket()]| {ref}/search-aggregations-pipeline-stats-bucket-aggregation.html[Stats Bucket]                     | {agg-ref}/pipeline/StatsBucketPipelineAggregationBuilder.html[StatsBucketPipelineAggregationBuilder]                            | {agg-ref}/PipelineAggregatorBuilders.html#statsBucket-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.statsBucket()]| {ref}/search-aggregations-pipeline-extended-stats-bucket-aggregation.html[Extended Stats Bucket]   | {agg-ref}/pipeline/ExtendedStatsBucketPipelineAggregationBuilder.html[ExtendedStatsBucketPipelineAggregationBuilder]            | {agg-ref}/PipelineAggregatorBuilders.html#extendedStatsBucket-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.extendedStatsBucket()]| {ref}/search-aggregations-pipeline-percentiles-bucket-aggregation.html[Percentiles Bucket]         | {agg-ref}/pipeline/PercentilesBucketPipelineAggregationBuilder.html[PercentilesBucketPipelineAggregationBuilder]                | {agg-ref}/PipelineAggregatorBuilders.html#percentilesBucket-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.percentilesBucket()]| {ref}/search-aggregations-pipeline-movfn-aggregation.html[Moving Function]                         | {agg-ref}/pipeline/MovFnPipelineAggregationBuilder.html[MovFnPipelineAggregationBuilder]                                        | {agg-ref}/PipelineAggregatorBuilders.html#movingFunction-java.lang.String-org.elasticsearch.script.Script-java.lang.String-int-[PipelineAggregatorBuilders.movingFunction()]| {ref}/search-aggregations-pipeline-cumulative-sum-aggregation.html[Cumulative Sum]                 | {agg-ref}/pipeline/CumulativeSumPipelineAggregationBuilder.html[CumulativeSumPipelineAggregationBuilder]                        | {agg-ref}/PipelineAggregatorBuilders.html#cumulativeSum-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.cumulativeSum()]| {ref}/search-aggregations-pipeline-bucket-script-aggregation.html[Bucket Script]                   | {agg-ref}/pipeline/BucketScriptPipelineAggregationBuilder.html[BucketScriptPipelineAggregationBuilder]                          | {agg-ref}/PipelineAggregatorBuilders.html#bucketScript-java.lang.String-java.util.Map-org.elasticsearch.script.Script-[PipelineAggregatorBuilders.bucketScript()]| {ref}/search-aggregations-pipeline-bucket-selector-aggregation.html[Bucket Selector]               | {agg-ref}/pipeline/BucketSelectorPipelineAggregationBuilder.html[BucketSelectorPipelineAggregationBuilder]                      | {agg-ref}/PipelineAggregatorBuilders.html#bucketSelector-java.lang.String-java.util.Map-org.elasticsearch.script.Script-[PipelineAggregatorBuilders.bucketSelector()]| {ref}/search-aggregations-pipeline-serialdiff-aggregation.html[Serial Differencing]                | {agg-ref}/pipeline/SerialDiffPipelineAggregationBuilder.html[SerialDiffPipelineAggregationBuilder]                              | {agg-ref}/PipelineAggregatorBuilders.html#diff-java.lang.String-java.lang.String-[PipelineAggregatorBuilders.diff()]|========== Matrix Aggregations[options="header"]|======| Aggregation                                                                                        | AggregationBuilder Class                                                                  | Method in MatrixStatsAggregationBuilders| {ref}/search-aggregations-matrix-stats-aggregation.html[Matrix Stats]                              | {matrixstats-ref}/matrix/stats/MatrixStatsAggregationBuilder.html[MatrixStatsAggregationBuilder]  | {matrixstats-ref}/MatrixStatsAggregationBuilders.html#matrixStats-java.lang.String-[MatrixStatsAggregationBuilders.matrixStats()]|======
 |