diff --git a/sensu/files/checks/check_ceilometer-api b/sensu/files/checks/check_ceilometer-api
new file mode 100755
index 0000000..4e9111a
--- /dev/null
+++ b/sensu/files/checks/check_ceilometer-api
@@ -0,0 +1,83 @@
+#!/bin/bash
+#
+# Ceilometer API monitoring script for Nagios
+#
+# Copyright © 2013 eNovance <licensing@enovance.com>
+#
+# Author: Emilien Macchi <emilien.macchi@enovance.com>
+#
+# This program 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
+# (at your option) 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 <http://www.gnu.org/licenses/>.
+#
+
+set -e
+
+STATE_OK=0
+STATE_WARNING=1
+STATE_CRITICAL=2
+STATE_UNKNOWN=3
+STATE_DEPENDENT=4
+
+usage ()
+{
+    echo "Usage: $0 [OPTIONS]"
+    echo " -h               Get help"
+    echo " -H <Auth URL>    URL for obtaining an auth token"
+    echo " -U <username>    Username to use to get an auth token"
+    echo " -T <tenant>      Tenant to use to get an auth token"
+    echo " -P <password>    Password to use ro get an auth token"
+}
+
+while getopts 'h:H:U:T:P:' OPTION
+do
+    case $OPTION in
+        h)
+            usage
+            exit 0
+            ;;
+        H)
+            export OS_AUTH_URL=$OPTARG
+            ;;
+        U)
+            export OS_USERNAME=$OPTARG
+            ;;
+        T)
+            export OS_TENANT_NAME=$OPTARG
+            ;;
+        P)
+            export OS_PASSWORD=$OPTARG
+            ;;
+        *)
+            usage
+            exit 1
+            ;;
+    esac
+done
+
+
+if ! which ceilometer >/dev/null 2>&1
+then
+    echo "python-ceilometerclient is not installed."
+    exit $STATE_UNKNOWN
+fi
+
+
+if ! KEY=$(ceilometer meter-list 2>/dev/null)
+then
+    echo "Unable to list meters"
+    exit $STATE_CRITICAL
+fi
+
+count=$(($(ceilometer meter-list 2>/dev/null | wc -l)-4))
+
+echo "Ceilometer API is working with $count meters."
