A community space to collaborate on Box APIs, explore SDKs, and build powerful applications
Recently active
I am using a free account and want to generate access token from client credentials without browser login just through api calls.
The OAuth 2.1 “spec” simplifies some of the OAuth 2.0 specifications (e.g. eliminates those that are no longer considered secure, etc). One of the things OAuth 2.1 suggests is using PKCE even for Confidential (Server Side Clients). Here’s what OAuth 2.1 says, " PKCE is required for all OAuth clients using the authorization code flow" I don’t see any mention of PKCE in the Box documentation. Can you tell me if PKCE is being considered for future Box authentication?
Hi - Has there been any change or update to the BOX SFTP? I was able to connect to BOX via SFTP on Thursday, but since Friday I’ve been receiving the error ““Failed: Interactive authentication announced but rejected”. Our login credentials have not changed. I followed the below link to setup the connection.https://urldefense.com/v3/__https://support.box.com/hc/en-us/articles/ [removed by moderator] -Using-Box-with-SFTP__;!!NFWRZ6kECLqu!phiDSBMaKKLIQkISKivtTPZYrj23HEG8wLvWvYQ7EtkrwGihuhmkKAxBQanR5ATwNDCndxzRxby5xEylRR87YSbL$Thank you,Supritha.
Hi everyone, I’m looking to use the Box CLI Scripts to bulk delete Open links in Box in certain folders. I looked at the list of properties you can attach to the string and see nothing that specifies to target Open links, is there a way I can do that or is the script set to delete everything in the folder? Help would be appreciated :)
Hello,I’m facing an issue with Box Sign API: I upload a file via API and create a Sign Request — API responds successfully, but the sign email is not sent. If I upload the same file manually in the same folder and create a Sign Request, the email is sent. Question: How can I make API-uploaded files trigger the sign email automatically, like manually uploaded files?
Hi Box Team,I have a question regarding how API calls are counted towards the license-based rate limit when downloading a file.According to the File Download Guide, when I download a file, the SDK (or my app) first sends:GET https://api.box.com/2.0/files/{file_id}/contentThen Box responds with a 302 redirect, and my client follows it by making:GET https://dl.boxcloud.com/d/1/[long-random-string]/downloadMy questions are: How many API calls are counted towards the license-based rate limit in this scenario — just the initial GET /files/{file_id}/content request, or both the API request and the subsequent dl.boxcloud.com download request? If the initial API request results in a 429 (rate limit exceeded) response, does this 429 request itself count against the license-based API call allocation? Thanks in advance for clarifying!
Hello,I’m facing an issue with my application that uses Client Credentials Grant. The app has already been authorized by the organization admin.I’m able to authenticate successfully using this request:curl --location 'https://api.box.com/oauth2/token' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --data-urlencode 'grant_type=client_credentials' \ --data-urlencode 'client_id=<CLIENT_ID>' \ --data-urlencode 'client_secret=<CLIENT_SECRET>' \ --data-urlencode 'box_subject_type=enterprise' \ --data-urlencode 'box_subject_id=<ENTERPRISE_ID>' With the token obtained, I can successfully call the metadata endpoint:curl --location 'https://api.box.com/2.0/files/<FILE_ID>' \ --header 'authorization: Bearer <TOKEN>' This returns the file information correctly.However, when I try to download the file, I get a 403 error with code access_denied_insufficient_permissions: curl --location 'https://api.box.com/2.0/files/<FILE_ID>/content' \ --header
I'm having issues with Box Sign. I have to agree to sign each time I sign, even if one right after the other. I have to go back to the main search page and reset the filters (pending my action). Is there a way to open each signature in a new tab? Or better yet, set the default to open the next envelope? It is really depressing when you have to sign 50 envelopes.
The OAuth "Grant Access" modal/page is not formatting the redirect URL so that it fits in the provided area, even for URLs of reasonable length. Looks unprofessional. Suggest that the URL be wrapped so that it fits within the allotted space.
HiI have 3 systems that all need to see updates from Box. Some of these will cross over (Ie Only 1 system needs to know about signatures but all 3 systems need to see updates about new files created)I know I can not create 3 webhooks against the same folder but can I create a folder structure Folder 1 - Folder 2 - Folder 3 and then my structure beneath folder 3 and attach a single webhook to each of the three folders? Any activity within the lower levels would in theory trigger all 3 webhooks and update to 3 locations?I know I can not create a webhook at Root!Thanks in advance
Completely unrelated to the “Invalid Crypto Key” error we ran into last month, a SINGLE one of our client’s (so far) Salesforce Partial sandboxes is now getting CORS errors from Box (using the Box SDK in a LWC) w/o making any changes to the component code, Salesforce, or Box config. We use this same lower level utility LWC code across about a dozen different client’s Salesforce Org’s, including dozens of total sandboxes & Production envs, and no other env is encountering this error...yet.I’ve opened a case w/ Salesforce Partner Community support and they’re running out of ideas, our Box CORS config is unchanged and includes the URL that’s throwing the CORS error, we’ve added and removed the domain back w/ & w/o the trailing slash and didn’t make a difference.I upgraded to the latest 4.91 version of the Box for Salesforce managed package since it adds a couple of extra Trusted URL’s...didn’t make a difference.The “Invalid Crypto Key” error also started as a single client’s Parti
I am currently able to send documents for electronic signature to members of my organization, whose names and email addresses auto-populate when adding them. However, I cannot find a way to add contact names and email addresses for persons outside my organization so that they, too, auto-populate when attempting to add them. Is there a way to import and/or create a contacts list for signatories outside of my company?
I’m running a fairly straight-forward “ask ai question” API call, but it seems to be failing silently and returning a blank. Using the same agent and prompt on box.com in UI on the same file, I get an answer, but when I call the exact same thing via API I get a blank. I’m using the older boxsdk in python. This is what my code looks like: items = [ { "id": file_id, "type": "file", "content": "This is the document in PDF format" } ] ai_agent = { 'id':'40266263', 'type': 'ai_agent_id' } result = client.send_ai_question( items=items, prompt=prompt, mode="single_item_qa", ai_agent=ai_agent ) And I get this response:{'answer': '[]', 'created_at': '2025-09-12T08:47:04.178-07:00', 'completion_reason': 'done', 'ai_agent_info': {'models': [{'name': 'openai__gpt_5', 'provider': 'openai'}], 'processor': 'basic_text'}}I’m not sure what the issue is, I don’t get any erro
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?
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.