User Story:
As a developer, it is not possible to programatically retrieve a group’s shout in an officially supported manner. None of the key features I need are supported by api.roblox.com or groups.roblox.com:
- The ability to determine if the user has privileges to view the shout in the first place
- The ability to get the shout text
- The ability to get the shout metadata (date and user)
Current Workaround:
I can get this information through the mobile group API (desktop API does not differentiate between no shout and insufficient privileges), but this API is not officially supported.
GET https://m.roblox.com/groups/GROUPID
if not (div class="group-shout") then insufficientPermissions
shoutText = (div class="group-shout-body").text
shoutTimestamp = (div class="group-shout-info").div.text
shoutUserName = (div class="group-shout-name").a.text
shoutUserId = parseInt: (div class="group-shout-name").a.href
Use Cases:
- Shout notifier (@Merely’s 26,000-user extension currently uses the listed workaround)
- Extension which adds a group overview page that shows current shouts for user’s top groups
- Push notifications for group shouts in-game so I don’t have to manually type out the same thing again for the push notification system in my game e.g. “Update in 10 minutes! Stay in your servers for now.”
- I don’t expect this to be a member of GroupService since, in some groups, shouts require authentication
If Roblox is able to address this issue by officially supporting a groups.roblox.com endpoint to retrieve group shouts, the listed use cases will be able to be implemented using stable APIs that are not subject to change at any given time.