diff --git a/openecomp-ui/src/nfvo-components/notification/NotificationsConstants.js b/openecomp-ui/src/nfvo-components/notification/NotificationsConstants.js
new file mode 100644
index 0000000..329c557
--- /dev/null
+++ b/openecomp-ui/src/nfvo-components/notification/NotificationsConstants.js
@@ -0,0 +1,66 @@
+/*
+ * Copyright © 2016-2018 European Support Limited
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import UUID from 'uuid-js';
+
+export const actionTypes = {
+    ADD_NOTIFICATION: 'ADD_NOTIFICATION',
+    REMOVE_NOTIFICATION: 'REMOVE_NOTIFICATION'
+};
+
+export const notificationActions = {
+    showNotification: item => ({
+        type: actionTypes.ADD_NOTIFICATION,
+        payload: {
+            ...item,
+            id: UUID.create().toString()
+        }
+    }),
+
+    showSuccess: ({ title, message, timeout }) =>
+        notificationActions.showNotification({
+            title,
+            message,
+            timeout,
+            type: 'success'
+        }),
+    showInfo: ({ title, message, timeout }) =>
+        notificationActions.showNotification({
+            title,
+            message,
+            timeout,
+            type: 'info'
+        }),
+    showWarning: ({ title, message, timeout }) =>
+        notificationActions.showNotification({
+            title,
+            message,
+            timeout,
+            type: 'warning'
+        }),
+    showError: ({ title, message, timeout }) =>
+        notificationActions.showNotification({
+            title,
+            message,
+            timeout,
+            type: 'error'
+        }),
+    removeNotification: item => ({
+        type: actionTypes.REMOVE_NOTIFICATION,
+        payload: item
+    })
+};
+
+export const notificationTimeout = 4000;
