Can somebody help me what’s wrong with my below code? I am getting error:
PS C:\Script\UploadToBox> python UploadtoBox2.py
Traceback (most recent call last):
File "C:\Script\UploadToBox\UploadtoBox2.py", line 36, in <module>
main()
File "C:\Script\UploadToBox\UploadtoBox2.py", line 31, in main
folder = client.folders.get_folder_by_id(folder_id)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\managers\folders.py", line 425, in get_folder_by_id
response: FetchResponse = self.network_session.network_client.fetch(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\networking\box_network_client.py", line 85, in fetch
request: APIRequest = self._prepare_request(
^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\networking\box_network_client.py", line 148, in _prepare_request
headers = self._prepare_headers(options, reauthenticate)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\networking\box_network_client.py", line 195, in _prepare_headers
headers['Authorization'] = options.auth.retrieve_authorization_header(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\box\jwt_auth.py", line 355, in retrieve_authorization_header
token: AccessToken = self.retrieve_token(network_session=network_session)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\box\jwt_auth.py", line 348, in retrieve_token
new_token: AccessToken = self.refresh_token(network_session=network_session)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\box\jwt_auth.py", line 329, in refresh_token
token: AccessToken = auth_manager.request_access_token(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\managers\authorization.py", line 327, in request_access_token
response: FetchResponse = self.network_session.network_client.fetch(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\networking\box_network_client.py", line 141, in fetch
self._raise_on_unsuccessful_request(
File "C:\Users\sajkumar\AppData\Roaming\Python\Python312\site-packages\box_sdk_gen\networking\box_network_client.py", line 254, in _raise_on_unsuccessful_request
raise BoxSDKError(
box_sdk_gen.box.errors.BoxSDKError:
Timestamp: 2025-11-05 08:46:27.370256
Underlying error: HTTPSConnectionPool(host='api.box.com', port=443): Max retries exceeded with url: /oauth2/token (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)')))
Message: HTTPSConnectionPool(host='api.box.com', port=443): Max retries exceeded with url: /oauth2/token (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1000)')))
PS C:\Script\UploadToBox>
import os
import json
from box_sdk_gen import BoxClient, BoxJWTAuth, JWTConfig
def main():
# Load config from JSON file
config_path = "../Config/BoxUploadConfig.json" # Update path if needed
with open(config_path, "r") as f:
config = json.load(f)
settings = config["boxAppSettings"]
app_auth = settings["appAuth"]
jwt_config = JWTConfig(
client_id=settings["clientID"],
client_secret=settings["clientSecret"],
jwt_key_id=app_auth["publicKeyID"],
private_key=app_auth["privateKey"],
private_key_passphrase=app_auth["passphrase"],
enterprise_id=config["enterpriseID"]
)
auth = BoxJWTAuth(config=jwt_config)
client = BoxClient(auth=auth)
# Upload a file to a Box folder
file_path = "path/to/your/file.txt" # Change to your actual file path
folder_id = " [removed by moderator] " # Actual folder ID from your config
file_name = os.path.basename(file_path)
folder = client.folders.get_folder_by_id(folder_id)
uploaded_file = folder.upload(file_path, file_name=file_name)
print(f"Uploaded '{file_name}' to folder '{folder_id}'")
if __name__ == "__main__":
main()
