SDKs for Couchbase Operational Database

A fast and scalable database is even better when it’s easy to develop for. Couchbase gives you the SDK APIs to work with Capella, our managed solution, or self-managed options in your private Cloud or datacenter.

val json = JsonObject("foo" -> "bar", "baz" -> "qux")

collection.reactive.upsert("document-key", json)
    .doOnError(err  => println(s"Error during upsert: ${err}"))
    .doOnNext(_     => println("Success"))
    .subscribe()

Couchbase is a large platform — covering many services — and Couchbase SDKs are not thin wrappers generated around a REST API, but well thought out interfaces to the platform that make it easier to design and maintain your client code, and work with Couchbase in more natural ways for your platform.

Explore our SDK documentation for your chosen platform:

  • C++

  • .NET

  • Go

  • Java

  • Kotlin

  • Node.js

  • PHP

  • Python

  • Ruby

  • Rust

  • Scala


Using Your Database

How-to guides to help you start your development journey with Couchbase and the C++ SDK.


Resources

Useful resources to help support your development experience with Couchbase and the C++ SDK.


Using Your Database

How-to guides to help you start your development journey with Couchbase and the .NET SDK.

Easy to Connect & Get Started


Resources

Useful resources to help support your development experience with Couchbase and the .NET SDK.


Using Your Database

How-to guides to help you start your development journey with Couchbase and the Go SDK.

Easy to Connect & Get Started


Resources

Useful resources to help support your development experience with Couchbase and the Go SDK.


Using Your Database

How-to guides to help you start your development journey with Couchbase and the Java SDK.

Easy to Connect & Get Started


Resources

Useful resources to help support your development experience with Couchbase and the Java SDK.


Using Your Database

How-to guides to help you start your development journey with Couchbase and the PHP SDK.


Resources

Useful resources to help support your development experience with Couchbase and the PHP SDK.


Using Your Database

How-to guides to help you start your development journey with Couchbase and the Python SDK.

Easy to Connect & Get Started


Resources

Useful resources to help support your development experience with Couchbase and the Python SDK.


Using Your Database

How-to guides to help you start your development journey with Couchbase and the Ruby SDK.


Resources

Useful resources to help support your development experience with Couchbase and the Ruby SDK.


Using Your Database

How-to guides to help you start your development journey with Couchbase and the Rust SDK.


Resources

Useful resources to help support your development experience with Couchbase and the Rust SDK.

The links above will take you to the latest version of your chosen SDK. Should you need to look up something for an older release, you’ll discover there a dropdown version selector (in the left-hand navigation) for each SDK release — and links to docs for older, unsupported versions in the docs archive.

Couchbase C SDK - libcouchbase (lcb) - is also available, and supported, but is no longer actively added to with new Server features.

For new projects, choose instead the C++ SDK — or possibly Go or Rust — for a modern, fully-featured SDK, with excellent performance.


Alternatives to SDKs

The Data API gives access to data in Capella Operational clusters — for when to use the Data API, or Capella’s other REST APIs, see Data API vs. Couchbase SDKs.


Couchbase Community

Community Help

In addition to the Couchbase Support Team, help can be found from the community in our forums, and on our official Couchbase Discord server.

Integrations

Information on some 3rd-party SDK integrations, such as Spring Data, can be found in the SDK docs.

Tutorials

The developer bootstrap exercises and other tutorials highlight the use of Couchbase SDKs in the stacks you are most likely to use in development, such as Spring Data, Node Ottoman, and Python Flask.