diff --git a/res/ari/ari_model_validators.c b/res/ari/ari_model_validators.c
index 007d7657fdf74a1a4488e449e75735bfbde9069d..97435d0252d93df9ed20cde4a4b4d831fcf166f6 100644
--- a/res/ari/ari_model_validators.c
+++ b/res/ari/ari_model_validators.c
@@ -3245,6 +3245,15 @@ int ast_ari_validate_channel_hold(struct ast_json *json)
 				res = 0;
 			}
 		} else
+		if (strcmp("musicclass", ast_json_object_iter_key(iter)) == 0) {
+			int prop_is_valid;
+			prop_is_valid = ast_ari_validate_string(
+				ast_json_object_iter_value(iter));
+			if (!prop_is_valid) {
+				ast_log(LOG_ERROR, "ARI ChannelHold field musicclass failed validation\n");
+				res = 0;
+			}
+		} else
 		{
 			ast_log(LOG_ERROR,
 				"ARI ChannelHold has undocumented field %s\n",
diff --git a/res/ari/ari_model_validators.h b/res/ari/ari_model_validators.h
index 9cb1bc32cb39262501bef27792c753f207dd7dff..1fafba3b5d9ecbb4bf6218c5e94f90fa58c26047 100644
--- a/res/ari/ari_model_validators.h
+++ b/res/ari/ari_model_validators.h
@@ -1434,6 +1434,7 @@ ari_validator ast_ari_validate_application_fn(void);
  * - application: string (required)
  * - timestamp: Date
  * - channel: Channel (required)
+ * - musicclass: string
  * ChannelLeftBridge
  * - type: string (required)
  * - application: string (required)
diff --git a/rest-api/api-docs/events.json b/rest-api/api-docs/events.json
index f5e61f9ad9f3acb790e474189b2eff92b45373d8..35c9377e50a74a9886143e5b081534dacd75c98a 100644
--- a/rest-api/api-docs/events.json
+++ b/rest-api/api-docs/events.json
@@ -608,6 +608,11 @@
 					"required": true,
 					"type": "Channel",
 					"description": "The channel that initiated the hold event."
+				},
+				"musicclass": {
+					"required": false,
+					"type": "string",
+					"description": "The music on hold class that the initiator requested."
 				}
 			}
 		},