The Couchbase Java client allow Java applications to access a Couchbase cluster. It offers synchronous APIs as well as reactive and asynchronous equivalents to maximize flexibility and performance.

MutationResult result = collection.mutateIn(
    Collections.singletonList(MutateInSpec.upsert("foo", "bar")),

Couchbase Java SDK 3.1

Getting Started
Practical Howto Docs

Connect to our services — data (KV); Query; Search; Analytics; Views — and the Sub-Document API.

Reference Guides

The documentation supplements the practical Howto docs with references and concept guides, for those who prefer a broader understanding before diving in and coding.

What’s Hot?

The Couchbase Java SDK 3.0 is a complete rewrite of the 2.x API, providing a simpler surface area and adding support for future Couchbase Server features like Collections and Scopes (available in Couchbase Server 6.5 and 6.6 as a developer preview). The (reactive) API also migrated from RxJava to Reactor, along with other improvements to performance, logging, debugging and timeout troubleshooting.


Those useful nuts-and-bolts guides to compatibility tables; release notes; contribution guide; and the migration guide for moving to the 3.0 API.


For community help, visit the Couchbase forums. The Java SDK can be combined with many other projects in the broader Java and JVM ecosystem and beyond. This includes Spring Data and Spark.

Older SDK Versions

Documentation on older, unsupported versions of the SDK — that have reached end-of-life — can be found in the archive.