diff --git a/config-models/aether-4.x/files/yang/onf-application.yang b/config-models/aether-4.x/files/yang/onf-application.yang
new file mode 100755
index 0000000..0f7d4b6
--- /dev/null
+++ b/config-models/aether-4.x/files/yang/onf-application.yang
@@ -0,0 +1,114 @@
+// SPDX-FileCopyrightText: 2021 Open Networking Foundation
+//
+// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
+
+module onf-application {
+  namespace "http://opennetworking.org/enterprise/application";
+  prefix app;
+
+  import ietf-inet-types{ prefix ietf; }
+  import ietf-yang-types{ prefix yg; }
+  import onf-aether-types{ prefix at; }
+  import onf-enterprise{ prefix ent; }
+
+  organization "Open Networking Foundation.";
+  contact "Scott Baker";
+  description 
+    "An Aether Application is an application that devices may
+     connect to. Includes a set of endpoints where services are
+     provided.";
+
+  revision "2021-09-10" {
+    description "Aether Application.";
+    reference "RFC 6087";
+  }
+
+  typedef application-id {
+        type yg:yang-identifier {
+            length 1..32;
+        }
+  }
+
+  container application {
+    description "The top level container";
+
+    list application {
+      key "id";
+      description
+        "List of applications";
+
+      leaf id {
+        type application-id;
+        description "ID for this application.";
+      }
+
+      leaf display-name {
+        type string {
+            length 1..80;
+        }
+        description "display name to use in GUI or CLI";
+      }
+
+      leaf description {
+        type at:description;
+        description "description of this application";
+      }
+
+      list endpoint {
+        key "name";
+        max-elements 1;
+        leaf name {
+          type string;
+          description
+              "Name of this endpoint";
+        }
+        leaf address {
+          type ietf:host;
+          mandatory true;
+          description
+              "Address of this endpoint. Either a hostname, and IP, or a subnet.";
+        }
+        leaf port-start {
+          type ietf:port-number;
+          mandatory true;
+          description
+              "First port in range";
+        }
+        leaf port-end {
+          type ietf:port-number;
+          description
+              "Last port in range";
+        }
+        leaf protocol {
+          type at:protocol;
+          description
+              "Name of this endpoint";
+        }                   
+      }
+
+      leaf enterprise {
+        type leafref {
+          path "/ent:enterprise/ent:enterprise/ent:id";
+        }
+        mandatory true;
+        description
+          "Link to enterprise that owns this Application. May be set to None if the application is global to all Enterprises.";
+      }
+
+      container mbr {
+        description "Maximum bitrate";
+        leaf uplink {
+          type at:bitrate;
+          units mbr;
+          description "Per-Application mbr uplink data rate in mbps";
+        }
+
+        leaf downlink {
+          type at:bitrate;
+          units mbr;
+          description "Per-Application mbr downlink data rate in mbps";
+        }
+      }      
+    }
+  } 
+}
