You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by zh...@apache.org on 2023/04/23 08:39:49 UTC
[pulsar-site] 01/01: Release 2.9.5
This is an automated email from the ASF dual-hosted git repository.
zhaocong pushed a commit to branch release-2.9.5
in repository https://gitbox.apache.org/repos/asf/pulsar-site.git
commit edaf5588214a847ea47ef6aa72a4096ad2725dad
Author: coderzc <zh...@apache.org>
AuthorDate: Sun Apr 23 16:39:26 2023 +0800
Release 2.9.5
---
data/release-pulsar.js | 9 +
release-notes/versioned/client-java-2.9.5.md | 15 +
release-notes/versioned/pulsar-2.9.5.md | 123 +
static/swagger/2.9.5/swagger.json | 28109 ++++++++++++++++++++++++
static/swagger/2.9.5/swaggerfunctions.json | 3414 +++
static/swagger/2.9.5/swaggerpackages.json | 1915 ++
static/swagger/2.9.5/swaggersink.json | 2703 +++
static/swagger/2.9.5/swaggersource.json | 2657 +++
static/swagger/2.9.5/v2/swagger.json | 28109 ++++++++++++++++++++++++
static/swagger/2.9.5/v3/swaggerfunctions.json | 3414 +++
static/swagger/2.9.5/v3/swaggerpackages.json | 1915 ++
static/swagger/2.9.5/v3/swaggersink.json | 2703 +++
static/swagger/2.9.5/v3/swaggersource.json | 2657 +++
static/swagger/restApiVersions.json | 17 +
14 files changed, 77760 insertions(+)
diff --git a/data/release-pulsar.js b/data/release-pulsar.js
index 43fd3786e19..ffb94275a28 100644
--- a/data/release-pulsar.js
+++ b/data/release-pulsar.js
@@ -1,4 +1,13 @@
module.exports = [
+ {
+ "author": "coderzc-",
+ "tagName": "v2.9.5",
+ "publishedAt": "2023-04-20T02:38:21Z",
+ "vtag": "2.9.x",
+ "releaseNotes": "/release-notes/versioned/pulsar-2.9.5/",
+ "doc": "/docs/2.9.x",
+ "version": "v2.9.x"
+ },
{
"author": "Technoboy-",
"tagName": "v2.11.1",
diff --git a/release-notes/versioned/client-java-2.9.5.md b/release-notes/versioned/client-java-2.9.5.md
new file mode 100644
index 00000000000..05dae13b022
--- /dev/null
+++ b/release-notes/versioned/client-java-2.9.5.md
@@ -0,0 +1,15 @@
+---
+id: client-java-2.9.5
+title: Client Java 2.9.5
+sidebar_label: Client Java 2.9.5
+---
+
+* [fix][client] Fix reader listener can't auto ack with pooled message. (#19354)
+* [fix][client] Prevent DNS reverse lookup when physical address is an IP address (#19028)
+* [fix][client] Set fields earlier for correct ClientCnx initialization (#19327)
+* [improve][client] Change the get lastMessageId to debug level (#18421)
+* [fix][client] For exclusive subscriptions, if two consumers are created repeatedly, the second consumer will block #18633
+* [fix][client] Fix async completion in ConsumerImpl#processPossibleToDLQ (#19392)
+* [fix][client] Broker address resolution wrong if connect through a multi-dns names proxy (#19597)
+* [fix] [client] fix memory leak if enabled pooled messages (#19585)
+* [fix][client] Fix IllegalThreadStateException when using newThread in ExecutorProvider.ExtendedThreadFactory (#18268)`
diff --git a/release-notes/versioned/pulsar-2.9.5.md b/release-notes/versioned/pulsar-2.9.5.md
new file mode 100644
index 00000000000..dc4db40791d
--- /dev/null
+++ b/release-notes/versioned/pulsar-2.9.5.md
@@ -0,0 +1,123 @@
+---
+id: pulsar-2.9.5
+title: Apache Pulsar2.9.5
+sidebar_label: Apache Pulsar 2.9.5
+---
+
+#### 2023-4-23
+
+### Broker
+
+* [improve][broker] Omit making a copy of CommandAck when there are no broker interceptors [#18997](https://github.com/apache/pulsar/pull/18997)
+* [fix][broker] Copy proto command fields into final variables in ServerCnx [#18987](https://github.com/apache/pulsar/pull/18987)
+* [improve][broker] Add logs for why namespace bundle been split (#19003)
+* [fix][broker] Fix deadlock in PendingAckHandleImpl (#18989)
+* [fix][broker]Update interceptor handler exception (#18940)
+* [improve][broker] Make Consumer#equals more effective (#18662)
+* [fix][broker]add test case for deleting namespace fail when has partitioned system topic (#17338)
+* [fix][broker] Fix open cursor with null-initialPosition result with earliest position (#18416)
+* [improve][broker] Add ref count for sticky hash to optimize the performance of Key_Shared subscription (#19167)
+* [fix][broker] Support deleting partitioned topics with the keyword -partition- (#19230)
+* [improve][broker] Follow up #19230 to tighten the validation scope (#19234)
+* [branch-2.9] Fix compile error caused by cherry-pick #19167. (#19241)
+* [improve][websocket][branch-2.9] Add ping support (#19245)
+* [fix][ml] Topics stats shows msgBacklog but there reality no backlog (#19275)
+* [fix][websocket][branch-2.9] Fix webSocketPingDurationSeconds config (#19293)
+* [fix] [ml] Fix the incorrect total size if use ML intercepto (#19404)
+* [fix][broker] Expect msgs after server initiated CloseProducer (#19446)
+* [cleanup][broker] Validate originalPrincipal earlier in ServerCnx (#19270)
+* [fix][Branch-2.9] Fix bookie JVM param BOOKIE_MEM, BOOKIE_GC miss problem. #19441
+* [improve][broker] ServerCnx: go to Failed state when auth fails (#19312)
+* [fix][broker][branch-2.9] Fix geo-replication admin (#19614)
+* [fix] [ml] messagesConsumedCounter of NonDurableCursor was initialized incorrectly (#19355)
+* [fix][ml] Fix potential NPE cause future never complete. (#19415)
+* [fix] [ml] topic load fail by ledger lost (#19444)
+* [fix] [broker] getLastMessageId returns a wrong batch index of last message if enabled read compacted (#18877)
+* [fix][broker] Remove timestamp from broker metrics (#17419)
+* [fix][broker]fix multi invocation for ledger createComplete (#18975)
+* [improve][broker] Use shrink map for trackerCache (#19534)
+* [fix] [broker] Incorrect service name selection logic (#19505)
+* [fix] [broker] Make the service name resolver cache of PulsarWebResource expire after access (#19532)
+* [fix][branch-2.9] Support zookeeper read-only config (#19693)
+* [fix][branch-2.9] Fix validatePersistencePolicies that Namespace/Topic persistent policies cannot set to < 0 #19687
+* [fix][branch-2.9] fix txn coordinator recover handle committing and aborting txn race condition. #19699
+* [fix][branch-2.9] Fix race condition while updating partition number (#19691)
+* [improve] upgrade the bookkeeper version to 4.14.7 (#19178)
+* [improve] Upgrade lombok to 1.8.26 (#19426)
+* [fix][cli][branch-2.9] Fix release tool (#19712)
+* [fix] [broker] Topic close failure leaves subscription in a permanent fence state (#19692)
+* [fix][meta] Fix deadlock causes session notification not to work (#19754)
+* [improve][misc] Upgrade Netty to 4.1.87.Final (#19417)
+* [fix][broker] Fix potential exception cause the policy service init fail. (#19746)
+* [improve][broker] Authorize originalPrincipal when provided (#19830)
+* [fix] [broker] Counter of pending send messages in Replicator incorrect if schema future not complete #19242
+* [branch-2.9][fix][broker] Fix index generator is not rollback after entries are failed added #19978
+* [fix][broker] Only validate superuser access if authz enabled #19989
+
+
+### Proxy
+* [fix][proxy] Only go to connecting state once (#19331)
+
+### Transaction
+
+* [fix][txn] Transaction buffer recover blocked by readNext #18970
+* [fix][txn] transaction pending ack store future not completely problem (#18943)
+* [fix][txn] Fix PendingAckHandleImpl when `pendingAckStoreProvider.checkInitializedBefore` failed (#18859)
+* [fix][broker] Close transactionBuffer after MessageDeduplication#checkStatus failed (#19157)
+* [fix][txn] Correct the prompt message (#17009)
+* [improve][txn] Handle changeToReadyState failure correctly in TC client (#19308)
+
+### Pulsar IO and Pulsar Functions
+
+* [fix][io] Only bundle kafka schema registry client (#18931)
+* [fix][fn] Typo in method name (#18844)
+* [fix][io] Update Elasticsearch sink idle cnx timeout to 30s (#19377)
+* [fix][fn] Fix k8s merge runtime opts bug (#19481)
+
+### Tiered Storage
+
+* [fix][offload] Fix numerical overflow bug while reading data from tiered storage (#18595)
+* [fix][offload] Fix memory leak while Offloading ledgers (#18500)
+
+### Pulsar SQL
+
+* [fix][sql] Fix message without schema issue. (#18745)
+
+### CLI
+
+* [fix][cli] Fix CLI client produce don't able to use multiple -m send multiple messages (#18238)
+* [fix][cli] Check numMessages after incrementing counter #17826
+
+## Admin
+
+* [improve][admin] Unset namespace policy to improve deleting namespace. (#17033)
+* [fix] [admin] Make response code to 400 instead of 500 when delete topic fails due to enabled geo-replication #19879
+
+### Security
+
+* [fix][sec] Upgrade scala-library to get rid of CVE-2022-36944 (#18021)
+* [fix][sec] Upgrade jettison to 1.5.3 (#19038)
+* [fix][sec] Upgrade woodstox to 5.4.0 (#19041)
+* [feat][broker] OneStageAuth State: move authn out of constructor #19295
+* [improve][broker] Require authRole is proxyRole to set originalPrincipal (#19455)
+* [fix][broker] Make authentication refresh threadsafe (#19506)
+* [fix][broker] Allow proxy to pass same role for authRole and originalRole (#19557)
+* [improve][sec] Suppress false positive OWASP reports (#19105)
+* [improve] Upgrade wildfly-eytron (used by debezium) to fix CVE-2022-3143 (#19333)
+* [improve] Simplify enabling Broker, WS Proxy hostname verification (#19674)
+
+### Dependency & Library updates
+
+* [fix][build] Resolve OWASP Dependency Check false positives (#19120)
+* [fix][build] Upgrade dependency-check-maven plugin to fix broken OWASP check #19170
+
+### CI & Test
+
+* [improve][broker] Add test to verify authRole cannot change (#19430)
+* [fix][test] ProxyWithAuthorizationTest remove SAN from test certs (#19594)
+* [test][admin]add test case: delete namespace when has partitioned system topic #17338
+* [improve][broker] Authorize originalPrincipal when provided (#19830)
+
+### Others
+
+* [fix][metrics] fixed ProxyStats to use common.stats.JvmMetrics (#15692)
diff --git a/static/swagger/2.9.5/swagger.json b/static/swagger/2.9.5/swagger.json
new file mode 100644
index 00000000000..b1a68495ff6
--- /dev/null
+++ b/static/swagger/2.9.5/swagger.json
@@ -0,0 +1,28109 @@
+{
+ "basePath": "/admin/v2",
+ "definitions": {
+ "AllocatorStats": {
+ "properties": {
+ "directArenas": {
+ "items": {
+ "$ref": "#/definitions/PoolArenaStats"
+ },
+ "type": "array"
+ },
+ "heapArenas": {
+ "items": {
+ "$ref": "#/definitions/PoolArenaStats"
+ },
+ "type": "array"
+ },
+ "normalCacheSize": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numDirectArenas": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numHeapArenas": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numThreadLocalCaches": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "smallCacheSize": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "Annotation": {
+ "type": "object"
+ },
+ "AnnotationIntrospector": {
+ "type": "object"
+ },
+ "ArrayBuilders": {
+ "properties": {
+ "booleanBuilder": {
+ "$ref": "#/definitions/BooleanBuilder"
+ },
+ "byteBuilder": {
+ "$ref": "#/definitions/ByteBuilder"
+ },
+ "doubleBuilder": {
+ "$ref": "#/definitions/DoubleBuilder"
+ },
+ "floatBuilder": {
+ "$ref": "#/definitions/FloatBuilder"
+ },
+ "intBuilder": {
+ "$ref": "#/definitions/IntBuilder"
+ },
+ "longBuilder": {
+ "$ref": "#/definitions/LongBuilder"
+ },
+ "shortBuilder": {
+ "$ref": "#/definitions/ShortBuilder"
+ }
+ },
+ "type": "object"
+ },
+ "AuthPolicies": {
+ "properties": {
+ "namespaceAuthentication": {
+ "additionalProperties": {
+ "items": {
+ "enum": [
+ "produce",
+ "consume",
+ "functions",
+ "sources",
+ "sinks",
+ "packages"
+ ],
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "type": "object"
+ },
+ "subscriptionAuthentication": {
+ "additionalProperties": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "type": "object"
+ },
+ "topicAuthentication": {
+ "additionalProperties": {
+ "additionalProperties": {
+ "items": {
+ "enum": [
+ "produce",
+ "consume",
+ "functions",
+ "sources",
+ "sinks",
+ "packages"
+ ],
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "type": "object"
+ },
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "AuthenticationDataHttps": {
+ "properties": {
+ "commandData": {
+ "type": "string"
+ },
+ "httpAuthType": {
+ "type": "string"
+ },
+ "peerAddress": {
+ "$ref": "#/definitions/SocketAddress"
+ },
+ "subscription": {
+ "type": "string"
+ },
+ "tlsCertificates": {
+ "items": {
+ "$ref": "#/definitions/X509Certificate"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "AutoFailoverPolicyData": {
+ "properties": {
+ "parameters": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "policyType": {
+ "enum": [
+ "min_available"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "AutoSubscriptionCreationOverride": {
+ "properties": {
+ "allowAutoSubscriptionCreation": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "AutoTopicCreationOverride": {
+ "properties": {
+ "allowAutoTopicCreation": {
+ "type": "boolean"
+ },
+ "defaultNumPartitions": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "topicType": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "BacklogQuota": {
+ "properties": {
+ "limit": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "limitSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "limitTime": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "policy": {
+ "enum": [
+ "producer_request_hold",
+ "producer_exception",
+ "consumer_backlog_eviction"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "Base64Variant": {
+ "properties": {
+ "maxLineLength": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "paddingByte": {
+ "format": "byte",
+ "type": "string"
+ },
+ "paddingChar": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "BookieAffinityGroupData": {
+ "properties": {
+ "bookkeeperAffinityGroupPrimary": {
+ "type": "string"
+ },
+ "bookkeeperAffinityGroupSecondary": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "BookieInfo": {
+ "properties": {
+ "hostname": {
+ "type": "string"
+ },
+ "rack": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "BookiesClusterInfo": {
+ "properties": {
+ "bookies": {
+ "items": {
+ "$ref": "#/definitions/RawBookieInfo"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "BooleanBuilder": {
+ "type": "object"
+ },
+ "BrokerInfo": {
+ "properties": {
+ "serviceUrl": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "BrokerNamespaceIsolationData": {
+ "description": "The namespace isolation data for a given broker",
+ "properties": {
+ "brokerName": {
+ "description": "The broker name",
+ "example": "broker1:8080",
+ "type": "string"
+ },
+ "namespaceRegex": {
+ "description": "The namespace-isolation policies attached to this broker",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "policyName": {
+ "description": "Policy name",
+ "example": "my-policy",
+ "type": "string"
+ },
+ "primary": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "BundlesData": {
+ "properties": {
+ "boundaries": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "numBundles": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "ByteBuilder": {
+ "type": "object"
+ },
+ "CharacterEscapes": {
+ "properties": {
+ "escapeCodesForAscii": {
+ "items": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "ClassIntrospector": {
+ "type": "object"
+ },
+ "ClassLoader": {
+ "properties": {
+ "definedPackages": {
+ "items": {
+ "$ref": "#/definitions/Package"
+ },
+ "type": "array"
+ },
+ "name": {
+ "type": "string"
+ },
+ "parent": {
+ "$ref": "#/definitions/ClassLoader"
+ },
+ "registeredAsParallelCapable": {
+ "type": "boolean"
+ },
+ "unnamedModule": {
+ "$ref": "#/definitions/Module"
+ }
+ },
+ "type": "object"
+ },
+ "ClusterData": {
+ "description": "The configuration data for a cluster",
+ "properties": {
+ "authenticationParameters": {
+ "description": "Authentication parameters when client would like to connect to cluster.",
+ "type": "string"
+ },
+ "authenticationPlugin": {
+ "description": "Authentication plugin when client would like to connect to cluster.",
+ "example": "org.apache.pulsar.client.impl.auth.AuthenticationToken",
+ "type": "string"
+ },
+ "brokerClientTlsEnabled": {
+ "description": "Enable TLS when talking with other brokers in the same cluster (admin operation) or different clusters (replication)",
+ "type": "boolean"
+ },
+ "brokerClientTlsEnabledWithKeyStore": {
+ "description": "Whether internal client use KeyStore type to authenticate with other Pulsar brokers",
+ "type": "boolean"
+ },
+ "brokerClientTlsTrustStore": {
+ "description": "TLS TrustStore path for internal client used by the internal client to authenticate with Pulsar brokers",
+ "type": "string"
+ },
+ "brokerClientTlsTrustStorePassword": {
+ "description": "TLS TrustStore password for internal client used by the internal client to authenticate with Pulsar brokers",
+ "type": "string"
+ },
+ "brokerClientTlsTrustStoreType": {
+ "description": "TLS TrustStore type configuration for internal client: JKS, PKCS12 used by the internal client to authenticate with Pulsar brokers",
+ "example": "JKS",
+ "type": "string"
+ },
+ "brokerClientTrustCertsFilePath": {
+ "description": "Path for the trusted TLS certificate file for outgoing connection to a server (broker)",
+ "type": "string"
+ },
+ "brokerServiceUrl": {
+ "description": "The broker service url (for produce and consume operations)",
+ "example": "pulsar://pulsar.example.com:6650",
+ "type": "string"
+ },
+ "brokerServiceUrlTls": {
+ "description": "The secured broker service url (for produce and consume operations)",
+ "example": "pulsar+ssl://pulsar.example.com:6651",
+ "type": "string"
+ },
+ "listenerName": {
+ "description": "listenerName when client would like to connect to cluster",
+ "type": "string"
+ },
+ "peerClusterNames": {
+ "description": "A set of peer cluster names",
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "proxyProtocol": {
+ "description": "protocol to decide type of proxy routing eg: SNI-routing",
+ "enum": [
+ "SNI"
+ ],
+ "example": "SNI",
+ "type": "string"
+ },
+ "proxyServiceUrl": {
+ "description": "Proxy-service url when client would like to connect to broker via proxy.",
+ "example": "pulsar+ssl://ats-proxy.example.com:4443 or pulsar://ats-proxy.example.com:4080",
+ "type": "string"
+ },
+ "serviceUrl": {
+ "description": "The HTTP rest service URL (for admin operations)",
+ "example": "http://pulsar.example.com:8080",
+ "type": "string"
+ },
+ "serviceUrlTls": {
+ "description": "The HTTPS rest service URL (for admin operations)",
+ "example": "https://pulsar.example.com:8443",
+ "type": "string"
+ },
+ "tlsAllowInsecureConnection": {
+ "description": "Allow TLS connections to servers whose certificate cannot be be verified to have been signed by a trusted certificate authority.",
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "CompactionStats": {
+ "properties": {
+ "lastCompactionDurationTimeInMills": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastCompactionFailedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastCompactionRemovedEventCount": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastCompactionSucceedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "CompletableFuture": {
+ "properties": {
+ "cancelled": {
+ "type": "boolean"
+ },
+ "completedExceptionally": {
+ "type": "boolean"
+ },
+ "done": {
+ "type": "boolean"
+ },
+ "numberOfDependents": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "CompletableFutureClusterData": {
+ "properties": {
+ "cancelled": {
+ "type": "boolean"
+ },
+ "completedExceptionally": {
+ "type": "boolean"
+ },
+ "done": {
+ "type": "boolean"
+ },
+ "numberOfDependents": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "CompletableFuturePartitionedTopicMetadata": {
+ "properties": {
+ "cancelled": {
+ "type": "boolean"
+ },
+ "completedExceptionally": {
+ "type": "boolean"
+ },
+ "done": {
+ "type": "boolean"
+ },
+ "numberOfDependents": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "CompletableFutureVoid": {
+ "properties": {
+ "cancelled": {
+ "type": "boolean"
+ },
+ "completedExceptionally": {
+ "type": "boolean"
+ },
+ "done": {
+ "type": "boolean"
+ },
+ "numberOfDependents": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "ConnectorDefinition": {
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "sinkClass": {
+ "type": "string"
+ },
+ "sinkConfigClass": {
+ "type": "string"
+ },
+ "sourceClass": {
+ "type": "string"
+ },
+ "sourceConfigClass": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ConsumerStats": {
+ "properties": {
+ "address": {
+ "type": "string"
+ },
+ "availablePermits": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "avgMessagesPerEntry": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "blockedConsumerOnUnackedMsgs": {
+ "type": "boolean"
+ },
+ "bytesOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "chunkedMessageRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "clientVersion": {
+ "type": "string"
+ },
+ "connectedSince": {
+ "type": "string"
+ },
+ "consumerName": {
+ "type": "string"
+ },
+ "keyHashRanges": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "lastAckedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastConsumedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "messageAckRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "metadata": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "msgOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateRedeliver": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "readPositionWhenJoining": {
+ "type": "string"
+ },
+ "unackedMessages": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "ContextAttributes": {
+ "type": "object"
+ },
+ "Currency": {
+ "properties": {
+ "currencyCode": {
+ "type": "string"
+ },
+ "defaultFractionDigits": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "displayName": {
+ "type": "string"
+ },
+ "numericCode": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numericCodeAsString": {
+ "type": "string"
+ },
+ "symbol": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "CursorDetails": {
+ "properties": {
+ "cursorBacklog": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "cursorLedgerId": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "CursorStats": {
+ "properties": {
+ "cursorLedger": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "cursorLedgerLastEntry": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "individuallyDeletedMessages": {
+ "type": "string"
+ },
+ "lastLedgerSwitchTimestamp": {
+ "type": "string"
+ },
+ "markDeletePosition": {
+ "type": "string"
+ },
+ "messagesConsumedCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numberOfEntriesSinceFirstNotAckedMessage": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "pendingReadOps": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "properties": {
+ "additionalProperties": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "type": "object"
+ },
+ "readPosition": {
+ "type": "string"
+ },
+ "state": {
+ "type": "string"
+ },
+ "subscriptionHavePendingRead": {
+ "type": "boolean"
+ },
+ "subscriptionHavePendingReplayRead": {
+ "type": "boolean"
+ },
+ "totalNonContiguousDeletedMessagesRange": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "waitingReadOp": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "DateFormat": {
+ "properties": {
+ "calendar": {
+ "format": "date-time",
+ "type": "string"
+ },
+ "lenient": {
+ "type": "boolean"
+ },
+ "numberFormat": {
+ "$ref": "#/definitions/NumberFormat"
+ },
+ "timeZone": {
+ "$ref": "#/definitions/TimeZone"
+ }
+ },
+ "type": "object"
+ },
+ "DelayedDeliveryPolicies": {
+ "properties": {
+ "active": {
+ "type": "boolean"
+ },
+ "tickTime": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "DeleteSchemaResponse": {
+ "properties": {
+ "version": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "DeserializationConfig": {
+ "properties": {
+ "annotationIntrospector": {
+ "$ref": "#/definitions/AnnotationIntrospector"
+ },
+ "annotationProcessingEnabled": {
+ "type": "boolean"
+ },
+ "attributes": {
+ "$ref": "#/definitions/ContextAttributes"
+ },
+ "base64Variant": {
+ "$ref": "#/definitions/Base64Variant"
+ },
+ "classIntrospector": {
+ "$ref": "#/definitions/ClassIntrospector"
+ },
+ "dateFormat": {
+ "$ref": "#/definitions/DateFormat"
+ },
+ "defaultPropertyInclusion": {
+ "$ref": "#/definitions/Value"
+ },
+ "defaultVisibilityChecker": {
+ "$ref": "#/definitions/VisibilityCheckerObject"
+ },
+ "deserializationFeatures": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "fullRootName": {
+ "$ref": "#/definitions/PropertyName"
+ },
+ "handlerInstantiator": {
+ "$ref": "#/definitions/HandlerInstantiator"
+ },
+ "locale": {
+ "$ref": "#/definitions/Locale"
+ },
+ "nodeFactory": {
+ "$ref": "#/definitions/JsonNodeFactory"
+ },
+ "problemHandlers": {
+ "$ref": "#/definitions/LinkedNodeDeserializationProblemHandler"
+ },
+ "propertyNamingStrategy": {
+ "$ref": "#/definitions/PropertyNamingStrategy"
+ },
+ "rootName": {
+ "type": "string"
+ },
+ "subtypeResolver": {
+ "$ref": "#/definitions/SubtypeResolver"
+ },
+ "timeZone": {
+ "$ref": "#/definitions/TimeZone"
+ },
+ "typeFactory": {
+ "$ref": "#/definitions/TypeFactory"
+ }
+ },
+ "type": "object"
+ },
+ "DeserializationContext": {
+ "properties": {
+ "annotationIntrospector": {
+ "$ref": "#/definitions/AnnotationIntrospector"
+ },
+ "arrayBuilders": {
+ "$ref": "#/definitions/ArrayBuilders"
+ },
+ "base64Variant": {
+ "$ref": "#/definitions/Base64Variant"
+ },
+ "config": {
+ "$ref": "#/definitions/DeserializationConfig"
+ },
+ "contextualType": {
+ "$ref": "#/definitions/JavaType"
+ },
+ "deserializationFeatures": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "factory": {
+ "$ref": "#/definitions/DeserializerFactory"
+ },
+ "locale": {
+ "$ref": "#/definitions/Locale"
+ },
+ "nodeFactory": {
+ "$ref": "#/definitions/JsonNodeFactory"
+ },
+ "parser": {
+ "$ref": "#/definitions/JsonParser"
+ },
+ "timeZone": {
+ "$ref": "#/definitions/TimeZone"
+ },
+ "typeFactory": {
+ "$ref": "#/definitions/TypeFactory"
+ }
+ },
+ "type": "object"
+ },
+ "DeserializerFactory": {
+ "type": "object"
+ },
+ "DispatchRate": {
+ "properties": {
+ "dispatchThrottlingRateInByte": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "dispatchThrottlingRateInMsg": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "ratePeriodInSecond": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "relativeToPublishRate": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "DispatchRateImpl": {
+ "properties": {
+ "dispatchThrottlingRateInByte": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "dispatchThrottlingRateInMsg": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "ratePeriodInSecond": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "relativeToPublishRate": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "DoubleBuilder": {
+ "type": "object"
+ },
+ "FailureDomain": {
+ "description": "The data of a failure domain configuration in a cluster",
+ "properties": {
+ "brokers": {
+ "description": "The collection of brokers in the same failure domain",
+ "example": "[ 'broker-1', 'broker-2' ]",
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ }
+ },
+ "type": "object"
+ },
+ "FilterProvider": {
+ "type": "object"
+ },
+ "FloatBuilder": {
+ "type": "object"
+ },
+ "FormatSchema": {
+ "properties": {
+ "schemaType": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "FunctionInstanceStatsData": {
+ "properties": {
+ "avgProcessLatency": {
+ "format": "double",
+ "type": "number"
+ },
+ "lastInvocation": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "oneMin": {
+ "$ref": "#/definitions/FunctionInstanceStatsDataBase"
+ },
+ "processedSuccessfullyTotal": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "receivedTotal": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "systemExceptionsTotal": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "userExceptionsTotal": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "userMetrics": {
+ "additionalProperties": {
+ "format": "double",
+ "type": "number"
+ },
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "FunctionInstanceStatsDataBase": {
+ "properties": {
+ "avgProcessLatency": {
+ "format": "double",
+ "type": "number"
+ },
+ "processedSuccessfullyTotal": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "receivedTotal": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "systemExceptionsTotal": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "userExceptionsTotal": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "Functions": {
+ "properties": {
+ "listOfConnectors": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "FunctionsV2": {
+ "properties": {
+ "listOfConnectors": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "FunctionsV2WorkerService": {
+ "properties": {
+ "listOfConnectors": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "FunctionsWorkerService": {
+ "properties": {
+ "listOfConnectors": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "GetAllVersionsSchemaResponse": {
+ "properties": {
+ "getSchemaResponses": {
+ "items": {
+ "$ref": "#/definitions/GetSchemaResponse"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "GetSchemaResponse": {
+ "properties": {
+ "data": {
+ "type": "string"
+ },
+ "properties": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "timestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "type": {
+ "enum": [
+ "NONE",
+ "STRING",
+ "JSON",
+ "PROTOBUF",
+ "AVRO",
+ "BOOLEAN",
+ "INT8",
+ "INT16",
+ "INT32",
+ "INT64",
+ "FLOAT",
+ "DOUBLE",
+ "DATE",
+ "TIME",
+ "TIMESTAMP",
+ "KEY_VALUE",
+ "INSTANT",
+ "LOCAL_DATE",
+ "LOCAL_TIME",
+ "LOCAL_DATE_TIME",
+ "PROTOBUF_NATIVE",
+ "BYTES",
+ "AUTO",
+ "AUTO_CONSUME",
+ "AUTO_PUBLISH"
+ ],
+ "type": "string"
+ },
+ "version": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "HandlerInstantiator": {
+ "type": "object"
+ },
+ "InactiveTopicPolicies": {
+ "properties": {
+ "deleteWhileInactive": {
+ "type": "boolean"
+ },
+ "inactiveTopicDeleteMode": {
+ "enum": [
+ "delete_when_no_subscriptions",
+ "delete_when_subscriptions_caught_up"
+ ],
+ "type": "string"
+ },
+ "maxInactiveDurationSeconds": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "InjectableValues": {
+ "type": "object"
+ },
+ "InputDecorator": {
+ "type": "object"
+ },
+ "IntBuilder": {
+ "type": "object"
+ },
+ "InternalConfigurationData": {
+ "properties": {
+ "bookkeeperMetadataServiceUri": {
+ "type": "string"
+ },
+ "configurationStoreServers": {
+ "type": "string"
+ },
+ "ledgersRootPath": {
+ "type": "string"
+ },
+ "stateStorageServiceUrl": {
+ "type": "string"
+ },
+ "zookeeperServers": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "IsCompatibilityResponse": {
+ "properties": {
+ "compatibility": {
+ "type": "boolean"
+ },
+ "schemaCompatibilityStrategy": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "JavaType": {
+ "properties": {
+ "abstract": {
+ "type": "boolean"
+ },
+ "arrayType": {
+ "type": "boolean"
+ },
+ "bindings": {
+ "$ref": "#/definitions/TypeBindings"
+ },
+ "collectionLikeType": {
+ "type": "boolean"
+ },
+ "concrete": {
+ "type": "boolean"
+ },
+ "containerType": {
+ "type": "boolean"
+ },
+ "contentType": {
+ "$ref": "#/definitions/JavaType"
+ },
+ "contentTypeHandler": {
+ "type": "object"
+ },
+ "contentValueHandler": {
+ "type": "object"
+ },
+ "enumType": {
+ "type": "boolean"
+ },
+ "erasedSignature": {
+ "type": "string"
+ },
+ "final": {
+ "type": "boolean"
+ },
+ "genericSignature": {
+ "type": "string"
+ },
+ "interface": {
+ "type": "boolean"
+ },
+ "interfaces": {
+ "items": {
+ "$ref": "#/definitions/JavaType"
+ },
+ "type": "array"
+ },
+ "javaLangObject": {
+ "type": "boolean"
+ },
+ "keyType": {
+ "$ref": "#/definitions/JavaType"
+ },
+ "mapLikeType": {
+ "type": "boolean"
+ },
+ "primitive": {
+ "type": "boolean"
+ },
+ "referenceType": {
+ "type": "boolean"
+ },
+ "referencedType": {
+ "$ref": "#/definitions/JavaType"
+ },
+ "superClass": {
+ "$ref": "#/definitions/JavaType"
+ },
+ "throwable": {
+ "type": "boolean"
+ },
+ "typeHandler": {
+ "type": "object"
+ },
+ "typeName": {
+ "type": "string"
+ },
+ "valueHandler": {
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "JsonFactory": {
+ "properties": {
+ "characterEscapes": {
+ "$ref": "#/definitions/CharacterEscapes"
+ },
+ "codec": {
+ "$ref": "#/definitions/ObjectCodec"
+ },
+ "formatName": {
+ "type": "string"
+ },
+ "inputDecorator": {
+ "$ref": "#/definitions/InputDecorator"
+ },
+ "outputDecorator": {
+ "$ref": "#/definitions/OutputDecorator"
+ },
+ "rootValueSeparator": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "JsonGenerator": {
+ "properties": {
+ "characterEscapes": {
+ "$ref": "#/definitions/CharacterEscapes"
+ },
+ "closed": {
+ "type": "boolean"
+ },
+ "codec": {
+ "$ref": "#/definitions/ObjectCodec"
+ },
+ "currentValue": {
+ "type": "object"
+ },
+ "featureMask": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "formatFeatures": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "highestEscapedChar": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "outputBuffered": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "outputContext": {
+ "$ref": "#/definitions/JsonStreamContext"
+ },
+ "outputTarget": {
+ "type": "object"
+ },
+ "prettyPrinter": {
+ "$ref": "#/definitions/PrettyPrinter"
+ },
+ "schema": {
+ "$ref": "#/definitions/FormatSchema"
+ }
+ },
+ "type": "object"
+ },
+ "JsonLocation": {
+ "properties": {
+ "byteOffset": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "charOffset": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "columnNr": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "lineNr": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "sourceRef": {
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "JsonNodeFactory": {
+ "type": "object"
+ },
+ "JsonParser": {
+ "properties": {
+ "bigIntegerValue": {
+ "type": "integer"
+ },
+ "binaryValue": {
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "booleanValue": {
+ "type": "boolean"
+ },
+ "byteValue": {
+ "format": "byte",
+ "type": "string"
+ },
+ "closed": {
+ "type": "boolean"
+ },
+ "codec": {
+ "$ref": "#/definitions/ObjectCodec"
+ },
+ "currentLocation": {
+ "$ref": "#/definitions/JsonLocation"
+ },
+ "currentName": {
+ "type": "string"
+ },
+ "currentToken": {
+ "enum": [
+ "NOT_AVAILABLE",
+ "START_OBJECT",
+ "END_OBJECT",
+ "START_ARRAY",
+ "END_ARRAY",
+ "FIELD_NAME",
+ "VALUE_EMBEDDED_OBJECT",
+ "VALUE_STRING",
+ "VALUE_NUMBER_INT",
+ "VALUE_NUMBER_FLOAT",
+ "VALUE_TRUE",
+ "VALUE_FALSE",
+ "VALUE_NULL"
+ ],
+ "type": "string"
+ },
+ "currentTokenId": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "currentValue": {
+ "type": "object"
+ },
+ "decimalValue": {
+ "type": "number"
+ },
+ "doubleValue": {
+ "format": "double",
+ "type": "number"
+ },
+ "embeddedObject": {
+ "type": "object"
+ },
+ "expectedStartArrayToken": {
+ "type": "boolean"
+ },
+ "expectedStartObjectToken": {
+ "type": "boolean"
+ },
+ "featureMask": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "floatValue": {
+ "format": "float",
+ "type": "number"
+ },
+ "formatFeatures": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "inputSource": {
+ "type": "object"
+ },
+ "intValue": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "lastClearedToken": {
+ "enum": [
+ "NOT_AVAILABLE",
+ "START_OBJECT",
+ "END_OBJECT",
+ "START_ARRAY",
+ "END_ARRAY",
+ "FIELD_NAME",
+ "VALUE_EMBEDDED_OBJECT",
+ "VALUE_STRING",
+ "VALUE_NUMBER_INT",
+ "VALUE_NUMBER_FLOAT",
+ "VALUE_TRUE",
+ "VALUE_FALSE",
+ "VALUE_NULL"
+ ],
+ "type": "string"
+ },
+ "longValue": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numberType": {
+ "enum": [
+ "INT",
+ "LONG",
+ "BIG_INTEGER",
+ "FLOAT",
+ "DOUBLE",
+ "BIG_DECIMAL"
+ ],
+ "type": "string"
+ },
+ "numberValue": {
+ "$ref": "#/definitions/Number"
+ },
+ "objectId": {
+ "type": "object"
+ },
+ "parsingContext": {
+ "$ref": "#/definitions/JsonStreamContext"
+ },
+ "schema": {
+ "$ref": "#/definitions/FormatSchema"
+ },
+ "shortValue": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "text": {
+ "type": "string"
+ },
+ "textCharacters": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "textLength": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "textOffset": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "tokenLocation": {
+ "$ref": "#/definitions/JsonLocation"
+ },
+ "typeId": {
+ "type": "object"
+ },
+ "valueAsBoolean": {
+ "type": "boolean"
+ },
+ "valueAsDouble": {
+ "format": "double",
+ "type": "number"
+ },
+ "valueAsInt": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "valueAsLong": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "valueAsString": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "JsonSerializer": {
+ "properties": {
+ "unwrappingSerializer": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "JsonSerializerObject": {
+ "properties": {
+ "delegatee": {
+ "$ref": "#/definitions/JsonSerializerObject"
+ },
+ "unwrappingSerializer": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "JsonStreamContext": {
+ "properties": {
+ "currentIndex": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "currentName": {
+ "type": "string"
+ },
+ "currentValue": {
+ "type": "object"
+ },
+ "entryCount": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "parent": {
+ "$ref": "#/definitions/JsonStreamContext"
+ },
+ "typeDesc": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "KubernetesContainerFactory": {
+ "properties": {
+ "changeConfigMap": {
+ "type": "string"
+ },
+ "changeConfigMapNamespace": {
+ "type": "string"
+ },
+ "configAdminCLI": {
+ "type": "string"
+ },
+ "cpuOverCommitRatio": {
+ "format": "double",
+ "type": "number"
+ },
+ "customLabels": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "expectedMetricsCollectionInterval": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "extraFunctionDependenciesDir": {
+ "type": "string"
+ },
+ "functionDockerImages": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "functionInstanceClassPath": {
+ "type": "string"
+ },
+ "gracePeriodSeconds": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "grpcPort": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "imagePullPolicy": {
+ "type": "string"
+ },
+ "installUserCodeDependencies": {
+ "type": "boolean"
+ },
+ "jobName": {
+ "type": "string"
+ },
+ "jobNamespace": {
+ "type": "string"
+ },
+ "k8Uri": {
+ "type": "string"
+ },
+ "memoryOverCommitRatio": {
+ "format": "double",
+ "type": "number"
+ },
+ "metricsPort": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "narExtractionDirectory": {
+ "type": "string"
+ },
+ "percentMemoryPadding": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "pulsarAdminUrl": {
+ "type": "string"
+ },
+ "pulsarDockerImageName": {
+ "type": "string"
+ },
+ "pulsarRootDir": {
+ "type": "string"
+ },
+ "pulsarServiceUrl": {
+ "type": "string"
+ },
+ "pythonDependencyRepository": {
+ "type": "string"
+ },
+ "pythonExtraDependencyRepository": {
+ "type": "string"
+ },
+ "submittingInsidePod": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "LedgerDetails": {
+ "properties": {
+ "entries": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "ledgerId": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "size": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "timestamp": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "LedgerInfo": {
+ "properties": {
+ "entries": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "ledgerId": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "metadata": {
+ "type": "string"
+ },
+ "offloaded": {
+ "type": "boolean"
+ },
+ "size": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "underReplicated": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "LinkedNode": {
+ "type": "object"
+ },
+ "LinkedNodeDeserializationProblemHandler": {
+ "type": "object"
+ },
+ "LoadReport": {
+ "properties": {
+ "allocatedBandwidthIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "allocatedBandwidthOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "allocatedCPU": {
+ "format": "double",
+ "type": "number"
+ },
+ "allocatedMemory": {
+ "format": "double",
+ "type": "number"
+ },
+ "allocatedMsgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "allocatedMsgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "bandwidthIn": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "bandwidthOut": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "brokerVersionString": {
+ "type": "string"
+ },
+ "bundleGains": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "bundleLosses": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "bundleStats": {
+ "additionalProperties": {
+ "$ref": "#/definitions/NamespaceBundleStats"
+ },
+ "type": "object"
+ },
+ "cpu": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "directMemory": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "lastUpdate": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "loadReportType": {
+ "type": "string"
+ },
+ "memory": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "name": {
+ "type": "string"
+ },
+ "nonPersistentTopicsEnabled": {
+ "type": "boolean"
+ },
+ "numBundles": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numConsumers": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numProducers": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numTopics": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "overLoaded": {
+ "type": "boolean"
+ },
+ "persistentTopicsEnabled": {
+ "type": "boolean"
+ },
+ "preAllocatedBandwidthIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "preAllocatedBandwidthOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "preAllocatedCPU": {
+ "format": "double",
+ "type": "number"
+ },
+ "preAllocatedMemory": {
+ "format": "double",
+ "type": "number"
+ },
+ "preAllocatedMsgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "preAllocatedMsgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "protocols": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "pulsarServiceUrl": {
+ "type": "string"
+ },
+ "pulsarServiceUrlTls": {
+ "type": "string"
+ },
+ "systemResourceUsage": {
+ "$ref": "#/definitions/SystemResourceUsage"
+ },
+ "timestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "underLoaded": {
+ "type": "boolean"
+ },
+ "webServiceUrl": {
+ "type": "string"
+ },
+ "webServiceUrlTls": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "Locale": {
+ "properties": {
+ "country": {
+ "type": "string"
+ },
+ "displayCountry": {
+ "type": "string"
+ },
+ "displayLanguage": {
+ "type": "string"
+ },
+ "displayName": {
+ "type": "string"
+ },
+ "displayScript": {
+ "type": "string"
+ },
+ "displayVariant": {
+ "type": "string"
+ },
+ "extensionKeys": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "iso3Country": {
+ "type": "string"
+ },
+ "iso3Language": {
+ "type": "string"
+ },
+ "language": {
+ "type": "string"
+ },
+ "script": {
+ "type": "string"
+ },
+ "unicodeLocaleAttributes": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "unicodeLocaleKeys": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "variant": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "LongBuilder": {
+ "type": "object"
+ },
+ "LongRunningProcessStatus": {
+ "properties": {
+ "lastError": {
+ "type": "string"
+ },
+ "status": {
+ "enum": [
+ "NOT_RUN",
+ "RUNNING",
+ "SUCCESS",
+ "ERROR"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "LongSchemaVersion": {
+ "properties": {
+ "version": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "MemoryLimit": {
+ "properties": {
+ "absoluteValue": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "percentOfMaxDirectMemory": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "MessageId": {
+ "type": "object"
+ },
+ "MessageIdImpl": {
+ "properties": {
+ "entryId": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "ledgerId": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "partitionIndex": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "Metrics": {
+ "properties": {
+ "dimensions": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "metrics": {
+ "additionalProperties": {
+ "type": "object"
+ },
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "Module": {
+ "properties": {
+ "annotations": {
+ "items": {
+ "$ref": "#/definitions/Annotation"
+ },
+ "type": "array"
+ },
+ "classLoader": {
+ "$ref": "#/definitions/ClassLoader"
+ },
+ "declaredAnnotations": {
+ "items": {
+ "$ref": "#/definitions/Annotation"
+ },
+ "type": "array"
+ },
+ "descriptor": {
+ "$ref": "#/definitions/ModuleDescriptor"
+ },
+ "layer": {
+ "$ref": "#/definitions/ModuleLayer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "named": {
+ "type": "boolean"
+ },
+ "packages": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ }
+ },
+ "type": "object"
+ },
+ "ModuleDescriptor": {
+ "properties": {
+ "automatic": {
+ "type": "boolean"
+ },
+ "open": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "ModuleLayer": {
+ "type": "object"
+ },
+ "NamespaceBundleStats": {
+ "properties": {
+ "cacheSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "consumerCount": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "producerCount": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "topics": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "NamespaceIsolationData": {
+ "description": "The data of namespace isolation configuration",
+ "properties": {
+ "auto_failover_policy": {
+ "$ref": "#/definitions/AutoFailoverPolicyData",
+ "description": "The data of auto-failover policy configuration",
+ "example": "{ \"policy_type\": \"min_available\" \"parameters\": { \"\": \"\" }}"
+ },
+ "namespaces": {
+ "description": "The list of namespaces to apply this namespace isolation data",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "primary": {
+ "description": "The list of primary brokers for serving the list of namespaces in this isolation policy",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "secondary": {
+ "description": "The list of secondary brokers for serving the list of namespaces in this isolation policy",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "NamespaceOwnershipStatus": {
+ "properties": {
+ "broker_assignment": {
+ "enum": [
+ "primary",
+ "secondary",
+ "shared"
+ ],
+ "type": "string"
+ },
+ "is_active": {
+ "type": "boolean"
+ },
+ "is_controlled": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "NonPersistentPublisherStats": {
+ "properties": {
+ "accessMode": {
+ "enum": [
+ "Shared",
+ "Exclusive",
+ "WaitForExclusive"
+ ],
+ "type": "string"
+ },
+ "address": {
+ "type": "string"
+ },
+ "averageMsgSize": {
+ "format": "double",
+ "type": "number"
+ },
+ "chunkedMessageRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "clientVersion": {
+ "type": "string"
+ },
+ "connectedSince": {
+ "type": "string"
+ },
+ "metadata": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "msgDropRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "producerId": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "producerName": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "NonPersistentReplicatorStats": {
+ "properties": {
+ "connected": {
+ "type": "boolean"
+ },
+ "inboundConnectedSince": {
+ "type": "string"
+ },
+ "inboundConnection": {
+ "type": "string"
+ },
+ "msgDropRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateExpired": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "outboundConnectedSince": {
+ "type": "string"
+ },
+ "outboundConnection": {
+ "type": "string"
+ },
+ "replicationBacklog": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "replicationDelayInSeconds": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "NonPersistentSubscriptionStats": {
+ "properties": {
+ "activeConsumerName": {
+ "type": "string"
+ },
+ "allowOutOfOrderDelivery": {
+ "type": "boolean"
+ },
+ "backlogSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "blockedSubscriptionOnUnackedMsgs": {
+ "type": "boolean"
+ },
+ "bytesOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "chunkedMessageRate": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "consumers": {
+ "items": {
+ "$ref": "#/definitions/ConsumerStats"
+ },
+ "type": "array"
+ },
+ "consumersAfterMarkDeletePosition": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "durable": {
+ "type": "boolean"
+ },
+ "keySharedMode": {
+ "type": "string"
+ },
+ "lastAckedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastConsumedFlowTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastConsumedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastExpireTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastMarkDeleteAdvancedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "messageAckRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgBacklog": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgBacklogNoDelayed": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgDelayed": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgDropRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgRateExpired": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateRedeliver": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "nonContiguousDeletedMessagesRanges": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "nonContiguousDeletedMessagesRangesSerializedSize": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "replicated": {
+ "type": "boolean"
+ },
+ "totalMsgExpired": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "type": {
+ "type": "string"
+ },
+ "unackedMessages": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "NonPersistentTopicStats": {
+ "properties": {
+ "averageMsgSize": {
+ "format": "double",
+ "type": "number"
+ },
+ "backlogSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "bytesInCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "bytesOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "compaction": {
+ "$ref": "#/definitions/CompactionStats"
+ },
+ "deduplicationStatus": {
+ "type": "string"
+ },
+ "msgChunkPublished": {
+ "type": "boolean"
+ },
+ "msgDropRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgInCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "nonContiguousDeletedMessagesRanges": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "nonContiguousDeletedMessagesRangesSerializedSize": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "offloadedStorageSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "publishers": {
+ "items": {
+ "$ref": "#/definitions/NonPersistentPublisherStats"
+ },
+ "type": "array"
+ },
+ "replication": {
+ "additionalProperties": {
+ "$ref": "#/definitions/NonPersistentReplicatorStats"
+ },
+ "type": "object"
+ },
+ "storageSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "subscriptions": {
+ "additionalProperties": {
+ "$ref": "#/definitions/NonPersistentSubscriptionStats"
+ },
+ "type": "object"
+ },
+ "topicEpoch": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "waitingPublishers": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "Number": {
+ "type": "object"
+ },
+ "NumberFormat": {
+ "properties": {
+ "currency": {
+ "$ref": "#/definitions/Currency"
+ },
+ "groupingUsed": {
+ "type": "boolean"
+ },
+ "maximumFractionDigits": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "maximumIntegerDigits": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "minimumFractionDigits": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "minimumIntegerDigits": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "parseIntegerOnly": {
+ "type": "boolean"
+ },
+ "roundingMode": {
+ "enum": [
+ "UP",
+ "DOWN",
+ "CEILING",
+ "FLOOR",
+ "HALF_UP",
+ "HALF_DOWN",
+ "HALF_EVEN",
+ "UNNECESSARY"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ObjectCodec": {
+ "properties": {
+ "factory": {
+ "$ref": "#/definitions/JsonFactory"
+ },
+ "jsonFactory": {
+ "$ref": "#/definitions/JsonFactory"
+ }
+ },
+ "type": "object"
+ },
+ "ObjectMapper": {
+ "properties": {
+ "dateFormat": {
+ "$ref": "#/definitions/DateFormat"
+ },
+ "deserializationConfig": {
+ "$ref": "#/definitions/DeserializationConfig"
+ },
+ "deserializationContext": {
+ "$ref": "#/definitions/DeserializationContext"
+ },
+ "factory": {
+ "$ref": "#/definitions/JsonFactory"
+ },
+ "injectableValues": {
+ "$ref": "#/definitions/InjectableValues"
+ },
+ "jsonFactory": {
+ "$ref": "#/definitions/JsonFactory"
+ },
+ "nodeFactory": {
+ "$ref": "#/definitions/JsonNodeFactory"
+ },
+ "propertyNamingStrategy": {
+ "$ref": "#/definitions/PropertyNamingStrategy"
+ },
+ "serializationConfig": {
+ "$ref": "#/definitions/SerializationConfig"
+ },
+ "serializerFactory": {
+ "$ref": "#/definitions/SerializerFactory"
+ },
+ "serializerProvider": {
+ "$ref": "#/definitions/SerializerProvider"
+ },
+ "serializerProviderInstance": {
+ "$ref": "#/definitions/SerializerProvider"
+ },
+ "subtypeResolver": {
+ "$ref": "#/definitions/SubtypeResolver"
+ },
+ "typeFactory": {
+ "$ref": "#/definitions/TypeFactory"
+ },
+ "visibilityChecker": {
+ "$ref": "#/definitions/VisibilityCheckerObject"
+ }
+ },
+ "type": "object"
+ },
+ "OffloadPolicies": {
+ "properties": {
+ "fileSystemProfilePath": {
+ "type": "string"
+ },
+ "fileSystemURI": {
+ "type": "string"
+ },
+ "gcsManagedLedgerOffloadBucket": {
+ "type": "string"
+ },
+ "gcsManagedLedgerOffloadMaxBlockSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "gcsManagedLedgerOffloadReadBufferSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "gcsManagedLedgerOffloadRegion": {
+ "type": "string"
+ },
+ "gcsManagedLedgerOffloadServiceAccountKeyFile": {
+ "type": "string"
+ },
+ "managedLedgerOffloadBucket": {
+ "type": "string"
+ },
+ "managedLedgerOffloadDeletionLagInMillis": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "managedLedgerOffloadDriver": {
+ "type": "string"
+ },
+ "managedLedgerOffloadMaxBlockSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerOffloadMaxThreads": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerOffloadPrefetchRounds": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerOffloadReadBufferSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerOffloadRegion": {
+ "type": "string"
+ },
+ "managedLedgerOffloadServiceEndpoint": {
+ "type": "string"
+ },
+ "managedLedgerOffloadThresholdInBytes": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "managedLedgerOffloadedReadPriority": {
+ "enum": [
+ "BOOKKEEPER_FIRST",
+ "TIERED_STORAGE_FIRST"
+ ],
+ "type": "string"
+ },
+ "offloadersDirectory": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadBucket": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadCredentialId": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadCredentialSecret": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadMaxBlockSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "s3ManagedLedgerOffloadReadBufferSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "s3ManagedLedgerOffloadRegion": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadRole": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadRoleSessionName": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadServiceEndpoint": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "OffloadPoliciesImpl": {
+ "properties": {
+ "fileSystemDriver": {
+ "type": "boolean"
+ },
+ "fileSystemProfilePath": {
+ "type": "string"
+ },
+ "fileSystemURI": {
+ "type": "string"
+ },
+ "gcsDriver": {
+ "type": "boolean"
+ },
+ "gcsManagedLedgerOffloadBucket": {
+ "type": "string"
+ },
+ "gcsManagedLedgerOffloadMaxBlockSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "gcsManagedLedgerOffloadReadBufferSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "gcsManagedLedgerOffloadRegion": {
+ "type": "string"
+ },
+ "gcsManagedLedgerOffloadServiceAccountKeyFile": {
+ "type": "string"
+ },
+ "managedLedgerOffloadBucket": {
+ "type": "string"
+ },
+ "managedLedgerOffloadDeletionLagInMillis": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "managedLedgerOffloadDriver": {
+ "type": "string"
+ },
+ "managedLedgerOffloadMaxBlockSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerOffloadMaxThreads": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerOffloadPrefetchRounds": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerOffloadReadBufferSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerOffloadRegion": {
+ "type": "string"
+ },
+ "managedLedgerOffloadServiceEndpoint": {
+ "type": "string"
+ },
+ "managedLedgerOffloadThresholdInBytes": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "managedLedgerOffloadedReadPriority": {
+ "enum": [
+ "BOOKKEEPER_FIRST",
+ "TIERED_STORAGE_FIRST"
+ ],
+ "type": "string"
+ },
+ "offloadersDirectory": {
+ "type": "string"
+ },
+ "s3Driver": {
+ "type": "boolean"
+ },
+ "s3ManagedLedgerOffloadBucket": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadCredentialId": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadCredentialSecret": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadMaxBlockSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "s3ManagedLedgerOffloadReadBufferSizeInBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "s3ManagedLedgerOffloadRegion": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadRole": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadRoleSessionName": {
+ "type": "string"
+ },
+ "s3ManagedLedgerOffloadServiceEndpoint": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "OffloadProcessStatus": {
+ "properties": {
+ "firstUnoffloadedMessage": {
+ "$ref": "#/definitions/MessageId"
+ },
+ "lastError": {
+ "type": "string"
+ },
+ "status": {
+ "enum": [
+ "NOT_RUN",
+ "RUNNING",
+ "SUCCESS",
+ "ERROR"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "OutputDecorator": {
+ "type": "object"
+ },
+ "OutputStream": {
+ "type": "object"
+ },
+ "Package": {
+ "properties": {
+ "annotations": {
+ "items": {
+ "$ref": "#/definitions/Annotation"
+ },
+ "type": "array"
+ },
+ "declaredAnnotations": {
+ "items": {
+ "$ref": "#/definitions/Annotation"
+ },
+ "type": "array"
+ },
+ "implementationTitle": {
+ "type": "string"
+ },
+ "implementationVendor": {
+ "type": "string"
+ },
+ "implementationVersion": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "sealed": {
+ "type": "boolean"
+ },
+ "specificationTitle": {
+ "type": "string"
+ },
+ "specificationVendor": {
+ "type": "string"
+ },
+ "specificationVersion": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "PartitionedTopicMetadata": {
+ "properties": {
+ "partitions": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "PendingBookieOpsStats": {
+ "properties": {
+ "cursorLedgerCloseOp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "cursorLedgerCreateOp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "cursorLedgerDeleteOp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "cursorLedgerOpenOp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "dataLedgerCloseOp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "dataLedgerCreateOp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "dataLedgerDeleteOp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "dataLedgerOpenOp": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "PersistencePolicies": {
+ "properties": {
+ "bookkeeperAckQuorum": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "bookkeeperEnsemble": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "bookkeeperWriteQuorum": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "managedLedgerMaxMarkDeleteRate": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "PersistentOfflineTopicStats": {
+ "properties": {
+ "brokerName": {
+ "type": "string"
+ },
+ "cursorDetails": {
+ "additionalProperties": {
+ "$ref": "#/definitions/CursorDetails"
+ },
+ "type": "object"
+ },
+ "dataLedgerDetails": {
+ "items": {
+ "$ref": "#/definitions/LedgerDetails"
+ },
+ "type": "array"
+ },
+ "messageBacklog": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "statGeneratedAt": {
+ "format": "date-time",
+ "type": "string"
+ },
+ "storageSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "topicName": {
+ "type": "string"
+ },
+ "totalMessages": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "PersistentTopicInternalStats": {
+ "properties": {
+ "compactedLedger": {
+ "$ref": "#/definitions/LedgerInfo"
+ },
+ "currentLedgerEntries": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "currentLedgerSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "cursors": {
+ "additionalProperties": {
+ "$ref": "#/definitions/CursorStats"
+ },
+ "type": "object"
+ },
+ "entriesAddedCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastConfirmedEntry": {
+ "type": "string"
+ },
+ "lastLedgerCreatedTimestamp": {
+ "type": "string"
+ },
+ "lastLedgerCreationFailureTimestamp": {
+ "type": "string"
+ },
+ "ledgers": {
+ "items": {
+ "$ref": "#/definitions/LedgerInfo"
+ },
+ "type": "array"
+ },
+ "numberOfEntries": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "pendingAddEntriesCount": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "schemaLedgers": {
+ "items": {
+ "$ref": "#/definitions/LedgerInfo"
+ },
+ "type": "array"
+ },
+ "state": {
+ "type": "string"
+ },
+ "totalSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "waitingCursorsCount": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "Policies": {
+ "properties": {
+ "auth_policies": {
+ "$ref": "#/definitions/AuthPolicies"
+ },
+ "autoSubscriptionCreationOverride": {
+ "$ref": "#/definitions/AutoSubscriptionCreationOverride"
+ },
+ "autoTopicCreationOverride": {
+ "$ref": "#/definitions/AutoTopicCreationOverride"
+ },
+ "backlog_quota_map": {
+ "additionalProperties": {
+ "$ref": "#/definitions/BacklogQuota"
+ },
+ "type": "object"
+ },
+ "bundles": {
+ "$ref": "#/definitions/BundlesData"
+ },
+ "clusterDispatchRate": {
+ "additionalProperties": {
+ "$ref": "#/definitions/DispatchRateImpl"
+ },
+ "type": "object"
+ },
+ "clusterSubscribeRate": {
+ "additionalProperties": {
+ "$ref": "#/definitions/SubscribeRate"
+ },
+ "type": "object"
+ },
+ "compaction_threshold": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "deduplicationEnabled": {
+ "type": "boolean"
+ },
+ "deduplicationSnapshotIntervalSeconds": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "delayed_delivery_policies": {
+ "$ref": "#/definitions/DelayedDeliveryPolicies"
+ },
+ "deleted": {
+ "type": "boolean"
+ },
+ "encryption_required": {
+ "type": "boolean"
+ },
+ "inactive_topic_policies": {
+ "$ref": "#/definitions/InactiveTopicPolicies"
+ },
+ "is_allow_auto_update_schema": {
+ "type": "boolean"
+ },
+ "latency_stats_sample_rate": {
+ "additionalProperties": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "type": "object"
+ },
+ "max_consumers_per_subscription": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "max_consumers_per_topic": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "max_producers_per_topic": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "max_subscriptions_per_topic": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "max_topics_per_namespace": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "max_unacked_messages_per_consumer": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "max_unacked_messages_per_subscription": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "message_ttl_in_seconds": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "offload_deletion_lag_ms": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "offload_policies": {
+ "$ref": "#/definitions/OffloadPolicies"
+ },
+ "offload_threshold": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "persistence": {
+ "$ref": "#/definitions/PersistencePolicies"
+ },
+ "properties": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "publishMaxMessageRate": {
+ "additionalProperties": {
+ "$ref": "#/definitions/PublishRate"
+ },
+ "type": "object"
+ },
+ "replication_clusters": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "replicatorDispatchRate": {
+ "additionalProperties": {
+ "$ref": "#/definitions/DispatchRateImpl"
+ },
+ "type": "object"
+ },
+ "resource_group_name": {
+ "type": "string"
+ },
+ "retention_policies": {
+ "$ref": "#/definitions/RetentionPolicies"
+ },
+ "schema_auto_update_compatibility_strategy": {
+ "enum": [
+ "AutoUpdateDisabled",
+ "Backward",
+ "Forward",
+ "Full",
+ "AlwaysCompatible",
+ "BackwardTransitive",
+ "ForwardTransitive",
+ "FullTransitive"
+ ],
+ "type": "string"
+ },
+ "schema_compatibility_strategy": {
+ "enum": [
+ "UNDEFINED",
+ "ALWAYS_INCOMPATIBLE",
+ "ALWAYS_COMPATIBLE",
+ "BACKWARD",
+ "FORWARD",
+ "FULL",
+ "BACKWARD_TRANSITIVE",
+ "FORWARD_TRANSITIVE",
+ "FULL_TRANSITIVE"
+ ],
+ "type": "string"
+ },
+ "schema_validation_enforced": {
+ "type": "boolean"
+ },
+ "subscriptionDispatchRate": {
+ "additionalProperties": {
+ "$ref": "#/definitions/DispatchRateImpl"
+ },
+ "type": "object"
+ },
+ "subscription_auth_mode": {
+ "enum": [
+ "None",
+ "Prefix"
+ ],
+ "type": "string"
+ },
+ "subscription_expiration_time_minutes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "subscription_types_enabled": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "topicDispatchRate": {
+ "additionalProperties": {
+ "$ref": "#/definitions/DispatchRateImpl"
+ },
+ "type": "object"
+ }
+ },
+ "type": "object"
+ },
+ "PoolArenaStats": {
+ "properties": {
+ "chunkLists": {
+ "items": {
+ "$ref": "#/definitions/PoolChunkListStats"
+ },
+ "type": "array"
+ },
+ "numActiveAllocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numActiveHugeAllocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numActiveNormalAllocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numActiveSmallAllocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numAllocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numChunkLists": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numDeallocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numHugeAllocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numHugeDeallocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numNormalAllocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numNormalDeallocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numSmallAllocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numSmallDeallocations": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "numSmallSubpages": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "smallSubpages": {
+ "items": {
+ "$ref": "#/definitions/PoolSubpageStats"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "PoolChunkListStats": {
+ "properties": {
+ "chunks": {
+ "items": {
+ "$ref": "#/definitions/PoolChunkStats"
+ },
+ "type": "array"
+ },
+ "maxUsage": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "minUsage": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "PoolChunkStats": {
+ "properties": {
+ "chunkSize": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "freeBytes": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "usage": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "PoolSubpageStats": {
+ "properties": {
+ "elementSize": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "maxNumElements": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numAvailable": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "pageSize": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "PostSchemaPayload": {
+ "properties": {
+ "properties": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "schema": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "PostSchemaResponse": {
+ "properties": {
+ "version": {
+ "$ref": "#/definitions/SchemaVersion"
+ }
+ },
+ "type": "object"
+ },
+ "PrettyPrinter": {
+ "type": "object"
+ },
+ "Principal": {
+ "properties": {
+ "name": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ProcessContainerFactory": {
+ "properties": {
+ "extraFunctionDependenciesDir": {
+ "type": "string"
+ },
+ "javaInstanceJarLocation": {
+ "type": "string"
+ },
+ "logDirectory": {
+ "type": "string"
+ },
+ "pythonInstanceLocation": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "PropertyName": {
+ "properties": {
+ "empty": {
+ "type": "boolean"
+ },
+ "namespace": {
+ "type": "string"
+ },
+ "simpleName": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "PropertyNamingStrategy": {
+ "type": "object"
+ },
+ "PublicKey": {
+ "properties": {
+ "algorithm": {
+ "type": "string"
+ },
+ "encoded": {
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "format": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "PublishRate": {
+ "properties": {
+ "publishThrottlingRateInByte": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "publishThrottlingRateInMsg": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "PublisherStats": {
+ "properties": {
+ "accessMode": {
+ "enum": [
+ "Shared",
+ "Exclusive",
+ "WaitForExclusive"
+ ],
+ "type": "string"
+ },
+ "address": {
+ "type": "string"
+ },
+ "averageMsgSize": {
+ "format": "double",
+ "type": "number"
+ },
+ "chunkedMessageRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "clientVersion": {
+ "type": "string"
+ },
+ "connectedSince": {
+ "type": "string"
+ },
+ "metadata": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "producerId": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "producerName": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "RawBookieInfo": {
+ "properties": {
+ "bookieId": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ReplicatorStats": {
+ "properties": {
+ "connected": {
+ "type": "boolean"
+ },
+ "inboundConnectedSince": {
+ "type": "string"
+ },
+ "inboundConnection": {
+ "type": "string"
+ },
+ "msgRateExpired": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "outboundConnectedSince": {
+ "type": "string"
+ },
+ "outboundConnection": {
+ "type": "string"
+ },
+ "replicationBacklog": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "replicationDelayInSeconds": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "ResetCursorData": {
+ "properties": {
+ "batchIndex": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "entryId": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "excluded": {
+ "type": "boolean"
+ },
+ "ledgerId": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "partitionIndex": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "ResourceDescription": {
+ "properties": {
+ "resourceUsage": {
+ "additionalProperties": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "type": "object"
+ },
+ "usagePct": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "ResourceGroup": {
+ "properties": {
+ "dispatchRateInBytes": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "dispatchRateInMsgs": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "publishRateInBytes": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "publishRateInMsgs": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "ResourceQuota": {
+ "properties": {
+ "bandwidthIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "bandwidthOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "dynamic": {
+ "type": "boolean"
+ },
+ "memory": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "ResourceUnit": {
+ "properties": {
+ "availableResource": {
+ "$ref": "#/definitions/ResourceDescription"
+ },
+ "resourceId": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ResourceUsage": {
+ "properties": {
+ "limit": {
+ "format": "double",
+ "type": "number"
+ },
+ "usage": {
+ "format": "double",
+ "type": "number"
+ }
+ },
+ "type": "object"
+ },
+ "Resources": {
+ "properties": {
+ "cpu": {
+ "format": "double",
+ "type": "number"
+ },
+ "disk": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "ram": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "RetentionPolicies": {
+ "properties": {
+ "retentionSizeInMB": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "retentionTimeInMinutes": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "SchemaVersion": {
+ "type": "object"
+ },
+ "SerializationConfig": {
+ "properties": {
+ "annotationIntrospector": {
+ "$ref": "#/definitions/AnnotationIntrospector"
+ },
+ "annotationProcessingEnabled": {
+ "type": "boolean"
+ },
+ "attributes": {
+ "$ref": "#/definitions/ContextAttributes"
+ },
+ "base64Variant": {
+ "$ref": "#/definitions/Base64Variant"
+ },
+ "classIntrospector": {
+ "$ref": "#/definitions/ClassIntrospector"
+ },
+ "dateFormat": {
+ "$ref": "#/definitions/DateFormat"
+ },
+ "defaultPrettyPrinter": {
+ "$ref": "#/definitions/PrettyPrinter"
+ },
+ "defaultPropertyInclusion": {
+ "$ref": "#/definitions/Value"
+ },
+ "defaultVisibilityChecker": {
+ "$ref": "#/definitions/VisibilityCheckerObject"
+ },
+ "filterProvider": {
+ "$ref": "#/definitions/FilterProvider"
+ },
+ "fullRootName": {
+ "$ref": "#/definitions/PropertyName"
+ },
+ "handlerInstantiator": {
+ "$ref": "#/definitions/HandlerInstantiator"
+ },
+ "locale": {
+ "$ref": "#/definitions/Locale"
+ },
+ "propertyNamingStrategy": {
+ "$ref": "#/definitions/PropertyNamingStrategy"
+ },
+ "rootName": {
+ "type": "string"
+ },
+ "serializationFeatures": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "serializationInclusion": {
+ "enum": [
+ "ALWAYS",
+ "NON_NULL",
+ "NON_ABSENT",
+ "NON_EMPTY",
+ "NON_DEFAULT",
+ "USE_DEFAULTS"
+ ],
+ "type": "string"
+ },
+ "subtypeResolver": {
+ "$ref": "#/definitions/SubtypeResolver"
+ },
+ "timeZone": {
+ "$ref": "#/definitions/TimeZone"
+ },
+ "typeFactory": {
+ "$ref": "#/definitions/TypeFactory"
+ }
+ },
+ "type": "object"
+ },
+ "SerializerFactory": {
+ "type": "object"
+ },
+ "SerializerProvider": {
+ "properties": {
+ "annotationIntrospector": {
+ "$ref": "#/definitions/AnnotationIntrospector"
+ },
+ "config": {
+ "$ref": "#/definitions/SerializationConfig"
+ },
+ "defaultNullKeySerializer": {
+ "$ref": "#/definitions/JsonSerializerObject"
+ },
+ "defaultNullValueSerializer": {
+ "$ref": "#/definitions/JsonSerializerObject"
+ },
+ "filterProvider": {
+ "$ref": "#/definitions/FilterProvider"
+ },
+ "generator": {
+ "$ref": "#/definitions/JsonGenerator"
+ },
+ "locale": {
+ "$ref": "#/definitions/Locale"
+ },
+ "timeZone": {
+ "$ref": "#/definitions/TimeZone"
+ },
+ "typeFactory": {
+ "$ref": "#/definitions/TypeFactory"
+ }
+ },
+ "type": "object"
+ },
+ "ShortBuilder": {
+ "type": "object"
+ },
+ "Sinks": {
+ "properties": {
+ "listOfConnectors": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ },
+ "sinkList": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "SinksWorkerService": {
+ "properties": {
+ "listOfConnectors": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ },
+ "sinkList": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "SocketAddress": {
+ "type": "object"
+ },
+ "Sources": {
+ "properties": {
+ "listOfConnectors": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ },
+ "sourceList": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "SourcesWorkerService": {
+ "properties": {
+ "listOfConnectors": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ },
+ "sourceList": {
+ "items": {
+ "$ref": "#/definitions/ConnectorDefinition"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "SubscribeRate": {
+ "properties": {
+ "ratePeriodInSecond": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "subscribeThrottlingRatePerConsumer": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "SubscriptionStats": {
+ "properties": {
+ "activeConsumerName": {
+ "type": "string"
+ },
+ "allowOutOfOrderDelivery": {
+ "type": "boolean"
+ },
+ "backlogSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "blockedSubscriptionOnUnackedMsgs": {
+ "type": "boolean"
+ },
+ "bytesOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "chunkedMessageRate": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "consumers": {
+ "items": {
+ "$ref": "#/definitions/ConsumerStats"
+ },
+ "type": "array"
+ },
+ "consumersAfterMarkDeletePosition": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "durable": {
+ "type": "boolean"
+ },
+ "keySharedMode": {
+ "type": "string"
+ },
+ "lastAckedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastConsumedFlowTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastConsumedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastExpireTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "lastMarkDeleteAdvancedTimestamp": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "messageAckRate": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgBacklog": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgBacklogNoDelayed": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgDelayed": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgRateExpired": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateRedeliver": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "nonContiguousDeletedMessagesRanges": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "nonContiguousDeletedMessagesRangesSerializedSize": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "replicated": {
+ "type": "boolean"
+ },
+ "totalMsgExpired": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "type": {
+ "type": "string"
+ },
+ "unackedMessages": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "SubtypeResolver": {
+ "type": "object"
+ },
+ "SystemResourceUsage": {
+ "properties": {
+ "bandwidthIn": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "bandwidthOut": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "cpu": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "directMemory": {
+ "$ref": "#/definitions/ResourceUsage"
+ },
+ "memory": {
+ "$ref": "#/definitions/ResourceUsage"
+ }
+ },
+ "type": "object"
+ },
+ "TenantInfo": {
+ "description": "Information of adminRoles and allowedClusters for tenant",
+ "properties": {
+ "adminRoles": {
+ "description": "Comma separated list of auth principal allowed to administrate the tenant.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "allowedClusters": {
+ "description": "Comma separated allowed clusters.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ }
+ },
+ "type": "object"
+ },
+ "ThreadContainerFactory": {
+ "properties": {
+ "pulsarClientMemoryLimit": {
+ "$ref": "#/definitions/MemoryLimit"
+ },
+ "threadGroupName": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "TimeZone": {
+ "properties": {
+ "displayName": {
+ "type": "string"
+ },
+ "dstsavings": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "id": {
+ "type": "string"
+ },
+ "rawOffset": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "TopicStats": {
+ "properties": {
+ "averageMsgSize": {
+ "format": "double",
+ "type": "number"
+ },
+ "backlogSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "bytesInCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "bytesOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "compaction": {
+ "$ref": "#/definitions/CompactionStats"
+ },
+ "deduplicationStatus": {
+ "type": "string"
+ },
+ "msgChunkPublished": {
+ "type": "boolean"
+ },
+ "msgInCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgOutCounter": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "msgRateIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgRateOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputIn": {
+ "format": "double",
+ "type": "number"
+ },
+ "msgThroughputOut": {
+ "format": "double",
+ "type": "number"
+ },
+ "nonContiguousDeletedMessagesRanges": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "nonContiguousDeletedMessagesRangesSerializedSize": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "offloadedStorageSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "publishers": {
+ "items": {
+ "$ref": "#/definitions/PublisherStats"
+ },
+ "type": "array"
+ },
+ "replication": {
+ "additionalProperties": {
+ "$ref": "#/definitions/ReplicatorStats"
+ },
+ "type": "object"
+ },
+ "storageSize": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "subscriptions": {
+ "additionalProperties": {
+ "$ref": "#/definitions/SubscriptionStats"
+ },
+ "type": "object"
+ },
+ "topicEpoch": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "waitingPublishers": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "TypeBindings": {
+ "properties": {
+ "empty": {
+ "type": "boolean"
+ },
+ "typeParameters": {
+ "items": {
+ "$ref": "#/definitions/JavaType"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "TypeFactory": {
+ "properties": {
+ "classLoader": {
+ "$ref": "#/definitions/ClassLoader"
+ }
+ },
+ "type": "object"
+ },
+ "Value": {
+ "properties": {
+ "contentInclusion": {
+ "enum": [
+ "ALWAYS",
+ "NON_NULL",
+ "NON_ABSENT",
+ "NON_EMPTY",
+ "NON_DEFAULT",
+ "USE_DEFAULTS"
+ ],
+ "type": "string"
+ },
+ "valueInclusion": {
+ "enum": [
+ "ALWAYS",
+ "NON_NULL",
+ "NON_ABSENT",
+ "NON_EMPTY",
+ "NON_DEFAULT",
+ "USE_DEFAULTS"
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "VisibilityChecker": {
+ "type": "object"
+ },
+ "VisibilityCheckerObject": {
+ "type": "object"
+ },
+ "WorkerConfig": {
+ "properties": {
+ "assignmentWriteMaxRetries": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "authenticateMetricsEndpoint": {
+ "type": "boolean"
+ },
+ "authenticationEnabled": {
+ "type": "boolean"
+ },
+ "authenticationProviders": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "authorizationEnabled": {
+ "type": "boolean"
+ },
+ "authorizationProvider": {
+ "type": "string"
+ },
+ "bookkeeperClientAuthenticationParameters": {
+ "type": "string"
+ },
+ "bookkeeperClientAuthenticationParametersName": {
+ "type": "string"
+ },
+ "bookkeeperClientAuthenticationPlugin": {
+ "type": "string"
+ },
+ "brokerClientAuthenticationEnabled": {
+ "type": "boolean"
+ },
+ "brokerClientAuthenticationParameters": {
+ "type": "string"
+ },
+ "brokerClientAuthenticationPlugin": {
+ "type": "string"
+ },
+ "brokerClientTrustCertsFilePath": {
+ "type": "string"
+ },
+ "clientAuthenticationParameters": {
+ "type": "string"
+ },
+ "clientAuthenticationPlugin": {
+ "type": "string"
+ },
+ "clusterCoordinationTopic": {
+ "type": "string"
+ },
+ "clusterCoordinationTopicName": {
+ "type": "string"
+ },
+ "configurationStoreServers": {
+ "type": "string"
+ },
+ "connectorsDirectory": {
+ "type": "string"
+ },
+ "downloadDirectory": {
+ "type": "string"
+ },
+ "exposeAdminClientEnabled": {
+ "type": "boolean"
+ },
+ "failureCheckFreqMs": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "forwardSourceMessageProperty": {
+ "type": "boolean"
+ },
+ "functionAssignmentTopic": {
+ "type": "string"
+ },
+ "functionAssignmentTopicName": {
+ "type": "string"
+ },
+ "functionAuthProviderClassName": {
+ "type": "string"
+ },
+ "functionInstanceMaxResources": {
+ "$ref": "#/definitions/Resources"
+ },
+ "functionInstanceMinResources": {
+ "$ref": "#/definitions/Resources"
+ },
+ "functionInstanceResourceChangeInLockStep": {
+ "type": "boolean"
+ },
+ "functionInstanceResourceGranularities": {
+ "$ref": "#/definitions/Resources"
+ },
+ "functionMetadataTopic": {
+ "type": "string"
+ },
+ "functionMetadataTopicName": {
+ "type": "string"
+ },
+ "functionRuntimeFactoryClassName": {
+ "type": "string"
+ },
+ "functionRuntimeFactoryConfigs": {
+ "additionalProperties": {
+ "type": "object"
+ },
+ "type": "object"
+ },
+ "functionWebServiceUrl": {
+ "type": "string"
+ },
+ "functionsDirectory": {
+ "type": "string"
+ },
+ "functionsWorkerServiceCustomConfigs": {
+ "additionalProperties": {
+ "type": "object"
+ },
+ "type": "object"
+ },
+ "functionsWorkerServiceNarPackage": {
+ "type": "string"
+ },
+ "httpRequestsLimitEnabled": {
+ "type": "boolean"
+ },
+ "httpRequestsMaxPerSecond": {
+ "format": "double",
+ "type": "number"
+ },
+ "includeStandardPrometheusMetrics": {
+ "type": "boolean"
+ },
+ "initialBrokerReconnectMaxRetries": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "initializedDlogMetadata": {
+ "type": "boolean"
+ },
+ "instanceLivenessCheckFreqMs": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "jvmGCMetricsLoggerClassName": {
+ "type": "string"
+ },
+ "kubernetesContainerFactory": {
+ "$ref": "#/definitions/KubernetesContainerFactory"
+ },
+ "maxPendingAsyncRequests": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "narExtractionDirectory": {
+ "type": "string"
+ },
+ "numFunctionPackageReplicas": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "numHttpServerThreads": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "processContainerFactory": {
+ "$ref": "#/definitions/ProcessContainerFactory"
+ },
+ "properties": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "pulsarFunctionsCluster": {
+ "type": "string"
+ },
+ "pulsarFunctionsNamespace": {
+ "type": "string"
+ },
+ "pulsarServiceUrl": {
+ "type": "string"
+ },
+ "pulsarWebServiceUrl": {
+ "type": "string"
+ },
+ "rebalanceCheckFreqSec": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "rescheduleTimeoutMs": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "runtimeCustomizerClassName": {
+ "type": "string"
+ },
+ "runtimeCustomizerConfig": {
+ "additionalProperties": {
+ "type": "object"
+ },
+ "type": "object"
+ },
+ "schedulerClassName": {
+ "type": "string"
+ },
+ "secretsProviderConfiguratorClassName": {
+ "type": "string"
+ },
+ "secretsProviderConfiguratorConfig": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "stateStorageProviderImplementation": {
+ "type": "string"
+ },
+ "stateStorageServiceUrl": {
+ "type": "string"
+ },
+ "superUserRoles": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "threadContainerFactory": {
+ "$ref": "#/definitions/ThreadContainerFactory"
+ },
+ "tlsAllowInsecureConnection": {
+ "type": "boolean"
+ },
+ "tlsCertRefreshCheckDurationSec": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "tlsCertificateFilePath": {
+ "type": "string"
+ },
+ "tlsEnableHostnameVerification": {
+ "type": "boolean"
+ },
+ "tlsEnabled": {
+ "type": "boolean"
+ },
+ "tlsEnabledWithKeyStore": {
+ "type": "boolean"
+ },
+ "tlsKeyFilePath": {
+ "type": "string"
+ },
+ "tlsKeyStore": {
+ "type": "string"
+ },
+ "tlsKeyStorePassword": {
+ "type": "string"
+ },
+ "tlsKeyStoreType": {
+ "type": "string"
+ },
+ "tlsProvider": {
+ "type": "string"
+ },
+ "tlsRequireTrustedClientCertOnConnect": {
+ "type": "boolean"
+ },
+ "tlsTrustCertsFilePath": {
+ "type": "string"
+ },
+ "tlsTrustChainBytes": {
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "tlsTrustStore": {
+ "type": "string"
+ },
+ "tlsTrustStorePassword": {
+ "type": "string"
+ },
+ "tlsTrustStoreType": {
+ "type": "string"
+ },
+ "topicCompactionFrequencySec": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "useCompactedMetadataTopic": {
+ "type": "boolean"
+ },
+ "useTls": {
+ "type": "boolean"
+ },
+ "validateConnectorConfig": {
+ "type": "boolean"
+ },
+ "webServiceTlsCiphers": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "webServiceTlsProtocols": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "workerHostname": {
+ "type": "string"
+ },
+ "workerId": {
+ "type": "string"
+ },
+ "workerListProbeIntervalSec": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "workerPort": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "workerPortTls": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "workerWebAddress": {
+ "type": "string"
+ },
+ "workerWebAddressTls": {
+ "type": "string"
+ },
+ "zooKeeperCacheExpirySeconds": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "zooKeeperOperationTimeoutSeconds": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "zooKeeperSessionTimeoutMillis": {
+ "format": "int64",
+ "type": "integer"
+ },
+ "zookeeperAllowReadOnlyOperations": {
+ "type": "boolean"
+ }
+ },
+ "type": "object"
+ },
+ "WorkerFunctionInstanceStats": {
+ "properties": {
+ "metrics": {
+ "$ref": "#/definitions/FunctionInstanceStatsData"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WorkerInfo": {
+ "properties": {
+ "port": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "workerHostname": {
+ "type": "string"
+ },
+ "workerId": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "WorkerService": {
+ "properties": {
+ "functions": {
+ "$ref": "#/definitions/FunctionsWorkerService"
+ },
+ "functionsV2": {
+ "$ref": "#/definitions/FunctionsV2WorkerService"
+ },
+ "initialized": {
+ "type": "boolean"
+ },
+ "sinks": {
+ "$ref": "#/definitions/SinksWorkerService"
+ },
+ "sources": {
+ "$ref": "#/definitions/SourcesWorkerService"
+ },
+ "workerConfig": {
+ "$ref": "#/definitions/WorkerConfig"
+ },
+ "workers": {
+ "$ref": "#/definitions/WorkersWorkerService"
+ }
+ },
+ "type": "object"
+ },
+ "Workers": {
+ "type": "object"
+ },
+ "WorkersWorkerService": {
+ "type": "object"
+ },
+ "X500Principal": {
+ "properties": {
+ "encoded": {
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "X509Certificate": {
+ "properties": {
+ "basicConstraints": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "criticalExtensionOIDs": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "encoded": {
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "extendedKeyUsage": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "issuerAlternativeNames": {
+ "items": {
+ "items": {
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "type": "array"
+ },
+ "issuerDN": {
+ "$ref": "#/definitions/Principal"
+ },
+ "issuerUniqueID": {
+ "items": {
+ "type": "boolean"
+ },
+ "type": "array"
+ },
+ "issuerX500Principal": {
+ "$ref": "#/definitions/X500Principal"
+ },
+ "keyUsage": {
+ "items": {
+ "type": "boolean"
+ },
+ "type": "array"
+ },
+ "nonCriticalExtensionOIDs": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ },
+ "notAfter": {
+ "format": "date-time",
+ "type": "string"
+ },
+ "notBefore": {
+ "format": "date-time",
+ "type": "string"
+ },
+ "publicKey": {
+ "$ref": "#/definitions/PublicKey"
+ },
+ "serialNumber": {
+ "type": "integer"
+ },
+ "sigAlgName": {
+ "type": "string"
+ },
+ "sigAlgOID": {
+ "type": "string"
+ },
+ "sigAlgParams": {
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "signature": {
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "subjectAlternativeNames": {
+ "items": {
+ "items": {
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "type": "array"
+ },
+ "subjectDN": {
+ "$ref": "#/definitions/Principal"
+ },
+ "subjectUniqueID": {
+ "items": {
+ "type": "boolean"
+ },
+ "type": "array"
+ },
+ "subjectX500Principal": {
+ "$ref": "#/definitions/X500Principal"
+ },
+ "tbscertificate": {
+ "items": {
+ "format": "byte",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "type": {
+ "type": "string"
+ },
+ "version": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "info": {
+ "description": "This provides the REST API for admin operations",
+ "license": {
+ "name": "Apache 2.0",
+ "url": "http://www.apache.org/licenses/LICENSE-2.0.html"
+ },
+ "title": "Pulsar Admin REST API",
+ "version": "v2"
+ },
+ "paths": {
+ "/bookies/all": {
+ "get": {
+ "description": "",
+ "operationId": "getAllBookies",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/BookiesClusterInfo"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Gets raw information for all the bookies in the cluster",
+ "tags": [
+ "bookies"
+ ]
+ }
+ },
+ "/bookies/racks-info": {
+ "get": {
+ "description": "",
+ "operationId": "getBookiesRackInfo",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "additionalProperties": {
+ "$ref": "#/definitions/BookieInfo"
+ },
+ "type": "object"
+ },
+ "type": "object"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Gets the rack placement information for all the bookies in the cluster",
+ "tags": [
+ "bookies"
+ ]
+ }
+ },
+ "/bookies/racks-info/{bookie}": {
+ "delete": {
+ "description": "",
+ "operationId": "deleteBookieRackInfo",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "bookie",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Removed the rack placement information for a specific bookie in the cluster",
+ "tags": [
+ "bookies"
+ ]
+ },
+ "get": {
+ "description": "",
+ "operationId": "getBookieRackInfo",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "bookie",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/BookieInfo"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Gets the rack placement information for a specific bookie in the cluster",
+ "tags": [
+ "bookies"
+ ]
+ },
+ "post": {
+ "description": "",
+ "operationId": "updateBookieRackInfo",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "bookie",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "group",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Updates the rack placement information for a specific bookie in the cluster (note. bookie address format:`address:port`)",
+ "tags": [
+ "bookies"
+ ]
+ }
+ },
+ "/broker-stats/allocator-stats/{allocator}": {
+ "get": {
+ "description": "",
+ "operationId": "getAllocatorStats",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "allocator",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/AllocatorStats"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Get the stats for the Netty allocator. Available allocators are 'default' and 'ml-cache'",
+ "tags": [
+ "broker-stats"
+ ]
+ }
+ },
+ "/broker-stats/bookieops": {
+ "get": {
+ "description": "",
+ "operationId": "getPendingBookieOpsStats",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "$ref": "#/definitions/PendingBookieOpsStats"
+ },
+ "type": "object"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Get pending bookie client op stats by namesapce",
+ "tags": [
+ "broker-stats"
+ ]
+ }
+ },
+ "/broker-stats/broker-resource-availability/{tenant}/{namespace}": {
+ "get": {
+ "description": "This API gives the current broker availability in percent, each resource percentage usage is calculated and thensum of all of the resource usage percent is called broker-resource-availability<br/><br/>THIS API IS ONLY FOR USE BY TESTING FOR CONFIRMING NAMESPACE ALLOCATION ALGORITHM",
+ "operationId": "getBrokerResourceAvailability",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "$ref": "#/definitions/ResourceUnit"
+ },
+ "type": "object"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "409": {
+ "description": "Load-manager doesn't support operation"
+ }
+ },
+ "summary": "Broker availability report",
+ "tags": [
+ "broker-stats"
+ ]
+ }
+ },
+ "/broker-stats/load-report": {
+ "get": {
+ "description": "consists of topics stats & systemResourceUsage",
+ "operationId": "getLoadReport",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/LoadReport"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Get Load for this broker",
+ "tags": [
+ "broker-stats"
+ ]
+ }
+ },
+ "/broker-stats/mbeans": {
+ "get": {
+ "description": "",
+ "operationId": "getMBeans",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "items": {
+ "$ref": "#/definitions/Metrics"
+ },
+ "type": "array"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Get all the mbean details of this broker JVM",
+ "tags": [
+ "broker-stats"
+ ]
+ }
+ },
+ "/broker-stats/metrics": {
+ "get": {
+ "description": "Requested should be executed by Monitoring agent on each broker to fetch the metrics",
+ "operationId": "getMetrics",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "items": {
+ "$ref": "#/definitions/Metrics"
+ },
+ "type": "array"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Gets the metrics for Monitoring",
+ "tags": [
+ "broker-stats"
+ ]
+ }
+ },
+ "/broker-stats/topics": {
+ "get": {
+ "description": "",
+ "operationId": "getTopics2",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/OutputStream"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Get all the topic stats by namespace",
+ "tags": [
+ "broker-stats"
+ ]
+ }
+ },
+ "/brokers/backlog-quota-check": {
+ "get": {
+ "description": "",
+ "operationId": "backlogQuotaCheck",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Everything is OK"
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "An REST endpoint to trigger backlogQuotaCheck",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/configuration": {
+ "get": {
+ "description": "",
+ "operationId": "getDynamicConfigurationName",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "403": {
+ "description": "You don't have admin permission to get configuration"
+ }
+ },
+ "summary": "Get all updatable dynamic configurations's name",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/configuration/runtime": {
+ "get": {
+ "description": "",
+ "operationId": "getRuntimeConfiguration",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Get all runtime configurations. This operation requires Pulsar super-user privileges.",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/configuration/values": {
+ "get": {
+ "description": "",
+ "operationId": "getAllDynamicConfigurations",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ }
+ },
+ "403": {
+ "description": "You don't have admin permission to view configuration"
+ },
+ "404": {
+ "description": "Configuration not found"
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "Get value of all dynamic configurations' value overridden on local config",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/configuration/{configName}": {
+ "delete": {
+ "description": "",
+ "operationId": "deleteDynamicConfiguration",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "configName",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "204": {
+ "description": "Service configuration updated successfully"
+ },
+ "403": {
+ "description": "You don't have admin permission to update service-configuration"
+ },
+ "412": {
+ "description": "Invalid dynamic-config value"
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "Delete dynamic serviceconfiguration into zk only. This operation requires Pulsar super-user privileges.",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/configuration/{configName}/{configValue}": {
+ "post": {
+ "description": "",
+ "operationId": "updateDynamicConfiguration",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "configName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "configValue",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "204": {
+ "description": "Service configuration updated successfully"
+ },
+ "403": {
+ "description": "You don't have admin permission to update service-configuration"
+ },
+ "404": {
+ "description": "Configuration not found"
+ },
+ "412": {
+ "description": "Invalid dynamic-config value"
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "Update dynamic serviceconfiguration into zk only. This operation requires Pulsar super-user privileges.",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/health": {
+ "get": {
+ "description": "",
+ "operationId": "healthCheck",
+ "parameters": [
+ {
+ "enum": [
+ "V1",
+ "V2"
+ ],
+ "in": "query",
+ "name": "topicVersion",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Everything is OK"
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Cluster doesn't exist"
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "Run a healthCheck against the broker",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/internal-configuration": {
+ "get": {
+ "description": "",
+ "operationId": "getInternalConfigurationData",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/InternalConfigurationData"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Get the internal configuration data",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/leaderBroker": {
+ "get": {
+ "description": "",
+ "operationId": "getLeaderBroker",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/BrokerInfo"
+ }
+ },
+ "401": {
+ "description": "Authentication required"
+ },
+ "403": {
+ "description": "This operation requires super-user access"
+ },
+ "404": {
+ "description": "Leader broker not found"
+ }
+ },
+ "summary": "Get the information of the leader broker.",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/ready": {
+ "get": {
+ "description": "",
+ "operationId": "isReady",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Broker is ready"
+ },
+ "500": {
+ "description": "Broker is not ready"
+ }
+ },
+ "summary": "Check if the broker is fully initialized",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/version": {
+ "get": {
+ "description": "",
+ "operationId": "version",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Everything is OK",
+ "schema": {
+ "type": "string"
+ }
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "Get version of current broker",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/{clusterName}/{broker-webserviceurl}/ownedNamespaces": {
+ "get": {
+ "description": "",
+ "operationId": "getOwnedNamespaces",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "clusterName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "broker-webserviceurl",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "$ref": "#/definitions/NamespaceOwnershipStatus"
+ },
+ "type": "object"
+ }
+ },
+ "307": {
+ "description": "Current broker doesn't serve the cluster"
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Cluster doesn't exist"
+ }
+ },
+ "summary": "Get the list of namespaces served by the specific broker",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/brokers/{cluster}": {
+ "get": {
+ "description": "",
+ "operationId": "getActiveBrokers",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ }
+ },
+ "307": {
+ "description": "Current broker doesn't serve this cluster"
+ },
+ "401": {
+ "description": "Authentication required"
+ },
+ "403": {
+ "description": "This operation requires super-user access"
+ },
+ "404": {
+ "description": "Cluster does not exist: cluster={clustername}"
+ }
+ },
+ "summary": "Get the list of active brokers (web service addresses) in the cluster.If authorization is not enabled, any cluster name is valid.",
+ "tags": [
+ "brokers"
+ ]
+ }
+ },
+ "/clusters": {
+ "get": {
+ "description": "",
+ "operationId": "getClusters",
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Return a list of clusters.",
+ "schema": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ }
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Get the list of all the Pulsar clusters.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/clusters/{cluster}": {
+ "delete": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "deleteCluster",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "204": {
+ "description": "Cluster has been deleted."
+ },
+ "403": {
+ "description": "Don't have admin permission or policies are read-only."
+ },
+ "404": {
+ "description": "Cluster doesn't exist."
+ },
+ "412": {
+ "description": "Cluster is not empty."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Delete an existing cluster.",
+ "tags": [
+ "clusters"
+ ]
+ },
+ "get": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "getCluster",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "Return the cluster data.",
+ "schema": {
+ "$ref": "#/definitions/ClusterData"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission."
+ },
+ "404": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Get the configuration for the specified cluster.",
+ "tags": [
+ "clusters"
+ ]
+ },
+ "post": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "updateCluster",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The cluster data",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ClusterData"
+ },
+ "x-examples": {
+ "application/json": "{\n 'serviceUrl': 'http://pulsar.example.com:8080',\n 'brokerServiceUrl': 'pulsar://pulsar.example.com:6651'\n}"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "204": {
+ "description": "Cluster has been updated."
+ },
+ "403": {
+ "description": "Don't have admin permission or policies are read-only."
+ },
+ "404": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Update the configuration for a cluster.",
+ "tags": [
+ "clusters"
+ ]
+ },
+ "put": {
+ "description": "This operation requires Pulsar superuser privileges, and the name cannot contain the '/' characters.",
+ "operationId": "createCluster",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The cluster data",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/ClusterData"
+ },
+ "x-examples": {
+ "application/json": "{\n 'serviceUrl': 'http://pulsar.example.com:8080',\n 'brokerServiceUrl': 'pulsar://pulsar.example.com:6651',\n}"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "204": {
+ "description": "Cluster has been created."
+ },
+ "403": {
+ "description": "You don't have admin permission to create the cluster."
+ },
+ "409": {
+ "description": "Cluster already exists."
+ },
+ "412": {
+ "description": "Cluster name is not valid."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Create a new cluster.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/clusters/{cluster}/failureDomains": {
+ "get": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "getFailureDomains",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "$ref": "#/definitions/FailureDomain"
+ },
+ "type": "object"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "Get the cluster failure domains.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/clusters/{cluster}/failureDomains/{domainName}": {
+ "delete": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "deleteFailureDomain",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The failure domain name",
+ "in": "path",
+ "name": "domainName",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission or policy is read only"
+ },
+ "404": {
+ "description": "FailureDomain doesn't exist"
+ },
+ "412": {
+ "description": "Cluster doesn't exist"
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "Delete the failure domain of the cluster",
+ "tags": [
+ "clusters"
+ ]
+ },
+ "get": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "getDomain",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The failure domain name",
+ "in": "path",
+ "name": "domainName",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/FailureDomain"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "FailureDomain doesn't exist"
+ },
+ "412": {
+ "description": "Cluster doesn't exist"
+ },
+ "500": {
+ "description": "Internal server error"
+ }
+ },
+ "summary": "Get a domain in a cluster",
+ "tags": [
+ "clusters"
+ ]
+ },
+ "post": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "setFailureDomain",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The failure domain name",
+ "in": "path",
+ "name": "domainName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The configuration data of a failure domain",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/FailureDomain"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission."
+ },
+ "404": {
+ "description": "Failure domain doesn't exist."
+ },
+ "409": {
+ "description": "Broker already exists in another domain."
+ },
+ "412": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Set the failure domain of the cluster.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/clusters/{cluster}/namespaceIsolationPolicies": {
+ "get": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "getNamespaceIsolationPolicies",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "$ref": "#/definitions/NamespaceIsolationData"
+ },
+ "type": "object"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission."
+ },
+ "404": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Get the namespace isolation policies assigned to the cluster.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/clusters/{cluster}/namespaceIsolationPolicies/brokers": {
+ "get": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "getBrokersWithNamespaceIsolationPolicy",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "items": {
+ "$ref": "#/definitions/BrokerNamespaceIsolationData"
+ },
+ "type": "array",
+ "uniqueItems": true
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission."
+ },
+ "404": {
+ "description": "Namespace-isolation policies not found."
+ },
+ "412": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Get list of brokers with namespace-isolation policies attached to them.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/clusters/{cluster}/namespaceIsolationPolicies/brokers/{broker}": {
+ "get": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "getBrokerWithNamespaceIsolationPolicy",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The broker name (<broker-hostname>:<web-service-port>)",
+ "in": "path",
+ "name": "broker",
+ "required": true,
+ "type": "string",
+ "x-example": "broker1:8080"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/BrokerNamespaceIsolationData"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission."
+ },
+ "404": {
+ "description": "Namespace-isolation policies/ Broker not found."
+ },
+ "412": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Get a broker with namespace-isolation policies attached to it.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/clusters/{cluster}/namespaceIsolationPolicies/{policyName}": {
+ "delete": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "deleteNamespaceIsolationPolicy",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The namespace isolation policy name",
+ "in": "path",
+ "name": "policyName",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission or policies are read only."
+ },
+ "404": {
+ "description": "Namespace isolation policy doesn't exist."
+ },
+ "412": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Delete namespace isolation policy.",
+ "tags": [
+ "clusters"
+ ]
+ },
+ "get": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "getNamespaceIsolationPolicy",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The name of the namespace isolation policy",
+ "in": "path",
+ "name": "policyName",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/NamespaceIsolationData"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission."
+ },
+ "404": {
+ "description": "Policy doesn't exist."
+ },
+ "412": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Get the single namespace isolation policy assigned to the cluster.",
+ "tags": [
+ "clusters"
+ ]
+ },
+ "post": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "setNamespaceIsolationPolicy",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The namespace isolation policy name",
+ "in": "path",
+ "name": "policyName",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The namespace isolation policy data",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/NamespaceIsolationData"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "400": {
+ "description": "Namespace isolation policy data is invalid."
+ },
+ "403": {
+ "description": "Don't have admin permission or policies are read-only."
+ },
+ "404": {
+ "description": "Namespace isolation policy doesn't exist."
+ },
+ "412": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Set namespace isolation policy.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/clusters/{cluster}/peers": {
+ "get": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "getPeerCluster",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission."
+ },
+ "404": {
+ "description": "Cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Get the peer-cluster data for the specified cluster.",
+ "tags": [
+ "clusters"
+ ]
+ },
+ "post": {
+ "description": "This operation requires Pulsar superuser privileges.",
+ "operationId": "setPeerClusterNames",
+ "parameters": [
+ {
+ "description": "The cluster name",
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "The list of peer cluster names",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "x-examples": {
+ "application/json": "[\n 'cluster-a',\n 'cluster-b'\n]"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "204": {
+ "description": "Cluster has been updated."
+ },
+ "403": {
+ "description": "Don't have admin permission or policies are read-only."
+ },
+ "404": {
+ "description": "Cluster doesn't exist."
+ },
+ "412": {
+ "description": "Peer cluster doesn't exist."
+ },
+ "500": {
+ "description": "Internal server error."
+ }
+ },
+ "summary": "Update peer-cluster-list for a cluster.",
+ "tags": [
+ "clusters"
+ ]
+ }
+ },
+ "/namespaces/{cluster}/antiAffinity/{group}": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getAntiAffinityNamespaces",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "cluster",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "group",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "query",
+ "name": "tenant",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "412": {
+ "description": "Cluster not exist/Anti-affinity group can't be empty."
+ }
+ },
+ "summary": "Get all namespaces that are grouped by given anti-affinity group in a given cluster. api can be only accessed by admin of any of the existing tenant",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{property}/{namespace}/persistence/bookieAffinity": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "deleteBookieAffinityGroup",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "property",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Delete the bookie-affinity-group from namespace-local policy.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getBookieAffinityGroup",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "property",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/BookieAffinityGroupData"
+ }
+ },
+ "307": {
+ "description": "Current broker doesn't serve the namespace"
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Get the bookie-affinity-group from namespace-local policy.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getTenantNamespaces",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "uniqueItems": true
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant doesn't exist"
+ }
+ },
+ "summary": "Get the list of all the namespaces for a certain tenant.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "deleteNamespace",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "default": false,
+ "in": "query",
+ "name": "force",
+ "required": false,
+ "type": "boolean"
+ },
+ {
+ "default": false,
+ "in": "query",
+ "name": "authoritative",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "307": {
+ "description": "Current broker doesn't serve the namespace"
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "405": {
+ "description": "Broker doesn't allow forced deletion of namespaces"
+ },
+ "409": {
+ "description": "Namespace is not empty"
+ }
+ },
+ "summary": "Delete a namespace and all the topics under it.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/Policies"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Get the dump all the policies specified for a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "put": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "createNamespace",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Policies for the namespace",
+ "in": "body",
+ "name": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/Policies"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster doesn't exist"
+ },
+ "409": {
+ "description": "Namespace already exists"
+ },
+ "412": {
+ "description": "Namespace name is not valid"
+ }
+ },
+ "summary": "Creates a new namespace with the specified policies",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/antiAffinity": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeNamespaceAntiAffinityGroup",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Remove anti-affinity group of a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getNamespaceAntiAffinityGroup",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "type": "string"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Get anti-affinity group of a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setNamespaceAntiAffinityGroup",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Anti-affinity group for the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "type": "string"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "412": {
+ "description": "Invalid antiAffinityGroup"
+ }
+ },
+ "summary": "Set anti-affinity group for a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/autoSubscriptionCreation": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeAutoSubscriptionCreation",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Remove override of broker's allowAutoSubscriptionCreation in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getAutoSubscriptionCreation",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/AutoSubscriptionCreationOverride"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or namespace doesn't exist"
+ }
+ },
+ "summary": "Get autoSubscriptionCreation info in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setAutoSubscriptionCreation",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Settings for automatic subscription creation",
+ "in": "body",
+ "name": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/AutoSubscriptionCreationOverride"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "400": {
+ "description": "Invalid autoSubscriptionCreation override"
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Override broker's allowAutoSubscriptionCreation setting for a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/autoTopicCreation": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeAutoTopicCreation",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Remove override of broker's allowAutoTopicCreation in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getAutoTopicCreation",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/AutoTopicCreationOverride"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or namespace doesn't exist"
+ }
+ },
+ "summary": "Get autoTopicCreation info in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setAutoTopicCreation",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Settings for automatic topic creation",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/AutoTopicCreationOverride"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "400": {
+ "description": "Invalid autoTopicCreation override"
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "406": {
+ "description": "The number of partitions should be less than or equal to maxNumPartitionsPerPartitionedTopic"
+ }
+ },
+ "summary": "Override broker's allowAutoTopicCreation setting for a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/backlogQuota": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeBacklogQuota",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "enum": [
+ "destination_storage",
+ "message_age"
+ ],
+ "in": "query",
+ "name": "backlogQuotaType",
+ "required": false,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Remove a backlog quota policy from a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setBacklogQuota",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "enum": [
+ "destination_storage",
+ "message_age"
+ ],
+ "in": "query",
+ "name": "backlogQuotaType",
+ "required": false,
+ "type": "string"
+ },
+ {
+ "description": "Backlog quota for all topics of the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/BacklogQuota"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "Specified backlog quota exceeds retention quota. Increase retention quota and retry request"
+ }
+ },
+ "summary": " Set a backlog quota for all the topics on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/backlogQuotaMap": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getBacklogQuotaMap",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "additionalProperties": {
+ "$ref": "#/definitions/BacklogQuota"
+ },
+ "type": "object"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get backlog quota map on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/bundles": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getBundlesData",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/BundlesData"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "412": {
+ "description": "Namespace is not setup to split in bundles"
+ }
+ },
+ "summary": "Get the bundles split data.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/clearBacklog": {
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "clearNamespaceBacklog",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "default": false,
+ "in": "query",
+ "name": "authoritative",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Clear backlog for all topics on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/clearBacklog/{subscription}": {
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "clearNamespaceBacklogForSubscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "subscription",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "default": false,
+ "in": "query",
+ "name": "authoritative",
+ "required": false,
+ "type": "boolean"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Clear backlog for a given subscription on all topics on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/compactionThreshold": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "The backlog size is compared to the threshold periodically. A threshold of 0 disabled automatic compaction",
+ "operationId": "deleteCompactionThreshold",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Delete maximum number of uncompacted bytes in a topic before compaction is triggered.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "The backlog size is compared to the threshold periodically. A threshold of 0 disabled automatic compaction",
+ "operationId": "getCompactionThreshold",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ }
+ },
+ "summary": "Maximum number of uncompacted bytes in topics before compaction is triggered.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "put": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "The backlog size is compared to the threshold periodically. A threshold of 0 disabled automatic compaction",
+ "operationId": "setCompactionThreshold",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Maximum number of uncompacted bytes in a topic of the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int64",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "compactionThreshold value is not valid"
+ }
+ },
+ "summary": "Set maximum number of uncompacted bytes in a topic before compaction is triggered.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/deduplication": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeDeduplication",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Remove broker side deduplication for all topics in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getDeduplication",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "type": "boolean"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Get broker side deduplication for all topics in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "modifyDeduplication",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Flag for disabling or enabling broker side deduplication for all topics in the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "type": "boolean"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Enable or disable broker side deduplication for all topics in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/deduplicationSnapshotInterval": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getDeduplicationSnapshotInterval",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get deduplicationSnapshotInterval config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setDeduplicationSnapshotInterval",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Interval to take deduplication snapshot per topic",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Set deduplicationSnapshotInterval config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/delayedDelivery": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeDelayedDeliveryPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Delete delayed delivery messages config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getDelayedDeliveryPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/DelayedDeliveryPolicies"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Get delayed delivery messages config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setDelayedDeliveryPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Delayed delivery policies for the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/DelayedDeliveryPolicies"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Set delayed delivery messages config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/dispatchRate": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "deleteDispatchRate",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Delete dispatch-rate throttling for all topics of the namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getDispatchRate",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/DispatchRate"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get dispatch-rate configured for the namespace, null means dispatch-rate not configured, -1 means msg-dispatch-rate or byte-dispatch-rate not configured in dispatch-rate yet",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setDispatchRate",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Dispatch rate for all topics of the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/DispatchRateImpl"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ }
+ },
+ "summary": "Set dispatch-rate throttling for all topics of the namespace",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/encryptionRequired": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getEncryptionRequired",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "type": "boolean"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or namespace doesn't exist"
+ }
+ },
+ "summary": "Get message encryption required status in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "modifyEncryptionRequired",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Flag defining if message encryption is required",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "type": "boolean"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Message encryption is required or not for all topics in a namespace",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/inactiveTopicPolicies": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeInactiveTopicPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Remove inactive topic policies from a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getInactiveTopicPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/InactiveTopicPolicies"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Get inactive topic policies config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setInactiveTopicPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Inactive topic policies for the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": false,
+ "schema": {
+ "$ref": "#/definitions/InactiveTopicPolicies"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Set inactive topic policies config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/isAllowAutoUpdateSchema": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getIsAllowAutoUpdateSchema",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "type": "boolean"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "The flag of whether allow auto update schema",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setIsAllowAutoUpdateSchema",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Flag of whether to allow auto update schema",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "type": "boolean"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Update flag of whether allow auto update schema",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/maxConsumersPerSubscription": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeMaxConsumersPerSubscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "maxConsumersPerSubscription value is not valid"
+ }
+ },
+ "summary": " Set maxConsumersPerSubscription configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getMaxConsumersPerSubscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get maxConsumersPerSubscription config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setMaxConsumersPerSubscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Number of maximum consumers per subscription",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "maxConsumersPerSubscription value is not valid"
+ }
+ },
+ "summary": " Set maxConsumersPerSubscription configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/maxConsumersPerTopic": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeMaxConsumersPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Remove maxConsumersPerTopic configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getMaxConsumersPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get maxConsumersPerTopic config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setMaxConsumersPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Number of maximum consumers per topic",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "maxConsumersPerTopic value is not valid"
+ }
+ },
+ "summary": " Set maxConsumersPerTopic configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/maxProducersPerTopic": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeMaxProducersPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Remove maxProducersPerTopic configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getMaxProducersPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get maxProducersPerTopic config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setMaxProducersPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Number of maximum producers per topic",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "maxProducersPerTopic value is not valid"
+ }
+ },
+ "summary": " Set maxProducersPerTopic configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/maxSubscriptionsPerTopic": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeMaxSubscriptionsPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Remove maxSubscriptionsPerTopic configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getMaxSubscriptionsPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get maxSubscriptionsPerTopic config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setMaxSubscriptionsPerTopic",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Number of maximum subscriptions per topic",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "maxUnackedMessagesPerSubscription value is not valid"
+ }
+ },
+ "summary": " Set maxSubscriptionsPerTopic configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/maxTopicsPerNamespace": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setInactiveTopicPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or namespace doesn't exist"
+ }
+ },
+ "summary": "Set maxTopicsPerNamespace config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getMaxTopicsPerNamespace",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or namespace does not exist"
+ }
+ },
+ "summary": "Get maxTopicsPerNamespace config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setInactiveTopicPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Number of maximum topics for specific namespace",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or namespace doesn't exist"
+ }
+ },
+ "summary": "Set maxTopicsPerNamespace config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/maxUnackedMessagesPerConsumer": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeMaxUnackedmessagesPerConsumer",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Remove maxUnackedMessagesPerConsumer config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getMaxUnackedMessagesPerConsumer",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get maxUnackedMessagesPerConsumer config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setMaxUnackedMessagesPerConsumer",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Number of maximum unacked messages per consumer",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "maxUnackedMessagesPerConsumer value is not valid"
+ }
+ },
+ "summary": " Set maxConsumersPerTopic configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/maxUnackedMessagesPerSubscription": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeMaxUnackedmessagesPerSubscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Remove maxUnackedMessagesPerSubscription config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getMaxUnackedmessagesPerSubscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get maxUnackedMessagesPerSubscription config on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setMaxUnackedMessagesPerSubscription",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Number of maximum unacked messages per subscription",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "maxUnackedMessagesPerSubscription value is not valid"
+ }
+ },
+ "summary": " Set maxUnackedMessagesPerSubscription configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/messageTTL": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "removeNamespaceMessageTTL",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "412": {
+ "description": "Invalid TTL"
+ }
+ },
+ "summary": "Set message TTL in seconds for namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getNamespaceMessageTTL",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ }
+ },
+ "summary": "Get the message TTL for the namespace",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setNamespaceMessageTTL",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "TTL in seconds for the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int32",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Tenant or cluster or namespace doesn't exist"
+ },
+ "412": {
+ "description": "Invalid TTL"
+ }
+ },
+ "summary": "Set message TTL in seconds for namespace",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/offloadDeletionLagMs": {
+ "delete": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "clearOffloadDeletionLag",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ }
+ },
+ "summary": "Clear the namespace configured offload deletion lag. The topics in the namespace will fallback to using the default configured deletion lag for the broker",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "A negative value denotes that deletion has been completely disabled. 'null' denotes that the topics in the namespace will fall back to the broker default for deletion lag.",
+ "operationId": "getOffloadDeletionLag",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ }
+ },
+ "summary": "Number of milliseconds to wait before deleting a ledger segment which has been offloaded from the Pulsar cluster's local storage (i.e. BookKeeper)",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "put": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "A negative value disables the deletion completely.",
+ "operationId": "setOffloadDeletionLag",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "New number of milliseconds to wait before deleting a ledger segment which has been offloaded",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int64",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "offloadDeletionLagMs value is not valid"
+ }
+ },
+ "summary": "Set number of milliseconds to wait before deleting a ledger segment which has been offloaded from the Pulsar cluster's local storage (i.e. BookKeeper)",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/offloadPolicies": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getOffloadPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "$ref": "#/definitions/OffloadPoliciesImpl"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ }
+ },
+ "summary": "Get offload configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "post": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "setOffloadPolicies",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Offload policies for the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/OffloadPoliciesImpl"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace does not exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "OffloadPolicies is empty or driver is not supported or bucket is not valid"
+ }
+ },
+ "summary": " Set offload configuration on a namespace.",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/offloadThreshold": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "A negative value disables automatic offloading",
+ "operationId": "getOffloadThreshold",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "200": {
+ "description": "successful operation",
+ "schema": {
+ "format": "int64",
+ "type": "integer"
+ }
+ },
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ }
+ },
+ "summary": "Maximum number of bytes stored on the pulsar cluster for a topic, before the broker will start offloading to longterm storage",
+ "tags": [
+ "namespaces"
+ ]
+ },
+ "put": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "-1 will revert to using the cluster default. A negative value disables automatic offloading. ",
+ "operationId": "setOffloadThreshold",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "description": "Maximum number of bytes stored on the pulsar cluster for a topic of the specified namespace",
+ "in": "body",
+ "name": "body",
+ "required": true,
+ "schema": {
+ "format": "int64",
+ "type": "integer"
+ }
+ }
+ ],
+ "produces": [
+ "application/json"
+ ],
+ "responses": {
+ "403": {
+ "description": "Don't have admin permission"
+ },
+ "404": {
+ "description": "Namespace doesn't exist"
+ },
+ "409": {
+ "description": "Concurrent modification"
+ },
+ "412": {
+ "description": "offloadThreshold value is not valid"
+ }
+ },
+ "summary": "Set maximum number of bytes stored on the pulsar cluster for a topic, before the broker will start offloading to longterm storage",
+ "tags": [
+ "namespaces"
+ ]
+ }
+ },
+ "/namespaces/{tenant}/{namespace}/permissions": {
+ "get": {
+ "consumes": [
+ "application/json"
+ ],
+ "description": "",
+ "operationId": "getPermissions",
+ "parameters": [
+ {
+ "in": "path",
+ "name": "tenant",
+ "required": true,
+ "type": "string"
+ },
+ {
+ "in": "path",
+ "name": "namespace",
+ "required": true,
+ "type": "string"
+ }
+ ],
... 67874 lines suppressed ...