diff --git a/rest-api-spec/api/index.json b/rest-api-spec/api/index.json
index 9be5384532b..2d514e5229f 100644
--- a/rest-api-spec/api/index.json
+++ b/rest-api-spec/api/index.json
@@ -7,39 +7,84 @@
       "paths": ["/{index}/{type}", "/{index}/{type}/{id}", "/{index}/{type}/{id}/_create"],
       "parts": {
         "id": {
+          "type" : "string",
+          "description" : "Document ID"
         },
         "index": {
+          "type" : "string",
+          "required" : true,
+          "description" : "The name of the index"
         },
         "type": {
+          "type" : "string",
+          "required" : true,
+          "description" : "The type of the document"
         }
       },
       "params": {
         "consistency": {
+          "type" : "enum",
+          "options" : ["one", "quorum", "all"],
+          "description" : "Explicit write consistency setting for the operation"
         },
         "id": {
+          "type" : "string",
+          "description" : "Specific document ID (when the POST method is used)"
         },
         "op_type": {
+          "type" : "enum",
+          "options" : ["index", "create"],
+          "default" : "index",
+          "description" : "Explicit operation type"
         },
         "parent": {
+          "type" : "string",
+          "description" : "ID of the parent document"
         },
         "percolate": {
+          "type" : "string",
+          "description" : "Percolator queries to execute while indexing the document"
         },
         "refresh": {
+          "type" : "boolean",
+          "description" : "Refresh the index after performing the operation"
         },
         "replication": {
+          "type" : "enum",
+          "options" : ["sync","async"],
+          "default" : "sync",
+          "description" : "Specific replication type"
         },
         "routing": {
+          "type" : "string",
+          "description" : "Specific routing value"
         },
         "timeout": {
+          "type" : "time",
+          "description" : "Explicit operation timeout"
         },
         "timestamp": {
+          "type" : "time",
+          "description" : "Explicit timestamp for the document"
         },
         "ttl": {
+          "type" : "duration",
+          "description" : "Expiration time for the document"
+        },
+        "version" : {
+          "type" : "number",
+          "description" : "Explicit version number for concurrency control"
         },
         "version_type": {
+          "type" : "enum",
+          "options" : ["internal","external"],
+          "description" : "Specific version type"
         }
       }
     },
-    "body": null
+    "body": {
+      "description" : "The document",
+      "required" : true
+    }
   }
 }