Quix Topics API

Manage Kafka topics in a workspace (Portal API).

Operations 3

GET /topics List topics #
POST /topics Create a topic #
DELETE /topics/{topicId} Delete a topic #

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/quix-topics-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

quix-topics-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Quix Cloud HTTP APIs Definitions Topics API
  description: 'OpenAPI 3.0 description of the HTTP (REST) surfaces of Quix Cloud: the Streaming Writer API for publishing time-series parameter data, events, and definitions into Quix topics, and the account-wide Portal API for managing workspaces, topics, and deployments.


    The Streaming Reader API is delivered exclusively over a Microsoft SignalR hub (WebSockets / Long Polling) and is therefore modeled separately in the companion AsyncAPI document at asyncapi/quix-asyncapi.yml, not here.


    All endpoints authenticate with a Quix Personal Access Token (PAT) supplied as an `Authorization: Bearer <PAT>` header. The Streaming Writer API base host is environment-specific (`writer-{environmentId}.cloud.quix.io`); the Portal API is account-wide (`portal-api.platform.quix.io`). Endpoint paths are documented by Quix; per-environment Swagger/OpenAPI references are available from the Quix portal under Settings > APIs and tokens.'
  termsOfService: https://quix.io/terms/
  contact:
    name: Quix Support
    url: https://quix.io/contact/
  license:
    name: API documentation - Quix Terms
    url: https://quix.io/terms/
  version: '1.0'
servers:
- url: https://writer-{environmentId}.cloud.quix.io
  description: Streaming Writer API. Environment-specific host; `{environmentId}` is the URL-friendly combination of organization, project, and environment names (e.g. `myorg-myproject-production`).
  variables:
    environmentId:
      default: myorg-myproject-production
      description: Quix environment (workspace) identifier.
- url: https://portal-api.platform.quix.io
  description: Portal API. Account-wide management host. The subdomain segment may differ per Quix deployment; copy the exact Portal API base from the Quix portal (Settings > APIs and tokens).
tags:
- name: Topics
  description: Manage Kafka topics in a workspace (Portal API).
paths:
  /topics:
    get:
      operationId: getTopics
      tags:
      - Topics
      summary: List topics
      description: Returns Kafka topics for a workspace. (Portal API.) The workspace is typically supplied as a `workspaceId` query parameter.
      servers:
      - url: https://portal-api.platform.quix.io
      parameters:
      - name: workspaceId
        in: query
        required: true
        schema:
          type: string
        description: The workspace the topics belong to.
      responses:
        '200':
          description: A list of topics.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Topic'
        '401':
          $ref: '#/components/responses/Unauthorized'
      security:
      - bearerAuth: []
    post:
      operationId: createTopic
      tags:
      - Topics
      summary: Create a topic
      description: Creates a new Kafka topic in a workspace. (Portal API.)
      servers:
      - url: https://portal-api.platform.quix.io
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTopicRequest'
      responses:
        '200':
          description: Topic created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Topic'
        '401':
          $ref: '#/components/responses/Unauthorized'
      security:
      - bearerAuth: []
  /topics/{topicId}:
    delete:
      operationId: deleteTopic
      tags:
      - Topics
      summary: Delete a topic
      description: Deletes a Kafka topic from a workspace. (Portal API.)
      servers:
      - url: https://portal-api.platform.quix.io
      parameters:
      - name: topicId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Topic deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
      security:
      - bearerAuth: []
components:
  responses:
    Unauthorized:
      description: Authentication failed - the bearer token is missing, malformed, or expired.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    Error:
      type: object
      properties:
        status:
          type: integer
        title:
          type: string
        detail:
          type: string
    CreateTopicRequest:
      type: object
      required:
      - name
      - workspaceId
      properties:
        name:
          type: string
        workspaceId:
          type: string
        partitions:
          type: integer
        retentionInMinutes:
          type: integer
        retentionInBytes:
          type: integer
    Topic:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        workspaceId:
          type: string
        status:
          type: string
        partitions:
          type: integer
        retentionInMinutes:
          type: integer
        retentionInBytes:
          type: integer
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: PAT
      description: 'Quix Personal Access Token (PAT) presented as `Authorization: Bearer <PAT>`. Generate from the Quix portal under your profile > Personal Access Tokens, or Settings > APIs and tokens.'