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

# Confluence Cloud

> Sync spaces, pages, users, and audit logs from Confluence Cloud

Sync spaces, pages, users, and audit logs from Confluence Cloud.

<Tabs>
  <Tab title="Overview">
    ## Confluence Cloud setup

    Parable lists one **Confluence Cloud** Provider under Atlassian. In the connection wizard, use **Authentication method** to choose **Email + API Token** or **OAuth 2.0 Client Credentials (2LO)**.

    Both methods sync the same taps: spaces, pages, page content, users, and audit logs.

    ## Data streams

    This Provider Plugin defines 5 data streams.

    | Stream         | Description                      | Sync        |
    | -------------- | -------------------------------- | ----------- |
    | `spaces`       | Confluence spaces                | full        |
    | `pages`        | Confluence pages                 | incremental |
    | `page_content` | Full page content including body | full        |
    | `users`        | Confluence users                 | full        |
    | `audit`        | Confluence audit logs            | incremental |
  </Tab>

  <Tab title="Setup Guide">
    ### Confluence

    #### What You'll Need

    | Credential        | What it is                                                                |
    | ----------------- | ------------------------------------------------------------------------- |
    | **API Token**     | Generated from Atlassian account settings                                 |
    | **Email Address** | Your Atlassian account email                                              |
    | **Base URL**      | Your Confluence instance URL (e.g., `https://your-company.atlassian.net`) |
    | **Domain**        | Your Atlassian domain (e.g., `your-company.atlassian.net`)                |

    #### Prerequisites

    * **Confluence Administrator** or **Space Administrator** for comprehensive data access
    * **View permission** on spaces and pages you want to sync

    #### Setup

    1. Create an API token at [https://id.atlassian.com/manage-profile/security/api-tokens](https://id.atlassian.com/manage-profile/security/api-tokens)
    2. Note your Confluence site URL (`https://your-company.atlassian.net`) and domain
    3. In Parable, select **Email + API Token**, enter credentials and connection settings, then **Save & test connection**

    #### Verify

    ```bash theme={null}
    curl -X GET "https://your-company.atlassian.net/wiki/rest/api/search/user?cql=type=user&limit=1" \
      -u "your-email@company.com:YOUR_API_TOKEN" \
      -H "Content-Type: application/json"
    ```

    #### What You'll Need

    | Credential        | What it is                                                                |
    | ----------------- | ------------------------------------------------------------------------- |
    | **Client ID**     | From the service account OAuth 2.0 credential in Atlassian Administration |
    | **Client Secret** | From the same OAuth 2.0 credential                                        |
    | **Cloud ID**      | Site identifier for `api.atlassian.com` gateway URLs                      |

    #### Prerequisites

    * Atlassian organization admin access to create service accounts and OAuth credentials
    * Confluence product access granted to the service account on the target site
    * Confluence permissions on the service account in addition to OAuth scopes

    The same Atlassian OAuth client credentials can be reused for Jira Cloud and Confluence Cloud when both products are on the same site, as long as the credential includes the scopes for each product you connect.

    #### Setup

    1. In [Atlassian Administration](https://admin.atlassian.com), create a service account and grant it **Confluence** access on the target site
    2. Create **OAuth 2.0** credentials on that service account with these scopes:
       * `read:space:confluence`
       * `read:space-details:confluence`
       * `read:page:confluence`
       * `read:user:confluence`
       * `read:audit-log:confluence`
    3. Copy **Client ID** and **Client Secret**
    4. Find **Cloud ID** via admin console or `GET https://api.atlassian.com/oauth/token/accessible-resources` (use the site `id`)
    5. In Parable, select **OAuth 2.0 Client Credentials (2LO)**, enter Client ID, Client Secret, and Cloud ID, then **Save & test connection**

    #### Verify

    ```bash theme={null}
    curl -X POST "https://auth.atlassian.com/oauth/token" \
      -H "Content-Type: application/x-www-form-urlencoded" \
      -d "grant_type=client_credentials" \
      -d "client_id=YOUR_CLIENT_ID" \
      -d "client_secret=YOUR_CLIENT_SECRET" \
      -d "audience=api.atlassian.com"
    ```

    ```bash theme={null}
    curl -s -H "Authorization: Bearer ACCESS_TOKEN" \
      "https://api.atlassian.com/ex/confluence/CLOUD_ID/wiki/api/v2/spaces?limit=1"
    ```

    #### OAuth scopes

    | Scope                           | Purpose                |
    | ------------------------------- | ---------------------- |
    | `read:space:confluence`         | Spaces list            |
    | `read:space-details:confluence` | Space details          |
    | `read:page:confluence`          | Pages and page content |
    | `read:user:confluence`          | User directory         |
    | `read:audit-log:confluence`     | Audit logs             |
  </Tab>

  <Tab title="Permissions">
    <AccordionGroup>
      <Accordion id="provider-permission-tap-confluencecloud-audit-de36a5f0f561" title="Audit" icon="shield-check" iconType="sharp-duotone-solid">
        Developer identifier: `audit`

        **Audit.** Confluence audit logs.

        * **Enables:** Trace Confluence audit records to the author, affected object, action, category, source address, and creation time.
        * **Scope:** Reads the records selected by Confluence Cloud's `/wiki/rest/api/audit` operation as an event stream using incremental synchronization. This stream is opt-in. Visibility follows the Confluence account and space permissions associated with the credential. The stream does not include records the credential, parent traversal, configured filters, or provider API omits. This stream supplies no reliable deletion signal.

        <AccordionGroup>
          <Accordion id="provider-permission-field-confluencecloud-audit-affectedobject-8eba9387e7d3" title="Affected Object" icon="cube" iconType="sharp-duotone-solid">
            Developer identifier: `audit.affectedObject`

            **Affected Object.** The primary object affected by the action. It preserves the nested context needed to interpret the parent audit.

            * **Enables:** Attribute affected object in `audit.affectedObject` to the parent audit; identify parent records where that nested affected object object is absent.
            * **Interpretation:** Confluence Cloud reports affected object as a nested object on each audit; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-affectedobject-name-51556cb11b1a" title="Name" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `audit.affectedObject.name`

            **Name.** Name of the object. It gives the Confluence Cloud audit object a human-readable provider label while its identifier remains the stable reference.

            * **Enables:** Match repeated Confluence Cloud audit object entries on name in `audit.ConfluenceCloudAuditObject.name`; collapse only entries that share this declared transform key.
            * **Interpretation:** Confluence Cloud reports name as display text for each Confluence Cloud audit object; names are mutable and are not stable identities. The connector explicitly marks this field as a transform deduplication key.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-affectedobject-objecttype-42dad174a597" title="Object Type" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `audit.affectedObject.objectType`

            **Object Type.** Type of the object (e.g., 'page', 'space', 'user'). It identifies the related provider object that gives the Confluence Cloud audit object its parent, owner, or container context.

            * **Enables:** Segment Confluence Cloud audit object entries in Audit by object type in `audit.ConfluenceCloudAuditObject.objectType`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports object type as a label from its own taxonomy on each Confluence Cloud audit object; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-associatedobjects-f7e143577ce3" title="Associated Objects" icon="sitemap" iconType="sharp-duotone-solid">
            Developer identifier: `audit.associatedObjects`

            **Associated Objects.** Additional objects associated with the action (e.g., parent objects). It preserves the nested context needed to interpret the parent audit.

            * **Enables:** Attribute every returned Confluence Cloud audit object in `audit.associatedObjects` to its parent audit; keep each relationship distinct and distinguish an absent array from an explicitly empty one.
            * **Interpretation:** Confluence Cloud returns associated objects as an array of Confluence Cloud audit object entries on each audit; missing, empty, and permission-redacted arrays are not equivalent.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-author-1c32635f5d9c" title="Author" icon="user-tie" iconType="sharp-duotone-solid">
            Developer identifier: `audit.author`

            **Author.** User who performed the audited action. It preserves the nested context needed to interpret the parent audit.

            * **Enables:** Attribute author in `audit.author` to the parent audit; identify parent records where that nested author object is absent.
            * **Interpretation:** Confluence Cloud reports author as a nested object on each audit; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-author-accountid-35c753a2a8a8" title="Account ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `audit.author.accountId`

            **Account ID.** Atlassian account ID of the author. It provides the reference needed to connect the audit to the corresponding provider object.

            * **Enables:** Connect each Confluence Cloud audit author in Audit to the referenced account through `audit.ConfluenceCloudAuditAuthor.accountId`; flag account ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports account ID as an identifier in its account namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-author-displayname-4b2e1c92110f" title="Display Name" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `audit.author.displayName`

            **Display Name.** Display name of the author. It distinguishes the provider-defined display name state or classification for the Confluence Cloud audit author.

            * **Enables:** Label each Confluence Cloud audit author with display name from `audit.ConfluenceCloudAuditAuthor.displayName`; distinguish records that share that display name but have different Confluence Cloud identifiers.
            * **Interpretation:** Confluence Cloud reports display name as display text for each Confluence Cloud audit author; names are mutable and are not stable identities.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-author-type-1566e9dea8fb" title="Type" icon="user-tie" iconType="sharp-duotone-solid">
            Developer identifier: `audit.author.type`

            **Type.** Author type (e.g., 'user'). It identifies the related provider object that gives the Confluence Cloud audit author its parent, owner, or container context.

            * **Enables:** Segment Confluence Cloud audit author entries in Audit by type in `audit.ConfluenceCloudAuditAuthor.type`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports type as a label from its own taxonomy on each Confluence Cloud audit author; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-category-166476afce2a" title="Category" icon="sliders" iconType="sharp-duotone-solid">
            Developer identifier: `audit.category`

            **Category.** Audit category (e.g., 'permissions', 'pages'). It distinguishes the provider-defined category state or classification for the audit.

            * **Enables:** Segment audit entries in Audit by category in `audit.category`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports category as a label from its own taxonomy on each audit; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-changedvalues-a3379847fed2" title="Changed Values" icon="list-tree" iconType="sharp-duotone-solid">
            Developer identifier: `audit.changedValues`

            **Changed Values.** List of value changes recorded for the action. It preserves the nested context needed to interpret the parent audit.

            * **Enables:** Search the returned changed values content in `audit.changedValues` while preserving element order and attribution to the parent audit.
            * **Interpretation:** Confluence Cloud returns changed values as ordered content or provider-generated content metadata on each audit; truncation, omission, and inaccessible source media can limit completeness.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-changedvalues-name-e35d19626672" title="Name" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `audit.changedValues.name`

            **Name.** Name of the changed field. It gives the Confluence Cloud audit changed value a human-readable provider label while its identifier remains the stable reference.

            * **Enables:** Match repeated Confluence Cloud audit changed value entries on name in `audit.ConfluenceCloudAuditChangedValue.name`; collapse only entries that share this declared transform key.
            * **Interpretation:** Confluence Cloud reports name as display text for each Confluence Cloud audit changed value; names are mutable and are not stable identities. The connector explicitly marks this field as a transform deduplication key.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-changedvalues-newvalue-870715c0480c" title="New Value" icon="circle-info" iconType="sharp-duotone-solid">
            Developer identifier: `audit.changedValues.newValue`

            **New Value.** New value of the field. It must be interpreted with the enclosing provider field name, type, or custom schema for the Confluence Cloud audit changed value.

            * **Enables:** Interpret `audit.ConfluenceCloudAuditChangedValue.newValue` with the enclosing custom field name, declared type, and provider schema; compare only records that share that contract.
            * **Interpretation:** Confluence Cloud reports new value under the enclosing custom or typed field contract on each Confluence Cloud audit changed value; compare it only with values from the same provider key and type.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-changedvalues-oldvalue-d6b43b5fd939" title="Old Value" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `audit.changedValues.oldValue`

            **Old Value.** Previous value of the field. It must be interpreted with the enclosing provider field name, type, or custom schema for the Confluence Cloud audit changed value.

            * **Enables:** Interpret `audit.ConfluenceCloudAuditChangedValue.oldValue` with the enclosing custom field name, declared type, and provider schema; compare only records that share that contract.
            * **Interpretation:** Confluence Cloud reports old value under the enclosing custom or typed field contract on each Confluence Cloud audit changed value; compare it only with values from the same provider key and type.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-creationdate-ab1ab5612f03" title="Creation Date" icon="calendar-clock" iconType="sharp-duotone-solid">
            Developer identifier: `audit.creationDate`

            **Creation Date.** Unix epoch milliseconds when the audit entry was created. It anchors the audit on the provider's reported timeline.

            * **Enables:** Match repeated audit entries on creation date in `audit.creationDate`; collapse only entries that share this declared transform key.
            * **Interpretation:** Confluence Cloud reports creation date in milliseconds since the Unix epoch on each audit; it is not ISO-8601 and must be converted with that explicit unit. The connector explicitly marks this field as a transform deduplication key. A connector directive uses this field to order records for latest-state or incremental processing. The schema designates this field as the event timestamp.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-description-639260663a8d" title="Description" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `audit.description`

            **Description.** Detailed description of the audited action. It defines the content surface available for this audit.

            * **Enables:** Locate audit records by description in `audit.description`; attribute each text match to its parent audit and, when present, its reported author.
            * **Interpretation:** Confluence Cloud supplies description as text on each audit; referenced files or media are not implied unless explicitly represented.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-remoteaddress-d40a68173ebf" title="Remote Address" icon="ip" iconType="sharp-duotone-solid">
            Developer identifier: `audit.remoteAddress`

            **Remote Address.** Remote IP address from which the action was performed. It supplies the provider-reported address or location facet for the audit, not a residency determination.

            * **Enables:** Group Audit by the exact remote address in `audit.remoteAddress` while keeping that address or location separate from geolocation and residency claims.
            * **Interpretation:** Confluence Cloud reports remote address as an address or location facet on each audit; it does not establish verified geolocation or data residency.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-summary-c9d607475b55" title="Summary" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `audit.summary`

            **Summary.** Short human-readable summary of the audited action. It defines the content surface available for this audit.

            * **Enables:** Locate audit records by summary in `audit.summary`; attribute each text match to its parent audit and, when present, its reported author.
            * **Interpretation:** Confluence Cloud supplies summary as text on each audit; referenced files or media are not implied unless explicitly represented.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-superadmin-c66bb5336520" title="Super Admin" icon="circle-check" iconType="sharp-duotone-solid">
            Developer identifier: `audit.superAdmin`

            **Super Admin.** Whether the action was performed by a super administrator. It distinguishes the provider-defined super admin state or classification for the audit.

            * **Enables:** Filter Audit by whether the action was performed by a super administrator in `audit.superAdmin`; count true, false, and missing results separately.
            * **Interpretation:** Confluence Cloud reports the action was performed by a super administrator as a boolean on each audit; a missing field is unknown, not false.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-audit-sysadmin-5a1dff183414" title="Sys Admin" icon="circle-check" iconType="sharp-duotone-solid">
            Developer identifier: `audit.sysAdmin`

            **Sys Admin.** Whether the action was performed by a system administrator. It distinguishes the provider-defined sys admin state or classification for the audit.

            * **Enables:** Filter Audit by whether the action was performed by a system administrator in `audit.sysAdmin`; count true, false, and missing results separately.
            * **Interpretation:** Confluence Cloud reports the action was performed by a system administrator as a boolean on each audit; a missing field is unknown, not false.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-confluencecloud-page-content-84d33c624989" title="Page Content" icon="cube" iconType="sharp-duotone-solid">
        Developer identifier: `page_content`

        **Page Content.** Full page content including body.

        * **Enables:** Search the full page body representation returned by Confluence and attribute it to the page and version.
        * **Scope:** Reads the records selected by Confluence Cloud's `/wiki/api/v2/pages/{id}` operation as a snapshot stream using full synchronization. This stream is opt-in. Visibility follows the Confluence account and space permissions associated with the credential. The returned page body is included, but binary attachments and content hidden from the credential are not. A later complete read can treat a previously seen record that is absent as removed.

        <AccordionGroup>
          <Accordion id="provider-permission-field-confluencecloud-page-content-authorid-9ac0ed787555" title="Author ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.authorId`

            **Author ID.** Account ID of the page creator. It provides the reference needed to connect the page content to the corresponding provider object.

            * **Enables:** Connect each page content in Page Content to the referenced author through `page_content.authorId`; flag author ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports author ID as an identifier in its author namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-body-8f6c00c3076c" title="Body" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.body`

            **Body.** Body content of the page in the requested representation(s). It preserves the nested context needed to interpret the parent page content.

            * **Enables:** Attribute body in `page_content.body` to the parent page content; identify parent records where that nested body object is absent.
            * **Interpretation:** Confluence Cloud reports body as a nested object on each page content; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-body-atlas-doc-form-9f885a3e2d4b" title="Atlas Doc Format" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.body.atlas_doc_format`

            **Atlas Doc Format.** Page body in Atlassian Document Format (JSON-based). It preserves the nested context needed to interpret the parent page content.

            * **Enables:** Attribute atlas doc format in `page_content.PageContentBody.atlas_doc_format` to the parent page content; identify parent records where that nested atlas doc format object is absent.
            * **Interpretation:** Confluence Cloud reports atlas doc format as a nested object on each page content body; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-body-atlas-doc-form-2458adf0cefd" title="Representation" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.body.atlas_doc_format.representation`

            **Representation.** The representation type identifier (e.g., 'storage', 'atlas\_doc\_format'). It identifies the related provider object that gives the page content body representation its parent, owner, or container context.

            * **Enables:** Connect each page content body representation to the related representation in `page_content.PageContentBodyRepresentation.representation` and verify that the referenced provider object resolves in the expected parent or container.
            * **Interpretation:** Confluence Cloud reports representation as relationship context on each page content body representation; resolve it in the named provider namespace rather than by display text alone.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-body-atlas-doc-form-7c86e0561318" title="Value" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.body.atlas_doc_format.value`

            **Value.** The body content string in the given representation format. It supplies the returned value text needed to understand the page content body representation in context.

            * **Enables:** Search the returned value text in `page_content.PageContentBodyRepresentation.value` and attribute each match to its parent page content and reported author when available.
            * **Interpretation:** Confluence Cloud supplies value as returned text on each page content body representation; truncation, formatting, and access boundaries can limit completeness.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-body-storage-aabe98fc6b12" title="Storage" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.body.storage`

            **Storage.** Page body in Confluence storage format (XHTML-based). It preserves the nested context needed to interpret the parent page content.

            * **Enables:** Attribute storage in `page_content.PageContentBody.storage` to the parent page content; identify parent records where that nested storage object is absent.
            * **Interpretation:** Confluence Cloud reports storage as a nested object on each page content body; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-createdat-6db91c14da49" title="Created At" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.createdAt`

            **Created At.** Timestamp when the page was originally created (ISO 8601). It anchors the page content on the provider's reported timeline.

            * **Enables:** Order Page Content by created at in `page_content.createdAt` and isolate records inside an exact provider reporting window.
            * **Interpretation:** Confluence Cloud reports created at as a timestamp on each page content; timezone and precision follow this API field, and absence is not an inferred event time.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-id-669ab4bb2175" title="ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.id`

            **ID.** Unique identifier for the page. It provides the reference needed to connect the page content to the corresponding provider object.

            * **Enables:** Match repeated page content entries on ID in `page_content.id`; collapse only entries that share this declared transform key.
            * **Interpretation:** Confluence Cloud reports ID as an identifier in its page content namespace; it is not a universal identity outside Confluence Cloud. The connector explicitly marks this field as a transform deduplication key.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-lastownerid-fd3f219a298c" title="Last Owner ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.lastOwnerId`

            **Last Owner ID.** Account ID of the previous page owner. It provides the reference needed to connect the page content to the corresponding provider object.

            * **Enables:** Connect each page content in Page Content to the referenced last owner through `page_content.lastOwnerId`; flag last owner ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports last owner ID as an identifier in its last owner namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-ownerid-a8f2545037af" title="Owner ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.ownerId`

            **Owner ID.** Account ID of the page owner. It provides the reference needed to connect the page content to the corresponding provider object.

            * **Enables:** Connect each page content in Page Content to the referenced owner through `page_content.ownerId`; flag owner ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports owner ID as an identifier in its owner namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-page-id-106ac0f2bacc" title="Page ID" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.page_id`

            **Page ID.** Parent page reference copied into each page content because the child operation does not return that relationship. It provides the reference needed to connect the page content to the corresponding provider object.

            * **Enables:** Connect each page content in Page Content to the referenced page through `page_content.page_id`; flag page ID values that do not resolve in that provider namespace.
            * **Interpretation:** Parable copies page ID from the parent traversal record into each page content; the child Confluence Cloud operation does not return it.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-parentid-2aa54555d354" title="Parent ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.parentId`

            **Parent ID.** ID of the parent page, if any. It provides the reference needed to connect the page content to the corresponding provider object.

            * **Enables:** Connect each page content in Page Content to the referenced parent through `page_content.parentId`; flag parent ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports parent ID as an identifier in its parent namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-parenttype-fb9c449f5b0c" title="Parent Type" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.parentType`

            **Parent Type.** Type of the parent entity (page or space). It identifies the related provider object that gives the page content its parent, owner, or container context.

            * **Enables:** Segment page content entries in Page Content by parent type in `page_content.parentType`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports parent type as a label from its own taxonomy on each page content; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-position-57ca091c7718" title="Position" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.position`

            **Position.** The position of the page relative to its siblings in the page tree. It supplies the position measure for the page content at the provider's declared unit and grain.

            * **Enables:** Measure position through `page_content.position` for each page content and compare only values with the same unit and record grain.
            * **Interpretation:** Confluence Cloud reports position as a measure on each page content; compare only records with the same unit and aggregation grain.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-spaceid-ea9ff609c3f2" title="Space ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.spaceId`

            **Space ID.** ID of the space containing this page. It provides the reference needed to connect the page content to the corresponding provider object.

            * **Enables:** Connect each page content in Page Content to the referenced space through `page_content.spaceId`; flag space ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports space ID as an identifier in its space namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-status-6530e24bd8d8" title="Status" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.status`

            **Status.** Page status (current, archived, trashed, draft, deleted). It distinguishes the provider-defined status state or classification for the page content.

            * **Enables:** Segment page content entries in Page Content by status in `page_content.status`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports status as a label from its own taxonomy on each page content; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-title-8893d4483af4" title="Title" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.title`

            **Title.** Title of the page. It gives the page content a human-readable provider label while its identifier remains the stable reference.

            * **Enables:** Label each page content with title from `page_content.title`; distinguish records that share that display name but have different Confluence Cloud identifiers.
            * **Interpretation:** Confluence Cloud reports title as display text for each page content; names are mutable and are not stable identities.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-version-66b753a0ceb1" title="Version" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.version`

            **Version.** Version information for the latest revision of the page. It preserves the nested context needed to interpret the parent page content.

            * **Enables:** Attribute version in `page_content.version` to the parent page content; identify parent records where that nested version object is absent.
            * **Interpretation:** Confluence Cloud reports version as a nested object on each page content; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-version-authorid-a3d57c2c3dc6" title="Author ID" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.version.authorId`

            **Author ID.** Account ID of the user who made this version edit. It provides the reference needed to connect the page content to the corresponding provider object.

            * **Enables:** Connect each page content version in Page Content to the referenced author through `page_content.PageContentVersion.authorId`; flag author ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports author ID as an identifier in its author namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-version-createdat-c05e1285958f" title="Created At" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.version.createdAt`

            **Created At.** Timestamp when this version was created. It anchors the page content on the provider's reported timeline.

            * **Enables:** Order Page Content by created at in `page_content.PageContentVersion.createdAt` and isolate records inside an exact provider reporting window.
            * **Interpretation:** Confluence Cloud reports created at as a timestamp on each page content version; timezone and precision follow this API field, and absence is not an inferred event time. A connector directive uses this field to order records for latest-state or incremental processing.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-version-message-eb54d1e4764e" title="Message" icon="comments" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.version.message`

            **Message.** Optional message provided by the editor for this version. It supplies the returned message text needed to understand the page content version in context.

            * **Enables:** Search the returned message text in `page_content.PageContentVersion.message` and attribute each match to its parent page content and reported author when available.
            * **Interpretation:** Confluence Cloud supplies message as returned text on each page content version; truncation, formatting, and access boundaries can limit completeness.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-version-minoredit-34aa43fb4f5f" title="Minor Edit" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.version.minorEdit`

            **Minor Edit.** Whether this version was flagged as a minor edit. It distinguishes the provider-defined minor edit state or classification for the page content version.

            * **Enables:** Filter Page Content by whether this version was flagged as a minor edit in `page_content.PageContentVersion.minorEdit`; count true, false, and missing results separately.
            * **Interpretation:** Confluence Cloud reports this version was flagged as a minor edit as a boolean on each page content version; a missing field is unknown, not false.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-page-content-version-number-51bd42901923" title="Number" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `page_content.version.number`

            **Number.** Version number indicating how many times the page has been edited. It supplies the number measure for the page content version at the provider's declared unit and grain.

            * **Enables:** Measure number through `page_content.PageContentVersion.number` for each page content version and compare only values with the same unit and record grain.
            * **Interpretation:** Confluence Cloud reports number as a measure on each page content version; compare only records with the same unit and aggregation grain.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-confluencecloud-pages-acd2a65461dd" title="Pages" icon="folder-open" iconType="sharp-duotone-solid">
        Developer identifier: `pages`

        **Pages.** Confluence pages.

        * **Enables:** Inventory Confluence page metadata and connect each page to its space, parent, author, and content fetch.
        * **Scope:** Reads the records selected by Confluence Cloud's `/wiki/api/v2/pages` operation as a snapshot stream using incremental synchronization. Visibility follows the Confluence account and space permissions associated with the credential. Page list records are metadata; the separate page-content stream carries the returned body representation. This stream supplies no reliable deletion signal.

        <AccordionGroup>
          <Accordion id="provider-permission-field-confluencecloud-pages-links-dbfd16687137" title="Links" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages._links`

            **Links.** Links related to this page resource. It preserves the nested context needed to interpret the parent page.

            * **Enables:** Attribute links in `pages._links` to the parent page; identify parent records where that nested links object is absent.
            * **Interpretation:** Confluence Cloud reports links as a nested object on each page; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-links-base-61a4dcb9eeae" title="Base" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `pages._links.base`

            **Base.** Base URL of the Confluence instance. It locates the provider resource or path associated with the page link.

            * **Enables:** Associate each page link with the resource identified by base in `pages.PageLinks.base`; verify the link resolves to the expected Confluence Cloud object.
            * **Interpretation:** Confluence Cloud reports base as a resource locator for each page link; access still depends on viewer permissions and the URL may expire or change.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-links-editui-e78c5ba2e0f7" title="Editui" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `pages._links.editui`

            **Editui.** Relative URL to edit the page in the Confluence web UI. It locates the provider resource or path associated with the page link.

            * **Enables:** Resolve the page's provider resource or path through `pages.PageLinks.editui`; verify access separately and do not infer that linked content was ingested.
            * **Interpretation:** Confluence Cloud returns editui as a resource locator or path for each page link; access can expire or depend on viewer permissions, and linked content is not implied.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-links-next-d5846e75e381" title="Next" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `pages._links.next`

            **Next.** URL or relative path for the next page of results (pagination). It is needed to continue the provider result set without skipping or repeating a page.

            * **Enables:** Resume Confluence Cloud pagination from `pages.PageLinks.next` and verify that every page boundary advances before requesting the next result set.
            * **Interpretation:** Confluence Cloud returns next as opaque pagination state; it has no business meaning and must be replayed exactly when requesting the next page.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-links-self-15f5cb5bb024" title="Self" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `pages._links.self`

            **Self.** Full API URL for this page resource. It locates the provider resource or path associated with the page link.

            * **Enables:** Associate each page link with the resource identified by self in `pages.PageLinks.self`; verify the link resolves to the expected Confluence Cloud object.
            * **Interpretation:** Confluence Cloud reports self as a resource locator for each page link; access still depends on viewer permissions and the URL may expire or change.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-links-tinyui-53b2de508f10" title="Tinyui" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `pages._links.tinyui`

            **Tinyui.** Short relative URL (tiny link) for the page. It locates the provider resource or path associated with the page link.

            * **Enables:** Resolve the page's provider resource or path through `pages.PageLinks.tinyui`; verify access separately and do not infer that linked content was ingested.
            * **Interpretation:** Confluence Cloud returns tinyui as a resource locator or path for each page link; access can expire or depend on viewer permissions, and linked content is not implied.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-links-webui-c3ac6f3a7387" title="Webui" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `pages._links.webui`

            **Webui.** Relative URL to the page in the Confluence web UI. It is needed to continue the provider result set without skipping or repeating a page.

            * **Enables:** Resume Confluence Cloud pagination from `pages.PageLinks.webui` and verify that every page boundary advances before requesting the next result set.
            * **Interpretation:** Confluence Cloud returns webui as opaque pagination state; it has no business meaning and must be replayed exactly when requesting the next page.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-authorid-7c42b9885f52" title="Author ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.authorId`

            **Author ID.** Account ID of the page creator. It provides the reference needed to connect the page to the corresponding provider object.

            * **Enables:** Connect each page in Pages to the referenced author through `pages.authorId`; flag author ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports author ID as an identifier in its author namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-body-e6c0cc9066d7" title="Body" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `pages.body`

            **Body.** Body content of the page in the requested format. It preserves the nested context needed to interpret the parent page.

            * **Enables:** Attribute body in `pages.body` to the parent page; identify parent records where that nested body object is absent.
            * **Interpretation:** Confluence Cloud reports body as a nested object on each page; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-body-atlas-doc-format-2fae4abac32d" title="Atlas Doc Format" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `pages.body.atlas_doc_format`

            **Atlas Doc Format.** Page body in Atlassian Document Format (JSON-based). It preserves the nested context needed to interpret the parent page.

            * **Enables:** Attribute atlas doc format in `pages.PageBody.atlas_doc_format` to the parent page; identify parent records where that nested atlas doc format object is absent.
            * **Interpretation:** Confluence Cloud reports atlas doc format as a nested object on each page body; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-body-atlas-doc-format-repr-4f3a6091ad79" title="Representation" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `pages.body.atlas_doc_format.representation`

            **Representation.** The representation type identifier (e.g., 'storage', 'atlas\_doc\_format'). It identifies the related provider object that gives the body representation its parent, owner, or container context.

            * **Enables:** Connect each body representation to the related representation in `pages.BodyRepresentation.representation` and verify that the referenced provider object resolves in the expected parent or container.
            * **Interpretation:** Confluence Cloud reports representation as relationship context on each body representation; resolve it in the named provider namespace rather than by display text alone.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-body-atlas-doc-format-valu-4a0ae8794367" title="Value" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `pages.body.atlas_doc_format.value`

            **Value.** The body content string in the given representation format. It supplies the returned value text needed to understand the body representation in context.

            * **Enables:** Search the returned value text in `pages.BodyRepresentation.value` and attribute each match to its parent page and reported author when available.
            * **Interpretation:** Confluence Cloud supplies value as returned text on each body representation; truncation, formatting, and access boundaries can limit completeness.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-body-storage-3c1c37380b04" title="Storage" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `pages.body.storage`

            **Storage.** Page body in Confluence storage format (XHTML-based). It preserves the nested context needed to interpret the parent page.

            * **Enables:** Attribute storage in `pages.PageBody.storage` to the parent page; identify parent records where that nested storage object is absent.
            * **Interpretation:** Confluence Cloud reports storage as a nested object on each page body; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-createdat-e3de79157c56" title="Created At" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.createdAt`

            **Created At.** Timestamp when the page was originally created (ISO 8601). It anchors the page on the provider's reported timeline.

            * **Enables:** Order Pages by created at in `pages.createdAt` and isolate records inside an exact provider reporting window.
            * **Interpretation:** Confluence Cloud reports created at as a timestamp on each page; timezone and precision follow this API field, and absence is not an inferred event time.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-id-359c6c430caa" title="ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.id`

            **ID.** Unique identifier for the page. It provides the reference needed to connect the page to the corresponding provider object.

            * **Enables:** Match repeated page entries on ID in `pages.id`; collapse only entries that share this declared transform key.
            * **Interpretation:** Confluence Cloud reports ID as an identifier in its page namespace; it is not a universal identity outside Confluence Cloud. The connector explicitly marks this field as a transform deduplication key.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-lastownerid-cb7919f1ecdd" title="Last Owner ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.lastOwnerId`

            **Last Owner ID.** Account ID of the previous page owner. It provides the reference needed to connect the page to the corresponding provider object.

            * **Enables:** Connect each page in Pages to the referenced last owner through `pages.lastOwnerId`; flag last owner ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports last owner ID as an identifier in its last owner namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-ownerid-de3af9ca65ff" title="Owner ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.ownerId`

            **Owner ID.** Account ID of the page owner (may differ from author). It provides the reference needed to connect the page to the corresponding provider object.

            * **Enables:** Connect each page in Pages to the referenced owner through `pages.ownerId`; flag owner ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports owner ID as an identifier in its owner namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-parentid-dfb3487ecb59" title="Parent ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.parentId`

            **Parent ID.** ID of the parent page, if any. It provides the reference needed to connect the page to the corresponding provider object.

            * **Enables:** Connect each page in Pages to the referenced parent through `pages.parentId`; flag parent ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports parent ID as an identifier in its parent namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-parenttype-64e9156738c5" title="Parent Type" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.parentType`

            **Parent Type.** Type of the parent entity (page or space). It distinguishes the provider-defined parent type state or classification for the page.

            * **Enables:** Segment page entries in Pages by parent type in `pages.parentType`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports parent type as a label from its own taxonomy on each page; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-position-2fa83102d307" title="Position" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.position`

            **Position.** The position of the page relative to its siblings in the page tree. It supplies the position measure for the page at the provider's declared unit and grain.

            * **Enables:** Measure position through `pages.position` for each page and compare only values with the same unit and record grain.
            * **Interpretation:** Confluence Cloud reports position as a measure on each page; compare only records with the same unit and aggregation grain.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-spaceid-9daa05c11886" title="Space ID" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.spaceId`

            **Space ID.** ID of the space containing this page. It provides the reference needed to connect the page to the corresponding provider object.

            * **Enables:** Connect each page in Pages to the referenced space through `pages.spaceId`; flag space ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports space ID as an identifier in its space namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-status-cdc3c853b9c2" title="Status" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.status`

            **Status.** Page status (current, archived, trashed, draft, etc.). It distinguishes the provider-defined status state or classification for the page.

            * **Enables:** Segment page entries in Pages by status in `pages.status`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports status as a label from its own taxonomy on each page; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-title-000db681f22f" title="Title" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `pages.title`

            **Title.** Title of the page. It gives the page a human-readable provider label while its identifier remains the stable reference.

            * **Enables:** Label each page with title from `pages.title`; distinguish records that share that display name but have different Confluence Cloud identifiers.
            * **Interpretation:** Confluence Cloud reports title as display text for each page; names are mutable and are not stable identities.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-version-56d4afbb7a33" title="Version" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.version`

            **Version.** Version information for the latest revision of the page. It preserves the nested context needed to interpret the parent page.

            * **Enables:** Attribute version in `pages.version` to the parent page; identify parent records where that nested version object is absent.
            * **Interpretation:** Confluence Cloud reports version as a nested object on each page; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-version-authorid-05fad7eeb72d" title="Author ID" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `pages.version.authorId`

            **Author ID.** Account ID of the user who made this version edit. It provides the reference needed to connect the page to the corresponding provider object.

            * **Enables:** Connect each page version in Pages to the referenced author through `pages.PageVersion.authorId`; flag author ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports author ID as an identifier in its author namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-version-createdat-9156ae1b20af" title="Created At" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `pages.version.createdAt`

            **Created At.** Timestamp when this version was created (effectively the last modified date). It anchors the page on the provider's reported timeline.

            * **Enables:** Order Pages by created at in `pages.PageVersion.createdAt` and isolate records inside an exact provider reporting window.
            * **Interpretation:** Confluence Cloud reports created at as a timestamp on each page version; timezone and precision follow this API field, and absence is not an inferred event time. A connector directive uses this field to order records for latest-state or incremental processing.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-version-message-8282bee5401b" title="Message" icon="comments" iconType="sharp-duotone-solid">
            Developer identifier: `pages.version.message`

            **Message.** Optional message provided by the editor for this version. It supplies the returned message text needed to understand the page version in context.

            * **Enables:** Search the returned message text in `pages.PageVersion.message` and attribute each match to its parent page and reported author when available.
            * **Interpretation:** Confluence Cloud supplies message as returned text on each page version; truncation, formatting, and access boundaries can limit completeness.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-version-minoredit-cb25f9be51a6" title="Minor Edit" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `pages.version.minorEdit`

            **Minor Edit.** Whether this version was flagged as a minor edit. It distinguishes the provider-defined minor edit state or classification for the page version.

            * **Enables:** Filter Pages by whether this version was flagged as a minor edit in `pages.PageVersion.minorEdit`; count true, false, and missing results separately.
            * **Interpretation:** Confluence Cloud reports this version was flagged as a minor edit as a boolean on each page version; a missing field is unknown, not false.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-pages-version-number-d9dbcb6fbb67" title="Number" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `pages.version.number`

            **Number.** Version number indicating how many times the page has been edited. It supplies the number measure for the page version at the provider's declared unit and grain.

            * **Enables:** Measure number through `pages.PageVersion.number` for each page version and compare only values with the same unit and record grain.
            * **Interpretation:** Confluence Cloud reports number as a measure on each page version; compare only records with the same unit and aggregation grain.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-confluencecloud-spaces-317f3c224cc7" title="Spaces" icon="sitemap" iconType="sharp-duotone-solid">
        Developer identifier: `spaces`

        **Spaces.** Confluence spaces.

        * **Enables:** Inventory Confluence spaces by key, name, type, status, homepage, author, and creation time.
        * **Scope:** Reads the records selected by Confluence Cloud's `/wiki/api/v2/spaces` operation as a snapshot stream using full synchronization. Visibility follows the Confluence account and space permissions associated with the credential. The stream does not include records the credential, parent traversal, configured filters, or provider API omits. A later complete read can treat a previously seen record that is absent as removed.

        <AccordionGroup>
          <Accordion id="provider-permission-field-confluencecloud-spaces-links-4d378224ee3f" title="Links" icon="route" iconType="sharp-duotone-solid">
            Developer identifier: `spaces._links`

            **Links.** Links related to this space resource. It preserves the nested context needed to interpret the parent space.

            * **Enables:** Attribute links in `spaces._links` to the parent space; identify parent records where that nested links object is absent.
            * **Interpretation:** Confluence Cloud reports links as a nested object on each space; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-links-self-99a62137f42c" title="Self" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `spaces._links.self`

            **Self.** Self link URL for the space API resource. It locates the provider resource or path associated with the space link.

            * **Enables:** Associate each space link with the resource identified by self in `spaces.SpaceLinks.self`; verify the link resolves to the expected Confluence Cloud object.
            * **Interpretation:** Confluence Cloud reports self as a resource locator for each space link; access still depends on viewer permissions and the URL may expire or change.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-links-webui-9180e8e5b419" title="Webui" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `spaces._links.webui`

            **Webui.** Relative web UI path for the space. It is needed to continue the provider result set without skipping or repeating a page.

            * **Enables:** Resume Confluence Cloud pagination from `spaces.SpaceLinks.webui` and verify that every page boundary advances before requesting the next result set.
            * **Interpretation:** Confluence Cloud returns webui as opaque pagination state; it has no business meaning and must be replayed exactly when requesting the next page.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-authorid-f6be1d05c2bd" title="Author ID" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.authorId`

            **Author ID.** Account ID of the space creator. It provides the reference needed to connect the space to the corresponding provider object.

            * **Enables:** Connect each space in Spaces to the referenced author through `spaces.authorId`; flag author ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports author ID as an identifier in its author namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-createdat-e31d885a64b2" title="Created At" icon="calendar-clock" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.createdAt`

            **Created At.** ISO 8601 timestamp when the space was created. It anchors the space on the provider's reported timeline.

            * **Enables:** Order Spaces by created at in `spaces.createdAt` and isolate records inside an exact provider reporting window.
            * **Interpretation:** Confluence Cloud reports created at as a timestamp on each space; timezone and precision follow this API field, and absence is not an inferred event time.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-currentactivealias-d052e7ae0b2b" title="Current Active Alias" icon="microchip" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.currentActiveAlias`

            **Current Active Alias.** Human-readable alias currently in use for the space. For spaces created under the new space-key model this is the value users see and reference, and it can differ from key. It identifies the related provider object that gives the space its parent, owner, or container context.

            * **Enables:** Connect each space to the related current active alias in `spaces.currentActiveAlias` and verify that the referenced provider object resolves in the expected parent or container.
            * **Interpretation:** Confluence Cloud reports current active alias as relationship context on each space; resolve it in the named provider namespace rather than by display text alone.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-description-02367a514ba2" title="Description" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.description`

            **Description.** Description of the space in the requested format. It preserves the nested context needed to interpret the parent space.

            * **Enables:** Attribute description in `spaces.description` to the parent space; identify parent records where that nested description object is absent.
            * **Interpretation:** Confluence Cloud reports description as a nested object on each space; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-description-plain-09a1ad779c62" title="Plain" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.description.plain`

            **Plain.** Plain text representation of the space description. It preserves the nested context needed to interpret the parent space.

            * **Enables:** Attribute plain in `spaces.SpaceDescription.plain` to the parent space; identify parent records where that nested plain object is absent.
            * **Interpretation:** Confluence Cloud reports plain as a nested object on each space description; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-description-plain-represe-98a41ab61558" title="Representation" icon="sliders" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.description.plain.representation`

            **Representation.** The representation format (e.g., 'plain', 'view'). It must be interpreted with the enclosing provider field name, type, or custom schema for the space description body.

            * **Enables:** Interpret `spaces.SpaceDescriptionBody.representation` with the enclosing custom field name, declared type, and provider schema; compare only records that share that contract.
            * **Interpretation:** Confluence Cloud reports representation under the enclosing custom or typed field contract on each space description body; compare it only with values from the same provider key and type.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-description-plain-value-e66121e50029" title="Value" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.description.plain.value`

            **Value.** The description content in the given representation. It supplies the returned value text needed to understand the space description body in context.

            * **Enables:** Search the returned value text in `spaces.SpaceDescriptionBody.value` and attribute each match to its parent space and reported author when available.
            * **Interpretation:** Confluence Cloud supplies value as returned text on each space description body; truncation, formatting, and access boundaries can limit completeness.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-description-view-67276434d41c" title="View" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.description.view`

            **View.** View (rendered HTML) representation of the space description. It preserves the nested context needed to interpret the parent space.

            * **Enables:** Attribute view in `spaces.SpaceDescription.view` to the parent space; identify parent records where that nested view object is absent.
            * **Interpretation:** Confluence Cloud reports view as a nested object on each space description; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-homepageid-2dec370ebab6" title="Homepage ID" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.homepageId`

            **Homepage ID.** ID of the space's homepage content. It provides the reference needed to connect the space to the corresponding provider object.

            * **Enables:** Connect each space in Spaces to the referenced homepage through `spaces.homepageId`; flag homepage ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports homepage ID as an identifier in its homepage namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-icon-4ec15886651f" title="Icon" icon="cube" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.icon`

            **Icon.** Icon associated with the space. Only present when include-icon is true. It preserves the nested context needed to interpret the parent space.

            * **Enables:** Attribute icon in `spaces.icon` to the parent space; identify parent records where that nested icon object is absent.
            * **Interpretation:** Confluence Cloud reports icon as a nested object on each space; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-icon-apidownloadlink-efc78d22a347" title="API Download Link" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.icon.apiDownloadLink`

            **API Download Link.** API download link for the space icon. It locates the provider resource or path associated with the space icon.

            * **Enables:** Associate each space icon with the resource identified by API download link in `spaces.SpaceIcon.apiDownloadLink`; verify the link resolves to the expected Confluence Cloud object.
            * **Interpretation:** Confluence Cloud reports API download link as a resource locator for each space icon; access still depends on viewer permissions and the URL may expire or change.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-icon-path-7a7f941132e6" title="Path" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.icon.path`

            **Path.** Relative path to the space icon image. It locates the provider resource or path associated with the space icon.

            * **Enables:** Resolve the space's provider resource or path through `spaces.SpaceIcon.path`; verify access separately and do not infer that linked content was ingested.
            * **Interpretation:** Confluence Cloud returns path as a resource locator or path for each space icon; access can expire or depend on viewer permissions, and linked content is not implied.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-id-d0cc33a213a8" title="ID" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.id`

            **ID.** Unique identifier for the space. It provides the reference needed to connect the space to the corresponding provider object.

            * **Enables:** Match repeated space entries on ID in `spaces.id`; collapse only entries that share this declared transform key.
            * **Interpretation:** Confluence Cloud reports ID as an identifier in its space namespace; it is not a universal identity outside Confluence Cloud. The connector explicitly marks this field as a transform deduplication key.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-key-05d03f00356b" title="Key" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.key`

            **Key.** Short unique key for the space (e.g., 'ENG'). It provides the reference needed to connect the space to the corresponding provider object.

            * **Enables:** Connect each space in Spaces to the referenced space through `spaces.key`; flag key values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports key as an identifier in its space namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-name-5c4e7614d2b2" title="Name" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.name`

            **Name.** Display name of the space. It gives the space a human-readable provider label while its identifier remains the stable reference.

            * **Enables:** Label each space with name from `spaces.name`; distinguish records that share that display name but have different Confluence Cloud identifiers.
            * **Interpretation:** Confluence Cloud reports name as display text for each space; names are mutable and are not stable identities.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-status-b4cbdcd7f270" title="Status" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.status`

            **Status.** Space status (current or archived). It distinguishes the provider-defined status state or classification for the space.

            * **Enables:** Segment space entries in Spaces by status in `spaces.status`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports status as a label from its own taxonomy on each space; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-spaces-type-0d2ecc399e1f" title="Type" icon="sliders" iconType="sharp-duotone-solid">
            Developer identifier: `spaces.type`

            **Type.** Space type (global or personal). It distinguishes the provider-defined type state or classification for the space.

            * **Enables:** Segment space entries in Spaces by type in `spaces.type`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports type as a label from its own taxonomy on each space; preserve unknown labels rather than mapping them by assumption.
          </Accordion>
        </AccordionGroup>
      </Accordion>

      <Accordion id="provider-permission-tap-confluencecloud-users-1121541a7b0c" title="Users" icon="people-group" iconType="sharp-duotone-solid">
        Developer identifier: `users`

        **Users.** Confluence users.

        * **Enables:** Reconcile Confluence account identifiers and display names to account type and active status when visible to the credential.
        * **Scope:** Reads the records selected by Confluence Cloud's `/wiki/rest/api/search/user` operation as a snapshot stream using full synchronization. Visibility follows the Confluence account and space permissions associated with the credential. The stream does not include records the credential, parent traversal, configured filters, or provider API omits. A later complete read can treat a previously seen record that is absent as removed.

        <AccordionGroup>
          <Accordion id="provider-permission-field-confluencecloud-users-links-42112f11af2b" title="Links" icon="user-tie" iconType="sharp-duotone-solid">
            Developer identifier: `users._links`

            **Links.** HAL-style links related to this user resource. It preserves the nested context needed to interpret the parent user.

            * **Enables:** Attribute links in `users._links` to the parent user; identify parent records where that nested links object is absent.
            * **Interpretation:** Confluence Cloud reports links as a nested object on each user; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-links-base-9960c7af8c5a" title="Base" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `users._links.base`

            **Base.** Base URL of the Confluence instance. It locates the provider resource or path associated with the Confluence Cloud user link.

            * **Enables:** Associate each Confluence Cloud user link with the resource identified by base in `users.ConfluenceCloudUserLinks.base`; verify the link resolves to the expected Confluence Cloud object.
            * **Interpretation:** Confluence Cloud reports base as a resource locator for each Confluence Cloud user link; access still depends on viewer permissions and the URL may expire or change.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-links-next-b593e2df97eb" title="Next" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `users._links.next`

            **Next.** Relative URL for the next page of results (present only in list envelope, included here for completeness). It is needed to continue the provider result set without skipping or repeating a page.

            * **Enables:** Resume Confluence Cloud pagination from `users.ConfluenceCloudUserLinks.next` and verify that every page boundary advances before requesting the next result set.
            * **Interpretation:** Confluence Cloud returns next as opaque pagination state; it has no business meaning and must be replayed exactly when requesting the next page.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-links-self-3f323fa670f0" title="Self" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `users._links.self`

            **Self.** Full URL to the user API resource. It locates the provider resource or path associated with the Confluence Cloud user link.

            * **Enables:** Associate each Confluence Cloud user link with the resource identified by self in `users.ConfluenceCloudUserLinks.self`; verify the link resolves to the expected Confluence Cloud object.
            * **Interpretation:** Confluence Cloud reports self as a resource locator for each Confluence Cloud user link; access still depends on viewer permissions and the URL may expire or change.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-accountid-3b73393453ad" title="Account ID" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `users.accountId`

            **Account ID.** Unique Atlassian account ID for the user. Primary key for cross-referencing users across all Confluence content and Atlassian products. It provides the reference needed to connect the user to the corresponding provider object.

            * **Enables:** Match repeated user entries on account ID in `users.accountId`; collapse only entries that share this declared transform key.
            * **Interpretation:** Confluence Cloud reports account ID as an identifier in its account namespace; it is not a universal identity outside Confluence Cloud. The connector explicitly marks this field as a transform deduplication key. A connector directive maps this field to account identity.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-accounttype-c2cb451c38a5" title="Account Type" icon="people-group" iconType="sharp-duotone-solid">
            Developer identifier: `users.accountType`

            **Account Type.** Type of account. Distinguishes human users from service accounts for accurate tool adoption metrics. It distinguishes the provider-defined account type state or classification for the user.

            * **Enables:** Segment user entries in Users by account type in `users.accountType`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports account type as a label from its own taxonomy on each user; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-displayname-ba76cd1b056a" title="Display Name" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `users.displayName`

            **Display Name.** Display name shown in the UI. Fallback display name for user identification. It distinguishes the provider-defined display name state or classification for the user.

            * **Enables:** Label each user with display name from `users.displayName`; distinguish records that share that display name but have different Confluence Cloud identifiers.
            * **Interpretation:** Confluence Cloud reports display name as display text for each user; names are mutable and are not stable identities. A connector directive maps this field to a person's display name.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-email-8a9881d375fa" title="Email" icon="map-location-dot" iconType="sharp-duotone-solid">
            Developer identifier: `users.email`

            **Email.** Email address of the user. Primary cross-connector identity resolution field for matching users across SaaS tools. It supplies the provider-reported address or location facet for the user, not a residency determination.

            * **Enables:** Attribute each user to a person or account by the exact email in `users.email`; identify addresses that do not match the Confluence Cloud directory.
            * **Interpretation:** Confluence Cloud reports email as an address on each user; aliases, casing, and unverified addresses can prevent a one-to-one person match. A connector directive maps this field to a person's email identity.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-isexternalcollaborator-4e825c87b66c" title="Is External Collaborator" icon="user-tie" iconType="sharp-duotone-solid">
            Developer identifier: `users.isExternalCollaborator`

            **Is External Collaborator.** Whether the user is an external collaborator (guest) in the Confluence instance. It distinguishes the provider-defined is external collaborator state or classification for the user.

            * **Enables:** Filter Users by whether the user is an external collaborator (guest) in the confluence instance in `users.isExternalCollaborator`; count true, false, and missing results separately.
            * **Interpretation:** Confluence Cloud reports the user is an external collaborator (guest) in the confluence instance as a boolean on each user; a missing field is unknown, not false.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-operations-4224d4f54904" title="Operations" icon="user-tie" iconType="sharp-duotone-solid">
            Developer identifier: `users.operations`

            **Operations.** List of permitted operations for this user in the current context. It preserves the nested context needed to interpret the parent user.

            * **Enables:** Compare the exact Confluence Cloud-configured operations set in `users.operations` for each user; preserve provider labels and unknown entries.
            * **Interpretation:** Confluence Cloud returns operations as an array of Confluence Cloud operation entries on each user; missing, empty, and permission-redacted arrays are not equivalent.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-operations-operation-0b1685931dee" title="Operation" icon="sliders" iconType="sharp-duotone-solid">
            Developer identifier: `users.operations.operation`

            **Operation.** The operation type, e.g. 'use', 'create', 'read', 'update', 'delete', 'administer'. It distinguishes the provider-defined operation state or classification for the Confluence Cloud operation.

            * **Enables:** Filter Users by the exact Confluence Cloud-defined operation in `users.ConfluenceCloudOperation.operation` and preserve unknown values as distinct categories.
            * **Interpretation:** Confluence Cloud supplies operation from its own taxonomy on each Confluence Cloud operation; preserve unknown and newly introduced labels.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-operations-targettype-8dd9ab4e2eef" title="Target Type" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `users.operations.targetType`

            **Target Type.** The target entity type the operation applies to, e.g. 'page', 'blogpost', 'space', 'application'. It identifies the related provider object that gives the Confluence Cloud operation its parent, owner, or container context.

            * **Enables:** Segment Confluence Cloud operation entries in Users by target type in `users.ConfluenceCloudOperation.targetType`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports target type as a label from its own taxonomy on each Confluence Cloud operation; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-35dad187a290" title="Personal Space" icon="user-tie" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace`

            **Personal Space.** Reference to the user's personal space, if one exists. It preserves the nested context needed to interpret the parent user.

            * **Enables:** Attribute personal space in `users.personalSpace` to the parent user; identify parent records where that nested personal space object is absent.
            * **Interpretation:** Confluence Cloud reports personal space as a nested object on each user; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-links-fa0c33072f2a" title="Links" icon="route" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace._links`

            **Links.** Links related to this space. It preserves the nested context needed to interpret the parent user.

            * **Enables:** Attribute links in `users.ConfluenceCloudPersonalSpace._links` to the parent user; identify parent records where that nested links object is absent.
            * **Interpretation:** Confluence Cloud reports links as a nested object on each Confluence Cloud personal space; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-links-self-d0e5e78b852d" title="Self" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace._links.self`

            **Self.** Full URL to the space API resource. It locates the provider resource or path associated with the Confluence Cloud space link.

            * **Enables:** Associate each Confluence Cloud space link with the resource identified by self in `users.ConfluenceCloudSpaceLinks.self`; verify the link resolves to the expected Confluence Cloud object.
            * **Interpretation:** Confluence Cloud reports self as a resource locator for each Confluence Cloud space link; access still depends on viewer permissions and the URL may expire or change.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-links-webui-1c51f7fa6375" title="Webui" icon="globe" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace._links.webui`

            **Webui.** Relative URL to the space in the Confluence web UI. It is needed to continue the provider result set without skipping or repeating a page.

            * **Enables:** Resume Confluence Cloud pagination from `users.ConfluenceCloudSpaceLinks.webui` and verify that every page boundary advances before requesting the next result set.
            * **Interpretation:** Confluence Cloud returns webui as opaque pagination state; it has no business meaning and must be replayed exactly when requesting the next page.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-id-9dda604189a9" title="ID" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace.id`

            **ID.** Numeric ID of the personal space. It provides the reference needed to connect the user to the corresponding provider object.

            * **Enables:** Connect each Confluence Cloud personal space in Users to the referenced Confluence Cloud personal space through `users.ConfluenceCloudPersonalSpace.id`; flag ID values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports ID as an identifier in its Confluence Cloud personal space namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-key-cfce33ac2ee9" title="Key" icon="badge-check" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace.key`

            **Key.** The space key, typically prefixed with \~ for personal spaces. It provides the reference needed to connect the user to the corresponding provider object.

            * **Enables:** Connect each Confluence Cloud personal space in Users to the referenced Confluence Cloud personal space through `users.ConfluenceCloudPersonalSpace.key`; flag key values that do not resolve in that provider namespace.
            * **Interpretation:** Confluence Cloud reports key as an identifier in its Confluence Cloud personal space namespace; it is not a universal identity outside Confluence Cloud.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-name-2834382fa4f9" title="Name" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace.name`

            **Name.** Display name of the personal space. It gives the Confluence Cloud personal space a human-readable provider label while its identifier remains the stable reference.

            * **Enables:** Label each Confluence Cloud personal space with name from `users.ConfluenceCloudPersonalSpace.name`; distinguish records that share that display name but have different Confluence Cloud identifiers.
            * **Interpretation:** Confluence Cloud reports name as display text for each Confluence Cloud personal space; names are mutable and are not stable identities.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-status-36780ea39aa8" title="Status" icon="clock-rotate-left" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace.status`

            **Status.** Current status of the space, e.g. 'current' or 'archived'. It identifies the related provider object that gives the Confluence Cloud personal space its parent, owner, or container context.

            * **Enables:** Segment Confluence Cloud personal space entries in Users by status in `users.ConfluenceCloudPersonalSpace.status`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports status as a label from its own taxonomy on each Confluence Cloud personal space; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-personalspace-type-0c03635594df" title="Type" icon="sliders" iconType="sharp-duotone-solid">
            Developer identifier: `users.personalSpace.type`

            **Type.** Type of space, e.g. 'personal' or 'global'. It identifies the related provider object that gives the Confluence Cloud personal space its parent, owner, or container context.

            * **Enables:** Segment Confluence Cloud personal space entries in Users by type in `users.ConfluenceCloudPersonalSpace.type`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports type as a label from its own taxonomy on each Confluence Cloud personal space; preserve unknown labels rather than mapping them by assumption.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-profilepicture-254fa87b7c61" title="Profile Picture" icon="user-tie" iconType="sharp-duotone-solid">
            Developer identifier: `users.profilePicture`

            **Profile Picture.** Profile picture metadata for the user. It preserves the nested context needed to interpret the parent user.

            * **Enables:** Attribute profile picture in `users.profilePicture` to the parent user; identify parent records where that nested profile picture object is absent.
            * **Interpretation:** Confluence Cloud reports profile picture as a nested object on each user; optional children may be absent from a valid response.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-profilepicture-height-a72b97e8a7ba" title="Height" icon="calculator" iconType="sharp-duotone-solid">
            Developer identifier: `users.profilePicture.height`

            **Height.** Height of the profile picture in pixels. It supplies the height measure for the Confluence Cloud profile picture at the provider's declared unit and grain.

            * **Enables:** Measure height through `users.ConfluenceCloudProfilePicture.height` for each Confluence Cloud profile picture and compare only values with the same unit and record grain.
            * **Interpretation:** Confluence Cloud reports height as a measure on each Confluence Cloud profile picture; compare only records with the same unit and aggregation grain.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-profilepicture-isdefault-4dbc659d2a2f" title="Is Default" icon="user-tie" iconType="sharp-duotone-solid">
            Developer identifier: `users.profilePicture.isDefault`

            **Is Default.** Whether this is the default/generated avatar rather than a user-uploaded image. It distinguishes the provider-defined is default state or classification for the Confluence Cloud profile picture.

            * **Enables:** Filter Users by whether this is the default/generated avatar rather than a user-uploaded image in `users.ConfluenceCloudProfilePicture.isDefault`; count true, false, and missing results separately.
            * **Interpretation:** Confluence Cloud reports this is the default/generated avatar rather than a user-uploaded image as a boolean on each Confluence Cloud profile picture; a missing field is unknown, not false.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-profilepicture-path-ccc75b46b03a" title="Path" icon="folder-open" iconType="sharp-duotone-solid">
            Developer identifier: `users.profilePicture.path`

            **Path.** Relative path to the profile picture resource. It locates the provider resource or path associated with the Confluence Cloud profile picture.

            * **Enables:** Resolve the user's provider resource or path through `users.ConfluenceCloudProfilePicture.path`; verify access separately and do not infer that linked content was ingested.
            * **Interpretation:** Confluence Cloud returns path as a resource locator or path for each Confluence Cloud profile picture; access can expire or depend on viewer permissions, and linked content is not implied.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-profilepicture-width-a80e6307fbca" title="Width" icon="calculator" iconType="sharp-duotone-solid">
            Developer identifier: `users.profilePicture.width`

            **Width.** Width of the profile picture in pixels. It supplies the width measure for the Confluence Cloud profile picture at the provider's declared unit and grain.

            * **Enables:** Measure width through `users.ConfluenceCloudProfilePicture.width` for each Confluence Cloud profile picture and compare only values with the same unit and record grain.
            * **Interpretation:** Confluence Cloud reports width as a measure on each Confluence Cloud profile picture; compare only records with the same unit and aggregation grain.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-publicname-bff3595b6b0d" title="Public Name" icon="comment" iconType="sharp-duotone-solid">
            Developer identifier: `users.publicName`

            **Public Name.** Display name of the user. Human-readable identifier for org overview reporting. It identifies the related provider object that gives the user its parent, owner, or container context.

            * **Enables:** Label each user with public name from `users.publicName`; distinguish records that share that display name but have different Confluence Cloud identifiers.
            * **Interpretation:** Confluence Cloud reports public name as display text for each user; names are mutable and are not stable identities.
          </Accordion>

          <Accordion id="provider-permission-field-confluencecloud-users-type-619f198c65da" title="Type" icon="id-card" iconType="sharp-duotone-solid">
            Developer identifier: `users.type`

            **Type.** The object type identifier, typically 'known' for recognized users. It identifies the related provider object that gives the user its parent, owner, or container context.

            * **Enables:** Segment user entries in Users by type in `users.type`; compare counts only within the same Confluence Cloud taxonomy.
            * **Interpretation:** Confluence Cloud reports type as a label from its own taxonomy on each user; preserve unknown labels rather than mapping them by assumption.
          </Accordion>
        </AccordionGroup>
      </Accordion>
    </AccordionGroup>
  </Tab>

  <Tab title="Troubleshooting">
    | Error                             | Meaning                                        | Solution                                                   |
    | --------------------------------- | ---------------------------------------------- | ---------------------------------------------------------- |
    | **401 Unauthorized** (API token)  | Invalid credentials                            | Check email and API token                                  |
    | **401 on token exchange** (OAuth) | Invalid client ID/secret or missing `audience` | Recreate credentials; include `audience=api.atlassian.com` |
    | **403 Forbidden**                 | Missing scope or Confluence permission         | Check scopes and service account access                    |
    | **Empty space list**              | Wrong Cloud ID or no browse access             | Verify Cloud ID; grant Confluence access                   |
  </Tab>
</Tabs>
