diff --git a/.env b/.env
new file mode 100644
index 0000000000000000000000000000000000000000..be824930b9d0ec33c18cfa346720ff94e64aeec1
--- /dev/null
+++ b/.env
@@ -0,0 +1,4 @@
+NODE_ENV=development
+SERVICE_BASE_URL=https://30dd-206-84-239-127.ngrok-free.app
+SERVICE_PORT=5000
+LOG_LEVEL=debug
diff --git a/api/models/template.js b/api/models/template.js
index 98426ca9bfbcf2b0828eebb1b286412f91a933d5..d1de02750e8d9344a6224b288f915cab1e41b1ba 100644
--- a/api/models/template.js
+++ b/api/models/template.js
@@ -13,6 +13,11 @@ const WidgetRefSchema = new Schema({
 const TemplateSchema = new Schema({
     name: { type: String, required: true },
     desc: { type: String },
+    platform: { 
+        type: String, 
+        enum: ['web', 'mobile', 'both'], 
+        required: true 
+      },
     widgets: [WidgetRefSchema],
     hashId: { type: String, unique: true, required: true },
     createdAt: { type: Date, default: Date.now },
diff --git a/api/template/business.js b/api/template/business.js
index 50653188ab408e84e0b415b34875de56afa93483..c42fc3bd1f8632b90a90d05e47e16a8a8103b85c 100644
--- a/api/template/business.js
+++ b/api/template/business.js
@@ -14,9 +14,9 @@ const updateAndMapWidget = async (page,widgetId,position, startTime, endTime) =>
 
 };
 
-const createTemplate = async (name, desc, widgets, hashId) => {
+const createTemplate = async (name, desc,platform, widgets, hashId) => {
   try {
-    const response = await templateService.createTemplate(name, desc, widgets, hashId);
+    const response = await templateService.createTemplate(name, desc,platform, widgets, hashId);
     return { status: '200', response }
   } catch (error) {
     throw error
@@ -24,9 +24,9 @@ const createTemplate = async (name, desc, widgets, hashId) => {
 
 };
 
-const getParticularTemplate = async (page) => {
+const getParticularTemplate = async (page,platform) => {
   try {
-    const response = await templateService.getParticularTemplate(page);
+    const response = await templateService.getParticularTemplate(page,platform);
     console.log(page,"Pagessssssss");
     return { status: '200', response }
   } catch (error) {
diff --git a/api/template/controller.js b/api/template/controller.js
index fb4786479a42493797b8269d8d96b94c3dbd09ee..a8cc12034e16876014791771c1887ea03329d3bb 100644
--- a/api/template/controller.js
+++ b/api/template/controller.js
@@ -18,8 +18,8 @@ const updateAndMapWidget = async (req, res, next) => {
 
 const createTemplate = async (req, res, next) => {
   try {
-    const { name, desc, widgets, hashId } = req.body;
-    const response = await templateBusiness.createTemplate(name, desc, widgets, hashId);
+    const { name, desc,platform, widgets, hashId } = req.body;
+    const response = await templateBusiness.createTemplate(name, desc,platform, widgets, hashId);
     return res.status(response.status).json({ data: response });
   } catch (error) {
     throw error
@@ -29,8 +29,8 @@ const createTemplate = async (req, res, next) => {
 const getParticularTemplate = async (req, res) => {
   try {
     console.log("GET template details of a particular page");
-    const { page } = req.params;
-    const response = await templateBusiness.getParticularTemplate(page);
+    const { page,platform } = req.params;
+    const response = await templateBusiness.getParticularTemplate(page,platform);
     return res.status(response.status).json({ data: response });
   } catch (error) {
     throw error;
diff --git a/api/template/service.js b/api/template/service.js
index 2d172f80cf95a58ae3996d033f56a178d027cfd2..1bcae567540a31315475064f4acd1cc2771dc49c 100644
--- a/api/template/service.js
+++ b/api/template/service.js
@@ -37,12 +37,12 @@ const updateAndMapWidget = async (page,widgetId,position, startTime, endTime) =>
 
 };
 
-const createTemplate = async (name, desc, widgets, hashId) => {
+const createTemplate = async (name, desc, platform, widgets, hashId) => {
   try {
-    console.log("in service")
     const newTemplate = new Template({
       name,
       desc,
+      platform,
       widgets,
       hashId
     });
@@ -56,13 +56,11 @@ const createTemplate = async (name, desc, widgets, hashId) => {
 
 };
 
-const getParticularTemplate = async (page,res) => {
+const getParticularTemplate = async (page,platform) => {
   try {
-    const template = await Template.findOne({ name: page}).populate('widgets.widgetId');
+    const template = await Template.findOne({ name: page,platform}).populate('widgets.widgetId');
     if (!template) {
-      // return res.status(404).json({ error: 'Template not found' });
-      console.error('Template not found');
-      res.status(404).send();
+      return res.status(404).json({ error: 'Template not found' });
     }
     return template;
   } catch (error) {
diff --git a/package.json b/package.json
index 67e81ce2539b9773c56c009cc04aaebddef40e72..0e24b61f394f6fb0c6071a643e3d3ae672da8b19 100644
--- a/package.json
+++ b/package.json
@@ -11,6 +11,7 @@
   "license": "ISC",
   "dependencies": {
     "body-parser": "^1.20.2",
+    "dotenv": "^16.4.5",
     "express": "^4.19.2",
     "mongoose": "^8.6.0",
     "nodemon": "^3.1.4",
diff --git a/server.js b/server.js
index 524f6cb34b36594784eee390a1e75c406b604ff8..f8fe990819079e79b36a888f3c77ca03a1f6bd99 100644
--- a/server.js
+++ b/server.js
@@ -1,4 +1,4 @@
-// server.js
+require('dotenv').config();
 const express = require('express');
 const bodyParser = require('body-parser');
 const swaggerUi = require('swagger-ui-express');
@@ -19,10 +19,11 @@ app.use('/api-docs', swaggerUi.serve, swaggerUi.setup(swaggerDocument));
 // API base URL
 app.use(apiBaseRouter);
 
-
 // Start the server
-const PORT = process.env.PORT || 5000;
+const PORT = process.env.SERVICE_PORT || 5000;
+const BASE_URL = process.env.SERVICE_BASE_URL || `http://localhost:${PORT}`;
+
 app.listen(PORT, () => {
     console.log(`Server is running on port ${PORT}`);
-    console.log(`Swagger UI available at http://localhost:${PORT}/api-docs`);
+    console.log(`Swagger UI available at ${BASE_URL}/api-docs`);
 });
diff --git a/swagger.yaml b/swagger.yaml
index 812af00b4f006f197380c03fae8bb1ca83dca530..63757fda8507a69fba3cbf4baa84384bdff69ff5 100644
--- a/swagger.yaml
+++ b/swagger.yaml
@@ -21,6 +21,12 @@ paths:
           schema:
             type: string
           description: The page for which template details are requested.
+        - in: path
+          name: platform
+          required: true
+          schema:
+            type: string
+          description: The platform for which template details are requested.
       responses:
         '200':
           description: Template retrieved successfully
@@ -313,6 +319,11 @@ paths:
                   type: string
                   description: A description of the template
                   example: "Template for the homepage widget"
+                platform:
+                  type: string
+                  enum: ['web', 'mobile', 'both']
+                  description: The platform for which the template is intended
+                  example: "web"
                 widgets:
                   type: array
                   description: A list of widgets mapped to the template