diff --git a/appc-inbound/appc-artifact-handler/model/src/main/.gitignore b/appc-inbound/appc-artifact-handler/model/src/main/.gitignore
new file mode 100755
index 0000000..380e77f
--- /dev/null
+++ b/appc-inbound/appc-artifact-handler/model/src/main/.gitignore
@@ -0,0 +1 @@
+/yang-gen-sal/
diff --git a/appc-inbound/appc-artifact-handler/model/src/main/yang/artifact-handler.yang b/appc-inbound/appc-artifact-handler/model/src/main/yang/artifact-handler.yang
new file mode 100644
index 0000000..1839fbd
--- /dev/null
+++ b/appc-inbound/appc-artifact-handler/model/src/main/yang/artifact-handler.yang
@@ -0,0 +1,139 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APPC
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Copyright (C) 2017 Amdocs
+ * =============================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * 
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ * ============LICENSE_END=========================================================
+ */
+
+module artifact-handler {
+    yang-version 1;
+
+    namespace "org.openecomp.appc:artifacthandler";
+    prefix artifacthandler;
+
+    import ietf-inet-types { prefix "ietf"; revision-date "2010-09-24"; }
+    organization "AT&T, Inc.";
+
+    description
+        "Defines APPC interface to push reference data and templates.";
+
+    revision "2017-03-21" {
+        description
+                "Initial draft";
+    }
+
+    grouping configuration-document-information { 
+        uses request-information; 
+        uses document-parameters; 
+     }
+    
+     grouping request-information { 
+        container request-information { 
+           leaf request-id { 
+              type string; 
+           } 
+           leaf request-action { 
+              type enumeration { 
+                 enum "StoreAsdcDocumentRequest";
+              } 
+           } 
+           leaf request-sub-action { 
+              type enumeration { 
+                 enum "STOREDOCUMENT";
+              } 
+           } 
+           leaf source { 
+              type string; 
+           } 
+        } 
+     }
+     grouping document-parameters { 
+        container document-parameters { 
+           leaf service-uuid { 
+              type string; 
+              mandatory true; 
+           } 
+           leaf distribution-id { 
+              type string; 
+           } 
+           leaf service-name { 
+              type string; 
+           } 
+           leaf service-description { 
+              type string; 
+           } 
+           leaf service-artifacts { 
+              type string; 
+           } 
+           leaf resource-uuid { 
+              type string; 
+           } 
+           leaf resource-instance-name { 
+              type string; 
+           } 
+           leaf resource-name { 
+              type string; 
+           } 
+           leaf resource-version { 
+              type string; 
+           } 
+           leaf resource-type { 
+              type string; 
+           } 
+           leaf artifact-uuid { 
+              type string; 
+           } 
+           leaf artifact-name { 
+              type string; 
+           } 
+           leaf artifact-type { 
+              type string; 
+           } 
+           leaf artifact-version { 
+              type string; 
+           } 
+           leaf artifact-description { 
+              type string; 
+           } 
+           leaf artifact-contents { 
+              type string; 
+           } 
+        } 
+     }
+     rpc uploadartifact {
+         description "upload the artifact into APPC";
+         input {
+         	uses configuration-document-information;
+         }
+         output { 
+             container config-document-response { 
+                leaf request-id { 
+                   type string; 
+                } 
+                leaf status { 
+                   type string; 
+                } 
+                leaf error-reason { 
+                   type string; 
+                } 
+             } 
+          }
+     }     
+}
