Theoretically you are right but our JSON-RPC request parser will automatically add all optional properties/parameters to the request using their default value. So there's no need to set "required" to true. You don't need to set it at all, just make sure to provide a default value. Then CJSONServiceDescription will take care of the rest and you don't need to add any kind of "does this optional property actually exist" logic in the method handling.