* MM-27507: Propagate rate limit errors to client We return an error from SendInviteEmails instead of just logging it to let the client know that a rate limit error has happened. The status code is chosen as 413 (entity too large) instead of 429 (too many requests) because it's not the request which is rate limited, but the payload inside it which is. Ideally, the email sending should have been implemented by a queue which would just return an error to the client when full. That is also why we are not returning an X-Retry-After and X-Reset-After in the headers because that would mix with the actual rate limiting. A separate header X-Email-Invite-Reset-After might do the job, but it comes at an extra cost of additional API surface and a clunky API. Instead, that information is contained in the error response. The web client needs to just surface the error. An API client will have to do a bit more work to parse the error if it needs to automatically know when to retry. Given that an email sending client is not a very common use case, we decide to keep the API clean. This decision can be revisited if it becomes problematic in the future. https://mattermost.atlassian.net/browse/MM-27507 * Fixing translations * Added retry_after and reset_after in API response.
Mattermost is an open source, private cloud, Slack-alternative from https://mattermost.com.
It's written in Golang and React and runs as a single Linux binary with MySQL or PostgreSQL. Every month on the 16th a new compiled version is released under an MIT license.
Try out Mattermost
- Join the Mattermost Contributor's server to join community discussions about contributions, development and more
- Join the Mattermost Demo server to try out Mattermost and explore sample use cases
Deploy on Heroku
Note: Heroku preview does not include email or persistent storage
Deploy on a Cloud Platform via Bitnami
Auto-deploy Mattermost to Amazon Web Services, Azure, Google Cloud Platform, or Oracle Cloud Platform via Bitnami.
Install on Your Own Machine
- One-line Docker Preview
- Developer Machine Setup
- Production Install Guides using Linux Binary
- Production Docker Install
Native Mobile and Desktop Apps
In addition to the web interface, you can also download Mattermost clients for Android, iOS, Windows PC, Mac OSX, and Linux.
Get Security Bulletins
Receive notifications of critical security updates. The sophistication of online attackers is perpetually increasing. If you are deploying Mattermost it is highly recommended you subscribe to the Mattermost Security Bulletin mailing list for updates on critical security releases.
Get Involved
- Contribute Code
- Find "Help Wanted" projects
- Join Developer Discussion on a Mattermost Server for contributors
- File Bugs
- Share Feature Ideas
- Get Troubleshooting Help
- Help translate Mattermost
Learn More
- API Options - webhooks, slash commands, drivers and web service
- See who's using Mattermost
- Browse over 700 Mattermost integrations
Get the Latest News
- Twitter - Follow Mattermost
- Blog - Get the latest updates from the Mattermost blog.
- Email - Subscribe to our newsletter (1 or 2 per month)
- Mattermost - Join the ~contributors channel on the Mattermost Community Server.
- IRC - Join the #matterbridge channel on Freenode (thanks to matterircd).
Any other questions, mail us at info@mattermost.com. We’d love to meet you!





