---
title: "List topics grouped by connector/entity"
method: GET
path: "/topics/details/grouped"
tags: ["Topics"]
---

# List topics grouped by connector/entity

`GET /topics/details/grouped`

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.

## Query parameters

- `entity_type` string, nullable — Filter by entity type(s). Single value (e.g., 'sources') or comma-separated (e.g., 'sources,transforms'). Valid types: sources, destinations, transforms, pipelines, manual.
- `page` integer
- `page_size` integer
- `topics_per_group` integer
- `topics_page` integer
- `sort_groups_by` 'name' | 'connector' | 'topic_count'
- `sort_groups_dir` 'asc' | 'desc'
- `sort_topics_by` string
- `sort_topics_dir` 'asc' | 'desc'
- `partial_name` string, nullable
- `connector` string, nullable
- `group_id` string, nullable — Filter to a specific group/entity_id. Requires exactly one entity_type when used.
- `group_topic_pages` object, nullable
- `tag_ids` string, nullable — Filter by tag IDs. Comma-separated list (e.g., 'tag1,tag2'). Use with tag_filter_operation to control AND/OR logic.
- `tag_filter_operation` 'and' | 'or', nullable — Tag filter logic: 'or' (default) matches any tag, 'and' matches all tags.

## Response `200`

Successful Response

- TopicsDetailsGroupedRes — Paginated response of topic groups.
  - `page` integer — Current page number
  - `page_size` integer — Results per page
  - `total` integer, nullable — Total number of results
  - `has_next` boolean, nullable — Whether more pages exist
  - `result` TopicGroup[], required
    - `group_id` string, required
    - `group_type` 'entity_id'
    - `entity` TopicGroupEntity, required — Entity information for a topic group.
      - `entity_id` string, required
      - `entity_type` 'sources' | 'destinations' | 'transforms' | 'pipelines' | 'manual', required — Enum for topic entity types (producer types).
      - `entity_name` string, required
      - `connector` union, required
        - 'alloydb' | 'elasticsearch' | 'mongodbhosted' | 'mongodb' | 'sqlserveraws' | 'mariadb' | 'mysql' | 'postgresql' | 'oracle' | 'documentdb' | 'oracleaws' | 'kafkadirect' | 'redis' | 's3' | 'webhook' | 'zendesk_webhook' | 'salesforce_webhook' | 'shopify_webhook' | 'stripe_webhook' | 'db2' | 'dynamodb' | 'vitess' | 'planetscale' | 'supabase' | 'informix' — Available source connector types for CDC data ingestion. Includes relational databases (PostgreSQL, MySQL, SQL Server, Oracle), NoSQL databases (MongoDB, DynamoDB), and direct Kafka connections.
        - 'azblob' | 'clickhouse' | 'databricks' | 'mysql' | 'postgresql' | 'redshift' | 's3' | 'r2' | 'gcs' | 'motherduck' | 'weaviate' | 'pinecone' | 'httpsink' | 'sqlserver' | 'bigquery' | 'cockroachdb' | 'db2' | 'oracle' | 'redis' | 'snowflake' | 'starburst' | 'kafka' | 'kafkadirect' | 'iceberg' — Available destination connector types for data delivery. Supports data warehouses (Snowflake, BigQuery, Databricks), databases (ClickHouse, PostgreSQL), and object storage (S3, Iceberg).
        - 'fan_out' | 'sql_join' | 'enrich' | 'enrich_async' | 'map_filter' | 'toast_handling' | 'un_nesting' | 'rollup' | 'topic_router'
        - string
      - `connector_display_name` string, required
    - `topic_count` integer, required
    - `topics` TopicsDetailsRes, required
      - `page` integer — Current page number
      - `page_size` integer — Results per page
      - `total` integer, nullable — Total number of results
      - `has_next` boolean, nullable — Whether more pages exist
      - `result` TopicDetailsRes[], required
        - `id` string, required
        - `name` string, required
        - `entity` TopicDetailsEntity, required
          - `entity_type` 'sources' | 'destinations' | 'transforms' | 'pipelines' | 'manual', required — Enum for topic entity types (producer types).
          - `entity_id` string, required
          - `name` string, required
          - `connector` union, required
            - 'alloydb' | 'elasticsearch' | 'mongodbhosted' | 'mongodb' | 'sqlserveraws' | 'mariadb' | 'mysql' | 'postgresql' | 'oracle' | 'documentdb' | 'oracleaws' | 'kafkadirect' | 'redis' | 's3' | 'webhook' | 'zendesk_webhook' | 'salesforce_webhook' | 'shopify_webhook' | 'stripe_webhook' | 'db2' | 'dynamodb' | 'vitess' | 'planetscale' | 'supabase' | 'informix' — Available source connector types for CDC data ingestion. Includes relational databases (PostgreSQL, MySQL, SQL Server, Oracle), NoSQL databases (MongoDB, DynamoDB), and direct Kafka connections.
            - 'azblob' | 'clickhouse' | 'databricks' | 'mysql' | 'postgresql' | 'redshift' | 's3' | 'r2' | 'gcs' | 'motherduck' | 'weaviate' | 'pinecone' | 'httpsink' | 'sqlserver' | 'bigquery' | 'cockroachdb' | 'db2' | 'oracle' | 'redis' | 'snowflake' | 'starburst' | 'kafka' | 'kafkadirect' | 'iceberg' — Available destination connector types for data delivery. Supports data warehouses (Snowflake, BigQuery, Databricks), databases (ClickHouse, PostgreSQL), and object storage (S3, Iceberg).
            - 'fan_out' | 'sql_join' | 'enrich' | 'enrich_async' | 'map_filter' | 'toast_handling' | 'un_nesting' | 'rollup' | 'topic_router'
            - string
          - `topic_ids` string[], required
          - `topic_db_ids` string[], required
          - `display_name` string, required
          - `filtered_snapshot_language` string, nullable
        - `prefix` string, nullable
        - `serialization` TopicSerialization — 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.
          - `key_format` 'avro' | 'json' | 'json_schema' | 'protobuf' | 'string' | 'bytearray' | 'unknown' — Human-readable serialization format names for API responses.
          - `value_format` 'avro' | 'json' | 'json_schema' | 'protobuf' | 'string' | 'bytearray' | 'unknown' — Human-readable serialization format names for API responses.
          - `key_converter` string, nullable — Converter class for message keys
          - `value_converter` string, nullable — Converter class for message values
          - `schema_registry_enabled` boolean — Whether Schema Registry is used for this topic's serialization
        - `tags` string[], nullable — List of tag IDs assigned to this topic
        - `broker_only` boolean — True when this row was surfaced from a broker listing rather than the MongoDB `topics` collection (only possible with `include_internal=true`). The FE renders a badge so the user can tell Mongo-tracked topics apart from broker-only ones.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/streamkap/apis/streamkap-rest-api.md) · [All operations](https://skmtc.net/streamkap/apis/streamkap-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/streamkap/streamkap-rest-api/revisions/8aea6143d003/schema)
