diff --git a/routes/jami.js b/routes/jami.js
index 4f5de6d..c5f59bb 100644
--- a/routes/jami.js
+++ b/routes/jami.js
@@ -247,8 +247,8 @@
       this.jami
         .lookupName(req.params.accountId || '', req.params.nameQuery)
         .then((result) => {
-          if (result.state == 0) res.json(result);
-          else if (result.state == 1) res.status(400).json({});
+          if (result.state === 0) res.json(result);
+          else if (result.state === 1) res.status(400).json({});
           else res.status(404).json({});
         })
         .catch((e) => {
@@ -261,8 +261,8 @@
       this.jami
         .lookupAddress(req.params.accountId || '', req.params.addrQuery)
         .then((result) => {
-          if (result.state == 0) res.json(result);
-          else if (result.state == 1) res.status(400).json({});
+          if (result.state === 0) res.json(result);
+          else if (result.state === 1) res.status(400).json({});
           else res.status(404).json({});
         })
         .catch((e) => {
