diff --git a/config/schema/sharemessage.schema.yml b/config/schema/sharemessage.schema.yml
index bf07664..c25ec05 100644
--- a/config/schema/sharemessage.schema.yml
+++ b/config/schema/sharemessage.schema.yml
@@ -43,6 +43,9 @@ sharemessage.sharemessage.*:
     label:
       type: label
       label: 'Label'
+    weight:
+      type: integer
+      label: 'Share message weight'
     override_default_settings:
       type: boolean
       label: 'Override default settings'
diff --git a/src/Entity/Handler/ShareMessageListBuilder.php b/src/Entity/Handler/ShareMessageListBuilder.php
index bae38d9..fad9a0e 100644
--- a/src/Entity/Handler/ShareMessageListBuilder.php
+++ b/src/Entity/Handler/ShareMessageListBuilder.php
@@ -7,13 +7,20 @@
 
 namespace Drupal\sharemessage\Entity\Handler;
 
-use Drupal\Core\Config\Entity\ConfigEntityListBuilder;
+use Drupal\Core\Config\Entity\DraggableListBuilder;
 use Drupal\Core\Entity\EntityInterface;
 
 /**
  * Provides a listing of ShareMessages.
  */
-class ShareMessageListBuilder extends ConfigEntityListBuilder {
+class ShareMessageListBuilder extends DraggableListBuilder {
+
+  /**
+   * {@inheritdoc}
+   */
+  public function getFormId() {
+    return 'sharemessage_list_form';
+  }
 
   /**
    * {@inheritdoc}
diff --git a/src/Entity/ShareMessage.php b/src/Entity/ShareMessage.php
index 26dd572..68c7bea 100644
--- a/src/Entity/ShareMessage.php
+++ b/src/Entity/ShareMessage.php
@@ -27,7 +27,8 @@ use Drupal\Core\Url;
  *   },
  *   entity_keys = {
  *     "id" = "id",
- *     "label" = "label"
+ *     "label" = "label",
+ *     "weight" = "weight"
  *   },
  *   config_export = {
  *     "id",
