DataStax Astra Pulsar Admin API - source (2.10.5)

Download OpenAPI specification:Download

Compatible source Pulsar Admin API endpoints on DataStax Astra Streaming

broker-stats

Get the stats for the Netty allocator. Available allocators are 'default' and 'ml-cache'

Authorizations:
Bearer
path Parameters
allocator
required
string

Responses

Response samples

Content type
application/json
{
  • "directArenas": [
    ],
  • "heapArenas": [
    ],
  • "normalCacheSize": 0,
  • "numDirectArenas": 0,
  • "numHeapArenas": 0,
  • "numThreadLocalCaches": 0,
  • "smallCacheSize": 0
}

Get pending bookie client op stats by namesapce

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Broker availability report

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

THIS API IS ONLY FOR USE BY TESTING FOR CONFIRMING NAMESPACE ALLOCATION ALGORITHM

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Get Load for this broker

consists of topics stats & systemResourceUsage

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
{
  • "allocatedBandwidthIn": 0.1,
  • "allocatedBandwidthOut": 0.1,
  • "allocatedCPU": 0.1,
  • "allocatedMemory": 0.1,
  • "allocatedMsgRateIn": 0.1,
  • "allocatedMsgRateOut": 0.1,
  • "bandwidthIn": {
    },
  • "bandwidthOut": {
    },
  • "brokerVersionString": "string",
  • "bundleGains": [
    ],
  • "bundleLosses": [
    ],
  • "bundleStats": {
    },
  • "cpu": {
    },
  • "directMemory": {
    },
  • "lastUpdate": 0,
  • "loadReportType": "string",
  • "memory": {
    },
  • "msgRateIn": 0.1,
  • "msgRateOut": 0.1,
  • "msgThroughputIn": 0.1,
  • "msgThroughputOut": 0.1,
  • "name": "string",
  • "nonPersistentTopicsEnabled": true,
  • "numBundles": 0,
  • "numConsumers": 0,
  • "numProducers": 0,
  • "numTopics": 0,
  • "overLoaded": true,
  • "persistentTopicsEnabled": true,
  • "preAllocatedBandwidthIn": 0.1,
  • "preAllocatedBandwidthOut": 0.1,
  • "preAllocatedCPU": 0.1,
  • "preAllocatedMemory": 0.1,
  • "preAllocatedMsgRateIn": 0.1,
  • "preAllocatedMsgRateOut": 0.1,
  • "protocols": {
    },
  • "pulsarServiceUrl": "string",
  • "pulsarServiceUrlTls": "string",
  • "systemResourceUsage": {
    },
  • "timestamp": 0,
  • "underLoaded": true,
  • "webServiceUrl": "string",
  • "webServiceUrlTls": "string"
}

Get all the mbean details of this broker JVM

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Gets the metrics for Monitoring

Requested should be executed by Monitoring agent on each broker to fetch the metrics

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get all the topic stats by namespace

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
{ }

clusters

Get the list of all the Pulsar clusters.

Authorizations:
Bearer

Responses

Response samples

Content type
application/json
[
  • "string"
]

Get the configuration for the specified cluster.

This operation requires Pulsar superuser privileges.

Authorizations:
Bearer
path Parameters
cluster
required
string

The cluster name

Responses

Response samples

Content type
application/json
{
  • "authenticationParameters": "string",
  • "authenticationPlugin": "org.apache.pulsar.client.impl.auth.AuthenticationToken",
  • "brokerClientTlsEnabled": true,
  • "brokerClientTlsEnabledWithKeyStore": true,
  • "brokerClientTlsTrustStore": "string",
  • "brokerClientTlsTrustStorePassword": "string",
  • "brokerClientTlsTrustStoreType": "JKS",
  • "brokerClientTrustCertsFilePath": "string",
  • "brokerServiceUrl": "pulsar://pulsar.example.com:6650",
  • "brokerServiceUrlTls": "pulsar+ssl://pulsar.example.com:6651",
  • "listenerName": "string",
  • "peerClusterNames": [
    ],
  • "proxyProtocol": "SNI",
  • "proxyServiceUrl": "pulsar+ssl://ats-proxy.example.com:4443 or pulsar://ats-proxy.example.com:4080",
  • "tlsAllowInsecureConnection": true
}

Get the cluster failure domains.

This operation requires Pulsar superuser privileges.

Authorizations:
Bearer
path Parameters
cluster
required
string

The cluster name

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Get a domain in a cluster

This operation requires Pulsar superuser privileges.

Authorizations:
Bearer
path Parameters
cluster
required
string

The cluster name

domainName
required
string

The failure domain name

Responses

Response samples

Content type
application/json
{
  • "brokers": "[ 'broker-1', 'broker-2' ]"
}

Get the namespace isolation policies assigned to the cluster.

This operation requires Pulsar superuser privileges.

Authorizations:
Bearer
path Parameters
cluster
required
string

The cluster name

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Get list of brokers with namespace-isolation policies attached to them.

This operation requires Pulsar superuser privileges.

Authorizations:
Bearer
path Parameters
cluster
required
string

The cluster name

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a broker with namespace-isolation policies attached to it.

This operation requires Pulsar superuser privileges.

Authorizations:
Bearer
path Parameters
cluster
required
string

The cluster name

broker
required
string
Example: broker1:8080

The broker name (:)

Responses

Response samples

Content type
application/json
{
  • "brokerName": "broker1:8080",
  • "namespaceRegex": [
    ],
  • "policyName": "my-policy",
  • "primary": true
}

Get the single namespace isolation policy assigned to the cluster.

This operation requires Pulsar superuser privileges.

Authorizations:
Bearer
path Parameters
cluster
required
string

The cluster name

policyName
required
string

The name of the namespace isolation policy

Responses

Response samples

Content type
application/json
{
  • "auto_failover_policy": {
    },
  • "namespaces": [
    ],
  • "primary": [
    ],
  • "secondary": [
    ]
}

Get the peer-cluster data for the specified cluster.

This operation requires Pulsar superuser privileges.

Authorizations:
Bearer
path Parameters
cluster
required
string

The cluster name

Responses

Response samples

Content type
application/json
[
  • "string"
]

namespaces

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

Authorizations:
Bearer
path Parameters
cluster
required
string
group
required
string
query Parameters
tenant
string

Responses

Response samples

Content type
application/json
[
  • "string"
]

Get the bookie-affinity-group from namespace-local policy.

Authorizations:
Bearer
path Parameters
property
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "bookkeeperAffinityGroupPrimary": "string",
  • "bookkeeperAffinityGroupSecondary": "string"
}

Get the list of all the namespaces for a certain tenant.

Authorizations:
Bearer
path Parameters
tenant
required
string

Responses

Response samples

Content type
application/json
[
  • "string"
]

Delete a namespace and all the topics under it.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
query Parameters
force
boolean
Default: false
authoritative
boolean
Default: false

Responses

Get the dump all the policies specified for a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "auth_policies": {
    },
  • "autoSubscriptionCreationOverride": {
    },
  • "autoTopicCreationOverride": {
    },
  • "backlog_quota_map": {
    },
  • "bundles": {
    },
  • "clusterDispatchRate": {
    },
  • "clusterSubscribeRate": {
    },
  • "compaction_threshold": 0,
  • "deduplicationEnabled": true,
  • "deduplicationSnapshotIntervalSeconds": 0,
  • "delayed_delivery_policies": {
    },
  • "deleted": true,
  • "encryption_required": true,
  • "inactive_topic_policies": {
    },
  • "is_allow_auto_update_schema": true,
  • "latency_stats_sample_rate": {
    },
  • "max_consumers_per_subscription": 0,
  • "max_consumers_per_topic": 0,
  • "max_producers_per_topic": 0,
  • "max_subscriptions_per_topic": 0,
  • "max_topics_per_namespace": 0,
  • "max_unacked_messages_per_consumer": 0,
  • "max_unacked_messages_per_subscription": 0,
  • "message_ttl_in_seconds": 0,
  • "offload_deletion_lag_ms": 0,
  • "offload_policies": {
    },
  • "offload_threshold": 0,
  • "persistence": {
    },
  • "properties": {
    },
  • "publishMaxMessageRate": {
    },
  • "replication_clusters": [
    ],
  • "replicatorDispatchRate": {
    },
  • "resource_group_name": "string",
  • "retention_policies": {
    },
  • "schema_auto_update_compatibility_strategy": "AutoUpdateDisabled",
  • "schema_compatibility_strategy": "UNDEFINED",
  • "schema_validation_enforced": true,
  • "subscriptionDispatchRate": {
    },
  • "subscription_auth_mode": "None",
  • "subscription_expiration_time_minutes": 0,
  • "subscription_types_enabled": [
    ],
  • "topicDispatchRate": {
    }
}

Creates a new namespace with the specified policies

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json

Policies for the namespace

object (AuthPolicies)
object (AutoSubscriptionCreationOverride)
object (AutoTopicCreationOverride)
object
object (BundlesData)
object
object
compaction_threshold
integer <int64>
deduplicationEnabled
boolean
deduplicationSnapshotIntervalSeconds
integer <int32>
object (DelayedDeliveryPolicies)
deleted
boolean
encryption_required
boolean
object (InactiveTopicPolicies)
is_allow_auto_update_schema
boolean
object
max_consumers_per_subscription
integer <int32>
max_consumers_per_topic
integer <int32>
max_producers_per_topic
integer <int32>
max_subscriptions_per_topic
integer <int32>
max_topics_per_namespace
integer <int32>
max_unacked_messages_per_consumer
integer <int32>
max_unacked_messages_per_subscription
integer <int32>
message_ttl_in_seconds
integer <int32>
offload_deletion_lag_ms
integer <int64>
object (OffloadPolicies)
offload_threshold
integer <int64>
object (PersistencePolicies)
object
object
replication_clusters
Array of strings unique
object
resource_group_name
string
object (RetentionPolicies)
schema_auto_update_compatibility_strategy
string
Enum: "AutoUpdateDisabled" "Backward" "Forward" "Full" "AlwaysCompatible" "BackwardTransitive" "ForwardTransitive" "FullTransitive"
schema_compatibility_strategy
string
Enum: "UNDEFINED" "ALWAYS_INCOMPATIBLE" "ALWAYS_COMPATIBLE" "BACKWARD" "FORWARD" "FULL" "BACKWARD_TRANSITIVE" "FORWARD_TRANSITIVE" "FULL_TRANSITIVE"
schema_validation_enforced
boolean
object
subscription_auth_mode
string
Enum: "None" "Prefix"
subscription_expiration_time_minutes
integer <int32>
subscription_types_enabled
Array of strings unique
object

Responses

Request samples

Content type
application/json
{
  • "auth_policies": {
    },
  • "autoSubscriptionCreationOverride": {
    },
  • "autoTopicCreationOverride": {
    },
  • "backlog_quota_map": {
    },
  • "bundles": {
    },
  • "clusterDispatchRate": {
    },
  • "clusterSubscribeRate": {
    },
  • "compaction_threshold": 0,
  • "deduplicationEnabled": true,
  • "deduplicationSnapshotIntervalSeconds": 0,
  • "delayed_delivery_policies": {
    },
  • "deleted": true,
  • "encryption_required": true,
  • "inactive_topic_policies": {
    },
  • "is_allow_auto_update_schema": true,
  • "latency_stats_sample_rate": {
    },
  • "max_consumers_per_subscription": 0,
  • "max_consumers_per_topic": 0,
  • "max_producers_per_topic": 0,
  • "max_subscriptions_per_topic": 0,
  • "max_topics_per_namespace": 0,
  • "max_unacked_messages_per_consumer": 0,
  • "max_unacked_messages_per_subscription": 0,
  • "message_ttl_in_seconds": 0,
  • "offload_deletion_lag_ms": 0,
  • "offload_policies": {
    },
  • "offload_threshold": 0,
  • "persistence": {
    },
  • "properties": {
    },
  • "publishMaxMessageRate": {
    },
  • "replication_clusters": [
    ],
  • "replicatorDispatchRate": {
    },
  • "resource_group_name": "string",
  • "retention_policies": {
    },
  • "schema_auto_update_compatibility_strategy": "AutoUpdateDisabled",
  • "schema_compatibility_strategy": "UNDEFINED",
  • "schema_validation_enforced": true,
  • "subscriptionDispatchRate": {
    },
  • "subscription_auth_mode": "None",
  • "subscription_expiration_time_minutes": 0,
  • "subscription_types_enabled": [
    ],
  • "topicDispatchRate": {
    }
}

Get autoSubscriptionCreation info in a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "allowAutoSubscriptionCreation": true
}

Override broker's allowAutoSubscriptionCreation setting for a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json

Settings for automatic subscription creation

allowAutoSubscriptionCreation
boolean

Responses

Request samples

Content type
application/json
{
  • "allowAutoSubscriptionCreation": true
}

Get autoTopicCreation info in a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "allowAutoTopicCreation": true,
  • "defaultNumPartitions": 0,
  • "topicType": "string"
}

Override broker's allowAutoTopicCreation setting for a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Settings for automatic topic creation

allowAutoTopicCreation
boolean
defaultNumPartitions
integer <int32>
topicType
string

Responses

Request samples

Content type
application/json
{
  • "allowAutoTopicCreation": true,
  • "defaultNumPartitions": 0,
  • "topicType": "string"
}

Set a backlog quota for all the topics on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
query Parameters
backlogQuotaType
string
Enum: "destination_storage" "message_age"
Request Body schema: application/json

Backlog quota for all topics of the specified namespace

limit
integer <int64>
limitSize
integer <int64>
limitTime
integer <int32>
policy
string
Enum: "producer_request_hold" "producer_exception" "consumer_backlog_eviction"

Responses

Request samples

Content type
application/json
{
  • "limit": 0,
  • "limitSize": 0,
  • "limitTime": 0,
  • "policy": "producer_request_hold"
}

Get backlog quota map on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Get the bundles split data.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "boundaries": [
    ],
  • "numBundles": 0
}

Clear backlog for all topics on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
query Parameters
authoritative
boolean
Default: false

Responses

Clear backlog for a given subscription on all topics on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
subscription
required
string
query Parameters
authoritative
boolean
Default: false

Responses

Maximum number of uncompacted bytes in topics before compaction is triggered.

The backlog size is compared to the threshold periodically. A threshold of 0 disabled automatic compaction

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maximum number of uncompacted bytes in a topic before compaction is triggered.

The backlog size is compared to the threshold periodically. A threshold of 0 disabled automatic compaction

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Maximum number of uncompacted bytes in a topic of the specified namespace

integer <int64>

Responses

Request samples

Content type
application/json
0
0

Get broker side deduplication for all topics in a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
true

Enable or disable broker side deduplication for all topics in a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Flag for disabling or enabling broker side deduplication for all topics in the specified namespace

boolean

Responses

Request samples

Content type
application/json
true

Get deduplicationSnapshotInterval config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set deduplicationSnapshotInterval config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Interval to take deduplication snapshot per topic

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Get delayed delivery messages config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "active": true,
  • "tickTime": 0
}

Set delayed delivery messages config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json

Delayed delivery policies for the specified namespace

active
boolean
tickTime
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "active": true,
  • "tickTime": 0
}

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

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "dispatchThrottlingRateInByte": 0,
  • "dispatchThrottlingRateInMsg": 0,
  • "ratePeriodInSecond": 0,
  • "relativeToPublishRate": true
}

Get message encryption required status in a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
true

Message encryption is required or not for all topics in a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Flag defining if message encryption is required

boolean

Responses

Request samples

Content type
application/json
true

Get inactive topic policies config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "deleteWhileInactive": true,
  • "inactiveTopicDeleteMode": "delete_when_no_subscriptions",
  • "maxInactiveDurationSeconds": 0
}

Set inactive topic policies config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json

Inactive topic policies for the specified namespace

deleteWhileInactive
boolean
inactiveTopicDeleteMode
string
Enum: "delete_when_no_subscriptions" "delete_when_subscriptions_caught_up"
maxInactiveDurationSeconds
integer <int32>

Responses

Request samples

Content type
application/json
{
  • "deleteWhileInactive": true,
  • "inactiveTopicDeleteMode": "delete_when_no_subscriptions",
  • "maxInactiveDurationSeconds": 0
}

The flag of whether allow auto update schema

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
true

Update flag of whether allow auto update schema

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Flag of whether to allow auto update schema

boolean

Responses

Request samples

Content type
application/json
true

Get maxConsumersPerSubscription config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maxConsumersPerSubscription configuration on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Number of maximum consumers per subscription

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Get maxConsumersPerTopic config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maxConsumersPerTopic configuration on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Number of maximum consumers per topic

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Get maxProducersPerTopic config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maxProducersPerTopic configuration on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Number of maximum producers per topic

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Get maxSubscriptionsPerTopic config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maxSubscriptionsPerTopic configuration on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Number of maximum subscriptions per topic

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Get maxTopicsPerNamespace config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maxTopicsPerNamespace config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Number of maximum topics for specific namespace

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Get maxUnackedMessagesPerConsumer config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maxConsumersPerTopic configuration on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Number of maximum unacked messages per consumer

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Get maxUnackedMessagesPerSubscription config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maxUnackedMessagesPerSubscription configuration on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Number of maximum unacked messages per subscription

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Get the message TTL for the namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set message TTL in seconds for namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

TTL in seconds for the specified namespace

integer <int32>

Responses

Request samples

Content type
application/json
0
0

Number of milliseconds to wait before deleting a ledger segment which has been offloaded from the Pulsar cluster's local storage (i.e. BookKeeper)

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.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Get offload configuration on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "fileSystemDriver": true,
  • "fileSystemProfilePath": "string",
  • "fileSystemURI": "string",
  • "gcsDriver": true,
  • "gcsManagedLedgerOffloadBucket": "string",
  • "gcsManagedLedgerOffloadMaxBlockSizeInBytes": 0,
  • "gcsManagedLedgerOffloadReadBufferSizeInBytes": 0,
  • "gcsManagedLedgerOffloadRegion": "string",
  • "gcsManagedLedgerOffloadServiceAccountKeyFile": "string",
  • "managedLedgerOffloadBucket": "string",
  • "managedLedgerOffloadDeletionLagInMillis": 0,
  • "managedLedgerOffloadDriver": "string",
  • "managedLedgerOffloadMaxBlockSizeInBytes": 0,
  • "managedLedgerOffloadMaxThreads": 0,
  • "managedLedgerOffloadPrefetchRounds": 0,
  • "managedLedgerOffloadReadBufferSizeInBytes": 0,
  • "managedLedgerOffloadRegion": "string",
  • "managedLedgerOffloadServiceEndpoint": "string",
  • "managedLedgerOffloadThresholdInBytes": 0,
  • "managedLedgerOffloadedReadPriority": "BOOKKEEPER_FIRST",
  • "offloadersDirectory": "string",
  • "s3Driver": true,
  • "s3ManagedLedgerOffloadBucket": "string",
  • "s3ManagedLedgerOffloadCredentialId": "string",
  • "s3ManagedLedgerOffloadCredentialSecret": "string",
  • "s3ManagedLedgerOffloadMaxBlockSizeInBytes": 0,
  • "s3ManagedLedgerOffloadReadBufferSizeInBytes": 0,
  • "s3ManagedLedgerOffloadRegion": "string",
  • "s3ManagedLedgerOffloadRole": "string",
  • "s3ManagedLedgerOffloadRoleSessionName": "string",
  • "s3ManagedLedgerOffloadServiceEndpoint": "string"
}

Maximum number of bytes stored on the pulsar cluster for a topic, before the broker will start offloading to longterm storage

A negative value disables automatic offloading

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set maximum number of bytes stored on the pulsar cluster for a topic, before the broker will start offloading to longterm storage

-1 will revert to using the cluster default. A negative value disables automatic offloading.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Maximum number of bytes stored on the pulsar cluster for a topic of the specified namespace

integer <int64>

Responses

Request samples

Content type
application/json
0
0

Retrieve the permissions for a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "property1": [
    ],
  • "property2": [
    ]
}

Retrieve the permissions for a subscription.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "property1": [
    ],
  • "property2": [
    ]
}

Revoke all permissions to a role on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
role
required
string

Responses

Grant a new permission to a role on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
role
required
string
Request Body schema: application/json

List of permissions for the specified role

Array
string
Enum: "produce" "consume" "functions" "sources" "sinks" "packages"

Responses

Request samples

Content type
application/json
[
  • "produce"
]

Get the persistence configuration for a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "bookkeeperAckQuorum": 0,
  • "bookkeeperEnsemble": 0,
  • "bookkeeperWriteQuorum": 0,
  • "managedLedgerMaxMarkDeleteRate": 0.1
}

Get key value pair properties for a given namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Put key value pairs property on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Key value pair properties for the namespace

property name*
additional property
string

Responses

Request samples

Content type
application/json
{
  • "property1": "string",
  • "property2": "string"
}

Get property value for a given key on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
key
required
string

Responses

Put a key value pair property on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
key
required
string
value
required
string

Responses

Get the replication clusters for a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
[
  • "string"
]

Set the replication clusters for a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

List of replication clusters

Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Get replicator dispatch-rate configured for the namespace, null means replicator dispatch-rate not configured, -1 means msg-dispatch-rate or byte-dispatch-rate not configured in dispatch-rate yet

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "dispatchThrottlingRateInByte": 0,
  • "dispatchThrottlingRateInMsg": 0,
  • "ratePeriodInSecond": 0,
  • "relativeToPublishRate": true
}

Get the resourcegroup attached to the namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
"string"

Set resourcegroup for a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
resourcegroup
required
string

Responses

Get retention config on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "retentionSizeInMB": 0,
  • "retentionTimeInMinutes": 0
}

Set retention configuration on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json

Retention policies for the specified namespace

retentionSizeInMB
integer <int64>
retentionTimeInMinutes
integer <int32>

Responses

Request samples

Content type
application/json
{
  • "retentionSizeInMB": 0,
  • "retentionTimeInMinutes": 0
}

The strategy used to check the compatibility of new schemas, provided by producers, before automatically updating the schema

The value AutoUpdateDisabled prevents producers from updating the schema. If set to AutoUpdateDisabled, schemas must be updated through the REST api

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
"AutoUpdateDisabled"

Update the strategy used to check the compatibility of new schemas, provided by producers, before automatically updating the schema

The value AutoUpdateDisabled prevents producers from updating the schema. If set to AutoUpdateDisabled, schemas must be updated through the REST api

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json

Strategy used to check the compatibility of new schemas

string

Responses

Request samples

Content type
application/json
"string"

The strategy of the namespace schema compatibility

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
"UNDEFINED"

Update the strategy used to check the compatibility of new schema

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json

Strategy used to check the compatibility of new schema

string

Responses

Request samples

Content type
application/json
"string"

Get schema validation enforced flag for namespace.

If the flag is set to true, when a producer without a schema attempts to produce to a topic with schema in this namespace, the producer will be failed to connect. PLEASE be carefully on using this, since non-java clients don't support schema.if you enable this setting, it will cause non-java clients failed to produce.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
query Parameters
applied
boolean
Default: false

Responses

Response samples

Content type
application/json
true

Set schema validation enforced flag on namespace.

If the flag is set to true, when a producer without a schema attempts to produce to a topic with schema in this namespace, the producer will be failed to connect. PLEASE be carefully on using this, since non-java clients don't support schema.if you enable this setting, it will cause non-java clients failed to produce.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Flag of whether validation is enforced on the specified namespace

boolean

Responses

Request samples

Content type
application/json
true

Get subscribe-rate configured for the namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "ratePeriodInSecond": 0,
  • "subscribeThrottlingRatePerConsumer": 0
}

Get subscription auth mode in a namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
"None"

Get subscription dispatch-rate configured for the namespace, null means subscription dispatch-rate not configured, -1 means msg-dispatch-rate or byte-dispatch-rate not configured in dispatch-rate yet

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
{
  • "dispatchThrottlingRateInByte": 0,
  • "dispatchThrottlingRateInMsg": 0,
  • "ratePeriodInSecond": 0,
  • "relativeToPublishRate": true
}

Get the subscription expiration time for the namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
0
0

Set subscription expiration time in minutes for namespace

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Expiration time in minutes for the specified namespace

integer <int32>

Responses

Request samples

Content type
application/json
0
0

The set of whether allow subscription types

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Response samples

Content type
application/json
[
  • "Exclusive"
]

Update set of whether allow share sub type

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
Request Body schema: application/json
required

Set of whether allow subscription types

Array
string
Enum: "Exclusive" "Shared" "Failover" "Key_Shared"

Responses

Request samples

Content type
application/json
[
  • "Exclusive"
]

Get the list of all the topics under a certain namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
query Parameters
mode
string
Default: "PERSISTENT"
Enum: "PERSISTENT" "NON_PERSISTENT" "ALL"

Responses

Response samples

Content type
application/json
[
  • "string"
]

Unload namespace

Unload an active namespace from the current broker serving it. Performing this operation will let the brokerremoves all producers, consumers, and connections using this namespace, and close all topics (includingtheir persistent store). During that operation, the namespace is marked as tentatively unavailable until thebroker completes the unloading action. This operation requires strictly super user privileges, since it wouldresult in non-persistent message loss and unexpected connection closure to the clients.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string

Responses

Unsubscribes the given subscription on all topics on a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
subscription
required
string
query Parameters
authoritative
boolean
Default: false

Responses

Clear backlog for all topics on a namespace bundle.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
bundle
required
string
query Parameters
authoritative
boolean
Default: false

Responses

Clear backlog for a given subscription on all topics on a namespace bundle.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
subscription
required
string
bundle
required
string
query Parameters
authoritative
boolean
Default: false

Responses

Split a namespace bundle

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
bundle
required
string
query Parameters
authoritative
boolean
Default: false
unload
boolean
Default: false
splitAlgorithmName
string

Responses

Unload a namespace bundle

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
bundle
required
string
query Parameters
authoritative
boolean
Default: false

Responses

Unsubscribes the given subscription on all topics on a namespace bundle.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
subscription
required
string
bundle
required
string
query Parameters
authoritative
boolean
Default: false

Responses

non-persistent topic

Get the list of non-persistent topics under a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

query Parameters
bundle
string

Specify the bundle name

Responses

Response samples

Content type
application/json
[
  • "string"
]

Get the list of partitioned topics under a namespace.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

Responses

Response samples

Content type
application/json
[
  • "string"
]

Get the list of non-persistent topics under a namespace bundle.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

bundle
required
string

Bundle range of a topic

Responses

Response samples

Content type
application/json
[
  • "string"
]

Delete a topic.

The topic cannot be deleted if delete is not forcefully and there's any active subscription or producer connected to the it. Force delete ignores connected clients and deletes topic by explicitly closing them.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

topic
required
string

Specify topic name

query Parameters
force
boolean
Default: false

Stop all producer/consumer/replicator and delete topic forcefully

authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

deleteSchema
boolean
Default: false

Delete the topic's schema storage

Responses

Create a non-partitioned topic.

This is the only REST endpoint from which non-partitioned topics could be created.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

topic
required
string

Specify topic name

query Parameters
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Request Body schema: application/json

Key value pair properties for the topic metadata

property name*
additional property
string

Responses

Request samples

Content type
application/json
{
  • "property1": "string",
  • "property2": "string"
}

Expiry messages on all subscriptions of topic.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

topic
required
string

Specify topic name

expireTimeInSeconds
required
integer <int32>
Default: 0

Expires beyond the specified number of seconds

query Parameters
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Responses

Get estimated backlog for offline topic.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

topic
required
string

Specify topic name

query Parameters
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Responses

Response samples

Content type
application/json
{
  • "brokerName": "string",
  • "cursorDetails": {
    },
  • "dataLedgerDetails": [
    ],
  • "messageBacklog": 0,
  • "statGeneratedAt": "2019-08-24T14:15:22Z",
  • "storageSize": 0,
  • "topicName": "string",
  • "totalMessages": 0
}

Get backlog quota map on a topic.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
topic
required
string
query Parameters
applied
boolean
Default: false
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

isGlobal
boolean
Default: false

Responses

Calculate backlog size by a message ID (in bytes).

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

topic
required
string

Specify topic name

query Parameters
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Responses

Get the status of a compaction operation for a topic.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

topic
required
string

Specify topic name

query Parameters
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Responses

Response samples

Content type
application/json
{
  • "lastError": "string",
  • "status": "NOT_RUN"
}

Trigger a compaction operation on a topic.

Authorizations:
Bearer
path Parameters
tenant
required
string

Specify the tenant

namespace
required
string

Specify the namespace

topic
required
string

Specify topic name

query Parameters
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Responses

Get compaction threshold configuration for specified topic.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
topic
required
string
query Parameters
applied
boolean
Default: false
isGlobal
boolean
Default: false
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Responses

Remove deduplication configuration for specified topic.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
topic
required
string
query Parameters
isGlobal
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

authoritative
boolean
Default: false

Responses

Get deduplication configuration of a topic.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
topic
required
string
query Parameters
applied
boolean
Default: false
isGlobal
boolean
Default: false
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Responses

Set deduplication enabled on a topic.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
topic
required
string
query Parameters
isGlobal
boolean
Default: false
authoritative
boolean
Default: false

Whether leader broker redirected this call to this broker. For internal use.

Request Body schema: application/json

DeduplicationEnabled policies for the specified topic

boolean

Responses

Request samples

Content type
application/json
true

Set delayed delivery messages config on a topic.

Authorizations:
Bearer
path Parameters
tenant
required
string
namespace
required
string
topic
required
string
query Parameters
isGlobal
boolean
Default: false
authoritative