AngularJS: Http API Service - any improvements / remarks?
A few ideas - nothing major :


Encapsulating the methods in self doesn't really add anything. A set of function statements or function expressions would do the job and self. could be purged all through. 
The explicit promise construction antipattern should be purged.
"method" would be better understood than "verb".
Does DoRequest() not throw when data is not passed? Do range checking in doRequest() instead of ExecuteRequest().
Possibly allow for omitted uri, defaulting to empty string (browser will use current page's url). Could be useful in some use cases.
By convention Initial-caps are reserved for constructors. Change to lower-case all through.
Possibly use Function.prototype.bind() in the exposer. (Check that browser compatibility is acceptable).




angular.module("services.api").factory("apiService", [
"$http",
"$q",
"coreUtilityService",
"constantsServiceNames",
"constantsApiRequestFor",
function (
    $http,
    $q,
    coreUtilityService,
    constantsServiceNames,
    constantsApiRequestFor
) {
    // === START SERVICE === //
    // var name = constantsServiceNames.ApiService; // necessary?
    var executeRequest = function(method, fullUri, data) {
        method = method.toLowerCase();
        var httpArgs = [fullUri];
        if (data) {
            httpArgs.push(data);
        }
        return $http[method].apply(null, httpArgs).then(null, function (response) {
            throw new Error("HTTP Error: " + response.status);
        });
    };
    /*
    Do a request to any RESTful receiver. Meant for external use only, use DoViewRequest
    for internal requests.
    */
    var doRequest = function (method, uri, data) {
        uri = uri || '';
        data = (!data || !method.match(/post|put/)) ? null : data; // or similar
        return ExecuteRequest(method, coreUtilityService.GetBaseUrl(constantsApiRequestFor.WebAPI, uri), data);
    };
    /*
    This will target an MVC View of the client application. The url will be different.
    */
    var doViewRequest = function (method, uri) {
        uri = uri || '';
        var fullUrl = coreUtilityService.GetBaseUrl(constantsApiRequestFor.View, uri);
        return ExecuteRequest(method, fullUrl, null);
    };
    // === PUBLIC === //
    return {
        'get':    doRequest.bind(null, 'get'),
        'post':   doRequest.bind(null, 'post'),
        'put':    doRequest.bind(null, 'put'),
        'delete': doRequest.bind(null, 'delete'),
        'view':   doViewRequest.bind(null, 'get')
    };
    // === END SERVICE === //
}]);