ConfluenceLoader.Client (confluence_loader v0.1.2)
View SourceHTTP client for interacting with the Confluence REST API.
This module handles authentication and request formatting for the Confluence API. It supports both cloud and server instances of Confluence.
Configuration
The client requires:
base_url
: Your Confluence instance URL (e.g., "https://example.atlassian.net")username
: Your email address (for cloud) or username (for server)api_token
: Your API token (for cloud) or password (for server)
Options
:api_base_path
- The base path for the API (default: "/wiki/api/v2"):timeout
- Request timeout in milliseconds (default: 30_000):recv_timeout
- Receive timeout in milliseconds (default: 30_000)
Examples
# For Confluence Cloud
client = ConfluenceLoader.Client.new("https://example.atlassian.net", "user@example.com", "api_token")
%ConfluenceLoader.Client{...}
# For Confluence Server with custom API path
client = ConfluenceLoader.Client.new("https://example.atlassian.net", "user@example.com", "api_token", api_base_path: "/api/v2")
%ConfluenceLoader.Client{...}
Summary
Types
@type t() :: %ConfluenceLoader.Client{ api_base_path: String.t(), api_token: String.t(), base_url: String.t(), timeout: non_neg_integer(), username: String.t() }
Functions
Makes a GET request to the Confluence API.
Creates a new Confluence client.
Parameters
- base_url: The base URL of your Confluence instance (e.g., "https://your-domain.atlassian.net")
- username: Your Atlassian username (email)
- api_token: Your Atlassian API token
- opts: Optional keyword list with:
- timeout: Request timeout in milliseconds (default: 30000)
- api_base_path: Custom API base path (default: "/wiki/api/v2")
Examples
iex> client = ConfluenceLoader.Client.new("https://example.atlassian.net", "user@example.com", "api_token")
%ConfluenceLoader.Client{...}
# For Confluence Cloud with different API path
iex> client = ConfluenceLoader.Client.new("https://example.atlassian.net", "user@example.com", "api_token", api_base_path: "/api/v2")
%ConfluenceLoader.Client{...}