-
Recently active
I am using Box-Node-SDK to fetch details of a file in my drive. As you can see in the below screenshot, I created the file and modified it multiple times. We can clearly see that I am the owner of the file., in the file details. But, when I fetch the File-Info using Node-Box-SDK. The “Permissions” object in the response shows “can_upload” as “false”. I have created a Custom-Application to use Auth2.0. Added a Web-Integration, I used the auth-code Received from web-integration to Initialise BoxClient and Fetch FileDetails. Am I missing something obvious here? Why is “can_upload” show “false”, When I have access to the file, and uploaded a new version multiple times? Thanks, Sarin
Hi Team, I got stuck when I tried to run the script from the repository Mini Box MediaInfo Video Metadata Uploader on GitHub. I followed the README instructions step by step, and I also check the Video on YouTube. When I ran the following command: python3 src/main.py -c I got the following error: ImportError: cannot import name ‘appengine’ from ‘urllib3.contrib’ Can anyone help me understand why I got this? Thanks.
Hi, What is the use of using the SDK when we already have API. We can directly use those API. I am trying to do chunk file upload. For that it initially creates a session and then uploads parts of a file (https://upload.box.com/api/2.0/files/upload_sessions/:upload_session_id) this the API to upload parts of a file. I checked in SDK how they uploading the parts of a file, in that they have handled all the file splitting and every required. But when I tried the https://upload.box.com/api/2.0/files/upload_sessions/:upload_session_id API in postman, I am not able to upload file. My question if SDK are handling these splitting functionalities, Does API also handle all the scenarios? What is the benefit of using SDK if we already have API?
If I have my own logger+handler and not using BasicConfig… so like this… chandler = logging.StreamHandler() chandler.setFormatter(logging.Formatter('[%(levelname)s] %(asctime)s %(message)s')) logger = logging.getLogger("my_custom_logs") logger.setLevel(logging.DEBUG) logger.addHandler(chandler) I’m getting weirdness with client.uploads.upload_file_version where it hangs for 10mins, then the created version is blank. It’s not throwing any Exceptions and nothing lands in my logger What’s the correct way to get debug logs from the BoxClient?
Hi ! I’m using java1.8 version and trying to get the Token using Java SDK , but we got the below exception. Exception in thread “main” com.box.sdk.BoxAPIException: Error parsing PKCS private key for Box Developer Edition. at com.box.sdk.BoxDeveloperEditionAPIConnection.decryptPrivateKey(BoxDeveloperEditionAPIConnection.java:568)* at com.box.sdk.BoxDeveloperEditionAPIConnection.constructJWTAssertion(BoxDeveloperEditionAPIConnection.java:503)* at com.box.sdk.BoxDeveloperEditionAPIConnection.authenticate(BoxDeveloperEditionAPIConnection.java:327)* at com.box.sdk.BoxDeveloperEditionAPIConnection.getAppEnterpriseConnection(BoxDeveloperEditionAPIConnection.java:182)* at com.box.sdk.BoxDeveloperEditionAPIConnection.getAppEnterpriseConnection(BoxDeveloperEditionAPIConnection.java:216)* at com.arondor.flower.tools.box.util.BoxAPI.setAPI(BoxAPI.java:54)* at com.arondor.flower.tools.box.util.BoxAPI.getAPI(BoxAPI.java:33)* at com.arondor.flower.tools.box.service.ServiceFolder.createBaseFolder(Ser
Hi @rbarbosa, I am also trying to fetch files and folders in content explorer, using metadata query in node/react. I am facing 2 issues: getting back all files and folders for a sponsorCode metadata as a response. But only files are getting displayed in content explorer. Folders are not getting displayed. I have 3 folders with different values for sponsorCode metadata(Folder 1- TESTF metadata, Folder 2- TESTR metadata, Folder 3- TESTM metadata. I am only able to fetch files/folders for TESTR metadata. Other searches are resulting in no data in response. I have waited for more than 48 hours after applying metadata. Can you pls help solve this?
Hello! Just wondering if anyone else has been getting a lot of 104 Connection reset errors being sent from the Python BoxSDK client. We have an API set up to receive webhook events from Box but will receive 104 connection events randomly that seem to cause an error executing the webhook endpoint. Most of the time it executes fine but when there is an error I noticed the 104 connection reset state will persist for a bit blocking the endpoint from executing properly. Wondering if there is a way to limit the amount of resets the boxclient will do to prevent blocking from what Im assuming is the retry logic.
I have created a box custom-app, with web integration and configured it as per the documentation. I can see my integrations in the context menu of files/folders and it is working as expected. However, the integration is not visible to other users. attached are the screenshots of my custom application and web-integration configurations. I can see the application with status as enabled., in “My Apps” in developer console. I have added another developer as a collaborator. He still can’t see the web-integrations. Web Integration configurations Integration status is set to Online (Visible for all users) In the Admin console., I have added the application using “ClientID” and it shows as enabled in the “User Authenticated Apps” list. But, still not available for any other users. In Box Cloud, When I try to search for Apps and My Apps, I can the application listed. But for other users, this is not available. This issue blocks my development and testing of box integration.
Hi I am trying to fetch files and folders in content explorer, using metadata query in node. I am facing below issues: Getting back all files and folders for a sponsorCode metadata as a response. But only files are getting displayed in content explorer. Folders are not getting displayed. Also the response is flattened and not structured as folder / subfolders /files. I have done implementation as below : Search for Folder using Metadata Query - Box Platform / API - Box Developer Community Can you pls help solve this?
We are migrating large data from One account to another account after impersonation. But we are getting below error: “PUT https://api.box.com/2.0/folders/168610592762” 503 191 {‘Date’: ‘Wed, 01 May 2024 07:27:04 GMT’, ‘Transfer-Encoding’: ‘chunked’, ‘strict-transport-security’: ‘max-age=31536000’, ‘box-request-id’: ‘0af1d3bebe91c1803d1d3929c585bd86c’, ‘x-envoy-upstream-service-time’: ‘600024’, ‘Via’: ‘1.1 google’, ‘Alt-Svc’: ‘h3=“:443”; ma=2592000,h3-29=“:443”; ma=2592000’} {‘code’: ‘—able’, ‘help_url’: ‘http://developers.box.com/docs/#errors’, ‘message’: ‘Service Unavailable’, ‘request_id’: ‘0af1d3bebe91c1803d1d3929c585bd86c’, ‘status’: 503, ‘type’: ‘error’} I am using below API for migration of folder: folder_to_move = source_client.folder(folder_id) destination_folder = target_client.folder(destination_folder_id) moved_folder = folder_to_move.move(parent_folder=destination_folder) why we are getting above issue. Will it be possible that it can migrate the large dataset even after ge
We are building an Integration in the box cloud: 1. Application Type: Custom App 2. Authentication Type: OAuth 2.0 3. Context Menu items are added using “Web Integration” The Web Integration (Context Menu) Configuration is: Supports all file extensions Integration Type is “Files” We are using BOX-NODE-SDK, to get the file details from the received fileId. On click of the web-integration, we received the authCode and fileIdin the API., Using the AuthCode, we successfully fetched the AccessToken. const sdk = new BoxSDK({ clientID: BOX_INTEGRATION_CLIENT_ID, clientSecret: BOX_INTEGRATION_CLIENT_SECRET, }); sdk.getTokensAuthorizationCodeGrant(authCode, null, function (err, tokenInfo) { const boxClient = sdk.getPersistentClient(tokenInfo); boxClient.files.get(fileId).then((file: any) => { logger.info(file); }) } The above code sample returns the file details, but the path-collection is missing in the response. Under the path-collection object, the entri
Hi there- This is regarding the box ui library on Github and the below issue. github.com/box/box-ui-elements Support for React 18 opened 09:04AM - 08 Aug 23 UTC yaelsch We recently upgraded to react 18 and noticed that the drag and drop functionalit…y of the content uploaded is effected. If you drop two files to the drop zone, only one appears in the list. I downgraded to react 17 and made sure that indeed the cause to the bug is react 18. I noticed in your documentation that you currently don't support react 18, do you have plans to upgrade soon? Or alternatively, is there a way to workaround this issue? Is this library actively maintained and are there plans to update this package for compatibility with React 18? We have an internal tool that we would like to integrate with Box, however, it
Trying to build an Integration in box cloud: Application Type: Custom App Authentication Type: OAuth 2.0 Context Menu items are added using “Web Integration” My Web Integration (Context Menu) Configuration is: Supports all file extensions Integration Type is “Files” Everything is working as expected when select a single file and perform the context menu action. However, my context menu option is not visible when I select multiple files.
Hello, all. Thank you in advance for the assistance. I am working on authenticating to box via JWT in python. I am currently authenticating like this: auth = JWTAuth( client_id='<CLIENT ID>', client_secret='<CLIENT SECRET>', enterprise_id='<ENTERPRISE ID>', jwt_key_id='<JWT KEY ID>', rsa_private_key_file_sys_path='/Users/folder/private_key.pem', rsa_private_key_passphrase='<PASSWORD>', ) access_token = auth.authenticate_instance() client = Client(auth) However, when I try and access my files in the box, I am not able to find any via code (even though there are certainly files in my account): client.folder('0').get() The interesting thing is that I am able to access all of the files and folders in my account if I use the development client, go into the developer console, and manually copy and paste an access token into the application: from boxsdk import DevelopmentClient client = DevelopmentClient() I was curious if anyone had a
Hi! im a new member. I have some questions: When i create an app, i see enterpriseid equal to 0? how do i have enterpriseid without 0. And i dont see Authorization tab like the docs.(https://developer.box.com/platform/user-types/) I want to use box-node-sdk to download file without limitation time login. for now i see it limited 60 mins with Developer Token. Is there a way to authorize without a time limit ( im using box-node-sdk)? It seems that authorizing with enterprise will not limit it, I’m not sure. If there is a limit, it will only be limited to a few days? thank you.
error: ‘invalid_grant’, error_description: “Please check the ‘sub’ claim. The ‘sub’ specified is invalid.”
I have a custom app registered/authorized by our Box admin with a permission scope of App+Enterprise , the C# client is using the Client Credentials Grant authentication method. I can get users in our Enterprise with the GetEnterpriseUsersAsync() method with no issue. However, it throws an exception of Box.V2.Exceptions.BoxAPIException : The API returned an error [Forbidden | figvvzhkcgjuvsex.02c4ce4ec440d4ba759f146d40493582d] forbidden - Forbidden when attempting to update a user via the .NET sdk UpdateUserInformationAsync method. C# code is as follows: _boxConfig = new BoxConfigBuilder(BOX_CLIENT_ID, boxClientSecret).SetEnterpriseId(BOX_ENTERPRISE_ID).Build(); _boxCCG = new BoxCCGAuth(_boxConfig); _boxClient = _boxCCG.AdminClient(); to update the user is coded as follows: public async Task UpdateUser(BoxUser user, string? setColleagueId = null) { var updates = new BoxUserRequest(); // pass the user properties into the updates object updates.Address = user.Address; updates.ExternalAp
Here is my code: public uploadFiles = async (folderName: string, files: Blob[]) => { const folderId: string = await this.getFolderId(folderName); for (const file of files) { const stream: Readable = await blobToReadable(file); const attributes: UploadFileRequestBodyAttributesField = { name: file.name, parent: { id: folderId } } await this.boxClient.uploads.uploadFile({ attributes, file: stream }); } } const blobToReadable = async (blob: Blob): Promise<Readable> => { const buffer: Buffer = Buffer.from(await blob.arrayBuffer()); const stream = Readable.from(buffer); return stream; } I am using Bun.js instead of node. folderId is correct and the file is converted correctly from Blob to Readable
Hello, I am trying to access my Box app with Python code, that is using JWT to authenticate. Here is my code: from boxsdk import JWTAuth from boxsdk import Client from cryptography.hazmat.primitives.serialization import load_pem_private_key import json import base64 private_key_fpath = "/path/to/PrivatKey.pem" #Settings below generated by the Box Developer Console settings_fpath = "/path/to/1234__config.json" with open(private_key_fpath, "rb") as key_file: priv_rsakey = load_pem_private_key(key_file.read(), password=None) with open(settings_fpath, "r") as f: settings = json.loads(f.read()) settings['boxAppSettings']['appAuth']["privateKey"] = priv_rsakey auth = JWTAuth.from_settings_dictionary( settings ) access_token = auth.authenticate_instance() I get the following error BoxOAuthException: Message: "kid" invalid, unable to lookup correct key Status: 400 URL: https://api.box.com/oauth2/token Method: POST Headers: {'Date': 'Mon, 22 Apr 2024 20:27:23 GMT', 'Content-Type':
Hello, I’m fairly new to box and want to download a publicly available repo which is fairly large in size (>1 TB). How can I parse through the whole repo and download all the files? Right now, the only way to do this is by manually download each file, and the repo has >7,000 files. This is quite frustrating and impractical. Are there any obvious solutions to this that I might have missed? Thanks
Hello, I am trying to build a Blazor web app that uses Box’s API, and I’m struggling to implement OAuth2 authentication. I followed the instructions/documentation listed here: https://developer.box.com/guides/authentication/oauth2/with-sdk/ , but I’m having issues with obtaining the authorization code once I’m redirected to my app. Below is the code I have so far; it works as expected until I reach that final step. Any help will be greatly appreciated. -Code- private async Task OAuth2() { string authorizationUrl = "https://account.box.com/api/oauth2/authorize?client_id=" + clientID + "&response_type=code"; // Configure SDK var config = new BoxConfig(clientID, clientSecret, new Uri(redirectUrl)); var sdk = new BoxClient(config); //Redirect user RedirectToAuthUrl(authorizationUrl); // Exchange code - TODO: Get auth code to exchange for access token; check after redirect. var session = await sdk.Auth.AuthenticateAsync("[CODE]"); var client = new BoxClient(config, session)
Hi! I have a client who wants me to back up ALL the files on an old Ubuntu 14.04.6 LTS system to box.com. It’s a headless server (no gui) and they need every single file. There’s about 850 GB across 1,948,569 files in there. The largest file is only 2.4 GB. There are a few directories with a large number of files in them. The biggest count is 457,703 files in a single directory. They say they have unlimited box.com space and do not want to setup storage with another provider. I’m not sure I can run the box cli on this version of linux, and from what I’ve read, it doesn’t seem like it would be appropriate for something this big. I feel like FTPS would be the right thing (for box), but I can’t login to it from my personal account. Any suggestions would be appreciated. Thanks!
I have a business enterprise web application that I built in PHP and it is hosted on BlueHost. I have an entity named Attachment that is a many to one to a separate entity called Ticket. The Attachment entity represents a file attachment for a Ticket. The way it currently works to upload it is: I give the file a unique name (random GUID + extension) I upload the file to the file system I save a new instance of the record referencing the filename in the database Then to download it I: Get the Attachment record by its Id Search the file system by the filename defined in the record Return the file by its filename This worked fine, but I ran into an issue where I was running out of memory on the server, so I talked with the client and convinced them to a cloud based storage solution and we settled on Box. Now I’m attempting to migrate from using the file system to using Box. I have already created two directories (one for production and one for staging) and uploaded the files from the
Hi, The app that I have created is ‘Authenticated’ using: OAuth 2.0 (User or Client Authentication) I have a free developer account and I am trying to upload a file using boxsdk. However, I am getting the below error: boxsdk.exception.BoxAPIException: Message: Not Found Status: 404 Code: not_found Request ID: 5g33vbho4p64txku Headers: {'Server': 'nginx', 'Date': 'Tue, 26 Mar 2024 13:05:47 GMT', 'Content-Type': 'application/json', 'Content-Length': '324', 'cache-control': 'no-cache, no-store', 'x-envoy-upstream-service-time': '505', 'strict-transport-security': 'max-age=31536000', 'X-Box-Original-Ingress-ADC-Host': 'prod-b-traffic-manager-0q2f', 'Via': '1.1 google', 'Alt-Svc': 'h3=":443"; ma=2592000,h3-29=":443"; ma=2592000'} URL: https://upload.box.com/api/2.0/files/content Method: POST Context Info: {'errors': [{'reason': 'invalid_parameter', 'name': 'parent', 'message': "Invalid value 'd_254434451261'. 'parent' with value 'd_254434451261' not found"}]} I have ensured the my folder_
I am scratching my head here. Box Embed offers a ‘view’ parameter to allow you to set list or grid view, however I need programatically set Content Explorer to default to grid view when loading (it is for a content portal of photographs, so thumbnails are much easier to view than generic file icons). Any ideas here anyone?
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.