custom url with custom post

You can omit the “base”, by adding

rewrite => array(
    slug       => 'item',
    with_front => false,
),

Don’t forget to flush your rewrite rules after you changed that. The easiest way to do so it to simply visit the “admin > settings > permalinks” page.

If you need to add that to an already registered post type, then take a look at the internals of register_post_type() and the available hooks and filters in its source Link to GitHub: Make use of the registered_post_type action which comes with two arguments: $post_type and $args.