> ## Documentation Index
> Fetch the complete documentation index at: https://docs.streamkap.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List topics grouped by connector/entity

> Get topics grouped by entity_id (connector instances) with nested pagination.

Each group represents a source/transform/destination entity and contains its topics.
Supports dual pagination (groups and topics within groups) and dual sorting.

Supports multiple entity types via comma-separated values (e.g., entity_type=sources,transforms).
Note: group_id requires exactly one entity_type to be specified.



## OpenAPI

````yaml /openapi/openapi.json get /topics/details/grouped
openapi: 3.1.0
info:
  title: Streamkap REST API
  description: >-
    The Streamkap REST API allows you to programmatically manage your CDC
    pipelines, sources, destinations, transforms, and more.


    Authenticate using a bearer token obtained from the [Access
    Token](/api-reference/auth/access-token) endpoint with your API client
    credentials.
  contact:
    name: Streamkap Support
    url: https://streamkap.com/
    email: support@streamkap.com
  license:
    name: Proprietary
  version: 2.0.0
servers:
  - url: https://api.streamkap.com
    description: Production
security: []
tags:
  - name: Alerts
    description: Manage alert subscribers, preferences, and notification credentials.
  - name: Authentication
    description: Obtain and refresh access tokens, manage client credentials and roles.
  - name: Billing
    description: Retrieve usage metrics, summaries, and export billing data.
  - name: Consumer Groups
    description: List, inspect, and reset Kafka consumer group offsets.
  - name: Dashboard
    description: Retrieve organisation-level statistics and overview data.
  - name: Destinations
    description: Create, configure, and manage data destinations and their lifecycle.
  - name: Kafka Access
    description: Manage Kafka users and their access permissions.
  - name: Logs
    description: Query and summarise system logs.
  - name: Pipelines
    description: Create, configure, and manage CDC pipelines and their lifecycle.
  - name: Project Keys
    description: Manage project keys that bundle API credentials and optional Kafka access.
  - name: Schema Registry
    description: Browse schema subjects, versions, and retrieve schema definitions.
  - name: Services
    description: View and switch service metadata.
  - name: Sources
    description: >-
      Create, configure, and manage data sources, snapshots, and their
      lifecycle.
  - name: Tags
    description: Create, update, and manage resource tags for organisation.
  - name: Topics
    description: Browse topic details, statistics, configurations, metrics, and messages.
  - name: Transforms
    description: >-
      Create, deploy, and manage data transforms, unit tests, and implementation
      details.
paths:
  /topics/details/grouped:
    get:
      tags:
        - Topics
      summary: List topics grouped by connector/entity
      description: >-
        Get topics grouped by entity_id (connector instances) with nested
        pagination.


        Each group represents a source/transform/destination entity and contains
        its topics.

        Supports dual pagination (groups and topics within groups) and dual
        sorting.


        Supports multiple entity types via comma-separated values (e.g.,
        entity_type=sources,transforms).

        Note: group_id requires exactly one entity_type to be specified.
      operationId: listTopicsGrouped
      parameters:
        - name: entity_type
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filter by entity type(s). Single value (e.g., 'sources') or
              comma-separated (e.g., 'sources,transforms'). Valid types:
              sources, destinations, transforms, pipelines, manual.
            title: Entity Type
          description: >-
            Filter by entity type(s). Single value (e.g., 'sources') or
            comma-separated (e.g., 'sources,transforms'). Valid types: sources,
            destinations, transforms, pipelines, manual.
        - name: page
          in: query
          required: false
          schema:
            type: integer
            default: 1
            title: Page
        - name: page_size
          in: query
          required: false
          schema:
            type: integer
            default: 10
            title: Page Size
        - name: topics_per_group
          in: query
          required: false
          schema:
            type: integer
            default: 20
            title: Topics Per Group
        - name: topics_page
          in: query
          required: false
          schema:
            type: integer
            default: 1
            title: Topics Page
        - name: sort_groups_by
          in: query
          required: false
          schema:
            enum:
              - name
              - connector
              - topic_count
            type: string
            default: name
            title: Sort Groups By
        - name: sort_groups_dir
          in: query
          required: false
          schema:
            enum:
              - asc
              - desc
            type: string
            default: asc
            title: Sort Groups Dir
        - name: sort_topics_by
          in: query
          required: false
          schema:
            type: string
            default: name
            title: Sort Topics By
        - name: sort_topics_dir
          in: query
          required: false
          schema:
            enum:
              - asc
              - desc
            type: string
            default: asc
            title: Sort Topics Dir
        - name: partial_name
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Partial Name
        - name: connector
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Connector
        - name: group_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filter to a specific group/entity_id. Requires exactly one
              entity_type when used.
            title: Group Id
          description: >-
            Filter to a specific group/entity_id. Requires exactly one
            entity_type when used.
        - name: group_topic_pages
          in: query
          required: false
          schema:
            anyOf:
              - type: object
                additionalProperties:
                  type: integer
              - type: 'null'
            title: Group Topic Pages
        - name: tag_ids
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: >-
              Filter by tag IDs. Comma-separated list (e.g., 'tag1,tag2'). Use
              with tag_filter_operation to control AND/OR logic.
            title: Tag Ids
          description: >-
            Filter by tag IDs. Comma-separated list (e.g., 'tag1,tag2'). Use
            with tag_filter_operation to control AND/OR logic.
        - name: tag_filter_operation
          in: query
          required: false
          schema:
            anyOf:
              - type: string
                enum:
                  - and
                  - or
              - type: 'null'
            description: >-
              Tag filter logic: 'or' (default) matches any tag, 'and' matches
              all tags.
            default: or
            title: Tag Filter Operation
          description: >-
            Tag filter logic: 'or' (default) matches any tag, 'and' matches all
            tags.
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopicsDetailsGroupedRes'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - FronteggHTTPAuthentication: []
components:
  schemas:
    TopicsDetailsGroupedRes:
      properties:
        page:
          type: integer
          title: Page
          description: Current page number
          default: 1
        page_size:
          type: integer
          title: Page Size
          description: Results per page
          default: 10
        total:
          anyOf:
            - type: integer
            - type: 'null'
          title: Total
          description: Total number of results
        has_next:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Has Next
          description: Whether more pages exist
        result:
          items:
            $ref: '#/components/schemas/TopicGroup'
          type: array
          title: Result
      additionalProperties: true
      type: object
      required:
        - result
      title: TopicsDetailsGroupedRes
      description: Paginated response of topic groups.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    TopicGroup:
      properties:
        group_id:
          type: string
          title: Group Id
        group_type:
          type: string
          const: entity_id
          title: Group Type
          default: entity_id
        entity:
          $ref: '#/components/schemas/TopicGroupEntity'
        topic_count:
          type: integer
          title: Topic Count
        topics:
          $ref: '#/components/schemas/TopicsDetailsRes'
      additionalProperties: true
      type: object
      required:
        - group_id
        - entity
        - topic_count
        - topics
      title: TopicGroup
      description: A group of topics by connector/entity.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    TopicGroupEntity:
      properties:
        entity_id:
          type: string
          title: Entity Id
        entity_type:
          $ref: '#/components/schemas/TopicDetailsEntityTypeEnum'
        entity_name:
          type: string
          title: Entity Name
        connector:
          anyOf:
            - $ref: '#/components/schemas/SourceConnectorEnum'
            - $ref: '#/components/schemas/DestinationConnectorEnum'
            - $ref: '#/components/schemas/TransformsLibraryEnum'
            - type: string
          title: Connector
        connector_display_name:
          type: string
          title: Connector Display Name
      additionalProperties: true
      type: object
      required:
        - entity_id
        - entity_type
        - entity_name
        - connector
        - connector_display_name
      title: TopicGroupEntity
      description: Entity information for a topic group.
    TopicsDetailsRes:
      properties:
        page:
          type: integer
          title: Page
          description: Current page number
          default: 1
        page_size:
          type: integer
          title: Page Size
          description: Results per page
          default: 10
        total:
          anyOf:
            - type: integer
            - type: 'null'
          title: Total
          description: Total number of results
        has_next:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Has Next
          description: Whether more pages exist
        result:
          items:
            $ref: '#/components/schemas/TopicDetailsRes'
          type: array
          title: Result
      additionalProperties: true
      type: object
      required:
        - result
      title: TopicsDetailsRes
    TopicDetailsEntityTypeEnum:
      type: string
      enum:
        - sources
        - destinations
        - transforms
        - pipelines
        - manual
      title: TopicDetailsEntityTypeEnum
      description: Enum for topic entity types (producer types).
    SourceConnectorEnum:
      type: string
      enum:
        - alloydb
        - elasticsearch
        - mongodbhosted
        - mongodb
        - sqlserveraws
        - mariadb
        - mysql
        - postgresql
        - oracle
        - documentdb
        - oracleaws
        - kafkadirect
        - redis
        - s3
        - webhook
        - zendesk_webhook
        - salesforce_webhook
        - db2
        - dynamodb
        - vitess
        - planetscale
        - supabase
      title: SourceConnectorEnum
      description: |-
        Available source connector types for CDC data ingestion.

        Includes relational databases (PostgreSQL, MySQL, SQL Server, Oracle),
        NoSQL databases (MongoDB, DynamoDB), and direct Kafka connections.
    DestinationConnectorEnum:
      type: string
      enum:
        - azblob
        - clickhouse
        - databricks
        - mysql
        - postgresql
        - redshift
        - s3
        - r2
        - gcs
        - motherduck
        - weaviate
        - pinecone
        - httpsink
        - sqlserver
        - bigquery
        - cockroachdb
        - db2
        - oracle
        - redis
        - snowflake
        - starburst
        - kafka
        - kafkadirect
        - iceberg
      title: DestinationConnectorEnum
      description: |-
        Available destination connector types for data delivery.

        Supports data warehouses (Snowflake, BigQuery, Databricks),
        databases (ClickHouse, PostgreSQL), and object storage (S3, Iceberg).
    TransformsLibraryEnum:
      type: string
      enum:
        - fan_out
        - sql_join
        - enrich
        - enrich_async
        - map_filter
        - toast_handling
        - un_nesting
        - rollup
        - topic_router
      title: TransformsLibraryEnum
    TopicDetailsRes:
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
        entity:
          $ref: '#/components/schemas/TopicDetailsEntity'
        prefix:
          anyOf:
            - type: string
            - type: 'null'
          title: Prefix
        serialization:
          anyOf:
            - $ref: '#/components/schemas/TopicSerialization'
            - type: 'null'
          description: >-
            Serialization format information for this topic (inherited from
            producer)
        tags:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Tags
          description: List of tag IDs assigned to this topic
      additionalProperties: true
      type: object
      required:
        - id
        - name
        - entity
      title: TopicDetailsRes
    TopicDetailsEntity:
      properties:
        entity_type:
          $ref: '#/components/schemas/TopicDetailsEntityTypeEnum'
        entity_id:
          type: string
          title: Entity Id
        name:
          type: string
          title: Name
        connector:
          anyOf:
            - $ref: '#/components/schemas/SourceConnectorEnum'
            - $ref: '#/components/schemas/DestinationConnectorEnum'
            - $ref: '#/components/schemas/TransformsLibraryEnum'
            - type: string
          title: Connector
        topic_ids:
          items:
            type: string
          type: array
          title: Topic Ids
        topic_db_ids:
          items:
            type: string
          type: array
          title: Topic Db Ids
        display_name:
          type: string
          title: Display Name
      additionalProperties: true
      type: object
      required:
        - entity_type
        - entity_id
        - name
        - connector
        - topic_ids
        - topic_db_ids
        - display_name
      title: TopicDetailsEntity
    TopicSerialization:
      properties:
        key_format:
          $ref: '#/components/schemas/SerializationFormatEnum'
          description: Serialization format for message keys (e.g., avro, json, string)
          default: unknown
        value_format:
          $ref: '#/components/schemas/SerializationFormatEnum'
          description: Serialization format for message values (e.g., avro, json, protobuf)
          default: unknown
        key_converter:
          anyOf:
            - type: string
            - type: 'null'
          title: Key Converter
          description: Converter class for message keys
        value_converter:
          anyOf:
            - type: string
            - type: 'null'
          title: Value Converter
          description: Converter class for message values
        schema_registry_enabled:
          type: boolean
          title: Schema Registry Enabled
          description: Whether Schema Registry is used for this topic's serialization
          default: false
      additionalProperties: true
      type: object
      title: TopicSerialization
      description: >-
        Serialization format information for a topic.


        Topics inherit their serialization format from their producer
        (source/transform).

        Most Streamkap sources use Avro by default with Schema Registry.
    SerializationFormatEnum:
      type: string
      enum:
        - avro
        - json
        - json_schema
        - protobuf
        - string
        - bytearray
        - unknown
      title: SerializationFormatEnum
      description: Human-readable serialization format names for API responses.
  securitySchemes:
    FronteggHTTPAuthentication:
      type: http
      scheme: bearer

````