HyperDX Connections API

Endpoints for managing ClickHouse connections

Operations 5

GET /api/v2/connections List Connections #
POST /api/v2/connections Create Connection #
GET /api/v2/connections/{id} Get Connection #
PUT /api/v2/connections/{id} Update Connection #
DELETE /api/v2/connections/{id} Delete Connection #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/hyperdx-connections-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

hyperdx-connections-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: HyperDX External Connections API
  description: API for managing HyperDX alerts and dashboards
  version: 2.0.0
servers:
- url: /
  description: Your HyperDX instance (http://<host>:<port>)
security:
- BearerAuth: []
tags:
- name: Connections
  description: Endpoints for managing ClickHouse connections
paths:
  /api/v2/connections:
    get:
      summary: List Connections
      description: Retrieves a list of all ClickHouse connections for the authenticated team. Passwords are never returned.
      operationId: listConnections
      tags:
      - Connections
      responses:
        '200':
          description: Successfully retrieved connections
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectionsListResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Unauthorized access. API key is missing or invalid.
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    post:
      summary: Create Connection
      description: Creates a new ClickHouse connection
      operationId: createConnection
      tags:
      - Connections
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateConnectionRequest'
      responses:
        '200':
          description: Successfully created connection
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectionResponseEnvelope'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: 'Body validation failed: name: Required'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Unauthorized access. API key is missing or invalid.
  /api/v2/connections/{id}:
    get:
      summary: Get Connection
      description: Retrieves a specific ClickHouse connection by ID. Passwords are never returned.
      operationId: getConnection
      tags:
      - Connections
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: Connection ID
        example: 507f1f77bcf86cd799439012
      responses:
        '200':
          description: Successfully retrieved connection
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectionResponseEnvelope'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Unauthorized access. API key is missing or invalid.
        '404':
          description: Connection not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Connection not found
    put:
      summary: Update Connection
      description: 'Updates an existing ClickHouse connection.


        Field semantics: if `password` is omitted or empty the existing

        password is kept. `hyperdxSettingPrefix` is cleared when set to null

        or an empty string, and `prometheusEndpoint` is cleared when set to

        null; both are kept unchanged when omitted.

        '
      operationId: updateConnection
      tags:
      - Connections
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: Connection ID
        example: 507f1f77bcf86cd799439012
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateConnectionRequest'
      responses:
        '200':
          description: Successfully updated connection
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectionResponseEnvelope'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: 'Body validation failed: host: Required'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Unauthorized access. API key is missing or invalid.
        '404':
          description: Connection not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Connection not found
    delete:
      summary: Delete Connection
      description: Deletes a ClickHouse connection
      operationId: deleteConnection
      tags:
      - Connections
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: Connection ID
        example: 507f1f77bcf86cd799439012
      responses:
        '200':
          description: Successfully deleted connection
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyResponse'
              example: {}
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Unauthorized access. API key is missing or invalid.
        '404':
          description: Connection not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Connection not found
components:
  schemas:
    ConnectionsListResponse:
      type: object
      properties:
        data:
          type: array
          description: List of connection objects.
          items:
            $ref: '#/components/schemas/Connection'
        meta:
          type: object
          description: Present only when one or more stored connections could not be serialized and were omitted from `data`.
          properties:
            skipped:
              type: integer
              description: Number of connections omitted from the response because they failed serialization.
              example: 1
            skippedIds:
              type: array
              description: IDs of the connections that were omitted.
              items:
                type: string
              example:
              - 507f1f77bcf86cd799439012
    Connection:
      type: object
      required:
      - id
      - name
      - host
      - username
      properties:
        id:
          type: string
          description: Unique connection ID.
          example: 507f1f77bcf86cd799439012
        name:
          type: string
          description: Display name for the connection.
          example: Production ClickHouse
        host:
          type: string
          description: ClickHouse HTTP endpoint URL.
          example: https://clickhouse.example.com:8443
        username:
          type: string
          description: ClickHouse username.
          example: default
        hyperdxSettingPrefix:
          type:
          - string
          - 'null'
          description: Optional prefix for HyperDX-specific ClickHouse settings. Must only contain alphanumeric characters and underscores.
          example: hyperdx_
        isPrometheusEndpoint:
          type: boolean
          description: Optional. When true, `host` is treated as a Prometheus-compatible API endpoint (e.g. Prometheus or Thanos) and PromQL queries are proxied to it. When false or omitted, `host` is a ClickHouse HTTP endpoint.
          example: false
        createdAt:
          type: string
          format: date-time
          description: Creation timestamp
          example: '2025-01-01T00:00:00.000Z'
        updatedAt:
          type: string
          format: date-time
          description: Last update timestamp
          example: '2025-06-15T10:30:00.000Z'
    UpdateConnectionRequest:
      type: object
      required:
      - name
      - host
      - username
      properties:
        name:
          type: string
          description: Display name for the connection.
          example: Production ClickHouse
        host:
          type: string
          description: ClickHouse HTTP endpoint URL.
          example: https://clickhouse.example.com:8443
        username:
          type: string
          description: ClickHouse username.
          example: default
        password:
          type: string
          writeOnly: true
          description: ClickHouse password. If omitted or empty, the existing password is kept.
          example: my-new-secret-password
        hyperdxSettingPrefix:
          type:
          - string
          - 'null'
          description: Optional prefix for HyperDX-specific ClickHouse settings. Set to null or an empty string to clear the existing value. If omitted, the existing value is kept.
          example: hyperdx_
        isPrometheusEndpoint:
          type: boolean
          description: Optional. When true, `host` is treated as a Prometheus-compatible API endpoint. When false or omitted, `host` is a ClickHouse HTTP endpoint. Omit to keep the existing value unchanged.
          example: false
    CreateConnectionRequest:
      type: object
      required:
      - name
      - host
      - username
      properties:
        name:
          type: string
          description: Display name for the connection.
          example: Production ClickHouse
        host:
          type: string
          description: ClickHouse HTTP endpoint URL.
          example: https://clickhouse.example.com:8443
        username:
          type: string
          description: ClickHouse username.
          example: default
        password:
          type: string
          writeOnly: true
          description: ClickHouse password. Never returned by the API.
          example: my-secret-password
        hyperdxSettingPrefix:
          type:
          - string
          - 'null'
          description: Optional prefix for HyperDX-specific ClickHouse settings. Must only contain alphanumeric characters and underscores.
          example: hyperdx_
        isPrometheusEndpoint:
          type: boolean
          description: Optional. When true, `host` is treated as a Prometheus-compatible API endpoint (e.g. Prometheus or Thanos) and PromQL queries are proxied to it. When false or omitted, `host` is a ClickHouse HTTP endpoint.
          example: false
    Error:
      type: object
      properties:
        message:
          type: string
          description: Human-readable error message.
          example: 'NOT_FOUND: Alert not found'
    EmptyResponse:
      type: object
      properties: {}
    ConnectionResponseEnvelope:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Connection'
          description: The connection object.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key