Make mongoose string schema type default value as blank and make the field optional

What you most likely need here is the default value set.

category: {
    type: String,
    default: ''
}

This makes the field somewhat optional, because if you don't set it, it defaults to ''

Setting defaults on Update

As mentioned by user whoami, mongoose only sets defaults on insert.

If you are using mongoose 4.x and up and MongoDB 2.4.0 and up you can opt-in to setting default values on update too.

Mongoose docs: The setDefaultsOnInsert option