func insert(data interface{}, c *mgo.Collection, w http.ResponseWriter) { err := c.Insert(data) if err != nil { writeError(w, 500, "Document insertion failed") return } res, err := json.Marshal(data) if err != nil { writeError(w, 500, "Error stringifying query result") return } writeJSON(w, 201, string(res)) }