All things API and SDK related
Recently active
Hi all,I'm developing a java application to fetch box documents/files properties/Info. I'm able to get most of the file properties/Info except MIME type of the files. Is it possible to directly get the MIME type of a document/file using Box Java SDK ? Please suggest your suggestion. Thank you,Arpit
Do any one has any experience connecting Business Objects to Box? We are trying to schedule the file transfer from Business Objects to Box and not able to make the successful connection.
We are needing further clarification on which API calls are chargeable in regards to custom apps.It seems like from our testing that below is true :1 : Upload/Download calls are NOT charged2 : Failed calls are NOT chargedWe are looking at developing a new custom app that will replace our current one for provisioning/deprovisioning users on a daily basis as we are a large org and want to do more than just creating/disabling/deleting users like having reports automatically run or updating metadata.Is there a list or document that details which calls are chargeable and which aren’t?Thanks!
Hi all,I am a composer that uses box for file sending. Unfortunately the streaming of audio on the site is not very good and introduces artifacts to the mixes. So my clients aren’t hearing what i am intending them to hear.Its a deal breaker for obvious reasons. I was wondering if the devs are aware of this issue? Thanks!Greg
Hey allRegarding use of Box’s `expiring_embed` preview a la:https://app.box.com/preview/expiring_embed/[HASH]?[parameterName]=trueWe’re having difficulties with it on mobile devices. Is it supported on mobile?We’re aware that this page: https://developer.box.com/guides/embed/box-embed/, indicates that there are limitations for displaying on mobile, but it does not explicitly mention that it is not supported. Could this be related to something like X-Frame-Options being DENY’d for security? Thank you-Dave
Using the `https://app.box.com/preview/expiring_embed/[HASH]?[parameterName]=true` route a la: https://developer.box.com/guides/embed/box-embed/#finding-your-shared-link-valueIs there a way to disable the header, or at least, hide/change the “Box” icon at the top of the embedded view? For context, we’re using this method of previewing a Box File through Outsystem’s ODC IFrameFlowReact module Thank you-Dave
Hi All, We are getting the following error while trying to upload documents. Do you know how to fix this issue? Access to XMLHttpRequest at 'https://api.box.com/2.0/files/content' from origin 'https://abc--c.vf.force.com' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.Understand this errorgatherer.js:1 OPTIONS https://api.box.com/2.0/files/content net::ERR_FAILED 401 (Unauthorized) Thanks, Chitra
Hello,I’m trying to set an expiration date for a collaborator when inviting them to a folder using the POST /collaborations API.As stated in the API reference, I included the expires_at parameter in my request.However, even after adjusting the Enterprise settings, the expiration date I set is always overridden by the Enterprise policy (60 days). Here is the request body I sent:{ "item": { "type": "folder", "id": "1234567890" }, "accessible_by": { "type": "user", "login": "user@example.com" }, "role": "editor", "expires_at": "2025-12-30T23:59:59+00:00" } And here is the response I received:{ "type": "collaboration", "id": "9876543210", "created_by": { "type": "user", "id": "111111", "name": "USER NAME", "login": "creator@example.com" }, "created_at": "2025-09-04T23:45:04-07:00", "modified_at": "2025-09-04T23:45:04-07:00", "expires_at": "2025-11-03T23:59:00-08:00", "status": "accepted", "accessible_by": { "type": "user", "id": "222222", "name": "INVITED USER", "login": "user@example.co
Hello, I’m a software developer, and I made the integration of you application to use the box APIs, it was working well until now, I have an example that I can’t find a solution. If I try to upload a file using the original name “H09819620250904163224INNTRANSCAN.CSV” I’m getting the error 400 - Bad Request, but if I just rename the same file to be “Test.CSV” or any other shorter name it works well without any error. I simulated a double call doing the original name, and getting the error 400, and in sequence just renamed the file to Test.CSV and it worked with no error. At all the documentation and posts we have the information that the limit is 255, but the file name that I’m trying to send is 32, so should be all good. Any suggestion ? Same file, just copy or renamed.
Hi, Can you add the Manage Legal Holds scope to these two applications?sidfwd19e6n55hbbwtcuvsidwyd9kysntv46fuavh0flj4fd2gjyn2fqq6s3zhmlThanks
I’m trying to transfer files and folders from one Box user to another. The technique is described in this post:developer.box.com/guides/users/deprovision/transfer-folders/#collaboration-transfer-methodThe last step of the process is to remove access for the owner by removing the collaboration:developer.box.com/guides/users/deprovision/transfer-folders/#remove-transfer-from-user-as-ownerHowever, when you use the API to get collaborations of files and folders using the API, the API only returns the collaborations of users other than the current owner.There was a similar post about this issue in:How to get Owner's collaboration ID through Box API – Box SupportThe answer there was to use the API to transfer ownership - using this API:https://developer.box.com/reference/put-users-id-folders-0/The problem with that is that the whole point of using the Collaboration Transfer method was to avoid doing a synchronous ownership transfer so using the transfer folder is not solving the problem. So
Using an App+Enterprise JWT (server Auth) Service Account I am unable to interact with other service accounts using the Box API./users - return only users not service accounts/folders/0/items - returns 403 when I am impersonating (As-User) a Service Account userId.The issue is that I am trying to find all files in the organization, and service accounts can hold files/folders under their file tree, but these are unreachable using the API.Is there any way to find service Accounts and read their files using the API?
📌 Use Case:-For existing sign requests, we need to retrieve the embedded signing URL.-For new sign requests, we need both:-The embedded signing experience (embed_url_external_user_id)-The email notification sent to the signer❗Issue:When we include the embed_url_external_user_id parameter in the request payload (to generate the embedded signing link), the email notification to the signer is not sent.-No errors are returned in the API response-The sign request is created successfully-The embedded URL is generated and works-But no email is triggered to the signer✅ Expected Behavior:-When creating a new sign request and providing embed_url_external_user_id, we expect:-The signer to receive the standard email notification-The embedded URL to be available as an alternative signing option🔍 Request for Clarification:-Is it expected behavior that enabling embed_url_external_user_id suppresses the email notification?-Is there any way to enable both embedded signing and email notification simul
Is it possible to programmatically create an app user via Apex (Box Toolkit/Box SDK for Salesforce) and associate it with an Experience Cloud user in Salesforce?
Hi, a user is trying to connect BOX to my app and they’re not seeing any of their files show up. When they navigate to the web they get this: The application could not be added as it is lacking the proper configuration. Please check with an enterprise admin if the app is properly configured via Admin Console or contact the support e-mail indicated in app description for assistance. Any ideas?
Hi everyone,I’ve been testing the Content Sidebar UI Element via the CDN and noticed that the “Open With” option isn’t showing up. After digging into the docs and doing some trial and error, I wanted to confirm what I found in case others hit the same thing: The hasOpenWith parameter used to be part of Sidebar, but it only works for Enterprise accounts where App Integrations (Google Docs, Adobe, Box Edit, etc.) are enabled by an admin. On Free/Personal plans, those integrations aren’t available, so the Open With option won’t appear in the Sidebar at all, even if you set the flag in code. The current Sidebar options you can use on Free plans are: hasActivityFeed, hasMetadata, hasSkills, and detailsSidebarProps. So if you’re on a free plan and wondering why you don’t see “Open With,” that’s expected. To access it you’d need to be on a Business or Enterprise plan with integrations turned on by your admin.Hope this saves someone else a few hours of confusion 🙂
My BOX and Salesforce connection was working fine, and the connection was established between the BOX and Salesforce until last week. Starting this week, I am getting “Invalid Crypto Error” while Salesforce and BOX tries to connect.No, update is being made on the Private Key, and the Private Key is not expired as well, and no updates are being made on the BOX as well. All of sudden, the connection between BOX and Salesforce died on me. I tried to look for this issue in BOX and found this article which is not so helpful. My Private key is not encrypted to follow the encryption. I am using PKCS#8 PEM Format Private Key to connect it to BOX. Any suggestion or help on this issue will be really appreciated.Thank you!
I’m using the following snippet, I don’t receive any event in uploaderClose method. var configData = { ACCESS_TOKEN: "XXXXXXXX", FOLDER_ID: "XXXXXX" }; function uploaderClose(e) { console.log('close:', e); } var optionsUploader = { 'onClose' : uploaderClose } var options = { 'container': '.explorer', 'contentUploaderProps': optionsUploader } var contentExplorer = new Box.ContentExplorer(); contentExplorer.show(configData.FOLDER_ID, configData.ACCESS_TOKEN, options);
During call to query folder by metadata I'm getting HTTP 400 - too_many_instances, this is happening just with one box subscription, it's working for the other oneRequest:curl --location 'https://api.box.com/2.0/metadata_queries/execute_read' \--header 'box-version: 2024.0' \--header 'Content-Type: application/json' \--header 'Authorization: Bearer ****' \--data '{ "from": "enterprise_1234.metadata", "query": "entityId = :entityId and entityType = :entityType", "query_params": { "entityId": 1, "entityType": "TEST_FOLDER" }, "fields": [ "id" ], "ancestor_folder_id": "0"}'Response:{ "type": "error", "status": 400, "code": "too_many_instances", "help_url": "https://developer.box.com/reference/post-metadata-queries-execute-read/", "message": "Too many instances, and no supporting index available", "request_id": "0e75317d0072c5a523ba79f1422552050"}Tried to find something in box community but all the references are old and the links
issue 1: Were I have a box account as a admin and have the access to the whole box and things in there i am a partner on a box app in the developer console which i can’t able to access to the webhook v2 (with the signature and security) there i have enabled the manage webhook there but i can’t be able to use the webhook tab in there and use them there…issue 2: were there is no option for creating the access token (the permanent developer token) for my application there i need the specific steps to do it and enable them as well.. I need the proper steps to mitigate these issues and solve it the docs of the box are not suffice in some aspects in there which misses out the the primary and complete steps in there can you guide me through the steps to solve these things in there.
OverviewWhen executing the following API, only certain accounts are unable to retrieve the file list, which prevents the process from proceeding.If you have any insights on possible causes or solutions, I would greatly appreciate your guidance. Target APIhttps://api.box.com/2.0/folders/${folderId}/items?fields=id%2Cname%2Ctype%2Cmodified_at%2Cextension%2Cshared_link%2Cexpiring_embed_link&limit=100&offset=0 OAuth Endpoint Authorization: https://account.box.com/api/oauth2/authorize Revoke: https://api.box.com/oauth2/revoke Scope root_readwrite Execution EnvironmentReact Native + Expo SDK 51 + Expo Auth SessionWhat we have checked so far No API or network errors occurred, and no error information is available. Other accounts can retrieve the file list without any issues (both free and organizational accounts work fine). We verified account information using https://api.box.com/2.0/users/me. However, for accounts that cannot retrieve the file list, certain expec
Hey allI’m trying to use the Box Typescript SDK’s `client.search.searchForContent()` method to query for Folders using `tags`. There are two routes that I tried, both did not result in success, so was hoping someone knows what’s going on. The two routes were:Update Folder `tags` property:on Folder Create, add step which calls PATCH Folder (`client.folders.updateFolderById`) and update `tags` property const folder = await this.scopedClient.folders.updateFolderById( folderId, { requestBody: { tags: tags }, } ); oddly, when I GET Folder after this PATCH, I don’t see the “tags” attribute defined (ie: `tags: undefined`). I tried the same call, with both `name` and `tags`, and still, `tags` was not updated, however `name` was updated and changed when query’ing, add to query params `query: {tags}` const searchResults = await this.scopedClient.search.searchForContent({ contentTypes: 'tags', query: tags.join(' '),
Hi, I couldn’t find any information on whether I can create custom apps on Business and Business Plus plans. And if we can, can we enable the “App + Enterprise Access” scope for the custom app? Thanks!
Hi, im using n8n box create folder node, sometimes i get this error, seems like box api issues?{ "errorMessage": "The DNS server returned an error, perhaps the server is offline", "errorDetails": { "rawErrorMessage": [ "getaddrinfo EAI_AGAIN api.box.com", "getaddrinfo EAI_AGAIN api.box.com" ], "httpCode": "EAI_AGAIN" }, "n8nDetails": { "nodeName": "Create a folder", "nodeType": "n8n-nodes-base.box", "nodeVersion": 1, "resource": "folder", "operation": "create", "time": "8/11/2025, 5:29:04 PM", "n8nVersion": "1.102.3 (Self Hosted)", "binaryDataMode": "default", "stackTrace": [ "NodeApiError: The DNS server returned an error, perhaps the server is offline", " at ExecuteContext.boxApiRequest (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-nodes-base@file+packages+nodes-base_@aws-sdk+credential-providers@3.808.0_asn1.js@5_1af219c3f47f2a1223ec4ccec249a974/node_modules/n8n-nodes-base/nodes/Box/GenericFunctions.ts:46:9)",
Hello Box Community,I’m working on integrating Box with my application and want to establish a security policy federation. Specifically, I want to map user permissions from Box to my application’s permission model, ensuring consistent access control across both platforms.So far, I have explored the following: The Get File API to retrieve permissions, but it only returns permissions for the current user. This means I would need to get all enterprise users and execute the Get File API for each user individually to gather permissions for all users, which seems inefficient. The Collaborations API to retrieve collaborators on files and folders. Is there any existing solution, best practice, or recommended approach for: Federating security policies between Box and an external application? Efficiently mapping Box user permissions or roles to custom permissions in my app without having to query each user individually? Tools or APIs provided by Box to facilitate this kind of integration?
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.