If you're talking about AdWords API: don't assume anything.
I've been developing for AdWords API well over ten years, in those years the default behavior (= not including such conditions) changed at least seven times. In other words, if you didn't include a predicate on status, sometimes you got removed objects, sometimes not. Sometimes those changes in behavior were announced, sometimes not. Every time Google's response was that the new situation was the right situation.
You ask if it's mandatory to include such conditions. Of course not, but prepare yourself for surprises every now and then.
Personally I started to include conditions for every status field in every report type long time ago. I never regretted that decision.
If your question is on Google Ads API, I don't know if Google will be creating the same mess. If you don't like to take risks there, consider to include the WHERE conditions anyway. Don't forget that Google Ads API expects every one of those fields to be present in the select list as well.