diff --git a/src/cxxcaosdbcli.cpp b/src/cxxcaosdbcli.cpp
index 201875812efdd7e06d6b8b3391ff6df7cdd56999..3fad499e39020e99fb1e4614a608908917193b88 100644
--- a/src/cxxcaosdbcli.cpp
+++ b/src/cxxcaosdbcli.cpp
@@ -122,7 +122,7 @@ auto retrieve_role(const std::string &name) {
 auto create_role(const std::string &name) {
   const auto &connection = caosdb::connection::ConnectionManager::GetDefaultConnection();
   Role role(name);
-  connection->CreateSingleRole(name);
+  connection->CreateSingleRole(role);
   std::cout << "OK" << std::endl;
 }
 
@@ -173,7 +173,7 @@ auto main(int argc, const char *argv[]) -> int {
     } else if (vm.count("list-roles") != 0U) {
       list_roles();
     } else if (vm.count("retrieve-role") != 0U) {
-    } else if (vm.count("retrieve")) != 0U {
+    } else if (vm.count("retrieve") != 0U) {
     } else if (vm.count("create-role") != 0U) {
     } else if (vm.count("delete-role") != 0U) {
     } else if (vm.count("execute-query") != 0U) {