The `llama-index-readers-confluence` library provides a data loader for ingesting content from Confluence Cloud instances into LlamaIndex. It supports various authentication methods, including OAuth 2.0, API tokens, and basic authentication, and can retrieve pages by ID, space key, label, or Confluence Query Language (CQL). It also offers functionality to include and parse attachments from Confluence pages. This integration is part of the broader LlamaIndex ecosystem, known for its rapid development and frequent updates. The current version is 0.7.0 and requires Python versions >=3.10 and <4.0.
pip install llama-index-readers-confluenceVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to initialize the `ConfluenceReader` and load documents from a specified Confluence space using basic authentication with an API token. Environment variables are used for sensitive credentials.
Ensure `base_url` explicitly includes the `/wiki` suffix.
Replace `limit` with `max_num_results` in your `load_data` calls.
Generate an API token from your Atlassian profile and use it for `CONFLUENCE_API_TOKEN` or `CONFLUENCE_PASSWORD`.
Ensure `llama-index-readers-confluence` is explicitly installed. The import path `from llama_index.readers.confluence import ConfluenceReader` remains correct.
For unsupported attachment types, consider implementing `custom_parsers` or preprocessing attachments before ingestion.
Double-check `base_url` (must end with `/wiki`), ensure `api_token` or `user_name`/`password` are correct. Verify that the user associated with the credentials has the required read permissions for the Confluence instance and the specific space/pages you are trying to access.
For OAuth 2.0, ensure you have correctly configured an OAuth 2.0 app in the Atlassian Developer Console to obtain a `client_id` and the necessary `access_token`/`token_type`. If your company's Confluence does not provide this option, consider using an API token (if Confluence Cloud) or basic authentication with username/password (if Confluence Server) as alternative methods. The `client_id` is *not* your email address for OAuth2.
Consider adding the page title (or relevant metadata) directly into the `Document` text during loading. You can also explore advanced retrieval techniques like `MetadataFilters` or `BM25` search alongside vector search, or use a `DocumentSummaryIndex` with a retriever focused on summaries.