No, it's just a fact that put will throw this error.  Actually the real problem is that the error message is not very helpful; it says this regardless of whether or not _id is invalid (starts with an underscore, not a string, etc.) or null/undefined.