code: function putSingleFileToStore (file, options) {
  
    // API
    var key = options.key
    var dir = options.dir
    var fileName = options.filename || options.fileName || file.name || 'unnamed.txt'
    var onProgress = options.onProgress
  
    return resolveKey(key, dir, fileName)
      .then(validateKey)
      .then(function (key) {
        return getCredentials(file, key, fileName)
      })
      .then(function (credentials) {
        return uploadFile(file, credentials, onProgress)
      })
  
  }
docs: private