From c44955845aaba85b4c9130b8e4e4cbce44939db2 Mon Sep 17 00:00:00 2001 From: Eric Hare Date: Fri, 19 Sep 2025 12:58:52 -0700 Subject: [PATCH] Fix onedrive and sharepoint ingest --- src/connectors/onedrive/connector.py | 11 ++++++++++- src/connectors/sharepoint/connector.py | 11 ++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/connectors/onedrive/connector.py b/src/connectors/onedrive/connector.py index 0664e874..9a7b6760 100644 --- a/src/connectors/onedrive/connector.py +++ b/src/connectors/onedrive/connector.py @@ -131,9 +131,18 @@ class OneDriveConnector(BaseConnector): content_resp = await client.get( f"{self.base_url}/me/drive/items/{file_id}/content", headers=headers ) - content_resp.raise_for_status() content = content_resp.content + # Handle the possibility of this being a redirect + if content_resp.status_code in (301, 302, 303, 307, 308): + redirect_url = content_resp.headers.get("Location") + if redirect_url: + content_resp = await client.get(redirect_url) + content_resp.raise_for_status() + content = content_resp.content + else: + content_resp.raise_for_status() + perm_resp = await client.get( f"{self.base_url}/me/drive/items/{file_id}/permissions", headers=headers ) diff --git a/src/connectors/sharepoint/connector.py b/src/connectors/sharepoint/connector.py index 8282f891..c31b9acd 100644 --- a/src/connectors/sharepoint/connector.py +++ b/src/connectors/sharepoint/connector.py @@ -136,9 +136,18 @@ class SharePointConnector(BaseConnector): f"{self.base_url}/sites/{self.site_id}/drive/items/{file_id}/content", headers=headers, ) - content_resp.raise_for_status() content = content_resp.content + # Handle the possibility of this being a redirect + if content_resp.status_code in (301, 302, 303, 307, 308): + redirect_url = content_resp.headers.get("Location") + if redirect_url: + content_resp = await client.get(redirect_url) + content_resp.raise_for_status() + content = content_resp.content + else: + content_resp.raise_for_status() + perm_resp = await client.get( f"{self.base_url}/sites/{self.site_id}/drive/items/{file_id}/permissions", headers=headers,