use stdout for non-error messages. use the silent flag to turn them off
protect against parentId: None