You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by mm...@apache.org on 2018/12/02 04:38:29 UTC

[pulsar] branch asf-site updated: Updated site at revision 7ed15d0

This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 30e4885  Updated site at revision 7ed15d0
30e4885 is described below

commit 30e48852feaa6d89ebb4ba104dbb724fd7b2c1b3
Author: jenkins <bu...@apache.org>
AuthorDate: Sun Dec 2 04:38:20 2018 +0000

    Updated site at revision 7ed15d0
---
 content/api/admin/allclasses-frame.html            |  10 +
 content/api/admin/allclasses-noframe.html          |  10 +
 content/api/admin/index-all.html                   | 138 +++++++++++++
 .../org/apache/pulsar/client/admin/Functions.html  |  34 ++--
 .../admin/org/apache/pulsar/client/admin/Sink.html |  22 +-
 .../org/apache/pulsar/client/admin/Source.html     |  22 +-
 .../pulsar/common/policies/data/ErrorData.html     |   4 +-
 .../{ErrorData.html => ExceptionInformation.html}  |  86 ++------
 .../pulsar/common/policies/data/FailureDomain.html |   4 +-
 ...nstanceStats.FunctionInstanceStatsDataBase.html |   4 +-
 ...InstanceStatus.FunctionInstanceStatusData.html} | 184 +++++++++++------
 ... => FunctionStatus.FunctionInstanceStatus.html} | 128 ++++++------
 .../{SubscribeRate.html => FunctionStatus.html}    | 156 +++++++-------
 .../pulsar/common/policies/data/LocalPolicies.html |   4 +-
 .../SchemaAutoUpdateCompatibilityStrategy.html     |   4 +-
 ...SinkInstanceStatus.SinkInstanceStatusData.html} | 138 +++++++------
 ...ies.html => SinkStatus.SinkInstanceStatus.html} | 128 ++++++------
 .../data/{SubscribeRate.html => SinkStatus.html}   | 152 +++++++-------
 ...ceInstanceStatus.SourceInstanceStatusData.html} | 138 +++++++------
 ...html => SourceStatus.SourceInstanceStatus.html} |  96 +++++----
 .../data/{SubscribeRate.html => SourceStatus.html} | 156 +++++++-------
 .../pulsar/common/policies/data/SubscribeRate.html |   4 +-
 .../pulsar/common/policies/data/package-frame.html |  10 +
 .../common/policies/data/package-summary.html      |  48 ++++-
 .../pulsar/common/policies/data/package-tree.html  |  10 +
 content/api/admin/overview-tree.html               |  10 +
 content/api/client/allclasses-frame.html           |   7 +-
 content/api/client/allclasses-noframe.html         |   7 +-
 content/api/client/deprecated-list.html            |  37 ++--
 content/api/client/index-all.html                  | 145 +++++++++++---
 .../apache/pulsar/client/api/Authentication.html   |   1 +
 .../pulsar/client/api/AuthenticationFactory.html   |  65 +++++-
 .../apache/pulsar/client/api/MessageBuilder.html   |   6 +-
 .../org/apache/pulsar/client/api/PulsarClient.html |  18 +-
 .../apache/pulsar/client/api/ReaderListener.html   |   4 +-
 .../org/apache/pulsar/client/api/Schema.html       | 208 ++++++++++++++++++-
 .../client/api/SchemaSerializationException.html   |  16 +-
 .../pulsar/client/api/ServiceUrlProvider.html      |   4 +-
 .../apache/pulsar/client/api/package-frame.html    |   2 +
 .../apache/pulsar/client/api/package-summary.html  |  22 +-
 .../org/apache/pulsar/client/api/package-tree.html |  10 +-
 .../apache/pulsar/client/api/schema/Field.html}    |  94 +++------
 .../pulsar/client/api/schema/GenericRecord.html}   | 182 +++++++----------
 .../pulsar/client/api/schema/package-frame.html    |  23 +++
 .../pulsar/client/api/schema/package-summary.html  | 159 +++++++++++++++
 .../pulsar/client/api/schema/package-tree.html     | 138 +++++++++++++
 content/api/client/overview-frame.html             |   2 +-
 content/api/client/overview-summary.html           |   2 +-
 content/api/client/overview-tree.html              |  13 +-
 content/api/client/package-list                    |   2 +-
 content/api/client/serialized-form.html            |   5 +
 content/api/cpp/annotated.html                     |  39 ++--
 content/api/cpp/authentication_8h_source.html      |   2 +-
 content/api/cpp/classes.html                       |   9 +-
 .../cpp/classpulsar_1_1_auth_token-members.html    | 118 +++++++++++
 content/api/cpp/classpulsar_1_1_auth_token.html    | 223 +++++++++++++++++++++
 content/api/cpp/classpulsar_1_1_auth_token.png     | Bin 0 -> 574 bytes
 .../api/cpp/classpulsar_1_1_authentication.html    |   1 +
 content/api/cpp/classpulsar_1_1_authentication.png | Bin 837 -> 1032 bytes
 content/api/cpp/functions.html                     |   4 +
 content/api/cpp/functions_func.html                |   4 +
 content/api/cpp/hierarchy.html                     |  45 +++--
 content/api/cpp/namespacepulsar.html               |   5 +
 content/api/cpp/search/all_0.js                    |   3 +-
 content/api/cpp/search/all_2.js                    |   3 +-
 content/api/cpp/search/classes_0.js                |   3 +-
 content/api/cpp/search/functions_2.js              |   5 +-
 content/api/python/index.html                      | 125 +++++++++++-
 content/docs/en/next/adaptors-kafka.html           |   2 +-
 content/docs/en/next/adaptors-kafka/index.html     |   2 +-
 content/docs/en/next/adaptors-spark.html           |   2 +-
 content/docs/en/next/adaptors-spark/index.html     |   2 +-
 content/docs/en/next/adaptors-storm.html           |   2 +-
 content/docs/en/next/adaptors-storm/index.html     |   2 +-
 content/docs/en/next/admin-api-brokers.html        |   2 +-
 content/docs/en/next/admin-api-brokers/index.html  |   2 +-
 content/docs/en/next/admin-api-clusters.html       |   2 +-
 content/docs/en/next/admin-api-clusters/index.html |   2 +-
 content/docs/en/next/admin-api-namespaces.html     |   2 +-
 .../docs/en/next/admin-api-namespaces/index.html   |   2 +-
 .../en/next/admin-api-non-persistent-topics.html   |   2 +-
 .../admin-api-non-persistent-topics/index.html     |   2 +-
 content/docs/en/next/admin-api-overview.html       |   2 +-
 content/docs/en/next/admin-api-overview/index.html |   2 +-
 .../docs/en/next/admin-api-partitioned-topics.html |   2 +-
 .../next/admin-api-partitioned-topics/index.html   |   2 +-
 content/docs/en/next/admin-api-permissions.html    |   2 +-
 .../docs/en/next/admin-api-permissions/index.html  |   2 +-
 .../docs/en/next/admin-api-persistent-topics.html  |   2 +-
 .../en/next/admin-api-persistent-topics/index.html |   2 +-
 content/docs/en/next/admin-api-schemas.html        |   2 +-
 content/docs/en/next/admin-api-schemas/index.html  |   2 +-
 content/docs/en/next/admin-api-tenants.html        |   2 +-
 content/docs/en/next/admin-api-tenants/index.html  |   2 +-
 content/docs/en/next/administration-dashboard.html |   2 +-
 .../en/next/administration-dashboard/index.html    |   2 +-
 content/docs/en/next/administration-geo.html       |   2 +-
 content/docs/en/next/administration-geo/index.html |   2 +-
 .../en/next/administration-load-distribution.html  |   2 +-
 .../administration-load-distribution/index.html    |   2 +-
 content/docs/en/next/administration-proxy.html     |   2 +-
 .../docs/en/next/administration-proxy/index.html   |   2 +-
 content/docs/en/next/administration-stats.html     |   2 +-
 .../docs/en/next/administration-stats/index.html   |   2 +-
 content/docs/en/next/administration-zk-bk.html     |   2 +-
 .../docs/en/next/administration-zk-bk/index.html   |   2 +-
 content/docs/en/next/client-libraries-cpp.html     |   2 +-
 .../docs/en/next/client-libraries-cpp/index.html   |   2 +-
 content/docs/en/next/client-libraries-go.html      |   2 +-
 .../docs/en/next/client-libraries-go/index.html    |   2 +-
 content/docs/en/next/client-libraries-java.html    |   3 +-
 .../docs/en/next/client-libraries-java/index.html  |   3 +-
 content/docs/en/next/client-libraries-python.html  |   2 +-
 .../en/next/client-libraries-python/index.html     |   2 +-
 .../docs/en/next/client-libraries-websocket.html   |   2 +-
 .../en/next/client-libraries-websocket/index.html  |   2 +-
 content/docs/en/next/client-libraries.html         |   2 +-
 content/docs/en/next/client-libraries/index.html   |   2 +-
 .../en/next/concepts-architecture-overview.html    |   2 +-
 .../next/concepts-architecture-overview/index.html |   2 +-
 content/docs/en/next/concepts-authentication.html  |   2 +-
 .../en/next/concepts-authentication/index.html     |   2 +-
 content/docs/en/next/concepts-clients.html         |   2 +-
 content/docs/en/next/concepts-clients/index.html   |   2 +-
 content/docs/en/next/concepts-messaging.html       |   2 +-
 content/docs/en/next/concepts-messaging/index.html |   2 +-
 content/docs/en/next/concepts-multi-tenancy.html   |   2 +-
 .../docs/en/next/concepts-multi-tenancy/index.html |   2 +-
 content/docs/en/next/concepts-overview.html        |   2 +-
 content/docs/en/next/concepts-overview/index.html  |   2 +-
 content/docs/en/next/concepts-replication.html     |   2 +-
 .../docs/en/next/concepts-replication/index.html   |   2 +-
 content/docs/en/next/concepts-schema-registry.html |   2 +-
 .../en/next/concepts-schema-registry/index.html    |   2 +-
 content/docs/en/next/concepts-tiered-storage.html  |   2 +-
 .../en/next/concepts-tiered-storage/index.html     |   2 +-
 .../docs/en/next/concepts-topic-compaction.html    |   2 +-
 .../en/next/concepts-topic-compaction/index.html   |   2 +-
 content/docs/en/next/cookbooks-compaction.html     |   2 +-
 .../docs/en/next/cookbooks-compaction/index.html   |   2 +-
 content/docs/en/next/cookbooks-deduplication.html  |   2 +-
 .../en/next/cookbooks-deduplication/index.html     |   2 +-
 content/docs/en/next/cookbooks-encryption.html     |   2 +-
 .../docs/en/next/cookbooks-encryption/index.html   |   2 +-
 content/docs/en/next/cookbooks-message-queue.html  |   2 +-
 .../en/next/cookbooks-message-queue/index.html     |   2 +-
 content/docs/en/next/cookbooks-non-persistent.html |   2 +-
 .../en/next/cookbooks-non-persistent/index.html    |   2 +-
 content/docs/en/next/cookbooks-partitioned.html    |   2 +-
 .../docs/en/next/cookbooks-partitioned/index.html  |   2 +-
 .../docs/en/next/cookbooks-retention-expiry.html   |   2 +-
 .../en/next/cookbooks-retention-expiry/index.html  |   2 +-
 content/docs/en/next/cookbooks-tiered-storage.html |   2 +-
 .../en/next/cookbooks-tiered-storage/index.html    |   2 +-
 content/docs/en/next/deploy-aws.html               |   2 +-
 content/docs/en/next/deploy-aws/index.html         |   2 +-
 .../en/next/deploy-bare-metal-multi-cluster.html   |   2 +-
 .../deploy-bare-metal-multi-cluster/index.html     |   2 +-
 content/docs/en/next/deploy-bare-metal.html        |   2 +-
 content/docs/en/next/deploy-bare-metal/index.html  |   2 +-
 content/docs/en/next/deploy-dcos.html              |   2 +-
 content/docs/en/next/deploy-dcos/index.html        |   2 +-
 content/docs/en/next/deploy-kubernetes.html        |   2 +-
 content/docs/en/next/deploy-kubernetes/index.html  |   2 +-
 content/docs/en/next/deploy-monitoring.html        |   2 +-
 content/docs/en/next/deploy-monitoring/index.html  |   2 +-
 content/docs/en/next/develop-binary-protocol.html  |   2 +-
 .../en/next/develop-binary-protocol/index.html     |   2 +-
 content/docs/en/next/develop-cpp.html              |   2 +-
 content/docs/en/next/develop-cpp/index.html        |   2 +-
 content/docs/en/next/develop-load-manager.html     |   2 +-
 .../docs/en/next/develop-load-manager/index.html   |   2 +-
 content/docs/en/next/develop-schema.html           |   2 +-
 content/docs/en/next/develop-schema/index.html     |   2 +-
 content/docs/en/next/develop-tools.html            |   2 +-
 content/docs/en/next/develop-tools/index.html      |   2 +-
 content/docs/en/next/functions-api.html            |   2 +-
 content/docs/en/next/functions-api/index.html      |   2 +-
 content/docs/en/next/functions-deploying.html      |   2 +-
 .../docs/en/next/functions-deploying/index.html    |   2 +-
 content/docs/en/next/functions-guarantees.html     |   2 +-
 .../docs/en/next/functions-guarantees/index.html   |   2 +-
 content/docs/en/next/functions-metrics.html        |   2 +-
 content/docs/en/next/functions-metrics/index.html  |   2 +-
 content/docs/en/next/functions-overview.html       |   2 +-
 content/docs/en/next/functions-overview/index.html |   2 +-
 content/docs/en/next/functions-quickstart.html     |   2 +-
 .../docs/en/next/functions-quickstart/index.html   |   2 +-
 content/docs/en/next/functions-state.html          |   2 +-
 content/docs/en/next/functions-state/index.html    |   2 +-
 content/docs/en/next/io-cdc.html                   |   2 +-
 content/docs/en/next/io-cdc/index.html             |   2 +-
 content/docs/en/next/io-connectors.html            |   2 +-
 content/docs/en/next/io-connectors/index.html      |   2 +-
 content/docs/en/next/io-develop.html               |   2 +-
 content/docs/en/next/io-develop/index.html         |   2 +-
 content/docs/en/next/io-managing.html              |   2 +-
 content/docs/en/next/io-managing/index.html        |   2 +-
 content/docs/en/next/io-overview.html              |   2 +-
 content/docs/en/next/io-overview/index.html        |   2 +-
 content/docs/en/next/io-quickstart.html            |   2 +-
 content/docs/en/next/io-quickstart/index.html      |   2 +-
 content/docs/en/next/pulsar-2.0.html               |   2 +-
 content/docs/en/next/pulsar-2.0/index.html         |   2 +-
 content/docs/en/next/pulsar-admin.html             |   2 +-
 content/docs/en/next/pulsar-admin/index.html       |   2 +-
 content/docs/en/next/reference-cli-tools.html      |   2 +-
 .../docs/en/next/reference-cli-tools/index.html    |   2 +-
 content/docs/en/next/reference-configuration.html  |   6 +-
 .../en/next/reference-configuration/index.html     |   6 +-
 content/docs/en/next/reference-terminology.html    |   2 +-
 .../docs/en/next/reference-terminology/index.html  |   2 +-
 content/docs/en/next/security-athenz.html          |   4 +-
 content/docs/en/next/security-athenz/index.html    |   4 +-
 content/docs/en/next/security-authorization.html   |   2 +-
 .../docs/en/next/security-authorization/index.html |   2 +-
 content/docs/en/next/security-encryption.html      |   2 +-
 .../docs/en/next/security-encryption/index.html    |   2 +-
 content/docs/en/next/security-extending.html       |   2 +-
 content/docs/en/next/security-extending/index.html |   2 +-
 content/docs/en/next/security-overview.html        |   2 +-
 content/docs/en/next/security-overview/index.html  |   2 +-
 .../docs/en/next/security-tls-authentication.html  |   4 +-
 .../en/next/security-tls-authentication/index.html |   4 +-
 content/docs/en/next/security-tls-transport.html   |   2 +-
 .../docs/en/next/security-tls-transport/index.html |   2 +-
 content/docs/en/next/security-token-admin.html     | 222 ++++++++++++++++++++
 .../docs/en/next/security-token-admin/index.html   | 222 ++++++++++++++++++++
 content/docs/en/next/security-token-client.html    | 195 ++++++++++++++++++
 .../docs/en/next/security-token-client/index.html  | 195 ++++++++++++++++++
 .../en/next/sql-deployment-configurations.html     |   2 +-
 .../next/sql-deployment-configurations/index.html  |   2 +-
 content/docs/en/next/sql-getting-started.html      |   2 +-
 .../docs/en/next/sql-getting-started/index.html    |   2 +-
 content/docs/en/next/sql-overview.html             |   2 +-
 content/docs/en/next/sql-overview/index.html       |   2 +-
 content/docs/en/next/standalone-docker.html        |   2 +-
 content/docs/en/next/standalone-docker/index.html  |   2 +-
 content/docs/en/next/standalone.html               |   2 +-
 content/docs/en/next/standalone/index.html         |   2 +-
 content/docs/fr/next/client-libraries-java.html    |   1 -
 .../docs/fr/next/client-libraries-java/index.html  |   1 -
 content/docs/fr/next/reference-configuration.html  |   4 +
 .../fr/next/reference-configuration/index.html     |   4 +
 content/docs/fr/next/security-athenz.html          |   2 +-
 content/docs/fr/next/security-athenz/index.html    |   2 +-
 .../docs/fr/next/security-tls-authentication.html  |   2 +-
 .../fr/next/security-tls-authentication/index.html |   2 +-
 content/docs/fr/next/security-token-admin.html     | 214 ++++++++++++++++++++
 .../docs/fr/next/security-token-admin/index.html   | 214 ++++++++++++++++++++
 content/docs/fr/next/security-token-client.html    | 199 ++++++++++++++++++
 .../docs/fr/next/security-token-client/index.html  | 199 ++++++++++++++++++
 content/docs/ja/next/client-libraries-java.html    |   1 -
 .../docs/ja/next/client-libraries-java/index.html  |   1 -
 content/docs/ja/next/reference-configuration.html  |   4 +
 .../ja/next/reference-configuration/index.html     |   4 +
 content/docs/ja/next/security-athenz.html          |   2 +-
 content/docs/ja/next/security-athenz/index.html    |   2 +-
 .../docs/ja/next/security-tls-authentication.html  |   2 +-
 .../ja/next/security-tls-authentication/index.html |   2 +-
 content/docs/ja/next/security-token-admin.html     | 214 ++++++++++++++++++++
 .../docs/ja/next/security-token-admin/index.html   | 214 ++++++++++++++++++++
 content/docs/ja/next/security-token-client.html    | 199 ++++++++++++++++++
 .../docs/ja/next/security-token-client/index.html  | 199 ++++++++++++++++++
 .../docs/latest/adaptors/PulsarSpark/index.html    |   8 +-
 .../docs/latest/adaptors/PulsarStorm/index.html    |   6 +-
 content/docs/latest/admin-api/overview/index.html  |  10 +-
 content/docs/latest/clients/Cpp/index.html         |   8 +-
 content/docs/latest/clients/Java/index.html        |  14 +-
 content/docs/latest/clients/Python/index.html      |  10 +-
 content/docs/latest/clients/WebSocket/index.html   |   8 +-
 content/docs/latest/clients/go/index.html          |   6 +-
 .../docs/latest/cookbooks/Encryption/index.html    |   6 +-
 .../latest/cookbooks/PartitionedTopics/index.html  |  14 +-
 .../latest/cookbooks/RetentionExpiry/index.html    |  14 +-
 .../docs/latest/cookbooks/compaction/index.html    |   6 +-
 .../cookbooks/message-deduplication/index.html     |  10 +-
 .../docs/latest/cookbooks/message-queue/index.html |  14 +-
 .../latest/cookbooks/tiered-storage/index.html     |   4 +-
 .../docs/latest/deployment/Kubernetes/index.html   |   4 +-
 .../docs/latest/deployment/aws-cluster/index.html  |   4 +-
 content/docs/latest/deployment/cluster/index.html  |   4 +-
 content/docs/latest/deployment/instance/index.html |   4 +-
 .../ConceptsAndArchitecture/index.html             |   4 +-
 .../latest/getting-started/LocalCluster/index.html |   4 +-
 .../latest/getting-started/Pulsar-2.0/index.html   |   2 +-
 .../docs/latest/getting-started/docker/index.html  |   4 +-
 .../docs/latest/project/BinaryProtocol/index.html  |   4 +-
 content/docs/latest/project/CompileCpp/index.html  |   8 +-
 .../docs/latest/project/SimulationTools/index.html |   2 +-
 .../docs/latest/project/schema-storage/index.html  |   4 +-
 content/docs/latest/reference/CliTools/index.html  |  18 +-
 .../docs/latest/security/authorization/index.html  |  10 +-
 content/docs/latest/security/encryption/index.html |   6 +-
 content/docs/next/security-token-admin.html        |  13 ++
 content/docs/next/security-token-admin/index.html  |  13 ++
 content/docs/next/security-token-client.html       |  13 ++
 content/docs/next/security-token-client/index.html |  13 ++
 content/docs/zh-CN/next/client-libraries-java.html |   1 -
 .../zh-CN/next/client-libraries-java/index.html    |   1 -
 .../docs/zh-CN/next/reference-configuration.html   |   4 +
 .../zh-CN/next/reference-configuration/index.html  |   4 +
 content/docs/zh-CN/next/security-athenz.html       |   2 +-
 content/docs/zh-CN/next/security-athenz/index.html |   2 +-
 .../zh-CN/next/security-tls-authentication.html    |   2 +-
 .../next/security-tls-authentication/index.html    |   2 +-
 content/docs/zh-CN/next/security-token-admin.html  | 214 ++++++++++++++++++++
 .../zh-CN/next/security-token-admin/index.html     | 214 ++++++++++++++++++++
 content/docs/zh-CN/next/security-token-client.html | 199 ++++++++++++++++++
 .../zh-CN/next/security-token-client/index.html    | 199 ++++++++++++++++++
 content/en/events.html                             |   2 +-
 content/en/events/index.html                       |   2 +-
 content/events.html                                |   2 +-
 content/events/index.html                          |   2 +-
 content/fr/events.html                             |   2 +-
 content/fr/events/index.html                       |   2 +-
 content/ja/adaptors/PulsarSpark/index.html         |   8 +-
 content/ja/adaptors/PulsarStorm/index.html         |   6 +-
 content/ja/admin/AdminInterface/index.html         |  12 +-
 content/ja/admin/Authz/index.html                  |  12 +-
 content/ja/admin/ClustersBrokers/index.html        |   6 +-
 content/ja/admin/PropertiesNamespaces/index.html   |   6 +-
 content/ja/advanced/PartitionedTopics/index.html   |  12 +-
 content/ja/advanced/RetentionExpiry/index.html     |  12 +-
 content/ja/clients/Cpp/index.html                  |   6 +-
 content/ja/clients/Java/index.html                 |   8 +-
 content/ja/clients/Python/index.html               |   8 +-
 content/ja/clients/WebSocket/index.html            |   8 +-
 content/ja/deployment/InstanceSetup/index.html     |   6 +-
 content/ja/deployment/Kubernetes/index.html        |   4 +-
 content/ja/events.html                             |   2 +-
 content/ja/events/index.html                       |   2 +-
 .../ConceptsAndArchitecture/index.html             |   2 +-
 content/ja/getting-started/LocalCluster/index.html |   4 +-
 content/ja/project/BinaryProtocol/index.html       |   4 +-
 content/ja/project/SimulationTools/index.html      |   2 +-
 content/ja/reference/CliTools/index.html           |  18 +-
 content/sitemap.xml                                |   2 +
 content/swagger/swagger.json                       |  42 ++--
 content/zh-CN/events.html                          |   2 +-
 content/zh-CN/events/index.html                    |   2 +-
 341 files changed, 6230 insertions(+), 1431 deletions(-)

diff --git a/content/api/admin/allclasses-frame.html b/content/api/admin/allclasses-frame.html
index dad3381..729405f 100644
--- a/content/api/admin/allclasses-frame.html
+++ b/content/api/admin/allclasses-frame.html
@@ -34,12 +34,16 @@
 <li><a href="org/apache/pulsar/common/policies/data/ConsumerStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">ConsumerStats</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">DispatchRate</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">ErrorData</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">ExceptionInformation</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FailureDomain</a></li>
 <li><a href="org/apache/pulsar/client/admin/Functions.html" title="interface in org.apache.pulsar.client.admin" target="classFrame"><span class="interfaceName">Functions</span></a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStats</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStats.FunctionInstanceStats</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStatus.FunctionInstanceStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">LocalPolicies</a></li>
 <li><a href="org/apache/pulsar/client/admin/LongRunningProcessStatus.html" title="class in org.apache.pulsar.client.admin" target="classFrame">LongRunningProcessStatus</a></li>
 <li><a href="org/apache/pulsar/client/admin/LongRunningProcessStatus.Status.html" title="enum in org.apache.pulsar.client.admin" target="classFrame">LongRunningProcessStatus.Status</a></li>
@@ -88,7 +92,13 @@
 <li><a href="org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data" target="classFrame">SchemaAutoUpdateCompatibilityStrategy</a></li>
 <li><a href="org/apache/pulsar/client/admin/Schemas.html" title="interface in org.apache.pulsar.client.admin" target="classFrame"><span class="interfaceName">Schemas</span></a></li>
 <li><a href="org/apache/pulsar/client/admin/Sink.html" title="interface in org.apache.pulsar.client.admin" target="classFrame"><span class="interfaceName">Sink</span></a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SinkStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SinkStatus.SinkInstanceStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></li>
 <li><a href="org/apache/pulsar/client/admin/Source.html" title="interface in org.apache.pulsar.client.admin" target="classFrame"><span class="interfaceName">Source</span></a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SourceStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SourceStatus.SourceInstanceStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SubscribeRate</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data" target="classFrame">SubscriptionAuthMode</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/SubscriptionStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SubscriptionStats</a></li>
diff --git a/content/api/admin/allclasses-noframe.html b/content/api/admin/allclasses-noframe.html
index b0b3087..d1427c7 100644
--- a/content/api/admin/allclasses-noframe.html
+++ b/content/api/admin/allclasses-noframe.html
@@ -34,12 +34,16 @@
 <li><a href="org/apache/pulsar/common/policies/data/ConsumerStats.html" title="class in org.apache.pulsar.common.policies.data">ConsumerStats</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data">DispatchRate</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data">ErrorData</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data">FailureDomain</a></li>
 <li><a href="org/apache/pulsar/client/admin/Functions.html" title="interface in org.apache.pulsar.client.admin"><span class="interfaceName">Functions</span></a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data">LocalPolicies</a></li>
 <li><a href="org/apache/pulsar/client/admin/LongRunningProcessStatus.html" title="class in org.apache.pulsar.client.admin">LongRunningProcessStatus</a></li>
 <li><a href="org/apache/pulsar/client/admin/LongRunningProcessStatus.Status.html" title="enum in org.apache.pulsar.client.admin">LongRunningProcessStatus.Status</a></li>
@@ -88,7 +92,13 @@
 <li><a href="org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data">SchemaAutoUpdateCompatibilityStrategy</a></li>
 <li><a href="org/apache/pulsar/client/admin/Schemas.html" title="interface in org.apache.pulsar.client.admin"><span class="interfaceName">Schemas</span></a></li>
 <li><a href="org/apache/pulsar/client/admin/Sink.html" title="interface in org.apache.pulsar.client.admin"><span class="interfaceName">Sink</span></a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></li>
 <li><a href="org/apache/pulsar/client/admin/Source.html" title="interface in org.apache.pulsar.client.admin"><span class="interfaceName">Source</span></a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a></li>
+<li><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data">SubscribeRate</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data">SubscriptionAuthMode</a></li>
 <li><a href="org/apache/pulsar/common/policies/data/SubscriptionStats.html" title="class in org.apache.pulsar.common.policies.data">SubscriptionStats</a></li>
diff --git a/content/api/admin/index-all.html b/content/api/admin/index-all.html
index 810b6a4..1426d6d 100644
--- a/content/api/admin/index-all.html
+++ b/content/api/admin/index-all.html
@@ -102,6 +102,12 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStats.html#addInstance-org.apache.pulsar.common.policies.data.FunctionStats.FunctionInstanceStats-">addInstance(FunctionStats.FunctionInstanceStats)</a></span> - Method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html#addInstance-org.apache.pulsar.common.policies.data.FunctionStatus.FunctionInstanceStatus-">addInstance(FunctionStatus.FunctionInstanceStatus)</a></span> - Method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.html#addInstance-org.apache.pulsar.common.policies.data.SinkStatus.SinkInstanceStatus-">addInstance(SinkStatus.SinkInstanceStatus)</a></span> - Method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.html#addInstance-org.apache.pulsar.common.policies.data.SourceStatus.SourceInstanceStatus-">addInstance(SourceStatus.SourceInstanceStatus)</a></span> - Method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/PersistentOfflineTopicStats.html#addLedgerDetails-long-long-long-long-">addLedgerDetails(long, long, long, long)</a></span> - Method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/PersistentOfflineTopicStats.html" title="class in org.apache.pulsar.common.policies.data">PersistentOfflineTopicStats</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/admin/PulsarAdminBuilder.html#allowTlsInsecureConnection-boolean-">allowTlsInsecureConnection(boolean)</a></span> - Method in interface org.apache.pulsar.client.admin.<a href="org/apache/pulsar/client/admin/PulsarAdminBuilder.html" title="interface in org.apache.pulsar.client.admin">PulsarAdminBuilder</a></dt>
@@ -156,6 +162,8 @@
 <dd>
 <div class="block">Number of available message permits for the consumer</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#averageLatency">averageLatency</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData< [...]
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/PublisherStats.html#averageMsgSize">averageMsgSize</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/PublisherStats.html" title="class in org.apache.pulsar.common.policies.data">PublisherStats</a></dt>
 <dd>
 <div class="block">Average message size published by this publisher</div>
@@ -490,6 +498,12 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStats.html#decode-java.lang.String-">decode(String)</a></span> - Static method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html#decode-java.lang.String-">decode(String)</a></span> - Static method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.html#decode-java.lang.String-">decode(String)</a></span> - Static method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.html#decode-java.lang.String-">decode(String)</a></span> - Static method in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/Policies.html#deduplicationEnabled">deduplicationEnabled</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/Policies.html" title="class in org.apache.pulsar.common.policies.data">Policies</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/TopicStats.html#deduplicationStatus">deduplicationStatus</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/TopicStats.html" title="class in org.apache.pulsar.common.policies.data">TopicStats</a></dt>
@@ -655,12 +669,22 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/impl/NamespaceIsolationPolicyImpl.html#equals-java.lang.Object-">equals(Object)</a></span> - Method in class org.apache.pulsar.common.policies.impl.<a href="org/apache/pulsar/common/policies/impl/NamespaceIsolationPolicyImpl.html" title="class in org.apache.pulsar.common.policies.impl">NamespaceIsolationPolicyImpl</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#error">error</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#error">error</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#error">error</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ErrorData</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/ErrorData.html#ErrorData--">ErrorData()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data">ErrorData</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/ErrorData.html#ErrorData-java.lang.String-">ErrorData(String)</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data">ErrorData</a></dt>
 <dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ExceptionInformation</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/ExceptionInformation.html#ExceptionInformation--">ExceptionInformation()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/admin/Topics.html#expireMessages-java.lang.String-java.lang.String-long-">expireMessages(String, String, long)</a></span> - Method in interface org.apache.pulsar.client.admin.<a href="org/apache/pulsar/client/admin/Topics.html" title="interface in org.apache.pulsar.client.admin">Topics</a></dt>
 <dd>
 <div class="block">Expire all messages older than given N (expireTimeInSeconds) seconds for a given subscription</div>
@@ -723,6 +747,10 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#FunctionInstanceStatsDataBase--">FunctionInstanceStatsDataBase()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionIns [...]
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html#FunctionInstanceStatus--">FunctionInstanceStatus()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#FunctionInstanceStatusData--">FunctionInstanceStatusData()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceSt [...]
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/pulsar/client/admin/Functions.html" title="interface in org.apache.pulsar.client.admin"><span class="typeNameLink">Functions</span></a> - Interface in <a href="org/apache/pulsar/client/admin/package-summary.html">org.apache.pulsar.client.admin</a></dt>
 <dd>
 <div class="block">Admin interface for function management.</div>
@@ -739,6 +767,14 @@
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
 <dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html#FunctionStatus--">FunctionStatus()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus.FunctionInstanceStatus</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a name="I:G">
 <!--   -->
@@ -1358,8 +1394,20 @@
 <dd>
 <div class="block">Instance Id of function instance</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html#instanceId">instanceId</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html#instanceId">instanceId</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html#instanceId">instanceId</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStats.html#instances">instances</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html#instances">instances</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.html#instances">instances</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.html#instances">instances</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/NamespaceOwnershipStatus.html#is_active">is_active</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/NamespaceOwnershipStatus.html" title="class in org.apache.pulsar.common.policies.data">NamespaceOwnershipStatus</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/NamespaceOwnershipStatus.html#is_controlled">is_controlled</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/NamespaceOwnershipStatus.html" title="class in org.apache.pulsar.common.policies.data">NamespaceOwnershipStatus</a></dt>
@@ -1416,6 +1464,12 @@
 <dd>
 <div class="block">Timestamp of when the function was last invoked by any instance</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#lastInvocationTime">lastInvocationTime</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceSta [...]
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#lastInvocationTime">lastInvocationTime</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#lastInvocationTime">lastInvocationTime</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/PersistentTopicInternalStats.html#lastLedgerCreatedTimestamp">lastLedgerCreatedTimestamp</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/PersistentTopicInternalStats.html" title="class in org.apache.pulsar.common.policies.data">PersistentTopicInternalStats</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/PersistentTopicInternalStats.html#lastLedgerCreationFailureTimestamp">lastLedgerCreationFailureTimestamp</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/PersistentTopicInternalStats.html" title="class in org.apache.pulsar.common.policies.data">PersistentTopicInternalStats</a></dt>
@@ -1424,6 +1478,14 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/Policies.html#latency_stats_sample_rate">latency_stats_sample_rate</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/Policies.html" title="class in org.apache.pulsar.common.policies.data">Policies</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#latestSystemExceptions">latestSystemExceptions</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionIns [...]
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#latestSystemExceptions">latestSystemExceptions</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#latestSystemExceptions">latestSystemExceptions</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#latestUserExceptions">latestUserExceptions</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanc [...]
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/PersistentOfflineTopicStats.LedgerDetails.html#LedgerDetails-long-long-long-long-">LedgerDetails(long, long, long, long)</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/PersistentOfflineTopicStats.LedgerDetails.html" title="class in org.apache.pulsar.common.policies.data">PersistentOfflineTopicStats.LedgerDetails</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/PersistentOfflineTopicStats.LedgerDetails.html#ledgerId">ledgerId</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/PersistentOfflineTopicStats.LedgerDetails.html" title="class in org.apache.pulsar.common.policies.data">PersistentOfflineTopicStats.LedgerDetails</a></dt>
@@ -1681,6 +1743,40 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/BundlesData.html#numBundles">numBundles</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/BundlesData.html" title="class in org.apache.pulsar.common.policies.data">BundlesData</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html#numInstances">numInstances</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.html#numInstances">numInstances</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.html#numInstances">numInstances</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numReceived">numReceived</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#numReceived">numReceived</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#numReceived">numReceived</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numRestarts">numRestarts</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#numRestarts">numRestarts</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#numRestarts">numRestarts</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.html#numRunning">numRunning</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.html#numRunning">numRunning</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.html#numRunning">numRunning</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numSuccessfullyProcessed">numSuccessfullyProcessed</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.Functio [...]
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numSystemExceptions">numSystemExceptions</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceS [...]
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#numSystemExceptions">numSystemExceptions</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#numSystemExceptions">numSystemExceptions</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numUserExceptions">numUserExceptions</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatu [...]
+<dd>&nbsp;</dd>
 </dl>
 <a name="I:O">
 <!--   -->
@@ -2051,6 +2147,12 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/admin/PulsarAdmin.html#root">root</a></span> - Variable in class org.apache.pulsar.client.admin.<a href="org/apache/pulsar/client/admin/PulsarAdmin.html" title="class in org.apache.pulsar.client.admin">PulsarAdmin</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#running">running</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#running">running</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#running">running</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a name="I:S">
 <!--   -->
@@ -2270,6 +2372,18 @@
 <dd>
 <div class="block">Admin interface for Sink management.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html#SinkInstanceStatus--">SinkInstanceStatus()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#SinkInstanceStatusData--">SinkInstanceStatusData()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.html#SinkStatus--">SinkStatus()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus.SinkInstanceStatus</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/PersistentOfflineTopicStats.LedgerDetails.html#size">size</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/PersistentOfflineTopicStats.LedgerDetails.html" title="class in org.apache.pulsar.common.policies.data">PersistentOfflineTopicStats.LedgerDetails</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/PersistentTopicInternalStats.LedgerInfo.html#size">size</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/PersistentTopicInternalStats.LedgerInfo.html" title="class in org.apache.pulsar.common.policies.data">PersistentTopicInternalStats.LedgerInfo</a></dt>
@@ -2296,6 +2410,18 @@
 <dd>
 <div class="block">Admin interface for Source management.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html#SourceInstanceStatus--">SourceInstanceStatus()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#SourceInstanceStatusData--">SourceInstanceStatusData()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceS [...]
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.html#SourceStatus--">SourceStatus()</a></span> - Constructor for class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus.SourceInstanceStatus</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
+<dt><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</span></a> - Class in <a href="org/apache/pulsar/common/policies/data/package-summary.html">org.apache.pulsar.common.policies.data</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/admin/Namespaces.html#splitNamespaceBundle-java.lang.String-java.lang.String-boolean-">splitNamespaceBundle(String, String, boolean)</a></span> - Method in interface org.apache.pulsar.client.admin.<a href="org/apache/pulsar/client/admin/Namespaces.html" title="interface in org.apache.pulsar.client.admin">Namespaces</a></dt>
 <dd>
 <div class="block">Split namespace bundle</div>
@@ -2310,6 +2436,12 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/admin/LongRunningProcessStatus.html#status">status</a></span> - Variable in class org.apache.pulsar.client.admin.<a href="org/apache/pulsar/client/admin/LongRunningProcessStatus.html" title="class in org.apache.pulsar.client.admin">LongRunningProcessStatus</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html#status">status</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html#status">status</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html#status">status</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/admin/Functions.html#stopFunction-java.lang.String-java.lang.String-java.lang.String-int-">stopFunction(String, String, String, int)</a></span> - Method in interface org.apache.pulsar.client.admin.<a href="org/apache/pulsar/client/admin/Functions.html" title="interface in org.apache.pulsar.client.admin">Functions</a></dt>
 <dd>
 <div class="block">Stop function instance</div>
@@ -2711,6 +2843,12 @@ the order they are declared.</div>
 <dd>
 <div class="block">Admin interface for worker stats management.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#workerId">workerId</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#workerId">workerId</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#workerId">workerId</a></span> - Variable in class org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:U">U</a>&nbsp;<a href="#I:V">V</a>&nbs [...]
 <!-- ======= START OF BOTTOM NAVBAR ====== -->
diff --git a/content/api/admin/org/apache/pulsar/client/admin/Functions.html b/content/api/admin/org/apache/pulsar/client/admin/Functions.html
index 4c55e61..7eae350 100644
--- a/content/api/admin/org/apache/pulsar/client/admin/Functions.html
+++ b/content/api/admin/org/apache/pulsar/client/admin/Functions.html
@@ -171,7 +171,7 @@ var activeTableTab = "activeTableTab";
 </td>
 </tr>
 <tr id="i7" class="rowColor">
-<td class="colFirst"><code>String</code></td>
+<td class="colFirst"><code>FunctionState</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/admin/Functions.html#getFunctionState-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">getFunctionState</a></span>(String&nbsp;tenant,
                 String&nbsp;namespace,
                 String&nbsp;function,
@@ -197,7 +197,7 @@ var activeTableTab = "activeTableTab";
 </td>
 </tr>
 <tr id="i10" class="altColor">
-<td class="colFirst"><code>FunctionStatusList</code></td>
+<td class="colFirst"><code><a href="../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/admin/Functions.html#getFunctionStatus-java.lang.String-java.lang.String-java.lang.String-">getFunctionStatus</a></span>(String&nbsp;tenant,
                  String&nbsp;namespace,
                  String&nbsp;function)</code>
@@ -205,7 +205,7 @@ var activeTableTab = "activeTableTab";
 </td>
 </tr>
 <tr id="i11" class="rowColor">
-<td class="colFirst"><code>FunctionStatus</code></td>
+<td class="colFirst"><code><a href="../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/admin/Functions.html#getFunctionStatus-java.lang.String-java.lang.String-java.lang.String-int-">getFunctionStatus</a></span>(String&nbsp;tenant,
                  String&nbsp;namespace,
                  String&nbsp;function,
@@ -484,10 +484,10 @@ var activeTableTab = "activeTableTab";
 <ul class="blockList">
 <li class="blockList">
 <h4>getFunctionStatus</h4>
-<pre>FunctionStatusList&nbsp;getFunctionStatus(String&nbsp;tenant,
-                                     String&nbsp;namespace,
-                                     String&nbsp;function)
-                              throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
+<pre><a href="../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a>&nbsp;getFunctionStatus(String&nbsp;tenant,
+                                 String&nbsp;namespace,
+                                 String&nbsp;function)
+                          throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
 <div class="block">Gets the current status of a function.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -505,11 +505,11 @@ var activeTableTab = "activeTableTab";
 <ul class="blockList">
 <li class="blockList">
 <h4>getFunctionStatus</h4>
-<pre>FunctionStatus&nbsp;getFunctionStatus(String&nbsp;tenant,
-                                 String&nbsp;namespace,
-                                 String&nbsp;function,
-                                 int&nbsp;id)
-                          throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
+<pre><a href="../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a>&nbsp;getFunctionStatus(String&nbsp;tenant,
+                                                                                   String&nbsp;namespace,
+                                                                                   String&nbsp;function,
+                                                                                   int&nbsp;id)
+                                                                            throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
 <div class="block">Gets the current status of a function instance.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -772,11 +772,11 @@ var activeTableTab = "activeTableTab";
 <ul class="blockListLast">
 <li class="blockList">
 <h4>getFunctionState</h4>
-<pre>String&nbsp;getFunctionState(String&nbsp;tenant,
-                        String&nbsp;namespace,
-                        String&nbsp;function,
-                        String&nbsp;key)
-                 throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
+<pre>FunctionState&nbsp;getFunctionState(String&nbsp;tenant,
+                               String&nbsp;namespace,
+                               String&nbsp;function,
+                               String&nbsp;key)
+                        throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
 <div class="block">Fetch the current state associated with a Pulsar Function.
  <p>
  Response Example:
diff --git a/content/api/admin/org/apache/pulsar/client/admin/Sink.html b/content/api/admin/org/apache/pulsar/client/admin/Sink.html
index 79a6e36..120398d 100644
--- a/content/api/admin/org/apache/pulsar/client/admin/Sink.html
+++ b/content/api/admin/org/apache/pulsar/client/admin/Sink.html
@@ -157,7 +157,7 @@ var activeTableTab = "activeTableTab";
 </td>
 </tr>
 <tr id="i5" class="rowColor">
-<td class="colFirst"><code>FunctionStatusList</code></td>
+<td class="colFirst"><code><a href="../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/admin/Sink.html#getSinkStatus-java.lang.String-java.lang.String-java.lang.String-">getSinkStatus</a></span>(String&nbsp;tenant,
              String&nbsp;namespace,
              String&nbsp;sink)</code>
@@ -165,7 +165,7 @@ var activeTableTab = "activeTableTab";
 </td>
 </tr>
 <tr id="i6" class="altColor">
-<td class="colFirst"><code>FunctionStatus</code></td>
+<td class="colFirst"><code><a href="../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/admin/Sink.html#getSinkStatus-java.lang.String-java.lang.String-java.lang.String-int-">getSinkStatus</a></span>(String&nbsp;tenant,
              String&nbsp;namespace,
              String&nbsp;sink,
@@ -421,10 +421,10 @@ var activeTableTab = "activeTableTab";
 <ul class="blockList">
 <li class="blockList">
 <h4>getSinkStatus</h4>
-<pre>FunctionStatusList&nbsp;getSinkStatus(String&nbsp;tenant,
-                                 String&nbsp;namespace,
-                                 String&nbsp;sink)
-                          throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
+<pre><a href="../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a>&nbsp;getSinkStatus(String&nbsp;tenant,
+                         String&nbsp;namespace,
+                         String&nbsp;sink)
+                  throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
 <div class="block">Gets the current status of a sink.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -442,11 +442,11 @@ var activeTableTab = "activeTableTab";
 <ul class="blockList">
 <li class="blockList">
 <h4>getSinkStatus</h4>
-<pre>FunctionStatus&nbsp;getSinkStatus(String&nbsp;tenant,
-                             String&nbsp;namespace,
-                             String&nbsp;sink,
-                             int&nbsp;id)
-                      throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
+<pre><a href="../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a>&nbsp;getSinkStatus(String&nbsp;tenant,
+                                                                   String&nbsp;namespace,
+                                                                   String&nbsp;sink,
+                                                                   int&nbsp;id)
+                                                            throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
 <div class="block">Gets the current status of a sink instance.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
diff --git a/content/api/admin/org/apache/pulsar/client/admin/Source.html b/content/api/admin/org/apache/pulsar/client/admin/Source.html
index fe2760c..952038a 100644
--- a/content/api/admin/org/apache/pulsar/client/admin/Source.html
+++ b/content/api/admin/org/apache/pulsar/client/admin/Source.html
@@ -157,7 +157,7 @@ var activeTableTab = "activeTableTab";
 </td>
 </tr>
 <tr id="i5" class="rowColor">
-<td class="colFirst"><code>FunctionStatusList</code></td>
+<td class="colFirst"><code><a href="../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/admin/Source.html#getSourceStatus-java.lang.String-java.lang.String-java.lang.String-">getSourceStatus</a></span>(String&nbsp;tenant,
                String&nbsp;namespace,
                String&nbsp;source)</code>
@@ -165,7 +165,7 @@ var activeTableTab = "activeTableTab";
 </td>
 </tr>
 <tr id="i6" class="altColor">
-<td class="colFirst"><code>FunctionStatus</code></td>
+<td class="colFirst"><code><a href="../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/admin/Source.html#getSourceStatus-java.lang.String-java.lang.String-java.lang.String-int-">getSourceStatus</a></span>(String&nbsp;tenant,
                String&nbsp;namespace,
                String&nbsp;source,
@@ -421,10 +421,10 @@ var activeTableTab = "activeTableTab";
 <ul class="blockList">
 <li class="blockList">
 <h4>getSourceStatus</h4>
-<pre>FunctionStatusList&nbsp;getSourceStatus(String&nbsp;tenant,
-                                   String&nbsp;namespace,
-                                   String&nbsp;source)
-                            throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
+<pre><a href="../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a>&nbsp;getSourceStatus(String&nbsp;tenant,
+                             String&nbsp;namespace,
+                             String&nbsp;source)
+                      throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
 <div class="block">Gets the current status of a source.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -442,11 +442,11 @@ var activeTableTab = "activeTableTab";
 <ul class="blockList">
 <li class="blockList">
 <h4>getSourceStatus</h4>
-<pre>FunctionStatus&nbsp;getSourceStatus(String&nbsp;tenant,
-                               String&nbsp;namespace,
-                               String&nbsp;source,
-                               int&nbsp;id)
-                        throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
+<pre><a href="../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a>&nbsp;getSourceStatus(String&nbsp;tenant,
+                                                                           String&nbsp;namespace,
+                                                                           String&nbsp;source,
+                                                                           int&nbsp;id)
+                                                                    throws <a href="../../../../../org/apache/pulsar/client/admin/PulsarAdminException.html" title="class in org.apache.pulsar.client.admin">PulsarAdminException</a></pre>
 <div class="block">Gets the current status of a source instance.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html b/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
index bcd6487..c56b4b2 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
@@ -42,7 +42,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ErrorData.html" target="_top">Frames</a></li>
@@ -238,7 +238,7 @@ extends Object</pre>
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ErrorData.html" target="_top">Frames</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html b/content/api/admin/org/apache/pulsar/common/policies/data/ExceptionInformation.html
similarity index 69%
copy from content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/ExceptionInformation.html
index bcd6487..67b54a3 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/ExceptionInformation.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>ErrorData (Pulsar Admin Java API)</title>
+<title>ExceptionInformation (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,7 +11,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ErrorData (Pulsar Admin Java API)";
+            parent.document.title="ExceptionInformation (Pulsar Admin Java API)";
         }
     }
     catch(err) {
@@ -41,12 +41,12 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ErrorData.html" target="_top">Frames</a></li>
-<li><a href="ErrorData.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ExceptionInformation.html" target="_top">Frames</a></li>
+<li><a href="ExceptionInformation.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -67,13 +67,13 @@
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li>Method</li>
 </ul>
@@ -85,14 +85,14 @@
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class ErrorData" class="title">Class ErrorData</h2>
+<h2 title="Class ExceptionInformation" class="title">Class ExceptionInformation</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.ErrorData</li>
+<li>org.apache.pulsar.common.policies.data.ExceptionInformation</li>
 </ul>
 </li>
 </ul>
@@ -101,7 +101,7 @@
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">ErrorData</span>
+<pre>public class <span class="typeNameLabel">ExceptionInformation</span>
 extends Object</pre>
 </li>
 </ul>
@@ -109,25 +109,6 @@ extends Object</pre>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
-<!-- =========== FIELD SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.summary">
-<!--   -->
-</a>
-<h3>Field Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
-<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Field and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>String</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#reason">reason</a></span></code>&nbsp;</td>
-</tr>
-</table>
-</li>
-</ul>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.summary">
@@ -140,10 +121,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#ErrorData--">ErrorData</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#ErrorData-java.lang.String-">ErrorData</a></span>(String&nbsp;reason)</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html#ExceptionInformation--">ExceptionInformation</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -169,45 +147,19 @@ extends Object</pre>
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
-<!-- ============ FIELD DETAIL =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.detail">
-<!--   -->
-</a>
-<h3>Field Detail</h3>
-<a name="reason">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>reason</h4>
-<pre>public&nbsp;String reason</pre>
-</li>
-</ul>
-</li>
-</ul>
 <!-- ========= CONSTRUCTOR DETAIL ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.detail">
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="ErrorData--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>ErrorData</h4>
-<pre>public&nbsp;ErrorData()</pre>
-</li>
-</ul>
-<a name="ErrorData-java.lang.String-">
+<a name="ExceptionInformation--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>ErrorData</h4>
-<pre>public&nbsp;ErrorData(String&nbsp;reason)</pre>
+<h4>ExceptionInformation</h4>
+<pre>public&nbsp;ExceptionInformation()</pre>
 </li>
 </ul>
 </li>
@@ -237,12 +189,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ErrorData.html" target="_top">Frames</a></li>
-<li><a href="ErrorData.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ExceptionInformation.html" target="_top">Frames</a></li>
+<li><a href="ExceptionInformation.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -263,13 +215,13 @@ extends Object</pre>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li>Method</li>
 </ul>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/FailureDomain.html b/content/api/admin/org/apache/pulsar/common/policies/data/FailureDomain.html
index 7a8905c..f8c6521 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/FailureDomain.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/FailureDomain.html
@@ -47,7 +47,7 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -306,7 +306,7 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html b/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
index 10a1d3e..a86459a 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
@@ -42,7 +42,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">Frames</a></li>
@@ -301,7 +301,7 @@ extends Object</pre>
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">Frames</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html b/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html
similarity index 55%
copy from content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html
index 10a1d3e..1c68e12 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase (Pulsar Admin Java API)</title>
+<title>FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,7 +11,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase (Pulsar Admin Java API)";
+            parent.document.title="FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData (Pulsar Admin Java API)";
         }
     }
     catch(err) {
@@ -41,12 +41,12 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">Frames</a></li>
-<li><a href="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" target="_top">Frames</a></li>
+<li><a href="FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -85,14 +85,14 @@
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase" class="title">Class FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</h2>
+<h2 title="Class FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData" class="title">Class FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</li>
+<li>org.apache.pulsar.common.policies.data.FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</li>
 </ul>
 </li>
 </ul>
@@ -100,16 +100,12 @@
 <ul class="blockList">
 <li class="blockList">
 <dl>
-<dt>Direct Known Subclasses:</dt>
-<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</a></dd>
-</dl>
-<dl>
 <dt>Enclosing class:</dt>
-<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats</a></dd>
+<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a></dd>
 </dl>
 <hr>
 <br>
-<pre>public static class <span class="typeNameLabel">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</span>
+<pre>public static class <span class="typeNameLabel">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</span>
 extends Object</pre>
 </li>
 </ul>
@@ -130,34 +126,52 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>Double</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#avgProcessLatency">avgProcessLatency</a></span></code>
-<div class="block">Average process latency for function for instance</div>
-</td>
+<td class="colFirst"><code>double</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#averageLatency">averageLatency</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#error">error</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#processedSuccessfullyTotal">processedSuccessfullyTotal</a></span></code>
-<div class="block">Total number of records successfully processed by user function for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#lastInvocationTime">lastInvocationTime</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#latestSystemExceptions">latestSystemExceptions</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code>List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#latestUserExceptions">latestUserExceptions</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#receivedTotal">receivedTotal</a></span></code>
-<div class="block">Total number of records function received from source for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numReceived">numReceived</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numRestarts">numRestarts</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#systemExceptionsTotal">systemExceptionsTotal</a></span></code>
-<div class="block">Total number of system exceptions thrown for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numSuccessfullyProcessed">numSuccessfullyProcessed</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#userExceptionsTotal">userExceptionsTotal</a></span></code>
-<div class="block">Total number of user exceptions thrown for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numSystemExceptions">numSystemExceptions</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#numUserExceptions">numUserExceptions</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#running">running</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#workerId">workerId</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -174,7 +188,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#FunctionInstanceStatsDataBase--">FunctionInstanceStatsDataBase</a></span>()</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html#FunctionInstanceStatusData--">FunctionInstanceStatusData</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -206,54 +220,112 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="receivedTotal">
+<a name="running">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>running</h4>
+<pre>public&nbsp;boolean running</pre>
+</li>
+</ul>
+<a name="error">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>error</h4>
+<pre>public&nbsp;String error</pre>
+</li>
+</ul>
+<a name="numRestarts">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numRestarts</h4>
+<pre>public&nbsp;long numRestarts</pre>
+</li>
+</ul>
+<a name="numReceived">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numReceived</h4>
+<pre>public&nbsp;long numReceived</pre>
+</li>
+</ul>
+<a name="numSuccessfullyProcessed">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numSuccessfullyProcessed</h4>
+<pre>public&nbsp;long numSuccessfullyProcessed</pre>
+</li>
+</ul>
+<a name="numUserExceptions">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numUserExceptions</h4>
+<pre>public&nbsp;long numUserExceptions</pre>
+</li>
+</ul>
+<a name="latestUserExceptions">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>latestUserExceptions</h4>
+<pre>public&nbsp;List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a>&gt; latestUserExceptions</pre>
+</li>
+</ul>
+<a name="numSystemExceptions">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>receivedTotal</h4>
-<pre>public&nbsp;long receivedTotal</pre>
-<div class="block">Total number of records function received from source for instance</div>
+<h4>numSystemExceptions</h4>
+<pre>public&nbsp;long numSystemExceptions</pre>
 </li>
 </ul>
-<a name="processedSuccessfullyTotal">
+<a name="latestSystemExceptions">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>processedSuccessfullyTotal</h4>
-<pre>public&nbsp;long processedSuccessfullyTotal</pre>
-<div class="block">Total number of records successfully processed by user function for instance</div>
+<h4>latestSystemExceptions</h4>
+<pre>public&nbsp;List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a>&gt; latestSystemExceptions</pre>
 </li>
 </ul>
-<a name="systemExceptionsTotal">
+<a name="averageLatency">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>systemExceptionsTotal</h4>
-<pre>public&nbsp;long systemExceptionsTotal</pre>
-<div class="block">Total number of system exceptions thrown for instance</div>
+<h4>averageLatency</h4>
+<pre>public&nbsp;double averageLatency</pre>
 </li>
 </ul>
-<a name="userExceptionsTotal">
+<a name="lastInvocationTime">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>userExceptionsTotal</h4>
-<pre>public&nbsp;long userExceptionsTotal</pre>
-<div class="block">Total number of user exceptions thrown for instance</div>
+<h4>lastInvocationTime</h4>
+<pre>public&nbsp;long lastInvocationTime</pre>
 </li>
 </ul>
-<a name="avgProcessLatency">
+<a name="workerId">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>avgProcessLatency</h4>
-<pre>public&nbsp;Double avgProcessLatency</pre>
-<div class="block">Average process latency for function for instance</div>
+<h4>workerId</h4>
+<pre>public&nbsp;String workerId</pre>
 </li>
 </ul>
 </li>
@@ -264,13 +336,13 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="FunctionInstanceStatsDataBase--">
+<a name="FunctionInstanceStatusData--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>FunctionInstanceStatsDataBase</h4>
-<pre>public&nbsp;FunctionInstanceStatsDataBase()</pre>
+<h4>FunctionInstanceStatusData</h4>
+<pre>public&nbsp;FunctionInstanceStatusData()</pre>
 </li>
 </ul>
 </li>
@@ -300,12 +372,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">Frames</a></li>
-<li><a href="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" target="_top">Frames</a></li>
+<li><a href="FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html b/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html
similarity index 64%
copy from content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html
index e1b02bd..548563a 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>LocalPolicies (Pulsar Admin Java API)</title>
+<title>FunctionStatus.FunctionInstanceStatus (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,18 +11,12 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="LocalPolicies (Pulsar Admin Java API)";
+            parent.document.title="FunctionStatus.FunctionInstanceStatus (Pulsar Admin Java API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
 </script>
 <noscript>
 <div>JavaScript is disabled on your browser.</div>
@@ -47,12 +41,12 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/LocalPolicies.html" target="_top">Frames</a></li>
-<li><a href="LocalPolicies.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" target="_top">Frames</a></li>
+<li><a href="FunctionStatus.FunctionInstanceStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -72,16 +66,16 @@ var activeTableTab = "activeTableTab";
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
+<li><a href="#methods.inherited.from.class.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
+<li>Method</li>
 </ul>
 </div>
 <a name="skip.navbar.top">
@@ -91,23 +85,27 @@ var activeTableTab = "activeTableTab";
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class LocalPolicies" class="title">Class LocalPolicies</h2>
+<h2 title="Class FunctionStatus.FunctionInstanceStatus" class="title">Class FunctionStatus.FunctionInstanceStatus</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.LocalPolicies</li>
+<li>org.apache.pulsar.common.policies.data.FunctionStatus.FunctionInstanceStatus</li>
 </ul>
 </li>
 </ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></dd>
+</dl>
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">LocalPolicies</span>
+<pre>public static class <span class="typeNameLabel">FunctionStatus.FunctionInstanceStatus</span>
 extends Object</pre>
 </li>
 </ul>
@@ -115,6 +113,25 @@ extends Object</pre>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -128,8 +145,12 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/pulsar/common/policies/data/BundlesData.html" title="class in org.apache.pulsar.common.policies.data">BundlesData</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#bundles">bundles</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html#instanceId">instanceId</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html#status">status</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -146,7 +167,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#LocalPolicies--">LocalPolicies</a></span>()</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html#FunctionInstanceStatus--">FunctionInstanceStatus</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -157,23 +178,12 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Method Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Method and Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#equals-java.lang.Object-">equals</a></span>(Object&nbsp;obj)</code>&nbsp;</td>
-</tr>
-</table>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.Object">
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;Object</h3>
-<code>clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
 </ul>
 </li>
 </ul>
@@ -189,51 +199,39 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="bundles">
+<a name="instanceId">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
-<h4>bundles</h4>
-<pre>public&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/BundlesData.html" title="class in org.apache.pulsar.common.policies.data">BundlesData</a> bundles</pre>
+<h4>instanceId</h4>
+<pre>public&nbsp;int instanceId</pre>
 </li>
 </ul>
-</li>
-</ul>
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<ul class="blockList">
-<li class="blockList"><a name="constructor.detail">
-<!--   -->
-</a>
-<h3>Constructor Detail</h3>
-<a name="LocalPolicies--">
+<a name="status">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>LocalPolicies</h4>
-<pre>public&nbsp;LocalPolicies()</pre>
+<h4>status</h4>
+<pre>public&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a> status</pre>
 </li>
 </ul>
 </li>
 </ul>
-<!-- ============ METHOD DETAIL ========== -->
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
 <ul class="blockList">
-<li class="blockList"><a name="method.detail">
+<li class="blockList"><a name="constructor.detail">
 <!--   -->
 </a>
-<h3>Method Detail</h3>
-<a name="equals-java.lang.Object-">
+<h3>Constructor Detail</h3>
+<a name="FunctionInstanceStatus--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;equals(Object&nbsp;obj)</pre>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>equals</code>&nbsp;in class&nbsp;<code>Object</code></dd>
-</dl>
+<h4>FunctionInstanceStatus</h4>
+<pre>public&nbsp;FunctionInstanceStatus()</pre>
 </li>
 </ul>
 </li>
@@ -263,12 +261,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/LocalPolicies.html" target="_top">Frames</a></li>
-<li><a href="LocalPolicies.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" target="_top">Frames</a></li>
+<li><a href="FunctionStatus.FunctionInstanceStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -288,16 +286,16 @@ extends Object</pre>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
+<li><a href="#methods.inherited.from.class.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
+<li>Method</li>
 </ul>
 </div>
 <a name="skip.navbar.bottom">
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html b/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.html
similarity index 58%
copy from content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.html
index 5c9081f..ed2c6cc 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStatus.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>SubscribeRate (Pulsar Admin Java API)</title>
+<title>FunctionStatus (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,14 +11,14 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="SubscribeRate (Pulsar Admin Java API)";
+            parent.document.title="FunctionStatus (Pulsar Admin Java API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var methods = {"i0":10,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -47,12 +47,12 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SubscribeRate.html" target="_top">Frames</a></li>
-<li><a href="SubscribeRate.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStatus.html" target="_top">Frames</a></li>
+<li><a href="FunctionStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -72,7 +72,7 @@ var activeTableTab = "activeTableTab";
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -91,14 +91,14 @@ var activeTableTab = "activeTableTab";
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class SubscribeRate" class="title">Class SubscribeRate</h2>
+<h2 title="Class FunctionStatus" class="title">Class FunctionStatus</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.SubscribeRate</li>
+<li>org.apache.pulsar.common.policies.data.FunctionStatus</li>
 </ul>
 </li>
 </ul>
@@ -107,7 +107,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">SubscribeRate</span>
+<pre>public class <span class="typeNameLabel">FunctionStatus</span>
 extends Object</pre>
 </li>
 </ul>
@@ -115,6 +115,25 @@ extends Object</pre>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -128,12 +147,16 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#ratePeriodInSecond">ratePeriodInSecond</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html#instances">instances</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#subscribeThrottlingRatePerConsumer">subscribeThrottlingRatePerConsumer</a></span></code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html#numInstances">numInstances</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html#numRunning">numRunning</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -150,11 +173,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#SubscribeRate--">SubscribeRate</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#SubscribeRate-int-int-">SubscribeRate</a></span>(int&nbsp;subscribeThrottlingRatePerConsumer,
-             int&nbsp;ratePeriodInSecond)</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html#FunctionStatus--">FunctionStatus</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -166,22 +185,18 @@ extends Object</pre>
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#equals-java.lang.Object-">equals</a></span>(Object&nbsp;obj)</code>&nbsp;</td>
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html#addInstance-org.apache.pulsar.common.policies.data.FunctionStatus.FunctionInstanceStatus-">addInstance</a></span>(<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a>&nbsp;functionInstanceStatus)< [...]
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>String</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#toString--">toString</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html#decode-java.lang.String-">decode</a></span>(String&nbsp;json)</code>&nbsp;</td>
 </tr>
 </table>
 <ul class="blockList">
@@ -189,7 +204,7 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;Object</h3>
-<code>clone, finalize, getClass, notify, notifyAll, wait, wait, wait</code></li>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
 </ul>
 </li>
 </ul>
@@ -205,22 +220,31 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="subscribeThrottlingRatePerConsumer">
+<a name="numInstances">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>subscribeThrottlingRatePerConsumer</h4>
-<pre>public&nbsp;int subscribeThrottlingRatePerConsumer</pre>
+<h4>numInstances</h4>
+<pre>public&nbsp;int numInstances</pre>
 </li>
 </ul>
-<a name="ratePeriodInSecond">
+<a name="numRunning">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numRunning</h4>
+<pre>public&nbsp;int numRunning</pre>
+</li>
+</ul>
+<a name="instances">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>ratePeriodInSecond</h4>
-<pre>public&nbsp;int ratePeriodInSecond</pre>
+<h4>instances</h4>
+<pre>public&nbsp;List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a>&gt; instances</pre>
 </li>
 </ul>
 </li>
@@ -231,23 +255,13 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="SubscribeRate--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>SubscribeRate</h4>
-<pre>public&nbsp;SubscribeRate()</pre>
-</li>
-</ul>
-<a name="SubscribeRate-int-int-">
+<a name="FunctionStatus--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>SubscribeRate</h4>
-<pre>public&nbsp;SubscribeRate(int&nbsp;subscribeThrottlingRatePerConsumer,
-                     int&nbsp;ratePeriodInSecond)</pre>
+<h4>FunctionStatus</h4>
+<pre>public&nbsp;FunctionStatus()</pre>
 </li>
 </ul>
 </li>
@@ -258,42 +272,26 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a name="hashCode--">
+<a name="addInstance-org.apache.pulsar.common.policies.data.FunctionStatus.FunctionInstanceStatus-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>hashCode</h4>
-<pre>public&nbsp;int&nbsp;hashCode()</pre>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>hashCode</code>&nbsp;in class&nbsp;<code>Object</code></dd>
-</dl>
-</li>
-</ul>
-<a name="equals-java.lang.Object-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;equals(Object&nbsp;obj)</pre>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>equals</code>&nbsp;in class&nbsp;<code>Object</code></dd>
-</dl>
+<h4>addInstance</h4>
+<pre>public&nbsp;void&nbsp;addInstance(<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a>&nbsp;functionInstanceStatus)</pre>
 </li>
 </ul>
-<a name="toString--">
+<a name="decode-java.lang.String-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>toString</h4>
-<pre>public&nbsp;String&nbsp;toString()</pre>
+<h4>decode</h4>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a>&nbsp;decode(String&nbsp;json)
+                             throws IOException</pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>toString</code>&nbsp;in class&nbsp;<code>Object</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>IOException</code></dd>
 </dl>
 </li>
 </ul>
@@ -324,12 +322,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SubscribeRate.html" target="_top">Frames</a></li>
-<li><a href="SubscribeRate.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStatus.html" target="_top">Frames</a></li>
+<li><a href="FunctionStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -349,7 +347,7 @@ extends Object</pre>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html b/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
index e1b02bd..69c0dbb 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
@@ -47,7 +47,7 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -263,7 +263,7 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html b/content/api/admin/org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html
index 3af3ba3..c9a86cd 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html
@@ -48,7 +48,7 @@ var activeTableTab = "activeTableTab";
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/RetentionPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" target="_top">Frames</a></li>
@@ -335,7 +335,7 @@ not permitted.)</div>
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/RetentionPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" target="_top">Frames</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html b/content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html
similarity index 61%
copy from content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html
index 10a1d3e..992f903 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase (Pulsar Admin Java API)</title>
+<title>SinkStatus.SinkInstanceStatus.SinkInstanceStatusData (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,7 +11,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase (Pulsar Admin Java API)";
+            parent.document.title="SinkStatus.SinkInstanceStatus.SinkInstanceStatusData (Pulsar Admin Java API)";
         }
     }
     catch(err) {
@@ -41,12 +41,12 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">Frames</a></li>
-<li><a href="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" target="_top">Frames</a></li>
+<li><a href="SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -85,14 +85,14 @@
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase" class="title">Class FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</h2>
+<h2 title="Class SinkStatus.SinkInstanceStatus.SinkInstanceStatusData" class="title">Class SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</li>
+<li>org.apache.pulsar.common.policies.data.SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</li>
 </ul>
 </li>
 </ul>
@@ -100,16 +100,12 @@
 <ul class="blockList">
 <li class="blockList">
 <dl>
-<dt>Direct Known Subclasses:</dt>
-<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</a></dd>
-</dl>
-<dl>
 <dt>Enclosing class:</dt>
-<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats</a></dd>
+<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a></dd>
 </dl>
 <hr>
 <br>
-<pre>public static class <span class="typeNameLabel">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</span>
+<pre>public static class <span class="typeNameLabel">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</span>
 extends Object</pre>
 </li>
 </ul>
@@ -130,34 +126,36 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>Double</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#avgProcessLatency">avgProcessLatency</a></span></code>
-<div class="block">Average process latency for function for instance</div>
-</td>
+<td class="colFirst"><code>String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#error">error</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#processedSuccessfullyTotal">processedSuccessfullyTotal</a></span></code>
-<div class="block">Total number of records successfully processed by user function for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#lastInvocationTime">lastInvocationTime</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#receivedTotal">receivedTotal</a></span></code>
-<div class="block">Total number of records function received from source for instance</div>
-</td>
+<td class="colFirst"><code>List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#latestSystemExceptions">latestSystemExceptions</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#systemExceptionsTotal">systemExceptionsTotal</a></span></code>
-<div class="block">Total number of system exceptions thrown for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#numReceived">numReceived</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#userExceptionsTotal">userExceptionsTotal</a></span></code>
-<div class="block">Total number of user exceptions thrown for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#numRestarts">numRestarts</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#numSystemExceptions">numSystemExceptions</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#running">running</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#workerId">workerId</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -174,7 +172,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#FunctionInstanceStatsDataBase--">FunctionInstanceStatsDataBase</a></span>()</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html#SinkInstanceStatusData--">SinkInstanceStatusData</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -206,54 +204,76 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="receivedTotal">
+<a name="running">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>running</h4>
+<pre>public&nbsp;boolean running</pre>
+</li>
+</ul>
+<a name="error">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>error</h4>
+<pre>public&nbsp;String error</pre>
+</li>
+</ul>
+<a name="numRestarts">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numRestarts</h4>
+<pre>public&nbsp;long numRestarts</pre>
+</li>
+</ul>
+<a name="numReceived">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>receivedTotal</h4>
-<pre>public&nbsp;long receivedTotal</pre>
-<div class="block">Total number of records function received from source for instance</div>
+<h4>numReceived</h4>
+<pre>public&nbsp;long numReceived</pre>
 </li>
 </ul>
-<a name="processedSuccessfullyTotal">
+<a name="numSystemExceptions">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>processedSuccessfullyTotal</h4>
-<pre>public&nbsp;long processedSuccessfullyTotal</pre>
-<div class="block">Total number of records successfully processed by user function for instance</div>
+<h4>numSystemExceptions</h4>
+<pre>public&nbsp;long numSystemExceptions</pre>
 </li>
 </ul>
-<a name="systemExceptionsTotal">
+<a name="latestSystemExceptions">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>systemExceptionsTotal</h4>
-<pre>public&nbsp;long systemExceptionsTotal</pre>
-<div class="block">Total number of system exceptions thrown for instance</div>
+<h4>latestSystemExceptions</h4>
+<pre>public&nbsp;List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a>&gt; latestSystemExceptions</pre>
 </li>
 </ul>
-<a name="userExceptionsTotal">
+<a name="lastInvocationTime">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>userExceptionsTotal</h4>
-<pre>public&nbsp;long userExceptionsTotal</pre>
-<div class="block">Total number of user exceptions thrown for instance</div>
+<h4>lastInvocationTime</h4>
+<pre>public&nbsp;long lastInvocationTime</pre>
 </li>
 </ul>
-<a name="avgProcessLatency">
+<a name="workerId">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>avgProcessLatency</h4>
-<pre>public&nbsp;Double avgProcessLatency</pre>
-<div class="block">Average process latency for function for instance</div>
+<h4>workerId</h4>
+<pre>public&nbsp;String workerId</pre>
 </li>
 </ul>
 </li>
@@ -264,13 +284,13 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="FunctionInstanceStatsDataBase--">
+<a name="SinkInstanceStatusData--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>FunctionInstanceStatsDataBase</h4>
-<pre>public&nbsp;FunctionInstanceStatsDataBase()</pre>
+<h4>SinkInstanceStatusData</h4>
+<pre>public&nbsp;SinkInstanceStatusData()</pre>
 </li>
 </ul>
 </li>
@@ -300,12 +320,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">Frames</a></li>
-<li><a href="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" target="_top">Frames</a></li>
+<li><a href="SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html b/content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html
similarity index 65%
copy from content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html
index e1b02bd..1f815fd 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>LocalPolicies (Pulsar Admin Java API)</title>
+<title>SinkStatus.SinkInstanceStatus (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,18 +11,12 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="LocalPolicies (Pulsar Admin Java API)";
+            parent.document.title="SinkStatus.SinkInstanceStatus (Pulsar Admin Java API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
 </script>
 <noscript>
 <div>JavaScript is disabled on your browser.</div>
@@ -47,12 +41,12 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/LocalPolicies.html" target="_top">Frames</a></li>
-<li><a href="LocalPolicies.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" target="_top">Frames</a></li>
+<li><a href="SinkStatus.SinkInstanceStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -72,16 +66,16 @@ var activeTableTab = "activeTableTab";
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
+<li><a href="#methods.inherited.from.class.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
+<li>Method</li>
 </ul>
 </div>
 <a name="skip.navbar.top">
@@ -91,23 +85,27 @@ var activeTableTab = "activeTableTab";
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class LocalPolicies" class="title">Class LocalPolicies</h2>
+<h2 title="Class SinkStatus.SinkInstanceStatus" class="title">Class SinkStatus.SinkInstanceStatus</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.LocalPolicies</li>
+<li>org.apache.pulsar.common.policies.data.SinkStatus.SinkInstanceStatus</li>
 </ul>
 </li>
 </ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></dd>
+</dl>
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">LocalPolicies</span>
+<pre>public static class <span class="typeNameLabel">SinkStatus.SinkInstanceStatus</span>
 extends Object</pre>
 </li>
 </ul>
@@ -115,6 +113,25 @@ extends Object</pre>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -128,8 +145,12 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/pulsar/common/policies/data/BundlesData.html" title="class in org.apache.pulsar.common.policies.data">BundlesData</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#bundles">bundles</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html#instanceId">instanceId</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html#status">status</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -146,7 +167,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#LocalPolicies--">LocalPolicies</a></span>()</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html#SinkInstanceStatus--">SinkInstanceStatus</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -157,23 +178,12 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Method Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Method and Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#equals-java.lang.Object-">equals</a></span>(Object&nbsp;obj)</code>&nbsp;</td>
-</tr>
-</table>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.Object">
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;Object</h3>
-<code>clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
 </ul>
 </li>
 </ul>
@@ -189,51 +199,39 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="bundles">
+<a name="instanceId">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
-<h4>bundles</h4>
-<pre>public&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/BundlesData.html" title="class in org.apache.pulsar.common.policies.data">BundlesData</a> bundles</pre>
+<h4>instanceId</h4>
+<pre>public&nbsp;int instanceId</pre>
 </li>
 </ul>
-</li>
-</ul>
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<ul class="blockList">
-<li class="blockList"><a name="constructor.detail">
-<!--   -->
-</a>
-<h3>Constructor Detail</h3>
-<a name="LocalPolicies--">
+<a name="status">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>LocalPolicies</h4>
-<pre>public&nbsp;LocalPolicies()</pre>
+<h4>status</h4>
+<pre>public&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a> status</pre>
 </li>
 </ul>
 </li>
 </ul>
-<!-- ============ METHOD DETAIL ========== -->
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
 <ul class="blockList">
-<li class="blockList"><a name="method.detail">
+<li class="blockList"><a name="constructor.detail">
 <!--   -->
 </a>
-<h3>Method Detail</h3>
-<a name="equals-java.lang.Object-">
+<h3>Constructor Detail</h3>
+<a name="SinkInstanceStatus--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;equals(Object&nbsp;obj)</pre>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>equals</code>&nbsp;in class&nbsp;<code>Object</code></dd>
-</dl>
+<h4>SinkInstanceStatus</h4>
+<pre>public&nbsp;SinkInstanceStatus()</pre>
 </li>
 </ul>
 </li>
@@ -263,12 +261,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/LocalPolicies.html" target="_top">Frames</a></li>
-<li><a href="LocalPolicies.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" target="_top">Frames</a></li>
+<li><a href="SinkStatus.SinkInstanceStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -288,16 +286,16 @@ extends Object</pre>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
+<li><a href="#methods.inherited.from.class.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
+<li>Method</li>
 </ul>
 </div>
 <a name="skip.navbar.bottom">
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html b/content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.html
similarity index 62%
copy from content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.html
index 5c9081f..94561dd 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/SinkStatus.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>SubscribeRate (Pulsar Admin Java API)</title>
+<title>SinkStatus (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,14 +11,14 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="SubscribeRate (Pulsar Admin Java API)";
+            parent.document.title="SinkStatus (Pulsar Admin Java API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var methods = {"i0":10,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -48,11 +48,11 @@ var activeTableTab = "activeTableTab";
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SubscribeRate.html" target="_top">Frames</a></li>
-<li><a href="SubscribeRate.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SinkStatus.html" target="_top">Frames</a></li>
+<li><a href="SinkStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -72,7 +72,7 @@ var activeTableTab = "activeTableTab";
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -91,14 +91,14 @@ var activeTableTab = "activeTableTab";
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class SubscribeRate" class="title">Class SubscribeRate</h2>
+<h2 title="Class SinkStatus" class="title">Class SinkStatus</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.SubscribeRate</li>
+<li>org.apache.pulsar.common.policies.data.SinkStatus</li>
 </ul>
 </li>
 </ul>
@@ -107,7 +107,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">SubscribeRate</span>
+<pre>public class <span class="typeNameLabel">SinkStatus</span>
 extends Object</pre>
 </li>
 </ul>
@@ -115,6 +115,25 @@ extends Object</pre>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -128,12 +147,16 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#ratePeriodInSecond">ratePeriodInSecond</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html#instances">instances</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#subscribeThrottlingRatePerConsumer">subscribeThrottlingRatePerConsumer</a></span></code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html#numInstances">numInstances</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html#numRunning">numRunning</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -150,11 +173,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#SubscribeRate--">SubscribeRate</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#SubscribeRate-int-int-">SubscribeRate</a></span>(int&nbsp;subscribeThrottlingRatePerConsumer,
-             int&nbsp;ratePeriodInSecond)</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html#SinkStatus--">SinkStatus</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -166,22 +185,18 @@ extends Object</pre>
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#equals-java.lang.Object-">equals</a></span>(Object&nbsp;obj)</code>&nbsp;</td>
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html#addInstance-org.apache.pulsar.common.policies.data.SinkStatus.SinkInstanceStatus-">addInstance</a></span>(<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a>&nbsp;sinkInstanceStatus)</code>&nbsp;</td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>String</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#toString--">toString</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html#decode-java.lang.String-">decode</a></span>(String&nbsp;json)</code>&nbsp;</td>
 </tr>
 </table>
 <ul class="blockList">
@@ -189,7 +204,7 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;Object</h3>
-<code>clone, finalize, getClass, notify, notifyAll, wait, wait, wait</code></li>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
 </ul>
 </li>
 </ul>
@@ -205,22 +220,31 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="subscribeThrottlingRatePerConsumer">
+<a name="numInstances">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>subscribeThrottlingRatePerConsumer</h4>
-<pre>public&nbsp;int subscribeThrottlingRatePerConsumer</pre>
+<h4>numInstances</h4>
+<pre>public&nbsp;int numInstances</pre>
 </li>
 </ul>
-<a name="ratePeriodInSecond">
+<a name="numRunning">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numRunning</h4>
+<pre>public&nbsp;int numRunning</pre>
+</li>
+</ul>
+<a name="instances">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>ratePeriodInSecond</h4>
-<pre>public&nbsp;int ratePeriodInSecond</pre>
+<h4>instances</h4>
+<pre>public&nbsp;List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a>&gt; instances</pre>
 </li>
 </ul>
 </li>
@@ -231,23 +255,13 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="SubscribeRate--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>SubscribeRate</h4>
-<pre>public&nbsp;SubscribeRate()</pre>
-</li>
-</ul>
-<a name="SubscribeRate-int-int-">
+<a name="SinkStatus--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>SubscribeRate</h4>
-<pre>public&nbsp;SubscribeRate(int&nbsp;subscribeThrottlingRatePerConsumer,
-                     int&nbsp;ratePeriodInSecond)</pre>
+<h4>SinkStatus</h4>
+<pre>public&nbsp;SinkStatus()</pre>
 </li>
 </ul>
 </li>
@@ -258,42 +272,26 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a name="hashCode--">
+<a name="addInstance-org.apache.pulsar.common.policies.data.SinkStatus.SinkInstanceStatus-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>hashCode</h4>
-<pre>public&nbsp;int&nbsp;hashCode()</pre>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>hashCode</code>&nbsp;in class&nbsp;<code>Object</code></dd>
-</dl>
-</li>
-</ul>
-<a name="equals-java.lang.Object-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;equals(Object&nbsp;obj)</pre>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>equals</code>&nbsp;in class&nbsp;<code>Object</code></dd>
-</dl>
+<h4>addInstance</h4>
+<pre>public&nbsp;void&nbsp;addInstance(<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a>&nbsp;sinkInstanceStatus)</pre>
 </li>
 </ul>
-<a name="toString--">
+<a name="decode-java.lang.String-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>toString</h4>
-<pre>public&nbsp;String&nbsp;toString()</pre>
+<h4>decode</h4>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a>&nbsp;decode(String&nbsp;json)
+                         throws IOException</pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>toString</code>&nbsp;in class&nbsp;<code>Object</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>IOException</code></dd>
 </dl>
 </li>
 </ul>
@@ -325,11 +323,11 @@ extends Object</pre>
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SubscribeRate.html" target="_top">Frames</a></li>
-<li><a href="SubscribeRate.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SinkStatus.html" target="_top">Frames</a></li>
+<li><a href="SinkStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -349,7 +347,7 @@ extends Object</pre>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html b/content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html
similarity index 61%
copy from content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html
index 10a1d3e..dcbd2de 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase (Pulsar Admin Java API)</title>
+<title>SourceStatus.SourceInstanceStatus.SourceInstanceStatusData (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,7 +11,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase (Pulsar Admin Java API)";
+            parent.document.title="SourceStatus.SourceInstanceStatus.SourceInstanceStatusData (Pulsar Admin Java API)";
         }
     }
     catch(err) {
@@ -41,12 +41,12 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">Frames</a></li>
-<li><a href="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" target="_top">Frames</a></li>
+<li><a href="SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -85,14 +85,14 @@
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase" class="title">Class FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</h2>
+<h2 title="Class SourceStatus.SourceInstanceStatus.SourceInstanceStatusData" class="title">Class SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</li>
+<li>org.apache.pulsar.common.policies.data.SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</li>
 </ul>
 </li>
 </ul>
@@ -100,16 +100,12 @@
 <ul class="blockList">
 <li class="blockList">
 <dl>
-<dt>Direct Known Subclasses:</dt>
-<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</a></dd>
-</dl>
-<dl>
 <dt>Enclosing class:</dt>
-<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats</a></dd>
+<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a></dd>
 </dl>
 <hr>
 <br>
-<pre>public static class <span class="typeNameLabel">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</span>
+<pre>public static class <span class="typeNameLabel">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</span>
 extends Object</pre>
 </li>
 </ul>
@@ -130,34 +126,36 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>Double</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#avgProcessLatency">avgProcessLatency</a></span></code>
-<div class="block">Average process latency for function for instance</div>
-</td>
+<td class="colFirst"><code>String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#error">error</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#processedSuccessfullyTotal">processedSuccessfullyTotal</a></span></code>
-<div class="block">Total number of records successfully processed by user function for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#lastInvocationTime">lastInvocationTime</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#receivedTotal">receivedTotal</a></span></code>
-<div class="block">Total number of records function received from source for instance</div>
-</td>
+<td class="colFirst"><code>List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#latestSystemExceptions">latestSystemExceptions</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#systemExceptionsTotal">systemExceptionsTotal</a></span></code>
-<div class="block">Total number of system exceptions thrown for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#numReceived">numReceived</a></span></code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>long</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#userExceptionsTotal">userExceptionsTotal</a></span></code>
-<div class="block">Total number of user exceptions thrown for instance</div>
-</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#numRestarts">numRestarts</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>long</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#numSystemExceptions">numSystemExceptions</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#running">running</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>String</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#workerId">workerId</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -174,7 +172,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html#FunctionInstanceStatsDataBase--">FunctionInstanceStatsDataBase</a></span>()</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html#SourceInstanceStatusData--">SourceInstanceStatusData</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -206,54 +204,76 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="receivedTotal">
+<a name="running">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>running</h4>
+<pre>public&nbsp;boolean running</pre>
+</li>
+</ul>
+<a name="error">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>error</h4>
+<pre>public&nbsp;String error</pre>
+</li>
+</ul>
+<a name="numRestarts">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numRestarts</h4>
+<pre>public&nbsp;long numRestarts</pre>
+</li>
+</ul>
+<a name="numReceived">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>receivedTotal</h4>
-<pre>public&nbsp;long receivedTotal</pre>
-<div class="block">Total number of records function received from source for instance</div>
+<h4>numReceived</h4>
+<pre>public&nbsp;long numReceived</pre>
 </li>
 </ul>
-<a name="processedSuccessfullyTotal">
+<a name="numSystemExceptions">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>processedSuccessfullyTotal</h4>
-<pre>public&nbsp;long processedSuccessfullyTotal</pre>
-<div class="block">Total number of records successfully processed by user function for instance</div>
+<h4>numSystemExceptions</h4>
+<pre>public&nbsp;long numSystemExceptions</pre>
 </li>
 </ul>
-<a name="systemExceptionsTotal">
+<a name="latestSystemExceptions">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>systemExceptionsTotal</h4>
-<pre>public&nbsp;long systemExceptionsTotal</pre>
-<div class="block">Total number of system exceptions thrown for instance</div>
+<h4>latestSystemExceptions</h4>
+<pre>public&nbsp;List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a>&gt; latestSystemExceptions</pre>
 </li>
 </ul>
-<a name="userExceptionsTotal">
+<a name="lastInvocationTime">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>userExceptionsTotal</h4>
-<pre>public&nbsp;long userExceptionsTotal</pre>
-<div class="block">Total number of user exceptions thrown for instance</div>
+<h4>lastInvocationTime</h4>
+<pre>public&nbsp;long lastInvocationTime</pre>
 </li>
 </ul>
-<a name="avgProcessLatency">
+<a name="workerId">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>avgProcessLatency</h4>
-<pre>public&nbsp;Double avgProcessLatency</pre>
-<div class="block">Average process latency for function for instance</div>
+<h4>workerId</h4>
+<pre>public&nbsp;String workerId</pre>
 </li>
 </ul>
 </li>
@@ -264,13 +284,13 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="FunctionInstanceStatsDataBase--">
+<a name="SourceInstanceStatusData--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>FunctionInstanceStatsDataBase</h4>
-<pre>public&nbsp;FunctionInstanceStatsDataBase()</pre>
+<h4>SourceInstanceStatusData</h4>
+<pre>public&nbsp;SourceInstanceStatusData()</pre>
 </li>
 </ul>
 </li>
@@ -300,12 +320,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">Frames</a></li>
-<li><a href="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" target="_top">Frames</a></li>
+<li><a href="SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html b/content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html
similarity index 65%
copy from content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html
index bcd6487..94d9684 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>ErrorData (Pulsar Admin Java API)</title>
+<title>SourceStatus.SourceInstanceStatus (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,7 +11,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ErrorData (Pulsar Admin Java API)";
+            parent.document.title="SourceStatus.SourceInstanceStatus (Pulsar Admin Java API)";
         }
     }
     catch(err) {
@@ -41,12 +41,12 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ErrorData.html" target="_top">Frames</a></li>
-<li><a href="ErrorData.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" target="_top">Frames</a></li>
+<li><a href="SourceStatus.SourceInstanceStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -66,7 +66,7 @@
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.Object">Method</a></li>
@@ -85,23 +85,27 @@
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class ErrorData" class="title">Class ErrorData</h2>
+<h2 title="Class SourceStatus.SourceInstanceStatus" class="title">Class SourceStatus.SourceInstanceStatus</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.ErrorData</li>
+<li>org.apache.pulsar.common.policies.data.SourceStatus.SourceInstanceStatus</li>
 </ul>
 </li>
 </ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></dd>
+</dl>
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">ErrorData</span>
+<pre>public static class <span class="typeNameLabel">SourceStatus.SourceInstanceStatus</span>
 extends Object</pre>
 </li>
 </ul>
@@ -109,6 +113,25 @@ extends Object</pre>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -122,8 +145,12 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>String</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#reason">reason</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html#instanceId">instanceId</a></span></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html#status">status</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -140,10 +167,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#ErrorData--">ErrorData</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#ErrorData-java.lang.String-">ErrorData</a></span>(String&nbsp;reason)</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html#SourceInstanceStatus--">SourceInstanceStatus</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -175,13 +199,22 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="reason">
+<a name="instanceId">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>instanceId</h4>
+<pre>public&nbsp;int instanceId</pre>
+</li>
+</ul>
+<a name="status">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>reason</h4>
-<pre>public&nbsp;String reason</pre>
+<h4>status</h4>
+<pre>public&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a> status</pre>
 </li>
 </ul>
 </li>
@@ -192,22 +225,13 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="ErrorData--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>ErrorData</h4>
-<pre>public&nbsp;ErrorData()</pre>
-</li>
-</ul>
-<a name="ErrorData-java.lang.String-">
+<a name="SourceInstanceStatus--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>ErrorData</h4>
-<pre>public&nbsp;ErrorData(String&nbsp;reason)</pre>
+<h4>SourceInstanceStatus</h4>
+<pre>public&nbsp;SourceInstanceStatus()</pre>
 </li>
 </ul>
 </li>
@@ -237,12 +261,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ErrorData.html" target="_top">Frames</a></li>
-<li><a href="ErrorData.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" target="_top">Frames</a></li>
+<li><a href="SourceStatus.SourceInstanceStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -262,7 +286,7 @@ extends Object</pre>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.Object">Method</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html b/content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.html
similarity index 59%
copy from content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
copy to content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.html
index 5c9081f..0813fd0 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/SourceStatus.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>SubscribeRate (Pulsar Admin Java API)</title>
+<title>SourceStatus (Pulsar Admin Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,14 +11,14 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="SubscribeRate (Pulsar Admin Java API)";
+            parent.document.title="SourceStatus (Pulsar Admin Java API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10,"i1":10,"i2":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var methods = {"i0":10,"i1":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -47,12 +47,12 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SubscribeRate.html" target="_top">Frames</a></li>
-<li><a href="SubscribeRate.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SourceStatus.html" target="_top">Frames</a></li>
+<li><a href="SourceStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -72,7 +72,7 @@ var activeTableTab = "activeTableTab";
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -91,14 +91,14 @@ var activeTableTab = "activeTableTab";
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
 <div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class SubscribeRate" class="title">Class SubscribeRate</h2>
+<h2 title="Class SourceStatus" class="title">Class SourceStatus</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.SubscribeRate</li>
+<li>org.apache.pulsar.common.policies.data.SourceStatus</li>
 </ul>
 </li>
 </ul>
@@ -107,7 +107,7 @@ var activeTableTab = "activeTableTab";
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">SubscribeRate</span>
+<pre>public class <span class="typeNameLabel">SourceStatus</span>
 extends Object</pre>
 </li>
 </ul>
@@ -115,6 +115,25 @@ extends Object</pre>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a></span></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
 <!-- =========== FIELD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="field.summary">
@@ -128,12 +147,16 @@ extends Object</pre>
 <th class="colLast" scope="col">Field and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#ratePeriodInSecond">ratePeriodInSecond</a></span></code>&nbsp;</td>
+<td class="colFirst"><code>List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html#instances">instances</a></span></code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#subscribeThrottlingRatePerConsumer">subscribeThrottlingRatePerConsumer</a></span></code>&nbsp;</td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html#numInstances">numInstances</a></span></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html#numRunning">numRunning</a></span></code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -150,11 +173,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#SubscribeRate--">SubscribeRate</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#SubscribeRate-int-int-">SubscribeRate</a></span>(int&nbsp;subscribeThrottlingRatePerConsumer,
-             int&nbsp;ratePeriodInSecond)</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html#SourceStatus--">SourceStatus</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -166,22 +185,18 @@ extends Object</pre>
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#equals-java.lang.Object-">equals</a></span>(Object&nbsp;obj)</code>&nbsp;</td>
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html#addInstance-org.apache.pulsar.common.policies.data.SourceStatus.SourceInstanceStatus-">addInstance</a></span>(<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a>&nbsp;sourceInstanceStatus)</code>&nbsp;</td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#hashCode--">hashCode</a></span>()</code>&nbsp;</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>String</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html#toString--">toString</a></span>()</code>&nbsp;</td>
+<td class="colFirst"><code>static <a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html#decode-java.lang.String-">decode</a></span>(String&nbsp;json)</code>&nbsp;</td>
 </tr>
 </table>
 <ul class="blockList">
@@ -189,7 +204,7 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;Object</h3>
-<code>clone, finalize, getClass, notify, notifyAll, wait, wait, wait</code></li>
+<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
 </ul>
 </li>
 </ul>
@@ -205,22 +220,31 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Field Detail</h3>
-<a name="subscribeThrottlingRatePerConsumer">
+<a name="numInstances">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>subscribeThrottlingRatePerConsumer</h4>
-<pre>public&nbsp;int subscribeThrottlingRatePerConsumer</pre>
+<h4>numInstances</h4>
+<pre>public&nbsp;int numInstances</pre>
 </li>
 </ul>
-<a name="ratePeriodInSecond">
+<a name="numRunning">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numRunning</h4>
+<pre>public&nbsp;int numRunning</pre>
+</li>
+</ul>
+<a name="instances">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>ratePeriodInSecond</h4>
-<pre>public&nbsp;int ratePeriodInSecond</pre>
+<h4>instances</h4>
+<pre>public&nbsp;List&lt;<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a>&gt; instances</pre>
 </li>
 </ul>
 </li>
@@ -231,23 +255,13 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="SubscribeRate--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>SubscribeRate</h4>
-<pre>public&nbsp;SubscribeRate()</pre>
-</li>
-</ul>
-<a name="SubscribeRate-int-int-">
+<a name="SourceStatus--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>SubscribeRate</h4>
-<pre>public&nbsp;SubscribeRate(int&nbsp;subscribeThrottlingRatePerConsumer,
-                     int&nbsp;ratePeriodInSecond)</pre>
+<h4>SourceStatus</h4>
+<pre>public&nbsp;SourceStatus()</pre>
 </li>
 </ul>
 </li>
@@ -258,42 +272,26 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a name="hashCode--">
+<a name="addInstance-org.apache.pulsar.common.policies.data.SourceStatus.SourceInstanceStatus-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>hashCode</h4>
-<pre>public&nbsp;int&nbsp;hashCode()</pre>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>hashCode</code>&nbsp;in class&nbsp;<code>Object</code></dd>
-</dl>
-</li>
-</ul>
-<a name="equals-java.lang.Object-">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;equals(Object&nbsp;obj)</pre>
-<dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>equals</code>&nbsp;in class&nbsp;<code>Object</code></dd>
-</dl>
+<h4>addInstance</h4>
+<pre>public&nbsp;void&nbsp;addInstance(<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a>&nbsp;sourceInstanceStatus)</pre>
 </li>
 </ul>
-<a name="toString--">
+<a name="decode-java.lang.String-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>toString</h4>
-<pre>public&nbsp;String&nbsp;toString()</pre>
+<h4>decode</h4>
+<pre>public static&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a>&nbsp;decode(String&nbsp;json)
+                           throws IOException</pre>
 <dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>toString</code>&nbsp;in class&nbsp;<code>Object</code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code>IOException</code></dd>
 </dl>
 </li>
 </ul>
@@ -324,12 +322,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SubscribeRate.html" target="_top">Frames</a></li>
-<li><a href="SubscribeRate.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/SourceStatus.html" target="_top">Frames</a></li>
+<li><a href="SourceStatus.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -349,7 +347,7 @@ extends Object</pre>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html b/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
index 5c9081f..f94243d 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/SubscribeRate.html
@@ -47,7 +47,7 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -324,7 +324,7 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SchemaAutoUpdateCompatibilityStrategy.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionAuthMode.html" title="enum in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/package-frame.html b/content/api/admin/org/apache/pulsar/common/policies/data/package-frame.html
index 27c906c..9405cd4 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/package-frame.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/package-frame.html
@@ -24,11 +24,15 @@
 <li><a href="ConsumerStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">ConsumerStats</a></li>
 <li><a href="DispatchRate.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">DispatchRate</a></li>
 <li><a href="ErrorData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">ErrorData</a></li>
+<li><a href="ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">ExceptionInformation</a></li>
 <li><a href="FailureDomain.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FailureDomain</a></li>
 <li><a href="FunctionStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStats</a></li>
 <li><a href="FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStats.FunctionInstanceStats</a></li>
 <li><a href="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</a></li>
 <li><a href="FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</a></li>
+<li><a href="FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStatus</a></li>
+<li><a href="FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStatus.FunctionInstanceStatus</a></li>
+<li><a href="FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></li>
 <li><a href="LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">LocalPolicies</a></li>
 <li><a href="NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">NamespaceIsolationData</a></li>
 <li><a href="NamespaceOwnershipStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">NamespaceOwnershipStatus</a></li>
@@ -49,6 +53,12 @@
 <li><a href="ReplicatorStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">ReplicatorStats</a></li>
 <li><a href="ResourceQuota.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">ResourceQuota</a></li>
 <li><a href="RetentionPolicies.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">RetentionPolicies</a></li>
+<li><a href="SinkStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SinkStatus</a></li>
+<li><a href="SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SinkStatus.SinkInstanceStatus</a></li>
+<li><a href="SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></li>
+<li><a href="SourceStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SourceStatus</a></li>
+<li><a href="SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SourceStatus.SourceInstanceStatus</a></li>
+<li><a href="SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></li>
 <li><a href="SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SubscribeRate</a></li>
 <li><a href="SubscriptionStats.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">SubscriptionStats</a></li>
 <li><a href="TenantInfo.html" title="class in org.apache.pulsar.common.policies.data" target="classFrame">TenantInfo</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/package-summary.html b/content/api/admin/org/apache/pulsar/common/policies/data/package-summary.html
index 18b41c8..e1f8e97 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/package-summary.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/package-summary.html
@@ -131,25 +131,41 @@
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data">FailureDomain</a></td>
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data">ExceptionInformation</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats</a></td>
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data">FailureDomain</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats</a></td>
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</a></td>
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
 <tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data">LocalPolicies</a></td>
 <td class="colLast">&nbsp;</td>
@@ -237,6 +253,30 @@
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data">SubscribeRate</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/package-tree.html b/content/api/admin/org/apache/pulsar/common/policies/data/package-tree.html
index e4b7999..c3637ec 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/package-tree.html
+++ b/content/api/admin/org/apache/pulsar/common/policies/data/package-tree.html
@@ -99,6 +99,7 @@
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/ConsumerStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ConsumerStats</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">DispatchRate</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ErrorData</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ExceptionInformation</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FailureDomain</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStats</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStats.FunctionInstanceStats</span></a></li>
@@ -107,6 +108,9 @@
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</span></a></li>
 </ul>
 </li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus.FunctionInstanceStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">LocalPolicies</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">NamespaceIsolationData</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceOwnershipStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">NamespaceOwnershipStatus</span></a></li>
@@ -131,6 +135,12 @@
 </li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/ResourceQuota.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ResourceQuota</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/RetentionPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">RetentionPolicies</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus.SinkInstanceStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus.SourceInstanceStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SubscribeRate</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="../../../../../../org/apache/pulsar/common/policies/data/SubscriptionStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SubscriptionStats</span></a>
 <ul>
diff --git a/content/api/admin/overview-tree.html b/content/api/admin/overview-tree.html
index 7f57d39..dd166df 100644
--- a/content/api/admin/overview-tree.html
+++ b/content/api/admin/overview-tree.html
@@ -108,6 +108,7 @@
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/ConsumerStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ConsumerStats</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">DispatchRate</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/ErrorData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ErrorData</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/ExceptionInformation.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ExceptionInformation</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FailureDomain</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStats</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStats.FunctionInstanceStats</span></a></li>
@@ -116,6 +117,9 @@
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStats.FunctionInstanceStats.FunctionInstanceStatsData</span></a></li>
 </ul>
 </li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus.FunctionInstanceStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/LocalPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">LocalPolicies</span></a></li>
 <li type="circle">org.apache.pulsar.client.admin.<a href="org/apache/pulsar/client/admin/LongRunningProcessStatus.html" title="class in org.apache.pulsar.client.admin"><span class="typeNameLink">LongRunningProcessStatus</span></a>
 <ul>
@@ -148,6 +152,12 @@
 </li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/ResourceQuota.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">ResourceQuota</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/RetentionPolicies.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">RetentionPolicies</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus.SinkInstanceStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SinkStatus.SinkInstanceStatus.SinkInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SinkStatus.SinkInstanceStatus.SinkInstanceStatusData</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus.SourceInstanceStatus</span></a></li>
+<li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SourceStatus.SourceInstanceStatus.SourceInstanceStatusData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SourceStatus.SourceInstanceStatus.SourceInstanceStatusData</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SubscribeRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SubscribeRate</span></a></li>
 <li type="circle">org.apache.pulsar.common.policies.data.<a href="org/apache/pulsar/common/policies/data/SubscriptionStats.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">SubscriptionStats</span></a>
 <ul>
diff --git a/content/api/client/allclasses-frame.html b/content/api/client/allclasses-frame.html
index bd10c76..86d0361 100644
--- a/content/api/client/allclasses-frame.html
+++ b/content/api/client/allclasses-frame.html
@@ -26,10 +26,11 @@
 <li><a href="org/apache/pulsar/client/api/ConsumerInterceptor.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">ConsumerInterceptor</span></a></li>
 <li><a href="org/apache/pulsar/client/api/ConsumerStats.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">ConsumerStats</span></a></li>
 <li><a href="org/apache/pulsar/client/api/CryptoKeyReader.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">CryptoKeyReader</span></a></li>
-<li><a href="org/apache/pulsar/client/api/url/DataURLStreamHandler.html" title="class in org.apache.pulsar.client.api.url" target="classFrame">DataURLStreamHandler</a></li>
 <li><a href="org/apache/pulsar/client/api/DeadLetterPolicy.html" title="class in org.apache.pulsar.client.api" target="classFrame">DeadLetterPolicy</a></li>
 <li><a href="org/apache/pulsar/client/api/EncodedAuthenticationParameterSupport.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">EncodedAuthenticationParameterSupport</span></a></li>
 <li><a href="org/apache/pulsar/client/api/EncryptionKeyInfo.html" title="class in org.apache.pulsar.client.api" target="classFrame">EncryptionKeyInfo</a></li>
+<li><a href="org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema" target="classFrame">Field</a></li>
+<li><a href="org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema" target="classFrame"><span class="interfaceName">GenericRecord</span></a></li>
 <li><a href="org/apache/pulsar/client/api/HashingScheme.html" title="enum in org.apache.pulsar.client.api" target="classFrame">HashingScheme</a></li>
 <li><a href="org/apache/pulsar/client/api/Message.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">Message</span></a></li>
 <li><a href="org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">MessageBuilder</span></a></li>
@@ -73,17 +74,17 @@
 <li><a href="org/apache/pulsar/client/api/PulsarClientException.TooManyRequestsException.html" title="class in org.apache.pulsar.client.api" target="classFrame">PulsarClientException.TooManyRequestsException</a></li>
 <li><a href="org/apache/pulsar/client/api/PulsarClientException.TopicTerminatedException.html" title="class in org.apache.pulsar.client.api" target="classFrame">PulsarClientException.TopicTerminatedException</a></li>
 <li><a href="org/apache/pulsar/client/api/PulsarClientException.UnsupportedAuthenticationException.html" title="class in org.apache.pulsar.client.api" target="classFrame">PulsarClientException.UnsupportedAuthenticationException</a></li>
-<li><a href="org/apache/pulsar/client/api/url/PulsarURLStreamHandlerFactory.html" title="class in org.apache.pulsar.client.api.url" target="classFrame">PulsarURLStreamHandlerFactory</a></li>
 <li><a href="org/apache/pulsar/client/api/Reader.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">Reader</span></a></li>
 <li><a href="org/apache/pulsar/client/api/ReaderBuilder.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">ReaderBuilder</span></a></li>
 <li><a href="org/apache/pulsar/client/api/ReaderConfiguration.html" title="class in org.apache.pulsar.client.api" target="classFrame">ReaderConfiguration</a></li>
 <li><a href="org/apache/pulsar/client/api/ReaderListener.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">ReaderListener</span></a></li>
+<li><a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">Schema</span></a></li>
+<li><a href="org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api" target="classFrame">SchemaSerializationException</a></li>
 <li><a href="org/apache/pulsar/client/api/ServiceUrlProvider.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">ServiceUrlProvider</span></a></li>
 <li><a href="org/apache/pulsar/client/api/SubscriptionInitialPosition.html" title="enum in org.apache.pulsar.client.api" target="classFrame">SubscriptionInitialPosition</a></li>
 <li><a href="org/apache/pulsar/client/api/SubscriptionType.html" title="enum in org.apache.pulsar.client.api" target="classFrame">SubscriptionType</a></li>
 <li><a href="org/apache/pulsar/client/api/TopicMetadata.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">TopicMetadata</span></a></li>
 <li><a href="org/apache/pulsar/client/api/TypedMessageBuilder.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">TypedMessageBuilder</span></a></li>
-<li><a href="org/apache/pulsar/client/api/url/URL.html" title="class in org.apache.pulsar.client.api.url" target="classFrame">URL</a></li>
 </ul>
 </div>
 </body>
diff --git a/content/api/client/allclasses-noframe.html b/content/api/client/allclasses-noframe.html
index 811e707..5cfb567 100644
--- a/content/api/client/allclasses-noframe.html
+++ b/content/api/client/allclasses-noframe.html
@@ -26,10 +26,11 @@
 <li><a href="org/apache/pulsar/client/api/ConsumerInterceptor.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">ConsumerInterceptor</span></a></li>
 <li><a href="org/apache/pulsar/client/api/ConsumerStats.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">ConsumerStats</span></a></li>
 <li><a href="org/apache/pulsar/client/api/CryptoKeyReader.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">CryptoKeyReader</span></a></li>
-<li><a href="org/apache/pulsar/client/api/url/DataURLStreamHandler.html" title="class in org.apache.pulsar.client.api.url">DataURLStreamHandler</a></li>
 <li><a href="org/apache/pulsar/client/api/DeadLetterPolicy.html" title="class in org.apache.pulsar.client.api">DeadLetterPolicy</a></li>
 <li><a href="org/apache/pulsar/client/api/EncodedAuthenticationParameterSupport.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">EncodedAuthenticationParameterSupport</span></a></li>
 <li><a href="org/apache/pulsar/client/api/EncryptionKeyInfo.html" title="class in org.apache.pulsar.client.api">EncryptionKeyInfo</a></li>
+<li><a href="org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema">Field</a></li>
+<li><a href="org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema"><span class="interfaceName">GenericRecord</span></a></li>
 <li><a href="org/apache/pulsar/client/api/HashingScheme.html" title="enum in org.apache.pulsar.client.api">HashingScheme</a></li>
 <li><a href="org/apache/pulsar/client/api/Message.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">Message</span></a></li>
 <li><a href="org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">MessageBuilder</span></a></li>
@@ -73,17 +74,17 @@
 <li><a href="org/apache/pulsar/client/api/PulsarClientException.TooManyRequestsException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.TooManyRequestsException</a></li>
 <li><a href="org/apache/pulsar/client/api/PulsarClientException.TopicTerminatedException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.TopicTerminatedException</a></li>
 <li><a href="org/apache/pulsar/client/api/PulsarClientException.UnsupportedAuthenticationException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.UnsupportedAuthenticationException</a></li>
-<li><a href="org/apache/pulsar/client/api/url/PulsarURLStreamHandlerFactory.html" title="class in org.apache.pulsar.client.api.url">PulsarURLStreamHandlerFactory</a></li>
 <li><a href="org/apache/pulsar/client/api/Reader.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">Reader</span></a></li>
 <li><a href="org/apache/pulsar/client/api/ReaderBuilder.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">ReaderBuilder</span></a></li>
 <li><a href="org/apache/pulsar/client/api/ReaderConfiguration.html" title="class in org.apache.pulsar.client.api">ReaderConfiguration</a></li>
 <li><a href="org/apache/pulsar/client/api/ReaderListener.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">ReaderListener</span></a></li>
+<li><a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">Schema</span></a></li>
+<li><a href="org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api">SchemaSerializationException</a></li>
 <li><a href="org/apache/pulsar/client/api/ServiceUrlProvider.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">ServiceUrlProvider</span></a></li>
 <li><a href="org/apache/pulsar/client/api/SubscriptionInitialPosition.html" title="enum in org.apache.pulsar.client.api">SubscriptionInitialPosition</a></li>
 <li><a href="org/apache/pulsar/client/api/SubscriptionType.html" title="enum in org.apache.pulsar.client.api">SubscriptionType</a></li>
 <li><a href="org/apache/pulsar/client/api/TopicMetadata.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">TopicMetadata</span></a></li>
 <li><a href="org/apache/pulsar/client/api/TypedMessageBuilder.html" title="interface in org.apache.pulsar.client.api"><span class="interfaceName">TypedMessageBuilder</span></a></li>
-<li><a href="org/apache/pulsar/client/api/url/URL.html" title="class in org.apache.pulsar.client.api.url">URL</a></li>
 </ul>
 </div>
 </body>
diff --git a/content/api/client/deprecated-list.html b/content/api/client/deprecated-list.html
index c5b2000..79aa7ca 100644
--- a/content/api/client/deprecated-list.html
+++ b/content/api/client/deprecated-list.html
@@ -166,96 +166,99 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colOne"><a href="org/apache/pulsar/client/api/Schema.html#AUTO--">org.apache.pulsar.client.api.Schema.AUTO()</a></td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/MessageRouter.html#choosePartition-org.apache.pulsar.client.api.Message-">org.apache.pulsar.client.api.MessageRouter.choosePartition(Message&lt;?&gt;)</a>
 <div class="block"><span class="deprecationComment">since 1.22.0. Please use <a href="org/apache/pulsar/client/api/MessageRouter.html#choosePartition-org.apache.pulsar.client.api.Message-org.apache.pulsar.client.api.TopicMetadata-"><code>MessageRouter.choosePartition(Message, TopicMetadata)</code></a> instead.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/Authentication.html#configure-java.util.Map-">org.apache.pulsar.client.api.Authentication.configure(Map&lt;String, String&gt;)</a>
 <div class="block"><span class="deprecationComment">This method will be deleted on version 2.0, instead please use configure(String
              encodedAuthParamString) which is in EncodedAuthenticationParameterSupport for now and will be
              integrated into this interface.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#create-java.lang.String-">org.apache.pulsar.client.api.PulsarClient.create(String)</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/pulsar/client/api/PulsarClient.html#builder--"><code>PulsarClient.builder()</code></a> to construct a client instance</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#create-java.lang.String-org.apache.pulsar.client.api.ClientConfiguration-">org.apache.pulsar.client.api.PulsarClient.create(String, ClientConfiguration)</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/pulsar/client/api/PulsarClient.html#builder--"><code>PulsarClient.builder()</code></a> to construct a client instance</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#createProducer-java.lang.String-">org.apache.pulsar.client.api.PulsarClient.createProducer(String)</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/pulsar/client/api/PulsarClient.html#newProducer--"><code>PulsarClient.newProducer()</code></a> to build a new producer</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#createProducer-java.lang.String-org.apache.pulsar.client.api.ProducerConfiguration-">org.apache.pulsar.client.api.PulsarClient.createProducer(String, ProducerConfiguration)</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/pulsar/client/api/PulsarClient.html#newProducer--"><code>PulsarClient.newProducer()</code></a> to build a new producer</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#createProducerAsync-java.lang.String-">org.apache.pulsar.client.api.PulsarClient.createProducerAsync(String)</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/pulsar/client/api/PulsarClient.html#newProducer--"><code>PulsarClient.newProducer()</code></a> to build a new producer</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#createProducerAsync-java.lang.String-org.apache.pulsar.client.api.ProducerConfiguration-">org.apache.pulsar.client.api.PulsarClient.createProducerAsync(String, ProducerConfiguration)</a>
 <div class="block"><span class="deprecationComment">use <a href="org/apache/pulsar/client/api/PulsarClient.html#newProducer--"><code>PulsarClient.newProducer()</code></a> to build a new producer</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#createReader-java.lang.String-org.apache.pulsar.client.api.MessageId-org.apache.pulsar.client.api.ReaderConfiguration-">org.apache.pulsar.client.api.PulsarClient.createReader(String, MessageId, ReaderConfiguration)</a>
 <div class="block"><span class="deprecationComment">Use <a href="org/apache/pulsar/client/api/PulsarClient.html#newReader--"><code>PulsarClient.newReader()</code></a> to build a new reader</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#createReaderAsync-java.lang.String-org.apache.pulsar.client.api.MessageId-org.apache.pulsar.client.api.ReaderConfiguration-">org.apache.pulsar.client.api.PulsarClient.createReaderAsync(String, MessageId, ReaderConfiguration)</a>
 <div class="block"><span class="deprecationComment">Use <a href="org/apache/pulsar/client/api/PulsarClient.html#newReader--"><code>PulsarClient.newReader()</code></a> to build a new reader</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/ClientBuilder.html#enableTls-boolean-">org.apache.pulsar.client.api.ClientBuilder.enableTls(boolean)</a>
 <div class="block"><span class="deprecationComment">use "pulsar+ssl://" in serviceUrl to enable</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/ProducerConfiguration.html#getMessageRouter-int-">org.apache.pulsar.client.api.ProducerConfiguration.getMessageRouter(int)</a>
 <div class="block"><span class="deprecationComment">since 1.22.0-incubating. <tt>numPartitions</tt> is already passed as parameter in
              <a href="org/apache/pulsar/client/api/MessageRouter.html#choosePartition-org.apache.pulsar.client.api.Message-org.apache.pulsar.client.api.TopicMetadata-"><code>MessageRouter.choosePartition(Message, TopicMetadata)</code></a>.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/Producer.html#send-org.apache.pulsar.client.api.Message-">org.apache.pulsar.client.api.Producer.send(Message&lt;T&gt;)</a>
 <div class="block"><span class="deprecationComment">since 2.0. Use <a href="org/apache/pulsar/client/api/TypedMessageBuilder.html" title="interface in org.apache.pulsar.client.api"><code>TypedMessageBuilder</code></a> as returned by <a href="org/apache/pulsar/client/api/Producer.html#newMessage--"><code>Producer.newMessage()</code></a> to create a
              new message builder.</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/Producer.html#sendAsync-org.apache.pulsar.client.api.Message-">org.apache.pulsar.client.api.Producer.sendAsync(Message&lt;T&gt;)</a>
 <div class="block"><span class="deprecationComment">since 2.0. Use <a href="org/apache/pulsar/client/api/TypedMessageBuilder.html" title="interface in org.apache.pulsar.client.api"><code>TypedMessageBuilder</code></a> as returned by <a href="org/apache/pulsar/client/api/Producer.html#newMessage--"><code>Producer.newMessage()</code></a> to create a
              new message builder.</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#subscribe-java.lang.String-java.lang.String-">org.apache.pulsar.client.api.PulsarClient.subscribe(String, String)</a>
 <div class="block"><span class="deprecationComment">Use <a href="org/apache/pulsar/client/api/PulsarClient.html#newConsumer--"><code>PulsarClient.newConsumer()</code></a> to build a new consumer</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#subscribe-java.lang.String-java.lang.String-org.apache.pulsar.client.api.ConsumerConfiguration-">org.apache.pulsar.client.api.PulsarClient.subscribe(String, String, ConsumerConfiguration)</a>
 <div class="block"><span class="deprecationComment">Use <a href="org/apache/pulsar/client/api/PulsarClient.html#newConsumer--"><code>PulsarClient.newConsumer()</code></a> to build a new consumer</span></div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#subscribeAsync-java.lang.String-java.lang.String-">org.apache.pulsar.client.api.PulsarClient.subscribeAsync(String, String)</a>
 <div class="block"><span class="deprecationComment">Use <a href="org/apache/pulsar/client/api/PulsarClient.html#newConsumer--"><code>PulsarClient.newConsumer()</code></a> to build a new consumer</span></div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colOne"><a href="org/apache/pulsar/client/api/PulsarClient.html#subscribeAsync-java.lang.String-java.lang.String-org.apache.pulsar.client.api.ConsumerConfiguration-">org.apache.pulsar.client.api.PulsarClient.subscribeAsync(String, String, ConsumerConfiguration)</a>
 <div class="block"><span class="deprecationComment">Use <a href="org/apache/pulsar/client/api/PulsarClient.html#newConsumer--"><code>PulsarClient.newConsumer()</code></a> to build a new consumer</span></div>
 </td>
diff --git a/content/api/client/index-all.html b/content/api/client/index-all.html
index b8b2e22..ff08d25 100644
--- a/content/api/client/index-all.html
+++ b/content/api/client/index-all.html
@@ -67,7 +67,7 @@
 <!--   -->
 </a></div>
 <!-- ========= END OF TOP NAVBAR ========= -->
-<div class="contentContainer"><a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:K">K</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a> [...]
+<div class="contentContainer"><a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:J">J</a>&nbsp;<a href="#I:K">K</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a> [...]
 <!--   -->
 </a>
 <h2 class="title">A</h2>
@@ -130,7 +130,9 @@
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClientException.AlreadyClosedException.html#AlreadyClosedException-java.lang.String-">AlreadyClosedException(String)</a></span> - Constructor for exception org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClientException.AlreadyClosedException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.AlreadyClosedException</a></dt>
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Authentication</span></a> - Interface in <a href="org/apache/pulsar/client/api/package-summary.html">org.apache.pulsar.client.api</a></dt>
-<dd>&nbsp;</dd>
+<dd>
+<div class="block">Interface of authentication providers.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ClientBuilder.html#authentication-org.apache.pulsar.client.api.Authentication-">authentication(Authentication)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ClientBuilder.html" title="interface in org.apache.pulsar.client.api">ClientBuilder</a></dt>
 <dd>
 <div class="block">Set the authentication provider to use in the Pulsar client instance.</div>
@@ -159,6 +161,16 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClientException.AuthorizationException.html#AuthorizationException-java.lang.String-">AuthorizationException(String)</a></span> - Constructor for exception org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClientException.AuthorizationException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.AuthorizationException</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#AUTO--">AUTO()</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#AUTO_CONSUME--">AUTO_CONSUME()</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#AUTO_PRODUCE_BYTES--">AUTO_PRODUCE_BYTES()</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#AVRO-java.lang.Class-">AVRO(Class&lt;T&gt;)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>&nbsp;</dd>
 </dl>
 <a name="I:B">
 <!--   -->
@@ -214,6 +226,10 @@
 <dd>
 <div class="block">Get a new builder instance that can used to configure and build a <a href="org/apache/pulsar/client/api/PulsarClient.html" title="interface in org.apache.pulsar.client.api"><code>PulsarClient</code></a> instance.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#BYTES">BYTES</a></span> - Static variable in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Schema that doesn't perform any encoding on the message payloads.</div>
+</dd>
 </dl>
 <a name="I:C">
 <!--   -->
@@ -381,7 +397,7 @@
 <dd>
 <div class="block">Create an instance of the Authentication-Plugin</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/MessageBuilder.html#create--">create(&lt;any&gt;)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api">MessageBuilder</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/MessageBuilder.html#create-org.apache.pulsar.client.api.Schema-">create(Schema&lt;T&gt;)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api">MessageBuilder</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 <div class="block">Create a new message builder instance.</div>
@@ -454,8 +470,6 @@
 <div class="block"><span class="deprecationComment">Use <a href="org/apache/pulsar/client/api/PulsarClient.html#newReader--"><code>PulsarClient.newReader()</code></a> to build a new reader</span></div>
 </div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/url/PulsarURLStreamHandlerFactory.html#createURLStreamHandler-java.lang.String-">createURLStreamHandler(String)</a></span> - Method in class org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/PulsarURLStreamHandlerFactory.html" title="class in org.apache.pulsar.client.api.url">PulsarURLStreamHandlerFactory</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClientException.CryptoException.html#CryptoException-java.lang.String-">CryptoException(String)</a></span> - Constructor for exception org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClientException.CryptoException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.CryptoException</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ConsumerBuilder.html#cryptoFailureAction-org.apache.pulsar.client.api.ConsumerCryptoFailureAction-">cryptoFailureAction(ConsumerCryptoFailureAction)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ConsumerBuilder.html" title="interface in org.apache.pulsar.client.api">ConsumerBuilder</a></dt>
@@ -490,10 +504,6 @@
 </a>
 <h2 class="title">D</h2>
 <dl>
-<dt><a href="org/apache/pulsar/client/api/url/DataURLStreamHandler.html" title="class in org.apache.pulsar.client.api.url"><span class="typeNameLink">DataURLStreamHandler</span></a> - Class in <a href="org/apache/pulsar/client/api/url/package-summary.html">org.apache.pulsar.client.api.url</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/url/DataURLStreamHandler.html#DataURLStreamHandler--">DataURLStreamHandler()</a></span> - Constructor for class org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/DataURLStreamHandler.html" title="class in org.apache.pulsar.client.api.url">DataURLStreamHandler</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ConsumerBuilder.html#deadLetterPolicy-org.apache.pulsar.client.api.DeadLetterPolicy-">deadLetterPolicy(DeadLetterPolicy)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ConsumerBuilder.html" title="interface in org.apache.pulsar.client.api">ConsumerBuilder</a></dt>
 <dd>
 <div class="block">Set dead letter policy for consumer
@@ -504,6 +514,10 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/DeadLetterPolicy.html#DeadLetterPolicy--">DeadLetterPolicy()</a></span> - Constructor for class org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/DeadLetterPolicy.html" title="class in org.apache.pulsar.client.api">DeadLetterPolicy</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#decode-byte:A-">decode(byte[])</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Decode a byte array into an object using the schema definition and deserializer implementation</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/MessageBuilder.html#disableReplication--">disableReplication()</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api">MessageBuilder</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
@@ -539,6 +553,10 @@
 <dd>
 <div class="block">It allows to validate hostname verification when client connects to broker over tls.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#encode-T-">encode(T)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Encode an object representing the message content into a byte array.</div>
+</dd>
 <dt><a href="org/apache/pulsar/client/api/EncodedAuthenticationParameterSupport.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">EncodedAuthenticationParameterSupport</span></a> - Interface in <a href="org/apache/pulsar/client/api/package-summary.html">org.apache.pulsar.client.api</a></dt>
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/pulsar/client/api/EncryptionKeyInfo.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">EncryptionKeyInfo</span></a> - Class in <a href="org/apache/pulsar/client/api/package-summary.html">org.apache.pulsar.client.api</a></dt>
@@ -557,6 +575,13 @@
 </a>
 <h2 class="title">F</h2>
 <dl>
+<dt><a href="org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema"><span class="typeNameLink">Field</span></a> - Class in <a href="org/apache/pulsar/client/api/schema/package-summary.html">org.apache.pulsar.client.api.schema</a></dt>
+<dd>
+<div class="block">A field in a record, consisting of a field name, index, and
+ <a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><code>Schema</code></a> for the field value.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/schema/Field.html#Field--">Field()</a></span> - Constructor for class org.apache.pulsar.client.api.schema.<a href="org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema">Field</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Producer.html#flush--">flush()</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Producer.html" title="interface in org.apache.pulsar.client.api">Producer</a></dt>
 <dd>
 <div class="block">Flush all the messages buffered in the client and wait until all messages have been successfully persisted.</div>
@@ -577,6 +602,10 @@
 </a>
 <h2 class="title">G</h2>
 <dl>
+<dt><a href="org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema"><span class="typeNameLink">GenericRecord</span></a> - Interface in <a href="org/apache/pulsar/client/api/schema/package-summary.html">org.apache.pulsar.client.api.schema</a></dt>
+<dd>
+<div class="block">An interface represents a message with schema.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ConsumerConfiguration.html#getAckTimeoutMillis--">getAckTimeoutMillis()</a></span> - Method in class org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ConsumerConfiguration.html" title="class in org.apache.pulsar.client.api">ConsumerConfiguration</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
@@ -647,10 +676,6 @@
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 &nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/url/URL.html#getContent--">getContent()</a></span> - Method in class org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/URL.html" title="class in org.apache.pulsar.client.api.url">URL</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/url/URL.html#getContent-java.lang.Class:A-">getContent(Class[])</a></span> - Method in class org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/URL.html" title="class in org.apache.pulsar.client.api.url">URL</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ConsumerConfiguration.html#getCryptoFailureAction--">getCryptoFailureAction()</a></span> - Method in class org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ConsumerConfiguration.html" title="class in org.apache.pulsar.client.api">ConsumerConfiguration</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
@@ -692,6 +717,18 @@
 <dd>
 <div class="block">Get the event time associated with this message.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/schema/GenericRecord.html#getField-org.apache.pulsar.client.api.schema.Field-">getField(Field)</a></span> - Method in interface org.apache.pulsar.client.api.schema.<a href="org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema">GenericRecord</a></dt>
+<dd>
+<div class="block">Retrieve the value of the provided <tt>field</tt>.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/schema/GenericRecord.html#getField-java.lang.String-">getField(String)</a></span> - Method in interface org.apache.pulsar.client.api.schema.<a href="org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema">GenericRecord</a></dt>
+<dd>
+<div class="block">Retrieve the value of the provided <tt>fieldName</tt>.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/schema/GenericRecord.html#getFields--">getFields()</a></span> - Method in interface org.apache.pulsar.client.api.schema.<a href="org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema">GenericRecord</a></dt>
+<dd>
+<div class="block">Returns the list of fields associated with the record.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ProducerConfiguration.html#getHashingScheme--">getHashingScheme()</a></span> - Method in class org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ProducerConfiguration.html" title="class in org.apache.pulsar.client.api">ProducerConfiguration</a></dt>
 <dd>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
@@ -872,6 +909,10 @@
 <dd>
 <div class="block">Get message redelivery count, redelivery count maintain in pulsar broker.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#getSchema-SchemaInfo-">getSchema(SchemaInfo)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#getSchemaInfo--">getSchemaInfo()</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ProducerStats.html#getSendBytesRate--">getSendBytesRate()</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ProducerStats.html" title="interface in org.apache.pulsar.client.api">ProducerStats</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ProducerStats.html#getSendLatencyMillis50pct--">getSendLatencyMillis50pct()</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ProducerStats.html" title="interface in org.apache.pulsar.client.api">ProducerStats</a></dt>
@@ -1104,6 +1145,14 @@
 <div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 &nbsp;</dd>
 </dl>
+<a name="I:J">
+<!--   -->
+</a>
+<h2 class="title">J</h2>
+<dl>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#JSON-java.lang.Class-">JSON(Class&lt;T&gt;)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>&nbsp;</dd>
+</dl>
 <a name="I:K">
 <!--   -->
 </a>
@@ -1121,6 +1170,22 @@
 <dd>
 <div class="block">Sets the bytes of the key of the message for routing policy.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#KeyValue-java.lang.Class-java.lang.Class-SchemaType-">KeyValue(Class&lt;K&gt;, Class&lt;V&gt;, SchemaType)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Key Value Schema using passed in schema type, support JSON and AVRO currently.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#KeyValue-java.lang.Class-java.lang.Class-">KeyValue(Class&lt;K&gt;, Class&lt;V&gt;)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Key Value Schema whose underneath key and value schemas are JSONSchema.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#KeyValue-org.apache.pulsar.client.api.Schema-org.apache.pulsar.client.api.Schema-">KeyValue(Schema&lt;K&gt;, Schema&lt;V&gt;)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Key Value Schema using passed in key and value schemas.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#KV_BYTES">KV_BYTES</a></span> - Static variable in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Schema that can be used to encode/decode KeyValue.</div>
+</dd>
 </dl>
 <a name="I:L">
 <!--   -->
@@ -1233,7 +1298,7 @@
 <dd>
 <div class="block">Create a consumer with default for subscribing on a specific topic</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClient.html#newConsumer--">newConsumer(&lt;any&gt;)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClient.html" title="interface in org.apache.pulsar.client.api">PulsarClient</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClient.html#newConsumer-org.apache.pulsar.client.api.Schema-">newConsumer(Schema&lt;T&gt;)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClient.html" title="interface in org.apache.pulsar.client.api">PulsarClient</a></dt>
 <dd>
 <div class="block">Create a consumer with default for subscribing on a specific topic
 
@@ -1250,7 +1315,7 @@
 <dd>
 <div class="block">Create a producer with default for publishing on a specific topic</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClient.html#newProducer--">newProducer(&lt;any&gt;)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClient.html" title="interface in org.apache.pulsar.client.api">PulsarClient</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClient.html#newProducer-org.apache.pulsar.client.api.Schema-">newProducer(Schema&lt;T&gt;)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClient.html" title="interface in org.apache.pulsar.client.api">PulsarClient</a></dt>
 <dd>
 <div class="block">Create a producer with default for publishing on a specific topic</div>
 </dd>
@@ -1258,7 +1323,7 @@
 <dd>
 <div class="block">Create a topic reader for reading messages from the specified topic.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClient.html#newReader--">newReader(&lt;any&gt;)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClient.html" title="interface in org.apache.pulsar.client.api">PulsarClient</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClient.html#newReader-org.apache.pulsar.client.api.Schema-">newReader(Schema&lt;T&gt;)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClient.html" title="interface in org.apache.pulsar.client.api">PulsarClient</a></dt>
 <dd>
 <div class="block">Create a topic reader for reading messages from the specified topic.</div>
 </dd>
@@ -1293,17 +1358,13 @@
 <div class="block">This method is called when the message sent to the broker has been
  acknowledged, or when sending the message fails.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/url/DataURLStreamHandler.html#openConnection-java.net.URL-">openConnection(URL)</a></span> - Method in class org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/DataURLStreamHandler.html" title="class in org.apache.pulsar.client.api.url">DataURLStreamHandler</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/url/URL.html#openConnection--">openConnection()</a></span> - Method in class org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/URL.html" title="class in org.apache.pulsar.client.api.url">URL</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ClientBuilder.html#operationTimeout-int-java.util.concurrent.TimeUnit-">operationTimeout(int, TimeUnit)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ClientBuilder.html" title="interface in org.apache.pulsar.client.api">ClientBuilder</a></dt>
 <dd>
 <div class="block">Set the operation timeout <i>(default: 30 seconds)</i></div>
 </dd>
 <dt><a href="org/apache/pulsar/client/api/package-summary.html">org.apache.pulsar.client.api</a> - package org.apache.pulsar.client.api</dt>
 <dd>&nbsp;</dd>
-<dt><a href="org/apache/pulsar/client/api/url/package-summary.html">org.apache.pulsar.client.api.url</a> - package org.apache.pulsar.client.api.url</dt>
+<dt><a href="org/apache/pulsar/client/api/schema/package-summary.html">org.apache.pulsar.client.api.schema</a> - package org.apache.pulsar.client.api.schema</dt>
 <dd>&nbsp;</dd>
 </dl>
 <a name="I:P">
@@ -1398,6 +1459,8 @@
 <dd>
 <div class="block">Sets a new property on a message.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#PROTOBUF-java.lang.Class-">PROTOBUF(Class&lt;T&gt;)</a></span> - Static method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/pulsar/client/api/PulsarClient.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">PulsarClient</span></a> - Interface in <a href="org/apache/pulsar/client/api/package-summary.html">org.apache.pulsar.client.api</a></dt>
 <dd>
 <div class="block">Class that provides a client interface to Pulsar.</div>
@@ -1462,10 +1525,6 @@
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/pulsar/client/api/PulsarClientException.UnsupportedAuthenticationException.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">PulsarClientException.UnsupportedAuthenticationException</span></a> - Exception in <a href="org/apache/pulsar/client/api/package-summary.html">org.apache.pulsar.client.api</a></dt>
 <dd>&nbsp;</dd>
-<dt><a href="org/apache/pulsar/client/api/url/PulsarURLStreamHandlerFactory.html" title="class in org.apache.pulsar.client.api.url"><span class="typeNameLink">PulsarURLStreamHandlerFactory</span></a> - Class in <a href="org/apache/pulsar/client/api/url/package-summary.html">org.apache.pulsar.client.api.url</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/url/PulsarURLStreamHandlerFactory.html#PulsarURLStreamHandlerFactory--">PulsarURLStreamHandlerFactory()</a></span> - Constructor for class org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/PulsarURLStreamHandlerFactory.html" title="class in org.apache.pulsar.client.api.url">PulsarURLStreamHandlerFactory</a></dt>
-<dd>&nbsp;</dd>
 </dl>
 <a name="I:R">
 <!--   -->
@@ -1581,6 +1640,16 @@
 </a>
 <h2 class="title">S</h2>
 <dl>
+<dt><a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Schema</span></a>&lt;<a href="org/apache/pulsar/client/api/Schema.html" title="type parameter in Schema">T</a>&gt; - Interface in <a href="org/apache/pulsar/client/api/package-summary.html">org.apache.pulsar.client.api</a></dt>
+<dd>
+<div class="block">Message schema definition</div>
+</dd>
+<dt><a href="org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">SchemaSerializationException</span></a> - Exception in <a href="org/apache/pulsar/client/api/package-summary.html">org.apache.pulsar.client.api</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/SchemaSerializationException.html#SchemaSerializationException-java.lang.String-">SchemaSerializationException(String)</a></span> - Constructor for exception org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api">SchemaSerializationException</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/SchemaSerializationException.html#SchemaSerializationException-java.lang.Throwable-">SchemaSerializationException(Throwable)</a></span> - Constructor for exception org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api">SchemaSerializationException</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Consumer.html#seek-org.apache.pulsar.client.api.MessageId-">seek(MessageId)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Consumer.html" title="interface in org.apache.pulsar.client.api">Consumer</a></dt>
 <dd>
 <div class="block">Reset the subscription associated with this consumer to a specific message id.</div>
@@ -1984,6 +2053,10 @@
 <div class="block">Set the interval between each stat info <i>(default: 60 seconds)</i> Stats will be activated with positive
  statsIntervalSeconds It should be set to at least 1 second</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#STRING">STRING</a></span> - Static variable in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Schema that can be used to encode/decode messages whose values are String.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ConsumerBuilder.html#subscribe--">subscribe()</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ConsumerBuilder.html" title="interface in org.apache.pulsar.client.api">ConsumerBuilder</a></dt>
 <dd>
 <div class="block">Finalize the <a href="org/apache/pulsar/client/api/Consumer.html" title="interface in org.apache.pulsar.client.api"><code>Consumer</code></a> creation by subscribing to the topic.</div>
@@ -2052,6 +2125,10 @@
 <dl>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClientException.TimeoutException.html#TimeoutException-java.lang.String-">TimeoutException(String)</a></span> - Constructor for exception org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClientException.TimeoutException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.TimeoutException</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/AuthenticationFactory.html#TLS-java.lang.String-java.lang.String-">TLS(String, String)</a></span> - Static method in class org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/AuthenticationFactory.html" title="class in org.apache.pulsar.client.api">AuthenticationFactory</a></dt>
+<dd>
+<div class="block">Create an authentication provider for TLS based authentication.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ClientBuilder.html#tlsTrustCertsFilePath-java.lang.String-">tlsTrustCertsFilePath(String)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ClientBuilder.html" title="interface in org.apache.pulsar.client.api">ClientBuilder</a></dt>
 <dd>
 <div class="block">Set the path to the trusted TLS certificate file</div>
@@ -2060,6 +2137,14 @@
 <dd>
 <div class="block">Serialize the message ID into a byte array</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/AuthenticationFactory.html#token-java.lang.String-">token(String)</a></span> - Static method in class org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/AuthenticationFactory.html" title="class in org.apache.pulsar.client.api">AuthenticationFactory</a></dt>
+<dd>
+<div class="block">Create an authentication provider for token based authentication.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/AuthenticationFactory.html#token-java.util.function.Supplier-">token(Supplier&lt;String&gt;)</a></span> - Static method in class org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/AuthenticationFactory.html" title="class in org.apache.pulsar.client.api">AuthenticationFactory</a></dt>
+<dd>
+<div class="block">Create an authentication provider for token based authentication.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/PulsarClientException.TooManyRequestsException.html#TooManyRequestsException-java.lang.String-">TooManyRequestsException(String)</a></span> - Constructor for exception org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/PulsarClientException.TooManyRequestsException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.TooManyRequestsException</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/ConsumerBuilder.html#topic-java.lang.String...-">topic(String...)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ConsumerBuilder.html" title="interface in org.apache.pulsar.client.api">ConsumerBuilder</a></dt>
@@ -2118,16 +2203,16 @@
 <dd>
 <div class="block">Update the service URL this client is using.</div>
 </dd>
-<dt><a href="org/apache/pulsar/client/api/url/URL.html" title="class in org.apache.pulsar.client.api.url"><span class="typeNameLink">URL</span></a> - Class in <a href="org/apache/pulsar/client/api/url/package-summary.html">org.apache.pulsar.client.api.url</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/url/URL.html#URL-java.lang.String-">URL(String)</a></span> - Constructor for class org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/URL.html" title="class in org.apache.pulsar.client.api.url">URL</a></dt>
-<dd>&nbsp;</dd>
 </dl>
 <a name="I:V">
 <!--   -->
 </a>
 <h2 class="title">V</h2>
 <dl>
+<dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/Schema.html#validate-byte:A-">validate(byte[])</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a></dt>
+<dd>
+<div class="block">Check if the message is a valid object for this schema.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/pulsar/client/api/TypedMessageBuilder.html#value-T-">value(T)</a></span> - Method in interface org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/TypedMessageBuilder.html" title="interface in org.apache.pulsar.client.api">TypedMessageBuilder</a></dt>
 <dd>
 <div class="block">Set a domain object on the message</div>
@@ -2218,7 +2303,7 @@ the order they are declared.</div>
 the order they are declared.</div>
 </dd>
 </dl>
-<a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:K">K</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:U">U</a>&nbs [...]
+<a href="#I:A">A</a>&nbsp;<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:D">D</a>&nbsp;<a href="#I:E">E</a>&nbsp;<a href="#I:F">F</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:H">H</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:J">J</a>&nbsp;<a href="#I:K">K</a>&nbsp;<a href="#I:L">L</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:P">P</a>&nbsp;<a href="#I:R">R</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbs [...]
 <!-- ======= START OF BOTTOM NAVBAR ====== -->
 <div class="bottomNav"><a name="navbar.bottom">
 <!--   -->
diff --git a/content/api/client/org/apache/pulsar/client/api/Authentication.html b/content/api/client/org/apache/pulsar/client/api/Authentication.html
index 42e1350..bfdfcbf 100644
--- a/content/api/client/org/apache/pulsar/client/api/Authentication.html
+++ b/content/api/client/org/apache/pulsar/client/api/Authentication.html
@@ -105,6 +105,7 @@ var activeTableTab = "activeTableTab";
 <br>
 <pre>public interface <span class="typeNameLabel">Authentication</span>
 extends Closeable, Serializable</pre>
+<div class="block">Interface of authentication providers.</div>
 </li>
 </ul>
 </div>
diff --git a/content/api/client/org/apache/pulsar/client/api/AuthenticationFactory.html b/content/api/client/org/apache/pulsar/client/api/AuthenticationFactory.html
index 89af772..b590f3d 100644
--- a/content/api/client/org/apache/pulsar/client/api/AuthenticationFactory.html
+++ b/content/api/client/org/apache/pulsar/client/api/AuthenticationFactory.html
@@ -17,7 +17,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":9,"i1":9};
+var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -158,6 +158,25 @@ extends Object</pre>
 <div class="block">Create an instance of the Authentication-Plugin</div>
 </td>
 </tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api">Authentication</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/AuthenticationFactory.html#TLS-java.lang.String-java.lang.String-">TLS</a></span>(String&nbsp;certFilePath,
+   String&nbsp;keyFilePath)</code>
+<div class="block">Create an authentication provider for TLS based authentication.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api">Authentication</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/AuthenticationFactory.html#token-java.lang.String-">token</a></span>(String&nbsp;token)</code>
+<div class="block">Create an authentication provider for token based authentication.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api">Authentication</a></code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/AuthenticationFactory.html#token-java.util.function.Supplier-">token</a></span>(java.util.function.Supplier&lt;String&gt;&nbsp;tokenSupplier)</code>
+<div class="block">Create an authentication provider for token based authentication.</div>
+</td>
+</tr>
 </table>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.Object">
@@ -197,6 +216,50 @@ extends Object</pre>
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a name="token-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>token</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api">Authentication</a>&nbsp;token(String&nbsp;token)</pre>
+<div class="block">Create an authentication provider for token based authentication.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>token</code> - the client auth token</dd>
+</dl>
+</li>
+</ul>
+<a name="token-java.util.function.Supplier-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>token</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api">Authentication</a>&nbsp;token(java.util.function.Supplier&lt;String&gt;&nbsp;tokenSupplier)</pre>
+<div class="block">Create an authentication provider for token based authentication.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>tokenSupplier</code> - a supplier of the client auth token</dd>
+</dl>
+</li>
+</ul>
+<a name="TLS-java.lang.String-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>TLS</h4>
+<pre>public static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api">Authentication</a>&nbsp;TLS(String&nbsp;certFilePath,
+                                 String&nbsp;keyFilePath)</pre>
+<div class="block">Create an authentication provider for TLS based authentication.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>certFilePath</code> - the path to the TLS client public key</dd>
+<dd><code>keyFilePath</code> - the path to the TLS client private key</dd>
+</dl>
+</li>
+</ul>
 <a name="create-java.lang.String-java.lang.String-">
 <!--   -->
 </a>
diff --git a/content/api/client/org/apache/pulsar/client/api/MessageBuilder.html b/content/api/client/org/apache/pulsar/client/api/MessageBuilder.html
index a9f0161..f176ed3 100644
--- a/content/api/client/org/apache/pulsar/client/api/MessageBuilder.html
+++ b/content/api/client/org/apache/pulsar/client/api/MessageBuilder.html
@@ -139,7 +139,7 @@ public interface <span class="typeNameLabel">MessageBuilder&lt;T&gt;</span></pre
 </tr>
 <tr id="i2" class="altColor">
 <td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api">MessageBuilder</a>&lt;T&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/MessageBuilder.html#create--">create</a></span>(&lt;any&gt;&nbsp;schema)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/MessageBuilder.html#create-org.apache.pulsar.client.api.Schema-">create</a></span>(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;schema)</code>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Create a new message builder instance.</div>
 </td>
@@ -239,13 +239,13 @@ public interface <span class="typeNameLabel">MessageBuilder&lt;T&gt;</span></pre
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a name="create--">
+<a name="create-org.apache.pulsar.client.api.Schema-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>create</h4>
-<pre>static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api">MessageBuilder</a>&lt;T&gt;&nbsp;create(&lt;any&gt;&nbsp;schema)</pre>
+<pre>static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api">MessageBuilder</a>&lt;T&gt;&nbsp;create(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;schema)</pre>
 <div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
 <div class="block">Create a new message builder instance.
  <p>
diff --git a/content/api/client/org/apache/pulsar/client/api/PulsarClient.html b/content/api/client/org/apache/pulsar/client/api/PulsarClient.html
index 29e3ac2..7a9beff 100644
--- a/content/api/client/org/apache/pulsar/client/api/PulsarClient.html
+++ b/content/api/client/org/apache/pulsar/client/api/PulsarClient.html
@@ -230,7 +230,7 @@ extends Closeable</pre>
 </tr>
 <tr id="i13" class="rowColor">
 <td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ConsumerBuilder.html" title="interface in org.apache.pulsar.client.api">ConsumerBuilder</a>&lt;T&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/PulsarClient.html#newConsumer--">newConsumer</a></span>(&lt;any&gt;&nbsp;schema)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/PulsarClient.html#newConsumer-org.apache.pulsar.client.api.Schema-">newConsumer</a></span>(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;schema)</code>
 <div class="block">Create a consumer with default for subscribing on a specific topic
 
  Since 2.2, if you are creating a consumer with non-bytes schema on a non-existence topic, it will
@@ -245,7 +245,7 @@ extends Closeable</pre>
 </tr>
 <tr id="i15" class="rowColor">
 <td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ProducerBuilder.html" title="interface in org.apache.pulsar.client.api">ProducerBuilder</a>&lt;T&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/PulsarClient.html#newProducer--">newProducer</a></span>(&lt;any&gt;&nbsp;schema)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/PulsarClient.html#newProducer-org.apache.pulsar.client.api.Schema-">newProducer</a></span>(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;schema)</code>
 <div class="block">Create a producer with default for publishing on a specific topic</div>
 </td>
 </tr>
@@ -257,7 +257,7 @@ extends Closeable</pre>
 </tr>
 <tr id="i17" class="rowColor">
 <td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ReaderBuilder.html" title="interface in org.apache.pulsar.client.api">ReaderBuilder</a>&lt;T&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/PulsarClient.html#newReader--">newReader</a></span>(&lt;any&gt;&nbsp;schema)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/PulsarClient.html#newReader-org.apache.pulsar.client.api.Schema-">newReader</a></span>(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;schema)</code>
 <div class="block">Create a topic reader for reading messages from the specified topic.</div>
 </td>
 </tr>
@@ -410,13 +410,13 @@ static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/PulsarClient.ht
 </dl>
 </li>
 </ul>
-<a name="newProducer--">
+<a name="newProducer-org.apache.pulsar.client.api.Schema-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>newProducer</h4>
-<pre>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ProducerBuilder.html" title="interface in org.apache.pulsar.client.api">ProducerBuilder</a>&lt;T&gt;&nbsp;newProducer(&lt;any&gt;&nbsp;schema)</pre>
+<pre>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ProducerBuilder.html" title="interface in org.apache.pulsar.client.api">ProducerBuilder</a>&lt;T&gt;&nbsp;newProducer(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;schema)</pre>
 <div class="block">Create a producer with default for publishing on a specific topic
  <p>
  Example:
@@ -450,13 +450,13 @@ static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/PulsarClient.ht
 </dl>
 </li>
 </ul>
-<a name="newConsumer--">
+<a name="newConsumer-org.apache.pulsar.client.api.Schema-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>newConsumer</h4>
-<pre>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ConsumerBuilder.html" title="interface in org.apache.pulsar.client.api">ConsumerBuilder</a>&lt;T&gt;&nbsp;newConsumer(&lt;any&gt;&nbsp;schema)</pre>
+<pre>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ConsumerBuilder.html" title="interface in org.apache.pulsar.client.api">ConsumerBuilder</a>&lt;T&gt;&nbsp;newConsumer(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;schema)</pre>
 <div class="block">Create a consumer with default for subscribing on a specific topic
 
  Since 2.2, if you are creating a consumer with non-bytes schema on a non-existence topic, it will
@@ -490,13 +490,13 @@ static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/PulsarClient.ht
 </dl>
 </li>
 </ul>
-<a name="newReader--">
+<a name="newReader-org.apache.pulsar.client.api.Schema-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>newReader</h4>
-<pre>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ReaderBuilder.html" title="interface in org.apache.pulsar.client.api">ReaderBuilder</a>&lt;T&gt;&nbsp;newReader(&lt;any&gt;&nbsp;schema)</pre>
+<pre>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/ReaderBuilder.html" title="interface in org.apache.pulsar.client.api">ReaderBuilder</a>&lt;T&gt;&nbsp;newReader(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;schema)</pre>
 <div class="block">Create a topic reader for reading messages from the specified topic.
  <p>
  The Reader provides a low-level abstraction that allows for manual positioning in the topic, without using a
diff --git a/content/api/client/org/apache/pulsar/client/api/ReaderListener.html b/content/api/client/org/apache/pulsar/client/api/ReaderListener.html
index ddcc206..97f93f1 100644
--- a/content/api/client/org/apache/pulsar/client/api/ReaderListener.html
+++ b/content/api/client/org/apache/pulsar/client/api/ReaderListener.html
@@ -48,7 +48,7 @@ var activeTableTab = "activeTableTab";
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../org/apache/pulsar/client/api/ReaderConfiguration.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/pulsar/client/api/ServiceUrlProvider.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/pulsar/client/api/ReaderListener.html" target="_top">Frames</a></li>
@@ -216,7 +216,7 @@ extends Serializable</pre>
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../org/apache/pulsar/client/api/ReaderConfiguration.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/pulsar/client/api/ServiceUrlProvider.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/pulsar/client/api/ReaderListener.html" target="_top">Frames</a></li>
diff --git a/content/api/client/org/apache/pulsar/client/api/Schema.html b/content/api/client/org/apache/pulsar/client/api/Schema.html
index 450514b..607e450 100644
--- a/content/api/client/org/apache/pulsar/client/api/Schema.html
+++ b/content/api/client/org/apache/pulsar/client/api/Schema.html
@@ -17,8 +17,8 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":6,"i1":6,"i2":6};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
+var methods = {"i0":17,"i1":17,"i2":49,"i3":17,"i4":6,"i5":6,"i6":17,"i7":6,"i8":17,"i9":17,"i10":17,"i11":17,"i12":17,"i13":18};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -126,6 +126,12 @@ var activeTableTab = "activeTableTab";
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;&lt;any&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#KV_BYTES">KV_BYTES</a></span></code>
+<div class="block">Schema that can be used to encode/decode KeyValue.</div>
+</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;String&gt;</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#STRING">STRING</a></span></code>
 <div class="block">Schema that can be used to encode/decode messages whose values are String.</div>
@@ -141,27 +147,85 @@ var activeTableTab = "activeTableTab";
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;<a href="../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema">GenericRecord</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#AUTO_CONSUME--">AUTO_CONSUME</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;byte[]&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#AUTO_PRODUCE_BYTES--">AUTO_PRODUCE_BYTES</a></span>()</code>&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;<a href="../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema">GenericRecord</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#AUTO--">AUTO</a></span>()</code>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#AVRO-java.lang.Class-">AVRO</a></span>(Class&lt;T&gt;&nbsp;clazz)</code>&nbsp;</td>
+</tr>
+<tr id="i4" class="altColor">
 <td class="colFirst"><code><a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="type parameter in Schema">T</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#decode-byte:A-">decode</a></span>(byte[]&nbsp;bytes)</code>
 <div class="block">Decode a byte array into an object using the schema definition and deserializer implementation</div>
 </td>
 </tr>
-<tr id="i1" class="rowColor">
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code>byte[]</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#encode-T-">encode</a></span>(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="type parameter in Schema">T</a>&nbsp;message)</code>
 <div class="block">Encode an object representing the message content into a byte array.</div>
 </td>
 </tr>
-<tr id="i2" class="altColor">
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>static <a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;?&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#getSchema-SchemaInfo-">getSchema</a></span>(SchemaInfo&nbsp;schemaInfo)</code>&nbsp;</td>
+</tr>
+<tr id="i7" class="rowColor">
 <td class="colFirst"><code>SchemaInfo</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#getSchemaInfo--">getSchemaInfo</a></span>()</code>&nbsp;</td>
 </tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#JSON-java.lang.Class-">JSON</a></span>(Class&lt;T&gt;&nbsp;clazz)</code>&nbsp;</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;&lt;any&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#KeyValue-java.lang.Class-java.lang.Class-">KeyValue</a></span>(Class&lt;K&gt;&nbsp;key,
+        Class&lt;V&gt;&nbsp;value)</code>
+<div class="block">Key Value Schema whose underneath key and value schemas are JSONSchema.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;&lt;any&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#KeyValue-java.lang.Class-java.lang.Class-SchemaType-">KeyValue</a></span>(Class&lt;K&gt;&nbsp;key,
+        Class&lt;V&gt;&nbsp;value,
+        SchemaType&nbsp;type)</code>
+<div class="block">Key Value Schema using passed in schema type, support JSON and AVRO currently.</div>
+</td>
+</tr>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>static &lt;K,V&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;&lt;any&gt;&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#KeyValue-org.apache.pulsar.client.api.Schema-org.apache.pulsar.client.api.Schema-">KeyValue</a></span>(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;K&gt;&nbsp;key,
+        <a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;V&gt;&nbsp;value)</code>
+<div class="block">Key Value Schema using passed in key and value schemas.</div>
+</td>
+</tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>static &lt;T extends com.google.protobuf.GeneratedMessageV3&gt;<br><a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#PROTOBUF-java.lang.Class-">PROTOBUF</a></span>(Class&lt;T&gt;&nbsp;clazz)</code>&nbsp;</td>
+</tr>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code>default void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/Schema.html#validate-byte:A-">validate</a></span>(byte[]&nbsp;message)</code>
+<div class="block">Check if the message is a valid object for this schema.</div>
+</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -190,13 +254,23 @@ var activeTableTab = "activeTableTab";
 <a name="STRING">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>STRING</h4>
 <pre>static final&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;String&gt; STRING</pre>
 <div class="block">Schema that can be used to encode/decode messages whose values are String. The payload is encoded with UTF-8.</div>
 </li>
 </ul>
+<a name="KV_BYTES">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>KV_BYTES</h4>
+<pre>static final&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;&lt;any&gt;&gt; KV_BYTES</pre>
+<div class="block">Schema that can be used to encode/decode KeyValue.</div>
+</li>
+</ul>
 </li>
 </ul>
 <!-- ============ METHOD DETAIL ========== -->
@@ -205,6 +279,27 @@ var activeTableTab = "activeTableTab";
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a name="validate-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>validate</h4>
+<pre>default&nbsp;void&nbsp;validate(byte[]&nbsp;message)</pre>
+<div class="block">Check if the message is a valid object for this schema.
+
+ <p>The implementation can choose what its most efficient approach to validate the schema.
+ If the implementation doesn't provide it, it will attempt to use <a href="../../../../../org/apache/pulsar/client/api/Schema.html#decode-byte:A-"><code>decode(byte[])</code></a>
+ to see if this schema can decode this message or not as a validation mechanism to verify
+ the bytes.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>message</code> - the messages to verify</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api">SchemaSerializationException</a></code> - if it is not a valid message</dd>
+</dl>
+</li>
+</ul>
 <a name="encode-java.lang.Object-">
 <!--   -->
 </a><a name="encode-T-">
@@ -244,7 +339,7 @@ var activeTableTab = "activeTableTab";
 <a name="getSchemaInfo--">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>getSchemaInfo</h4>
 <pre>SchemaInfo&nbsp;getSchemaInfo()</pre>
@@ -254,6 +349,105 @@ var activeTableTab = "activeTableTab";
 </dl>
 </li>
 </ul>
+<a name="PROTOBUF-java.lang.Class-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>PROTOBUF</h4>
+<pre>static&nbsp;&lt;T extends com.google.protobuf.GeneratedMessageV3&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;PROTOBUF(Class&lt;T&gt;&nbsp;clazz)</pre>
+</li>
+</ul>
+<a name="AVRO-java.lang.Class-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AVRO</h4>
+<pre>static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;AVRO(Class&lt;T&gt;&nbsp;clazz)</pre>
+</li>
+</ul>
+<a name="JSON-java.lang.Class-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>JSON</h4>
+<pre>static&nbsp;&lt;T&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;&nbsp;JSON(Class&lt;T&gt;&nbsp;clazz)</pre>
+</li>
+</ul>
+<a name="KeyValue-java.lang.Class-java.lang.Class-SchemaType-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>KeyValue</h4>
+<pre>static&nbsp;&lt;K,V&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;&lt;any&gt;&gt;&nbsp;KeyValue(Class&lt;K&gt;&nbsp;key,
+                                    Class&lt;V&gt;&nbsp;value,
+                                    SchemaType&nbsp;type)</pre>
+<div class="block">Key Value Schema using passed in schema type, support JSON and AVRO currently.</div>
+</li>
+</ul>
+<a name="KeyValue-java.lang.Class-java.lang.Class-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>KeyValue</h4>
+<pre>static&nbsp;&lt;K,V&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;&lt;any&gt;&gt;&nbsp;KeyValue(Class&lt;K&gt;&nbsp;key,
+                                    Class&lt;V&gt;&nbsp;value)</pre>
+<div class="block">Key Value Schema whose underneath key and value schemas are JSONSchema.</div>
+</li>
+</ul>
+<a name="KeyValue-org.apache.pulsar.client.api.Schema-org.apache.pulsar.client.api.Schema-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>KeyValue</h4>
+<pre>static&nbsp;&lt;K,V&gt;&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;&lt;any&gt;&gt;&nbsp;KeyValue(<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;K&gt;&nbsp;key,
+                                    <a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;V&gt;&nbsp;value)</pre>
+<div class="block">Key Value Schema using passed in key and value schemas.</div>
+</li>
+</ul>
+<a name="AUTO--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AUTO</h4>
+<pre>@Deprecated
+static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;<a href="../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema">GenericRecord</a>&gt;&nbsp;AUTO()</pre>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
+</li>
+</ul>
+<a name="AUTO_CONSUME--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AUTO_CONSUME</h4>
+<pre>static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;<a href="../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema">GenericRecord</a>&gt;&nbsp;AUTO_CONSUME()</pre>
+</li>
+</ul>
+<a name="AUTO_PRODUCE_BYTES--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>AUTO_PRODUCE_BYTES</h4>
+<pre>static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;byte[]&gt;&nbsp;AUTO_PRODUCE_BYTES()</pre>
+</li>
+</ul>
+<a name="getSchema-SchemaInfo-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getSchema</h4>
+<pre>static&nbsp;<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;?&gt;&nbsp;getSchema(SchemaInfo&nbsp;schemaInfo)</pre>
+</li>
+</ul>
 </li>
 </ul>
 </li>
diff --git a/content/api/client/org/apache/pulsar/client/api/SchemaSerializationException.html b/content/api/client/org/apache/pulsar/client/api/SchemaSerializationException.html
index 1d8d699..75718ed 100644
--- a/content/api/client/org/apache/pulsar/client/api/SchemaSerializationException.html
+++ b/content/api/client/org/apache/pulsar/client/api/SchemaSerializationException.html
@@ -42,7 +42,7 @@
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/pulsar/client/api/SubscriptionInitialPosition.html" title="enum in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/ServiceUrlProvider.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/pulsar/client/api/SchemaSerializationException.html" target="_top">Frames</a></li>
@@ -144,6 +144,9 @@ extends RuntimeException</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/SchemaSerializationException.html#SchemaSerializationException-java.lang.String-">SchemaSerializationException</a></span>(String&nbsp;message)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/pulsar/client/api/SchemaSerializationException.html#SchemaSerializationException-java.lang.Throwable-">SchemaSerializationException</a></span>(Throwable&nbsp;cause)</code>&nbsp;</td>
 </tr>
 </table>
@@ -183,6 +186,15 @@ extends RuntimeException</pre>
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
+<a name="SchemaSerializationException-java.lang.String-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SchemaSerializationException</h4>
+<pre>public&nbsp;SchemaSerializationException(String&nbsp;message)</pre>
+</li>
+</ul>
 <a name="SchemaSerializationException-java.lang.Throwable-">
 <!--   -->
 </a>
@@ -220,7 +232,7 @@ extends RuntimeException</pre>
 <div class="subNav">
 <ul class="navList">
 <li><a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../org/apache/pulsar/client/api/SubscriptionInitialPosition.html" title="enum in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/ServiceUrlProvider.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/pulsar/client/api/SchemaSerializationException.html" target="_top">Frames</a></li>
diff --git a/content/api/client/org/apache/pulsar/client/api/ServiceUrlProvider.html b/content/api/client/org/apache/pulsar/client/api/ServiceUrlProvider.html
index 127c40a..b416319 100644
--- a/content/api/client/org/apache/pulsar/client/api/ServiceUrlProvider.html
+++ b/content/api/client/org/apache/pulsar/client/api/ServiceUrlProvider.html
@@ -47,7 +47,7 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../org/apache/pulsar/client/api/ReaderListener.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../org/apache/pulsar/client/api/SubscriptionInitialPosition.html" title="enum in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
@@ -209,7 +209,7 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../org/apache/pulsar/client/api/ReaderListener.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
 <li><a href="../../../../../org/apache/pulsar/client/api/SubscriptionInitialPosition.html" title="enum in org.apache.pulsar.client.api"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
diff --git a/content/api/client/org/apache/pulsar/client/api/package-frame.html b/content/api/client/org/apache/pulsar/client/api/package-frame.html
index 21be8f4..4e6684a 100644
--- a/content/api/client/org/apache/pulsar/client/api/package-frame.html
+++ b/content/api/client/org/apache/pulsar/client/api/package-frame.html
@@ -35,6 +35,7 @@
 <li><a href="Reader.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">Reader</span></a></li>
 <li><a href="ReaderBuilder.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">ReaderBuilder</span></a></li>
 <li><a href="ReaderListener.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">ReaderListener</span></a></li>
+<li><a href="Schema.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">Schema</span></a></li>
 <li><a href="ServiceUrlProvider.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">ServiceUrlProvider</span></a></li>
 <li><a href="TopicMetadata.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">TopicMetadata</span></a></li>
 <li><a href="TypedMessageBuilder.html" title="interface in org.apache.pulsar.client.api" target="classFrame"><span class="interfaceName">TypedMessageBuilder</span></a></li>
@@ -91,6 +92,7 @@
 <li><a href="PulsarClientException.TooManyRequestsException.html" title="class in org.apache.pulsar.client.api" target="classFrame">PulsarClientException.TooManyRequestsException</a></li>
 <li><a href="PulsarClientException.TopicTerminatedException.html" title="class in org.apache.pulsar.client.api" target="classFrame">PulsarClientException.TopicTerminatedException</a></li>
 <li><a href="PulsarClientException.UnsupportedAuthenticationException.html" title="class in org.apache.pulsar.client.api" target="classFrame">PulsarClientException.UnsupportedAuthenticationException</a></li>
+<li><a href="SchemaSerializationException.html" title="class in org.apache.pulsar.client.api" target="classFrame">SchemaSerializationException</a></li>
 </ul>
 </div>
 </body>
diff --git a/content/api/client/org/apache/pulsar/client/api/package-summary.html b/content/api/client/org/apache/pulsar/client/api/package-summary.html
index f8b8030..17b5939 100644
--- a/content/api/client/org/apache/pulsar/client/api/package-summary.html
+++ b/content/api/client/org/apache/pulsar/client/api/package-summary.html
@@ -42,7 +42,7 @@
 <div class="subNav">
 <ul class="navList">
 <li>Prev&nbsp;Package</li>
-<li><a href="../../../../../org/apache/pulsar/client/api/url/package-summary.html">Next&nbsp;Package</a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/schema/package-summary.html">Next&nbsp;Package</a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/pulsar/client/api/package-summary.html" target="_top">Frames</a></li>
@@ -82,7 +82,9 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api">Authentication</a></td>
-<td class="colLast">&nbsp;</td>
+<td class="colLast">
+<div class="block">Interface of authentication providers.</div>
+</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/pulsar/client/api/AuthenticationDataProvider.html" title="interface in org.apache.pulsar.client.api">AuthenticationDataProvider</a></td>
@@ -217,18 +219,24 @@
 </td>
 </tr>
 <tr class="rowColor">
+<td class="colFirst"><a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api">Schema</a>&lt;T&gt;</td>
+<td class="colLast">
+<div class="block">Message schema definition</div>
+</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/pulsar/client/api/ServiceUrlProvider.html" title="interface in org.apache.pulsar.client.api">ServiceUrlProvider</a></td>
 <td class="colLast">
 <div class="block">The provider to provide the service url.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <td class="colFirst"><a href="../../../../../org/apache/pulsar/client/api/TopicMetadata.html" title="interface in org.apache.pulsar.client.api">TopicMetadata</a></td>
 <td class="colLast">
 <div class="block">Metadata of a topic that can be used for message routing.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <td class="colFirst"><a href="../../../../../org/apache/pulsar/client/api/TypedMessageBuilder.html" title="interface in org.apache.pulsar.client.api">TypedMessageBuilder</a>&lt;T&gt;</td>
 <td class="colLast">
 <div class="block">Message builder that constructs a message to be published through a producer.</div>
@@ -461,6 +469,10 @@
 <td class="colFirst"><a href="../../../../../org/apache/pulsar/client/api/PulsarClientException.UnsupportedAuthenticationException.html" title="class in org.apache.pulsar.client.api">PulsarClientException.UnsupportedAuthenticationException</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><a href="../../../../../org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api">SchemaSerializationException</a></td>
+<td class="colLast">&nbsp;</td>
+</tr>
 </tbody>
 </table>
 </li>
@@ -487,7 +499,7 @@
 <div class="subNav">
 <ul class="navList">
 <li>Prev&nbsp;Package</li>
-<li><a href="../../../../../org/apache/pulsar/client/api/url/package-summary.html">Next&nbsp;Package</a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/schema/package-summary.html">Next&nbsp;Package</a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/pulsar/client/api/package-summary.html" target="_top">Frames</a></li>
diff --git a/content/api/client/org/apache/pulsar/client/api/package-tree.html b/content/api/client/org/apache/pulsar/client/api/package-tree.html
index 2cb56f5..06e5fea 100644
--- a/content/api/client/org/apache/pulsar/client/api/package-tree.html
+++ b/content/api/client/org/apache/pulsar/client/api/package-tree.html
@@ -42,7 +42,7 @@
 <div class="subNav">
 <ul class="navList">
 <li>Prev</li>
-<li><a href="../../../../../org/apache/pulsar/client/api/url/package-tree.html">Next</a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/schema/package-tree.html">Next</a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/pulsar/client/api/package-tree.html" target="_top">Frames</a></li>
@@ -128,6 +128,11 @@
 </li>
 </ul>
 </li>
+<li type="circle">RuntimeException
+<ul>
+<li type="circle">org.apache.pulsar.client.api.<a href="../../../../../org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">SchemaSerializationException</span></a></li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -168,6 +173,7 @@
 <li type="circle">org.apache.pulsar.client.api.<a href="../../../../../org/apache/pulsar/client/api/EncodedAuthenticationParameterSupport.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">EncodedAuthenticationParameterSupport</span></a></li>
 <li type="circle">org.apache.pulsar.client.api.<a href="../../../../../org/apache/pulsar/client/api/Message.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Message</span></a>&lt;T&gt;</li>
 <li type="circle">org.apache.pulsar.client.api.<a href="../../../../../org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">MessageBuilder</span></a>&lt;T&gt;</li>
+<li type="circle">org.apache.pulsar.client.api.<a href="../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Schema</span></a>&lt;T&gt;</li>
 <li type="circle">Serializable
 <ul>
 <li type="circle">org.apache.pulsar.client.api.<a href="../../../../../org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Authentication</span></a> (also extends Closeable)</li>
@@ -228,7 +234,7 @@
 <div class="subNav">
 <ul class="navList">
 <li>Prev</li>
-<li><a href="../../../../../org/apache/pulsar/client/api/url/package-tree.html">Next</a></li>
+<li><a href="../../../../../org/apache/pulsar/client/api/schema/package-tree.html">Next</a></li>
 </ul>
 <ul class="navList">
 <li><a href="../../../../../index.html?org/apache/pulsar/client/api/package-tree.html" target="_top">Frames</a></li>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html b/content/api/client/org/apache/pulsar/client/api/schema/Field.html
similarity index 61%
copy from content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
copy to content/api/client/org/apache/pulsar/client/api/schema/Field.html
index bcd6487..3b04454 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/ErrorData.html
+++ b/content/api/client/org/apache/pulsar/client/api/schema/Field.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>ErrorData (Pulsar Admin Java API)</title>
+<title>Field (Pulsar Client Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,7 +11,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ErrorData (Pulsar Admin Java API)";
+            parent.document.title="Field (Pulsar Client Java API)";
         }
     }
     catch(err) {
@@ -41,12 +41,12 @@
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ErrorData.html" target="_top">Frames</a></li>
-<li><a href="ErrorData.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/client/api/schema/Field.html" target="_top">Frames</a></li>
+<li><a href="Field.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -67,13 +67,13 @@
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li>Method</li>
 </ul>
@@ -84,15 +84,15 @@
 <!-- ========= END OF TOP NAVBAR ========= -->
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
-<div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class ErrorData" class="title">Class ErrorData</h2>
+<div class="subTitle">org.apache.pulsar.client.api.schema</div>
+<h2 title="Class Field" class="title">Class Field</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li>Object</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.ErrorData</li>
+<li>org.apache.pulsar.client.api.schema.Field</li>
 </ul>
 </li>
 </ul>
@@ -101,33 +101,16 @@
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">ErrorData</span>
+<pre>public class <span class="typeNameLabel">Field</span>
 extends Object</pre>
+<div class="block">A field in a record, consisting of a field name, index, and
+ <a href="../../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><code>Schema</code></a> for the field value.</div>
 </li>
 </ul>
 </div>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
-<!-- =========== FIELD SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.summary">
-<!--   -->
-</a>
-<h3>Field Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
-<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Field and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>String</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#reason">reason</a></span></code>&nbsp;</td>
-</tr>
-</table>
-</li>
-</ul>
 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.summary">
@@ -140,10 +123,7 @@ extends Object</pre>
 <th class="colOne" scope="col">Constructor and Description</th>
 </tr>
 <tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#ErrorData--">ErrorData</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/ErrorData.html#ErrorData-java.lang.String-">ErrorData</a></span>(String&nbsp;reason)</code>&nbsp;</td>
+<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html#Field--">Field</a></span>()</code>&nbsp;</td>
 </tr>
 </table>
 </li>
@@ -169,45 +149,19 @@ extends Object</pre>
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
-<!-- ============ FIELD DETAIL =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.detail">
-<!--   -->
-</a>
-<h3>Field Detail</h3>
-<a name="reason">
-<!--   -->
-</a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>reason</h4>
-<pre>public&nbsp;String reason</pre>
-</li>
-</ul>
-</li>
-</ul>
 <!-- ========= CONSTRUCTOR DETAIL ======== -->
 <ul class="blockList">
 <li class="blockList"><a name="constructor.detail">
 <!--   -->
 </a>
 <h3>Constructor Detail</h3>
-<a name="ErrorData--">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>ErrorData</h4>
-<pre>public&nbsp;ErrorData()</pre>
-</li>
-</ul>
-<a name="ErrorData-java.lang.String-">
+<a name="Field--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>ErrorData</h4>
-<pre>public&nbsp;ErrorData(String&nbsp;reason)</pre>
+<h4>Field</h4>
+<pre>public&nbsp;Field()</pre>
 </li>
 </ul>
 </li>
@@ -237,12 +191,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/DispatchRate.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FailureDomain.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li>Prev&nbsp;Class</li>
+<li><a href="../../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/ErrorData.html" target="_top">Frames</a></li>
-<li><a href="ErrorData.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/client/api/schema/Field.html" target="_top">Frames</a></li>
+<li><a href="Field.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -263,13 +217,13 @@ extends Object</pre>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#methods.inherited.from.class.Object">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
 <li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li>Method</li>
 </ul>
diff --git a/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html b/content/api/client/org/apache/pulsar/client/api/schema/GenericRecord.html
similarity index 50%
copy from content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
copy to content/api/client/org/apache/pulsar/client/api/schema/GenericRecord.html
index e1b02bd..d076d3c 100644
--- a/content/api/admin/org/apache/pulsar/common/policies/data/LocalPolicies.html
+++ b/content/api/client/org/apache/pulsar/client/api/schema/GenericRecord.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>LocalPolicies (Pulsar Admin Java API)</title>
+<title>GenericRecord (Pulsar Client Java API)</title>
 <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
 <script type="text/javascript" src="../../../../../../script.js"></script>
 </head>
@@ -11,14 +11,14 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="LocalPolicies (Pulsar Admin Java API)";
+            parent.document.title="GenericRecord (Pulsar Client Java API)";
         }
     }
     catch(err) {
     }
 //-->
-var methods = {"i0":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var methods = {"i0":18,"i1":6,"i2":6};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -47,12 +47,12 @@ var activeTableTab = "activeTableTab";
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/LocalPolicies.html" target="_top">Frames</a></li>
-<li><a href="LocalPolicies.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/client/api/schema/GenericRecord.html" target="_top">Frames</a></li>
+<li><a href="GenericRecord.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_top">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -73,14 +73,14 @@ var activeTableTab = "activeTableTab";
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
 </div>
@@ -90,67 +90,23 @@ var activeTableTab = "activeTableTab";
 <!-- ========= END OF TOP NAVBAR ========= -->
 <!-- ======== START OF CLASS DATA ======== -->
 <div class="header">
-<div class="subTitle">org.apache.pulsar.common.policies.data</div>
-<h2 title="Class LocalPolicies" class="title">Class LocalPolicies</h2>
+<div class="subTitle">org.apache.pulsar.client.api.schema</div>
+<h2 title="Interface GenericRecord" class="title">Interface GenericRecord</h2>
 </div>
 <div class="contentContainer">
-<ul class="inheritance">
-<li>Object</li>
-<li>
-<ul class="inheritance">
-<li>org.apache.pulsar.common.policies.data.LocalPolicies</li>
-</ul>
-</li>
-</ul>
 <div class="description">
 <ul class="blockList">
 <li class="blockList">
 <hr>
 <br>
-<pre>public class <span class="typeNameLabel">LocalPolicies</span>
-extends Object</pre>
+<pre>public interface <span class="typeNameLabel">GenericRecord</span></pre>
+<div class="block">An interface represents a message with schema.</div>
 </li>
 </ul>
 </div>
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
-<!-- =========== FIELD SUMMARY =========== -->
-<ul class="blockList">
-<li class="blockList"><a name="field.summary">
-<!--   -->
-</a>
-<h3>Field Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
-<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colLast" scope="col">Field and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../../../../../../org/apache/pulsar/common/policies/data/BundlesData.html" title="class in org.apache.pulsar.common.policies.data">BundlesData</a></code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#bundles">bundles</a></span></code>&nbsp;</td>
-</tr>
-</table>
-</li>
-</ul>
-<!-- ======== CONSTRUCTOR SUMMARY ======== -->
-<ul class="blockList">
-<li class="blockList"><a name="constructor.summary">
-<!--   -->
-</a>
-<h3>Constructor Summary</h3>
-<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
-<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colOne" scope="col">Constructor and Description</th>
-</tr>
-<tr class="altColor">
-<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#LocalPolicies--">LocalPolicies</a></span>()</code>&nbsp;</td>
-</tr>
-</table>
-</li>
-</ul>
 <!-- ========== METHOD SUMMARY =========== -->
 <ul class="blockList">
 <li class="blockList"><a name="method.summary">
@@ -158,23 +114,30 @@ extends Object</pre>
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t5" class="tableTab"><span><a href="javascript:show(16);">Default Methods</a></span><span class="tabE [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/common/policies/data/LocalPolicies.html#equals-java.lang.Object-">equals</a></span>(Object&nbsp;obj)</code>&nbsp;</td>
+<td class="colFirst"><code>default Object</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html#getField-org.apache.pulsar.client.api.schema.Field-">getField</a></span>(<a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema">Field</a>&nbsp;field)</code>
+<div class="block">Retrieve the value of the provided <tt>field</tt>.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>Object</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html#getField-java.lang.String-">getField</a></span>(String&nbsp;fieldName)</code>
+<div class="block">Retrieve the value of the provided <tt>fieldName</tt>.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>List&lt;<a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema">Field</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html#getFields--">getFields</a></span>()</code>
+<div class="block">Returns the list of fields associated with the record.</div>
+</td>
 </tr>
 </table>
-<ul class="blockList">
-<li class="blockList"><a name="methods.inherited.from.class.Object">
-<!--   -->
-</a>
-<h3>Methods inherited from class&nbsp;Object</h3>
-<code>clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
-</ul>
 </li>
 </ul>
 </li>
@@ -183,56 +146,55 @@ extends Object</pre>
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
-<!-- ============ FIELD DETAIL =========== -->
+<!-- ============ METHOD DETAIL ========== -->
 <ul class="blockList">
-<li class="blockList"><a name="field.detail">
+<li class="blockList"><a name="method.detail">
 <!--   -->
 </a>
-<h3>Field Detail</h3>
-<a name="bundles">
+<h3>Method Detail</h3>
+<a name="getFields--">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
-<h4>bundles</h4>
-<pre>public&nbsp;<a href="../../../../../../org/apache/pulsar/common/policies/data/BundlesData.html" title="class in org.apache.pulsar.common.policies.data">BundlesData</a> bundles</pre>
-</li>
-</ul>
+<h4>getFields</h4>
+<pre>List&lt;<a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema">Field</a>&gt;&nbsp;getFields()</pre>
+<div class="block">Returns the list of fields associated with the record.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the list of fields associated with the record.</dd>
+</dl>
 </li>
 </ul>
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<ul class="blockList">
-<li class="blockList"><a name="constructor.detail">
-<!--   -->
-</a>
-<h3>Constructor Detail</h3>
-<a name="LocalPolicies--">
+<a name="getField-org.apache.pulsar.client.api.schema.Field-">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
-<h4>LocalPolicies</h4>
-<pre>public&nbsp;LocalPolicies()</pre>
-</li>
-</ul>
+<h4>getField</h4>
+<pre>default&nbsp;Object&nbsp;getField(<a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema">Field</a>&nbsp;field)</pre>
+<div class="block">Retrieve the value of the provided <tt>field</tt>.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>field</code> - the field to retrieve the value</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the value object</dd>
+</dl>
 </li>
 </ul>
-<!-- ============ METHOD DETAIL ========== -->
-<ul class="blockList">
-<li class="blockList"><a name="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a name="equals-java.lang.Object-">
+<a name="getField-java.lang.String-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>equals</h4>
-<pre>public&nbsp;boolean&nbsp;equals(Object&nbsp;obj)</pre>
+<h4>getField</h4>
+<pre>Object&nbsp;getField(String&nbsp;fieldName)</pre>
+<div class="block">Retrieve the value of the provided <tt>fieldName</tt>.</div>
 <dl>
-<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
-<dd><code>equals</code>&nbsp;in class&nbsp;<code>Object</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>fieldName</code> - the field name</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the value object</dd>
 </dl>
 </li>
 </ul>
@@ -263,12 +225,12 @@ extends Object</pre>
 </div>
 <div class="subNav">
 <ul class="navList">
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/FunctionStats.FunctionInstanceStats.FunctionInstanceStatsDataBase.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
-<li><a href="../../../../../../org/apache/pulsar/common/policies/data/NamespaceIsolationData.html" title="class in org.apache.pulsar.common.policies.data"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
+<li><a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
+<li>Next&nbsp;Class</li>
 </ul>
 <ul class="navList">
-<li><a href="../../../../../../index.html?org/apache/pulsar/common/policies/data/LocalPolicies.html" target="_top">Frames</a></li>
-<li><a href="LocalPolicies.html" target="_top">No&nbsp;Frames</a></li>
+<li><a href="../../../../../../index.html?org/apache/pulsar/client/api/schema/GenericRecord.html" target="_top">Frames</a></li>
+<li><a href="GenericRecord.html" target="_top">No&nbsp;Frames</a></li>
 </ul>
 <ul class="navList" id="allclasses_navbar_bottom">
 <li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
@@ -289,14 +251,14 @@ extends Object</pre>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li>Nested&nbsp;|&nbsp;</li>
-<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
-<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
-<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
 </div>
diff --git a/content/api/client/org/apache/pulsar/client/api/schema/package-frame.html b/content/api/client/org/apache/pulsar/client/api/schema/package-frame.html
new file mode 100644
index 0000000..ce4ef43
--- /dev/null
+++ b/content/api/client/org/apache/pulsar/client/api/schema/package-frame.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<title>org.apache.pulsar.client.api.schema (Pulsar Client Java API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<h1 class="bar"><a href="../../../../../../org/apache/pulsar/client/api/schema/package-summary.html" target="classFrame">org.apache.pulsar.client.api.schema</a></h1>
+<div class="indexContainer">
+<h2 title="Interfaces">Interfaces</h2>
+<ul title="Interfaces">
+<li><a href="GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema" target="classFrame"><span class="interfaceName">GenericRecord</span></a></li>
+</ul>
+<h2 title="Classes">Classes</h2>
+<ul title="Classes">
+<li><a href="Field.html" title="class in org.apache.pulsar.client.api.schema" target="classFrame">Field</a></li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/content/api/client/org/apache/pulsar/client/api/schema/package-summary.html b/content/api/client/org/apache/pulsar/client/api/schema/package-summary.html
new file mode 100644
index 0000000..07bf355
--- /dev/null
+++ b/content/api/client/org/apache/pulsar/client/api/schema/package-summary.html
@@ -0,0 +1,159 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<title>org.apache.pulsar.client.api.schema (Pulsar Client Java API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.pulsar.client.api.schema (Pulsar Client Java API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../../org/apache/pulsar/client/api/package-summary.html">Prev&nbsp;Package</a></li>
+<li>Next&nbsp;Package</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/pulsar/client/api/schema/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 title="Package" class="title">Package&nbsp;org.apache.pulsar.client.api.schema</h1>
+</div>
+<div class="contentContainer">
+<ul class="blockList">
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Interface Summary table, listing interfaces, and an explanation">
+<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Interface</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema">GenericRecord</a></td>
+<td class="colLast">
+<div class="block">An interface represents a message with schema.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+<li class="blockList">
+<table class="typeSummary" border="0" cellpadding="3" cellspacing="0" summary="Class Summary table, listing classes, and an explanation">
+<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema">Field</a></td>
+<td class="colLast">
+<div class="block">A field in a record, consisting of a field name, index, and
+ <a href="../../../../../../org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><code>Schema</code></a> for the field value.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li class="navBarCell1Rev">Package</li>
+<li>Class</li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../../org/apache/pulsar/client/api/package-summary.html">Prev&nbsp;Package</a></li>
+<li>Next&nbsp;Package</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/pulsar/client/api/schema/package-summary.html" target="_top">Frames</a></li>
+<li><a href="package-summary.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>
diff --git a/content/api/client/org/apache/pulsar/client/api/schema/package-tree.html b/content/api/client/org/apache/pulsar/client/api/schema/package-tree.html
new file mode 100644
index 0000000..440366d
--- /dev/null
+++ b/content/api/client/org/apache/pulsar/client/api/schema/package-tree.html
@@ -0,0 +1,138 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc -->
+<title>org.apache.pulsar.client.api.schema Class Hierarchy (Pulsar Client Java API)</title>
+<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
+<script type="text/javascript" src="../../../../../../script.js"></script>
+</head>
+<body>
+<script type="text/javascript"><!--
+    try {
+        if (location.href.indexOf('is-external=true') == -1) {
+            parent.document.title="org.apache.pulsar.client.api.schema Class Hierarchy (Pulsar Client Java API)";
+        }
+    }
+    catch(err) {
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar.top">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.top.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../../org/apache/pulsar/client/api/package-tree.html">Prev</a></li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/pulsar/client/api/schema/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<div class="header">
+<h1 class="title">Hierarchy For Package org.apache.pulsar.client.api.schema</h1>
+<span class="packageHierarchyLabel">Package Hierarchies:</span>
+<ul class="horizontal">
+<li><a href="../../../../../../overview-tree.html">All Packages</a></li>
+</ul>
+</div>
+<div class="contentContainer">
+<h2 title="Class Hierarchy">Class Hierarchy</h2>
+<ul>
+<li type="circle">Object
+<ul>
+<li type="circle">org.apache.pulsar.client.api.schema.<a href="../../../../../../org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema"><span class="typeNameLink">Field</span></a></li>
+</ul>
+</li>
+</ul>
+<h2 title="Interface Hierarchy">Interface Hierarchy</h2>
+<ul>
+<li type="circle">org.apache.pulsar.client.api.schema.<a href="../../../../../../org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema"><span class="typeNameLink">GenericRecord</span></a></li>
+</ul>
+</div>
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar.bottom">
+<!--   -->
+</a>
+<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
+<a name="navbar.bottom.firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li>Class</li>
+<li class="navBarCell1Rev">Tree</li>
+<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../../../index-all.html">Index</a></li>
+<li><a href="../../../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../../../org/apache/pulsar/client/api/package-tree.html">Prev</a></li>
+<li>Next</li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../../../index.html?org/apache/pulsar/client/api/schema/package-tree.html" target="_top">Frames</a></li>
+<li><a href="package-tree.html" target="_top">No&nbsp;Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<a name="skip.navbar.bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+</body>
+</html>
diff --git a/content/api/client/overview-frame.html b/content/api/client/overview-frame.html
index 2cc670a..bda1de3 100644
--- a/content/api/client/overview-frame.html
+++ b/content/api/client/overview-frame.html
@@ -13,7 +13,7 @@
 <h2 title="Packages">Packages</h2>
 <ul title="Packages">
 <li><a href="org/apache/pulsar/client/api/package-frame.html" target="packageFrame">org.apache.pulsar.client.api</a></li>
-<li><a href="org/apache/pulsar/client/api/url/package-frame.html" target="packageFrame">org.apache.pulsar.client.api.url</a></li>
+<li><a href="org/apache/pulsar/client/api/schema/package-frame.html" target="packageFrame">org.apache.pulsar.client.api.schema</a></li>
 </ul>
 </div>
 <p>&nbsp;</p>
diff --git a/content/api/client/overview-summary.html b/content/api/client/overview-summary.html
index 55ca0a2..3c2536e 100644
--- a/content/api/client/overview-summary.html
+++ b/content/api/client/overview-summary.html
@@ -90,7 +90,7 @@
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><a href="org/apache/pulsar/client/api/url/package-summary.html">org.apache.pulsar.client.api.url</a></td>
+<td class="colFirst"><a href="org/apache/pulsar/client/api/schema/package-summary.html">org.apache.pulsar.client.api.schema</a></td>
 <td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
diff --git a/content/api/client/overview-tree.html b/content/api/client/overview-tree.html
index e18c2eb..1a57a14 100644
--- a/content/api/client/overview-tree.html
+++ b/content/api/client/overview-tree.html
@@ -72,7 +72,7 @@
 <span class="packageHierarchyLabel">Package Hierarchies:</span>
 <ul class="horizontal">
 <li><a href="org/apache/pulsar/client/api/package-tree.html">org.apache.pulsar.client.api</a>, </li>
-<li><a href="org/apache/pulsar/client/api/url/package-tree.html">org.apache.pulsar.client.api.url</a></li>
+<li><a href="org/apache/pulsar/client/api/schema/package-tree.html">org.apache.pulsar.client.api.schema</a></li>
 </ul>
 </div>
 <div class="contentContainer">
@@ -86,8 +86,8 @@
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ConsumerConfiguration.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">ConsumerConfiguration</span></a> (implements Serializable)</li>
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/DeadLetterPolicy.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">DeadLetterPolicy</span></a></li>
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/EncryptionKeyInfo.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">EncryptionKeyInfo</span></a></li>
+<li type="circle">org.apache.pulsar.client.api.schema.<a href="org/apache/pulsar/client/api/schema/Field.html" title="class in org.apache.pulsar.client.api.schema"><span class="typeNameLink">Field</span></a></li>
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ProducerConfiguration.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">ProducerConfiguration</span></a> (implements Serializable)</li>
-<li type="circle">org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/PulsarURLStreamHandlerFactory.html" title="class in org.apache.pulsar.client.api.url"><span class="typeNameLink">PulsarURLStreamHandlerFactory</span></a> (implements URLStreamHandlerFactory)</li>
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/ReaderConfiguration.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">ReaderConfiguration</span></a> (implements Serializable)</li>
 <li type="circle">Throwable (implements Serializable)
 <ul>
@@ -130,14 +130,13 @@
 </li>
 </ul>
 </li>
+<li type="circle">RuntimeException
+<ul>
+<li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api"><span class="typeNameLink">SchemaSerializationException</span></a></li>
 </ul>
 </li>
 </ul>
 </li>
-<li type="circle">org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/URL.html" title="class in org.apache.pulsar.client.api.url"><span class="typeNameLink">URL</span></a></li>
-<li type="circle">URLStreamHandler
-<ul>
-<li type="circle">org.apache.pulsar.client.api.url.<a href="org/apache/pulsar/client/api/url/DataURLStreamHandler.html" title="class in org.apache.pulsar.client.api.url"><span class="typeNameLink">DataURLStreamHandler</span></a></li>
 </ul>
 </li>
 </ul>
@@ -174,8 +173,10 @@
 </ul>
 </li>
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/EncodedAuthenticationParameterSupport.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">EncodedAuthenticationParameterSupport</span></a></li>
+<li type="circle">org.apache.pulsar.client.api.schema.<a href="org/apache/pulsar/client/api/schema/GenericRecord.html" title="interface in org.apache.pulsar.client.api.schema"><span class="typeNameLink">GenericRecord</span></a></li>
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Message.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Message</span></a>&lt;T&gt;</li>
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/MessageBuilder.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">MessageBuilder</span></a>&lt;T&gt;</li>
+<li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Schema.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Schema</span></a>&lt;T&gt;</li>
 <li type="circle">Serializable
 <ul>
 <li type="circle">org.apache.pulsar.client.api.<a href="org/apache/pulsar/client/api/Authentication.html" title="interface in org.apache.pulsar.client.api"><span class="typeNameLink">Authentication</span></a> (also extends Closeable)</li>
diff --git a/content/api/client/package-list b/content/api/client/package-list
index d9f8e0c..5e54569 100644
--- a/content/api/client/package-list
+++ b/content/api/client/package-list
@@ -1,2 +1,2 @@
 org.apache.pulsar.client.api
-org.apache.pulsar.client.api.url
+org.apache.pulsar.client.api.schema
diff --git a/content/api/client/serialized-form.html b/content/api/client/serialized-form.html
index d0bec44..6e3f559 100644
--- a/content/api/client/serialized-form.html
+++ b/content/api/client/serialized-form.html
@@ -299,6 +299,11 @@
 </li>
 </ul>
 </li>
+<li class="blockList"><a name="org.apache.pulsar.client.api.SchemaSerializationException">
+<!--   -->
+</a>
+<h3>Class <a href="org/apache/pulsar/client/api/SchemaSerializationException.html" title="class in org.apache.pulsar.client.api">org.apache.pulsar.client.api.SchemaSerializationException</a> extends RuntimeException implements Serializable</h3>
+</li>
 </ul>
 </li>
 </ul>
diff --git a/content/api/cpp/annotated.html b/content/api/cpp/annotated.html
index 2e468cf..3e4b149 100644
--- a/content/api/cpp/annotated.html
+++ b/content/api/cpp/annotated.html
@@ -96,25 +96,26 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <tr id="row_0_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_authentication_data_provider.html" target="_self">AuthenticationDataProvider</a></td><td class="desc"></td></tr>
 <tr id="row_0_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_auth_factory.html" target="_self">AuthFactory</a></td><td class="desc"></td></tr>
 <tr id="row_0_4_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_auth_tls.html" target="_self">AuthTls</a></td><td class="desc"></td></tr>
-<tr id="row_0_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_broker_consumer_stats.html" target="_self">BrokerConsumerStats</a></td><td class="desc"></td></tr>
-<tr id="row_0_6_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_client.html" target="_self">Client</a></td><td class="desc"></td></tr>
-<tr id="row_0_7_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_client_configuration.html" target="_self">ClientConfiguration</a></td><td class="desc"></td></tr>
-<tr id="row_0_8_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_consumer.html" target="_self">Consumer</a></td><td class="desc"></td></tr>
-<tr id="row_0_9_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_consumer_configuration.html" target="_self">ConsumerConfiguration</a></td><td class="desc"></td></tr>
-<tr id="row_0_10_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_crypto_key_reader.html" target="_self">CryptoKeyReader</a></td><td class="desc"></td></tr>
-<tr id="row_0_11_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_deprecated_exception.html" target="_self">DeprecatedException</a></td><td class="desc"></td></tr>
-<tr id="row_0_12_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_encryption_key_info.html" target="_self">EncryptionKeyInfo</a></td><td class="desc"></td></tr>
-<tr id="row_0_13_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_logger.html" target="_self">Logger</a></td><td class="desc"></td></tr>
-<tr id="row_0_14_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_logger_factory.html" target="_self">LoggerFactory</a></td><td class="desc"></td></tr>
-<tr id="row_0_15_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message.html" target="_self">Message</a></td><td class="desc"></td></tr>
-<tr id="row_0_16_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_builder.html" target="_self">MessageBuilder</a></td><td class="desc"></td></tr>
-<tr id="row_0_17_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_id.html" target="_self">MessageId</a></td><td class="desc"></td></tr>
-<tr id="row_0_18_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_routing_policy.html" target="_self">MessageRoutingPolicy</a></td><td class="desc"></td></tr>
-<tr id="row_0_19_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_producer.html" target="_self">Producer</a></td><td class="desc"></td></tr>
-<tr id="row_0_20_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_producer_configuration.html" target="_self">ProducerConfiguration</a></td><td class="desc"></td></tr>
-<tr id="row_0_21_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_reader.html" target="_self">Reader</a></td><td class="desc"></td></tr>
-<tr id="row_0_22_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_reader_configuration.html" target="_self">ReaderConfiguration</a></td><td class="desc"></td></tr>
-<tr id="row_0_23_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_topic_metadata.html" target="_self">TopicMetadata</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_auth_token.html" target="_self">AuthToken</a></td><td class="desc"></td></tr>
+<tr id="row_0_6_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_broker_consumer_stats.html" target="_self">BrokerConsumerStats</a></td><td class="desc"></td></tr>
+<tr id="row_0_7_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_client.html" target="_self">Client</a></td><td class="desc"></td></tr>
+<tr id="row_0_8_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_client_configuration.html" target="_self">ClientConfiguration</a></td><td class="desc"></td></tr>
+<tr id="row_0_9_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_consumer.html" target="_self">Consumer</a></td><td class="desc"></td></tr>
+<tr id="row_0_10_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_consumer_configuration.html" target="_self">ConsumerConfiguration</a></td><td class="desc"></td></tr>
+<tr id="row_0_11_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_crypto_key_reader.html" target="_self">CryptoKeyReader</a></td><td class="desc"></td></tr>
+<tr id="row_0_12_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_deprecated_exception.html" target="_self">DeprecatedException</a></td><td class="desc"></td></tr>
+<tr id="row_0_13_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_encryption_key_info.html" target="_self">EncryptionKeyInfo</a></td><td class="desc"></td></tr>
+<tr id="row_0_14_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_logger.html" target="_self">Logger</a></td><td class="desc"></td></tr>
+<tr id="row_0_15_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_logger_factory.html" target="_self">LoggerFactory</a></td><td class="desc"></td></tr>
+<tr id="row_0_16_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message.html" target="_self">Message</a></td><td class="desc"></td></tr>
+<tr id="row_0_17_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_builder.html" target="_self">MessageBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_0_18_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_id.html" target="_self">MessageId</a></td><td class="desc"></td></tr>
+<tr id="row_0_19_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_routing_policy.html" target="_self">MessageRoutingPolicy</a></td><td class="desc"></td></tr>
+<tr id="row_0_20_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_producer.html" target="_self">Producer</a></td><td class="desc"></td></tr>
+<tr id="row_0_21_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_producer_configuration.html" target="_self">ProducerConfiguration</a></td><td class="desc"></td></tr>
+<tr id="row_0_22_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_reader.html" target="_self">Reader</a></td><td class="desc"></td></tr>
+<tr id="row_0_23_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_reader_configuration.html" target="_self">ReaderConfiguration</a></td><td class="desc"></td></tr>
+<tr id="row_0_24_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_topic_metadata.html" target="_self">TopicMetadata</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->
diff --git a/content/api/cpp/authentication_8h_source.html b/content/api/cpp/authentication_8h_source.html
index aa71ec5..60fcb5a 100644
--- a/content/api/cpp/authentication_8h_source.html
+++ b/content/api/cpp/authentication_8h_source.html
@@ -89,7 +89,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <div class="title">authentication.h</div>  </div>
 </div><!--header-->
 <div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00023">< [...]
+<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00023">< [...]
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">
diff --git a/content/api/cpp/classes.html b/content/api/cpp/classes.html
index 4824401..e65ae06 100644
--- a/content/api/cpp/classes.html
+++ b/content/api/cpp/classes.html
@@ -103,13 +103,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <tr><td valign="top"><a class="el" href="classpulsar_1_1_authentication_data_provider.html">AuthenticationDataProvider</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_consumer.html">Consumer</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td></td></tr>
 <tr><td valign="top"><a class="el" href="classpulsar_1_1_auth_factory.html">AuthFactory</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_consumer_configuration.html">ConsumerConfiguration</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_logger.html">Logger</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;& [...]
 <tr><td valign="top"><a class="el" href="classpulsar_1_1_auth_tls.html">AuthTls</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_crypto_key_reader.html">CryptoKeyReader</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_logger_factory.html">LoggerFactory</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160 [...]
-<tr><td rowspan="2" valign="bottom"><a name="letter_B"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;B&#160;&#160;</div></td></tr></table>
-</td><td rowspan="2" valign="bottom"><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;D&#160;&#160;</div></td></tr></table>
+<tr><td valign="top"><a class="el" href="classpulsar_1_1_auth_token.html">AuthToken</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;D&#160;&#160;</div></td></tr></table>
 </td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
 </td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
 </td><td></td></tr>
-<tr><td></td></tr>
-<tr><td valign="top"><a class="el" href="classpulsar_1_1_broker_consumer_stats.html">BrokerConsumerStats</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_deprecated_exception.html">DeprecatedException</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_message.html">Message</a> (<a class="el" href="namespacepulsar.html">pul [...]
+<tr><td rowspan="2" valign="bottom"><a name="letter_B"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;B&#160;&#160;</div></td></tr></table>
+</td><td></td></tr>
+<tr><td valign="top"><a class="el" href="classpulsar_1_1_deprecated_exception.html">DeprecatedException</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_message.html">Message</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classpulsar_1_1_reader.html">Reader</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</ [...]
+<tr><td valign="top"><a class="el" href="classpulsar_1_1_broker_consumer_stats.html">BrokerConsumerStats</a> (<a class="el" href="namespacepulsar.html">pulsar</a>)&#160;&#160;&#160;</td><td></td><td></td><td></td><td></td></tr>
 <tr><td></td><td></td><td></td><td></td><td></td></tr>
 </table>
 <div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|& [...]
diff --git a/content/api/cpp/classpulsar_1_1_auth_token-members.html b/content/api/cpp/classpulsar_1_1_auth_token-members.html
new file mode 100644
index 0000000..439522c
--- /dev/null
+++ b/content/api/cpp/classpulsar_1_1_auth_token-members.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<title>pulsar-client-cpp: Member List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">pulsar-client-cpp
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="namespacepulsar.html">pulsar</a></li><li class="navelem"><a class="el" href="classpulsar_1_1_auth_token.html">AuthToken</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">pulsar::AuthToken Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>authData_</b> (defined in <a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Authentication</b>() (defined in <a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>AuthToken</b>(AuthenticationDataPtr &amp;) (defined in <a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>create</b>(ParamMap &amp;params) (defined in <a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>create</b>(const std::string &amp;authParamsString) (defined in <a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html#ae9b2da50ad0c22335b298d939239602c">create</a>(const TokenSupplier &amp;tokenSupplier)</td><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html#a80911f1374df425fdb76f066dfe7ebd9">createWithToken</a>(const std::string &amp;token)</td><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>getAuthData</b>(AuthenticationDataPtr &amp;authDataToken) const  (defined in <a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getAuthMethodName</b>() const  (defined in <a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>parseDefaultFormatAuthParams</b>(const std::string &amp;authParamsString) (defined in <a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Authentication</b>() (defined in <a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~AuthToken</b>() (defined in <a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a>)</td><td class="entry"><a class="el" href="classpulsar_1_1_auth_token.html">pulsar::AuthToken</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.11
+</small></address>
+</body>
+</html>
diff --git a/content/api/cpp/classpulsar_1_1_auth_token.html b/content/api/cpp/classpulsar_1_1_auth_token.html
new file mode 100644
index 0000000..232d737
--- /dev/null
+++ b/content/api/cpp/classpulsar_1_1_auth_token.html
@@ -0,0 +1,223 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.11"/>
+<title>pulsar-client-cpp: pulsar::AuthToken Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { init_search(); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">pulsar-client-cpp
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.11 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
+      <li><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
+      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
+      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="namespacepulsar.html">pulsar</a></li><li class="navelem"><a class="el" href="classpulsar_1_1_auth_token.html">AuthToken</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
+<a href="classpulsar_1_1_auth_token-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">pulsar::AuthToken Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="_authentication_8h_source.html">Authentication.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for pulsar::AuthToken:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="classpulsar_1_1_auth_token.png" usemap="#pulsar::AuthToken_map" alt=""/>
+  <map id="pulsar::AuthToken_map" name="pulsar::AuthToken_map">
+<area href="classpulsar_1_1_authentication.html" alt="pulsar::Authentication" shape="rect" coords="0,0,133,24"/>
+</map>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aeb6fe37de94ac0898f32ca07d1a22b7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeb6fe37de94ac0898f32ca07d1a22b7c"></a>
+&#160;</td><td class="memItemRight" valign="bottom"><b>AuthToken</b> (AuthenticationDataPtr &amp;)</td></tr>
+<tr class="separator:aeb6fe37de94ac0898f32ca07d1a22b7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9a1d58405e9fc9ea130f4dbc4d63a27"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9a1d58405e9fc9ea130f4dbc4d63a27"></a>
+const std::string&#160;</td><td class="memItemRight" valign="bottom"><b>getAuthMethodName</b> () const </td></tr>
+<tr class="separator:af9a1d58405e9fc9ea130f4dbc4d63a27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a730a1dc6c7583f0a9920c8afd23a7a85"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a730a1dc6c7583f0a9920c8afd23a7a85"></a>
+<a class="el" href="namespacepulsar.html#ae85314d6b9e8afd831cf8c66705f2dbb">Result</a>&#160;</td><td class="memItemRight" valign="bottom"><b>getAuthData</b> (AuthenticationDataPtr &amp;authDataToken) const </td></tr>
+<tr class="separator:a730a1dc6c7583f0a9920c8afd23a7a85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:aa4d3740c838620765a7332bf2247b5e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa4d3740c838620765a7332bf2247b5e9"></a>
+static AuthenticationPtr&#160;</td><td class="memItemRight" valign="bottom"><b>create</b> (ParamMap &amp;params)</td></tr>
+<tr class="separator:aa4d3740c838620765a7332bf2247b5e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9601a01bd5b7b644531d82fc3cfa7d09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9601a01bd5b7b644531d82fc3cfa7d09"></a>
+static AuthenticationPtr&#160;</td><td class="memItemRight" valign="bottom"><b>create</b> (const std::string &amp;authParamsString)</td></tr>
+<tr class="separator:a9601a01bd5b7b644531d82fc3cfa7d09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80911f1374df425fdb76f066dfe7ebd9"><td class="memItemLeft" align="right" valign="top">static AuthenticationPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpulsar_1_1_auth_token.html#a80911f1374df425fdb76f066dfe7ebd9">createWithToken</a> (const std::string &amp;token)</td></tr>
+<tr class="separator:a80911f1374df425fdb76f066dfe7ebd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9b2da50ad0c22335b298d939239602c"><td class="memItemLeft" align="right" valign="top">static AuthenticationPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpulsar_1_1_auth_token.html#ae9b2da50ad0c22335b298d939239602c">create</a> (const TokenSupplier &amp;tokenSupplier)</td></tr>
+<tr class="separator:ae9b2da50ad0c22335b298d939239602c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_static_methods_classpulsar_1_1_authentication"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classpulsar_1_1_authentication')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a></td></tr>
+<tr class="memitem:a0ff47251bd4184cd0e9155e76a5c35bb inherit pub_static_methods_classpulsar_1_1_authentication"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ff47251bd4184cd0e9155e76a5c35bb"></a>
+static ParamMap&#160;</td><td class="memItemRight" valign="bottom"><b>parseDefaultFormatAuthParams</b> (const std::string &amp;authParamsString)</td></tr>
+<tr class="separator:a0ff47251bd4184cd0e9155e76a5c35bb inherit pub_static_methods_classpulsar_1_1_authentication"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classpulsar_1_1_authentication"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpulsar_1_1_authentication')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classpulsar_1_1_authentication.html">pulsar::Authentication</a></td></tr>
+<tr class="memitem:abac33d5c492826fb8a4bea05512c9f7c inherit pro_attribs_classpulsar_1_1_authentication"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abac33d5c492826fb8a4bea05512c9f7c"></a>
+AuthenticationDataPtr&#160;</td><td class="memItemRight" valign="bottom"><b>authData_</b></td></tr>
+<tr class="separator:abac33d5c492826fb8a4bea05512c9f7c inherit pro_attribs_classpulsar_1_1_authentication"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Token based implementation of Pulsar client authentication </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ae9b2da50ad0c22335b298d939239602c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static AuthenticationPtr pulsar::AuthToken::create </td>
+          <td>(</td>
+          <td class="paramtype">const TokenSupplier &amp;&#160;</td>
+          <td class="paramname"><em>tokenSupplier</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Create an authentication provider for token based authentication.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">tokenSupplier</td><td>a supplier of the client auth token </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="a80911f1374df425fdb76f066dfe7ebd9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">static AuthenticationPtr pulsar::AuthToken::createWithToken </td>
+          <td>(</td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>token</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Create an authentication provider for token based authentication.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">token</td><td>a string containing the auth token </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/pulsar/<a class="el" href="_authentication_8h_source.html">Authentication.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.11
+</small></address>
+</body>
+</html>
diff --git a/content/api/cpp/classpulsar_1_1_auth_token.png b/content/api/cpp/classpulsar_1_1_auth_token.png
new file mode 100644
index 0000000..f92d239
Binary files /dev/null and b/content/api/cpp/classpulsar_1_1_auth_token.png differ
diff --git a/content/api/cpp/classpulsar_1_1_authentication.html b/content/api/cpp/classpulsar_1_1_authentication.html
index a3c1892..547bb2b 100644
--- a/content/api/cpp/classpulsar_1_1_authentication.html
+++ b/content/api/cpp/classpulsar_1_1_authentication.html
@@ -106,6 +106,7 @@ Inheritance diagram for pulsar::Authentication:</div>
   <map id="pulsar::Authentication_map" name="pulsar::Authentication_map">
 <area href="classpulsar_1_1_auth_athenz.html" alt="pulsar::AuthAthenz" shape="rect" coords="0,56,133,80"/>
 <area href="classpulsar_1_1_auth_tls.html" alt="pulsar::AuthTls" shape="rect" coords="143,56,276,80"/>
+<area href="classpulsar_1_1_auth_token.html" alt="pulsar::AuthToken" shape="rect" coords="286,56,419,80"/>
 </map>
  </div></div>
 <table class="memberdecls">
diff --git a/content/api/cpp/classpulsar_1_1_authentication.png b/content/api/cpp/classpulsar_1_1_authentication.png
index bf77d9d..8c02614 100644
Binary files a/content/api/cpp/classpulsar_1_1_authentication.png and b/content/api/cpp/classpulsar_1_1_authentication.png differ
diff --git a/content/api/cpp/functions.html b/content/api/cpp/functions.html
index 2089f63..ee00a99 100644
--- a/content/api/cpp/functions.html
+++ b/content/api/cpp/functions.html
@@ -149,6 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </li>
 <li>create()
 : <a class="el" href="classpulsar_1_1_auth_factory.html#a551395eda623d3454c758c3479423ce3">pulsar::AuthFactory</a>
+, <a class="el" href="classpulsar_1_1_auth_token.html#ae9b2da50ad0c22335b298d939239602c">pulsar::AuthToken</a>
 , <a class="el" href="classpulsar_1_1_message_builder.html#a331944373a3ed3fe7daed7730e9254c0">pulsar::MessageBuilder</a>
 </li>
 <li>createProducer()
@@ -157,6 +158,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>createReader()
 : <a class="el" href="classpulsar_1_1_client.html#ad2f6404e06200714e1fe82419b7c963a">pulsar::Client</a>
 </li>
+<li>createWithToken()
+: <a class="el" href="classpulsar_1_1_auth_token.html#a80911f1374df425fdb76f066dfe7ebd9">pulsar::AuthToken</a>
+</li>
 </ul>
 
 
diff --git a/content/api/cpp/functions_func.html b/content/api/cpp/functions_func.html
index bca005f..f6ff579 100644
--- a/content/api/cpp/functions_func.html
+++ b/content/api/cpp/functions_func.html
@@ -149,6 +149,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </li>
 <li>create()
 : <a class="el" href="classpulsar_1_1_auth_factory.html#a551395eda623d3454c758c3479423ce3">pulsar::AuthFactory</a>
+, <a class="el" href="classpulsar_1_1_auth_token.html#ae9b2da50ad0c22335b298d939239602c">pulsar::AuthToken</a>
 , <a class="el" href="classpulsar_1_1_message_builder.html#a331944373a3ed3fe7daed7730e9254c0">pulsar::MessageBuilder</a>
 </li>
 <li>createProducer()
@@ -157,6 +158,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <li>createReader()
 : <a class="el" href="classpulsar_1_1_client.html#ad2f6404e06200714e1fe82419b7c963a">pulsar::Client</a>
 </li>
+<li>createWithToken()
+: <a class="el" href="classpulsar_1_1_auth_token.html#a80911f1374df425fdb76f066dfe7ebd9">pulsar::AuthToken</a>
+</li>
 </ul>
 
 
diff --git a/content/api/cpp/hierarchy.html b/content/api/cpp/hierarchy.html
index 66fbe3d..5b2201e 100644
--- a/content/api/cpp/hierarchy.html
+++ b/content/api/cpp/hierarchy.html
@@ -93,28 +93,29 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_authentication.html" target="_self">pulsar::Authentication</a></td><td class="desc"></td></tr>
 <tr id="row_0_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_auth_athenz.html" target="_self">pulsar::AuthAthenz</a></td><td class="desc"></td></tr>
 <tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_auth_tls.html" target="_self">pulsar::AuthTls</a></td><td class="desc"></td></tr>
-<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_authentication_data_provider.html" target="_self">pulsar::AuthenticationDataProvider</a></td><td class="desc"></td></tr>
-<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_auth_factory.html" target="_self">pulsar::AuthFactory</a></td><td class="desc"></td></tr>
-<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_broker_consumer_stats.html" target="_self">pulsar::BrokerConsumerStats</a></td><td class="desc"></td></tr>
-<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_client.html" target="_self">pulsar::Client</a></td><td class="desc"></td></tr>
-<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_client_configuration.html" target="_self">pulsar::ClientConfiguration</a></td><td class="desc"></td></tr>
-<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_consumer.html" target="_self">pulsar::Consumer</a></td><td class="desc"></td></tr>
-<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_consumer_configuration.html" target="_self">pulsar::ConsumerConfiguration</a></td><td class="desc"></td></tr>
-<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_crypto_key_reader.html" target="_self">pulsar::CryptoKeyReader</a></td><td class="desc"></td></tr>
-<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_encryption_key_info.html" target="_self">pulsar::EncryptionKeyInfo</a></td><td class="desc"></td></tr>
-<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_logger.html" target="_self">pulsar::Logger</a></td><td class="desc"></td></tr>
-<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_logger_factory.html" target="_self">pulsar::LoggerFactory</a></td><td class="desc"></td></tr>
-<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message.html" target="_self">pulsar::Message</a></td><td class="desc"></td></tr>
-<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_builder.html" target="_self">pulsar::MessageBuilder</a></td><td class="desc"></td></tr>
-<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_id.html" target="_self">pulsar::MessageId</a></td><td class="desc"></td></tr>
-<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_routing_policy.html" target="_self">pulsar::MessageRoutingPolicy</a></td><td class="desc"></td></tr>
-<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_producer.html" target="_self">pulsar::Producer</a></td><td class="desc"></td></tr>
-<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_producer_configuration.html" target="_self">pulsar::ProducerConfiguration</a></td><td class="desc"></td></tr>
-<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_reader.html" target="_self">pulsar::Reader</a></td><td class="desc"></td></tr>
-<tr id="row_19_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_reader_configuration.html" target="_self">pulsar::ReaderConfiguration</a></td><td class="desc"></td></tr>
-<tr id="row_20_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_20_" class="arrow" onclick="toggleFolder('20_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>runtime_error</b></td><td class="desc"></td></tr>
-<tr id="row_20_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_deprecated_exception.html" target="_self">pulsar::DeprecatedException</a></td><td class="desc"></td></tr>
-<tr id="row_21_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_topic_metadata.html" target="_self">pulsar::TopicMetadata</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_auth_token.html" target="_self">pulsar::AuthToken</a></td><td class="desc"></td></tr>
+<tr id="row_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_authentication_data_provider.html" target="_self">pulsar::AuthenticationDataProvider</a></td><td class="desc"></td></tr>
+<tr id="row_2_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_auth_factory.html" target="_self">pulsar::AuthFactory</a></td><td class="desc"></td></tr>
+<tr id="row_3_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_broker_consumer_stats.html" target="_self">pulsar::BrokerConsumerStats</a></td><td class="desc"></td></tr>
+<tr id="row_4_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_client.html" target="_self">pulsar::Client</a></td><td class="desc"></td></tr>
+<tr id="row_5_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_client_configuration.html" target="_self">pulsar::ClientConfiguration</a></td><td class="desc"></td></tr>
+<tr id="row_6_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_consumer.html" target="_self">pulsar::Consumer</a></td><td class="desc"></td></tr>
+<tr id="row_7_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_consumer_configuration.html" target="_self">pulsar::ConsumerConfiguration</a></td><td class="desc"></td></tr>
+<tr id="row_8_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_crypto_key_reader.html" target="_self">pulsar::CryptoKeyReader</a></td><td class="desc"></td></tr>
+<tr id="row_9_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_encryption_key_info.html" target="_self">pulsar::EncryptionKeyInfo</a></td><td class="desc"></td></tr>
+<tr id="row_10_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_logger.html" target="_self">pulsar::Logger</a></td><td class="desc"></td></tr>
+<tr id="row_11_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_logger_factory.html" target="_self">pulsar::LoggerFactory</a></td><td class="desc"></td></tr>
+<tr id="row_12_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message.html" target="_self">pulsar::Message</a></td><td class="desc"></td></tr>
+<tr id="row_13_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_builder.html" target="_self">pulsar::MessageBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_14_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_id.html" target="_self">pulsar::MessageId</a></td><td class="desc"></td></tr>
+<tr id="row_15_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_message_routing_policy.html" target="_self">pulsar::MessageRoutingPolicy</a></td><td class="desc"></td></tr>
+<tr id="row_16_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_producer.html" target="_self">pulsar::Producer</a></td><td class="desc"></td></tr>
+<tr id="row_17_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_producer_configuration.html" target="_self">pulsar::ProducerConfiguration</a></td><td class="desc"></td></tr>
+<tr id="row_18_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_reader.html" target="_self">pulsar::Reader</a></td><td class="desc"></td></tr>
+<tr id="row_19_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_reader_configuration.html" target="_self">pulsar::ReaderConfiguration</a></td><td class="desc"></td></tr>
+<tr id="row_20_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_20_" class="arrow" onclick="toggleFolder('20_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>runtime_error</b></td><td class="desc"></td></tr>
+<tr id="row_20_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_deprecated_exception.html" target="_self">pulsar::DeprecatedException</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classpulsar_1_1_topic_metadata.html" target="_self">pulsar::TopicMetadata</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->
diff --git a/content/api/cpp/namespacepulsar.html b/content/api/cpp/namespacepulsar.html
index 3681c6c..b52a70e 100644
--- a/content/api/cpp/namespacepulsar.html
+++ b/content/api/cpp/namespacepulsar.html
@@ -104,6 +104,8 @@ Classes</h2></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpulsar_1_1_auth_tls.html">AuthTls</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpulsar_1_1_auth_token.html">AuthToken</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpulsar_1_1_broker_consumer_stats.html">BrokerConsumerStats</a></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpulsar_1_1_client.html">Client</a></td></tr>
@@ -154,6 +156,9 @@ typedef boost::shared_ptr&lt; <a class="el" href="classpulsar_1_1_authentication
 <tr class="memitem:a10fef2591223603936b7bd86e63ed1b2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10fef2591223603936b7bd86e63ed1b2"></a>
 typedef std::map&lt; std::string, std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ParamMap</b></td></tr>
 <tr class="separator:a10fef2591223603936b7bd86e63ed1b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0625466c3e5e4df2aa86b2819729c8f1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0625466c3e5e4df2aa86b2819729c8f1"></a>
+typedef boost::function&lt; std::string()&gt;&#160;</td><td class="memItemRight" valign="bottom"><b>TokenSupplier</b></td></tr>
+<tr class="separator:a0625466c3e5e4df2aa86b2819729c8f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a8f2a63e4a0acfa6f6383b6634575eed3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f2a63e4a0acfa6f6383b6634575eed3"></a>
 typedef boost::function&lt; void(<a class="el" href="namespacepulsar.html#ae85314d6b9e8afd831cf8c66705f2dbb">Result</a> result, <a class="el" href="classpulsar_1_1_broker_consumer_stats.html">BrokerConsumerStats</a> brokerConsumerStats)&gt;&#160;</td><td class="memItemRight" valign="bottom"><b>BrokerConsumerStatsCallback</b></td></tr>
 <tr class="separator:a8f2a63e4a0acfa6f6383b6634575eed3"><td class="memSeparator" colspan="2">&#160;</td></tr>
diff --git a/content/api/cpp/search/all_0.js b/content/api/cpp/search/all_0.js
index dd92c1b..6c05ace 100644
--- a/content/api/cpp/search/all_0.js
+++ b/content/api/cpp/search/all_0.js
@@ -8,5 +8,6 @@ var searchData=
   ['authentication',['Authentication',['../classpulsar_1_1_authentication.html',1,'pulsar']]],
   ['authenticationdataprovider',['AuthenticationDataProvider',['../classpulsar_1_1_authentication_data_provider.html',1,'pulsar']]],
   ['authfactory',['AuthFactory',['../classpulsar_1_1_auth_factory.html',1,'pulsar']]],
-  ['authtls',['AuthTls',['../classpulsar_1_1_auth_tls.html',1,'pulsar']]]
+  ['authtls',['AuthTls',['../classpulsar_1_1_auth_tls.html',1,'pulsar']]],
+  ['authtoken',['AuthToken',['../classpulsar_1_1_auth_token.html',1,'pulsar']]]
 ];
diff --git a/content/api/cpp/search/all_2.js b/content/api/cpp/search/all_2.js
index 037311b..8475e35 100644
--- a/content/api/cpp/search/all_2.js
+++ b/content/api/cpp/search/all_2.js
@@ -12,8 +12,9 @@ var searchData=
   ['consumerfailover',['ConsumerFailover',['../namespacepulsar.html#ac3e442abe2558a2b257fc7344af61d40aadffd5f0d50b1da36685230cd3f910a1',1,'pulsar']]],
   ['consumershared',['ConsumerShared',['../namespacepulsar.html#ac3e442abe2558a2b257fc7344af61d40ac55370821e835a03c2da742ab27e1705',1,'pulsar']]],
   ['consumertype',['ConsumerType',['../namespacepulsar.html#ac3e442abe2558a2b257fc7344af61d40',1,'pulsar']]],
-  ['create',['create',['../classpulsar_1_1_auth_factory.html#a551395eda623d3454c758c3479423ce3',1,'pulsar::AuthFactory::create()'],['../classpulsar_1_1_message_builder.html#a331944373a3ed3fe7daed7730e9254c0',1,'pulsar::MessageBuilder::create()']]],
+  ['create',['create',['../classpulsar_1_1_auth_factory.html#a551395eda623d3454c758c3479423ce3',1,'pulsar::AuthFactory::create()'],['../classpulsar_1_1_auth_token.html#ae9b2da50ad0c22335b298d939239602c',1,'pulsar::AuthToken::create()'],['../classpulsar_1_1_message_builder.html#a331944373a3ed3fe7daed7730e9254c0',1,'pulsar::MessageBuilder::create()']]],
   ['createproducer',['createProducer',['../classpulsar_1_1_client.html#a96f49cc0ce27bfe68d75224991f0ba52',1,'pulsar::Client::createProducer(const std::string &amp;topic, Producer &amp;producer)'],['../classpulsar_1_1_client.html#aae7658dee80ad23b418cfb7e12f5df05',1,'pulsar::Client::createProducer(const std::string &amp;topic, const ProducerConfiguration &amp;conf, Producer &amp;producer)']]],
   ['createreader',['createReader',['../classpulsar_1_1_client.html#ad2f6404e06200714e1fe82419b7c963a',1,'pulsar::Client']]],
+  ['createwithtoken',['createWithToken',['../classpulsar_1_1_auth_token.html#a80911f1374df425fdb76f066dfe7ebd9',1,'pulsar::AuthToken']]],
   ['cryptokeyreader',['CryptoKeyReader',['../classpulsar_1_1_crypto_key_reader.html',1,'pulsar']]]
 ];
diff --git a/content/api/cpp/search/classes_0.js b/content/api/cpp/search/classes_0.js
index c73c357..ade5541 100644
--- a/content/api/cpp/search/classes_0.js
+++ b/content/api/cpp/search/classes_0.js
@@ -4,5 +4,6 @@ var searchData=
   ['authentication',['Authentication',['../classpulsar_1_1_authentication.html',1,'pulsar']]],
   ['authenticationdataprovider',['AuthenticationDataProvider',['../classpulsar_1_1_authentication_data_provider.html',1,'pulsar']]],
   ['authfactory',['AuthFactory',['../classpulsar_1_1_auth_factory.html',1,'pulsar']]],
-  ['authtls',['AuthTls',['../classpulsar_1_1_auth_tls.html',1,'pulsar']]]
+  ['authtls',['AuthTls',['../classpulsar_1_1_auth_tls.html',1,'pulsar']]],
+  ['authtoken',['AuthToken',['../classpulsar_1_1_auth_token.html',1,'pulsar']]]
 ];
diff --git a/content/api/cpp/search/functions_2.js b/content/api/cpp/search/functions_2.js
index ec50112..5a9887f 100644
--- a/content/api/cpp/search/functions_2.js
+++ b/content/api/cpp/search/functions_2.js
@@ -4,7 +4,8 @@ var searchData=
   ['close',['close',['../classpulsar_1_1_client.html#ac3f0a65b099f88781548d4fad41685ac',1,'pulsar::Client::close()'],['../classpulsar_1_1_producer.html#a0b4a93617a0c0f8d172633a7bf8ba06b',1,'pulsar::Producer::close()']]],
   ['closeasync',['closeAsync',['../classpulsar_1_1_producer.html#a40f5268e6754c9e61e2406d432cffe2f',1,'pulsar::Producer']]],
   ['consumer',['Consumer',['../classpulsar_1_1_consumer.html#afe59503d5d5309f38d4e246bd9f435b4',1,'pulsar::Consumer']]],
-  ['create',['create',['../classpulsar_1_1_auth_factory.html#a551395eda623d3454c758c3479423ce3',1,'pulsar::AuthFactory::create()'],['../classpulsar_1_1_message_builder.html#a331944373a3ed3fe7daed7730e9254c0',1,'pulsar::MessageBuilder::create()']]],
+  ['create',['create',['../classpulsar_1_1_auth_factory.html#a551395eda623d3454c758c3479423ce3',1,'pulsar::AuthFactory::create()'],['../classpulsar_1_1_auth_token.html#ae9b2da50ad0c22335b298d939239602c',1,'pulsar::AuthToken::create()'],['../classpulsar_1_1_message_builder.html#a331944373a3ed3fe7daed7730e9254c0',1,'pulsar::MessageBuilder::create()']]],
   ['createproducer',['createProducer',['../classpulsar_1_1_client.html#a96f49cc0ce27bfe68d75224991f0ba52',1,'pulsar::Client::createProducer(const std::string &amp;topic, Producer &amp;producer)'],['../classpulsar_1_1_client.html#aae7658dee80ad23b418cfb7e12f5df05',1,'pulsar::Client::createProducer(const std::string &amp;topic, const ProducerConfiguration &amp;conf, Producer &amp;producer)']]],
-  ['createreader',['createReader',['../classpulsar_1_1_client.html#ad2f6404e06200714e1fe82419b7c963a',1,'pulsar::Client']]]
+  ['createreader',['createReader',['../classpulsar_1_1_client.html#ad2f6404e06200714e1fe82419b7c963a',1,'pulsar::Client']]],
+  ['createwithtoken',['createWithToken',['../classpulsar_1_1_auth_token.html#a80911f1374df425fdb76f066dfe7ebd9',1,'pulsar::AuthToken']]]
 ];
diff --git a/content/api/python/index.html b/content/api/python/index.html
index 7f2b711..9339d74 100644
--- a/content/api/python/index.html
+++ b/content/api/python/index.html
@@ -1002,6 +1002,15 @@ table {
 
         </li>
         <li class="mono">
+        <span class="class_name"><a href="#pulsar.AuthenticationToken">AuthenticationToken</a></span>
+        
+          
+  <ul>
+    <li class="mono"><a href="#pulsar.AuthenticationToken.__init__">__init__</a></li>
+  </ul>
+
+        </li>
+        <li class="mono">
         <span class="class_name"><a href="#pulsar.Client">Client</a></span>
         
           
@@ -1385,6 +1394,24 @@ class AuthenticationTLS(Authentication):
         _check_type(str, private_key_path, 'private_key_path')
         self.auth = _pulsar.AuthenticationTLS(certificate_path, private_key_path)
 
+
+class AuthenticationToken(Authentication):
+    """
+    Token based authentication implementation
+    """
+    def __init__(self, token):
+        """
+        Create the token authentication provider instance.
+
+        **Args**
+
+        * `token`: A string containing the token or a functions that provides a
+                   string with the token
+        """
+        if not (isinstance(token, str) or callable(token)):
+            raise ValueError("Argument token is expected to be of type 'str' or a function returning 'str'")
+        self.auth = _pulsar.AuthenticationToken(token)
+
 class AuthenticationAthenz(Authentication):
     """
     Athenz Authentication implementation
@@ -1967,7 +1994,7 @@ class Consumer:
 
         This consumer object cannot be reused.
         """
-        return self._consumer.unsubcribe()
+        return self._consumer.unsubscribe()
 
     def receive(self, timeout_millis=None):
         """
@@ -2399,6 +2426,98 @@ shared library.</p></div>
       </div>
       
       <div class="item">
+      <p id="pulsar.AuthenticationToken" class="name">class <span class="ident">AuthenticationToken</span></p>
+      
+  
+    <div class="desc"><p>Token based authentication implementation</p></div>
+  <div class="source_cont">
+  <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-pulsar.AuthenticationToken', this);">Show source &equiv;</a></p>
+  <div id="source-pulsar.AuthenticationToken" class="source">
+    <pre><code>class AuthenticationToken(Authentication):
+    """
+    Token based authentication implementation
+    """
+    def __init__(self, token):
+        """
+        Create the token authentication provider instance.
+
+        **Args**
+
+        * `token`: A string containing the token or a functions that provides a
+                   string with the token
+        """
+        if not (isinstance(token, str) or callable(token)):
+            raise ValueError("Argument token is expected to be of type 'str' or a function returning 'str'")
+        self.auth = _pulsar.AuthenticationToken(token)
+</code></pre>
+  </div>
+</div>
+
+
+      <div class="class">
+          <h3>Ancestors (in MRO)</h3>
+          <ul class="class_list">
+          <li><a href="#pulsar.AuthenticationToken">AuthenticationToken</a></li>
+          <li><a href="#pulsar.Authentication">Authentication</a></li>
+          </ul>
+          <h3>Instance variables</h3>
+            <div class="item">
+            <p id="pulsar.AuthenticationToken.auth" class="name">var <span class="ident">auth</span></p>
+            
+    <p class="inheritance">
+     <strong>Inheritance:</strong>
+       <code><a href="#pulsar.Authentication">Authentication</a></code>.<code><a href="#pulsar.Authentication.auth">auth</a></code>
+    </p>
+
+            
+  
+  <div class="source_cont">
+</div>
+
+            </div>
+          <h3>Methods</h3>
+            
+  <div class="item">
+    <div class="name def" id="pulsar.AuthenticationToken.__init__">
+    <p>def <span class="ident">__init__</span>(</p><p>self, token)</p>
+    </div>
+    
+    <p class="inheritance">
+     <strong>Inheritance:</strong>
+       <code><a href="#pulsar.Authentication">Authentication</a></code>.<code><a href="#pulsar.Authentication.__init__">__init__</a></code>
+    </p>
+
+    
+  
+    <div class="desc"><p>Create the token authentication provider instance.</p>
+<p><strong>Args</strong></p>
+<ul>
+<li><code>token</code>: A string containing the token or a functions that provides a
+           string with the token</li>
+</ul></div>
+  <div class="source_cont">
+  <p class="source_link"><a href="javascript:void(0);" onclick="toggle('source-pulsar.AuthenticationToken.__init__', this);">Show source &equiv;</a></p>
+  <div id="source-pulsar.AuthenticationToken.__init__" class="source">
+    <pre><code>def __init__(self, token):
+    """
+    Create the token authentication provider instance.
+    **Args**
+    * `token`: A string containing the token or a functions that provides a
+               string with the token
+    """
+    if not (isinstance(token, str) or callable(token)):
+        raise ValueError("Argument token is expected to be of type 'str' or a function returning 'str'")
+    self.auth = _pulsar.AuthenticationToken(token)
+</code></pre>
+  </div>
+</div>
+
+  </div>
+  
+      </div>
+      </div>
+      
+      <div class="item">
       <p id="pulsar.Client" class="name">class <span class="ident">Client</span></p>
       
   
@@ -3494,7 +3613,7 @@ def my_listener(consumer, message):
 
         This consumer object cannot be reused.
         """
-        return self._consumer.unsubcribe()
+        return self._consumer.unsubscribe()
 
     def receive(self, timeout_millis=None):
         """
@@ -3941,7 +4060,7 @@ subsequent new messages will not be retained for this consumer.</p>
     subsequent new messages will not be retained for this consumer.
     This consumer object cannot be reused.
     """
-    return self._consumer.unsubcribe()
+    return self._consumer.unsubscribe()
 </code></pre>
   </div>
 </div>
diff --git a/content/docs/en/next/adaptors-kafka.html b/content/docs/en/next/adaptors-kafka.html
index aa1cf84..5333ebd 100644
--- a/content/docs/en/next/adaptors-kafka.html
+++ b/content/docs/en/next/adaptors-kafka.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/adaptors-kafka/index.html b/content/docs/en/next/adaptors-kafka/index.html
index aa1cf84..5333ebd 100644
--- a/content/docs/en/next/adaptors-kafka/index.html
+++ b/content/docs/en/next/adaptors-kafka/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/adaptors-spark.html b/content/docs/en/next/adaptors-spark.html
index ab2f4dc..92f2a6d 100644
--- a/content/docs/en/next/adaptors-spark.html
+++ b/content/docs/en/next/adaptors-spark.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/adaptors-spark/index.html b/content/docs/en/next/adaptors-spark/index.html
index ab2f4dc..92f2a6d 100644
--- a/content/docs/en/next/adaptors-spark/index.html
+++ b/content/docs/en/next/adaptors-spark/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/adaptors-storm.html b/content/docs/en/next/adaptors-storm.html
index bbd36ab..d31dde2 100644
--- a/content/docs/en/next/adaptors-storm.html
+++ b/content/docs/en/next/adaptors-storm.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/adaptors-storm/index.html b/content/docs/en/next/adaptors-storm/index.html
index bbd36ab..d31dde2 100644
--- a/content/docs/en/next/adaptors-storm/index.html
+++ b/content/docs/en/next/adaptors-storm/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ada [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-brokers.html b/content/docs/en/next/admin-api-brokers.html
index d672c8d..a9f2ee1 100644
--- a/content/docs/en/next/admin-api-brokers.html
+++ b/content/docs/en/next/admin-api-brokers.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-brokers/index.html b/content/docs/en/next/admin-api-brokers/index.html
index d672c8d..a9f2ee1 100644
--- a/content/docs/en/next/admin-api-brokers/index.html
+++ b/content/docs/en/next/admin-api-brokers/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-clusters.html b/content/docs/en/next/admin-api-clusters.html
index 6f17f6d..4f6b047 100644
--- a/content/docs/en/next/admin-api-clusters.html
+++ b/content/docs/en/next/admin-api-clusters.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-clusters/index.html b/content/docs/en/next/admin-api-clusters/index.html
index 6f17f6d..4f6b047 100644
--- a/content/docs/en/next/admin-api-clusters/index.html
+++ b/content/docs/en/next/admin-api-clusters/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-namespaces.html b/content/docs/en/next/admin-api-namespaces.html
index d09ebd5..40f5942 100644
--- a/content/docs/en/next/admin-api-namespaces.html
+++ b/content/docs/en/next/admin-api-namespaces.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-namespaces/index.html b/content/docs/en/next/admin-api-namespaces/index.html
index d09ebd5..40f5942 100644
--- a/content/docs/en/next/admin-api-namespaces/index.html
+++ b/content/docs/en/next/admin-api-namespaces/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-non-persistent-topics.html b/content/docs/en/next/admin-api-non-persistent-topics.html
index 22b3224..015f3e4 100644
--- a/content/docs/en/next/admin-api-non-persistent-topics.html
+++ b/content/docs/en/next/admin-api-non-persistent-topics.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-non-persistent-topics/index.html b/content/docs/en/next/admin-api-non-persistent-topics/index.html
index 22b3224..015f3e4 100644
--- a/content/docs/en/next/admin-api-non-persistent-topics/index.html
+++ b/content/docs/en/next/admin-api-non-persistent-topics/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-overview.html b/content/docs/en/next/admin-api-overview.html
index bbf529a..112531b 100644
--- a/content/docs/en/next/admin-api-overview.html
+++ b/content/docs/en/next/admin-api-overview.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-overview/index.html b/content/docs/en/next/admin-api-overview/index.html
index bbf529a..112531b 100644
--- a/content/docs/en/next/admin-api-overview/index.html
+++ b/content/docs/en/next/admin-api-overview/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-partitioned-topics.html b/content/docs/en/next/admin-api-partitioned-topics.html
index fa9b9f2..854de7d 100644
--- a/content/docs/en/next/admin-api-partitioned-topics.html
+++ b/content/docs/en/next/admin-api-partitioned-topics.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-partitioned-topics/index.html b/content/docs/en/next/admin-api-partitioned-topics/index.html
index fa9b9f2..854de7d 100644
--- a/content/docs/en/next/admin-api-partitioned-topics/index.html
+++ b/content/docs/en/next/admin-api-partitioned-topics/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-permissions.html b/content/docs/en/next/admin-api-permissions.html
index 472e972..bb4a737 100644
--- a/content/docs/en/next/admin-api-permissions.html
+++ b/content/docs/en/next/admin-api-permissions.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-permissions/index.html b/content/docs/en/next/admin-api-permissions/index.html
index 472e972..bb4a737 100644
--- a/content/docs/en/next/admin-api-permissions/index.html
+++ b/content/docs/en/next/admin-api-permissions/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-persistent-topics.html b/content/docs/en/next/admin-api-persistent-topics.html
index 7503310..a5c01e5 100644
--- a/content/docs/en/next/admin-api-persistent-topics.html
+++ b/content/docs/en/next/admin-api-persistent-topics.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-persistent-topics/index.html b/content/docs/en/next/admin-api-persistent-topics/index.html
index 7503310..a5c01e5 100644
--- a/content/docs/en/next/admin-api-persistent-topics/index.html
+++ b/content/docs/en/next/admin-api-persistent-topics/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-schemas.html b/content/docs/en/next/admin-api-schemas.html
index 2b69ba3..a089afb 100644
--- a/content/docs/en/next/admin-api-schemas.html
+++ b/content/docs/en/next/admin-api-schemas.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-schemas/index.html b/content/docs/en/next/admin-api-schemas/index.html
index 2b69ba3..a089afb 100644
--- a/content/docs/en/next/admin-api-schemas/index.html
+++ b/content/docs/en/next/admin-api-schemas/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-tenants.html b/content/docs/en/next/admin-api-tenants.html
index 7024118..0c44582 100644
--- a/content/docs/en/next/admin-api-tenants.html
+++ b/content/docs/en/next/admin-api-tenants.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/admin-api-tenants/index.html b/content/docs/en/next/admin-api-tenants/index.html
index 7024118..0c44582 100644
--- a/content/docs/en/next/admin-api-tenants/index.html
+++ b/content/docs/en/next/admin-api-tenants/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-dashboard.html b/content/docs/en/next/administration-dashboard.html
index 609f2f4..1ec5726 100644
--- a/content/docs/en/next/administration-dashboard.html
+++ b/content/docs/en/next/administration-dashboard.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-dashboard/index.html b/content/docs/en/next/administration-dashboard/index.html
index 609f2f4..1ec5726 100644
--- a/content/docs/en/next/administration-dashboard/index.html
+++ b/content/docs/en/next/administration-dashboard/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-geo.html b/content/docs/en/next/administration-geo.html
index 8dfc170..d1c2e73 100644
--- a/content/docs/en/next/administration-geo.html
+++ b/content/docs/en/next/administration-geo.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-geo/index.html b/content/docs/en/next/administration-geo/index.html
index 8dfc170..d1c2e73 100644
--- a/content/docs/en/next/administration-geo/index.html
+++ b/content/docs/en/next/administration-geo/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-load-distribution.html b/content/docs/en/next/administration-load-distribution.html
index fedcfa9..fa638a4 100644
--- a/content/docs/en/next/administration-load-distribution.html
+++ b/content/docs/en/next/administration-load-distribution.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-load-distribution/index.html b/content/docs/en/next/administration-load-distribution/index.html
index fedcfa9..fa638a4 100644
--- a/content/docs/en/next/administration-load-distribution/index.html
+++ b/content/docs/en/next/administration-load-distribution/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-proxy.html b/content/docs/en/next/administration-proxy.html
index f27d991..17f6313 100644
--- a/content/docs/en/next/administration-proxy.html
+++ b/content/docs/en/next/administration-proxy.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-proxy/index.html b/content/docs/en/next/administration-proxy/index.html
index f27d991..17f6313 100644
--- a/content/docs/en/next/administration-proxy/index.html
+++ b/content/docs/en/next/administration-proxy/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-stats.html b/content/docs/en/next/administration-stats.html
index 00243f8..93ca3c8 100644
--- a/content/docs/en/next/administration-stats.html
+++ b/content/docs/en/next/administration-stats.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-stats/index.html b/content/docs/en/next/administration-stats/index.html
index 00243f8..93ca3c8 100644
--- a/content/docs/en/next/administration-stats/index.html
+++ b/content/docs/en/next/administration-stats/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-zk-bk.html b/content/docs/en/next/administration-zk-bk.html
index 38c4c4d..7a01834 100644
--- a/content/docs/en/next/administration-zk-bk.html
+++ b/content/docs/en/next/administration-zk-bk.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/administration-zk-bk/index.html b/content/docs/en/next/administration-zk-bk/index.html
index 38c4c4d..7a01834 100644
--- a/content/docs/en/next/administration-zk-bk/index.html
+++ b/content/docs/en/next/administration-zk-bk/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Adm [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries-cpp.html b/content/docs/en/next/client-libraries-cpp.html
index f9dc70c..0f6d66a 100644
--- a/content/docs/en/next/client-libraries-cpp.html
+++ b/content/docs/en/next/client-libraries-cpp.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries-cpp/index.html b/content/docs/en/next/client-libraries-cpp/index.html
index f9dc70c..0f6d66a 100644
--- a/content/docs/en/next/client-libraries-cpp/index.html
+++ b/content/docs/en/next/client-libraries-cpp/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries-go.html b/content/docs/en/next/client-libraries-go.html
index d4ea7b5..bcf137d 100644
--- a/content/docs/en/next/client-libraries-go.html
+++ b/content/docs/en/next/client-libraries-go.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries-go/index.html b/content/docs/en/next/client-libraries-go/index.html
index d4ea7b5..bcf137d 100644
--- a/content/docs/en/next/client-libraries-go/index.html
+++ b/content/docs/en/next/client-libraries-go/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries-java.html b/content/docs/en/next/client-libraries-java.html
index f567805..fb2eb9f 100644
--- a/content/docs/en/next/client-libraries-java.html
+++ b/content/docs/en/next/client-libraries-java.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
@@ -140,7 +140,6 @@ client.close();
    });
 </code></pre>
 </blockquote>
-<p>' %}</p>
 <h3><a class="anchor" aria-hidden="true" id="configuring-producers"></a><a href="#configuring-producers" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2 [...]
 <p>If you instantiate a <code>Producer</code> object specifying only a topic name, as in the example above, the producer will use the default configuration. To use a non-default configuration, there's a variety of configurable parameters that you can set. For a full listing, see the Javadoc for the {@inject javadoc:ProducerBuilder:/client/org/apache/pulsar/client/api/ProducerBuilder} class. Here's an example:</p>
 <pre><code class="hljs css language-java">Producer&lt;<span class="hljs-keyword">byte</span>[]&gt; producer = client.newProducer()
diff --git a/content/docs/en/next/client-libraries-java/index.html b/content/docs/en/next/client-libraries-java/index.html
index f567805..fb2eb9f 100644
--- a/content/docs/en/next/client-libraries-java/index.html
+++ b/content/docs/en/next/client-libraries-java/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
@@ -140,7 +140,6 @@ client.close();
    });
 </code></pre>
 </blockquote>
-<p>' %}</p>
 <h3><a class="anchor" aria-hidden="true" id="configuring-producers"></a><a href="#configuring-producers" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2 [...]
 <p>If you instantiate a <code>Producer</code> object specifying only a topic name, as in the example above, the producer will use the default configuration. To use a non-default configuration, there's a variety of configurable parameters that you can set. For a full listing, see the Javadoc for the {@inject javadoc:ProducerBuilder:/client/org/apache/pulsar/client/api/ProducerBuilder} class. Here's an example:</p>
 <pre><code class="hljs css language-java">Producer&lt;<span class="hljs-keyword">byte</span>[]&gt; producer = client.newProducer()
diff --git a/content/docs/en/next/client-libraries-python.html b/content/docs/en/next/client-libraries-python.html
index 68303b7..d22cac2 100644
--- a/content/docs/en/next/client-libraries-python.html
+++ b/content/docs/en/next/client-libraries-python.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries-python/index.html b/content/docs/en/next/client-libraries-python/index.html
index 68303b7..d22cac2 100644
--- a/content/docs/en/next/client-libraries-python/index.html
+++ b/content/docs/en/next/client-libraries-python/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries-websocket.html b/content/docs/en/next/client-libraries-websocket.html
index c6751b5..2102fb3 100644
--- a/content/docs/en/next/client-libraries-websocket.html
+++ b/content/docs/en/next/client-libraries-websocket.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries-websocket/index.html b/content/docs/en/next/client-libraries-websocket/index.html
index c6751b5..2102fb3 100644
--- a/content/docs/en/next/client-libraries-websocket/index.html
+++ b/content/docs/en/next/client-libraries-websocket/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Cli [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries.html b/content/docs/en/next/client-libraries.html
index 17bc994..96aebac 100644
--- a/content/docs/en/next/client-libraries.html
+++ b/content/docs/en/next/client-libraries.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Get [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Get [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/client-libraries/index.html b/content/docs/en/next/client-libraries/index.html
index 17bc994..96aebac 100644
--- a/content/docs/en/next/client-libraries/index.html
+++ b/content/docs/en/next/client-libraries/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Get [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Get [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-architecture-overview.html b/content/docs/en/next/concepts-architecture-overview.html
index 319f26e..b82ae4f 100644
--- a/content/docs/en/next/concepts-architecture-overview.html
+++ b/content/docs/en/next/concepts-architecture-overview.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-architecture-overview/index.html b/content/docs/en/next/concepts-architecture-overview/index.html
index 319f26e..b82ae4f 100644
--- a/content/docs/en/next/concepts-architecture-overview/index.html
+++ b/content/docs/en/next/concepts-architecture-overview/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-authentication.html b/content/docs/en/next/concepts-authentication.html
index 34b5896..232c118 100644
--- a/content/docs/en/next/concepts-authentication.html
+++ b/content/docs/en/next/concepts-authentication.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-authentication/index.html b/content/docs/en/next/concepts-authentication/index.html
index 34b5896..232c118 100644
--- a/content/docs/en/next/concepts-authentication/index.html
+++ b/content/docs/en/next/concepts-authentication/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-clients.html b/content/docs/en/next/concepts-clients.html
index 0556252..0b258c8 100644
--- a/content/docs/en/next/concepts-clients.html
+++ b/content/docs/en/next/concepts-clients.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-clients/index.html b/content/docs/en/next/concepts-clients/index.html
index 0556252..0b258c8 100644
--- a/content/docs/en/next/concepts-clients/index.html
+++ b/content/docs/en/next/concepts-clients/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-messaging.html b/content/docs/en/next/concepts-messaging.html
index b91caa6..fbdf979 100644
--- a/content/docs/en/next/concepts-messaging.html
+++ b/content/docs/en/next/concepts-messaging.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-messaging/index.html b/content/docs/en/next/concepts-messaging/index.html
index b91caa6..fbdf979 100644
--- a/content/docs/en/next/concepts-messaging/index.html
+++ b/content/docs/en/next/concepts-messaging/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-multi-tenancy.html b/content/docs/en/next/concepts-multi-tenancy.html
index 2fd0db6..dce574e 100644
--- a/content/docs/en/next/concepts-multi-tenancy.html
+++ b/content/docs/en/next/concepts-multi-tenancy.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-multi-tenancy/index.html b/content/docs/en/next/concepts-multi-tenancy/index.html
index 2fd0db6..dce574e 100644
--- a/content/docs/en/next/concepts-multi-tenancy/index.html
+++ b/content/docs/en/next/concepts-multi-tenancy/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-overview.html b/content/docs/en/next/concepts-overview.html
index 979e63b..850a63f 100644
--- a/content/docs/en/next/concepts-overview.html
+++ b/content/docs/en/next/concepts-overview.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-overview/index.html b/content/docs/en/next/concepts-overview/index.html
index 979e63b..850a63f 100644
--- a/content/docs/en/next/concepts-overview/index.html
+++ b/content/docs/en/next/concepts-overview/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-replication.html b/content/docs/en/next/concepts-replication.html
index cb409a6..03bd16c 100644
--- a/content/docs/en/next/concepts-replication.html
+++ b/content/docs/en/next/concepts-replication.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-replication/index.html b/content/docs/en/next/concepts-replication/index.html
index cb409a6..03bd16c 100644
--- a/content/docs/en/next/concepts-replication/index.html
+++ b/content/docs/en/next/concepts-replication/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-schema-registry.html b/content/docs/en/next/concepts-schema-registry.html
index 181c894..3a5c0e3 100644
--- a/content/docs/en/next/concepts-schema-registry.html
+++ b/content/docs/en/next/concepts-schema-registry.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-schema-registry/index.html b/content/docs/en/next/concepts-schema-registry/index.html
index 181c894..3a5c0e3 100644
--- a/content/docs/en/next/concepts-schema-registry/index.html
+++ b/content/docs/en/next/concepts-schema-registry/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-tiered-storage.html b/content/docs/en/next/concepts-tiered-storage.html
index 380599a..6c21b00 100644
--- a/content/docs/en/next/concepts-tiered-storage.html
+++ b/content/docs/en/next/concepts-tiered-storage.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-tiered-storage/index.html b/content/docs/en/next/concepts-tiered-storage/index.html
index 380599a..6c21b00 100644
--- a/content/docs/en/next/concepts-tiered-storage/index.html
+++ b/content/docs/en/next/concepts-tiered-storage/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-topic-compaction.html b/content/docs/en/next/concepts-topic-compaction.html
index 262a3d0..e221a5a 100644
--- a/content/docs/en/next/concepts-topic-compaction.html
+++ b/content/docs/en/next/concepts-topic-compaction.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/concepts-topic-compaction/index.html b/content/docs/en/next/concepts-topic-compaction/index.html
index 262a3d0..e221a5a 100644
--- a/content/docs/en/next/concepts-topic-compaction/index.html
+++ b/content/docs/en/next/concepts-topic-compaction/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Con [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-compaction.html b/content/docs/en/next/cookbooks-compaction.html
index 6c8f592..66a4da2 100644
--- a/content/docs/en/next/cookbooks-compaction.html
+++ b/content/docs/en/next/cookbooks-compaction.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-compaction/index.html b/content/docs/en/next/cookbooks-compaction/index.html
index 6c8f592..66a4da2 100644
--- a/content/docs/en/next/cookbooks-compaction/index.html
+++ b/content/docs/en/next/cookbooks-compaction/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-deduplication.html b/content/docs/en/next/cookbooks-deduplication.html
index 3eb9cad..3321e07 100644
--- a/content/docs/en/next/cookbooks-deduplication.html
+++ b/content/docs/en/next/cookbooks-deduplication.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-deduplication/index.html b/content/docs/en/next/cookbooks-deduplication/index.html
index 3eb9cad..3321e07 100644
--- a/content/docs/en/next/cookbooks-deduplication/index.html
+++ b/content/docs/en/next/cookbooks-deduplication/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-encryption.html b/content/docs/en/next/cookbooks-encryption.html
index cc33c5b..7faa333 100644
--- a/content/docs/en/next/cookbooks-encryption.html
+++ b/content/docs/en/next/cookbooks-encryption.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-encryption/index.html b/content/docs/en/next/cookbooks-encryption/index.html
index cc33c5b..7faa333 100644
--- a/content/docs/en/next/cookbooks-encryption/index.html
+++ b/content/docs/en/next/cookbooks-encryption/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-message-queue.html b/content/docs/en/next/cookbooks-message-queue.html
index a63d397..f4cb8cd 100644
--- a/content/docs/en/next/cookbooks-message-queue.html
+++ b/content/docs/en/next/cookbooks-message-queue.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-message-queue/index.html b/content/docs/en/next/cookbooks-message-queue/index.html
index a63d397..f4cb8cd 100644
--- a/content/docs/en/next/cookbooks-message-queue/index.html
+++ b/content/docs/en/next/cookbooks-message-queue/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-non-persistent.html b/content/docs/en/next/cookbooks-non-persistent.html
index e88b39c..b11225b 100644
--- a/content/docs/en/next/cookbooks-non-persistent.html
+++ b/content/docs/en/next/cookbooks-non-persistent.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-non-persistent/index.html b/content/docs/en/next/cookbooks-non-persistent/index.html
index e88b39c..b11225b 100644
--- a/content/docs/en/next/cookbooks-non-persistent/index.html
+++ b/content/docs/en/next/cookbooks-non-persistent/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-partitioned.html b/content/docs/en/next/cookbooks-partitioned.html
index d53961e..50098b9 100644
--- a/content/docs/en/next/cookbooks-partitioned.html
+++ b/content/docs/en/next/cookbooks-partitioned.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-partitioned/index.html b/content/docs/en/next/cookbooks-partitioned/index.html
index d53961e..50098b9 100644
--- a/content/docs/en/next/cookbooks-partitioned/index.html
+++ b/content/docs/en/next/cookbooks-partitioned/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-retention-expiry.html b/content/docs/en/next/cookbooks-retention-expiry.html
index 9511949..0ab9072 100644
--- a/content/docs/en/next/cookbooks-retention-expiry.html
+++ b/content/docs/en/next/cookbooks-retention-expiry.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-retention-expiry/index.html b/content/docs/en/next/cookbooks-retention-expiry/index.html
index 9511949..0ab9072 100644
--- a/content/docs/en/next/cookbooks-retention-expiry/index.html
+++ b/content/docs/en/next/cookbooks-retention-expiry/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-tiered-storage.html b/content/docs/en/next/cookbooks-tiered-storage.html
index 870b2d8..441540f 100644
--- a/content/docs/en/next/cookbooks-tiered-storage.html
+++ b/content/docs/en/next/cookbooks-tiered-storage.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/cookbooks-tiered-storage/index.html b/content/docs/en/next/cookbooks-tiered-storage/index.html
index 870b2d8..441540f 100644
--- a/content/docs/en/next/cookbooks-tiered-storage/index.html
+++ b/content/docs/en/next/cookbooks-tiered-storage/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Coo [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-aws.html b/content/docs/en/next/deploy-aws.html
index 8146c59..c6f38bd 100644
--- a/content/docs/en/next/deploy-aws.html
+++ b/content/docs/en/next/deploy-aws.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-aws/index.html b/content/docs/en/next/deploy-aws/index.html
index 8146c59..c6f38bd 100644
--- a/content/docs/en/next/deploy-aws/index.html
+++ b/content/docs/en/next/deploy-aws/index.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-bare-metal-multi-cluster.html b/content/docs/en/next/deploy-bare-metal-multi-cluster.html
index fe83bf4..70dff25 100644
--- a/content/docs/en/next/deploy-bare-metal-multi-cluster.html
+++ b/content/docs/en/next/deploy-bare-metal-multi-cluster.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-bare-metal-multi-cluster/index.html b/content/docs/en/next/deploy-bare-metal-multi-cluster/index.html
index fe83bf4..70dff25 100644
--- a/content/docs/en/next/deploy-bare-metal-multi-cluster/index.html
+++ b/content/docs/en/next/deploy-bare-metal-multi-cluster/index.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-bare-metal.html b/content/docs/en/next/deploy-bare-metal.html
index ef76b45..d09b1f9 100644
--- a/content/docs/en/next/deploy-bare-metal.html
+++ b/content/docs/en/next/deploy-bare-metal.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-bare-metal/index.html b/content/docs/en/next/deploy-bare-metal/index.html
index ef76b45..d09b1f9 100644
--- a/content/docs/en/next/deploy-bare-metal/index.html
+++ b/content/docs/en/next/deploy-bare-metal/index.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-dcos.html b/content/docs/en/next/deploy-dcos.html
index d8be9c2..6adfa45 100644
--- a/content/docs/en/next/deploy-dcos.html
+++ b/content/docs/en/next/deploy-dcos.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-dcos/index.html b/content/docs/en/next/deploy-dcos/index.html
index d8be9c2..6adfa45 100644
--- a/content/docs/en/next/deploy-dcos/index.html
+++ b/content/docs/en/next/deploy-dcos/index.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-kubernetes.html b/content/docs/en/next/deploy-kubernetes.html
index 5dea111..9ad9b39 100644
--- a/content/docs/en/next/deploy-kubernetes.html
+++ b/content/docs/en/next/deploy-kubernetes.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-kubernetes/index.html b/content/docs/en/next/deploy-kubernetes/index.html
index 5dea111..9ad9b39 100644
--- a/content/docs/en/next/deploy-kubernetes/index.html
+++ b/content/docs/en/next/deploy-kubernetes/index.html
@@ -24,7 +24,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-monitoring.html b/content/docs/en/next/deploy-monitoring.html
index 22dcc00..0d00fd0 100644
--- a/content/docs/en/next/deploy-monitoring.html
+++ b/content/docs/en/next/deploy-monitoring.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/deploy-monitoring/index.html b/content/docs/en/next/deploy-monitoring/index.html
index 22dcc00..0d00fd0 100644
--- a/content/docs/en/next/deploy-monitoring/index.html
+++ b/content/docs/en/next/deploy-monitoring/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dep [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-binary-protocol.html b/content/docs/en/next/develop-binary-protocol.html
index 458bf93..cff7146 100644
--- a/content/docs/en/next/develop-binary-protocol.html
+++ b/content/docs/en/next/develop-binary-protocol.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-binary-protocol/index.html b/content/docs/en/next/develop-binary-protocol/index.html
index 458bf93..cff7146 100644
--- a/content/docs/en/next/develop-binary-protocol/index.html
+++ b/content/docs/en/next/develop-binary-protocol/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-cpp.html b/content/docs/en/next/develop-cpp.html
index 067c423..97c9269 100644
--- a/content/docs/en/next/develop-cpp.html
+++ b/content/docs/en/next/develop-cpp.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-cpp/index.html b/content/docs/en/next/develop-cpp/index.html
index 067c423..97c9269 100644
--- a/content/docs/en/next/develop-cpp/index.html
+++ b/content/docs/en/next/develop-cpp/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-load-manager.html b/content/docs/en/next/develop-load-manager.html
index 9f3a3e4..f4b60ec 100644
--- a/content/docs/en/next/develop-load-manager.html
+++ b/content/docs/en/next/develop-load-manager.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-load-manager/index.html b/content/docs/en/next/develop-load-manager/index.html
index 9f3a3e4..f4b60ec 100644
--- a/content/docs/en/next/develop-load-manager/index.html
+++ b/content/docs/en/next/develop-load-manager/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-schema.html b/content/docs/en/next/develop-schema.html
index 11a400c..2b14f4f 100644
--- a/content/docs/en/next/develop-schema.html
+++ b/content/docs/en/next/develop-schema.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-schema/index.html b/content/docs/en/next/develop-schema/index.html
index 11a400c..2b14f4f 100644
--- a/content/docs/en/next/develop-schema/index.html
+++ b/content/docs/en/next/develop-schema/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-tools.html b/content/docs/en/next/develop-tools.html
index 91a3e4c..f5fa888 100644
--- a/content/docs/en/next/develop-tools.html
+++ b/content/docs/en/next/develop-tools.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/develop-tools/index.html b/content/docs/en/next/develop-tools/index.html
index 91a3e4c..f5fa888 100644
--- a/content/docs/en/next/develop-tools/index.html
+++ b/content/docs/en/next/develop-tools/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Dev [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-api.html b/content/docs/en/next/functions-api.html
index 75ca596..d24c502 100644
--- a/content/docs/en/next/functions-api.html
+++ b/content/docs/en/next/functions-api.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-api/index.html b/content/docs/en/next/functions-api/index.html
index 75ca596..d24c502 100644
--- a/content/docs/en/next/functions-api/index.html
+++ b/content/docs/en/next/functions-api/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-deploying.html b/content/docs/en/next/functions-deploying.html
index f37aca0..0fa9af5 100644
--- a/content/docs/en/next/functions-deploying.html
+++ b/content/docs/en/next/functions-deploying.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-deploying/index.html b/content/docs/en/next/functions-deploying/index.html
index f37aca0..0fa9af5 100644
--- a/content/docs/en/next/functions-deploying/index.html
+++ b/content/docs/en/next/functions-deploying/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-guarantees.html b/content/docs/en/next/functions-guarantees.html
index 8e4b60e..f634a45 100644
--- a/content/docs/en/next/functions-guarantees.html
+++ b/content/docs/en/next/functions-guarantees.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-guarantees/index.html b/content/docs/en/next/functions-guarantees/index.html
index 8e4b60e..f634a45 100644
--- a/content/docs/en/next/functions-guarantees/index.html
+++ b/content/docs/en/next/functions-guarantees/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-metrics.html b/content/docs/en/next/functions-metrics.html
index 930f0bd..85cea06 100644
--- a/content/docs/en/next/functions-metrics.html
+++ b/content/docs/en/next/functions-metrics.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-metrics/index.html b/content/docs/en/next/functions-metrics/index.html
index 930f0bd..85cea06 100644
--- a/content/docs/en/next/functions-metrics/index.html
+++ b/content/docs/en/next/functions-metrics/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-overview.html b/content/docs/en/next/functions-overview.html
index fbf04d8..efde5a5 100644
--- a/content/docs/en/next/functions-overview.html
+++ b/content/docs/en/next/functions-overview.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-overview/index.html b/content/docs/en/next/functions-overview/index.html
index fbf04d8..efde5a5 100644
--- a/content/docs/en/next/functions-overview/index.html
+++ b/content/docs/en/next/functions-overview/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-quickstart.html b/content/docs/en/next/functions-quickstart.html
index f7160a7..dd64319 100644
--- a/content/docs/en/next/functions-quickstart.html
+++ b/content/docs/en/next/functions-quickstart.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-quickstart/index.html b/content/docs/en/next/functions-quickstart/index.html
index f7160a7..dd64319 100644
--- a/content/docs/en/next/functions-quickstart/index.html
+++ b/content/docs/en/next/functions-quickstart/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-state.html b/content/docs/en/next/functions-state.html
index 33a1b7d..914a50a 100644
--- a/content/docs/en/next/functions-state.html
+++ b/content/docs/en/next/functions-state.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/functions-state/index.html b/content/docs/en/next/functions-state/index.html
index 33a1b7d..914a50a 100644
--- a/content/docs/en/next/functions-state/index.html
+++ b/content/docs/en/next/functions-state/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-cdc.html b/content/docs/en/next/io-cdc.html
index da2b291..e6e9784 100644
--- a/content/docs/en/next/io-cdc.html
+++ b/content/docs/en/next/io-cdc.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-cdc/index.html b/content/docs/en/next/io-cdc/index.html
index da2b291..e6e9784 100644
--- a/content/docs/en/next/io-cdc/index.html
+++ b/content/docs/en/next/io-cdc/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-connectors.html b/content/docs/en/next/io-connectors.html
index 3b3a65c..27743ef 100644
--- a/content/docs/en/next/io-connectors.html
+++ b/content/docs/en/next/io-connectors.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-connectors/index.html b/content/docs/en/next/io-connectors/index.html
index 3b3a65c..27743ef 100644
--- a/content/docs/en/next/io-connectors/index.html
+++ b/content/docs/en/next/io-connectors/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-develop.html b/content/docs/en/next/io-develop.html
index 5e08e81..7e3588e 100644
--- a/content/docs/en/next/io-develop.html
+++ b/content/docs/en/next/io-develop.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-develop/index.html b/content/docs/en/next/io-develop/index.html
index 5e08e81..7e3588e 100644
--- a/content/docs/en/next/io-develop/index.html
+++ b/content/docs/en/next/io-develop/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-managing.html b/content/docs/en/next/io-managing.html
index f43442a..c20ad9d 100644
--- a/content/docs/en/next/io-managing.html
+++ b/content/docs/en/next/io-managing.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-managing/index.html b/content/docs/en/next/io-managing/index.html
index f43442a..c20ad9d 100644
--- a/content/docs/en/next/io-managing/index.html
+++ b/content/docs/en/next/io-managing/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-overview.html b/content/docs/en/next/io-overview.html
index 00224e3..3f56a5f 100644
--- a/content/docs/en/next/io-overview.html
+++ b/content/docs/en/next/io-overview.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-overview/index.html b/content/docs/en/next/io-overview/index.html
index 00224e3..3f56a5f 100644
--- a/content/docs/en/next/io-overview/index.html
+++ b/content/docs/en/next/io-overview/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-quickstart.html b/content/docs/en/next/io-quickstart.html
index ea0bf44..7b65114 100644
--- a/content/docs/en/next/io-quickstart.html
+++ b/content/docs/en/next/io-quickstart.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/io-quickstart/index.html b/content/docs/en/next/io-quickstart/index.html
index ea0bf44..7b65114 100644
--- a/content/docs/en/next/io-quickstart/index.html
+++ b/content/docs/en/next/io-quickstart/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Pul [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/pulsar-2.0.html b/content/docs/en/next/pulsar-2.0.html
index 4f5e29c..914f199 100644
--- a/content/docs/en/next/pulsar-2.0.html
+++ b/content/docs/en/next/pulsar-2.0.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Get [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Get [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/pulsar-2.0/index.html b/content/docs/en/next/pulsar-2.0/index.html
index 4f5e29c..914f199 100644
--- a/content/docs/en/next/pulsar-2.0/index.html
+++ b/content/docs/en/next/pulsar-2.0/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Get [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Get [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/pulsar-admin.html b/content/docs/en/next/pulsar-admin.html
index 8c53e33..3edaf55 100644
--- a/content/docs/en/next/pulsar-admin.html
+++ b/content/docs/en/next/pulsar-admin.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/pulsar-admin/index.html b/content/docs/en/next/pulsar-admin/index.html
index 8c53e33..3edaf55 100644
--- a/content/docs/en/next/pulsar-admin/index.html
+++ b/content/docs/en/next/pulsar-admin/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/reference-cli-tools.html b/content/docs/en/next/reference-cli-tools.html
index 8a87dd3..522a61c 100644
--- a/content/docs/en/next/reference-cli-tools.html
+++ b/content/docs/en/next/reference-cli-tools.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/reference-cli-tools/index.html b/content/docs/en/next/reference-cli-tools/index.html
index 8a87dd3..522a61c 100644
--- a/content/docs/en/next/reference-cli-tools/index.html
+++ b/content/docs/en/next/reference-cli-tools/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/reference-configuration.html b/content/docs/en/next/reference-configuration.html
index 5021c27..00cbec5 100644
--- a/content/docs/en/next/reference-configuration.html
+++ b/content/docs/en/next/reference-configuration.html
@@ -18,7 +18,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
@@ -181,6 +181,8 @@
 <tr><td>tlsAllowInsecureConnection</td><td>Accept untrusted TLS certificate from client</td><td>false</td></tr>
 <tr><td>tlsProtocols</td><td>Specify the tls protocols the broker will use to negotiate during TLS Handshake. Multiple values can be specified, separated by commas. Example:- <code>TLSv1.2</code>, <code>TLSv1.1</code>, <code>TLSv1</code></td><td></td></tr>
 <tr><td>tlsCiphers</td><td>Specify the tls cipher the broker will use to negotiate during TLS Handshake. Multiple values can be specified, separated by commas. Example:- <code>TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256</code></td><td></td></tr>
+<tr><td>tokenSecretKey</td><td>Configure the secret key to be used to validate auth tokens. The key can be specified like: <code>tokenSecretKey=data:base64,xxxxxxxxx</code> or <code>tokenSecretKey=file:///my/secret.key</code></td><td></td></tr>
+<tr><td>tokenPublicKey</td><td>Configure the public key to be used to validate auth tokens. The key can be specified like: <code>tokenPublicKey=data:base64,xxxxxxxxx</code> or <code>tokenPublicKey=file:///my/secret.key</code></td><td></td></tr>
 <tr><td>maxUnackedMessagesPerConsumer</td><td>Max number of unacknowledged messages allowed to receive messages by a consumer on a shared subscription. Broker will stop sending messages to consumer once, this limit reaches until consumer starts acknowledging messages back. Using a value of 0, is disabling unackeMessage limit check and consumer can receive messages without any restriction</td><td>50000</td></tr>
 <tr><td>maxUnackedMessagesPerSubscription</td><td>Max number of unacknowledged messages allowed per shared subscription. Broker will stop dispatching messages to all consumers of the subscription once this limit reaches until consumer starts acknowledging messages back and unack count reaches to limit/2. Using a value of 0, is disabling unackedMessage-limit check and dispatcher can dispatch messages without any restriction</td><td>200000</td></tr>
 <tr><td>maxConcurrentLookupRequest</td><td>Max number of concurrent lookup request broker allows to throttle heavy incoming lookup traffic</td><td>50000</td></tr>
@@ -481,6 +483,8 @@
 <tr><td>tlsRequireTrustedClientCertOnConnect</td><td>Whether client certificates are required for TLS. Connections are rejected if the client certificate isn’t trusted.</td><td>false</td></tr>
 <tr><td>tlsProtocols</td><td>Specify the tls protocols the broker will use to negotiate during TLS Handshake. Multiple values can be specified, separated by commas. Example:- <code>TLSv1.2</code>, <code>TLSv1.1</code>, <code>TLSv1</code></td><td></td></tr>
 <tr><td>tlsCiphers</td><td>Specify the tls cipher the broker will use to negotiate during TLS Handshake. Multiple values can be specified, separated by commas. Example:- <code>TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256</code></td><td></td></tr>
+<tr><td>tokenSecretKey</td><td>Configure the secret key to be used to validate auth tokens. The key can be specified like: <code>tokenSecretKey=data:base64,xxxxxxxxx</code> or <code>tokenSecretKey=file:///my/secret.key</code></td><td></td></tr>
+<tr><td>tokenPublicKey</td><td>Configure the public key to be used to validate auth tokens. The key can be specified like: <code>tokenPublicKey=data:base64,xxxxxxxxx</code> or <code>tokenPublicKey=file:///my/secret.key</code></td><td></td></tr>
 </tbody>
 </table>
 <h2><a class="anchor" aria-hidden="true" id="zookeeper"></a><a href="#zookeeper" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.6 [...]
diff --git a/content/docs/en/next/reference-configuration/index.html b/content/docs/en/next/reference-configuration/index.html
index 5021c27..00cbec5 100644
--- a/content/docs/en/next/reference-configuration/index.html
+++ b/content/docs/en/next/reference-configuration/index.html
@@ -18,7 +18,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
@@ -181,6 +181,8 @@
 <tr><td>tlsAllowInsecureConnection</td><td>Accept untrusted TLS certificate from client</td><td>false</td></tr>
 <tr><td>tlsProtocols</td><td>Specify the tls protocols the broker will use to negotiate during TLS Handshake. Multiple values can be specified, separated by commas. Example:- <code>TLSv1.2</code>, <code>TLSv1.1</code>, <code>TLSv1</code></td><td></td></tr>
 <tr><td>tlsCiphers</td><td>Specify the tls cipher the broker will use to negotiate during TLS Handshake. Multiple values can be specified, separated by commas. Example:- <code>TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256</code></td><td></td></tr>
+<tr><td>tokenSecretKey</td><td>Configure the secret key to be used to validate auth tokens. The key can be specified like: <code>tokenSecretKey=data:base64,xxxxxxxxx</code> or <code>tokenSecretKey=file:///my/secret.key</code></td><td></td></tr>
+<tr><td>tokenPublicKey</td><td>Configure the public key to be used to validate auth tokens. The key can be specified like: <code>tokenPublicKey=data:base64,xxxxxxxxx</code> or <code>tokenPublicKey=file:///my/secret.key</code></td><td></td></tr>
 <tr><td>maxUnackedMessagesPerConsumer</td><td>Max number of unacknowledged messages allowed to receive messages by a consumer on a shared subscription. Broker will stop sending messages to consumer once, this limit reaches until consumer starts acknowledging messages back. Using a value of 0, is disabling unackeMessage limit check and consumer can receive messages without any restriction</td><td>50000</td></tr>
 <tr><td>maxUnackedMessagesPerSubscription</td><td>Max number of unacknowledged messages allowed per shared subscription. Broker will stop dispatching messages to all consumers of the subscription once this limit reaches until consumer starts acknowledging messages back and unack count reaches to limit/2. Using a value of 0, is disabling unackedMessage-limit check and dispatcher can dispatch messages without any restriction</td><td>200000</td></tr>
 <tr><td>maxConcurrentLookupRequest</td><td>Max number of concurrent lookup request broker allows to throttle heavy incoming lookup traffic</td><td>50000</td></tr>
@@ -481,6 +483,8 @@
 <tr><td>tlsRequireTrustedClientCertOnConnect</td><td>Whether client certificates are required for TLS. Connections are rejected if the client certificate isn’t trusted.</td><td>false</td></tr>
 <tr><td>tlsProtocols</td><td>Specify the tls protocols the broker will use to negotiate during TLS Handshake. Multiple values can be specified, separated by commas. Example:- <code>TLSv1.2</code>, <code>TLSv1.1</code>, <code>TLSv1</code></td><td></td></tr>
 <tr><td>tlsCiphers</td><td>Specify the tls cipher the broker will use to negotiate during TLS Handshake. Multiple values can be specified, separated by commas. Example:- <code>TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256</code></td><td></td></tr>
+<tr><td>tokenSecretKey</td><td>Configure the secret key to be used to validate auth tokens. The key can be specified like: <code>tokenSecretKey=data:base64,xxxxxxxxx</code> or <code>tokenSecretKey=file:///my/secret.key</code></td><td></td></tr>
+<tr><td>tokenPublicKey</td><td>Configure the public key to be used to validate auth tokens. The key can be specified like: <code>tokenPublicKey=data:base64,xxxxxxxxx</code> or <code>tokenPublicKey=file:///my/secret.key</code></td><td></td></tr>
 </tbody>
 </table>
 <h2><a class="anchor" aria-hidden="true" id="zookeeper"></a><a href="#zookeeper" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.6 [...]
diff --git a/content/docs/en/next/reference-terminology.html b/content/docs/en/next/reference-terminology.html
index 889ec3e..1fa2315 100644
--- a/content/docs/en/next/reference-terminology.html
+++ b/content/docs/en/next/reference-terminology.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/reference-terminology/index.html b/content/docs/en/next/reference-terminology/index.html
index 889ec3e..1fa2315 100644
--- a/content/docs/en/next/reference-terminology/index.html
+++ b/content/docs/en/next/reference-terminology/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Ref [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-athenz.html b/content/docs/en/next/security-athenz.html
index 8b6ad03..23a8657 100644
--- a/content/docs/en/next/security-athenz.html
+++ b/content/docs/en/next/security-athenz.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
@@ -111,7 +111,7 @@ values for those parameters, can be found in <a href="/docs/en/next/reference-co
 <span class="hljs-attr">tlsAllowInsecureConnection</span>=<span class="hljs-string">false</span>
 <span class="hljs-attr">tlsTrustCertsFilePath</span>=<span class="hljs-string">/path/to/cacert.pem</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-tls-authentication"><span class="arrow-prev">← </span><span>Authentication using TLS</span></a><a class="docs-next button" href="/docs/en/next/security-authorization"><span>Authentication and authorization in Pulsar</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#athenz-authentication-settings">Athenz  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-token-admin"><span class="arrow-prev">← </span><span>Token authentication admin</span></a><a class="docs-next button" href="/docs/en/next/security-authorization"><span>Authentication and authorization in Pulsar</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#athenz-authentication-settings">Athenz authe [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/next/security-athenz/index.html b/content/docs/en/next/security-athenz/index.html
index 8b6ad03..23a8657 100644
--- a/content/docs/en/next/security-athenz/index.html
+++ b/content/docs/en/next/security-athenz/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
@@ -111,7 +111,7 @@ values for those parameters, can be found in <a href="/docs/en/next/reference-co
 <span class="hljs-attr">tlsAllowInsecureConnection</span>=<span class="hljs-string">false</span>
 <span class="hljs-attr">tlsTrustCertsFilePath</span>=<span class="hljs-string">/path/to/cacert.pem</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-tls-authentication"><span class="arrow-prev">← </span><span>Authentication using TLS</span></a><a class="docs-next button" href="/docs/en/next/security-authorization"><span>Authentication and authorization in Pulsar</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#athenz-authentication-settings">Athenz  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-token-admin"><span class="arrow-prev">← </span><span>Token authentication admin</span></a><a class="docs-next button" href="/docs/en/next/security-authorization"><span>Authentication and authorization in Pulsar</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#athenz-authentication-settings">Athenz authe [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/next/security-authorization.html b/content/docs/en/next/security-authorization.html
index 71cb65c..ac2da47 100644
--- a/content/docs/en/next/security-authorization.html
+++ b/content/docs/en/next/security-authorization.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-authorization/index.html b/content/docs/en/next/security-authorization/index.html
index 71cb65c..ac2da47 100644
--- a/content/docs/en/next/security-authorization/index.html
+++ b/content/docs/en/next/security-authorization/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-encryption.html b/content/docs/en/next/security-encryption.html
index c60a09a..1ed0658 100644
--- a/content/docs/en/next/security-encryption.html
+++ b/content/docs/en/next/security-encryption.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-encryption/index.html b/content/docs/en/next/security-encryption/index.html
index c60a09a..1ed0658 100644
--- a/content/docs/en/next/security-encryption/index.html
+++ b/content/docs/en/next/security-encryption/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-extending.html b/content/docs/en/next/security-extending.html
index 99fe99d..ea58cbb 100644
--- a/content/docs/en/next/security-extending.html
+++ b/content/docs/en/next/security-extending.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-extending/index.html b/content/docs/en/next/security-extending/index.html
index 99fe99d..ea58cbb 100644
--- a/content/docs/en/next/security-extending/index.html
+++ b/content/docs/en/next/security-extending/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-overview.html b/content/docs/en/next/security-overview.html
index 0a3fe37..4b3dce4 100644
--- a/content/docs/en/next/security-overview.html
+++ b/content/docs/en/next/security-overview.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-overview/index.html b/content/docs/en/next/security-overview/index.html
index 0a3fe37..4b3dce4 100644
--- a/content/docs/en/next/security-overview/index.html
+++ b/content/docs/en/next/security-overview/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-tls-authentication.html b/content/docs/en/next/security-tls-authentication.html
index 477994a..de8839b 100644
--- a/content/docs/en/next/security-tls-authentication.html
+++ b/content/docs/en/next/security-tls-authentication.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
@@ -134,7 +134,7 @@ config.setAuth(auth);
 
 pulsar::<span class="hljs-function">Client <span class="hljs-title">client</span><span class="hljs-params">(<span class="hljs-string">"pulsar+ssl://broker.example.com:6651/"</span>, config)</span></span>;
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-tls-transport"><span class="arrow-prev">← </span><span>Transport Encryption using TLS</span></a><a class="docs-next button" href="/docs/en/next/security-athenz"><span>Authentication using Athenz</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#tls-authentication-overview">TLS Authentication Overview</a> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-tls-transport"><span class="arrow-prev">← </span><span>Transport Encryption using TLS</span></a><a class="docs-next button" href="/docs/en/next/security-token-client"><span>Client Authentication using tokens</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#tls-authentication-overview">TLS Authentication [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/next/security-tls-authentication/index.html b/content/docs/en/next/security-tls-authentication/index.html
index 477994a..de8839b 100644
--- a/content/docs/en/next/security-tls-authentication/index.html
+++ b/content/docs/en/next/security-tls-authentication/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
@@ -134,7 +134,7 @@ config.setAuth(auth);
 
 pulsar::<span class="hljs-function">Client <span class="hljs-title">client</span><span class="hljs-params">(<span class="hljs-string">"pulsar+ssl://broker.example.com:6651/"</span>, config)</span></span>;
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-tls-transport"><span class="arrow-prev">← </span><span>Transport Encryption using TLS</span></a><a class="docs-next button" href="/docs/en/next/security-athenz"><span>Authentication using Athenz</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#tls-authentication-overview">TLS Authentication Overview</a> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-tls-transport"><span class="arrow-prev">← </span><span>Transport Encryption using TLS</span></a><a class="docs-next button" href="/docs/en/next/security-token-client"><span>Client Authentication using tokens</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#tls-authentication-overview">TLS Authentication [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/next/security-tls-transport.html b/content/docs/en/next/security-tls-transport.html
index ba8e443..cfea9aa 100644
--- a/content/docs/en/next/security-tls-transport.html
+++ b/content/docs/en/next/security-tls-transport.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-tls-transport/index.html b/content/docs/en/next/security-tls-transport/index.html
index ba8e443..cfea9aa 100644
--- a/content/docs/en/next/security-tls-transport/index.html
+++ b/content/docs/en/next/security-tls-transport/index.html
@@ -20,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
             document.addEventListener('DOMContentLoaded', function() {
               createToggler('#navToggler', '#docsNav', 'docsSliderActive');
               createToggler('#tocToggler', 'body', 'tocActive');
diff --git a/content/docs/en/next/security-token-admin.html b/content/docs/en/next/security-token-admin.html
new file mode 100644
index 0000000..717f4a7
--- /dev/null
+++ b/content/docs/en/next/security-token-admin.html
@@ -0,0 +1,222 @@
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Token authentication admin · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;token-authentication-overview&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#token-authentication-overview&quot; aria-hid [...]
+"/><meta name="docsearch:version" content="next"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Token authentication admin · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;token-authentication-overview&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tok [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
+              (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+              (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+              m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+              })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+              ga('create', 'UA-102219959-1', 'auto');
+              ga('send', 'pageview');
+            </script><link rel="stylesheet" href="/css/code-blocks-buttons.css"/><script type="text/javascript" src="https://buttons.github.io/buttons.js"></script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script><script type="text/javascript" src="/js/custom.js"></script><link rel="stylesheet" href="/css/main.css"/></head><body class="sideNavVisible separateOnPageNav"><div class="fixedHeaderContainer"><div class="he [...]
+        const languagesMenuItem = document.getElementById("languages-menu");
+        const languagesDropDown = document.getElementById("languages-dropdown");
+        languagesMenuItem.addEventListener("click", function(event) {
+          event.preventDefault();
+
+          if (languagesDropDown.className == "hide") {
+            languagesDropDown.className = "visible";
+          } else {
+            languagesDropDown.className = "hide";
+          }
+        });
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+            document.addEventListener('DOMContentLoaded', function() {
+              createToggler('#navToggler', '#docsNav', 'docsSliderActive');
+              createToggler('#tocToggler', 'body', 'tocActive');
+
+              const headings = document.querySelector('.toc-headings');
+              headings && headings.addEventListener('click', function(event) {
+                if (event.target.tagName === 'A') {
+                  document.body.classList.remove('tocActive');
+                }
+              }, false);
+
+              function createToggler(togglerSelector, targetSelector, className) {
+                var toggler = document.querySelector(togglerSelector);
+                var target = document.querySelector(targetSelector);
+
+                if (!toggler) {
+                  return;
+                }
+
+                toggler.onclick = function(event) {
+                  event.preventDefault();
+
+                  target.classList.toggle(className);
+                };
+              }
+            });
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/security-token-admin.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Token authentication admin</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="token-authentication-overview"></a><a href="#to [...]
+<p>Pulsar supports authenticating clients using security tokens that are based on
+<a href="https://jwt.io/introduction/">JSON Web Tokens</a> (<a href="https://tools.ietf.org/html/rfc7519">RFC-7519</a>).</p>
+<p>Tokens are used to identify a Pulsar client and associate with some &quot;principal&quot; (or &quot;role&quot;) which
+will be then granted permissions to do some actions (eg: publish or consume from a topic).</p>
+<p>A user will typically be given a token string by an administrator (or some automated service).</p>
+<p>The compact representation of a signed JWT is a string that looks like:</p>
+<pre><code class="hljs"> eyJhbGciOiJIUzI<span class="hljs-number">1</span><span class="hljs-symbol">NiJ9</span>.eyJzdWIiOiJKb<span class="hljs-number">2</span>UifQ.ipevR<span class="hljs-symbol">NuRP6</span>Hfl<span class="hljs-name">G8</span>cFK<span class="hljs-symbol">nmUPtypruRC4</span>fb<span class="hljs-number">1</span>DWtoLL<span class="hljs-number">62</span>SY
+</code></pre>
+<p>Application will specify the token when creating the client instance. An alternative is to pass
+a &quot;token supplier&quot;, that is to say a function that returns the token when the client library
+will need one.</p>
+<blockquote>
+<h4><a class="anchor" aria-hidden="true" id="always-use-tls-transport-encryption"></a><a href="#always-use-tls-transport-encryption" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2 [...]
+<p>Sending a token is equivalent to sending a password over the wire. It is strongly recommended to
+always use TLS encryption when talking to the Pulsar service. See
+<a href="/docs/en/next/security-tls-transport">Transport Encryption using TLS</a></p>
+</blockquote>
+<h2><a class="anchor" aria-hidden="true" id="secret-vs-public-private-keys"></a><a href="#secret-vs-public-private-keys" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12  [...]
+<p>JWT support two different kind of keys in order to generate and validate the tokens:</p>
+<ul>
+<li>Symmetric :
+<ul>
+<li>there is a single <strong><em>Secret</em></strong> key that is used both to generate and validate</li>
+</ul></li>
+<li>Asymmetric: there is a pair of keys.
+<ul>
+<li><strong><em>Private</em></strong> key is used to generate tokens</li>
+<li><strong><em>Public</em></strong> key is used to validate tokens</li>
+</ul></li>
+</ul>
+<h3><a class="anchor" aria-hidden="true" id="secret-key"></a><a href="#secret-key" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
+<p>When using a secret key, the administrator will create the key and he will
+use it to generate the client tokens. This key will be also configured to
+the brokers to allow them to validate the clients.</p>
+<h4><a class="anchor" aria-hidden="true" id="creating-a-secret-key"></a><a href="#creating-a-secret-key" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2 [...]
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create-secret-key --output my-secret.key</span>
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="public-private-keys"></a><a href="#public-private-keys" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.2 [...]
+<p>With public/private, we need to create a pair of keys.</p>
+<h4><a class="anchor" aria-hidden="true" id="creating-a-key-pair"></a><a href="#creating-a-key-pair" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.2 [...]
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create-key-pair --output-private-key my-private.key --output-public-key my-public.key</span>
+</code></pre>
+<ul>
+<li><code>my-private.key</code> will be stored in a safe location and only used by administrator to generate
+new tokens.</li>
+<li><code>my-public.key</code> will be distributed to all Pulsar brokers. This file can be publicly shared without
+any security concern.</li>
+</ul>
+<h2><a class="anchor" aria-hidden="true" id="generating-tokens"></a><a href="#generating-tokens" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2- [...]
+<p>A token is the credential associated with a user. The association is done through the &quot;principal&quot;,
+or &quot;role&quot;. In case of JWT tokens, this field it's typically referred to as <strong>subject</strong>, though
+it's exactly the same concept.</p>
+<p>The generated token is then required to have a <strong>subject</strong> field set.</p>
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create --secret-key file:///path/to/my-secret.key \</span>
+            --subject test-user
+</code></pre>
+<p>This will print the token string on stdout.</p>
+<p>Similarly, one can create a token by passing the &quot;private&quot; key:</p>
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create --private-key file:///path/to/my-private.key \</span>
+            --subject test-user
+</code></pre>
+<p>Finally, a token can also be created with a pre-defined TTL. After that time,
+the token will be automatically invalidated.</p>
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create --secret-key file:///path/to/my-secret.key \</span>
+            --subject test-user \
+            --expiry-time 1y
+</code></pre>
+<h2><a class="anchor" aria-hidden="true" id="authorization"></a><a href="#authorization" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.8 [...]
+<p>The token itself doesn't have any permission associated. That will be determined by the
+authorization engine. Once the token is created, one can grant permission for this token to do certain
+actions. Eg. :</p>
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar-admin namespaces grant-permission my-tenant/my-namespace \</span>
+            --role test-user \
+            --actions produce,consume
+</code></pre>
+<h2><a class="anchor" aria-hidden="true" id="enabling-token-authentication-"></a><a href="#enabling-token-authentication-" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 1 [...]
+<h3><a class="anchor" aria-hidden="true" id="on-brokers"></a><a href="#on-brokers" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
+<p>To configure brokers to authenticate clients, put the following in <code>broker.conf</code>:</p>
+<pre><code class="hljs css language-properties"><span class="hljs-comment"># Configuration to enable authentication and authorization</span>
+<span class="hljs-attr">authenticationEnabled</span>=<span class="hljs-string">true</span>
+<span class="hljs-attr">authorizationEnabled</span>=<span class="hljs-string">true</span>
+<span class="hljs-attr">authenticationProviders</span>=<span class="hljs-string">org.apache.pulsar.broker.authentication.AuthenticationProviderToken</span>
+<span class="hljs-comment">
+# If using secret key</span>
+<span class="hljs-attr">tokenSecretKey</span>=<span class="hljs-string">file:///path/to/secret.key</span>
+<span class="hljs-comment"># The key can also be passed inline:</span>
+<span class="hljs-comment"># tokenSecretKey=data:base64,FLFyW0oLJ2Fi22KKCm21J18mbAdztfSHN/lAT5ucEKU=</span>
+<span class="hljs-comment">
+# If using public/private</span>
+<span class="hljs-comment"># tokenPublicKey=file:///path/to/public.key</span>
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="on-proxies"></a><a href="#on-proxies" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
+<p>To configure proxies to authenticate clients, put the following in <code>proxy.conf</code>:</p>
+<p>The proxy will have its own token used when talking to brokers. The role token for this
+key pair should be configured in the <code>proxyRoles</code> of the brokers. See the <a href="/docs/en/next/security-authorization">authorization guide</a> for more details.</p>
+<pre><code class="hljs css language-properties"><span class="hljs-comment"># For clients connecting to the proxy</span>
+<span class="hljs-attr">authenticationEnabled</span>=<span class="hljs-string">true</span>
+<span class="hljs-attr">authorizationEnabled</span>=<span class="hljs-string">true</span>
+<span class="hljs-attr">authenticationProviders</span>=<span class="hljs-string">org.apache.pulsar.broker.authentication.AuthenticationProviderToken</span>
+<span class="hljs-attr">tokenSecretKey</span>=<span class="hljs-string">file:///path/to/secret.key</span>
+<span class="hljs-comment">
+# For the proxy to connect to brokers</span>
+<span class="hljs-attr">brokerClientAuthenticationPlugin</span>=<span class="hljs-string">org.apache.pulsar.client.impl.auth.AuthenticationToken</span>
+<span class="hljs-attr">brokerClientAuthenticationParameters</span>=<span class="hljs-string">token:eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0ZXN0LXVzZXIifQ.9OHgE9ZUDeBTZs7nSMEFIuGNEX18FLR3qvy8mqxSxXw</span>
+<span class="hljs-comment"># Or, alternatively, read token from file</span>
+<span class="hljs-comment"># brokerClientAuthenticationParameters=file:///path/to/proxy-token.txt</span>
+</code></pre>
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-token-client"><span class="arrow-prev">← </span><span>Client Authentication using tokens</span></a><a class="docs-next button" href="/docs/en/next/security-athenz"><span>Authentication using Athenz</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#token-authentication-overview">Token Authentication Overv [...]
+      const community = document.querySelector("a[href='#community']").parentNode;
+      const communityMenu =
+        '<li>' +
+        '<a id="community-menu" href="#">Community <span style="font-size: 0.75em">&nbsp;▼</span></a>' +
+        '<div id="community-dropdown" class="hide">' +
+          '<ul id="community-dropdown-items">' +
+            '<li><a href="/en/contact">Contact</a></li>' +
+            '<li><a href="/en/contributing">Contributing</a></li>' +
+            '<li><a href="/en/events">Events</a></li>' +
+            '<li><a href="https://twitter.com/Apache_Pulsar" target="_blank">Twitter &#x2750</a></li>' +
+            '<li><a href="https://github.com/apache/pulsar/wiki" target="_blank">Wiki &#x2750</a></li>' +
+            '<li><a href="https://github.com/apache/pulsar/issues" target="_blank">Issue tracking &#x2750</a></li>' +
+            '<li>&nbsp;</li>' +
+            '<li><a href="/en/resources">Resources</a></li>' +
+            '<li><a href="/en/team">Team</a></li>' +
+          '</ul>' +
+        '</div>' +
+        '</li>';
+
+      community.innerHTML = communityMenu;
+
+      const communityMenuItem = document.getElementById("community-menu");
+      const communityDropDown = document.getElementById("community-dropdown");
+      communityMenuItem.addEventListener("click", function(event) {
+        event.preventDefault();
+
+        if (communityDropDown.className == 'hide') {
+          communityDropDown.className = 'visible';
+        } else {
+          communityDropDown.className = 'hide';
+        }
+      });
+    </script></span><span><script src="/js/pjax-api.min.js"></script><script>window.navfoo = new Pjax({
+            areas: [
+              // try to use the first query.
+              '.mainContainer, .docsNavContainer .toc .navWrapper, .onPageNav',
+              // fallback
+              'body'
+            ],
+            link: '.docsNavContainer:not(.docsSliderActive) a',
+            update: {
+              script: false,
+            }
+          });
+        </script></span></footer></div><script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script><script>window.twttr=(function(d,s, id){var js,fjs=d.getElementsByTagName(s)[0],t=window.twttr||{};if(d.getElementById(id))return t;js=d.createElement(s);js.id=id;js.src='https://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js, fjs);t._e = [];t.ready = function(f) {t._e.push(f);};return t;}(document, 'script', 'twitter-wjs'));</scri [...]
+                document.addEventListener('keyup', function(e) {
+                  if (e.target !== document.body) {
+                    return;
+                  }
+                  // keyCode for '/' (slash)
+                  if (e.keyCode === 191) {
+                    const search = document.getElementById('search_input_react');
+                    search && search.focus();
+                  }
+                });
+              </script><script>
+              var search = docsearch({
+                
+                apiKey: 'd226a455cecdd4bc18a554c1b47e5b52',
+                indexName: 'apache_pulsar',
+                inputSelector: '#search_input_react',
+                algoliaOptions: {"facetFilters":["language:en","version:next"]}
+              });
+            </script></body></html>
\ No newline at end of file
diff --git a/content/docs/en/next/security-token-admin/index.html b/content/docs/en/next/security-token-admin/index.html
new file mode 100644
index 0000000..717f4a7
--- /dev/null
+++ b/content/docs/en/next/security-token-admin/index.html
@@ -0,0 +1,222 @@
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Token authentication admin · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;token-authentication-overview&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#token-authentication-overview&quot; aria-hid [...]
+"/><meta name="docsearch:version" content="next"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Token authentication admin · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;token-authentication-overview&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tok [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
+              (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+              (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+              m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+              })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+              ga('create', 'UA-102219959-1', 'auto');
+              ga('send', 'pageview');
+            </script><link rel="stylesheet" href="/css/code-blocks-buttons.css"/><script type="text/javascript" src="https://buttons.github.io/buttons.js"></script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script><script type="text/javascript" src="/js/custom.js"></script><link rel="stylesheet" href="/css/main.css"/></head><body class="sideNavVisible separateOnPageNav"><div class="fixedHeaderContainer"><div class="he [...]
+        const languagesMenuItem = document.getElementById("languages-menu");
+        const languagesDropDown = document.getElementById("languages-dropdown");
+        languagesMenuItem.addEventListener("click", function(event) {
+          event.preventDefault();
+
+          if (languagesDropDown.className == "hide") {
+            languagesDropDown.className = "visible";
+          } else {
+            languagesDropDown.className = "hide";
+          }
+        });
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+            document.addEventListener('DOMContentLoaded', function() {
+              createToggler('#navToggler', '#docsNav', 'docsSliderActive');
+              createToggler('#tocToggler', 'body', 'tocActive');
+
+              const headings = document.querySelector('.toc-headings');
+              headings && headings.addEventListener('click', function(event) {
+                if (event.target.tagName === 'A') {
+                  document.body.classList.remove('tocActive');
+                }
+              }, false);
+
+              function createToggler(togglerSelector, targetSelector, className) {
+                var toggler = document.querySelector(togglerSelector);
+                var target = document.querySelector(targetSelector);
+
+                if (!toggler) {
+                  return;
+                }
+
+                toggler.onclick = function(event) {
+                  event.preventDefault();
+
+                  target.classList.toggle(className);
+                };
+              }
+            });
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/security-token-admin.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Token authentication admin</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="token-authentication-overview"></a><a href="#to [...]
+<p>Pulsar supports authenticating clients using security tokens that are based on
+<a href="https://jwt.io/introduction/">JSON Web Tokens</a> (<a href="https://tools.ietf.org/html/rfc7519">RFC-7519</a>).</p>
+<p>Tokens are used to identify a Pulsar client and associate with some &quot;principal&quot; (or &quot;role&quot;) which
+will be then granted permissions to do some actions (eg: publish or consume from a topic).</p>
+<p>A user will typically be given a token string by an administrator (or some automated service).</p>
+<p>The compact representation of a signed JWT is a string that looks like:</p>
+<pre><code class="hljs"> eyJhbGciOiJIUzI<span class="hljs-number">1</span><span class="hljs-symbol">NiJ9</span>.eyJzdWIiOiJKb<span class="hljs-number">2</span>UifQ.ipevR<span class="hljs-symbol">NuRP6</span>Hfl<span class="hljs-name">G8</span>cFK<span class="hljs-symbol">nmUPtypruRC4</span>fb<span class="hljs-number">1</span>DWtoLL<span class="hljs-number">62</span>SY
+</code></pre>
+<p>Application will specify the token when creating the client instance. An alternative is to pass
+a &quot;token supplier&quot;, that is to say a function that returns the token when the client library
+will need one.</p>
+<blockquote>
+<h4><a class="anchor" aria-hidden="true" id="always-use-tls-transport-encryption"></a><a href="#always-use-tls-transport-encryption" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2 [...]
+<p>Sending a token is equivalent to sending a password over the wire. It is strongly recommended to
+always use TLS encryption when talking to the Pulsar service. See
+<a href="/docs/en/next/security-tls-transport">Transport Encryption using TLS</a></p>
+</blockquote>
+<h2><a class="anchor" aria-hidden="true" id="secret-vs-public-private-keys"></a><a href="#secret-vs-public-private-keys" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12  [...]
+<p>JWT support two different kind of keys in order to generate and validate the tokens:</p>
+<ul>
+<li>Symmetric :
+<ul>
+<li>there is a single <strong><em>Secret</em></strong> key that is used both to generate and validate</li>
+</ul></li>
+<li>Asymmetric: there is a pair of keys.
+<ul>
+<li><strong><em>Private</em></strong> key is used to generate tokens</li>
+<li><strong><em>Public</em></strong> key is used to validate tokens</li>
+</ul></li>
+</ul>
+<h3><a class="anchor" aria-hidden="true" id="secret-key"></a><a href="#secret-key" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
+<p>When using a secret key, the administrator will create the key and he will
+use it to generate the client tokens. This key will be also configured to
+the brokers to allow them to validate the clients.</p>
+<h4><a class="anchor" aria-hidden="true" id="creating-a-secret-key"></a><a href="#creating-a-secret-key" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2 [...]
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create-secret-key --output my-secret.key</span>
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="public-private-keys"></a><a href="#public-private-keys" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.2 [...]
+<p>With public/private, we need to create a pair of keys.</p>
+<h4><a class="anchor" aria-hidden="true" id="creating-a-key-pair"></a><a href="#creating-a-key-pair" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.2 [...]
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create-key-pair --output-private-key my-private.key --output-public-key my-public.key</span>
+</code></pre>
+<ul>
+<li><code>my-private.key</code> will be stored in a safe location and only used by administrator to generate
+new tokens.</li>
+<li><code>my-public.key</code> will be distributed to all Pulsar brokers. This file can be publicly shared without
+any security concern.</li>
+</ul>
+<h2><a class="anchor" aria-hidden="true" id="generating-tokens"></a><a href="#generating-tokens" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2- [...]
+<p>A token is the credential associated with a user. The association is done through the &quot;principal&quot;,
+or &quot;role&quot;. In case of JWT tokens, this field it's typically referred to as <strong>subject</strong>, though
+it's exactly the same concept.</p>
+<p>The generated token is then required to have a <strong>subject</strong> field set.</p>
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create --secret-key file:///path/to/my-secret.key \</span>
+            --subject test-user
+</code></pre>
+<p>This will print the token string on stdout.</p>
+<p>Similarly, one can create a token by passing the &quot;private&quot; key:</p>
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create --private-key file:///path/to/my-private.key \</span>
+            --subject test-user
+</code></pre>
+<p>Finally, a token can also be created with a pre-defined TTL. After that time,
+the token will be automatically invalidated.</p>
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar tokens create --secret-key file:///path/to/my-secret.key \</span>
+            --subject test-user \
+            --expiry-time 1y
+</code></pre>
+<h2><a class="anchor" aria-hidden="true" id="authorization"></a><a href="#authorization" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.8 [...]
+<p>The token itself doesn't have any permission associated. That will be determined by the
+authorization engine. Once the token is created, one can grant permission for this token to do certain
+actions. Eg. :</p>
+<pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar-admin namespaces grant-permission my-tenant/my-namespace \</span>
+            --role test-user \
+            --actions produce,consume
+</code></pre>
+<h2><a class="anchor" aria-hidden="true" id="enabling-token-authentication-"></a><a href="#enabling-token-authentication-" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 1 [...]
+<h3><a class="anchor" aria-hidden="true" id="on-brokers"></a><a href="#on-brokers" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
+<p>To configure brokers to authenticate clients, put the following in <code>broker.conf</code>:</p>
+<pre><code class="hljs css language-properties"><span class="hljs-comment"># Configuration to enable authentication and authorization</span>
+<span class="hljs-attr">authenticationEnabled</span>=<span class="hljs-string">true</span>
+<span class="hljs-attr">authorizationEnabled</span>=<span class="hljs-string">true</span>
+<span class="hljs-attr">authenticationProviders</span>=<span class="hljs-string">org.apache.pulsar.broker.authentication.AuthenticationProviderToken</span>
+<span class="hljs-comment">
+# If using secret key</span>
+<span class="hljs-attr">tokenSecretKey</span>=<span class="hljs-string">file:///path/to/secret.key</span>
+<span class="hljs-comment"># The key can also be passed inline:</span>
+<span class="hljs-comment"># tokenSecretKey=data:base64,FLFyW0oLJ2Fi22KKCm21J18mbAdztfSHN/lAT5ucEKU=</span>
+<span class="hljs-comment">
+# If using public/private</span>
+<span class="hljs-comment"># tokenPublicKey=file:///path/to/public.key</span>
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="on-proxies"></a><a href="#on-proxies" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
+<p>To configure proxies to authenticate clients, put the following in <code>proxy.conf</code>:</p>
+<p>The proxy will have its own token used when talking to brokers. The role token for this
+key pair should be configured in the <code>proxyRoles</code> of the brokers. See the <a href="/docs/en/next/security-authorization">authorization guide</a> for more details.</p>
+<pre><code class="hljs css language-properties"><span class="hljs-comment"># For clients connecting to the proxy</span>
+<span class="hljs-attr">authenticationEnabled</span>=<span class="hljs-string">true</span>
+<span class="hljs-attr">authorizationEnabled</span>=<span class="hljs-string">true</span>
+<span class="hljs-attr">authenticationProviders</span>=<span class="hljs-string">org.apache.pulsar.broker.authentication.AuthenticationProviderToken</span>
+<span class="hljs-attr">tokenSecretKey</span>=<span class="hljs-string">file:///path/to/secret.key</span>
+<span class="hljs-comment">
+# For the proxy to connect to brokers</span>
+<span class="hljs-attr">brokerClientAuthenticationPlugin</span>=<span class="hljs-string">org.apache.pulsar.client.impl.auth.AuthenticationToken</span>
+<span class="hljs-attr">brokerClientAuthenticationParameters</span>=<span class="hljs-string">token:eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0ZXN0LXVzZXIifQ.9OHgE9ZUDeBTZs7nSMEFIuGNEX18FLR3qvy8mqxSxXw</span>
+<span class="hljs-comment"># Or, alternatively, read token from file</span>
+<span class="hljs-comment"># brokerClientAuthenticationParameters=file:///path/to/proxy-token.txt</span>
+</code></pre>
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-token-client"><span class="arrow-prev">← </span><span>Client Authentication using tokens</span></a><a class="docs-next button" href="/docs/en/next/security-athenz"><span>Authentication using Athenz</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#token-authentication-overview">Token Authentication Overv [...]
+      const community = document.querySelector("a[href='#community']").parentNode;
+      const communityMenu =
+        '<li>' +
+        '<a id="community-menu" href="#">Community <span style="font-size: 0.75em">&nbsp;▼</span></a>' +
+        '<div id="community-dropdown" class="hide">' +
+          '<ul id="community-dropdown-items">' +
+            '<li><a href="/en/contact">Contact</a></li>' +
+            '<li><a href="/en/contributing">Contributing</a></li>' +
+            '<li><a href="/en/events">Events</a></li>' +
+            '<li><a href="https://twitter.com/Apache_Pulsar" target="_blank">Twitter &#x2750</a></li>' +
+            '<li><a href="https://github.com/apache/pulsar/wiki" target="_blank">Wiki &#x2750</a></li>' +
+            '<li><a href="https://github.com/apache/pulsar/issues" target="_blank">Issue tracking &#x2750</a></li>' +
+            '<li>&nbsp;</li>' +
+            '<li><a href="/en/resources">Resources</a></li>' +
+            '<li><a href="/en/team">Team</a></li>' +
+          '</ul>' +
+        '</div>' +
+        '</li>';
+
+      community.innerHTML = communityMenu;
+
+      const communityMenuItem = document.getElementById("community-menu");
+      const communityDropDown = document.getElementById("community-dropdown");
+      communityMenuItem.addEventListener("click", function(event) {
+        event.preventDefault();
+
+        if (communityDropDown.className == 'hide') {
+          communityDropDown.className = 'visible';
+        } else {
+          communityDropDown.className = 'hide';
+        }
+      });
+    </script></span><span><script src="/js/pjax-api.min.js"></script><script>window.navfoo = new Pjax({
+            areas: [
+              // try to use the first query.
+              '.mainContainer, .docsNavContainer .toc .navWrapper, .onPageNav',
+              // fallback
+              'body'
+            ],
+            link: '.docsNavContainer:not(.docsSliderActive) a',
+            update: {
+              script: false,
+            }
+          });
+        </script></span></footer></div><script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script><script>window.twttr=(function(d,s, id){var js,fjs=d.getElementsByTagName(s)[0],t=window.twttr||{};if(d.getElementById(id))return t;js=d.createElement(s);js.id=id;js.src='https://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js, fjs);t._e = [];t.ready = function(f) {t._e.push(f);};return t;}(document, 'script', 'twitter-wjs'));</scri [...]
+                document.addEventListener('keyup', function(e) {
+                  if (e.target !== document.body) {
+                    return;
+                  }
+                  // keyCode for '/' (slash)
+                  if (e.keyCode === 191) {
+                    const search = document.getElementById('search_input_react');
+                    search && search.focus();
+                  }
+                });
+              </script><script>
+              var search = docsearch({
+                
+                apiKey: 'd226a455cecdd4bc18a554c1b47e5b52',
+                indexName: 'apache_pulsar',
+                inputSelector: '#search_input_react',
+                algoliaOptions: {"facetFilters":["language:en","version:next"]}
+              });
+            </script></body></html>
\ No newline at end of file
diff --git a/content/docs/en/next/security-token-client.html b/content/docs/en/next/security-token-client.html
new file mode 100644
index 0000000..1e52efd
--- /dev/null
+++ b/content/docs/en/next/security-token-client.html
@@ -0,0 +1,195 @@
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Client Authentication using tokens · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;token-authentication-overview&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#token-authentication-overview&quot;  [...]
+"/><meta name="docsearch:version" content="next"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Client Authentication using tokens · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;token-authentication-overview&quot;&gt;&lt;/a&gt;&lt;a href=&q [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
+              (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+              (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+              m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+              })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+              ga('create', 'UA-102219959-1', 'auto');
+              ga('send', 'pageview');
+            </script><link rel="stylesheet" href="/css/code-blocks-buttons.css"/><script type="text/javascript" src="https://buttons.github.io/buttons.js"></script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script><script type="text/javascript" src="/js/custom.js"></script><link rel="stylesheet" href="/css/main.css"/></head><body class="sideNavVisible separateOnPageNav"><div class="fixedHeaderContainer"><div class="he [...]
+        const languagesMenuItem = document.getElementById("languages-menu");
+        const languagesDropDown = document.getElementById("languages-dropdown");
+        languagesMenuItem.addEventListener("click", function(event) {
+          event.preventDefault();
+
+          if (languagesDropDown.className == "hide") {
+            languagesDropDown.className = "visible";
+          } else {
+            languagesDropDown.className = "hide";
+          }
+        });
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+            document.addEventListener('DOMContentLoaded', function() {
+              createToggler('#navToggler', '#docsNav', 'docsSliderActive');
+              createToggler('#tocToggler', 'body', 'tocActive');
+
+              const headings = document.querySelector('.toc-headings');
+              headings && headings.addEventListener('click', function(event) {
+                if (event.target.tagName === 'A') {
+                  document.body.classList.remove('tocActive');
+                }
+              }, false);
+
+              function createToggler(togglerSelector, targetSelector, className) {
+                var toggler = document.querySelector(togglerSelector);
+                var target = document.querySelector(targetSelector);
+
+                if (!toggler) {
+                  return;
+                }
+
+                toggler.onclick = function(event) {
+                  event.preventDefault();
+
+                  target.classList.toggle(className);
+                };
+              }
+            });
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/security-token-client.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Client Authentication using tokens</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="token-authentication-overview"></a><a  [...]
+<p>Pulsar supports authenticating clients using security tokens that are based on
+<a href="https://jwt.io/introduction/">JSON Web Tokens</a> (<a href="https://tools.ietf.org/html/rfc7519">RFC-7519</a>).</p>
+<p>Tokens are used to identify a Pulsar client and associate with some &quot;principal&quot; (or &quot;role&quot;) which
+will be then granted permissions to do some actions (eg: publish or consume from a topic).</p>
+<p>A user will typically be given a token string by an administrator (or some automated service).</p>
+<p>The compact representation of a signed JWT is a string that looks like:</p>
+<pre><code class="hljs"> eyJhbGciOiJIUzI<span class="hljs-number">1</span><span class="hljs-symbol">NiJ9</span>.eyJzdWIiOiJKb<span class="hljs-number">2</span>UifQ.ipevR<span class="hljs-symbol">NuRP6</span>Hfl<span class="hljs-name">G8</span>cFK<span class="hljs-symbol">nmUPtypruRC4</span>fb<span class="hljs-number">1</span>DWtoLL<span class="hljs-number">62</span>SY
+</code></pre>
+<p>Application will specify the token when creating the client instance. An alternative is to pass
+a &quot;token supplier&quot;, that is to say a function that returns the token when the client library
+will need one.</p>
+<p>See <a href="/docs/en/next/security-token-admin">Token authentication admin</a> for a reference on how to enable token
+authentication on a Pulsar cluster.</p>
+<h3><a class="anchor" aria-hidden="true" id="cli-tools"></a><a href="#cli-tools" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.6 [...]
+<p><a href="/docs/en/next/reference-cli-tools">Command-line tools</a> like <a href="/docs/en/next/pulsar-admin"><code>pulsar-admin</code></a>, <a href="/docs/en/next/reference-cli-tools#pulsar-perf"><code>pulsar-perf</code></a>, and <a href="/docs/en/next/reference-cli-tools#pulsar-client"><code>pulsar-client</code></a> use the <code>conf/client.conf</code> config file in a Pulsar installation.</p>
+<p>You'll need to add the following parameters to that file to use the token authentication with
+Pulsar's CLI tools:</p>
+<pre><code class="hljs css language-properties"><span class="hljs-attr">webServiceUrl</span>=<span class="hljs-string">http://broker.example.com:8080/</span>
+<span class="hljs-attr">brokerServiceUrl</span>=<span class="hljs-string">pulsar://broker.example.com:6650/</span>
+<span class="hljs-attr">authPlugin</span>=<span class="hljs-string">org.apache.pulsar.client.impl.auth.AuthenticationToken</span>
+<span class="hljs-attr">authParams</span>=<span class="hljs-string">token:eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY</span>
+</code></pre>
+<p>The token string can also be read from a file, eg:</p>
+<pre><code class="hljs">authParams=file:<span class="hljs-regexp">//</span><span class="hljs-regexp">/path/</span>to<span class="hljs-regexp">/token/</span>file
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="java-client"></a><a href="#java-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42 [...]
+<pre><code class="hljs css language-java">PulsarClient client = PulsarClient.builder()
+    .serviceUrl(<span class="hljs-string">"pulsar://broker.example.com:6650/"</span>)
+    .authentication(
+        AuthenticationFactory.token(<span class="hljs-string">"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY"</span>)
+    .build();
+</code></pre>
+<p>Similarly, one can also pass a <code>Supplier</code>:</p>
+<pre><code class="hljs css language-java">PulsarClient client = PulsarClient.builder()
+    .serviceUrl(<span class="hljs-string">"pulsar://broker.example.com:6650/"</span>)
+    .authentication(
+        AuthenticationFactory.token(() -&gt; {
+            <span class="hljs-comment">// Read token from custom source</span>
+            <span class="hljs-keyword">return</span> readToken();
+        })
+    .build();
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="python-client"></a><a href="#python-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.8 [...]
+<pre><code class="hljs css language-python"><span class="hljs-keyword">from</span> pulsar <span class="hljs-keyword">import</span> Client, AuthenticationToken
+
+client = Client(<span class="hljs-string">'pulsar://broker.example.com:6650/'</span>
+                authentication=AuthenticationToken(<span class="hljs-string">'eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY'</span>))
+</code></pre>
+<p>Alternatively, with a supplier:</p>
+<pre><code class="hljs css language-python">
+<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">read_token</span><span class="hljs-params">()</span>:</span>
+    <span class="hljs-keyword">with</span> open(<span class="hljs-string">'/path/to/token.txt'</span>) <span class="hljs-keyword">as</span> tf:
+        <span class="hljs-keyword">return</span> tf.read().strip()
+
+client = Client(<span class="hljs-string">'pulsar://broker.example.com:6650/'</span>
+                authentication=AuthenticationToken(read_token))
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="go-client"></a><a href="#go-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.6 [...]
+<pre><code class="hljs css language-go">client, err := NewClient(ClientOptions{
+    URL:            <span class="hljs-string">"pulsar://localhost:6650"</span>,
+    Authentication: NewAuthenticationToken(<span class="hljs-string">"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY"</span>),
+})
+</code></pre>
+<p>Alternatively, with a supplier:</p>
+<pre><code class="hljs css language-go">client, err := NewClient(ClientOptions{
+    URL:            <span class="hljs-string">"pulsar://localhost:6650"</span>,
+    Authentication: NewAuthenticationTokenSupplier(<span class="hljs-function"><span class="hljs-keyword">func</span> <span class="hljs-params">()</span> <span class="hljs-title">string</span></span> {
+        <span class="hljs-comment">// Read token from custom source</span>
+        <span class="hljs-keyword">return</span> readToken()
+    }),
+})
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="c-client"></a><a href="#c-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64  [...]
+<pre><code class="hljs css language-c++"><span class="hljs-meta">#<span class="hljs-meta-keyword">include</span> <span class="hljs-meta-string">&lt;pulsar/Client.h&gt;</span></span>
+
+pulsar::ClientConfiguration config;
+config.setAuth(pulsar::AuthToken::createWithToken(<span class="hljs-string">"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY"</span>));
+
+pulsar::<span class="hljs-function">Client <span class="hljs-title">client</span><span class="hljs-params">(<span class="hljs-string">"pulsar://broker.example.com:6650/"</span>, config)</span></span>;
+</code></pre>
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-tls-authentication"><span class="arrow-prev">← </span><span>Authentication using TLS</span></a><a class="docs-next button" href="/docs/en/next/security-token-admin"><span>Token authentication admin</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#token-authentication-overview">Token Authentication Overv [...]
+      const community = document.querySelector("a[href='#community']").parentNode;
+      const communityMenu =
+        '<li>' +
+        '<a id="community-menu" href="#">Community <span style="font-size: 0.75em">&nbsp;▼</span></a>' +
+        '<div id="community-dropdown" class="hide">' +
+          '<ul id="community-dropdown-items">' +
+            '<li><a href="/en/contact">Contact</a></li>' +
+            '<li><a href="/en/contributing">Contributing</a></li>' +
+            '<li><a href="/en/events">Events</a></li>' +
+            '<li><a href="https://twitter.com/Apache_Pulsar" target="_blank">Twitter &#x2750</a></li>' +
+            '<li><a href="https://github.com/apache/pulsar/wiki" target="_blank">Wiki &#x2750</a></li>' +
+            '<li><a href="https://github.com/apache/pulsar/issues" target="_blank">Issue tracking &#x2750</a></li>' +
+            '<li>&nbsp;</li>' +
+            '<li><a href="/en/resources">Resources</a></li>' +
+            '<li><a href="/en/team">Team</a></li>' +
+          '</ul>' +
+        '</div>' +
+        '</li>';
+
+      community.innerHTML = communityMenu;
+
+      const communityMenuItem = document.getElementById("community-menu");
+      const communityDropDown = document.getElementById("community-dropdown");
+      communityMenuItem.addEventListener("click", function(event) {
+        event.preventDefault();
+
+        if (communityDropDown.className == 'hide') {
+          communityDropDown.className = 'visible';
+        } else {
+          communityDropDown.className = 'hide';
+        }
+      });
+    </script></span><span><script src="/js/pjax-api.min.js"></script><script>window.navfoo = new Pjax({
+            areas: [
+              // try to use the first query.
+              '.mainContainer, .docsNavContainer .toc .navWrapper, .onPageNav',
+              // fallback
+              'body'
+            ],
+            link: '.docsNavContainer:not(.docsSliderActive) a',
+            update: {
+              script: false,
+            }
+          });
+        </script></span></footer></div><script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script><script>window.twttr=(function(d,s, id){var js,fjs=d.getElementsByTagName(s)[0],t=window.twttr||{};if(d.getElementById(id))return t;js=d.createElement(s);js.id=id;js.src='https://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js, fjs);t._e = [];t.ready = function(f) {t._e.push(f);};return t;}(document, 'script', 'twitter-wjs'));</scri [...]
+                document.addEventListener('keyup', function(e) {
+                  if (e.target !== document.body) {
+                    return;
+                  }
+                  // keyCode for '/' (slash)
+                  if (e.keyCode === 191) {
+                    const search = document.getElementById('search_input_react');
+                    search && search.focus();
+                  }
+                });
+              </script><script>
+              var search = docsearch({
+                
+                apiKey: 'd226a455cecdd4bc18a554c1b47e5b52',
+                indexName: 'apache_pulsar',
+                inputSelector: '#search_input_react',
+                algoliaOptions: {"facetFilters":["language:en","version:next"]}
+              });
+            </script></body></html>
\ No newline at end of file
diff --git a/content/docs/en/next/security-token-client/index.html b/content/docs/en/next/security-token-client/index.html
new file mode 100644
index 0000000..1e52efd
--- /dev/null
+++ b/content/docs/en/next/security-token-client/index.html
@@ -0,0 +1,195 @@
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Client Authentication using tokens · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;token-authentication-overview&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#token-authentication-overview&quot;  [...]
+"/><meta name="docsearch:version" content="next"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Client Authentication using tokens · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;token-authentication-overview&quot;&gt;&lt;/a&gt;&lt;a href=&q [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
+              (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+              (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+              m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+              })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+              ga('create', 'UA-102219959-1', 'auto');
+              ga('send', 'pageview');
+            </script><link rel="stylesheet" href="/css/code-blocks-buttons.css"/><script type="text/javascript" src="https://buttons.github.io/buttons.js"></script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script><script type="text/javascript" src="/js/custom.js"></script><link rel="stylesheet" href="/css/main.css"/></head><body class="sideNavVisible separateOnPageNav"><div class="fixedHeaderContainer"><div class="he [...]
+        const languagesMenuItem = document.getElementById("languages-menu");
+        const languagesDropDown = document.getElementById("languages-dropdown");
+        languagesMenuItem.addEventListener("click", function(event) {
+          event.preventDefault();
+
+          if (languagesDropDown.className == "hide") {
+            languagesDropDown.className = "visible";
+          } else {
+            languagesDropDown.className = "hide";
+          }
+        });
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container docsNavContainer" id="docsNav"><nav class="toc"><div class="toggleNav"><section class="navWrapper wrapper"><div class="navBreadcrumb wrapper"><div class="navToggle" id="navToggler"><i></i></div><h2><i>›</i><span>Sec [...]
+            document.addEventListener('DOMContentLoaded', function() {
+              createToggler('#navToggler', '#docsNav', 'docsSliderActive');
+              createToggler('#tocToggler', 'body', 'tocActive');
+
+              const headings = document.querySelector('.toc-headings');
+              headings && headings.addEventListener('click', function(event) {
+                if (event.target.tagName === 'A') {
+                  document.body.classList.remove('tocActive');
+                }
+              }, false);
+
+              function createToggler(togglerSelector, targetSelector, className) {
+                var toggler = document.querySelector(togglerSelector);
+                var target = document.querySelector(targetSelector);
+
+                if (!toggler) {
+                  return;
+                }
+
+                toggler.onclick = function(event) {
+                  event.preventDefault();
+
+                  target.classList.toggle(className);
+                };
+              }
+            });
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/security-token-client.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Client Authentication using tokens</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="token-authentication-overview"></a><a  [...]
+<p>Pulsar supports authenticating clients using security tokens that are based on
+<a href="https://jwt.io/introduction/">JSON Web Tokens</a> (<a href="https://tools.ietf.org/html/rfc7519">RFC-7519</a>).</p>
+<p>Tokens are used to identify a Pulsar client and associate with some &quot;principal&quot; (or &quot;role&quot;) which
+will be then granted permissions to do some actions (eg: publish or consume from a topic).</p>
+<p>A user will typically be given a token string by an administrator (or some automated service).</p>
+<p>The compact representation of a signed JWT is a string that looks like:</p>
+<pre><code class="hljs"> eyJhbGciOiJIUzI<span class="hljs-number">1</span><span class="hljs-symbol">NiJ9</span>.eyJzdWIiOiJKb<span class="hljs-number">2</span>UifQ.ipevR<span class="hljs-symbol">NuRP6</span>Hfl<span class="hljs-name">G8</span>cFK<span class="hljs-symbol">nmUPtypruRC4</span>fb<span class="hljs-number">1</span>DWtoLL<span class="hljs-number">62</span>SY
+</code></pre>
+<p>Application will specify the token when creating the client instance. An alternative is to pass
+a &quot;token supplier&quot;, that is to say a function that returns the token when the client library
+will need one.</p>
+<p>See <a href="/docs/en/next/security-token-admin">Token authentication admin</a> for a reference on how to enable token
+authentication on a Pulsar cluster.</p>
+<h3><a class="anchor" aria-hidden="true" id="cli-tools"></a><a href="#cli-tools" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.6 [...]
+<p><a href="/docs/en/next/reference-cli-tools">Command-line tools</a> like <a href="/docs/en/next/pulsar-admin"><code>pulsar-admin</code></a>, <a href="/docs/en/next/reference-cli-tools#pulsar-perf"><code>pulsar-perf</code></a>, and <a href="/docs/en/next/reference-cli-tools#pulsar-client"><code>pulsar-client</code></a> use the <code>conf/client.conf</code> config file in a Pulsar installation.</p>
+<p>You'll need to add the following parameters to that file to use the token authentication with
+Pulsar's CLI tools:</p>
+<pre><code class="hljs css language-properties"><span class="hljs-attr">webServiceUrl</span>=<span class="hljs-string">http://broker.example.com:8080/</span>
+<span class="hljs-attr">brokerServiceUrl</span>=<span class="hljs-string">pulsar://broker.example.com:6650/</span>
+<span class="hljs-attr">authPlugin</span>=<span class="hljs-string">org.apache.pulsar.client.impl.auth.AuthenticationToken</span>
+<span class="hljs-attr">authParams</span>=<span class="hljs-string">token:eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY</span>
+</code></pre>
+<p>The token string can also be read from a file, eg:</p>
+<pre><code class="hljs">authParams=file:<span class="hljs-regexp">//</span><span class="hljs-regexp">/path/</span>to<span class="hljs-regexp">/token/</span>file
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="java-client"></a><a href="#java-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42 [...]
+<pre><code class="hljs css language-java">PulsarClient client = PulsarClient.builder()
+    .serviceUrl(<span class="hljs-string">"pulsar://broker.example.com:6650/"</span>)
+    .authentication(
+        AuthenticationFactory.token(<span class="hljs-string">"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY"</span>)
+    .build();
+</code></pre>
+<p>Similarly, one can also pass a <code>Supplier</code>:</p>
+<pre><code class="hljs css language-java">PulsarClient client = PulsarClient.builder()
+    .serviceUrl(<span class="hljs-string">"pulsar://broker.example.com:6650/"</span>)
+    .authentication(
+        AuthenticationFactory.token(() -&gt; {
+            <span class="hljs-comment">// Read token from custom source</span>
+            <span class="hljs-keyword">return</span> readToken();
+        })
+    .build();
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="python-client"></a><a href="#python-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.8 [...]
+<pre><code class="hljs css language-python"><span class="hljs-keyword">from</span> pulsar <span class="hljs-keyword">import</span> Client, AuthenticationToken
+
+client = Client(<span class="hljs-string">'pulsar://broker.example.com:6650/'</span>
+                authentication=AuthenticationToken(<span class="hljs-string">'eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY'</span>))
+</code></pre>
+<p>Alternatively, with a supplier:</p>
+<pre><code class="hljs css language-python">
+<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">read_token</span><span class="hljs-params">()</span>:</span>
+    <span class="hljs-keyword">with</span> open(<span class="hljs-string">'/path/to/token.txt'</span>) <span class="hljs-keyword">as</span> tf:
+        <span class="hljs-keyword">return</span> tf.read().strip()
+
+client = Client(<span class="hljs-string">'pulsar://broker.example.com:6650/'</span>
+                authentication=AuthenticationToken(read_token))
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="go-client"></a><a href="#go-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.6 [...]
+<pre><code class="hljs css language-go">client, err := NewClient(ClientOptions{
+    URL:            <span class="hljs-string">"pulsar://localhost:6650"</span>,
+    Authentication: NewAuthenticationToken(<span class="hljs-string">"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY"</span>),
+})
+</code></pre>
+<p>Alternatively, with a supplier:</p>
+<pre><code class="hljs css language-go">client, err := NewClient(ClientOptions{
+    URL:            <span class="hljs-string">"pulsar://localhost:6650"</span>,
+    Authentication: NewAuthenticationTokenSupplier(<span class="hljs-function"><span class="hljs-keyword">func</span> <span class="hljs-params">()</span> <span class="hljs-title">string</span></span> {
+        <span class="hljs-comment">// Read token from custom source</span>
+        <span class="hljs-keyword">return</span> readToken()
+    }),
+})
+</code></pre>
+<h3><a class="anchor" aria-hidden="true" id="c-client"></a><a href="#c-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64  [...]
+<pre><code class="hljs css language-c++"><span class="hljs-meta">#<span class="hljs-meta-keyword">include</span> <span class="hljs-meta-string">&lt;pulsar/Client.h&gt;</span></span>
+
+pulsar::ClientConfiguration config;
+config.setAuth(pulsar::AuthToken::createWithToken(<span class="hljs-string">"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJKb2UifQ.ipevRNuRP6HflG8cFKnmUPtypruRC4fb1DWtoLL62SY"</span>));
+
+pulsar::<span class="hljs-function">Client <span class="hljs-title">client</span><span class="hljs-params">(<span class="hljs-string">"pulsar://broker.example.com:6650/"</span>, config)</span></span>;
+</code></pre>
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/next/security-tls-authentication"><span class="arrow-prev">← </span><span>Authentication using TLS</span></a><a class="docs-next button" href="/docs/en/next/security-token-admin"><span>Token authentication admin</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#token-authentication-overview">Token Authentication Overv [...]
+      const community = document.querySelector("a[href='#community']").parentNode;
+      const communityMenu =
+        '<li>' +
+        '<a id="community-menu" href="#">Community <span style="font-size: 0.75em">&nbsp;▼</span></a>' +
+        '<div id="community-dropdown" class="hide">' +
+          '<ul id="community-dropdown-items">' +
+            '<li><a href="/en/contact">Contact</a></li>' +
+            '<li><a href="/en/contributing">Contributing</a></li>' +
+            '<li><a href="/en/events">Events</a></li>' +
+            '<li><a href="https://twitter.com/Apache_Pulsar" target="_blank">Twitter &#x2750</a></li>' +
+            '<li><a href="https://github.com/apache/pulsar/wiki" target="_blank">Wiki &#x2750</a></li>' +
+            '<li><a href="https://github.com/apache/pulsar/issues" target="_blank">Issue tracking &#x2750</a></li>' +
+            '<li>&nbsp;</li>' +
+            '<li><a href="/en/resources">Resources</a></li>' +
+            '<li><a href="/en/team">Team</a></li>' +
+          '</ul>' +
+        '</div>' +
+        '</li>';
+
+      community.innerHTML = communityMenu;
+
+      const communityMenuItem = document.getElementById("community-menu");
+      const communityDropDown = document.getElementById("community-dropdown");
+      communityMenuItem.addEventListener("click", function(event) {
+        event.preventDefault();
+
+        if (communityDropDown.className == 'hide') {
+          communityDropDown.className = 'visible';
+        } else {
+          communityDropDown.className = 'hide';
+        }
+      });
+    </script></span><span><script src="/js/pjax-api.min.js"></script><script>window.navfoo = new Pjax({
... 5447 lines suppressed ...