---
title: Resource Documentation
pubDate: 2026-08-17T09:53:44.266Z
antora:
  editUrl: https://github.com/couchbase/docs-operator/edit/release/2.6/modules/ROOT/pages/reference-resources.adoc
  xref: xref:2.6@operator::reference-resources.adoc[]
---

[Consult the llms.txt file for a full list of contents](/llms.txt)
[View original HTML](/operator/2.6/reference-resources.html)

# Resource Documentation

> How to access documentation for Couchbase custom resources. 

## [](#online-resource-documentation)Online Resource Documentation

Couchbase resources are documented entirely using Kubernetes to reduce duplication of effort. Accessing the documentation requires the resource type and a JSON path.

The available resources can be listed with the following command:

```console
kubectl api-resources | grep couchbase
couchbaseautoscalers              cba          couchbase.com                  true         CouchbaseAutoscaler
couchbasebackuprestores           cbrestore    couchbase.com                  true         CouchbaseBackupRestore
couchbasebackups                  cbbackup     couchbase.com                  true         CouchbaseBackup
couchbasebuckets                               couchbase.com                  true         CouchbaseBucket
couchbaseclusters                 cbc          couchbase.com                  true         CouchbaseCluster
couchbaseephemeralbuckets                      couchbase.com                  true         CouchbaseEphemeralBucket
couchbasegroups                                couchbase.com                  true         CouchbaseGroup
couchbasememcachedbuckets                      couchbase.com                  true         CouchbaseMemcachedBucket
couchbasereplications                          couchbase.com                  true         CouchbaseReplication
couchbaserolebindings                          couchbase.com                  true         CouchbaseRoleBinding
couchbaseusers                                 couchbase.com                  true         CouchbaseUser
```

Then to access documentation for a resource, take the name from the first column and use the "explain" functionality of `kubectl`:

```console
kubectl explain couchbasereplications
KIND:     CouchbaseReplication
VERSION:  couchbase.com/v2

DESCRIPTION:
    The CouchbaseReplication resource represents a Couchbase-to-Couchbase, XDCR
    replication stream from a source bucket to a destination bucket. This
    provides off-site backup, migration, and disaster recovery.

FIELDS:
   apiVersion	<string>
     APIVersion defines the versioned schema of this representation of an
     object. Servers should convert recognized schemas to the latest internal
     value, and may reject unrecognized values. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

   kind	<string>
     Kind is a string value representing the REST resource this object
     represents. Servers may infer this from the endpoint the client submits
     requests to. Cannot be updated. In CamelCase. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

   metadata	<Object>
     Standard object's metadata. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

   spec	<Object> -required-
```

You can descend through the resource configuration by making the JSON path more specific. For example:

```console
$ kubectl explain couchbasereplications.spec
in couchbasereplications.spec
KIND:     CouchbaseReplication
VERSION:  couchbase.com/v2

RESOURCE: spec <Object>

DESCRIPTION:
     CouchbaseReplicationSpec allows configuration of an XDCR replication.

FIELDS:
   bucket	<string> -required-
     Bucket is the source bucket to replicate from. This refers to the Couchbase
     bucket name, not the resource name of the bucket. A bucket with this name
     must be defined on this cluster. Legal bucket names have a maximum length
     of 100 characters and may be composed of any character from "a-z", "A-Z",
     "0-9" and "-_%\.".

   compressionType	<string>
     CompressionType is the type of compression to apply to the replication.
     When None, no compression will be applied to documents as they are
     transferred between clusters. When Auto, Couchbase server will
     automatically compress documents as they are transferred to reduce
     bandwidth requirements. This field must be one of "None" or "Auto",
     defaulting to "Auto".

   filterExpression	<string>
     FilterExpression allows certain documents to be filtered out of the
     replication.

   paused	<boolean>
     Paused allows a replication to be stopped and restarted without having to
     restart the replication from the beginning.

   remoteBucket	<string> -required-
     RemoteBucket is the remote bucket name to synchronize to. This refers to
     the Couchbase bucket name, not the resource name of the bucket. Legal
     bucket names have a maximum length of 100 characters and may be composed of
     any character from "a-z", "A-Z", "0-9" and "-_%\.".
```

Each field describes what it does, the expected type, and whether or not it is required in order to be accepted by Kubernetes.