-
-
Notifications
You must be signed in to change notification settings - Fork 371
Open
Labels
Description
Python3.12
Minimal reproducible code on version>=2.5.10:
import os
from office365.graph_client import GraphClient
client_id = os.getenv('M365_ID')
client_secret = os.getenv('M365_SECRET')
client_tenant = os.getenv('M365_TENANT')
client = GraphClient.with_client_secret(client_tenant, client_id, client_secret)
folder_item = client.shares.by_url(
"https://<REDACTED>.sharepoint.com/sites/Path/to/folder/Folder name"
).drive_item.get().execute_query()
print(folder_item.is_folder)
with open("./test-upload.txt", "rb") as f:
file = folder_item.upload_file(f).execute_query()
print("File Uploaded")On 2.6.x
import os
from office365.graph_client import GraphClient
client_id = os.getenv('M365_ID')
client_secret = os.getenv('M365_SECRET')
client_tenant = os.getenv('M365_TENANT')
client = GraphClient(tenant=client_tenant).with_client_secret(client_id, client_secret)
folder_item = client.shares.by_url(
"https://<REDACTED>.sharepoint.com/sites/Path/to/folder/Folder name"
).drive_item.get().execute_query()
print(folder_item.is_folder)
with open("./test-upload.txt", "rb") as f:
file = folder_item.upload_file(f).execute_query()
print("File Uploaded")Both result in the following error:
version>=2.5.10
Traceback (most recent call last):
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_request.py", line 37, in execute_query
response = self.execute_request_direct(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_request.py", line 101, in execute_request_direct
response.raise_for_status()
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/requests/models.py", line 1026, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: https://graph.microsoft.com/v1.0/shares/<redacted>/<redacted>:/test-upload.txt://content
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/user/m365_testings/test-sharepoint-download.py", line 15, in <module>
file = folder_item.upload_file(f).execute_query()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_object.py", line 54, in execute_query
self.context.execute_query()
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_runtime_context.py", line 173, in execute_query
self.pending_request().execute_query(qry)
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_request.py", line 41, in execute_query
raise ClientRequestException(*e.args, response=e.response)
office365.runtime.client_request_exception.ClientRequestException: ('BadRequest', "Resource not found for the segment '<redacted>:'.", '400 Client Error: Bad Request for url: https://graph.microsoft.com/v1.0/shares/<redacted>/<redacted>:/test-upload.txt://content')
2.6.x
Traceback (most recent call last):
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_request.py", line 37, in execute_query
response = self.execute_request_direct(request)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_request.py", line 101, in execute_request_direct
response.raise_for_status()
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/requests/models.py", line 1026, in raise_for_status
raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: https://graph.microsoft.com/v1.0/shares/<redacted>/driveItem:/test-upload.txt://content
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/user/m365_testings/test-sharepoint-download.py", line 15, in <module>
file = folder_item.upload_file(f).execute_query()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_object.py", line 55, in execute_query
self.context.execute_query()
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_runtime_context.py", line 173, in execute_query
self.pending_request().execute_query(qry)
File "/home/user/m365_testings/.venv/lib/python3.12/site-packages/office365/runtime/client_request.py", line 41, in execute_query
raise ClientRequestException(*e.args, response=e.response)
office365.runtime.client_request_exception.ClientRequestException: ('BadRequest', "Resource not found for the segment 'driveItem:'.", '400 Client Error: Bad Request for url: https://graph.microsoft.com/v1.0/shares/<redacted>/driveItem:/test-upload.txt://content')
I am assuming this might be possibly related to the fix for: #866 which was included in 2.5.10.