Quickwit Sources API

Configure data sources such as Kafka, Kinesis, and Pulsar

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/quickwit-sources-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

quickwit-sources-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Quickwit REST Cluster Sources API
  description: 'The Quickwit REST API provides endpoints for indexing NDJSON documents, executing full-text and aggregation search queries, managing indexes and data sources, streaming field values, deleting documents by query, and monitoring cluster health. Quickwit is a cloud-native search engine for log management and full-text search at petabyte scale.

    '
  version: 0.8.2
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  contact:
    name: Quickwit, Inc.
    email: hello@quickwit.io
  x-api-evangelist-rating:
    designScore: 70
    reliability: 80
    documentation: 75
servers:
- url: http://localhost:7280/api/v1
  description: Local Quickwit node
tags:
- name: Sources
  description: Configure data sources such as Kafka, Kinesis, and Pulsar
paths:
  /indexes/{index_id}/sources:
    post:
      operationId: createSource
      summary: Create a source
      description: Creates a new data source for an index.
      tags:
      - Sources
      parameters:
      - $ref: '#/components/parameters/indexId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SourceConfig'
      responses:
        '200':
          description: Source created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SourceConfig'
        '400':
          $ref: '#/components/responses/BadRequest'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalError'
  /indexes/{index_id}/sources/{source_id}:
    put:
      operationId: updateSource
      summary: Update a source
      description: Updates an existing data source configuration.
      tags:
      - Sources
      parameters:
      - $ref: '#/components/parameters/indexId'
      - $ref: '#/components/parameters/sourceId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SourceConfig'
      responses:
        '200':
          description: Source updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SourceConfig'
        '400':
          $ref: '#/components/responses/BadRequest'
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalError'
    delete:
      operationId: deleteSource
      summary: Delete a source
      description: Deletes a data source from an index.
      tags:
      - Sources
      parameters:
      - $ref: '#/components/parameters/indexId'
      - $ref: '#/components/parameters/sourceId'
      responses:
        '200':
          description: Source deleted successfully
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalError'
  /indexes/{index_id}/sources/{source_id}/toggle:
    put:
      operationId: toggleSource
      summary: Toggle a source
      description: Enables or disables a data source.
      tags:
      - Sources
      parameters:
      - $ref: '#/components/parameters/indexId'
      - $ref: '#/components/parameters/sourceId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - enable
              properties:
                enable:
                  type: boolean
                  description: Set to true to enable, false to disable
      responses:
        '200':
          description: Source toggled successfully
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalError'
  /indexes/{index_id}/sources/{source_id}/reset-checkpoint:
    put:
      operationId: resetSourceCheckpoint
      summary: Reset source checkpoint
      description: Resets the checkpoint for a data source, causing it to re-read from the beginning.
      tags:
      - Sources
      parameters:
      - $ref: '#/components/parameters/indexId'
      - $ref: '#/components/parameters/sourceId'
      responses:
        '200':
          description: Source checkpoint reset successfully
        '404':
          $ref: '#/components/responses/NotFound'
        '500':
          $ref: '#/components/responses/InternalError'
components:
  parameters:
    sourceId:
      name: source_id
      in: path
      description: The source identifier
      required: true
      schema:
        type: string
      example: my-kafka-source
    indexId:
      name: index_id
      in: path
      description: The index identifier
      required: true
      schema:
        type: string
      example: my-index
  responses:
    BadRequest:
      description: Bad request - invalid parameters or body
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
    InternalError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ApiError'
  schemas:
    SourceConfig:
      type: object
      required:
      - version
      - source_id
      - source_type
      - params
      properties:
        version:
          type: string
          description: Configuration format version
        source_id:
          type: string
          description: Unique source identifier
          example: my-kafka-source
        source_type:
          type: string
          enum:
          - kafka
          - kinesis
          - pulsar
          - file
          - vec
          - void
          - ingest-v2
          description: Type of data source
        num_pipelines:
          type: integer
          minimum: 1
          default: 1
          description: Number of indexing pipelines per node
        transform:
          type: object
          nullable: true
          description: VRL transformation applied to documents before indexing
          properties:
            vrl_script:
              type: string
              description: VRL script content
            timezone:
              type: string
              default: UTC
        params:
          type: object
          description: Source-specific parameters
          additionalProperties: true
    ApiError:
      type: object
      required:
      - message
      properties:
        message:
          type: string
          description: Human-readable error message
      example:
        message: Index 'my-index' not found