| endpoint | count |
|---|---|
| lang | ruby |
| es_version | 9.3 |
| client | elasticsearch==9.3.0 |
Use client.count to get the number of documents matching a query,
without returning the documents themselves:
response = client.count(
index: 'products',
body: {
query: { term: { category: 'electronics' } }
}
)
puts "Electronics: #{response['count']}"Omit the body parameter to count all documents in an index:
response = client.count(index: 'products')
puts "Total products: #{response['count']}"Pass a comma-separated string or an array of index names to count across multiple indices:
response = client.count(index: ['products', 'orders'])
puts "Total across indices: #{response['count']}"