Q:

mvc4 web api route sheme

I want access resource like this:
     /api/adddevice/12345

what is incorrect in this route?
    routes.MapRoute(
            name: "AddDevice",
            url: "adddevice/{id}",
            defaults: new { controller = "some controller", action = "adddevice", id = UrlParameter.Optional }
    );

    public string AddDevice(int id)
    {
        return "Device " + id.ToString() + " succesfully added";
    }

EDIT
Here is error details:
     <MessageDetail>
        No type was found that matches the controller named 'some controller'.
     </MessageDetail>

A:

You say you want the url to be this:
/api/adddevice/12345

but your route mapping has this:
url: "adddevice/{id}",

See how it doesn't match? The mapping doesn't have api/ at the start. The URL stated in the MapRoute() call has to match all of the URL (except the host part, of course). Either remove /api/ from the URL you're typing, or add it to the URL you're mapping.
Incidentally, routes.MapRoute() is for MVC; for WebApi you want config.Routes.MapHttpRoute().

