WP-API Custom Post Type json_no_route

I think what is missing in your code is the “add_action” call for your plugin init function, so all gets instantiated correctly within wp_json_server_before_serve hook. Should be something like this (note the last line):

function quizno_api_init($server)
{
     global $quizno_api_quiz;

     $quizno_api_quiz = new QN_API_Quiz($server);
     $quizno_api_quiz->register_filters();
}
add_action( 'wp_json_server_before_serve', 'quizno_api_init' );