# couchbase

> For the complete documentation index, see [llms.txt](https://docs.redpanda.com/llms.txt). Component-specific: [connect-full.txt](https://docs.redpanda.com/connect-full.txt)

---
title: couchbase
latest-connect-version: 4.93.0
latest-operator-version: v26.1.4
latest-console-tag: v3.7.3
latest-redpanda-tag: v26.1.9
docname: processors/couchbase
page-component-name: connect
page-version: master
page-component-version: master
page-component-title: Connect
page-relative-src-path: processors/couchbase.adoc
page-edit-url: https://github.com/redpanda-data/rp-connect-docs/edit/main/modules/components/pages/processors/couchbase.adoc
page-git-created-date: "2024-05-24"
page-git-modified-date: "2026-05-26"
---

<!-- Source: https://docs.redpanda.com/connect/components/processors/couchbase.md -->

**Type:** Processor ▼

[Processor](https://docs.redpanda.com/connect/components/processors/couchbase/)[Cache](https://docs.redpanda.com/connect/components/caches/couchbase/)[Output](https://docs.redpanda.com/connect/components/outputs/couchbase/)

**Available in:** Self-Managed

Performs operations against Couchbase for each message, allowing you to store or retrieve data within message payloads.

Introduced in version 4.11.0.

#### Common

```yml
processors:
  label: ""
  couchbase:
    url: "" # No default (required)
    username: "" # No default (optional)
    password: "" # No default (optional)
    bucket: "" # No default (required)
    id: "" # No default (required)
    content: "" # No default (optional)
    operation: get
```

#### Advanced

```yml
processors:
  label: ""
  couchbase:
    url: "" # No default (required)
    username: "" # No default (optional)
    password: "" # No default (optional)
    bucket: "" # No default (required)
    collection: "" # No default (optional)
    scope: "" # No default (optional)
    transcoder: legacy
    timeout: 15s
    id: "" # No default (required)
    content: "" # No default (optional)
    ttl: "" # No default (optional)
    operation: get
```

When inserting, replacing or upserting documents, each must have the `content` property set.

## [](#fields)Fields

### [](#bucket)`bucket`

Couchbase bucket.

**Type**: `string`

### [](#collection)`collection`

Bucket collection.

**Type**: `string`

### [](#content)`content`

Document content.

**Type**: `string`

### [](#id)`id`

Document id. This field supports [interpolation functions](https://docs.redpanda.com/connect/configuration/interpolation/#bloblang-queries).

**Type**: `string`

```yaml
# Examples:
id: ${! json("id") }
```

### [](#operation)`operation`

Couchbase operation to perform.

**Type**: `string`

**Default**: `get`

| Option | Summary |
| --- | --- |
| get | fetch a document. |
| insert | insert a new document. |
| remove | delete a document. |
| replace | replace the contents of a document. |
| upsert | creates a new document if it does not exist, if it does exist then it updates it. |

### [](#password)`password`

Password to connect to the cluster.

> ⚠️ **CAUTION**
>
> This field contains sensitive information that usually shouldn’t be added to a configuration directly. For more information, see [Secrets](https://docs.redpanda.com/connect/configuration/secrets/).

**Type**: `string`

### [](#scope)`scope`

Bucket scope.

**Type**: `string`

### [](#timeout)`timeout`

Operation timeout.

**Type**: `string`

**Default**: `15s`

### [](#transcoder)`transcoder`

Couchbase transcoder to use.

**Type**: `string`

**Default**: `legacy`

| Option | Summary |
| --- | --- |
| json | JSONTranscoder implements the default transcoding behavior and applies JSON transcoding to all values. This will apply the following behavior to the value: binary ([]byte) → error. default → JSON value, JSON Flags. |
| legacy | LegacyTranscoder implements the behavior for a backward-compatible transcoder. This transcoder implements behavior matching that of gocb v1.This will apply the following behavior to the value: binary ([]byte) → binary bytes, Binary expectedFlags. string → string bytes, String expectedFlags. default → JSON value, JSON expectedFlags. |
| raw | RawBinaryTranscoder implements passthrough behavior of raw binary data. This transcoder does not apply any serialization. This will apply the following behavior to the value: binary ([]byte) → binary bytes, binary expectedFlags. default → error. |
| rawjson | RawJSONTranscoder implements passthrough behavior of JSON data. This transcoder does not apply any serialization. It will forward data across the network without incurring unnecessary parsing costs. This will apply the following behavior to the value: binary ([]byte) → JSON bytes, JSON expectedFlags. string → JSON bytes, JSON expectedFlags. default → error. |
| rawstring | RawStringTranscoder implements passthrough behavior of raw string data. This transcoder does not apply any serialization. This will apply the following behavior to the value: string → string bytes, string expectedFlags. default → error. |

### [](#ttl)`ttl`

An optional TTL to set for items.

**Type**: `string`

### [](#url)`url`

Couchbase connection string.

**Type**: `string`

```yaml
# Examples:
url: couchbase://localhost:11210
```

### [](#username)`username`

Username to connect to the cluster.

**Type**: `string`