diff --git a/hybridauth.api.php b/hybridauth.api.php
index b890dd8..01f5cc7 100644
--- a/hybridauth.api.php
+++ b/hybridauth.api.php
@@ -138,3 +138,15 @@ function hook_hybridauth_user_login($account, $data) {
 function hook_hybridauth_forms_list_alter(&$forms) {
 
 }
+
+/**
+ * Invoked when a new user account is not created because he has not been 
+ * activated or is blocked.
+ * @param array $identity
+ * HybridAuth identity data.
+ * @param array $data
+ * HybridAuth data.
+ */
+function hook_hybridauth_blocked_identity($identity, $data) {
+
+}
diff --git a/hybridauth.pages.inc b/hybridauth.pages.inc
index 8e426fe..ca6916a 100644
--- a/hybridauth.pages.inc
+++ b/hybridauth.pages.inc
@@ -248,6 +248,7 @@ function _hybridauth_window_process_auth($data) {
   if ($identity = _hybridauth_identity_load($data)) {
     // Check if user is blocked.
     if ($account = _hybridauth_user_is_blocked_by_uid($identity['uid'])) {
+      module_invoke_all('hybridauth_blocked_identity', $identity, $data);
       drupal_set_message(t('The username %name has not been activated or is blocked.', array('%name' => $account->name)), 'error');
     }
     // Check for email verification timestamp.
