In an app a user can choose contacts that get sent a message on a specific event. We want to add support for instant messaging apps like WhatsApp or Threema.
Is it possible to get a list of all messaging apps the contact is known to have?
Additional question: Can I send a message through those messaging apps without additional button click by the user?
You can use share intent. It will enable you to share through all installed apps.
See this link for help
Android: Share plain text using intent (to all messaging apps)