diff --git a/src/api/newcallmodel.h b/src/api/newcallmodel.h
index 65138c493efd65d0ed72f7cf32707b0a97a30994..e9c8bd42319df1ed60b7e93a89e49dc65fa91cf4 100644
--- a/src/api/newcallmodel.h
+++ b/src/api/newcallmodel.h
@@ -121,6 +121,11 @@ public:
      * @param callId
      */
     void hangUp(const std::string& callId) const;
+    /**
+     * Refuse a call
+     * @param callId
+     */
+    void refuse(const std::string& callId) const;
     /**
      * Toggle audio record on a call
      * @param callId
diff --git a/src/newcallmodel.cpp b/src/newcallmodel.cpp
index cb9dc2b58c970182c19f5a59e9c32683b6036451..126d07f1b86387ecc64cc22d52b876ca4acd5c96 100644
--- a/src/newcallmodel.cpp
+++ b/src/newcallmodel.cpp
@@ -220,6 +220,13 @@ NewCallModel::hangUp(const std::string& callId) const
     }
 }
 
+void
+NewCallModel::refuse(const std::string& callId) const
+{
+    if (!hasCall(callId)) return;
+    CallManager::instance().refuse(callId.c_str());
+}
+
 void
 NewCallModel::toggleAudioRecord(const std::string& callId) const
 {