Как я могу обернуть каждый ответ API в стандартный объект ответа в SailsJS?

Я новичок в Sails и пытаюсь найти лучший / правильный метод для возврата стандартного объекта для каждого ответа API.

Контейнер, который необходим нашему интерфейсу:

{
    "success": true/false,
    "session": true/false,
    "errors": [],
    "payload": []
}

В настоящее время я переписываю действия с планом в каждом контроллере, как в этом примере (что выглядит очень, очень неправильно):

   find : function( req, res ){

    var id = req.param( 'id' );

    Foo.findOne( { id : id } ).exec( function( err, aFoo ){

      res.json(
        AppSvc.jsonReply(
          req,
          [],
          aFoo
        ), 200
      );
    });

  }

И в AppSvc.js:

  jsonReply : function( req, errors, data ){

    return {
      success : ( errors && errors.length ? false : true ),
      session : ( req.session.authenticated === true ),
      errors  : ( errors && errors.length ? errors : [] ),
      payload : ( data ? data : [] )
    };

  }

Кроме того, мне пришлось изменить каждыйres.json() метод для каждого ответа по умолчанию (badRequest, notFound и т. д.). Опять же, это так неправильно.

Итак, как правильно направить все ответы API в стандартный контейнер?