diff --git a/jams-common/src/main/java/module-info.java b/jams-common/src/main/java/module-info.java
index adb7faa162ab6a04cf0e93ef78487b0e87cb6db9..c91ea12317dd46010042f49e9b67f8247cddef65 100644
--- a/jams-common/src/main/java/module-info.java
+++ b/jams-common/src/main/java/module-info.java
@@ -45,6 +45,7 @@ module jams.common {
     exports net.jami.jams.common.authentication.activedirectory;
     opens net.jami.jams.common.authentication.activedirectory to ad.connector ;
     exports net.jami.jams.common.authentication.ldap;
+    exports net.jami.jams.common.jami;
     requires jdk.crypto.cryptoki;
     requires java.base;
     requires java.sql;
diff --git a/jams-common/src/main/java/net/jami/jams/common/jami/NameServer.java b/jams-common/src/main/java/net/jami/jams/common/jami/NameServer.java
new file mode 100644
index 0000000000000000000000000000000000000000..4d20f870d02e095c65aa5498741262e5f51ee483
--- /dev/null
+++ b/jams-common/src/main/java/net/jami/jams/common/jami/NameServer.java
@@ -0,0 +1,7 @@
+package net.jami.jams.common.jami;
+
+public interface NameServer {
+    Integer registerName();
+    String getAddressFromName();
+    String getNameFromAddress();
+}
diff --git a/jams-server/src/main/java/net/jami/jams/server/core/jaminamserver/LocalNameServer.java b/jams-server/src/main/java/net/jami/jams/server/core/jaminamserver/LocalNameServer.java
new file mode 100644
index 0000000000000000000000000000000000000000..2d932946566002bccb1e216b8e8cf52b5601165a
--- /dev/null
+++ b/jams-server/src/main/java/net/jami/jams/server/core/jaminamserver/LocalNameServer.java
@@ -0,0 +1,21 @@
+package net.jami.jams.server.core.jaminamserver;
+
+import net.jami.jams.common.jami.NameServer;
+
+public class LocalNameServer implements NameServer {
+
+    @Override
+    public Integer registerName() {
+        return null;
+    }
+
+    @Override
+    public String getAddressFromName() {
+        return null;
+    }
+
+    @Override
+    public String getNameFromAddress() {
+        return null;
+    }
+}
diff --git a/jams-server/src/main/java/net/jami/jams/server/core/jaminamserver/PublicNameServer.java b/jams-server/src/main/java/net/jami/jams/server/core/jaminamserver/PublicNameServer.java
new file mode 100644
index 0000000000000000000000000000000000000000..ef53973341116b9817b662a4b4e59a430fb7a6ef
--- /dev/null
+++ b/jams-server/src/main/java/net/jami/jams/server/core/jaminamserver/PublicNameServer.java
@@ -0,0 +1,21 @@
+package net.jami.jams.server.core.jaminamserver;
+
+import net.jami.jams.common.jami.NameServer;
+
+public class PublicNameServer implements NameServer {
+
+    @Override
+    public Integer registerName() {
+        return null;
+    }
+
+    @Override
+    public String getAddressFromName() {
+        return null;
+    }
+
+    @Override
+    public String getNameFromAddress() {
+        return null;
+    }
+}
diff --git a/jams-server/src/main/java/net/jami/jams/server/servlets/api/jaminameserver/AddressServlet.java b/jams-server/src/main/java/net/jami/jams/server/servlets/api/jaminameserver/AddressServlet.java
new file mode 100644
index 0000000000000000000000000000000000000000..4977f4115f3c17eaed03509217cb601ab14af4d5
--- /dev/null
+++ b/jams-server/src/main/java/net/jami/jams/server/servlets/api/jaminameserver/AddressServlet.java
@@ -0,0 +1,19 @@
+package net.jami.jams.server.servlets.api.jaminameserver;
+
+
+import jakarta.servlet.ServletException;
+import jakarta.servlet.annotation.WebServlet;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+
+import java.io.IOException;
+
+@WebServlet("/api/nameservice/addr/*")
+public class AddressServlet extends HttpServlet {
+
+    @Override
+    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+        super.doGet(req, resp);
+    }
+}
diff --git a/jams-server/src/main/java/net/jami/jams/server/servlets/api/jaminameserver/NameServlet.java b/jams-server/src/main/java/net/jami/jams/server/servlets/api/jaminameserver/NameServlet.java
new file mode 100644
index 0000000000000000000000000000000000000000..ebfd3239623b2fffccad6fbb81a678bbfefe4df1
--- /dev/null
+++ b/jams-server/src/main/java/net/jami/jams/server/servlets/api/jaminameserver/NameServlet.java
@@ -0,0 +1,18 @@
+package net.jami.jams.server.servlets.api.jaminameserver;
+
+import jakarta.servlet.ServletException;
+import jakarta.servlet.annotation.WebServlet;
+import jakarta.servlet.http.HttpServlet;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+
+import java.io.IOException;
+
+@WebServlet("/api/nameservice/name/*")
+public class NameServlet extends HttpServlet {
+
+    @Override
+    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+        super.doGet(req, resp);
+    }
+}