> ## 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.

# GitBook

> Docs & wiki — members & access

<Tabs>
  <Tab title="Overview">
    Connect GitBook with a personal access token to sync organization members and spaces, and run access reviews. Read-only.

    <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>

    <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 your GitBook organization's members — names, emails, organization roles and active status — which appear on your **Access** page; and your GitBook resources, which appear on your **Inventory** page. The Access page covers organization members; external collaborators invited to individual spaces are managed in GitBook itself.

    It calls these GitBook endpoints:

    * `/user`
    * `/orgs`
    * `/orgs/{organizationId}/members`
    * `/orgs/{organizationId}/spaces`

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

    ## Troubleshooting

    <AccordionGroup>
      <Accordion title="The connection fails to validate">
        Invalid or expired token.
      </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/data-library/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 GitBook personal access token. Read-only.

    **Before you begin**

    * A GitBook account (free tier works)
    * Be an admin or member with visibility into your organization's members
    * GitBook's Free plan includes one user, so a free-tier organization's member list is just you — the access review will be a single row. A multi-person roster needs a paid GitBook plan (Premium, Ultimate or Enterprise, priced per user).

    You will need:

    | Field            | Where to find it                                  | Example                         |
    | ---------------- | ------------------------------------------------- | ------------------------------- |
    | **Access Token** | [Open](https://app.gitbook.com/account/developer) | `GitBook personal access token` |

    <Steps>
      <Step title="Start in DSALTA">
        Open **Integrations** in the DSALTA sidebar, find **GitBook**, and click **Connect** to open the connect panel. Leave it open — it lists every value you need, and you create those in the steps below.
      </Step>

      <Step title="Open your GitBook developer settings">
        Go to app.gitbook.com/account/developer (Account → Developer tools).

        <img src="https://mintcdn.com/dsalta/4UzgskHSsjeDN5e5/images/integrations/gitbook/01-developer-tools.png?fit=max&auto=format&n=4UzgskHSsjeDN5e5&q=85&s=f618185bcc9a84931ba68c7c8bc1a948" alt="GitBook account settings on the Developer tools page showing the Access tokens section with no tokens created and a Create new token button" style={{maxWidth:"720px",width:"100%",borderRadius:"8px"}} width="2940" height="1022" data-path="images/integrations/gitbook/01-developer-tools.png" />
      </Step>

      <Step title="Create a personal access token">
        Click Create new token, give it a name (e.g. DSALTA), and copy the token — it's specific to your account and should not be shared.

        <Tip>A GitBook access token carries **exactly the access its owner has** — GitBook's own wording is that "a token provides the same level of access & privileges that its associated GitBook user account would have." Create the token from an account that can see every member of the organization you want reviewed, or DSALTA's Access page will be shorter than your real roster.</Tip>
      </Step>

      <Step title="Connect GitBook">
        Paste your access token, then click Connect.

        <Tip>DSALTA never asks which GitBook organization to read — it calls `/v1/orgs` with your token and uses the **first organization GitBook returns**. If your account belongs to more than one organization, create the token from an account that belongs only to the organization you want reviewed; otherwise the Access page may show the wrong roster with no error to tell you so.</Tip>

        **Guests are not reviewed.** GitBook returns a null role for guests — external collaborators invited to individual spaces — and DSALTA drops those rows before they reach the Access page. Only members with a real organization role appear in the access review, so audit guest access separately in GitBook.
      </Step>
    </Steps>

    <Check>
      DSALTA validates the credential when you click **Connect**. 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.** Invalid or expired token.

      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/gitbook/user-access-to-critical-system-should-be-valid) | Info     | Checks that everyone with GitBook access is an active employee on the People page. |
    | [Offboarded users should not have active access](/integrations/gitbook/offboarded-users-should-not-have-active-access) | High     | Checks that offboarded employees no longer have active GitBook access.             |
  </Tab>

  <Tab title="Useful links">
    | Topic   | Link                                                                                         |
    | ------- | -------------------------------------------------------------------------------------------- |
    | Setup   | [Create a GitBook personal access token](https://app.gitbook.com/account/developer)          |
    | Setup   | [GitBook API authentication](https://gitbook.com/docs/developers/gitbook-api/authentication) |
    | General | [GitBook website](https://gitbook.com)                                                       |
    | DSALTA  | [Connection error messages](/troubleshooting/connection-error-messages)                      |
  </Tab>
</Tabs>
