Integrating into our website
We're building a system that allows competitive bidding on products. Vendors upload all sorts of files when doing so, from research white papers to quote analysis pdfs. We are about to build a file access system so that they can easily select and reuse the same files again and again instead of uploading every time (saving them time and us storage space/bandwidth).
We use SmartFile for our consumer users to upload their needed information for part of the business process they undergo in signing up.
All that to say: would the SmartFile API integrate completely into our system in the way described above?
Certainly. You can use the API to upload and download files, list files, manage user accounts etc. One feature that would probably be useful to you is the exchange API endpoint. This endpoint allows you to generate a time limited secure URL that can be used to upload or download without a password.
So, imagine you have to generate a file upload HTML form. You could make an API call on your server to create an exchange URL to receive the file. Then generate the upload form targetting that URL. When the user selects and uploads their file, it is uploaded directly to SmartFile.
Another option is to receive the uploaded file from the user, then upload it to SmartFile. Both options work, and it depends fully on your requirements which you use.
We also allow attributes and tags to be stored and retrieved with files.
If you have more specific questions, please let us know.Reply
Thanks for the reply.
Does the user have to sign up for any sort of account with SF? Or will our account that allows the API connection suffice, and then we can save the API related info along w/ their user info to our DB for later retrieval from SF? Basically, we want a non-obtrusive, unbeknownst-to-the-user sort of experience. No extra steps, no little ux hurdles, just a seamless workflow for them. Possible?Reply
This is what our developer product is designed to do. You can use the API for file management and to manage access to those files. Our developer product is designed to be a part of the back-end of your website.
Here's a fun fact, our Web UI is build on top of our API. We built the API first so it would have everything anyone could need to manage files.Reply
What you are describing can be accomplished in a number of ways. One method is to handle user access simply using your own SF account like a master account. For each of your users, create a directory (use the user's unique identifier as the directory name). Store each user's files in that directory.
In this way, you can control which of your users access which files. Using the above approach, you can limit a user to access only their own files. Or you can show one user's files to another user. You have ultimate flexibility because you are acting as a "gateway" between your users and SF. Or in other words, you are simply using SF as a file system.
In fact, it may help to think of SF as a file system. Our API replaces your usual file system interface. You build whatever you need on top of that. The additional API functionality (full-text indexing / search, public links, auditing, etc) are always there to help you build even more interesting features.Reply