JavidH it seems to be a common thing with developers (and definitely not only Khoros) to make choices for users.
At some point someone asked or decided to have this feature, and not have the API surface items when the board is marked as don't show content.
But look at how the API typically works now. If I use a rest call I get information that's available to the current user. If I use a restadmin call I get all the information, regardless of who the user is.
So why not keep this behaviour for this feature now? Give users (us, your customers, in this case) a choice:
Instead of "turning it off" completely and taking away the choice from those users who liked it just the way it is, add a simple constraint for use in the query, or something to that effect.
SELECT * FROM messages WHERE board.id = '<board_id>' AND board.hide_items = true/false/either