> ## Documentation Index
> Fetch the complete documentation index at: https://help.dsalta.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Couchbase Capella

> Managed NoSQL database — members & access

<Tabs>
  <Tab title="Overview">
    Connect Couchbase Capella with an organization API key to sync organization members, projects, API keys, clusters and organization events, and run access reviews. Read-only. Data feeds into your Access accounts, Inventory and Changes pages.

    <Info>
      **Read-only access.** DSALTA only reads data from this integration. It never creates, modifies, or deletes anything in your environment, and every remediation step is performed by your team directly in the third-party product.
    </Info>

    <Info>
      **What you'll see.** The Access page lists the members of one Capella **organization** — the one whose ID you paste at connect time, or otherwise the one with the lowest organization ID among those the key can see — with their name, email, their organization roles (**Organization Owner**, **Organization Member**, **Project Creator**, or **Member** when Capella reports none) and the date they were added. People who have not yet accepted their invitation are left out. A member Capella reports as **verified** is shown as **Active**; any other verification state is shown as **Inactive**. Capella reports no per-user MFA state, so the **MFA** column is blank (shown as a dash).
    </Info>

    <Note>
      DSALTA collects this integration's data when you connect it — you can refresh it at any time with **Sync from integrations** on the **Integrations** page. The compliance checks below re-run once a day at 02:00 America/New\_York.
    </Note>

    ## What DSALTA reads

    DSALTA reads the Capella organization member roster — names, emails, organization roles, verification state and join dates — which appears on your **Access** page; your Capella **projects**, the organization's **API keys** (name, roles, expiry and the number of allowed IP ranges — never the secret) and the **clusters** in each project (cloud provider, region, server version and state), which appear on your **Inventory** page; and the organization's **events** from the last 365 days, which appear on your **Changes** page. Each event arrives as a change that has already happened — status **Deployed**, with its priority derived from the event severity (Capella's informational events are **Low**), the actor and the affected resource in the description, and the organization (plus the project, when the event names one) as the environment. Members' last-login times are not read.

    It calls these Couchbase Capella endpoints on `cloudapi.cloud.couchbase.com`:

    * `/v4/organizations`
    * `/v4/organizations/{id}/users`
    * `/v4/organizations/{id}/projects`
    * `/v4/organizations/{id}/apikeys`
    * `/v4/organizations/{id}/projects/{projectId}/clusters`
    * `/v4/organizations/{id}/events`

    Every request is a read. DSALTA has no code path that creates, modifies, or deletes anything in your Couchbase Capella environment.

    ## Troubleshooting

    <AccordionGroup>
      <Accordion title="The Access page shows the wrong organization, or fewer members than expected">
        When the key can see several organizations and the **Organization ID** was left empty, DSALTA syncs the one with the lowest organization ID. To pin a different one, disconnect, then connect again with the Organization ID filled in. A key generated with the **Organization Member** role, or scoped to a project, passes the connection check but returns only part of the roster — generate the key with the **Organization Owner** role. Note that disconnecting permanently deletes the data already collected from Capella.
      </Accordion>

      <Accordion title="The connection stopped working">
        A Capella API key expires after 180 days unless **Key Expiration** was set to **does not expire** when it was generated, and a key restricted to specific IP addresses cannot be used from DSALTA. Generate a new key, then disconnect and connect again.
      </Accordion>

      <Accordion title="Inventory shows the project but no clusters, or Changes is empty">
        Projects, API keys, clusters and events are read best-effort after the member roster: a failure on one of those calls leaves that part of the page empty without failing the sync. Clusters only appear once a project has one deployed, and only events from the last 365 days are read. Click **Sync from integrations** on the **Integrations** page to retry.
      </Accordion>
    </AccordionGroup>

    <AccordionGroup>
      <Accordion title="How do I check whether the connection is healthy?">
        Open **Integrations** in the DSALTA sidebar, stay on the **Connected** tab, and click **Manage** on the integration's card. Open the **Status** tab: it shows either **Connected and working properly** or **Connection issues detected**.

        Use the **Status** tab, not **Overview** — Overview always reports **Connected** regardless of the real state.
      </Accordion>

      <Accordion title="A check shows Failed and nothing changed on my side">
        On an integration-powered check, **Failed** normally means DSALTA was blocked rather than that you are non-compliant. Open the test, go to **Source Data**, and read the result code: **403** is a missing permission, **428** is a setting DSALTA still needs, **500** is a failure on DSALTA's side.

        A real compliance gap shows **207** and leaves the test looking **Completed**. See [Understanding Test Results](/guides/compliance/test-results).
      </Accordion>

      <Accordion title="Data looks out of date">
        Compliance checks re-run once a day at 02:00 America/New\_York. To refresh sooner, open **Integrations → Connected** and click **Sync from integrations** at the top right — it refreshes every connected integration at once.
      </Accordion>

      <Accordion title="How do I repair a broken connection?">
        There is no Reconnect, Repair or Refresh Token button. The only repair available is to disconnect and connect again.

        <Warning>
          **Disconnecting is destructive and cannot be undone.** DSALTA removes the access records, inventory, vulnerabilities, code changes, incidents and device records collected from this integration, and deletes the test results tied to the connection. Export anything you still need as audit evidence first — see [Integration errors](/troubleshooting/integration-errors).
        </Warning>
      </Accordion>

      <Accordion title="Configure scope will not let me change anything">
        That is expected. **Configure scope** is read-only — it shows what DSALTA is permitted to read, and has no Save action. To change what DSALTA can see, change the permissions on the credential in the third-party product, then disconnect and connect again.
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="How to connect">
    A Couchbase Capella organization API key token. The organization is detected automatically. Read-only.

    **Before you begin**

    * A Couchbase Capella organization.
    * The **Organization Owner** role, which is needed to create an organization-wide key.

    You will need:

    | Field | Where to find it | Example |
    | - | - | - |
    | **API key token** | Your initials → **Organizations** → the organization → **Settings → API Keys → Generate Key** | Shown once, at creation |
    | **Organization ID** (optional) | Only needed to pin one organization when the key can see several | Auto-detected when left empty |

    <Steps>
      <Step title="Start in DSALTA">
        Open **Integrations** in the DSALTA sidebar, find **Couchbase Capella**, and click **Connect** to open the connect panel.
      </Step>

      <Step title="Open your organization's API keys">
        Sign in at [cloud.couchbase.com](https://cloud.couchbase.com), click your initials (top right), choose **Organizations**, select the organization, then open **Settings → API Keys**.
      </Step>

      <Step title="Generate an organization-wide key">
        Click **Generate Key**. Name it (for example `dsalta-access-sync`). Under **Organization Roles** choose **Organization Owner** — a Member-scoped or project-level key returns a partial roster. Set **Key Expiration** to **does not expire**: the default is 180 days, and the sync stops when the key lapses. Leave **Allowed IP Addresses** empty and do not click **Add Current IP Address**.

        <Warning>
          **Copy the API key token, not the key ID.** Capella shows both after you click **Generate Key**, and the token is shown once — Capella warns that when you leave the page you will not be able to copy or download it again. A pasted key ID is rejected at connect time.
        </Warning>
      </Step>

      <Step title="Connect Couchbase Capella">
        Return to the connect panel, paste the token and click **Connect**. The organization is detected automatically; paste an **Organization ID** only to pin a specific one.
      </Step>
    </Steps>

    <Check>
      DSALTA validates the token when you click **Connect**, by listing the organizations it can see and, if you pasted one, checking that the Organization ID is among them. On success the integration moves to the **Connected** tab, and **Manage → Status** reads **Connected and working properly**. Checks begin reporting after the first sync.
    </Check>

    <Warning>
      **If the connection is rejected.** The key ID pasted instead of the token, an expired or deleted key, a key that can see no organization, or an Organization ID the key cannot see.

      The on-screen message is generic — see [Connection error messages](/troubleshooting/connection-error-messages).
    </Warning>
  </Tab>

  <Tab title="Automated checks">
    Each check below re-runs once a day, at 02:00 America/New\_York, while this integration is connected. Click any check for step-by-step remediation guidance.

    | Check | Severity | What it verifies |
    | - | - | - |
    | [User access to Critical System should be valid](/integrations/couchbase-capella/user-access-to-critical-system-should-be-valid) | Info | Checks that everyone with Couchbase Capella access is an active employee on the People page. |
    | [Offboarded users should not have active access](/integrations/couchbase-capella/offboarded-users-should-not-have-active-access) | High | Checks that offboarded employees no longer have active Couchbase Capella access. |
  </Tab>

  <Tab title="Useful links">
    | Topic | Link |
    | - | - |
    | Setup | [Get started with the Capella Management API](https://docs.couchbase.com/cloud/management-api-guide/management-api-start.html) |
    | Remediation | [Manage organization users](https://docs.couchbase.com/cloud/organizations/manage-organization-users.html) |
    | General | [Capella console](https://cloud.couchbase.com) |
    | DSALTA | [Connection error messages](/troubleshooting/connection-error-messages) |
  </Tab>
</Tabs>
