diff --git a/src/libs/app.js b/src/libs/app.js
index f03e2282a34a74e3fde8c1183515df4670b35d4b..736257209866264db4979c047a1db21858676351 100644
--- a/src/libs/app.js
+++ b/src/libs/app.js
@@ -8,13 +8,11 @@ const compression = require('compression');
 const log = require('./log')(module);
 
 const config = require('./config');
-const cache = require('apicache').options({ debug: config.get('debug') }).middleware;
 
 const app = express();
 
 const api = require('./routes/api');
 
-
 const passport = require('passport');
 
 app.use(passport.initialize());
@@ -26,7 +24,6 @@ app.use(bodyParser.urlencoded({ extended: false }));
 app.use(cookieParser());
 app.use(cors());
 app.use(methodOverride());
-app.use(cache('1 day'));
 app.use(compression(9));
 app.use(api);
 
diff --git a/src/libs/routes/api.js b/src/libs/routes/api.js
index a1805696172afccb4ca747a31b8db42e3bcc5962..ac005ffb9825cdc5038dba56eb131bcf010040ea 100644
--- a/src/libs/routes/api.js
+++ b/src/libs/routes/api.js
@@ -2,6 +2,12 @@ const express = require('express');
 
 const api = express();
 
+const libs = `${process.cwd()}/libs`;
+
+const config = require(`${libs}/config`);
+
+const cache = require('apicache').options({ debug: config.get('debug') }).middleware;
+
 const enrollment = require('./enrollment');
 
 const state = require('./state');
@@ -19,11 +25,11 @@ api.get('/', (req, res) => {
 });
 
 // mount API routes
-api.use('/api/v1/enrollment', enrollment);
-api.use('/api/v1/state', state);
-api.use('/api/v1/region', region);
-api.use('/api/v1/city', city);
-api.use('/api/v1/school', school);
+api.use('/api/v1/enrollment', cache('1 day'), enrollment);
+api.use('/api/v1/state', cache('15 day'), state);
+api.use('/api/v1/region', cache('15 day'), region);
+api.use('/api/v1/city', cache('15 day'), city);
+api.use('/api/v1/school', cache('15 day'), school);
 api.use('/api/v1/user', user);
 
 module.exports = api;