diff --git a/api/src/com/cloud/api/commands/ListEventTypesCmd.java b/api/src/com/cloud/api/commands/ListEventTypesCmd.java
new file mode 100644
index 00000000000..0a255343b33
--- /dev/null
+++ b/api/src/com/cloud/api/commands/ListEventTypesCmd.java
@@ -0,0 +1,61 @@
+/**
+ *  Copyright (C) 2010 Cloud.com, Inc.  All rights reserved.
+ * 
+ * This software is licensed under the GNU General Public License v3 or later.
+ * 
+ * It is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or any later version.
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see .
+ * 
+ */
+package com.cloud.api.commands;
+
+import java.util.ArrayList;
+
+import org.apache.log4j.Logger;
+
+import com.cloud.api.BaseCmd;
+import com.cloud.api.Implementation;
+import com.cloud.api.response.EventTypeResponse;
+import com.cloud.api.response.ListResponse;
+import com.cloud.user.Account;
+
+@Implementation(description = "List Event Types", responseObject = EventTypeResponse.class)
+public class ListEventTypesCmd extends BaseCmd {
+    public static final Logger s_logger = Logger.getLogger(ListEventTypesCmd.class.getName());
+    private static final String s_name = "listeventtypesresponse";
+
+    @Override
+    public String getCommandName() {
+        return s_name;
+    }
+
+    public long getEntityOwnerId() {
+        return Account.ACCOUNT_ID_SYSTEM;
+    }
+
+    @Override
+    public void execute() {
+        String[] result = _mgr.listEventTypes();
+        ListResponse response = new ListResponse();
+        ArrayList responses = new ArrayList();
+        if (result != null) {
+            for (String eventType : result) {
+                EventTypeResponse eventTypeResponse = new EventTypeResponse();
+                eventTypeResponse.setName(eventType);
+                eventTypeResponse.setObjectName("eventtype");
+                responses.add(eventTypeResponse);
+            }
+        }
+        response.setResponses(responses);
+        response.setResponseName(getCommandName());
+        this.setResponseObject(response);
+    }
+}
diff --git a/api/src/com/cloud/api/response/EventTypeResponse.java b/api/src/com/cloud/api/response/EventTypeResponse.java
new file mode 100644
index 00000000000..9453af67f87
--- /dev/null
+++ b/api/src/com/cloud/api/response/EventTypeResponse.java
@@ -0,0 +1,36 @@
+/**
+ *  Copyright (C) 2010 Cloud.com, Inc.  All rights reserved.
+ * 
+ * This software is licensed under the GNU General Public License v3 or later.
+ * 
+ * It is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or any later version.
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see .
+ * 
+ */
+
+package com.cloud.api.response;
+
+import com.cloud.api.ApiConstants;
+import com.cloud.serializer.Param;
+import com.google.gson.annotations.SerializedName;
+
+public class EventTypeResponse extends BaseResponse {
+    @SerializedName(ApiConstants.NAME) @Param(description="Event Type")
+    private String name;
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+}