diff --git a/collector/utils/extensions/Confluence/index.js b/collector/utils/extensions/Confluence/index.js index e0699222a99..4d17d56befe 100644 --- a/collector/utils/extensions/Confluence/index.js +++ b/collector/utils/extensions/Confluence/index.js @@ -19,18 +19,19 @@ async function loadConfluence( username = null, accessToken = null, cloud = true, + personalAccessToken = null, }, response ) { - if (!baseUrl || !spaceKey || !username || !accessToken) { + if (!personalAccessToken && (!username || !accessToken)) { return { success: false, reason: - "You need either a username and access token, or a personal access token (PAT), to use the Confluence connector.", + "You need either a personal access token (PAT), or a username and access token to use the Confluence connector.", }; } - if (!validBaseUrl(baseUrl)) { + if (!baseUrl || !validBaseUrl(baseUrl)) { return { success: false, reason: "Provided base URL is not a valid URL.", @@ -52,6 +53,7 @@ async function loadConfluence( username, accessToken, cloud, + personalAccessToken, }); const { docs, error } = await loader diff --git a/frontend/src/components/Modals/ManageWorkspace/DataConnectors/Connectors/Confluence/index.jsx b/frontend/src/components/Modals/ManageWorkspace/DataConnectors/Connectors/Confluence/index.jsx index 6204442012b..5f63812c869 100644 --- a/frontend/src/components/Modals/ManageWorkspace/DataConnectors/Connectors/Confluence/index.jsx +++ b/frontend/src/components/Modals/ManageWorkspace/DataConnectors/Connectors/Confluence/index.jsx @@ -6,6 +6,7 @@ import { Tooltip } from "react-tooltip"; export default function ConfluenceOptions() { const [loading, setLoading] = useState(false); + const [accessType, setAccessType] = useState("username"); const handleSubmit = async (e) => { e.preventDefault(); @@ -27,6 +28,7 @@ export default function ConfluenceOptions() { username: form.get("username"), accessToken: form.get("accessToken"), cloud: form.get("isCloud") === "true", + personalAccessToken: form.get("personalAccessToken"), }); if (!!error) { @@ -122,70 +124,129 @@ export default function ConfluenceOptions() {

- Your Confluence username. + Your Confluence authentication type, eg: username and access + token / personal access token.

- +
-
-
-
+ )}
diff --git a/frontend/src/models/dataConnector.js b/frontend/src/models/dataConnector.js index 30c17fb12ce..b35b5ff90a9 100644 --- a/frontend/src/models/dataConnector.js +++ b/frontend/src/models/dataConnector.js @@ -137,6 +137,7 @@ const DataConnector = { username, accessToken, cloud, + personalAccessToken, }) { return await fetch(`${API_BASE}/ext/confluence`, { method: "POST", @@ -147,6 +148,7 @@ const DataConnector = { username, accessToken, cloud, + personalAccessToken, }), }) .then((res) => res.json())