If you omit the title parameter, then Discourse will reach for a translation string at runtime. Then people can customize it via the ‘customize text’ UI. That’s the approach we take on our modern auth plugins (although some still use the old method for backwards compatibility)