register_rest_route needs the feature plugin until 4.7

4.4 shipped the REST API infrastructure — the server, the routing, register_rest_route() — and none of the content endpoints. So the function exists on a stock install and there are no routes for posts, users or media until the feature plugin is installed.

add_action( 'rest_api_init', function () {
    register_rest_route( 'shop/v1', '/stock/(?P<id>d+)', array(
        'methods'             => 'GET',
        'callback'            => 'shop_stock_endpoint',
        'permission_callback' => '__return_true',
    ) );
} );

That split is why “does this site have the REST API” has no yes-or-no answer this year: custom routes work everywhere from 4.4, and anything touching /wp/v2/posts needs the plugin. It ends in December with 4.7, which finally brings the content endpoints into core — and inherits three years of sites running the plugin at whichever version they installed.