Data API vs. Couchbase SDKs

  • Capella Operational
  • concept
The Couchbase Capella Data API and the Couchbase SDKs have overlapping functionality. This page explains when to use the Data API and when to use Couchbase SDKs.

When to Use the Data API

Consider using the Data API for the following use cases.

Applications in driverless mode

In some instances, it may not be practical to deploy Couchbase SDKs and related libraries. For example, code running in hosted services such as GDrive or Sharepoint which can access data through HTTP requests. The Data API may also be better suited to data access cases in Function-as-a-Service (FaaS) platforms such as AWS Lambda, Google Cloud Functions, or Azure Functions.

Integrated Platform-as-a-Service ecosystems

It’s often not practical to deploy SDKs within broader Integrated Platform-as-a-Service (iPaaS) ecosystems such as Google Application Services. Integrating Capella into those third party platforms is simplified using the Data API. Developers can build connectors using off-the-shelf HTTP client libraries.

AI integrations

This is a more specific case of Integrated Platform-as-a-Service. The Data API offers a lightweight alternative to SDKs for supporting agentic workflows; for example, Google VertexAI function calling and AWS Bedrock Agents.

Automation and CI/CD pipelines

The Management API makes it possible for you to configure, provision, and manage Capella deployments using Infrastructure-as-Code (IaC). The Data API enables you to extend your automation test scripts to access and manipulate data programmatically. For example, after deploying a database and creating buckets, scopes, and collections, the script can load test data, test data access, delete the test data set, or perform other related operations.

Developer prototyping and testing

The Data API enables you to develop and evaluate a new feature easily, without going through the process of integrating it into a complete application. This can also be a quick way to debug data access issues.

Where Couchbase SDKs are not (yet) available

Being language and platform agnostic, the Data API offers a fallback option in environments and platforms where there is no supported Couchbase SDK available.

Web browser applications

The Data API allows quick access to Couchbase Capella from browser applications, without the overhead which may be required by Capella App Services, in cases where scaling and security considerations are not important.

Version compatibility and dependencies

The Data API alleviates the need to deal with SDK version maintenance and compatibility issues, including framework and language version dependencies.

When to Use Couchbase SDKs

Consider using the Couchbase SDKs for the following use cases.

High load and latency sensitive applications

Requests through the Data API are likely to take longer than corresponding SDK-based operations. For high load use cases and latency sensitive applications, an SDK is recommended.

Highly resilient applications

SDKs provide comprehensive retry logic for handling inevitable errors, details about Couchbase cluster status, and tracing through Open Telemetry.

Idiomatic interfaces

The SDKs support the idiomatic interface for a programming language. Use the SDKs when you want app developers building backend apps in a specific language to use patterns suitable for that language. For example, handling results as they stream in with an asynchronous or reactive interface is supported in Java, Node.js, .NET, and other SDKs.

For more information, see SDKs & Connectors.

When to Use Capella App Services

Consider using Capella App Services for the following use cases.

Web browser applications with scaling and security

Use Capella App Services for access to Couchbase Capella from browser applications where scaling and security considerations are important.

For more information, see app-services:index.adoc.

See Also