Discourse Chat

Yep, you can send them a link to a channel or an individual message. If they aren’t in the channel yet, but have access to join, they can follow that link and choose to join (whether or not you’ve invited them via a mention).

The mention → invite flow is a convenience if all you’re trying to do is add them to the channel, or if you happen to mention them, and discover at that time they aren’t already there.

Yep, in general, everything is accessible via the API. If you find things you’re trying to do that aren’t, let us know.

This part of the story will improve in the not too distant future as part of this effort:

In the meantime, what you said: