ClickHouse · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for ClickHouse HTTP Interface API

3 actions 3 updates phrasing extends openapi/clickhouse-clickhouse-http-interface-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for ClickHouse's API. It is a proposal applied on top of the contract, not a document ClickHouse publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 3

$.info
$.paths['/'].get
$.paths['/'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for ClickHouse HTTP Interface API
  version: 1.0.0
extends: openapi/clickhouse-clickhouse-http-interface-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 2
- target: $.paths['/'].get
  update:
    x-apievangelist-phrasing:
      intent: Run a read-only SQL query over HTTP GET
      effect: read
      questions:
      - How do I run a SELECT against ClickHouse by putting the SQL in the URL?
      - Can I choose JSON or CSV output for a query sent as a GET request?
      - Which database does a URL query run against if I don't set one?
      - Does a bare GET on the server root just answer Ok. as a health check?
      instructions:
      - text: Run the query {query} through a GET request and return the rows.
        slots:
          query: query.query
      - text: Execute {query} against database {database} via the URL and format the result as {default_format}.
        slots:
          query: query.query
          database: query.database
          default_format: query.default_format
      - text: Run {query} as a GET request inside session {session_id} so temporary tables persist.
        slots:
          query: query.query
          session_id: query.session_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/'].post
  update:
    x-apievangelist-phrasing:
      intent: Execute SQL or insert data via HTTP POST
      effect: write
      questions:
      - How do I insert rows into a ClickHouse table over HTTP by streaming them in the request body?
      - Can I send a long SQL statement in the POST body instead of the URL?
      - What format string do I put in the URL when posting JSONEachRow data for an INSERT?
      instructions:
      - text: POST the statement {query} to the server and execute it, including writes like CREATE or INSERT.
        slots:
          query: query.query
      - text: Stream my data into the table using the partial insert {query} in database {database}.
        slots:
          query: query.query
          database: query.database
      - text: Send a compressed request body for the insert {query} and have the server decompress it.
        slots:
          query: query.query
      method: generated
      generated: '2026-10-01'