-
Notifications
You must be signed in to change notification settings - Fork 24
Open
Labels
Description
I've been exploring a few different options for automatic schema validation and API documentation. I noticed both lout and hapi-swagger support the following configuration for routes:
server.route({
method: "GET",
path: "/something/{somethingId}",
config: {
description: "Get's a something",
tags: ["api"],
validate: {
params: {
somethingId: Joi.string()
},
headers: Joi.object({
"authorization": Joi.string().required()
}).options({ allowUnknown: true })
},
response: {
schema: Joi.object({
})
}
},
handler: function (request, reply) {
// ...
}
});But ratify seems to require a different type of configuration structure with everything under a plugins and then a ratify object.
Is there a reason for the different structure? Would it be possible to re-use the same structure that others use that don't specify the ratify plugin explicitly? I mostly just want an easy way to keep things consistent but have the option of changing out documentation and / or validations.