Updates to the Groups.io service.
August 28, 2026
- BUGFIX: On a member's page in the admin area, the Moderator Permissions, Moderator Notifications and Owner Email sections — which should only appear when the person's role is moderator or owner — displayed for every member. This was display-only: no member gained any permission, and the page is only visible to moderators and owners in the first place. The sections once again appear only when the role calls for them. https://beta.groups.io/g/main/message/41073
- BUGFIX: Dropdown selects across the restyled admin pages — group Settings, Membership Defaults, Direct Add, member pages, and others — were missing their down-triangle in every browser, and were sized wider than before. A restyling class that suppresses the native triangle (expecting a replacement image that only comes with the correct class for selects) had been applied to some pages but not most. All selects now show the triangle and return to sizing to their content, on every restyled page. https://beta.groups.io/g/main/message/41076
- BUGFIX: In dark mode, member labels (and any other colored chip) displayed grey instead of their assigned color. Dark mode's grey treatment is meant for count badges only; it now leaves anything carrying a color alone, as it always did before the restyling. https://beta.groups.io/g/main/message/41079
- CHANGE: On the group Aliases page, the entry form now sits above the list of aliases — matching the Banned Domains arrangement — so adding an alias no longer requires scrolling past a long list. The help text moved into the box itself as placeholder text, the list is sorted alphabetically instead of by the date added, and the add buttons on both the Aliases and Banned Domains pages get a little breathing room above them. https://beta.groups.io/g/main/message/41078
- BUGFIX: In the Moderator Permissions list on a member's admin page, the "Invite Members" checkbox rendered indented differently from the rest of the list. It now lines up with its neighbors. https://beta.groups.io/g/main/message/41084
- CHANGE: The sections on a member's admin page — User Details, Moderator Permissions, Member Notifications, Email Delivery, and the rest — are now collapsible, like the corresponding sections on the Subscription page, so sections you aren't using can be folded out of the way. They start expanded. Section headings on both pages also now use a single consistent color; previously the collapsible ones rendered slightly darker than the static ones. https://beta.groups.io/g/main/message/41084
- BUGFIX: The check that blocks executable files inside archive attachments — which Gmail and most other providers reject outright, for every recipient — decided whether an attachment was an archive from its file name. An archive renamed to a different extension (a `.zip` sent as `.zip.xxx`, with a note telling recipients to rename it back) slipped past the check, so the message was accepted and distributed, and then rejected by every provider that looked inside — half the group never received it, with no indication to the sender that anything had gone wrong. Attachments are now recognized as archives by their content, whatever the file name, including archives nested inside other archives, and such messages are returned to the sender at posting time with the usual executable-attachment notice.
- INTERNAL: Related: an executable renamed to an innocuous extension — attached bare or placed inside an archive — still passes the name-based checks but is likewise rejected by providers that inspect content. Messages are now scanned for Windows, Linux and Mac executable content behind misleading names at posting time; detections are logged but not yet enforced while the detector's accuracy is confirmed against real traffic.
- BUGFIX: When a member accepted or declined a calendar invitation from a group hosted on its own domain — an Enterprise group, or a group with its own subdomain — the reply their calendar program sent back automatically (Outlook's "Accepted: ..." message, for example) was rejected by our mail server, so the member received a confusing "This group does not exist" bounce and their response was never recorded on the event's RSVP list. Those replies are now processed just as they are for groups at groups.io addresses: the response is recorded and no bounce is sent.
August 27, 2026
- BUGFIX: When viewing a message, the "View All Messages" link always loaded the first page of the topic, so if the message was not within the first page — including a reply you had just posted — it was nowhere in view. The link now takes you to the page of the topic containing the message and positions on it, in either sort direction. https://beta.groups.io/g/main/message/41036
- CHANGE: In groups set so that messages from members can only be tagged with existing hashtags, moderators could always create new hashtags by including them in a message subject, even without the "Create or Modify Hashtags" permission — meaning a typo in a subject line could silently create a new hashtag. That permission is now honored when posting: a moderator without it is treated like a regular member, and their message is bounced or the new hashtag removed, depending on the group setting. Owners, moderators with the permission, and groups using the default hashtag setting are unaffected.
- BUGFIX: When composing a message in the web interface on a phone-sized screen, the editor toolbar was missing most of its formatting tools — alignment, lists, indents, blockquote, and the extended formatting menu (fonts, colors, strikethrough, special characters) were gone entirely, with no way to reach them, even by rotating to landscape. The full set of formatting tools is now available on mobile: the most-used buttons stay visible, and the rest are behind a `...` overflow at the end of the toolbar. https://beta.groups.io/g/main/message/41021
- BUGFIX: The "view all your groups" links at the top of HTML digests and daily summaries, and in the default Welcome notice, pointed at the site home page — which took logged-in members to whatever page they last used as their home view instead of their groups list, and showed logged-out members the front page. Those links now go directly to the Your Groups page, and if you are logged out, you are prompted to log in and then taken there. https://beta.groups.io/g/main/message/41020
- API BUGFIX: The documentation for `/addrepeatevent` and `/updaterepeatevent` listed the wrong values for several repeat parameters. `repeat_type` was described as `1=daily, 2=weekly, 3=monthly, 4=yearly`, when `2` actually means every Monday/Wednesday/Friday and weekly on selected days is `4`, so a client following the documentation to create a weekly event silently got a Monday/Wednesday/Friday series instead. The `repeat_ends` values for "times" and "date" were also reversed, and the `month_type` values were wrong and incomplete. The documentation now matches the implementation, and both endpoints reject an out of range `repeat_type` with `bad_request`: `invalid repeat_type` instead of quietly creating a different repeat pattern. An unparseable `timezone`, which shifted every occurrence to the wrong day of the week, is now rejected the same way.
- API BUGFIX: `/updaterepeatevent`, `/splitrepeatevent` and `/deleterepeatevent` still acted on repeating events that had already been deleted; updating or splitting one brought the series back and started generating its occurrences again. They now return `bad_request` for a deleted series.
- BUGFIX: A deleted repeating event could come back on its own. If the series had been created from an emailed calendar invitation, a later invitation carrying the same event id — a re-send, or an update from the organizer's calendar program — recreated it as a new live series, and an RSVP reply to a reminder email sent before the deletion could do the same. Deleting a repeating event now sticks: invitations and RSVP replies for a deleted series are ignored.
- NEW: Calendar events that request RSVPs and have a maximum attendee limit now display a badge on the calendar showing the number of spots still available, or Full when the event has reached its limit — so you can scan a month of events for one with space without opening each event. The badge appears in the month, week, day, and list views of both a group's calendar and the consolidated calendar, and hovering over it shows the details. Events without an attendance limit are unchanged. https://beta.groups.io/g/main/message/41031) [beta.groups.io](https://beta.groups.io/g/main/message/40912
- CHANGE: In the activity log, entries for topics that were automatically deleted because a hashtag expired were filed under "Hashtag - Expired" — an easy place to overlook when looking for a deleted topic, since every other deletion is listed under "Message - ..." or "Topic - ...". The action is now named "Topic - Deleted due to expired hashtag" and appears in the action filter directly after "Topic - Deleted". Existing log entries are unaffected other than the new name. https://beta.groups.io/g/main/message/40997
- NEW: The Direct Add page of a group with subgroups now has a "Restore previous subgroup memberships" checkbox, unchecked by default. When checked, anyone being added who was previously a member of the group is also added back to the subgroups they belonged to when they were removed, with their previous delivery settings, and the subgroups are listed in the notice they receive. This helps groups that remove members when a paid membership lapses and re-add them when they renew — previously, the person's subgroup memberships had to be rebuilt by hand. Moderator and owner roles are not restored, and subgroups explicitly checked on the page are added with default settings as before. It works for removals that predate this feature.
- API NEW: `/directadd` accepts a new optional boolean parameter, `restore_subgroups`, equivalent to the new "Restore previous subgroup memberships" checkbox. Restored subgroup memberships are included in the response's `added_members`.
- BUGFIX: Banning an email address that didn't already have a Groups.io account ran the address through the same validation used for new registrations, so addresses on disposable email domains, role accounts like `postmaster@`, and similar were rejected with "That email address is not valid" — exactly the addresses moderators most want to ban. Banning now only requires that the address be a plausible email address. https://beta.groups.io/g/main/message/40936
- CHANGE: Activity log entries for event RSVPs named the event but not its date, so with repeating events — which all share the same name — there was no way to tell which occurrence someone had RSVPed to without opening each instance on the calendar. RSVP entries now include the event's date, e.g. "RSVPed yes to event Weekly Training (scheduled for Sep 16)". This also covers RSVPs removed or changed by a moderator, waitlist promotions, and attendee comment edits. The dates — including those already shown on added/updated/deleted event entries — are now displayed using your timezone and date format preferences. Existing log entries are unchanged. https://beta.groups.io/g/main/message/40961
- CHANGE: Changed the second batch of web pages from Bootstrap 3 to Bootstrap 5: all of a group's admin pages — Members, Pending Messages, Invitations, Settings, Membership Defaults, Billing, Paid Memberships, subgroup management, and the rest. This is plumbing, not a redesign; the pages should look and behave as before.
- BUGFIX: On the Pending Messages, Activity, Manage Chat Members and Subgroup Members pages, the search box could sit on top of the list, hiding it — a side effect of the restyling above. Reported on beta within hours; fixed the same evening. https://beta.groups.io/g/main/message/41063
- BUGFIX: On phones, tables on the restyled admin pages — most painfully the Activity log — wrapped each row over many screen lines instead of keeping one line per entry with sideways scrolling, the way they had always displayed. The new framework kept the responsive-table class but dropped its phone behavior. One line per row, scrolling sideways, is restored on all the restyled pages. https://beta.groups.io/g/main/message/41067
- INTERNAL: The browser error reporter could not deliver a report when the site's JavaScript bundle failed to download, because the reporter itself depended on that bundle — so real users with failed loads were invisible, while scraper bots (which inject their own jQuery) flooded the log with the follow-on errors. The reporter now uses a transport of its own, sends a single classified `bundle-load-failure` report naming the script that failed, suppresses the cascade of "not defined" errors that follow a failed bundle, and records whether the reporting browser had a session cookie, separating members from bots at a glance.
August 26, 2026
- API BUGFIX: Paginated API endpoints treated an invalid or out of range `page_token` as the first page while still reporting `has_more`, so a client with a bad token would loop over the first page forever. Such a token now returns an empty page with `has_more` false. https://beta.groups.io/g/api/message/467
- API BUGFIX: The last page of `/gettopics` results within a group reported `has_more` along with a `next_page_token` that was not a valid cursor, causing an `invalid_value` error when used. Paging through a group's topics now terminates cleanly.
August 20, 2026
- INTERNAL: Spent most of the week dealing with a major, ongoing, bot scraper attack - adding additional defenses against it, adding additional monitoring, and optimizing systems.
August 19, 2026
- CHANGE: Groups on the free plan are now notified when people try to join but can't. If your group is at the 100-member limit, owners and moderators receive a weekly email when join attempts were turned away, with a link to the activity log showing who tried. Denied join attempts that arrive by email are now recorded in the activity log as well.
August 17, 2026
- INTERNAL: Added additional protections against bot group signups.
- BUGFIX: Fixed a case where in rare circumstances, when a message is deleted, it should still show up on the group home page and in search results. https://beta.groups.io/g/main/message/40992
- BUGFIX: Messages that had signature blocks that were very long (or had parts that looked like signature blocks that were very long) would not be included in search results.
August 7, 2026
- BUGFIX: The About page link was incorrect.
- CHANGE: Change the `Automatic` Dark Mode setting label to `Follow Device Setting`
August 5, 2026
- BUGFIX: The website now listens for light/dark mode change events and adjusts the page accordingly, instead of waiting for full page reloads.
August 3, 2026
- NEW: New demo videos: subgroups, billing, moderation, invite members, account recovery, co-owners, and delivery settings.
July 31, 2026
- BUGFIX: Misc web page fixes. https://beta.groups.io/g/main/topic/site_styling_update_is_live/120511916
- CHANGE: Continued work on the new `Ask` feature. https://beta.groups.io/g/ai/topic/ask_improvements/120207605
- API NEW: Added a complete set of webhook API endpoints.
July 29, 2026
- CHANGE: Changed the first batch of web pages from Bootstrap 3 to Bootstrap 5.
- NEW: Added a web form for support request submissions.
July 27, 2026
- INTERNAL: Changed the groups.io DMARC signature to p=quarantine;pct=10
July 18, 2026
- API CHANGE: Improved the error returns on many API endpoints and fixed a few inconsistencies.
July 17, 2026
- CHANGE: Merged Stephane Fillod's French translations. Thanks Stephane!
- CHANGE: Updated all translations and corrected several issues.
- CHANGE: The Ask feature now respects commands to only search messages/files/etc as well as better date handling.
- CHANGE: When someone changes their RSVP to "Will Not Attend," they're now prompted for the comment right in the confirmation dialog, so collecting a reason for not attending works naturally.
- CHANGE: Previously, changing an event response could silently erase a member's earlier comment. Comments now carry over.
- CHANGE: There's a new per-event option, "Attendee comments are visible to all members." With it checked, everyone in the group can see the comments on the event's Responses page - useful for coordinating who's bringing what, or who's filling which position or location. Left unchecked, comments stay visible only to the event organizers, as today.
- BUGFIX: For format=flowed text emails, we would strip trailing spaces after the `--` signature delimiter.
July 16, 2026
- API NEW: Added the `/updatetopic` endpoint to update a topic's subject and hashtags, moderation, locked and sticky states, and reply-to setting.
- API NEW: Added a machine-readable Groups.io API skill guide at `/api/SKILLS.md`.
- CHANGE: "Group Profile" sidebar now opens the editable form.
- CHANGE: Empty profile fields become actionable on your own profile; there is now a muted "+ Add" link next to each.
- CHANGE: In Settings, added a note next to the existing profile-sync note - _"Custom fields defined by a group (for example Organisation or Job Title) do not appear here — they live on each group's own profile. To fill them in… Subscription > Group Profile … Edit Group Profile."_
- CHANGE: Added help text under "Viewable In A Member's Profile" — _"When checked, members can view and fill in this field on their own group profile (Subscription > Group Profile). When unchecked, only moderators can see or edit it."_
- DOCS: Updates from Nina. https://groups.io/helpcenter/single/revisionhistory
July 14, 2026
- NEW: Paid membership support early-access has launched.
July 10, 2026
- CHANGE: Much improved Ask feature:
- NEW: Added new Billing Information fields to include information in invoices. The fields are accessible on the Billing page:
July 8, 2026
- NEW: Added an improved Enterprise group onboarding system.
July 7, 2026
- ADMIN: Changed our SPF records from ~all to -all.
July 6, 2026
- INTERNAL: Improved our processes for ad-hoc blocking of ASNs responsible for abusive crawlers, as well as our monitoring systems for such attacks.