Problems with custom post type

In your $args array, add 'show_in_rest' => true,. This will enable the REST API integration.

As for your URLs, you need to flush the rewrite rules. Normally you would want to put your custom post type/taxonomy definitions into a plugin so it is separate from your theme since it deals with content creation/structure as opposed to display. In that you could include a call to flush_rewrite_rules() using the plugin activation/deactivation hooks.

In your case, just go into the permalink settings and save them if you keep it in your theme.