Skip to main content
GET
/
topics
/
details
List all topics
curl --request GET \
  --url https://api.streamkap.com/topics/details \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "entity_id": [
    "<string>"
  ],
  "snapshot": [
    "<string>"
  ],
  "value_format": "<string>",
  "has_errors": true
}
'
{
  "result": [
    {
      "id": "<string>",
      "name": "<string>",
      "entity": {
        "entity_type": "sources",
        "entity_id": "<string>",
        "name": "<string>",
        "connector": "elasticsearch",
        "topic_ids": [
          "<string>"
        ],
        "topic_db_ids": [
          "<string>"
        ],
        "display_name": "<string>"
      },
      "prefix": "<string>",
      "serialization": {
        "key_format": "unknown",
        "value_format": "unknown",
        "key_converter": "<string>",
        "value_converter": "<string>",
        "schema_registry_enabled": false
      }
    }
  ],
  "page": 1,
  "page_size": 10,
  "total": 123,
  "has_next": true
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Query Parameters

entity_type
string | null

Filter by entity type(s). Single value (e.g., 'sources') or comma-separated (e.g., 'sources,transforms'). Valid types: sources, destinations, transforms, pipelines, manual.

topic_id
string | null
partial_name
string | null

Topic id

page
integer
default:1
page_size
integer
default:10
entity_id
string | null

Filter by specific entity IDs (comma-separated list)

include_dlq
boolean
default:true

Include Dead Letter Queue (DLQ) topics in results. Set to false to exclude DLQ topics.

snapshot
string | null

Filter topics by snapshot status. Comma-separated for multiple statuses (e.g., 'running', 'completed,failed'). Valid statuses: running, completed, failed, pending, cancelled

eta
string | null

Filter by snapshot ETA in milliseconds. Format: 'operator:value' (e.g., 'gt:60000', 'lte:300000'). Valid operators: gt (>), lt (<), gte (>=), lte (<=), eq (=), ne (!=). Topics without ETA (null/0) are excluded when filtering.

timestamp_from
string | null

Start timestamp for filtering topics by activity period (ISO 8601 format)

timestamp_to
string | null

End timestamp for filtering topics by activity period (ISO 8601 format)

time_type
enum<string> | null

Time aggregation type for filtering active topics (only applies when timestamp_from/to are specified)

Available options:
timeseries,
timesummary,
latest
value_format
string | null

Filter by serialization value format. Valid values: avro, json, json_schema, protobuf, string, bytearray. Case-insensitive. Omit or pass null to return all formats.

has_errors
boolean | null

Filter topics by error status. true = only topics with recordErrorTotal > 0, false = only topics with recordErrorTotal == 0, null/omit = return all topics.

sort
string | null

Sort field. Can be a DB field (name, connector) or a metric field (byteTotal, recordsLag, etc.)

sort_dir
enum<string>
default:asc
Available options:
asc,
desc

Body

application/json

Body model for POST /topics/details/search requests.

Supports large lists of entity IDs that would exceed URL length limits when using GET. Body parameters take precedence over query parameters when both are provided.

entity_id

List of entity IDs (as array) or comma-separated string. Body takes precedence over query params.

snapshot

List of snapshot statuses (as array) or comma-separated string. Body takes precedence over query params. Valid statuses: running, completed, failed, pending, cancelled

value_format
string | null

Filter by serialization value format. Valid values: avro, json, json_schema, protobuf, string, bytearray. Case-insensitive. Body takes precedence over query params.

has_errors
boolean | null

Filter topics by error status. true = only topics with errors, false = only topics without errors. Body takes precedence over query params.

Response

Successful Response

result
TopicDetailsRes · object[]
required
page
integer
default:1

Current page number

page_size
integer
default:10

Results per page

total
integer | null

Total number of results

has_next
boolean | null

Whether more pages exist