diff --git a/res/ari/resource_channels.h b/res/ari/resource_channels.h
index f68db2f5b32d931fb7df5e805a5d7550bf61ce6e..b071d08baf237a59bcbbc7b2994e16783770cdeb 100644
--- a/res/ari/resource_channels.h
+++ b/res/ari/resource_channels.h
@@ -78,7 +78,7 @@ struct ast_ari_channels_originate_args {
 	const char *other_channel_id;
 	/*! The unique id of the channel which is originating this one. */
 	const char *originator;
-	/*! The format name capability list to use if originator is not specified. Ex. "ulaw,slin16".  Format names an be found with "core show codecs". */
+	/*! The format name capability list to use if originator is not specified. Ex. "ulaw,slin16".  Format names can be found with "core show codecs". */
 	const char *formats;
 };
 /*!
@@ -179,7 +179,7 @@ struct ast_ari_channels_originate_with_id_args {
 	const char *other_channel_id;
 	/*! The unique id of the channel which is originating this one. */
 	const char *originator;
-	/*! The format name capability list to use if originator is not specified. Ex. "ulaw,slin16".  Format names an be found with "core show codecs". */
+	/*! The format name capability list to use if originator is not specified. Ex. "ulaw,slin16".  Format names can be found with "core show codecs". */
 	const char *formats;
 };
 /*!
diff --git a/res/res_ari_applications.c b/res/res_ari_applications.c
index 951ee85b7c5dd02c428c39e798fd75220dc64eff..21d9f56eb0003865e267aa89134e6776286f1851 100644
--- a/res/res_ari_applications.c
+++ b/res/res_ari_applications.c
@@ -490,19 +490,24 @@ static struct stasis_rest_handlers applications = {
 	.children = { &applications_applicationName, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&applications);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&applications);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&applications);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Stasis application resources",
diff --git a/res/res_ari_asterisk.c b/res/res_ari_asterisk.c
index 1dbd850bb4cde97a62afe33765ae83bf58794c92..89517ccae0c6d537c71ec04818fd21eb35b23f7a 100644
--- a/res/res_ari_asterisk.c
+++ b/res/res_ari_asterisk.c
@@ -1211,19 +1211,24 @@ static struct stasis_rest_handlers asterisk = {
 	.children = { &asterisk_config,&asterisk_info,&asterisk_modules,&asterisk_logging,&asterisk_variable, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&asterisk);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&asterisk);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&asterisk);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Asterisk resources",
diff --git a/res/res_ari_bridges.c b/res/res_ari_bridges.c
index e61865e311a3bfc45e0273f1d3425ffd53de569f..5402c2b995e13f8404fdb579904ab68b7af35dfb 100644
--- a/res/res_ari_bridges.c
+++ b/res/res_ari_bridges.c
@@ -1537,19 +1537,24 @@ static struct stasis_rest_handlers bridges = {
 	.children = { &bridges_bridgeId, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&bridges);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&bridges);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&bridges);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Bridge resources",
diff --git a/res/res_ari_channels.c b/res/res_ari_channels.c
index 739eb0135bb98641e4a3fb925ca1628fd9afd052..9d218e2beefb360832e7e9a7d549e1cba14fb749 100644
--- a/res/res_ari_channels.c
+++ b/res/res_ari_channels.c
@@ -2841,19 +2841,24 @@ static struct stasis_rest_handlers channels = {
 	.children = { &channels_create,&channels_channelId, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&channels);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&channels);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&channels);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Channel resources",
diff --git a/res/res_ari_device_states.c b/res/res_ari_device_states.c
index b2aea525e7432bc836694ca09b6c6c44ebe2b49c..d6de5dff86919990c1fc4db6ea46960bb7121194 100644
--- a/res/res_ari_device_states.c
+++ b/res/res_ari_device_states.c
@@ -321,19 +321,24 @@ static struct stasis_rest_handlers deviceStates = {
 	.children = { &deviceStates_deviceName, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&deviceStates);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&deviceStates);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&deviceStates);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Device state resources",
diff --git a/res/res_ari_endpoints.c b/res/res_ari_endpoints.c
index 944146fcb530cd5af39d1d733994b910c886c7d0..d96de0877bf10751826eca60c2f5c5e02a4e7db5 100644
--- a/res/res_ari_endpoints.c
+++ b/res/res_ari_endpoints.c
@@ -445,19 +445,24 @@ static struct stasis_rest_handlers endpoints = {
 	.children = { &endpoints_sendMessage,&endpoints_tech, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&endpoints);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&endpoints);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&endpoints);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Endpoint resources",
diff --git a/res/res_ari_events.c b/res/res_ari_events.c
index 76b791719921dbeec59fae6cef94abda5441b3d1..3f5b89a440ee527e222a6f91ed4f44af1f7c97dc 100644
--- a/res/res_ari_events.c
+++ b/res/res_ari_events.c
@@ -454,7 +454,6 @@ static int load_module(void)
 	res |= ast_websocket_server_add_protocol2(events.ws_server, protocol);
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&events);
-
 	if (res) {
 		unload_module();
 		return AST_MODULE_LOAD_DECLINE;
diff --git a/res/res_ari_mailboxes.c b/res/res_ari_mailboxes.c
index 2eac609872ae71f03b7eb0875685d101d2bfa6eb..12c33cd8847ba092f33755f1b9abed87e8011f99 100644
--- a/res/res_ari_mailboxes.c
+++ b/res/res_ari_mailboxes.c
@@ -327,19 +327,24 @@ static struct stasis_rest_handlers mailboxes = {
 	.children = { &mailboxes_mailboxName, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&mailboxes);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&mailboxes);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&mailboxes);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Mailboxes resources",
diff --git a/res/res_ari_playbacks.c b/res/res_ari_playbacks.c
index 8267a91b5a2182f3669e17985dbeeb935131e361..e2c432db031ddc393340c21a55594bd86a122299 100644
--- a/res/res_ari_playbacks.c
+++ b/res/res_ari_playbacks.c
@@ -279,19 +279,24 @@ static struct stasis_rest_handlers playbacks = {
 	.children = { &playbacks_playbackId, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&playbacks);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&playbacks);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&playbacks);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Playback control resources",
diff --git a/res/res_ari_recordings.c b/res/res_ari_recordings.c
index e82605c7bc7ae4105f211560855702d915302487..57d80f2e0fea78fc9d6dfecdd23c24a3836d7d6f 100644
--- a/res/res_ari_recordings.c
+++ b/res/res_ari_recordings.c
@@ -863,19 +863,24 @@ static struct stasis_rest_handlers recordings = {
 	.children = { &recordings_stored,&recordings_live, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&recordings);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&recordings);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&recordings);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Recording resources",
diff --git a/res/res_ari_sounds.c b/res/res_ari_sounds.c
index fe0692f166806ce042a12a479b3cc3a8d8f4d2c1..fded7fbced53013a62022cf912ad29acde55d961 100644
--- a/res/res_ari_sounds.c
+++ b/res/res_ari_sounds.c
@@ -209,19 +209,24 @@ static struct stasis_rest_handlers sounds = {
 	.children = { &sounds_soundId, }
 };
 
+static int unload_module(void)
+{
+	ast_ari_remove_handler(&sounds);
+	stasis_app_unref();
+	return 0;
+}
+
 static int load_module(void)
 {
 	int res = 0;
 	stasis_app_ref();
 	res |= ast_ari_add_handler(&sounds);
-	return res;
-}
+	if (res) {
+		unload_module();
+		return AST_MODULE_LOAD_DECLINE;
+	}
 
-static int unload_module(void)
-{
-	ast_ari_remove_handler(&sounds);
-	stasis_app_unref();
-	return 0;
+	return AST_MODULE_LOAD_SUCCESS;
 }
 
 AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_DEFAULT, "RESTful API module - Sound resources",