The API endpoint /users//publish.json does not accept an empty parts.text.body, or even "" (which is technically not empty)
But actually Fb/In do accept empty message if there's a link/video or picture attached. Their API docs state this:
Either link, place, or message must be supplied.
status is required. But you could filter this out when posting to multiple providers, instead of rejecting all publications.
comment is not required
Is it possible that you change this implementation and accept an empty parts.text.body if there's an link/video/picture?