diff --git a/src/app/core/index.ts b/src/app/core/index.ts
index a9aa9a6..fd87e38 100644
--- a/src/app/core/index.ts
+++ b/src/app/core/index.ts
@@ -13,6 +13,7 @@
 import {xosForm} from './form/form';
 import {xosField} from './field/field';
 import 'angular-toastr';
+import {ModelHelpers} from './services/helpers/model.helper';
 
 export const xosCore = 'xosCore';
 
@@ -24,6 +25,7 @@
   .service('PageTitle', PageTitle)
   .service('XosFormHelpers', XosFormHelpers)
   .service('ConfigHelpers', ConfigHelpers)
+  .service('ModelHelpers', ModelHelpers)
   .directive('xosLinkWrapper', xosLinkWrapper)
   .component('xosHeader', xosHeader)
   .component('xosFooter', xosFooter)
diff --git a/src/app/core/services/helpers/model.helper.ts b/src/app/core/services/helpers/model.helper.ts
new file mode 100644
index 0000000..81825d3
--- /dev/null
+++ b/src/app/core/services/helpers/model.helper.ts
@@ -0,0 +1,9 @@
+export interface IXosModelHelpersService {
+  urlFromCoreModel(name: string): string;
+}
+
+export class ModelHelpers {
+  urlFromCoreModel(name: string): string {
+    return `/core/${name.toLowerCase()}s`;
+  }
+}
diff --git a/src/app/core/services/helpers/model.helpers.spec.ts b/src/app/core/services/helpers/model.helpers.spec.ts
new file mode 100644
index 0000000..8456738
--- /dev/null
+++ b/src/app/core/services/helpers/model.helpers.spec.ts
@@ -0,0 +1,28 @@
+import * as angular from 'angular';
+import 'angular-mocks';
+import 'angular-ui-router';
+
+import {IXosModelHelpersService, ModelHelpers} from './model.helper';
+
+let service: IXosModelHelpersService;
+describe('The ConfigHelpers service', () => {
+
+  beforeEach(() => {
+    angular
+      .module('test', [])
+      .service('ModelHelpers', ModelHelpers);
+
+    angular.mock.module('test');
+  });
+
+  beforeEach(angular.mock.inject((
+    ModelHelpers: IXosModelHelpersService,
+  ) => {
+    service = ModelHelpers;
+  }));
+
+  it('should convert a core model name in an URL', () => {
+    expect(service.urlFromCoreModel('Slice')).toBe('/core/slices');
+  });
+
+});
diff --git a/src/app/datasources/index.ts b/src/app/datasources/index.ts
index c82f317..7a14a9a 100644
--- a/src/app/datasources/index.ts
+++ b/src/app/datasources/index.ts
@@ -5,11 +5,12 @@
 import {StoreHelpers} from './helpers/store.helpers';
 import {SynchronizerStore} from './stores/synchronizer.store';
 import {ModeldefsService} from './rest/modeldefs.rest';
+import {xosCore} from '../core/index';
 
 export const xosDataSources = 'xosDataSources';
 
 angular
-  .module('xosDataSources', ['ngCookies', 'ngResource'])
+  .module('xosDataSources', ['ngCookies', 'ngResource', xosCore])
   .service('ModelRest', ModelRest)
   .service('AuthService', AuthService)
   .service('WebSocket', WebSocketEvent);
diff --git a/src/app/datasources/rest/auth.rest.ts b/src/app/datasources/rest/auth.rest.ts
index 520952d..f963799 100644
--- a/src/app/datasources/rest/auth.rest.ts
+++ b/src/app/datasources/rest/auth.rest.ts
@@ -37,7 +37,6 @@
     const d = this.$q.defer();
     this.$http.post(`${AppConfig.apiEndpoint}/utility/login/`, data)
       .then((res: IAuthResponseData) => {
-        console.log(res.data);
         this.$cookies.put('xoscsrftoken', res.data.xoscsrftoken);
         this.$cookies.put('xossessionid', res.data.xossessionid);
         this.$cookies.put('xosuser', res.data.user);
diff --git a/src/app/datasources/stores/model.store.spec.ts b/src/app/datasources/stores/model.store.spec.ts
index dfe0d24..a6edcb9 100644
--- a/src/app/datasources/stores/model.store.spec.ts
+++ b/src/app/datasources/stores/model.store.spec.ts
@@ -7,6 +7,7 @@
 import {StoreHelpers} from '../helpers/store.helpers';
 import {ModelRest} from '../rest/model.rest';
 import {AppConfig} from '../../config/app.config';
+import {ModelHelpers} from '../../core/services/helpers/model.helper';
 
 let service: IModelStoreService;
 let httpBackend: ng.IHttpBackendService;
@@ -40,7 +41,8 @@
       .service('WebSocket', MockWs)
       .service('StoreHelpers', StoreHelpers) // TODO mock
       .service('ModelRest', ModelRest) // TODO mock
-      .service('ModelStore', ModelStore);
+      .service('ModelStore', ModelStore)
+      .service('ModelHelpers', ModelHelpers); // TODO mock
 
     angular.mock.module('ModelStore');
   });
diff --git a/src/app/datasources/stores/model.store.ts b/src/app/datasources/stores/model.store.ts
index 903bd46..015d729 100644
--- a/src/app/datasources/stores/model.store.ts
+++ b/src/app/datasources/stores/model.store.ts
@@ -4,18 +4,20 @@
 import {IWSEvent, IWSEventService} from '../websocket/global';
 import {IXosResourceService} from '../rest/model.rest';
 import {IStoreHelpersService} from '../helpers/store.helpers';
+import {IXosModelHelpersService} from '../../core/services/helpers/model.helper';
 
 export interface  IModelStoreService {
   query(model: string): Observable<any>;
 }
 
 export class ModelStore {
-  static $inject = ['WebSocket', 'StoreHelpers', 'ModelRest'];
+  static $inject = ['WebSocket', 'StoreHelpers', 'ModelRest', 'ModelHelpers'];
   private _collections: any; // NOTE contains a map of {model: BehaviourSubject}
   constructor(
     private webSocket: IWSEventService,
     private storeHelpers: IStoreHelpersService,
-    private ModelRest: IXosResourceService
+    private ModelRest: IXosResourceService,
+    private ModelHelpers: IXosModelHelpersService
   ) {
     this._collections = {};
   }
@@ -42,7 +44,7 @@
 
   private loadInitialData(model: string) {
     // NOTE check what is the correct pattern to pluralize this
-    const endpoint = `/core/${model.toLowerCase()}s`;
+    const endpoint = this.ModelHelpers.urlFromCoreModel(model);
     this.ModelRest.getResource(endpoint).query().$promise
       .then(
         res => {
diff --git a/src/index.ts b/src/index.ts
index b03f4b4..88c2250 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -28,6 +28,8 @@
 import {IXosPageTitleService} from './app/core/services/page-title';
 import {IXosConfigHelpersService} from './app/core/services/helpers/config.helpers';
 import {StyleConfig} from './app/config/style.config';
+import {IXosResourceService} from './app/datasources/rest/model.rest';
+import {IXosModelHelpersService} from './app/core/services/helpers/model.helper';
 
 export interface IXosState extends angular.ui.IState {
   data: IXosCrudData;
@@ -63,9 +65,12 @@
     $location: ng.ILocationService,
     $state: ng.ui.IStateService,
     ModelDefs: IModeldefsService,
+    ModelRest: IXosResourceService,
     RuntimeStates: IRuntimeStatesService,
     NavigationService: IXosNavigationService,
     ConfigHelpers: IXosConfigHelpersService,
+    ModelHelpers: IXosModelHelpersService,
+    toastr: ng.toastr.IToastrService,
     PageTitle: IXosPageTitleService
   ) => {
 
@@ -99,13 +104,27 @@
                     icon: 'remove',
                     color: 'red',
                     cb: (item) => {
+                      let obj = angular.copy(item);
+                      // check that item in an angular resource
+                      if (!item.$delete) {
+                        const endpoint = ModelHelpers.urlFromCoreModel(m.name);
+                        const resource = ModelRest.getResource(endpoint);
+                        // create a resource with that item
+                        item = new resource(item);
+
+                      }
                       console.log(item);
                       item.$delete()
-                        .then(res => {
-                          console.log(res);
+                        .then((res) => {
+                          if (res.status === 404) {
+                            // TODO understand why it does not go directly in catch
+                            throw new Error();
+                          }
+                          toastr.info(`${m.name} ${obj.name} succesfully deleted`);
                         })
-                        .catch(err => {
-                          console.error(err);
+                        .catch(() => {
+                          console.log(obj);
+                          toastr.error(`Error while deleting ${obj.name}`);
                         });
                     }
                   }
diff --git a/src/interceptors.ts b/src/interceptors.ts
index 9174942..dc0dcc4 100644
--- a/src/interceptors.ts
+++ b/src/interceptors.ts
@@ -12,7 +12,7 @@
 export function userStatusInterceptor($state: angular.ui.IStateService) {
 
   const checkLogin = (res) => {
-    if (res.status === 403) {
+    if (res.status === 403 || res.status === -1) {
       $state.go('login');
     }
     return res;
