123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501 |
- openapi: 3.0.0
- info:
- description: Api Documentation
- version: 0.1.0
- title: Api Documentation
- termsOfService: urn:tos
- contact: {}
- license:
- name: Apache 2.0
- url: http://www.apache.org/licenses/LICENSE-2.0
- tags:
- - name: /api/clusters
- servers:
- - url: /localhost
- paths:
- /api/clusters:
- get:
- tags:
- - /api/clusters
- summary: getClusters
- operationId: getClusters
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/Cluster'
- /api/clusters/{clusterName}/brokers:
- get:
- tags:
- - /api/clusters
- summary: getBrokers
- operationId: getBrokers
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/Broker'
- /api/clusters/{clusterName}/metrics/broker:
- get:
- tags:
- - /api/clusters
- summary: getBrokersMetrics
- operationId: getBrokersMetrics
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/BrokersMetrics'
- /api/clusters/{clusterName}/topics:
- get:
- tags:
- - /api/clusters
- summary: getTopics
- operationId: getTopics
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/Topic'
- post:
- tags:
- - /api/clusters
- summary: createTopic
- operationId: createTopic
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/TopicFormData'
- responses:
- 201:
- description: Created
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Topic'
- /api/clusters/{clusterName}/topics/{topicName}:
- get:
- tags:
- - /api/clusters
- summary: getTopicDetails
- operationId: getTopicDetails
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- - name: topicName
- in: path
- required: true
- schema:
- type: string
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/TopicDetails'
- patch:
- tags:
- - /api/clusters
- summary: updateTopic
- operationId: updateTopic
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- - name: topicName
- in: path
- required: true
- schema:
- type: string
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/TopicFormData'
- responses:
- 200:
- description: Updated
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Topic'
- /api/clusters/{clusterName}/topics/{topicName}/config:
- get:
- tags:
- - /api/clusters
- summary: getTopicConfigs
- operationId: getTopicConfigs
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- - name: topicName
- in: path
- required: true
- schema:
- type: string
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/TopicConfig'
- /api/clusters/{clusterName}/topics/{topicName}/messages:
- get:
- tags:
- - /api/clusters
- summary: getTopicMessages
- operationId: getTopicMessages
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- - name: topicName
- in: path
- required: true
- schema:
- type: string
- - name: partition
- in: query
- schema:
- type: integer
- - name: offset
- in: query
- schema:
- type: integer
- format: int64
- - name: timestamp
- in: query
- schema:
- type: string
- format: date-time
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/TopicMessage'
- /api/clusters/{clusterName}/consumer-groups/{id}:
- get:
- tags:
- - /api/clusters
- summary: get Consumer Group By Id
- operationId: getConsumerGroup
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- - name: id
- in: path
- required: true
- schema:
- type: string
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/ConsumerGroupDetails'
- /api/clusters/{clusterName}/consumerGroups:
- get:
- tags:
- - /api/clusters
- summary: get all ConsumerGroups
- operationId: getConsumerGroups
- parameters:
- - name: clusterName
- in: path
- required: true
- schema:
- type: string
- responses:
- 200:
- description: OK
- content:
- application/json:
- schema:
- type: array
- items:
- $ref: '#/components/schemas/ConsumerGroup'
- components:
- schemas:
- Cluster:
- type: object
- properties:
- name:
- type: string
- defaultCluster:
- type: boolean
- status:
- $ref: '#/components/schemas/ServerStatus'
- brokerCount:
- type: integer
- onlinePartitionCount:
- type: integer
- topicCount:
- type: integer
- bytesInPerSec:
- type: integer
- bytesOutPerSec:
- type: integer
- required:
- - id
- - name
- - status
- ServerStatus:
- type: string
- enum:
- - online
- - offline
- BrokersMetrics:
- type: object
- properties:
- zooKeeperStatus:
- type: integer
- activeControllers:
- type: integer
- uncleanLeaderElectionCount:
- type: integer
- underReplicatedPartitionCount:
- type: integer
- offlinePartitionCount:
- type: integer
- inSyncReplicasCount:
- type: integer
- outOfSyncReplicasCount:
- type: integer
- segmentZise:
- type: integer
- Topic:
- type: object
- properties:
- name:
- type: string
- internal:
- type: boolean
- partitions:
- type: array
- items:
- $ref: '#/components/schemas/Partition'
- Partition:
- type: object
- properties:
- partition:
- type: integer
- leader:
- type: integer
- replicas:
- type: array
- items:
- $ref: '#/components/schemas/Replica'
- Replica:
- type: object
- properties:
- broker:
- type: integer
- leader:
- type: boolean
- inSync:
- type: boolean
- TopicDetails:
- type: object
- properties:
- partitionCount:
- type: integer
- replicationFactor:
- type: integer
- replicas:
- type: integer
- inSyncReplicas:
- type: integer
- bytesInPerSec:
- type: integer
- segmentSize:
- type: integer
- segmentCount:
- type: integer
- underReplicatedPartitions:
- type: integer
- TopicConfig:
- type: object
- properties:
- name:
- type: string
- value:
- type: string
- defaultValue:
- type: string
- TopicFormData:
- type: object
- properties:
- name:
- type: string
- partitions:
- type: integer
- replicationFactor:
- type: integer
- configs:
- type: object
- additionalProperties:
- type: string
- Broker:
- type: object
- properties:
- id:
- type: string
- ConsumerGroup:
- type: object
- properties:
- clusterId:
- type: string
- consumerGroupId:
- type: string
- numConsumers:
- type: integer
- numTopics:
- type: integer
- TopicMessage:
- type: object
- properties:
- partition:
- type: integer
- offset:
- type: integer
- format: int64
- timestamp:
- type: string
- format: date-time
- timestampType:
- type: string
- enum:
- - NO_TIMESTAMP_TYPE
- - CREATE_TIME
- - LOG_APPEND_TIME
- key:
- type: string
- headers:
- type: object
- additionalProperties:
- type: string
- content:
- type: string
- required:
- - partition
- - offset
- - timestamp
- TopicPartitionDto:
- type: object
- properties:
- topic:
- type: string
- partition:
- type: integer
- required:
- - topic
- - partition
- ConsumerTopicPartitionDetail:
- type: object
- properties:
- consumerId:
- type: string
- topic:
- type: string
- partition:
- type: integer
- currentOffset:
- type: long
- endOffset:
- type: long
- messagesBehind:
- type: long
- ConsumerGroupDetails:
- type: object
- properties:
- consumerGroupId:
- type: string
- consumers:
- type: array
- items:
- $ref: '#/components/schemas/ConsumerTopicPartitionDetail'
|