Discourse has launched a new experimental feature allowing users to set custom status messages—complete with emoji and optional auto-removal timers—visible next to their avatar in posts, chat, and user cards. Users can set statuses like “ vacation” or “ In a meeting” to indicate availability or mood. The feature is accessible via the user menu and can be enabled site-wide via the enable user status setting. While initially experimental, it’s deemed safe for production use, with plans to remove the experimental label. API access was later added, allowing admins to set statuses for any user via scoped API keys. Users and developers requested integrations with Outlook/Teams, recurring time spans, and webhooks for status changes—some under consideration. Issues like misaligned icons and mobile layout were fixed. A bug causing status loss when changing themes or editing preferences was patched. Moderators asked for group restrictions or watched-word filtering; currently, no restrictions exist, though admins can monitor via Data Explorer queries. Some users expressed concern about public visibility of personal statuses, suggesting private group visibility options. On Meta, the feature was trialed but disabled as statuses were often misused as signatures, contrary to Meta’s goals—though other communities may find such playful use valuable. The feature continues evolving based on community feedback.
With this announcement, we’re making publicly available a new feature that enables you to set a custom status message. After setting, that message will be shown next to your avatar on posts, in chat, on your user card etc.:
To set custom status, go to the user menu and press the Set custom status button (this may look a bit different for you if you haven’t enabled the new user menu yet):
I think I remember a similar feature, via a plugin, which allowed you to set hours of availability, It’s helpful on forums where you interact with people during their working hours.
But I can’t find it.
Anyways, do you plan to add recurring time spans so we could achieve the same thing?
The idea of integrating it with calendars has come up. We haven’t really done much investigation, but expect there may be some complexity around authentication.
There’s the “do not disturb” feature, which has preferences for a “notification schedule” Do not disturb mode
We agree these features are closely related and may bring them closer together in the future, but they are separate at this time.
I can see my username in the response but not the request. To me it looks like status can only be set by the user during an existing session. Am I missing something here? Is there a way to specify via api the username for setting status?
You’re right, currently it’s only possible to set the current user’s status, you’re not missing anything.
This feature is very young now, and we’re currently working on some further improvements to it that potentially may (or may not) lead to adding a server method that will let you set status of any user. I think it’s worth waiting a bit until we deliver more improvements to user status.
Yes, this definitely can be improved. I’ll take care of it, thank you for reporting!