This hook takes request/response schemas and request itself, execute promise callback and return (validated) response.