This documentation contains work-in-progress information for future Elastic Stack and Cloud releases. Use the version selector to view supported release docs. It also contains some Elastic Cloud serverless information. Check out our serverless docs for more details.
Overview
editOverview
editThe SQL search API accepts SQL in a JSON document, executes it, and returns the results. For example:
resp = client.sql.query( format="txt", query="SELECT * FROM library ORDER BY page_count DESC LIMIT 5", ) print(resp)
response = client.sql.query( format: 'txt', body: { query: 'SELECT * FROM library ORDER BY page_count DESC LIMIT 5' } ) puts response
const response = await client.sql.query({ format: "txt", query: "SELECT * FROM library ORDER BY page_count DESC LIMIT 5", }); console.log(response);
POST /_sql?format=txt { "query": "SELECT * FROM library ORDER BY page_count DESC LIMIT 5" }
Which returns:
author | name | page_count | release_date -----------------+--------------------+---------------+------------------------ Peter F. Hamilton|Pandora's Star |768 |2004-03-02T00:00:00.000Z Vernor Vinge |A Fire Upon the Deep|613 |1992-06-01T00:00:00.000Z Frank Herbert |Dune |604 |1965-06-01T00:00:00.000Z Alastair Reynolds|Revelation Space |585 |2000-03-15T00:00:00.000Z James S.A. Corey |Leviathan Wakes |561 |2011-06-02T00:00:00.000Z
If you are using Kibana Console
(which is highly recommended), take advantage of the
triple quotes """
when creating the query. This not only automatically escapes double
quotes ("
) inside the query string but also support multi-line as shown below: