diff --git a/lib/wsapi.js b/lib/wsapi.js
index b768db346b82e57b2862d7e0a936b7f2e3947caa..1becc4071adab96aea9c691dce165f8e4a694b65 100644
--- a/lib/wsapi.js
+++ b/lib/wsapi.js
@@ -173,7 +173,17 @@ exports.setup = function(options, app) {
   // load all of the APIs supported by this process
   var wsapis = { };
 
-  logger.debug("registering WSAPIs:");
+  function describeOperation(name, op) {
+    var str = "  " + name + " (";
+    str += op.method.toUpperCase() + " - ";
+    str += (op.authed ? "" : "not ") + "authed";
+    if (op.args) {
+      str += " - " + op.args.join(", ");
+    }
+    str += ")";
+    logger.debug(str);
+  }
+
   fs.readdirSync(path.join(__dirname, 'wsapi')).forEach(function (f) {
     // skip files that don't have a .js suffix or start with a dot
     if (f.length <= 3 || f.substr(-3) !== '.js' || f.substr(0,1) === '.') return;
@@ -202,11 +212,24 @@ exports.setup = function(options, app) {
       logger.error(msg);
       throw msg;
     }
+  });
 
-    logger.debug('  ' + operation);
-
+  // debug output - all supported apis
+  logger.debug("WSAPIs:");
+  Object.keys(wsapis).forEach(function(api) {
+    if (options.forward_writes && wsapis[api].writes_db) return;
+    describeOperation(api, wsapis[api]);
   });
 
+  if (options.forward_writes) {
+    logger.debug("forwarded WSAPIs:");
+    Object.keys(wsapis).forEach(function(api) {
+      if (wsapis[api].writes_db) {
+        describeOperation(api, wsapis[api]);
+      }
+    });
+  }
+
   app.use(function(req, resp, next) {
     var purl = url.parse(req.url);