diff --git a/src/libs/routes_v1/expenses.js b/src/libs/routes_v1/expenses.js
index 40f41166844abe3a41167ff459c84f52aec21749..0e578f2e663414eb3641496670685e710b221ac1 100644
--- a/src/libs/routes_v1/expenses.js
+++ b/src/libs/routes_v1/expenses.js
@@ -51,6 +51,14 @@ ExpensesApp.get('/years', (req, res, next) => {
     next();
 }, query, response('years'))
 
+ExpensesApp.get('/type', (req, res, next) => {
+    req.result = []
+
+    req.result.push({ id: 1, name: "Rede Estadual" });
+    req.result.push({ id: 2, name: "Rede Municipal" });
+    next();
+}, response('type'));
+
 // rqf.addValue({
 //     name: 'location',
 //     table: 'despesas',
@@ -111,6 +119,8 @@ rqf.addField({
 
 ExpensesApp.get('/', rqf.parse(), rqf.build(),  (req, res, next) => {
 
+    let obj = {}
+    let typeFilter = false;
     let whereCondition = req.query.filter.includes("region") ? "" : "despesas.cod_ibge = 0";
     let filterId;
     const filters = req.query.filter.split(",");
@@ -121,14 +131,31 @@ ExpensesApp.get('/', rqf.parse(), rqf.build(),  (req, res, next) => {
         }
     })
 
-    req.sql.from('despesas')
-    .field('despesas.ano_censo', 'year')
-    .field('despesas.ano_censo', 'total_ano')
-    .field('despesas.nome_ente', 'total_nome_ente')
-    .field('round(despesas.despesas,2)', 'total')
-    .where(`${whereCondition}`)
-    .order('despesas.ano_censo')
-    
+    if (req.query.filter) {
+        const jsonString = `{${req.query.filter.replace(/(\w+):/g, '"$1":')}}`;
+        obj = JSON.parse(jsonString);
+        if (obj.type) {
+            if (obj.type.includes("1") && !obj.type.includes("2")) {
+                whereCondition = "despesas.cod_ibge >= 11 and despesas.cod_ibge <= 53"
+            }
+            else if (obj.type.includes("2") && !obj.type.includes("1")) {
+                whereCondition = "despesas.cod_ibge > 53"
+            }
+
+            typeFilter = true;
+        }
+    }
+
+    if (!typeFilter || (typeFilter && (!obj.state && !obj.city && !obj.region))) {
+        req.sql.from('despesas')
+        .field('despesas.ano_censo', 'year')
+        .field('despesas.ano_censo', 'total_ano')
+        .field('despesas.nome_ente', 'total_nome_ente')
+        .field('round(despesas.despesas,2)', 'total')
+        .where(`${whereCondition}`)
+        .order('despesas.ano_censo')
+    }
+
     next();
 }, query, id2str.transform(false), response('expenses'));