[
  {
    "id": "April",
    "translation": "April"
  },
  {
    "id": "August",
    "translation": "August"
  },
  {
    "id": "Boards",
    "translation": "Boards"
  },
  {
    "id": "Channels",
    "translation": "Channels"
  },
  {
    "id": "December",
    "translation": "December"
  },
  {
    "id": "February",
    "translation": "February"
  },
  {
    "id": "January",
    "translation": "January"
  },
  {
    "id": "July",
    "translation": "July"
  },
  {
    "id": "June",
    "translation": "June"
  },
  {
    "id": "March",
    "translation": "March"
  },
  {
    "id": "May",
    "translation": "May"
  },
  {
    "id": "November",
    "translation": "November"
  },
  {
    "id": "October",
    "translation": "October"
  },
  {
    "id": "Playbooks",
    "translation": "Playbooks"
  },
  {
    "id": "September",
    "translation": "September"
  },
  {
    "id": "api.acknowledgement.delete.archived_channel.app_error",
    "translation": "You cannot remove an acknowledgment in an archived channel."
  },
  {
    "id": "api.acknowledgement.delete.deadline.app_error",
    "translation": "You cannot delete an acknowledgment after 5min have passed."
  },
  {
    "id": "api.acknowledgement.save.archived_channel.app_error",
    "translation": "You cannot acknowledgment in an archived channel."
  },
  {
    "id": "api.admin.add_certificate.array.app_error",
    "translation": "No file under 'certificate' in request."
  },
  {
    "id": "api.admin.add_certificate.no_file.app_error",
    "translation": "No file under 'certificate' in request."
  },
  {
    "id": "api.admin.add_certificate.open.app_error",
    "translation": "Could not open certificate file."
  },
  {
    "id": "api.admin.add_certificate.parseform.app_error",
    "translation": "Error parsing multiform request"
  },
  {
    "id": "api.admin.add_certificate.saving.app_error",
    "translation": "Could not save certificate file."
  },
  {
    "id": "api.admin.delete_brand_image.storage.not_found",
    "translation": "Unable to delete brand image, not found."
  },
  {
    "id": "api.admin.file_read_error",
    "translation": "Error reading log file."
  },
  {
    "id": "api.admin.get_brand_image.storage.app_error",
    "translation": "Image storage is not configured."
  },
  {
    "id": "api.admin.ldap.not_available.app_error",
    "translation": "LDAP is not available."
  },
  {
    "id": "api.admin.remove_certificate.delete.app_error",
    "translation": "An error occurred while deleting the certificate."
  },
  {
    "id": "api.admin.saml.failure_get_metadata_from_idp.app_error",
    "translation": "Failed to obtain metadata from Identity Provider URL."
  },
  {
    "id": "api.admin.saml.failure_parse_idp_certificate.app_error",
    "translation": "Failure encountered while parsing the metadata information received from the Identity Provider to a certificate."
  },
  {
    "id": "api.admin.saml.failure_reset_authdata_to_email.app_error",
    "translation": "Failed to reset AuthData field to Email."
  },
  {
    "id": "api.admin.saml.failure_save_idp_certificate_file.app_error",
    "translation": "Could not save certificate file."
  },
  {
    "id": "api.admin.saml.invalid_xml_missing_idpssodescriptors.app_error",
    "translation": "Missing Identity Provider SSO Descriptors node in the XML."
  },
  {
    "id": "api.admin.saml.invalid_xml_missing_keydescriptor.app_error",
    "translation": "Missing Identity Provider Key Descriptors node in the XML."
  },
  {
    "id": "api.admin.saml.invalid_xml_missing_ssoservices.app_error",
    "translation": "Missing Identity Provider SSO Services node in the XML."
  },
  {
    "id": "api.admin.saml.metadata.app_error",
    "translation": "An error occurred while building Service Provider Metadata."
  },
  {
    "id": "api.admin.saml.not_available.app_error",
    "translation": "SAML 2.0 is not configured or supported on this server."
  },
  {
    "id": "api.admin.saml.set_certificate_from_metadata.invalid_body.app_error",
    "translation": "Invalid certificate text."
  },
  {
    "id": "api.admin.saml.set_certificate_from_metadata.invalid_content_type.app_error",
    "translation": "Invalid content type."
  },
  {
    "id": "api.admin.saml.set_certificate_from_metadata.missing_content_type.app_error",
    "translation": "Missing content type."
  },
  {
    "id": "api.admin.syncables_error",
    "translation": "failed to add user to group-teams and group-channels"
  },
  {
    "id": "api.admin.test_email.body",
    "translation": "It appears your Mattermost email is setup correctly!"
  },
  {
    "id": "api.admin.test_email.missing_server",
    "translation": "SMTP Server is required"
  },
  {
    "id": "api.admin.test_email.reenter_password",
    "translation": "The SMTP server, port, or username has changed. Please re-enter the SMTP password to test connection."
  },
  {
    "id": "api.admin.test_email.subject",
    "translation": "Mattermost - Testing Email Settings"
  },
  {
    "id": "api.admin.test_s3.missing_s3_bucket",
    "translation": "S3 Bucket is required"
  },
  {
    "id": "api.admin.upload_brand_image.array.app_error",
    "translation": "Empty array under 'image' in request."
  },
  {
    "id": "api.admin.upload_brand_image.no_file.app_error",
    "translation": "No file under 'image' in request."
  },
  {
    "id": "api.admin.upload_brand_image.parse.app_error",
    "translation": "Could not parse multipart form."
  },
  {
    "id": "api.admin.upload_brand_image.storage.app_error",
    "translation": "Unable to upload image. Image storage is not configured."
  },
  {
    "id": "api.admin.upload_brand_image.too_large.app_error",
    "translation": "Unable to upload file. File is too large."
  },
  {
    "id": "api.back_to_app",
    "translation": "Back to {{.SiteName}}"
  },
  {
    "id": "api.bot.create_disabled",
    "translation": "Bot creation has been disabled."
  },
  {
    "id": "api.bot.teams_channels.add_message_mobile",
    "translation": "Please add me to teams and channels you want me to interact in. To do this, use the browser or Mattermost Desktop App."
  },
  {
    "id": "api.channel.add_guest.added",
    "translation": "%v added to the channel as guest by %v."
  },
  {
    "id": "api.channel.add_member.added",
    "translation": "%v added to the channel by %v."
  },
  {
    "id": "api.channel.add_members.error",
    "translation": "Error adding channel member(s)."
  },
  {
    "id": "api.channel.add_members.user_denied",
    "translation": "Channel membership denied to the following users because of group constraints: {{ .UserIDs }}"
  },
  {
    "id": "api.channel.add_user.to.channel.failed.app_error",
    "translation": "Failed to add user to channel."
  },
  {
    "id": "api.channel.add_user.to.channel.failed.deleted.app_error",
    "translation": "Failed to add user to channel because they have been removed from the team."
  },
  {
    "id": "api.channel.add_user_to_channel.type.app_error",
    "translation": "Can not add user to this channel type."
  },
  {
    "id": "api.channel.change_channel_privacy.private_to_public",
    "translation": "This channel has been converted to a Public Channel and can be joined by any team member."
  },
  {
    "id": "api.channel.change_channel_privacy.public_to_private",
    "translation": "This channel has been converted to a Private Channel."
  },
  {
    "id": "api.channel.channel_member_counts_by_group.license.error",
    "translation": "Your license does not support groups"
  },
  {
    "id": "api.channel.create_channel.direct_channel.app_error",
    "translation": "Must use createDirectChannel API service for direct message channel creation."
  },
  {
    "id": "api.channel.create_channel.direct_channel.team_restricted_error",
    "translation": "A direct channel cannot be created between these users because they do not share a team in common."
  },
  {
    "id": "api.channel.create_channel.max_channel_limit.app_error",
    "translation": "Unable to create more than {{.MaxChannelsPerTeam}} channels for current team."
  },
  {
    "id": "api.channel.create_default_channels.off_topic",
    "translation": "Off-Topic"
  },
  {
    "id": "api.channel.create_default_channels.town_square",
    "translation": "Town Square"
  },
  {
    "id": "api.channel.create_direct_channel.invalid_user.app_error",
    "translation": "Invalid user ID for direct channel creation."
  },
  {
    "id": "api.channel.create_group.bad_size.app_error",
    "translation": "Group message channels must contain at least 3 and no more than 8 users."
  },
  {
    "id": "api.channel.create_group.bad_user.app_error",
    "translation": "One of the provided users does not exist."
  },
  {
    "id": "api.channel.delete_channel.archived",
    "translation": "%v archived the channel."
  },
  {
    "id": "api.channel.delete_channel.cannot.app_error",
    "translation": "Unable to delete the default channel {{.Channel}}."
  },
  {
    "id": "api.channel.delete_channel.deleted.app_error",
    "translation": "The channel has been archived or deleted."
  },
  {
    "id": "api.channel.delete_channel.type.invalid",
    "translation": "Unable to delete direct or group message channels"
  },
  {
    "id": "api.channel.get_channel_moderations.license.error",
    "translation": "Your license does not support channel moderation"
  },
  {
    "id": "api.channel.guest_join_channel.post_and_forget",
    "translation": "%v joined the channel as guest."
  },
  {
    "id": "api.channel.join_channel.permissions.app_error",
    "translation": "You do not have the appropriate permissions."
  },
  {
    "id": "api.channel.join_channel.post_and_forget",
    "translation": "%v joined the channel."
  },
  {
    "id": "api.channel.leave.default.app_error",
    "translation": "Unable to leave the default channel {{.Channel}}."
  },
  {
    "id": "api.channel.leave.direct.app_error",
    "translation": "Unable to leave a direct message channel."
  },
  {
    "id": "api.channel.leave.last_member.app_error",
    "translation": "You're the only member left, try removing the Private Channel instead of leaving."
  },
  {
    "id": "api.channel.leave.left",
    "translation": "%v left the channel."
  },
  {
    "id": "api.channel.move_channel.type.invalid",
    "translation": "Unable to move direct or group message channels"
  },
  {
    "id": "api.channel.patch_channel_moderations.cache_invalidation.error",
    "translation": "Error invalidating cache"
  },
  {
    "id": "api.channel.patch_channel_moderations.license.error",
    "translation": "Your license does not support channel moderation"
  },
  {
    "id": "api.channel.patch_update_channel.forbidden.app_error",
    "translation": "Failed to update the channel."
  },
  {
    "id": "api.channel.post_channel_privacy_message.error",
    "translation": "Failed to post channel privacy update message."
  },
  {
    "id": "api.channel.post_update_channel_displayname_message_and_forget.create_post.error",
    "translation": "Failed to post displayname update message"
  },
  {
    "id": "api.channel.post_update_channel_displayname_message_and_forget.retrieve_user.error",
    "translation": "Failed to retrieve user while updating channel DisplayName field"
  },
  {
    "id": "api.channel.post_update_channel_displayname_message_and_forget.updated_from",
    "translation": "%s updated the channel display name from: %s to: %s"
  },
  {
    "id": "api.channel.post_update_channel_header_message_and_forget.post.error",
    "translation": "Failed to post update channel header message"
  },
  {
    "id": "api.channel.post_update_channel_header_message_and_forget.removed",
    "translation": "%s removed the channel header (was: %s)"
  },
  {
    "id": "api.channel.post_update_channel_header_message_and_forget.retrieve_user.error",
    "translation": "Failed to retrieve user while updating channel header"
  },
  {
    "id": "api.channel.post_update_channel_header_message_and_forget.updated_from",
    "translation": "%s updated the channel header from: %s to: %s"
  },
  {
    "id": "api.channel.post_update_channel_header_message_and_forget.updated_to",
    "translation": "%s updated the channel header to: %s"
  },
  {
    "id": "api.channel.post_user_add_remove_message_and_forget.error",
    "translation": "Failed to post join/leave message"
  },
  {
    "id": "api.channel.remove.default.app_error",
    "translation": "Unable to remove user from the default channel {{.Channel}}."
  },
  {
    "id": "api.channel.remove_channel_member.type.app_error",
    "translation": "Unable to remove user from a channel."
  },
  {
    "id": "api.channel.remove_member.group_constrained.app_error",
    "translation": "Unable to remove a user from a group-constrained channel."
  },
  {
    "id": "api.channel.remove_member.removed",
    "translation": "%v removed from the channel."
  },
  {
    "id": "api.channel.remove_members.denied",
    "translation": "Channel membership removal denied to the following users because of group constraints: {{ .UserIDs }}"
  },
  {
    "id": "api.channel.remove_user_from_channel.app_error",
    "translation": "Can not remove user from this channel type."
  },
  {
    "id": "api.channel.rename_channel.cant_rename_direct_messages.app_error",
    "translation": "You cannot rename a direct message channel."
  },
  {
    "id": "api.channel.rename_channel.cant_rename_group_messages.app_error",
    "translation": "You cannot rename a group message channel."
  },
  {
    "id": "api.channel.restore_channel.restored.app_error",
    "translation": "Unable to unarchive channel. The channel is not archived."
  },
  {
    "id": "api.channel.restore_channel.unarchived",
    "translation": "{{.Username}} unarchived the channel."
  },
  {
    "id": "api.channel.update_channel.deleted.app_error",
    "translation": "The channel has been archived or deleted."
  },
  {
    "id": "api.channel.update_channel.tried.app_error",
    "translation": "Tried to perform an invalid update of the default channel {{.Channel}}."
  },
  {
    "id": "api.channel.update_channel.typechange.app_error",
    "translation": "Channel type cannot be updated."
  },
  {
    "id": "api.channel.update_channel_member_roles.changing_guest_role.app_error",
    "translation": "Invalid channel member update: You can't add or remove the guest role manually."
  },
  {
    "id": "api.channel.update_channel_member_roles.guest_and_user.app_error",
    "translation": "Invalid channel member update: A user must be a guest or a user but not both."
  },
  {
    "id": "api.channel.update_channel_member_roles.scheme_role.app_error",
    "translation": "The provided role is managed by a Scheme and therefore cannot be applied directly to a Channel Member."
  },
  {
    "id": "api.channel.update_channel_privacy.default_channel_error",
    "translation": "The default channel cannot be made private."
  },
  {
    "id": "api.channel.update_channel_scheme.license.error",
    "translation": "Your license does not support updating a channel's scheme"
  },
  {
    "id": "api.channel.update_channel_scheme.scheme_scope.error",
    "translation": "Unable to set the scheme to the channel because the supplied scheme is not a channel scheme."
  },
  {
    "id": "api.channel.update_team_member_roles.changing_guest_role.app_error",
    "translation": "Invalid team member update: You can't add or remove the guest role manually."
  },
  {
    "id": "api.channel.update_team_member_roles.scheme_role.app_error",
    "translation": "The provided role is managed by a Scheme and therefore cannot be applied directly to a Team Member."
  },
  {
    "id": "api.cloud.app_error",
    "translation": "Internal error during cloud api request."
  },
  {
    "id": "api.cloud.cws_webhook_event_missing_error",
    "translation": "Webhook event was not handled. Either it is missing or it is not valid."
  },
  {
    "id": "api.cloud.delinquency_email.missing_email_to_trigger",
    "translation": "Missing required fields to send delinquency email."
  },
  {
    "id": "api.cloud.license_error",
    "translation": "Your license does not support cloud requests."
  },
  {
    "id": "api.cloud.notify_admin_to_upgrade_error.already_notified",
    "translation": "Already notified admin"
  },
  {
    "id": "api.cloud.request_error",
    "translation": "Error processing request to CWS."
  },
  {
    "id": "api.cloud.teams_limit_reached.create",
    "translation": "Unable to create team because teams limit has been reached"
  },
  {
    "id": "api.cloud.teams_limit_reached.restore",
    "translation": "Unable to restore team because teams limit has been reached"
  },
  {
    "id": "api.command.admin_only.app_error",
    "translation": "Integrations have been limited to admins only."
  },
  {
    "id": "api.command.command_post.forbidden.app_error",
    "translation": "Specified user is not a member of specified channel."
  },
  {
    "id": "api.command.disabled.app_error",
    "translation": "Commands have been disabled by the system admin."
  },
  {
    "id": "api.command.duplicate_trigger.app_error",
    "translation": "This trigger word is already in use. Please choose another word."
  },
  {
    "id": "api.command.execute_command.create_post_failed.app_error",
    "translation": "Command '{{.Trigger}}' failed to post response. Please contact your System Administrator."
  },
  {
    "id": "api.command.execute_command.failed.app_error",
    "translation": "Command with a trigger of '{{.Trigger}}' failed."
  },
  {
    "id": "api.command.execute_command.failed_empty.app_error",
    "translation": "Command with a trigger of '{{.Trigger}}' returned an empty response."
  },
  {
    "id": "api.command.execute_command.failed_resp.app_error",
    "translation": "Command with a trigger of '{{.Trigger}}' returned response {{.Status}}."
  },
  {
    "id": "api.command.execute_command.format.app_error",
    "translation": "Command trigger word is missing the leading slash character"
  },
  {
    "id": "api.command.execute_command.not_found.app_error",
    "translation": "Command with a trigger of '{{.Trigger}}' not found. To send a message beginning with \"/\", try adding an empty space at the beginning of the message."
  },
  {
    "id": "api.command.execute_command.start.app_error",
    "translation": "No command trigger found."
  },
  {
    "id": "api.command.invite_people.desc",
    "translation": "Send an email invite to your Mattermost team"
  },
  {
    "id": "api.command.invite_people.email_invitations_off",
    "translation": "Email invitations are disabled, no invite(s) sent"
  },
  {
    "id": "api.command.invite_people.email_off",
    "translation": "Email has not been configured, no invite(s) sent"
  },
  {
    "id": "api.command.invite_people.fail",
    "translation": "Encountered an error sending email invite(s)"
  },
  {
    "id": "api.command.invite_people.hint",
    "translation": "[name@domain.com ...]"
  },
  {
    "id": "api.command.invite_people.invite_off",
    "translation": "User creation has been disabled on this server, no invite(s) sent"
  },
  {
    "id": "api.command.invite_people.name",
    "translation": "invite_people"
  },
  {
    "id": "api.command.invite_people.no_email",
    "translation": "Please specify one or more valid email addresses"
  },
  {
    "id": "api.command.invite_people.sent",
    "translation": "Email invite(s) sent"
  },
  {
    "id": "api.command.team_mismatch.app_error",
    "translation": "Unable to update commands across teams."
  },
  {
    "id": "api.command_away.desc",
    "translation": "Set your status away"
  },
  {
    "id": "api.command_away.name",
    "translation": "away"
  },
  {
    "id": "api.command_away.success",
    "translation": "You are now away"
  },
  {
    "id": "api.command_channel_header.channel.app_error",
    "translation": "Error to retrieve the current channel."
  },
  {
    "id": "api.command_channel_header.desc",
    "translation": "Edit the channel header"
  },
  {
    "id": "api.command_channel_header.hint",
    "translation": "[text]"
  },
  {
    "id": "api.command_channel_header.message.app_error",
    "translation": "Text must be provided with the /header command."
  },
  {
    "id": "api.command_channel_header.name",
    "translation": "header"
  },
  {
    "id": "api.command_channel_header.permission.app_error",
    "translation": "You don't have the appropriate permissions to edit the channel header."
  },
  {
    "id": "api.command_channel_header.update_channel.app_error",
    "translation": "Error updating the channel header."
  },
  {
    "id": "api.command_channel_header.update_channel.max_length",
    "translation": "The text entered exceeds the character limit. The channel header is limited to {{.MaxLength}} characters."
  },
  {
    "id": "api.command_channel_purpose.channel.app_error",
    "translation": "Error to retrieve the current channel."
  },
  {
    "id": "api.command_channel_purpose.desc",
    "translation": "Edit the channel purpose"
  },
  {
    "id": "api.command_channel_purpose.direct_group.app_error",
    "translation": "Unable to set purpose for direct message channels. Use /header to set the header instead."
  },
  {
    "id": "api.command_channel_purpose.hint",
    "translation": "[text]"
  },
  {
    "id": "api.command_channel_purpose.message.app_error",
    "translation": "A message must be provided with the /purpose command."
  },
  {
    "id": "api.command_channel_purpose.name",
    "translation": "purpose"
  },
  {
    "id": "api.command_channel_purpose.permission.app_error",
    "translation": "You don't have the appropriate permissions to edit the channel purpose."
  },
  {
    "id": "api.command_channel_purpose.update_channel.app_error",
    "translation": "Error updating the channel purpose."
  },
  {
    "id": "api.command_channel_purpose.update_channel.max_length",
    "translation": "The text entered exceeds the character limit. The channel purpose is limited to {{.MaxLength}} characters."
  },
  {
    "id": "api.command_channel_remove.channel.app_error",
    "translation": "Error retrieving the current channel."
  },
  {
    "id": "api.command_channel_rename.channel.app_error",
    "translation": "Error to retrieve the current channel."
  },
  {
    "id": "api.command_channel_rename.desc",
    "translation": "Rename the channel"
  },
  {
    "id": "api.command_channel_rename.direct_group.app_error",
    "translation": "Unable to rename direct message channels."
  },
  {
    "id": "api.command_channel_rename.hint",
    "translation": "[text]"
  },
  {
    "id": "api.command_channel_rename.message.app_error",
    "translation": "A message must be provided with the /rename command."
  },
  {
    "id": "api.command_channel_rename.name",
    "translation": "rename"
  },
  {
    "id": "api.command_channel_rename.permission.app_error",
    "translation": "You don't have the appropriate permissions to rename the channel."
  },
  {
    "id": "api.command_channel_rename.too_long.app_error",
    "translation": "Channel name must be {{.Length}} or fewer characters."
  },
  {
    "id": "api.command_channel_rename.too_short.app_error",
    "translation": "Channel name must be {{.Length}} or more characters."
  },
  {
    "id": "api.command_channel_rename.update_channel.app_error",
    "translation": "Error to update the current channel."
  },
  {
    "id": "api.command_code.desc",
    "translation": "Display text as a code block"
  },
  {
    "id": "api.command_code.hint",
    "translation": "[text]"
  },
  {
    "id": "api.command_code.message.app_error",
    "translation": "A message must be provided with the /code command."
  },
  {
    "id": "api.command_code.name",
    "translation": "code"
  },
  {
    "id": "api.command_collapse.desc",
    "translation": "Turn on auto-collapsing of image previews"
  },
  {
    "id": "api.command_collapse.name",
    "translation": "collapse"
  },
  {
    "id": "api.command_collapse.success",
    "translation": "Image links now collapse by default"
  },
  {
    "id": "api.command_custom_status.app_error",
    "translation": "Error setting the status."
  },
  {
    "id": "api.command_custom_status.clear.app_error",
    "translation": "Error clearing the status."
  },
  {
    "id": "api.command_custom_status.clear.success",
    "translation": "Your status was cleared."
  },
  {
    "id": "api.command_custom_status.desc",
    "translation": "Set or clear your status"
  },
  {
    "id": "api.command_custom_status.hint",
    "translation": "[:emoji_name:] [status_message] or clear"
  },
  {
    "id": "api.command_custom_status.name",
    "translation": "status"
  },
  {
    "id": "api.command_custom_status.success",
    "translation": "Your status is set to “{{.EmojiName}} {{.StatusMessage}}”. You can change your status from the status popover in the channel sidebar header."
  },
  {
    "id": "api.command_dnd.desc",
    "translation": "Do not disturb disables desktop and mobile push notifications."
  },
  {
    "id": "api.command_dnd.name",
    "translation": "dnd"
  },
  {
    "id": "api.command_dnd.success",
    "translation": "Do Not Disturb is enabled. You will not receive desktop or mobile push notifications until Do Not Disturb is turned off."
  },
  {
    "id": "api.command_echo.delay.app_error",
    "translation": "Delays must be under 10000 seconds."
  },
  {
    "id": "api.command_echo.desc",
    "translation": "Echo back text from your account"
  },
  {
    "id": "api.command_echo.high_volume.app_error",
    "translation": "High volume of echo request, cannot process request."
  },
  {
    "id": "api.command_echo.hint",
    "translation": "'message' [delay in seconds]"
  },
  {
    "id": "api.command_echo.message.app_error",
    "translation": "A message must be provided with the /echo command."
  },
  {
    "id": "api.command_echo.name",
    "translation": "echo"
  },
  {
    "id": "api.command_expand.desc",
    "translation": "Turn off auto-collapsing of image previews"
  },
  {
    "id": "api.command_expand.name",
    "translation": "expand"
  },
  {
    "id": "api.command_expand.success",
    "translation": "Image links now expand by default"
  },
  {
    "id": "api.command_expand_collapse.fail.app_error",
    "translation": "An error occurred while expanding previews."
  },
  {
    "id": "api.command_groupmsg.desc",
    "translation": "Sends a Group Message to the specified users"
  },
  {
    "id": "api.command_groupmsg.fail.app_error",
    "translation": "An error occurred while messaging the users."
  },
  {
    "id": "api.command_groupmsg.group_fail.app_error",
    "translation": "An error occurred while creating the group message."
  },
  {
    "id": "api.command_groupmsg.hint",
    "translation": "@[username1],@[username2] 'message'"
  },
  {
    "id": "api.command_groupmsg.invalid_user.app_error",
    "translation": {
      "one": "Unable to find the user: {{.Users}}",
      "other": "Unable to find the users: {{.Users}}"
    }
  },
  {
    "id": "api.command_groupmsg.max_users.app_error",
    "translation": "Group messages are limited to a maximum of {{.MaxUsers}} users."
  },
  {
    "id": "api.command_groupmsg.min_users.app_error",
    "translation": "Group messages are limited to a minimum of {{.MinUsers}} users."
  },
  {
    "id": "api.command_groupmsg.name",
    "translation": "message"
  },
  {
    "id": "api.command_groupmsg.permission.app_error",
    "translation": "You don't have the appropriate permissions to create a new group message."
  },
  {
    "id": "api.command_help.desc",
    "translation": "Show Mattermost help message"
  },
  {
    "id": "api.command_help.name",
    "translation": "help"
  },
  {
    "id": "api.command_help.success",
    "translation": "Mattermost is an open source platform for secure communication, collaboration, and orchestration of work across tools and teams.\r\nMattermost contains three key tools:\r\n\r\n**Channels** - Stay connected with your team via 1:1 and group messaging.\r\n**[Playbooks](/playbooks)** - Build and configure repeatable processes to achieve specific and predictable outcomes.\r\n**[Boards](/boards)** - Manage projects and tasks in a Kanban board structure to help your team hit key milestones.\r\n\r\n[View documentation and guides]({{.HelpLink}})"
  },
  {
    "id": "api.command_invite.channel.app_error",
    "translation": "Error to retrieve the current channel."
  },
  {
    "id": "api.command_invite.channel.error",
    "translation": "Could not find the channel {{.Channel}}. Please use the [channel handle](https://docs.mattermost.com/messaging/managing-channels.html#naming-a-channel) to identify channels."
  },
  {
    "id": "api.command_invite.desc",
    "translation": "Invite a user to a channel"
  },
  {
    "id": "api.command_invite.directchannel.app_error",
    "translation": "You can't add someone to a direct message channel."
  },
  {
    "id": "api.command_invite.fail.app_error",
    "translation": "An error occurred while joining the channel."
  },
  {
    "id": "api.command_invite.group_constrained_user_denied",
    "translation": "This channel is managed by groups.  This user is not part of a group that is synced to this channel."
  },
  {
    "id": "api.command_invite.hint",
    "translation": "@[username]... ~[channel]..."
  },
  {
    "id": "api.command_invite.missing_message.app_error",
    "translation": "Missing Username and/or Channel."
  },
  {
    "id": "api.command_invite.missing_user.app_error",
    "translation": "We couldn't find the user {{.User}}. They may have been deactivated by the System Administrator."
  },
  {
    "id": "api.command_invite.name",
    "translation": "invite"
  },
  {
    "id": "api.command_invite.permission.app_error",
    "translation": "You don't have enough permissions to add {{.User}} in {{.Channel}}."
  },
  {
    "id": "api.command_invite.private_channel.app_error",
    "translation": "Could not find the channel {{.Channel}}. Please use the [channel handle](https://docs.mattermost.com/messaging/managing-channels.html#naming-a-channel) to identify channels."
  },
  {
    "id": "api.command_invite.success",
    "translation": "{{.User}} added to {{.Channel}} channel."
  },
  {
    "id": "api.command_invite.user_already_in_channel.app_error",
    "translation": "{{.User}} is already in the channel."
  },
  {
    "id": "api.command_invite.user_not_in_team.app_error",
    "translation": "@{{.Username}} is not a member of the team."
  },
  {
    "id": "api.command_invite_people.permission.app_error",
    "translation": "You don't have permission to invite new users to this server."
  },
  {
    "id": "api.command_join.desc",
    "translation": "Join the open channel"
  },
  {
    "id": "api.command_join.fail.app_error",
    "translation": "An error occurred while joining the channel."
  },
  {
    "id": "api.command_join.hint",
    "translation": "~[channel]"
  },
  {
    "id": "api.command_join.list.app_error",
    "translation": "An error occurred while listing channels."
  },
  {
    "id": "api.command_join.missing.app_error",
    "translation": "Unable to find the channel."
  },
  {
    "id": "api.command_join.name",
    "translation": "join"
  },
  {
    "id": "api.command_kick.name",
    "translation": "kick"
  },
  {
    "id": "api.command_leave.desc",
    "translation": "Leave the current channel"
  },
  {
    "id": "api.command_leave.fail.app_error",
    "translation": "An error occurred while leaving the channel."
  },
  {
    "id": "api.command_leave.name",
    "translation": "leave"
  },
  {
    "id": "api.command_logout.desc",
    "translation": "Logout of Mattermost"
  },
  {
    "id": "api.command_logout.name",
    "translation": "logout"
  },
  {
    "id": "api.command_marketplace.desc",
    "translation": "Open the Marketplace"
  },
  {
    "id": "api.command_marketplace.name",
    "translation": "marketplace"
  },
  {
    "id": "api.command_marketplace.unsupported.app_error",
    "translation": "The marketplace command is not supported on your device."
  },
  {
    "id": "api.command_me.desc",
    "translation": "Do an action"
  },
  {
    "id": "api.command_me.hint",
    "translation": "[message]"
  },
  {
    "id": "api.command_me.name",
    "translation": "me"
  },
  {
    "id": "api.command_msg.desc",
    "translation": "Send Direct Message to a user"
  },
  {
    "id": "api.command_msg.dm_fail.app_error",
    "translation": "An error occurred while creating the direct message."
  },
  {
    "id": "api.command_msg.fail.app_error",
    "translation": "An error occurred while messaging the user."
  },
  {
    "id": "api.command_msg.hint",
    "translation": "@[username] 'message'"
  },
  {
    "id": "api.command_msg.missing.app_error",
    "translation": "Unable to find the user."
  },
  {
    "id": "api.command_msg.name",
    "translation": "message"
  },
  {
    "id": "api.command_msg.permission.app_error",
    "translation": "You don't have the appropriate permissions to direct message this user."
  },
  {
    "id": "api.command_mute.desc",
    "translation": "Turns off desktop, email and push notifications for the current channel or the [channel] specified."
  },
  {
    "id": "api.command_mute.error",
    "translation": "Could not find the channel {{.Channel}}. Please use the [channel handle](https://docs.mattermost.com/messaging/managing-channels.html#naming-a-channel) to identify channels."
  },
  {
    "id": "api.command_mute.hint",
    "translation": "~[channel]"
  },
  {
    "id": "api.command_mute.name",
    "translation": "mute"
  },
  {
    "id": "api.command_mute.no_channel.error",
    "translation": "Could not find the specified channel. Please use the [channel handle](https://docs.mattermost.com/messaging/managing-channels.html#naming-a-channel) to identify channels."
  },
  {
    "id": "api.command_mute.not_member.error",
    "translation": "Could not mute channel {{.Channel}} as you are not a member."
  },
  {
    "id": "api.command_mute.success_mute",
    "translation": "You will not receive notifications for {{.Channel}} until channel mute is turned off."
  },
  {
    "id": "api.command_mute.success_mute_direct_msg",
    "translation": "You will not receive notifications for this channel until channel mute is turned off."
  },
  {
    "id": "api.command_mute.success_unmute",
    "translation": "{{.Channel}} is no longer muted."
  },
  {
    "id": "api.command_mute.success_unmute_direct_msg",
    "translation": "This channel is no longer muted."
  },
  {
    "id": "api.command_offline.desc",
    "translation": "Set your status offline"
  },
  {
    "id": "api.command_offline.name",
    "translation": "offline"
  },
  {
    "id": "api.command_offline.success",
    "translation": "You are now offline"
  },
  {
    "id": "api.command_online.desc",
    "translation": "Set your status online"
  },
  {
    "id": "api.command_online.name",
    "translation": "online"
  },
  {
    "id": "api.command_online.success",
    "translation": "You are now online"
  },
  {
    "id": "api.command_open.name",
    "translation": "open"
  },
  {
    "id": "api.command_remote.accept.help",
    "translation": "Accept an invitation from an external Mattermost instance"
  },
  {
    "id": "api.command_remote.accept_invitation",
    "translation": "Invitation accepted and confirmed.\nSiteURL: {{.SiteURL}}"
  },
  {
    "id": "api.command_remote.accept_invitation.error",
    "translation": "Could not accept invitation: {{.Error}}"
  },
  {
    "id": "api.command_remote.add_remote.error",
    "translation": "Could not add secure connection: {{.Error}}"
  },
  {
    "id": "api.command_remote.cluster_removed",
    "translation": "Secure connection {{.RemoteId}} {{.Result}}."
  },
  {
    "id": "api.command_remote.decode_invitation.error",
    "translation": "Could not decode invitation: {{.Error}}"
  },
  {
    "id": "api.command_remote.desc",
    "translation": "Invite secure connections for communication across Mattermost instances."
  },
  {
    "id": "api.command_remote.displayname.help",
    "translation": "Secure connection display name"
  },
  {
    "id": "api.command_remote.displayname.hint",
    "translation": "A display name for the secure connection"
  },
  {
    "id": "api.command_remote.encrypt_invitation.error",
    "translation": "Could not encrypt invitation: {{.Error}}"
  },
  {
    "id": "api.command_remote.fetch_status.error",
    "translation": "Could not fetch secure connections: {{.Error}}"
  },
  {
    "id": "api.command_remote.hint",
    "translation": "[action]"
  },
  {
    "id": "api.command_remote.incorrect_password.error",
    "translation": "Could not decrypt invitation. Incorrect password or corrupt invitation: {{.Error}}"
  },
  {
    "id": "api.command_remote.invitation.help",
    "translation": "Invitation from secure connection"
  },
  {
    "id": "api.command_remote.invitation.hint",
    "translation": "The encrypted invitation from a secure connection"
  },
  {
    "id": "api.command_remote.invitation_created",
    "translation": "Invitation created."
  },
  {
    "id": "api.command_remote.invite.help",
    "translation": "Invite a secure connection"
  },
  {
    "id": "api.command_remote.invite_password.help",
    "translation": "Invitation password"
  },
  {
    "id": "api.command_remote.invite_password.hint",
    "translation": "Password to be used to encrypt the invitation"
  },
  {
    "id": "api.command_remote.invite_summary",
    "translation": "Send the following AES 256-bit encrypted invitation to the external Mattermost System Admin along with the password. They will use the `{{.Command}}` slash command to accept the invitation.\n\n```\n{{.Invitation}}\n```\n\n**Ensure the secure connection can access your Mattermost instance via** {{.SiteURL}}"
  },
  {
    "id": "api.command_remote.missing_command",
    "translation": "Missing command. Available actions: {{.Actions}}"
  },
  {
    "id": "api.command_remote.missing_empty",
    "translation": "Missing or empty `{{.Arg}}`"
  },
  {
    "id": "api.command_remote.name",
    "translation": "secure-connection"
  },
  {
    "id": "api.command_remote.name.help",
    "translation": "Secure connection name"
  },
  {
    "id": "api.command_remote.name.hint",
    "translation": "A unique name for the secure connection"
  },
  {
    "id": "api.command_remote.permission_required",
    "translation": "You require `{{.Permission}}` permission to manage secure connections."
  },
  {
    "id": "api.command_remote.remote_add_remove.help",
    "translation": "Add/remove secure connections. Available actions: {{.Actions}}"
  },
  {
    "id": "api.command_remote.remote_table_header",
    "translation": "| Secure connection | Display name | Connection ID | Site URL | Invite accepted | Online | Last ping  |"
  },
  {
    "id": "api.command_remote.remotes_not_found",
    "translation": "No secure connections found."
  },
  {
    "id": "api.command_remote.remove.help",
    "translation": "Removes a secure connection"
  },
  {
    "id": "api.command_remote.remove_remote.error",
    "translation": "Could not remove secure connection: {{.Error}}"
  },
  {
    "id": "api.command_remote.remove_remote_id.help",
    "translation": "ID of secure connection to remove."
  },
  {
    "id": "api.command_remote.service_disabled",
    "translation": "Secure Connection Service is disabled."
  },
  {
    "id": "api.command_remote.service_not_enabled",
    "translation": "Secure Connection Service not enabled."
  },
  {
    "id": "api.command_remote.site_url_not_set",
    "translation": "Site URL not set. Please set this in System Console > Environment > Web Server."
  },
  {
    "id": "api.command_remote.status.help",
    "translation": "Displays status for all secure connections"
  },
  {
    "id": "api.command_remote.unknown_action",
    "translation": "Unknown action `{{.Action}}`"
  },
  {
    "id": "api.command_remove.desc",
    "translation": "Remove a member from the channel"
  },
  {
    "id": "api.command_remove.direct_group.app_error",
    "translation": "You can't remove someone from a direct message channel."
  },
  {
    "id": "api.command_remove.group_constrained_user_denied",
    "translation": "User cannot be removed from the channel by you because they are a member of the groups linked to this channel. To remove them from this channel, they must be removed from the linked groups."
  },
  {
    "id": "api.command_remove.hint",
    "translation": "@[username]"
  },
  {
    "id": "api.command_remove.message.app_error",
    "translation": "A message must be provided with the /remove or /kick command."
  },
  {
    "id": "api.command_remove.missing.app_error",
    "translation": "We couldn't find the user. They may have been deactivated by the System Administrator."
  },
  {
    "id": "api.command_remove.name",
    "translation": "remove"
  },
  {
    "id": "api.command_remove.permission.app_error",
    "translation": "You don't have the appropriate permissions to remove the member."
  },
  {
    "id": "api.command_remove.user_not_in_channel",
    "translation": "{{.Username}} is not a member of this channel."
  },
  {
    "id": "api.command_search.desc",
    "translation": "Search text in messages"
  },
  {
    "id": "api.command_search.hint",
    "translation": "[text]"
  },
  {
    "id": "api.command_search.name",
    "translation": "search"
  },
  {
    "id": "api.command_search.unsupported.app_error",
    "translation": "The search command is not supported on your device."
  },
  {
    "id": "api.command_settings.desc",
    "translation": "Open the Settings dialog"
  },
  {
    "id": "api.command_settings.name",
    "translation": "settings"
  },
  {
    "id": "api.command_settings.unsupported.app_error",
    "translation": "The settings command is not supported on your device."
  },
  {
    "id": "api.command_share.available_actions",
    "translation": "Available actions: {{.Actions}}"
  },
  {
    "id": "api.command_share.channel_invite.error",
    "translation": "Error inviting `{{.Name}}` to this channel: {{.Error}}"
  },
  {
    "id": "api.command_share.channel_invite_not_home.error",
    "translation": "Cannot invite secure connection to a shared channel originating somewhere else."
  },
  {
    "id": "api.command_share.channel_remote_id_not_exists",
    "translation": "Shared channel secure connection `{{.RemoteId}}` does not exist for this channel."
  },
  {
    "id": "api.command_share.channel_shared",
    "translation": "This channel is now shared."
  },
  {
    "id": "api.command_share.channel_status.help",
    "translation": "Displays status for this shared channel"
  },
  {
    "id": "api.command_share.channel_status_id",
    "translation": "Status for channel ID `{{.ChannelId}}`"
  },
  {
    "id": "api.command_share.check_channel_exist.error",
    "translation": "Error while checking if shared channel exists: {{.Error}}"
  },
  {
    "id": "api.command_share.could_not_uninvite.error",
    "translation": "Could not uninvite `{{.RemoteId}}`: {{.Error}}"
  },
  {
    "id": "api.command_share.desc",
    "translation": "Shares the current channel with an external Mattermost instance."
  },
  {
    "id": "api.command_share.fetch_remote.error",
    "translation": "Error fetching secure connections: {{.Error}}"
  },
  {
    "id": "api.command_share.fetch_remote_status.error",
    "translation": "Could not fetch status for secure connections: {{.Error}}."
  },
  {
    "id": "api.command_share.hint",
    "translation": "[action]"
  },
  {
    "id": "api.command_share.invalid_value.error",
    "translation": "Invalid value for '{{.Arg}}': {{.Error}}"
  },
  {
    "id": "api.command_share.invitation_sent",
    "translation": "Shared channel invitation has been sent to `{{.Name}} {{.SiteURL}}`."
  },
  {
    "id": "api.command_share.invite_remote.help",
    "translation": "Invites an external Mattermost instance to the current shared channel"
  },
  {
    "id": "api.command_share.missing_action",
    "translation": "Missing action. Available actions: {{.Actions}}"
  },
  {
    "id": "api.command_share.must_specify_valid_remote",
    "translation": "Must specify a valid secure connection ID to invite."
  },
  {
    "id": "api.command_share.name",
    "translation": "share-channel"
  },
  {
    "id": "api.command_share.no_remote_invited",
    "translation": "No secure connections have been invited to this channel."
  },
  {
    "id": "api.command_share.not_shared_channel_unshare",
    "translation": "Cannot unshare a channel that is not shared."
  },
  {
    "id": "api.command_share.permission_required",
    "translation": "You require `{{.Permission}}` permission to manage shared channels."
  },
  {
    "id": "api.command_share.remote_already_invited",
    "translation": "The secure connection has already been invited."
  },
  {
    "id": "api.command_share.remote_id.help",
    "translation": "ID of an existing secure connection. See `secure-connection` command to add a secure connection."
  },
  {
    "id": "api.command_share.remote_id_invalid.error",
    "translation": "Secure connection ID is invalid: {{.Error}}"
  },
  {
    "id": "api.command_share.remote_not_valid",
    "translation": "Must specify a valid secure connection ID to uninvite"
  },
  {
    "id": "api.command_share.remote_table_header",
    "translation": "| Secure connection | Site URL | Read only | Invite accepted | Online | Last sync |"
  },
  {
    "id": "api.command_share.remote_uninvited",
    "translation": "Secure connection `{{.RemoteId}}` uninvited."
  },
  {
    "id": "api.command_share.service_disabled",
    "translation": "Shared Channels Service is disabled."
  },
  {
    "id": "api.command_share.share_channel.error",
    "translation": "Cannot share this channel: {{.Error}}"
  },
  {
    "id": "api.command_share.share_read_only.help",
    "translation": "Channel will be shared in read-only mode"
  },
  {
    "id": "api.command_share.share_read_only.hint",
    "translation": "[readonly] - 'Y' or 'N'.  Defaults to 'N'"
  },
  {
    "id": "api.command_share.shared_channel_unavailable",
    "translation": "This channel is no longer shared."
  },
  {
    "id": "api.command_share.shared_channel_unshare.error",
    "translation": "Cannot unshare this channel: {{.Error}}."
  },
  {
    "id": "api.command_share.uninvite_remote.help",
    "translation": "Uninvites a secure connection from this shared channel"
  },
  {
    "id": "api.command_share.uninvite_remote_id.help",
    "translation": "ID of secure connection to uninvite."
  },
  {
    "id": "api.command_share.unknown_action",
    "translation": "Unknown action `{{.Action}}`. Available actions: {{.Actions}}"
  },
  {
    "id": "api.command_share.unshare_channel.help",
    "translation": "Unshares the current channel"
  },
  {
    "id": "api.command_shortcuts.desc",
    "translation": "Displays a list of keyboard shortcuts"
  },
  {
    "id": "api.command_shortcuts.name",
    "translation": "shortcuts"
  },
  {
    "id": "api.command_shortcuts.unsupported.app_error",
    "translation": "The shortcuts command is not supported on your device."
  },
  {
    "id": "api.command_shrug.desc",
    "translation": "Adds ¯\\_(ツ)_/¯ to your message"
  },
  {
    "id": "api.command_shrug.hint",
    "translation": "[message]"
  },
  {
    "id": "api.command_shrug.name",
    "translation": "shrug"
  },
  {
    "id": "api.command_templates.desc",
    "translation": "Open the create from template window"
  },
  {
    "id": "api.command_templates.name",
    "translation": "templates"
  },
  {
    "id": "api.command_templates.unsupported.app_error",
    "translation": "The templates command is not supported on your device."
  },
  {
    "id": "api.config.client.old_format.app_error",
    "translation": "New format for the client configuration is not supported yet. Please specify format=old in the query string."
  },
  {
    "id": "api.config.get_config.restricted_merge.app_error",
    "translation": "Failed to merge given config."
  },
  {
    "id": "api.config.migrate_config.app_error",
    "translation": "Failed to migrate config store."
  },
  {
    "id": "api.config.patch_config.diff.app_error",
    "translation": "Failed to diff configs"
  },
  {
    "id": "api.config.patch_config.restricted_merge.app_error",
    "translation": "Failed to merge given config."
  },
  {
    "id": "api.config.reload_config.app_error",
    "translation": "Failed to reload config."
  },
  {
    "id": "api.config.update_config.clear_siteurl.app_error",
    "translation": "Site URL cannot be cleared."
  },
  {
    "id": "api.config.update_config.diff.app_error",
    "translation": "Failed to diff configs"
  },
  {
    "id": "api.config.update_config.not_allowed_security.app_error",
    "translation": "Changing {{.Name}} is not allowed due to security reasons."
  },
  {
    "id": "api.config.update_config.restricted_merge.app_error",
    "translation": "Failed to merge given config."
  },
  {
    "id": "api.config.update_config.translations.app_error",
    "translation": "Failed to update server translations."
  },
  {
    "id": "api.context.404.app_error",
    "translation": "Sorry, we could not find the page."
  },
  {
    "id": "api.context.get_user.app_error",
    "translation": "Unable to get user from session UserID."
  },
  {
    "id": "api.context.invalid_body_param.app_error",
    "translation": "Invalid or missing {{.Name}} in request body."
  },
  {
    "id": "api.context.invalid_param.app_error",
    "translation": "Invalid {{.Name}} parameter."
  },
  {
    "id": "api.context.invalid_token.error",
    "translation": "Invalid session token={{.Token}}, err={{.Error}}"
  },
  {
    "id": "api.context.invalid_url_param.app_error",
    "translation": "Invalid or missing {{.Name}} parameter in request URL."
  },
  {
    "id": "api.context.invitation_expired.error",
    "translation": "Invitation is expired."
  },
  {
    "id": "api.context.json_encoding.app_error",
    "translation": "Error encoding JSON."
  },
  {
    "id": "api.context.local_origin_required.app_error",
    "translation": "This endpoint requires a local request origin."
  },
  {
    "id": "api.context.mfa_required.app_error",
    "translation": "Multi-factor authentication is required on this server."
  },
  {
    "id": "api.context.permissions.app_error",
    "translation": "You do not have the appropriate permissions."
  },
  {
    "id": "api.context.remote_id_invalid.app_error",
    "translation": "Unable to find secure connectionID {{.RemoteId}}."
  },
  {
    "id": "api.context.remote_id_mismatch.app_error",
    "translation": "Secure connection ID mismatch."
  },
  {
    "id": "api.context.remote_id_missing.app_error",
    "translation": "Secure connection ID missing."
  },
  {
    "id": "api.context.server_busy.app_error",
    "translation": "Server is busy, non-critical services are temporarily unavailable."
  },
  {
    "id": "api.context.session_expired.app_error",
    "translation": "Invalid or expired session, please login again."
  },
  {
    "id": "api.context.token_provided.app_error",
    "translation": "Session is not OAuth but token was provided in the query string."
  },
  {
    "id": "api.create_terms_of_service.custom_terms_of_service_disabled.app_error",
    "translation": "Custom terms of service feature is disabled."
  },
  {
    "id": "api.create_terms_of_service.empty_text.app_error",
    "translation": "Please enter text for your Custom Terms of Service."
  },
  {
    "id": "api.custom_groups.count_err",
    "translation": "error counting groups"
  },
  {
    "id": "api.custom_groups.feature_disabled",
    "translation": "custom groups feature is disabled"
  },
  {
    "id": "api.custom_groups.license_error",
    "translation": "not licensed for custom groups"
  },
  {
    "id": "api.custom_groups.must_be_referenceable",
    "translation": "allow_reference must be 'true' for custom groups"
  },
  {
    "id": "api.custom_groups.no_remote_id",
    "translation": "remote_id must be blank for custom group"
  },
  {
    "id": "api.custom_status.disabled",
    "translation": "Custom status feature has been disabled. Please contact your system administrator for details."
  },
  {
    "id": "api.custom_status.recent_custom_statuses.delete.app_error",
    "translation": "Failed to delete the recent status. Please try adding the status first or contact your system administrator for details."
  },
  {
    "id": "api.custom_status.set_custom_statuses.update.app_error",
    "translation": "Failed to update the custom status. Please add either emoji or custom text status or both."
  },
  {
    "id": "api.draft.create_draft.can_not_draft_to_deleted.error",
    "translation": "Can not save draft to deleted channel"
  },
  {
    "id": "api.drafts.disabled.app_error",
    "translation": "Drafts feature is disabled."
  },
  {
    "id": "api.elasticsearch.test_elasticsearch_settings_nil.app_error",
    "translation": "Elasticsearch settings has unset values."
  },
  {
    "id": "api.email.send_warn_metric_ack.failure.app_error",
    "translation": "Failure to send admin acknowledgment email"
  },
  {
    "id": "api.email.send_warn_metric_ack.invalid_warn_metric.app_error",
    "translation": "Could not find warn metric."
  },
  {
    "id": "api.email.send_warn_metric_ack.missing_server.app_error",
    "translation": "SMTP Server is required"
  },
  {
    "id": "api.email_batching.add_notification_email_to_batch.channel_full.app_error",
    "translation": "Email batching job's receiving channel was full. Please increase the EmailBatchingBufferSize."
  },
  {
    "id": "api.email_batching.add_notification_email_to_batch.disabled.app_error",
    "translation": "Email batching has been disabled by the system administrator."
  },
  {
    "id": "api.email_batching.send_batched_email_notification.button",
    "translation": "Open Mattermost"
  },
  {
    "id": "api.email_batching.send_batched_email_notification.messageButton",
    "translation": "View this message"
  },
  {
    "id": "api.email_batching.send_batched_email_notification.subTitle",
    "translation": "See below for a summary of your new messages."
  },
  {
    "id": "api.email_batching.send_batched_email_notification.subject",
    "translation": {
      "one": "[{{.SiteName}}] New Notification for {{.Month}} {{.Day}}, {{.Year}}",
      "other": "[{{.SiteName}}] New Notifications for {{.Month}} {{.Day}}, {{.Year}}"
    }
  },
  {
    "id": "api.email_batching.send_batched_email_notification.time",
    "translation": "{{.Hour}}:{{.Minute}} {{.TimeZone}}"
  },
  {
    "id": "api.email_batching.send_batched_email_notification.title",
    "translation": "You have new messages"
  },
  {
    "id": "api.emoji.create.duplicate.app_error",
    "translation": "Unable to create emoji. Another emoji with the same name already exists."
  },
  {
    "id": "api.emoji.create.internal_error",
    "translation": "server_error: Encountered internal server error creating the emoji."
  },
  {
    "id": "api.emoji.create.other_user.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "api.emoji.create.parse.app_error",
    "translation": "Unable to create emoji. Could not understand request."
  },
  {
    "id": "api.emoji.create.too_large.app_error",
    "translation": "Unable to create emoji. Image must be less than 512 KiB in size."
  },
  {
    "id": "api.emoji.disabled.app_error",
    "translation": "Custom emoji have been disabled by the system admin."
  },
  {
    "id": "api.emoji.get_image.decode.app_error",
    "translation": "Unable to decode image file for emoji."
  },
  {
    "id": "api.emoji.get_image.read.app_error",
    "translation": "Unable to read image file for emoji."
  },
  {
    "id": "api.emoji.storage.app_error",
    "translation": "File storage not configured properly. Please configure for either S3 or local server file storage."
  },
  {
    "id": "api.emoji.upload.image.app_error",
    "translation": "Unable to create emoji. File must be a PNG, JPEG, or GIF."
  },
  {
    "id": "api.emoji.upload.large_image.decode_error",
    "translation": "Unable to create emoji. An error occurred when trying to decode the image."
  },
  {
    "id": "api.emoji.upload.large_image.encode_error",
    "translation": "Unable to create emoji. An error occurred when trying to encode the image."
  },
  {
    "id": "api.emoji.upload.large_image.gif_decode_error",
    "translation": "Unable to create emoji. An error occurred when trying to decode the GIF image."
  },
  {
    "id": "api.emoji.upload.large_image.gif_encode_error",
    "translation": "Unable to create emoji. An error occurred when trying to encode the GIF image."
  },
  {
    "id": "api.emoji.upload.large_image.too_large.app_error",
    "translation": "Unable to create emoji. Image must be smaller than {{.MaxWidth}} by {{.MaxHeight}}."
  },
  {
    "id": "api.emoji.upload.open.app_error",
    "translation": "Unable to create the emoji. An error occurred when trying to open the attached image."
  },
  {
    "id": "api.error_get_first_admin_complete_setup",
    "translation": "Error trying to retrieve first admin complete setup from the store."
  },
  {
    "id": "api.error_get_first_admin_visit_marketplace_status",
    "translation": "Error trying to retrieve the first admin visit marketplace status from the store."
  },
  {
    "id": "api.error_set_first_admin_complete_setup",
    "translation": "Error trying to save first admin complete setup in the store."
  },
  {
    "id": "api.error_set_first_admin_visit_marketplace_status",
    "translation": "Error trying to save the first admin visit marketplace status in the store."
  },
  {
    "id": "api.export.export_not_found.app_error",
    "translation": "Unable to find export file."
  },
  {
    "id": "api.file.append_file.app_error",
    "translation": "Unable to append data to the file."
  },
  {
    "id": "api.file.attachments.disabled.app_error",
    "translation": "File attachments have been disabled on this server."
  },
  {
    "id": "api.file.cloud_upload.app_error",
    "translation": "Uploading via mmctl to a Cloud instance is not supported. Please check the documentation here: https://docs.mattermost.com/manage/cloud-data-export.html."
  },
  {
    "id": "api.file.file_exists.app_error",
    "translation": "Unable to check if the file exists."
  },
  {
    "id": "api.file.file_mod_time.app_error",
    "translation": "Unable to get last modification time for file."
  },
  {
    "id": "api.file.file_reader.app_error",
    "translation": "Unable to get a file reader."
  },
  {
    "id": "api.file.file_size.app_error",
    "translation": "Unable to get the file size."
  },
  {
    "id": "api.file.get_file.public_invalid.app_error",
    "translation": "The public link does not appear to be valid."
  },
  {
    "id": "api.file.get_file_preview.no_preview.app_error",
    "translation": "File doesn't have a preview image."
  },
  {
    "id": "api.file.get_file_thumbnail.no_thumbnail.app_error",
    "translation": "File doesn't have a thumbnail image."
  },
  {
    "id": "api.file.get_public_link.disabled.app_error",
    "translation": "Public links have been disabled."
  },
  {
    "id": "api.file.get_public_link.no_post.app_error",
    "translation": "Unable to get public link for file. File must be attached to a post that can be read by the current user."
  },
  {
    "id": "api.file.list_directory.app_error",
    "translation": "Unable to list directory."
  },
  {
    "id": "api.file.move_file.app_error",
    "translation": "Unable to move file."
  },
  {
    "id": "api.file.no_driver.app_error",
    "translation": "No file driver selected."
  },
  {
    "id": "api.file.read_file.app_error",
    "translation": "Unable to read the file."
  },
  {
    "id": "api.file.read_file.reading_local.app_error",
    "translation": "Encountered an error reading from local server file storage."
  },
  {
    "id": "api.file.remove_directory.app_error",
    "translation": "Unable to remove the directory."
  },
  {
    "id": "api.file.remove_file.app_error",
    "translation": "Unable to remove the file."
  },
  {
    "id": "api.file.test_connection.app_error",
    "translation": "Unable to access the file storage."
  },
  {
    "id": "api.file.test_connection_email_settings_nil.app_error",
    "translation": "Email settings has unset values."
  },
  {
    "id": "api.file.test_connection_s3_auth.app_error",
    "translation": "Unable to connect to S3. Verify your Amazon S3 connection authorization parameters and authentication settings."
  },
  {
    "id": "api.file.test_connection_s3_bucket_does_not_exist.app_error",
    "translation": "Ensure your Amazon S3 bucket is available, and verify your bucket permissions."
  },
  {
    "id": "api.file.test_connection_s3_settings_nil.app_error",
    "translation": "File storage settings has unset values."
  },
  {
    "id": "api.file.upload_file.incorrect_channelId.app_error",
    "translation": "Unable to upload the file. Incorrect channel ID: {{.channelId}}"
  },
  {
    "id": "api.file.upload_file.incorrect_number_of_client_ids.app_error",
    "translation": "Unable to upload file(s). Have {{.NumClientIds}} client_ids for {{.NumFiles}} files."
  },
  {
    "id": "api.file.upload_file.large_image.app_error",
    "translation": "File above maximum dimensions could not be uploaded: {{.Filename}}"
  },
  {
    "id": "api.file.upload_file.large_image_detailed.app_error",
    "translation": "{{.Filename}} dimensions ({{.Width}} by {{.Height}} pixels) exceed the limits."
  },
  {
    "id": "api.file.upload_file.multiple_channel_ids.app_error",
    "translation": "Unable to upload file(s). Multiple conflicting channel_ids."
  },
  {
    "id": "api.file.upload_file.read_form_value.app_error",
    "translation": "Unable to upload file(s). Error reading the value for {{.Formname}}."
  },
  {
    "id": "api.file.upload_file.read_request.app_error",
    "translation": "Unable to upload file(s). Error reading or parsing request data."
  },
  {
    "id": "api.file.upload_file.storage.app_error",
    "translation": "Unable to upload file. Image storage is not configured."
  },
  {
    "id": "api.file.upload_file.too_large_detailed.app_error",
    "translation": "Unable to upload file {{.Filename}}. {{.Length}} bytes exceeds the maximum allowed {{.Limit}} bytes."
  },
  {
    "id": "api.file.write_file.app_error",
    "translation": "Unable to write the file."
  },
  {
    "id": "api.getThreadsForUser.bad_only_params",
    "translation": "OnlyThreads and OnlyTotals parameters to getThreadsForUser are mutually exclusive"
  },
  {
    "id": "api.getThreadsForUser.bad_params",
    "translation": "Before and After parameters to getThreadsForUser are mutually exclusive"
  },
  {
    "id": "api.image.get.app_error",
    "translation": "Requested image url cannot be parsed."
  },
  {
    "id": "api.incoming_webhook.disabled.app_error",
    "translation": "Incoming webhooks have been disabled by the system admin."
  },
  {
    "id": "api.incoming_webhook.invalid_username.app_error",
    "translation": "Invalid username."
  },
  {
    "id": "api.insights.feature_disabled",
    "translation": "Insights is behind a feature flag which is not enabled."
  },
  {
    "id": "api.invalid_channel",
    "translation": "Channel listed in the request doesn't belong to the user"
  },
  {
    "id": "api.invalid_custom_url_scheme",
    "translation": "Invalid custom url scheme has been provided"
  },
  {
    "id": "api.invalid_redirect_url",
    "translation": "Invalid redirect url has been provided"
  },
  {
    "id": "api.io_error",
    "translation": "input/output error"
  },
  {
    "id": "api.job.retrieve.nopermissions",
    "translation": "The job types of a job you are trying to retrieve does not contain permissions"
  },
  {
    "id": "api.job.unable_to_create_job.incorrect_job_type",
    "translation": "The job type of the job you are trying to create is invalid"
  },
  {
    "id": "api.job.unable_to_download_job",
    "translation": "Unable to download this job"
  },
  {
    "id": "api.job.unable_to_download_job.incorrect_job_type",
    "translation": "The job type you are trying to download is not supported at the moment"
  },
  {
    "id": "api.ldap_group.not_found",
    "translation": "ldap group not found"
  },
  {
    "id": "api.ldap_groups.existing_group_name_error",
    "translation": "group name already exists"
  },
  {
    "id": "api.ldap_groups.existing_reserved_name_error",
    "translation": "group name already exists as a reserved name"
  },
  {
    "id": "api.ldap_groups.existing_user_name_error",
    "translation": "group name already exists as a user name"
  },
  {
    "id": "api.ldap_groups.license_error",
    "translation": "your license does not support ldap groups"
  },
  {
    "id": "api.license.add_license.array.app_error",
    "translation": "Empty array under 'license' in request."
  },
  {
    "id": "api.license.add_license.expired.app_error",
    "translation": "License is either expired or has not yet started."
  },
  {
    "id": "api.license.add_license.invalid.app_error",
    "translation": "Invalid license file."
  },
  {
    "id": "api.license.add_license.invalid_count.app_error",
    "translation": "Unable to count total unique users."
  },
  {
    "id": "api.license.add_license.no_file.app_error",
    "translation": "No file under 'license' in request."
  },
  {
    "id": "api.license.add_license.open.app_error",
    "translation": "Could not open license file."
  },
  {
    "id": "api.license.add_license.save.app_error",
    "translation": "License did not save properly."
  },
  {
    "id": "api.license.add_license.save_active.app_error",
    "translation": "Active license ID did not save properly."
  },
  {
    "id": "api.license.add_license.unique_users.app_error",
    "translation": "This license only supports {{.Users}} users, when your system has {{.Count}} unique users. Unique users are counted distinctly by email address. You can see total user count under Site Reports -> View Statistics."
  },
  {
    "id": "api.license.client.old_format.app_error",
    "translation": "New format for the client license is not supported yet. Please specify format=old in the query string."
  },
  {
    "id": "api.license.remove_expired_license.failed.error",
    "translation": "Failed to send the disable license email successfully."
  },
  {
    "id": "api.license.request-trial.bad-request",
    "translation": "The number of users requested is not correct."
  },
  {
    "id": "api.license.request-trial.bad-request.terms-not-accepted",
    "translation": "You must accept the Mattermost Software Evaluation Agreement and Privacy Policy to request a license."
  },
  {
    "id": "api.license.request-trial.can-start-trial.error",
    "translation": "Could not check if a trial can be started"
  },
  {
    "id": "api.license.request-trial.can-start-trial.not-allowed",
    "translation": "Failed to apply new trial license. You have previously applied a trial license to this Mattermost instance.. If you would like to extend your trial period please [contact our sales team](https://mattermost.com/contact-us/)."
  },
  {
    "id": "api.license.request_renewal_link.app_error",
    "translation": "Error getting the license renewal link"
  },
  {
    "id": "api.license.request_renewal_link.cannot_renew_on_cws",
    "translation": "Renewing this license on the portal is not possible"
  },
  {
    "id": "api.license.request_trial_license.app_error",
    "translation": "Unable to get a trial license, please try again or contact with support@mattermost.com."
  },
  {
    "id": "api.license.request_trial_license.embargoed",
    "translation": "We were unable to process the request due to limitations for embargoed countries. [Learn more in our documentation](https://mattermost.com/pl/limitations-for-embargoed-countries), or reach out to legal@mattermost.com for questions around export limitations."
  },
  {
    "id": "api.license.request_trial_license.fail_get_user_count.app_error",
    "translation": "Unable to get a trial license, please try again or contact with support@mattermost.com. Cannot obtain the number of registered users."
  },
  {
    "id": "api.license.true_up_review.create_error",
    "translation": "Could not create true up status record"
  },
  {
    "id": "api.license.true_up_review.get_status_error",
    "translation": "Could not get true up status records"
  },
  {
    "id": "api.license.true_up_review.license_required",
    "translation": "True up review requires a license"
  },
  {
    "id": "api.license.true_up_review.not_allowed_for_cloud",
    "translation": "True up review is not allowed for cloud instances"
  },
  {
    "id": "api.license.true_up_review.user_count_fail",
    "translation": "Could not get the total active users count"
  },
  {
    "id": "api.license.true_up_review.webhook_in_count_fail",
    "translation": "Could not get the total incoming webhook count"
  },
  {
    "id": "api.license.true_up_review.webhook_out_count_fail",
    "translation": "Could not get the total outgoing webhook count"
  },
  {
    "id": "api.license.upgrade_needed.app_error",
    "translation": "Feature requires an upgrade to Enterprise Edition."
  },
  {
    "id": "api.license_error",
    "translation": "api endpoint requires a license"
  },
  {
    "id": "api.marshal_error",
    "translation": "Failed to marshal."
  },
  {
    "id": "api.migrate_to_saml.error",
    "translation": "Unable to migrate SAML."
  },
  {
    "id": "api.no_license",
    "translation": "E10 or E20 license required to use this endpoint."
  },
  {
    "id": "api.oauth.allow_oauth.redirect_callback.app_error",
    "translation": "invalid_request: Supplied redirect_uri did not match registered callback_url."
  },
  {
    "id": "api.oauth.allow_oauth.turn_off.app_error",
    "translation": "The system admin has turned off OAuth2 Service Provider."
  },
  {
    "id": "api.oauth.auth_complete",
    "translation": "Authentication complete"
  },
  {
    "id": "api.oauth.authorize_oauth.disabled.app_error",
    "translation": "The system admin has turned off OAuth2 Service Provider."
  },
  {
    "id": "api.oauth.click_redirect",
    "translation": "If you are not redirected automatically, please click the <a href='{{.Link}}'>link</a>"
  },
  {
    "id": "api.oauth.close_browser",
    "translation": "You can close this browser tab now."
  },
  {
    "id": "api.oauth.get_access_token.bad_client_id.app_error",
    "translation": "invalid_request: Bad client_id."
  },
  {
    "id": "api.oauth.get_access_token.bad_client_secret.app_error",
    "translation": "invalid_request: Missing client_secret."
  },
  {
    "id": "api.oauth.get_access_token.bad_grant.app_error",
    "translation": "invalid_request: Bad grant_type."
  },
  {
    "id": "api.oauth.get_access_token.credentials.app_error",
    "translation": "invalid_client: Invalid client credentials."
  },
  {
    "id": "api.oauth.get_access_token.disabled.app_error",
    "translation": "The system admin has turned off OAuth2 Service Provider."
  },
  {
    "id": "api.oauth.get_access_token.expired_code.app_error",
    "translation": "invalid_grant: Invalid or expired authorization code."
  },
  {
    "id": "api.oauth.get_access_token.internal.app_error",
    "translation": "server_error: Encountered internal server error while accessing database."
  },
  {
    "id": "api.oauth.get_access_token.internal_saving.app_error",
    "translation": "server_error: Encountered internal server error while saving access token to database."
  },
  {
    "id": "api.oauth.get_access_token.internal_session.app_error",
    "translation": "server_error: Encountered internal server error while saving session to database."
  },
  {
    "id": "api.oauth.get_access_token.internal_user.app_error",
    "translation": "server_error: Encountered internal server error while pulling user from database."
  },
  {
    "id": "api.oauth.get_access_token.missing_code.app_error",
    "translation": "invalid_request: Missing code."
  },
  {
    "id": "api.oauth.get_access_token.missing_refresh_token.app_error",
    "translation": "invalid_request: Missing refresh_token."
  },
  {
    "id": "api.oauth.get_access_token.redirect_uri.app_error",
    "translation": "invalid_request: Supplied redirect_uri does not match authorization code redirect_uri."
  },
  {
    "id": "api.oauth.get_access_token.refresh_token.app_error",
    "translation": "invalid_grant: Invalid refresh token."
  },
  {
    "id": "api.oauth.invalid_state_token.app_error",
    "translation": "Invalid state token."
  },
  {
    "id": "api.oauth.redirecting_back",
    "translation": "Redirecting you back to the app."
  },
  {
    "id": "api.oauth.register_oauth_app.turn_off.app_error",
    "translation": "The system admin has turned off OAuth2 Service Provider."
  },
  {
    "id": "api.oauth.revoke_access_token.del_session.app_error",
    "translation": "Error deleting session from DB."
  },
  {
    "id": "api.oauth.revoke_access_token.del_token.app_error",
    "translation": "Error deleting access token from DB."
  },
  {
    "id": "api.oauth.revoke_access_token.get.app_error",
    "translation": "Error getting access token from DB before deletion."
  },
  {
    "id": "api.oauth.singup_with_oauth.disabled.app_error",
    "translation": "User sign-up is disabled."
  },
  {
    "id": "api.oauth.singup_with_oauth.expired_link.app_error",
    "translation": "The signup link has expired."
  },
  {
    "id": "api.oauth.singup_with_oauth.invalid_link.app_error",
    "translation": "The signup link does not appear to be valid."
  },
  {
    "id": "api.outgoing_webhook.disabled.app_error",
    "translation": "Outgoing webhooks have been disabled by the system admin."
  },
  {
    "id": "api.plugin.install.download_failed.app_error",
    "translation": "An error occurred while downloading the plugin."
  },
  {
    "id": "api.plugin.upload.array.app_error",
    "translation": "File array is empty in multipart/form request."
  },
  {
    "id": "api.plugin.upload.file.app_error",
    "translation": "Unable to open file in multipart/form request."
  },
  {
    "id": "api.plugin.upload.no_file.app_error",
    "translation": "Missing file in multipart/form request."
  },
  {
    "id": "api.plugin.verify_plugin.app_error",
    "translation": "Unable to verify plugin signature."
  },
  {
    "id": "api.post.check_for_out_of_channel_group_users.message.none",
    "translation": "@{{.GroupName}} has no members on this team"
  },
  {
    "id": "api.post.check_for_out_of_channel_groups_mentions.message.multiple",
    "translation": "@{{.Usernames}} and @{{.LastUsername}} did not get notified by this mention because they are not in the channel. They cannot be added to the channel because they are not a member of the linked groups. To add them to this channel, they must be added to the linked groups."
  },
  {
    "id": "api.post.check_for_out_of_channel_groups_mentions.message.one",
    "translation": "@{{.Username}} did not get notified by this mention because they are not in the channel. They cannot be added to the channel because they are not a member of the linked groups. To add them to this channel, they must be added to the linked groups."
  },
  {
    "id": "api.post.check_for_out_of_channel_mentions.message.multiple",
    "translation": "@{{.Usernames}} and @{{.LastUsername}} did not get notified by this mention because they are not in the channel."
  },
  {
    "id": "api.post.check_for_out_of_channel_mentions.message.one",
    "translation": "@{{.Username}} did not get notified by this mention because they are not in the channel."
  },
  {
    "id": "api.post.create_post.can_not_post_to_deleted.error",
    "translation": "Can not post to deleted channel."
  },
  {
    "id": "api.post.create_post.channel_root_id.app_error",
    "translation": "Invalid ChannelId for RootId parameter."
  },
  {
    "id": "api.post.create_post.root_id.app_error",
    "translation": "Invalid RootId parameter."
  },
  {
    "id": "api.post.create_webhook_post.creating.app_error",
    "translation": "Error creating post."
  },
  {
    "id": "api.post.deduplicate_create_post.failed_to_get",
    "translation": "Failed to fetch original post after deduplicating a client repeating the same request."
  },
  {
    "id": "api.post.deduplicate_create_post.pending",
    "translation": "Rejected post since another client is making the same request."
  },
  {
    "id": "api.post.delete_post.can_not_delete_post_in_deleted.error",
    "translation": "Can not delete a post in a deleted channel."
  },
  {
    "id": "api.post.disabled_all",
    "translation": "@all has been disabled because the channel has more than {{.Users}} users."
  },
  {
    "id": "api.post.disabled_channel",
    "translation": "@channel has been disabled because the channel has more than {{.Users}} users."
  },
  {
    "id": "api.post.disabled_here",
    "translation": "@here has been disabled because the channel has more than {{.Users}} users."
  },
  {
    "id": "api.post.do_action.action_id.app_error",
    "translation": "Invalid action id."
  },
  {
    "id": "api.post.do_action.action_integration.app_error",
    "translation": "Action integration error."
  },
  {
    "id": "api.post.error_get_post_id.pending",
    "translation": "Unable to get the pending post."
  },
  {
    "id": "api.post.get_message_for_notification.files_sent",
    "translation": {
      "one": "{{.Count}} file sent: {{.Filenames}}",
      "other": "{{.Count}} files sent: {{.Filenames}}"
    }
  },
  {
    "id": "api.post.get_message_for_notification.images_sent",
    "translation": {
      "one": "{{.Count}} image sent: {{.Filenames}}",
      "other": "{{.Count}} images sent: {{.Filenames}}"
    }
  },
  {
    "id": "api.post.link_preview_disabled.app_error",
    "translation": "Link previews have been disabled by the system administrator."
  },
  {
    "id": "api.post.patch_post.can_not_update_post_in_deleted.error",
    "translation": "Can not update a post in a deleted channel."
  },
  {
    "id": "api.post.posts_by_ids.invalid_body.request_error",
    "translation": "The number of Post IDs received has exceeded the maximum size of {{.MaxLength}}"
  },
  {
    "id": "api.post.search_files.invalid_body.app_error",
    "translation": "Unable to parse the request body."
  },
  {
    "id": "api.post.search_posts.invalid_body.app_error",
    "translation": "Unable to parse the request body."
  },
  {
    "id": "api.post.send_notification_and_forget.push_channel_mention",
    "translation": " notified the channel."
  },
  {
    "id": "api.post.send_notification_and_forget.push_comment_on_crt_thread",
    "translation": " replied to a thread you're following."
  },
  {
    "id": "api.post.send_notification_and_forget.push_comment_on_crt_thread_dm",
    "translation": " replied to a thread."
  },
  {
    "id": "api.post.send_notification_and_forget.push_comment_on_post",
    "translation": " commented on your post."
  },
  {
    "id": "api.post.send_notification_and_forget.push_comment_on_thread",
    "translation": " commented on a thread you participated in."
  },
  {
    "id": "api.post.send_notifications_and_forget.push_explicit_mention",
    "translation": " mentioned you."
  },
  {
    "id": "api.post.send_notifications_and_forget.push_general_message",
    "translation": " posted a message."
  },
  {
    "id": "api.post.send_notifications_and_forget.push_image_only",
    "translation": " attached a file."
  },
  {
    "id": "api.post.send_notifications_and_forget.push_message",
    "translation": "sent you a message."
  },
  {
    "id": "api.post.update_post.can_not_update_post_in_deleted.error",
    "translation": "Can not update a post in a deleted channel."
  },
  {
    "id": "api.post.update_post.find.app_error",
    "translation": "Unable to find the existing post or comment to update."
  },
  {
    "id": "api.post.update_post.permissions_details.app_error",
    "translation": "Already deleted id={{.PostId}}."
  },
  {
    "id": "api.post.update_post.permissions_time_limit.app_error",
    "translation": "Post edit is only allowed for {{.timeLimit}} seconds. Please ask your System Administrator for details."
  },
  {
    "id": "api.post.update_post.system_message.app_error",
    "translation": "Unable to update system message."
  },
  {
    "id": "api.post_get_post_by_id.get.app_error",
    "translation": "Unable to get post."
  },
  {
    "id": "api.preference.delete_preferences.delete.app_error",
    "translation": "Unable to delete user preferences."
  },
  {
    "id": "api.preference.delete_preferences.update_sidebar.app_error",
    "translation": "Unable to update sidebar to match deleted preferences"
  },
  {
    "id": "api.preference.preferences_category.get.app_error",
    "translation": "Unable to get user preferences."
  },
  {
    "id": "api.preference.update_preferences.set.app_error",
    "translation": "Unable to set user preferences."
  },
  {
    "id": "api.preference.update_preferences.update_sidebar.app_error",
    "translation": "Unable to update sidebar to match updated preferences"
  },
  {
    "id": "api.push_notification.disabled.app_error",
    "translation": "Push Notifications are disabled on this server."
  },
  {
    "id": "api.push_notification.id_loaded.default_message",
    "translation": "You've received a new message."
  },
  {
    "id": "api.push_notification.id_loaded.fetch.app_error",
    "translation": "An error occurred fetching the ID-loaded push notification."
  },
  {
    "id": "api.push_notification.title.collapsed_threads",
    "translation": "Reply in {{.channelName}}"
  },
  {
    "id": "api.push_notification.title.collapsed_threads_dm",
    "translation": "Reply in Direct Message"
  },
  {
    "id": "api.push_notifications.message.parse.app_error",
    "translation": "An error occurred building the push notification message."
  },
  {
    "id": "api.push_notifications.session.expired",
    "translation": "Session Expired: Please log in to continue receiving notifications. Sessions for {{.siteName}} are configured by your System Administrator to expire every {{.hoursCount}} hour(s)."
  },
  {
    "id": "api.push_notifications_ack.forward.app_error",
    "translation": "An error occurred sending the receipt delivery to the push notification service."
  },
  {
    "id": "api.push_notifications_ack.message.parse.app_error",
    "translation": "An error occurred building the push notification ack message."
  },
  {
    "id": "api.reaction.delete.archived_channel.app_error",
    "translation": "You cannot remove a reaction in an archived channel."
  },
  {
    "id": "api.reaction.save.archived_channel.app_error",
    "translation": "You cannot react in an archived channel."
  },
  {
    "id": "api.reaction.save_reaction.invalid.app_error",
    "translation": "Reaction is not valid."
  },
  {
    "id": "api.reaction.save_reaction.user_id.app_error",
    "translation": "You cannot save reaction for the other user."
  },
  {
    "id": "api.remote_cluster.delete.app_error",
    "translation": "We encountered an error deleting the secure connection."
  },
  {
    "id": "api.remote_cluster.get.app_error",
    "translation": "We encountered an error retrieving a secure connection."
  },
  {
    "id": "api.remote_cluster.invalid_id.app_error",
    "translation": "Invalid id."
  },
  {
    "id": "api.remote_cluster.invalid_topic.app_error",
    "translation": "Invalid topic."
  },
  {
    "id": "api.remote_cluster.save.app_error",
    "translation": "We encountered an error saving the secure connection."
  },
  {
    "id": "api.remote_cluster.save_not_unique.app_error",
    "translation": "Secure connection has already been added."
  },
  {
    "id": "api.remote_cluster.service_not_enabled.app_error",
    "translation": "The remote cluster service is not enabled."
  },
  {
    "id": "api.remote_cluster.update.app_error",
    "translation": "We encountered an error updating the secure connection."
  },
  {
    "id": "api.remote_cluster.update_not_unique.app_error",
    "translation": "Secure connection with the same url already exists."
  },
  {
    "id": "api.restricted_system_admin",
    "translation": "This action is forbidden to a restricted system admin."
  },
  {
    "id": "api.roles.patch_roles.license.error",
    "translation": "Your license does not support advanced permissions."
  },
  {
    "id": "api.roles.patch_roles.not_allowed_permission.error",
    "translation": "One or more of the following permissions that you are trying to add or remove is not allowed"
  },
  {
    "id": "api.scheme.create_scheme.license.error",
    "translation": "Your license does not support creating permissions schemes."
  },
  {
    "id": "api.scheme.delete_scheme.license.error",
    "translation": "Your license not support delete permissions schemes"
  },
  {
    "id": "api.scheme.get_channels_for_scheme.scope.error",
    "translation": "Unable to get the channels for scheme because the supplied scheme is not a channel scheme."
  },
  {
    "id": "api.scheme.get_teams_for_scheme.scope.error",
    "translation": "Unable to get the teams for scheme because the supplied scheme is not a team scheme."
  },
  {
    "id": "api.scheme.patch_scheme.license.error",
    "translation": "Your license does not support update permissions schemes"
  },
  {
    "id": "api.server.cws.delete_workspace.app_error",
    "translation": "CWS Server failed to delete workspace."
  },
  {
    "id": "api.server.cws.health_check.app_error",
    "translation": "CWS Server is not available."
  },
  {
    "id": "api.server.cws.needs_enterprise_edition",
    "translation": "Service only available in Mattermost Enterprise edition"
  },
  {
    "id": "api.server.hosted_signup_unavailable.error",
    "translation": "Portal unavailable for self-hosted signup."
  },
  {
    "id": "api.server.license_up_for_renewal.error_generating_link",
    "translation": "Failed to generate the license renewal link"
  },
  {
    "id": "api.server.license_up_for_renewal.error_sending_email",
    "translation": "Failed to send license up for renewal emails"
  },
  {
    "id": "api.server.start_server.forward80to443.disabled_while_using_lets_encrypt",
    "translation": "Must enable Forward80To443 when using LetsEncrypt"
  },
  {
    "id": "api.server.start_server.forward80to443.enabled_but_listening_on_wrong_port",
    "translation": "Unable to forward port 80 to port 443 while listening on port %s: disable Forward80To443 if using a proxy server"
  },
  {
    "id": "api.server.start_server.rate_limiting_memory_store",
    "translation": "Unable to initialize rate limiting memory store. Check MemoryStoreSize config setting."
  },
  {
    "id": "api.server.start_server.rate_limiting_rate_limiter",
    "translation": "Unable to initialize rate limiting."
  },
  {
    "id": "api.server.start_server.starting.critical",
    "translation": "Error starting server, err:%v"
  },
  {
    "id": "api.server.warn_metric.bot_response.mailto_contact_header",
    "translation": "Contact: {{.Contact}}"
  },
  {
    "id": "api.server.warn_metric.bot_response.mailto_diagnostic_id_header",
    "translation": "Diagnostic Id: {{.DiagnosticId}}"
  },
  {
    "id": "api.server.warn_metric.bot_response.mailto_email_header",
    "translation": "Email: {{.Email}}"
  },
  {
    "id": "api.server.warn_metric.bot_response.mailto_footer",
    "translation": "If you have any additional inquiries, please contact support@mattermost.com"
  },
  {
    "id": "api.server.warn_metric.bot_response.mailto_registered_users_header",
    "translation": "Total Active Users: {{.NoRegisteredUsers}}"
  },
  {
    "id": "api.server.warn_metric.bot_response.mailto_site_url_header",
    "translation": "Site URL: {{.SiteUrl}}"
  },
  {
    "id": "api.server.warn_metric.bot_response.mailto_subject",
    "translation": "Mattermost Contact Us request"
  },
  {
    "id": "api.server.warn_metric.bot_response.notification_failure.body",
    "translation": "Please email us."
  },
  {
    "id": "api.server.warn_metric.bot_response.notification_failure.message",
    "translation": "Message could not be sent."
  },
  {
    "id": "api.server.warn_metric.bot_response.notification_success.message",
    "translation": "Thank you for contacting Mattermost. We will follow up with you soon."
  },
  {
    "id": "api.server.warn_metric.bot_response.start_trial_failure.message",
    "translation": "Trial license could not be retrieved. Visit https://mattermost.com/trial/ to request a license."
  },
  {
    "id": "api.server.warn_metric.email_domain.contact_us.email_body",
    "translation": "Mattermost contact us request. I'm interested in learning more about using Guest Accounts.\r\n"
  },
  {
    "id": "api.server.warn_metric.email_domain.notification_body",
    "translation": "Projects often involve people both inside and outside of an organization. With Guest Accounts, you can bring external partners into your Mattermost system and specify who they can work with and what they can see.\r\n\r\n[Learn more about enabling Guest Accounts](https://www.mattermost.com/docs-guest-accounts/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=guest-accounts).\r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.email_domain.notification_title",
    "translation": "Creating Guest Accounts"
  },
  {
    "id": "api.server.warn_metric.email_domain.start_trial.notification_body",
    "translation": "Projects often involve people both inside and outside of an organization. With Guest Accounts, you can bring external partners into your Mattermost system and specify who they can work with and what they can see.\r\n\r\n[Learn more about enabling Guest Accounts](https://www.mattermost.com/docs-guest-accounts/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=guest-accounts)\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.email_domain.start_trial_notification_success.message",
    "translation": "Your Enterprise trial is now active. Go to **System Console > Authentication > Guest Access** to enable Guest Accounts."
  },
  {
    "id": "api.server.warn_metric.email_us",
    "translation": "Email us"
  },
  {
    "id": "api.server.warn_metric.mfa.contact_us.email_body",
    "translation": "Mattermost contact us request. I'm interested in learning more about enforcing Multi-Factor Authentication.\r\n"
  },
  {
    "id": "api.server.warn_metric.mfa.notification_body",
    "translation": "Your Mattermost system has multi-factor authentication enabled, giving users the choice to secure their accounts with additional means of authentication beyond a password. To improve security across the system you can require all Mattermost accounts to use multi-factor authentication.\r\n\r\n[Learn more about enforcing Multi-Factor Authentication](https://www.mattermost.com/docs-multi-factor-authentication/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=multi-factor-authentication). \r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.mfa.notification_title",
    "translation": "Enforcing Multi-Factor Authentication"
  },
  {
    "id": "api.server.warn_metric.mfa.start_trial.notification_body",
    "translation": "Your Mattermost system has multi-factor authentication enabled, giving users the choice to secure their accounts with additional means of authentication beyond a password. To improve security across the system you can require all Mattermost accounts to use multi-factor authentication.\r\n\r\n[Learn more about enforcing Multi-Factor Authentication](https://www.mattermost.com/docs-multi-factor-authentication/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=multi-factor-authentication)\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.mfa.start_trial_notification_success.message",
    "translation": "Your Enterprise trial is now active. Go to **System Console > Authentication > MFA** to enforce multi-factor authentication."
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_100.contact_us.email_body",
    "translation": "Mattermost contact us request. My team now has 100 users, and I'm considering Mattermost Enterprise Edition.\r\n"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_100.notification_body",
    "translation": "Your Mattermost system has over 100 users. As your user base grows, provisioning new accounts can become time-consuming. We recommend that you integrate your organization’s Active Directory/LDAP, which will allow anyone with an account to access Mattermost.\r\n\r\n[Learn more about integrating with AD/LDAP](https://www.mattermost.com/docs-adldap/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=adldap)\r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_100.notification_title",
    "translation": "Scaling with Mattermost"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_100.start_trial.notification_body",
    "translation": "Your Mattermost system has over 100 users. As your user base grows, provisioning new accounts can become time-consuming. We recommend that you integrate your organization’s Active Directory/LDAP, which will allow anyone with an account to access Mattermost.\r\n\r\n[Learn more about integrating with AD/LDAP](https://www.mattermost.com/docs-adldap/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=adldap)\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_100.start_trial.notification_success.message",
    "translation": "Your Enterprise trial is now active. Go to **System Console > Authentication > AD/LDAP** to integrate your AD/LDAP service."
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_200.contact_us.email_body",
    "translation": "Mattermost contact us request. My team now has 200 users, and I'm considering Mattermost Enterprise Edition.\r\n"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_200.notification_body",
    "translation": "Your Mattermost system now has 200 users. When you connect Mattermost with your organization's single sign-on provider, users can access Mattermost without having to re-enter their credentials. We recommend you integrate your SAML 2.0 provider with your Mattermost server.[Learn more about integrating with SAML 2.0](https://www.mattermost.com/docs-saml/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=saml).\r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_200.notification_title",
    "translation": "Scaling with Mattermost"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_200.start_trial.notification_body",
    "translation": "Your Mattermost system now has 200 users. When you connect Mattermost with your organization's single sign-on provider, users can access Mattermost without having to re-enter their credentials. We recommend you integrate your SAML 2.0 provider with your Mattermost server.[Learn more about integrating with SAML 2.0](https://www.mattermost.com/docs-saml/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=saml)\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_200.start_trial.notification_success.message",
    "translation": "Your Enterprise trial is now active. Go to **System Console > Authentication > SAML 2.0** to integrate with your SAML 2.0 provider."
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_300.contact_us.email_body",
    "translation": "Mattermost contact us request. I'm interested in learning more about creating read-only Announcement Channels.\r\n"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_300.notification_body",
    "translation": "With so much conversation happening across Mattermost, it can be challenging to know where to look for important information. If you want to broadcast a message to a large audience, you can set up read-only Announcement Channels where anyone can join but only channel admins can post messages.\r\n\r\n[Learn more about creating read-only Announcement Channels](https://www.mattermost.com/docs-channel-moderation/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=channel-moderation)\r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_300.start_trial.notification_body",
    "translation": "With so much conversation happening across Mattermost, it can be challenging to know where to look for important information. If you want to broadcast a message to a large audience, you can set up read-only Announcement Channels where anyone can join but only channel admins can post messages.\r\n\r\n[Learn more about creating read-only Announcement Channels](https://www.mattermost.com/docs-channel-moderation/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=channel-moderation)\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_300.start_trial.notification_success.message",
    "translation": "Your Enterprise trial is now active. Create a channel and go to **System Console > User Management > Channels** to limit posting to channel admins."
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_300.start_trial.notification_title",
    "translation": "Read-Only Announcement Channels"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_500.contact_us.email_body",
    "translation": "Mattermost contact us request. My team now has 500 users, and I'm considering Mattermost Enterprise Edition.\r\n"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_500.notification_body",
    "translation": "Mattermost strongly recommends that deployments of over 500 users take advantage of features such as user management, server clustering and performance monitoring. Contact us to learn more and let us know how we can help.\r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_500.notification_title",
    "translation": "Scaling with Mattermost"
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_500.start_trial.notification_body",
    "translation": "Mattermost strongly recommends that deployments of over 500 users take advantage of features such as user management, server clustering and performance monitoring. Contact us to learn more and let us know how we can help.\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.number_of_active_users_500.start_trial.notification_success.message",
    "translation": "Your Enterprise trial is now active. Go to the System Console to enable advanced features."
  },
  {
    "id": "api.server.warn_metric.number_of_channels_50.contact_us.email_body",
    "translation": "Mattermost contact us request. I'm interested in learning more about using Advanced Permissions with System Schemes.\r\n"
  },
  {
    "id": "api.server.warn_metric.number_of_channels_50.notification_body",
    "translation": "Channels help improve communication, but with users across Mattermost joining and creating channels, the challenge of keeping the system organized increases. Advanced Permissions enable you to set which users or roles can perform certain actions, including managing channel settings and members, using @channel or @here to tag broad groups of users, and creating new webhooks.\r\n\r\n[Learn more about using Advanced Permissions](https://www.mattermost.com/docs-advanced-permissions/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=advanced-permissions)\r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.number_of_channels_50.notification_title",
    "translation": "Using Advanced Permissions"
  },
  {
    "id": "api.server.warn_metric.number_of_channels_50.start_trial.notification_body",
    "translation": "Channels help improve communication, but with users across Mattermost joining and creating channels, the challenge of keeping the system organized increases. Advanced Permissions enable you to set which users or roles can perform certain actions, including managing channel settings and members, using @channel or @here to tag broad groups of users, and creating new webhooks.\r\n\r\n[Learn more about using Advanced Permissions](https://www.mattermost.com/docs-advanced-permissions/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=advanced-permissions)\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.number_of_channels_50.start_trial.notification_success.message",
    "translation": "Your Enterprise trial is now active. Go to **System Console > User Management > Permissions** to enable Advanced Permissions."
  },
  {
    "id": "api.server.warn_metric.number_of_posts_2M.contact_us.email_body",
    "translation": "Mattermost contact us request. I'm interested in learning more about improving performance with Elasticsearch.\r\n"
  },
  {
    "id": "api.server.warn_metric.number_of_posts_2M.notification_body",
    "translation": "Your Mattermost system has a large number of messages. The default Mattermost database search starts to show performance degradation at around 2.5 million posts. With over 5 million posts, Elasticsearch can help avoid significant performance issues, such as timeouts, with search and at-mentions. Contact us to learn more and let us know how we can help.\r\n\r\n[Learn more about improving performance](https://www.mattermost.com/docs-elasticsearch/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=elasticsearch)\r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.number_of_posts_2M.notification_title",
    "translation": "Improving Performance"
  },
  {
    "id": "api.server.warn_metric.number_of_posts_2M.start_trial.notification_body",
    "translation": "Your Mattermost system has a large number of messages. The default Mattermost database search starts to show performance degradation at around 2.5 million posts. With over 5 million posts, Elasticsearch can help avoid significant performance issues, such as timeouts, with search and at-mentions. Contact us to learn more and let us know how we can help.\r\n\r\n[Learn more about improving performance](https://www.mattermost.com/docs-elasticsearch/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=elasticsearch)\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.number_of_posts_2M.start_trial.notification_success.message",
    "translation": "Your Enterprise trial is now active. Once you have an Elasticsearch server, go to **System Console > Environment > Elasticsearch** to configure Elasticsearch."
  },
  {
    "id": "api.server.warn_metric.number_of_teams_5.contact_us.email_body",
    "translation": "Mattermost contact us request. I'm interested in learning more about Advanced Permissions with Team Schemes.\r\n"
  },
  {
    "id": "api.server.warn_metric.number_of_teams_5.notification_body",
    "translation": "Your Mattermost system now has several teams. Many teams have their own preferred way of coordinating and collaborating, including how channels are created, who can invite new teammates, and how integrations are managed. Team Override Schemes allow you to customize user permissions within each team to meet their specific needs.\r\n\r\n[Learn more about using Advanced Permissions](https://www.mattermost.com/docs-advanced-permissions-team-override/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=advanced-permissions-team-override).\r\n\r\nBy clicking Contact Us, you'll be sharing your information with Mattermost, Inc. [Learn more](https://mattermost.com/pl/default-admin-advisory)"
  },
  {
    "id": "api.server.warn_metric.number_of_teams_5.notification_title",
    "translation": "Using Advanced Permissions"
  },
  {
    "id": "api.server.warn_metric.number_of_teams_5.start_trial.notification_body",
    "translation": "Your Mattermost system now has several teams. Many teams have their own preferred way of coordinating and collaborating, including how channels are created, who can invite new teammates, and how integrations are managed. Team Override Schemes allow you to customize user permissions within each team to meet their specific needs.\r\n\r\n[Learn more about using Advanced Permissions](https://www.mattermost.com/docs-advanced-permissions-team-override/?utm_medium=product&utm_source=mattermost-advisor-bot&utm_content=advanced-permissions-team-override)\r\n\r\nBy clicking Start trial, I agree to the [Mattermost Software Evaluation Agreement](https://mattermost.com/software-evaluation-agreement/), [Privacy Policy](https://mattermost.com/privacy-policy/), and receiving product emails."
  },
  {
    "id": "api.server.warn_metric.number_of_teams_5.start_trial_notification_success.message",
    "translation": "Your Enterprise trial is now active. Go to **System Console > User Management > Permissions** to enable Advanced Permissions."
  },
  {
    "id": "api.slackimport.slack_add_bot_user.email_pwd",
    "translation": "The Integration/Slack Bot user with email {{.Email}} and password {{.Password}} has been imported.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_bot_user.unable_import",
    "translation": "Unable to import the Integration/Slack Bot user {{.Username}}.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_channels.added",
    "translation": "\r\nChannels added:\r\n"
  },
  {
    "id": "api.slackimport.slack_add_channels.failed_to_add_user",
    "translation": "Unable to add Slack user {{.Username}} to channel.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_channels.import_failed",
    "translation": "Unable to import Slack channel {{.DisplayName}}.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_channels.merge",
    "translation": "The Slack channel {{.DisplayName}} already exists as an active Mattermost channel. Both channels have been merged.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_users.created",
    "translation": "\r\nUsers created:\r\n"
  },
  {
    "id": "api.slackimport.slack_add_users.email_pwd",
    "translation": "Slack user with email {{.Email}} and password {{.Password}} has been imported.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_users.merge_existing",
    "translation": "Slack user merged with an existing Mattermost user with matching email {{.Email}} and username {{.Username}}.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_users.merge_existing_failed",
    "translation": "Slack user merged with an existing Mattermost user with matching email {{.Email}} and username {{.Username}}, but was unable to add the user to their team.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_users.missing_email_address",
    "translation": "User {{.Username}} does not have an email address in the Slack export. Used {{.Email}} as a placeholder. The user should update their email address once logged in to the system.\r\n"
  },
  {
    "id": "api.slackimport.slack_add_users.unable_import",
    "translation": "Unable to import Slack user: {{.Username}}.\r\n"
  },
  {
    "id": "api.slackimport.slack_import.log",
    "translation": "Mattermost Slack Import Log\r\n"
  },
  {
    "id": "api.slackimport.slack_import.note1",
    "translation": "- Some messages may not have been imported because they were not supported by this importer.\r\n"
  },
  {
    "id": "api.slackimport.slack_import.note2",
    "translation": "- Slack bot messages are currently not supported.\r\n"
  },
  {
    "id": "api.slackimport.slack_import.note3",
    "translation": "- Additional errors may be found in the server logs.\r\n"
  },
  {
    "id": "api.slackimport.slack_import.notes",
    "translation": "\r\nNotes:\r\n"
  },
  {
    "id": "api.slackimport.slack_import.open.app_error",
    "translation": "Unable to open the file: {{.Filename}}.\r\n"
  },
  {
    "id": "api.slackimport.slack_import.team_fail",
    "translation": "Unable to get the team to import into.\r\n"
  },
  {
    "id": "api.slackimport.slack_import.zip.app_error",
    "translation": "Unable to open the Slack export zip file.\r\n"
  },
  {
    "id": "api.slackimport.slack_import.zip.file_too_large",
    "translation": "{{.Filename}} in zip archive too large to process for Slack import\r\n"
  },
  {
    "id": "api.status.user_not_found.app_error",
    "translation": "User not found."
  },
  {
    "id": "api.system.id_loaded.not_available.app_error",
    "translation": "ID Loaded Push Notifications are not configured or supported on this server."
  },
  {
    "id": "api.system.logs.invalidFilter",
    "translation": "Invalid log filter"
  },
  {
    "id": "api.system.update_notices.clear_failed",
    "translation": "Clearing old product notices failed"
  },
  {
    "id": "api.system.update_notices.fetch_failed",
    "translation": "Fetching product notices failed"
  },
  {
    "id": "api.system.update_notices.parse_failed",
    "translation": "Parsing product notices failed"
  },
  {
    "id": "api.system.update_notices.validating_failed",
    "translation": "Validating product notice conditions failed"
  },
  {
    "id": "api.system.update_viewed_notices.failed",
    "translation": "Updating viewed notices failed"
  },
  {
    "id": "api.team.add_members.error",
    "translation": "Error adding team member(s)."
  },
  {
    "id": "api.team.add_members.user_denied",
    "translation": "This team is managed by groups.  This user is not part of a group that is synced to this team."
  },
  {
    "id": "api.team.add_team_member.invalid_body.app_error",
    "translation": "Unable to parse the request body."
  },
  {
    "id": "api.team.add_user_to_team.added",
    "translation": "%v added to the team by %v."
  },
  {
    "id": "api.team.add_user_to_team.missing_parameter.app_error",
    "translation": "Parameter required to add user to team."
  },
  {
    "id": "api.team.add_user_to_team_from_invite.guest.app_error",
    "translation": "Guests are restricted from joining a team via an invite link. Please request a guest email invitation to the team."
  },
  {
    "id": "api.team.demote_user_to_guest.disabled.error",
    "translation": "Guest accounts are disabled."
  },
  {
    "id": "api.team.demote_user_to_guest.license.error",
    "translation": "Your license does not support guest accounts"
  },
  {
    "id": "api.team.get_all_teams.insufficient_permissions",
    "translation": "You don't have the appropriate permissions to list all teams"
  },
  {
    "id": "api.team.get_invite_info.not_open_team",
    "translation": "Invite is invalid because this is not an open team."
  },
  {
    "id": "api.team.get_team_icon.filesettings_no_driver.app_error",
    "translation": "Invalid driver name for file settings.  Must be 'local' or 'amazons3'."
  },
  {
    "id": "api.team.get_team_icon.read_file.app_error",
    "translation": "Unable to read the team icon file."
  },
  {
    "id": "api.team.import_team.array.app_error",
    "translation": "Empty array under 'file' in request."
  },
  {
    "id": "api.team.import_team.integer.app_error",
    "translation": "Filesize not an integer."
  },
  {
    "id": "api.team.import_team.no_file.app_error",
    "translation": "No file under 'file' in request."
  },
  {
    "id": "api.team.import_team.no_import_from.app_error",
    "translation": "Malformed request: importFrom field is not present."
  },
  {
    "id": "api.team.import_team.open.app_error",
    "translation": "Could not open file."
  },
  {
    "id": "api.team.import_team.parse.app_error",
    "translation": "Could not parse multipart form."
  },
  {
    "id": "api.team.import_team.unavailable.app_error",
    "translation": "Malformed request: filesize field is not present."
  },
  {
    "id": "api.team.import_team.unknown_import_from.app_error",
    "translation": "Unknown import source."
  },
  {
    "id": "api.team.invalidate_all_email_invites.app_error",
    "translation": "Error invalidating email invites."
  },
  {
    "id": "api.team.invite_guests.channel_in_invalid_team.app_error",
    "translation": "The channels of the invite must be part of the team of the invite."
  },
  {
    "id": "api.team.invite_guests_to_channels.disabled.error",
    "translation": "Guest accounts are disabled"
  },
  {
    "id": "api.team.invite_guests_to_channels.invalid_body.app_error",
    "translation": "Invalid or missing request body."
  },
  {
    "id": "api.team.invite_guests_to_channels.license.error",
    "translation": "Your license does not support guest accounts"
  },
  {
    "id": "api.team.invite_members.disabled.app_error",
    "translation": "Email invitations are disabled."
  },
  {
    "id": "api.team.invite_members.invalid_email.app_error",
    "translation": "The following email addresses do not belong to an accepted domain: {{.Addresses}}. Please contact your System Administrator for details."
  },
  {
    "id": "api.team.invite_members.no_one.app_error",
    "translation": "No one to invite."
  },
  {
    "id": "api.team.invite_members.unable_to_send_email.app_error",
    "translation": "Error while sending the email"
  },
  {
    "id": "api.team.invite_members.unable_to_send_email_with_defaults.app_error",
    "translation": "SMTP is not configured in System Console"
  },
  {
    "id": "api.team.invite_members_to_team_and_channels.invalid_body.app_error",
    "translation": "Invalid request body."
  },
  {
    "id": "api.team.invite_members_to_team_and_channels.invalid_body_parsing.app_error",
    "translation": "Error while parsing the body data."
  },
  {
    "id": "api.team.is_team_creation_allowed.disabled.app_error",
    "translation": "Team creation has been disabled. Please ask your System Administrator for details."
  },
  {
    "id": "api.team.is_team_creation_allowed.domain.app_error",
    "translation": "The user cannot be added as the domain associated with the account is not permitted. Contact your System Administrator for additional details."
  },
  {
    "id": "api.team.join_team.post_and_forget",
    "translation": "%v joined the team."
  },
  {
    "id": "api.team.join_user_to_team.allowed_domains.app_error",
    "translation": "The user cannot be added as the domain associated with the account is not permitted. Contact your System Administrator for additional details."
  },
  {
    "id": "api.team.leave.left",
    "translation": "%v left the team."
  },
  {
    "id": "api.team.move_channel.post.error",
    "translation": "Failed to post channel move message."
  },
  {
    "id": "api.team.move_channel.success",
    "translation": "This channel has been moved to this team from %v."
  },
  {
    "id": "api.team.remove_member.group_constrained.app_error",
    "translation": "Unable to remove a user from a group-constrained team."
  },
  {
    "id": "api.team.remove_team_icon.get_team.app_error",
    "translation": "An error occurred getting the team."
  },
  {
    "id": "api.team.remove_user_from_team.missing.app_error",
    "translation": "The user does not appear to be part of this team."
  },
  {
    "id": "api.team.remove_user_from_team.removed",
    "translation": "%v removed from the team."
  },
  {
    "id": "api.team.search_teams.pagination_not_implemented.private_team_search",
    "translation": "Pagination not implemented for private-only team search."
  },
  {
    "id": "api.team.search_teams.pagination_not_implemented.public_team_search",
    "translation": "Pagination not implemented for public-only team search."
  },
  {
    "id": "api.team.set_team_icon.array.app_error",
    "translation": "Empty array under 'image' in request."
  },
  {
    "id": "api.team.set_team_icon.check_image_limits.app_error",
    "translation": "Image limits check failed. Resolution is too high."
  },
  {
    "id": "api.team.set_team_icon.decode.app_error",
    "translation": "Could not decode team icon."
  },
  {
    "id": "api.team.set_team_icon.encode.app_error",
    "translation": "Could not encode team icon."
  },
  {
    "id": "api.team.set_team_icon.get_team.app_error",
    "translation": "An error occurred getting the team."
  },
  {
    "id": "api.team.set_team_icon.no_file.app_error",
    "translation": "No file under 'image' in request."
  },
  {
    "id": "api.team.set_team_icon.open.app_error",
    "translation": "Could not open image file."
  },
  {
    "id": "api.team.set_team_icon.parse.app_error",
    "translation": "Could not parse multipart form."
  },
  {
    "id": "api.team.set_team_icon.storage.app_error",
    "translation": "Unable to upload team icon. Image storage is not configured."
  },
  {
    "id": "api.team.set_team_icon.too_large.app_error",
    "translation": "Unable to upload team icon. File is too large."
  },
  {
    "id": "api.team.set_team_icon.write_file.app_error",
    "translation": "Could not save team icon."
  },
  {
    "id": "api.team.team_icon.update.app_error",
    "translation": "An error occurred updating the team icon."
  },
  {
    "id": "api.team.update_member_roles.not_a_member",
    "translation": "Specified user is not a member of specified team."
  },
  {
    "id": "api.team.update_restricted_domains.mismatch.app_error",
    "translation": "Restricting team to {{ .Domain }} is not allowed by the system config. Please contact your system administrator."
  },
  {
    "id": "api.team.update_team_member_roles.guest_and_user.app_error",
    "translation": "Invalid team member update: A user must be a guest or a user but not both."
  },
  {
    "id": "api.team.update_team_scheme.license.error",
    "translation": "Your license does not support updating a team's scheme"
  },
  {
    "id": "api.team.update_team_scheme.scheme_scope.error",
    "translation": "Unable to set the scheme to the team because the supplied scheme is not a team scheme."
  },
  {
    "id": "api.templates.cloud_upgrade_confirmation.subject",
    "translation": "Mattermost Upgrade Confirmation"
  },
  {
    "id": "api.templates.cloud_upgrade_confirmation.title",
    "translation": "You are now upgraded!"
  },
  {
    "id": "api.templates.cloud_upgrade_confirmation_monthly.subtitle",
    "translation": "Your {{.WorkspaceName}} workspace has now been upgraded. You'll be billed from {{.Date}}"
  },
  {
    "id": "api.templates.cloud_upgrade_confirmation_yearly.subtitle",
    "translation": "Your {{.WorkspaceName}} workspace has now been upgraded."
  },
  {
    "id": "api.templates.cloud_welcome_email.add_apps_info",
    "translation": "Add apps to your workspace"
  },
  {
    "id": "api.templates.cloud_welcome_email.add_apps_sub_info",
    "translation": "Streamline your work with tools like GitHub, Jira and Zoom. Explore all of the integrations we have on our"
  },
  {
    "id": "api.templates.cloud_welcome_email.app_market_place",
    "translation": "app marketplace."
  },
  {
    "id": "api.templates.cloud_welcome_email.button",
    "translation": "Open Mattermost"
  },
  {
    "id": "api.templates.cloud_welcome_email.download_mm_info",
    "translation": "Download the Mattermost App"
  },
  {
    "id": "api.templates.cloud_welcome_email.info",
    "translation": "Thanks for creating "
  },
  {
    "id": "api.templates.cloud_welcome_email.info2",
    "translation": "Make sure to save or bookmark your link for future use."
  },
  {
    "id": "api.templates.cloud_welcome_email.invite_info",
    "translation": "Invite people to your workspace"
  },
  {
    "id": "api.templates.cloud_welcome_email.invite_sub_info",
    "translation": "Share this link to invite your members to join {{.WorkSpace}}:"
  },
  {
    "id": "api.templates.cloud_welcome_email.mm_apps",
    "translation": "mobile and desktop apps"
  },
  {
    "id": "api.templates.cloud_welcome_email.signin_sub_info",
    "translation": "Sign into your workspace on our"
  },
  {
    "id": "api.templates.cloud_welcome_email.signin_sub_info2",
    "translation": "for the best experience on Windows, Linux, Mac, iOS and Android."
  },
  {
    "id": "api.templates.cloud_welcome_email.start_questions",
    "translation": "Having questions about getting started? Email us at"
  },
  {
    "id": "api.templates.cloud_welcome_email.subject",
    "translation": "Congratulations!"
  },
  {
    "id": "api.templates.cloud_welcome_email.subtitle",
    "translation": "Set up your workspace"
  },
  {
    "id": "api.templates.cloud_welcome_email.subtitle_info",
    "translation": "Take the following steps to build out your teams and get the most out of your workspace."
  },
  {
    "id": "api.templates.cloud_welcome_email.title",
    "translation": "Your workspace is ready to go!"
  },
  {
    "id": "api.templates.cloud_welcome_email.yearly_plan_button",
    "translation": "View your invoice"
  },
  {
    "id": "api.templates.copyright",
    "translation": "© 2021 Mattermost, Inc. 530 Lytton Avenue, Second floor, Palo Alto, CA, 94301"
  },
  {
    "id": "api.templates.deactivate_body.info",
    "translation": "You deactivated your account on {{ .SiteURL }}."
  },
  {
    "id": "api.templates.deactivate_body.title",
    "translation": "Your account has been deactivated at {{ .ServerURL }}"
  },
  {
    "id": "api.templates.deactivate_body.warning",
    "translation": "If this change was not initiated by you or you want to reactivate your account, contact your system administrator."
  },
  {
    "id": "api.templates.deactivate_subject",
    "translation": "[{{ .SiteName }}] Your account at {{ .ServerURL }} has been deactivated"
  },
  {
    "id": "api.templates.delinquency_14.button",
    "translation": "Update payment"
  },
  {
    "id": "api.templates.delinquency_14.subject",
    "translation": "Payment is overdue for your Mattermost {{.Plan}}"
  },
  {
    "id": "api.templates.delinquency_14.subtitle1",
    "translation": "We weren't able to charge the credit card we have on file. This means your workspace is at risk of being downgraded to Cloud Free."
  },
  {
    "id": "api.templates.delinquency_14.subtitle2",
    "translation": "Please contact your financial institution to resolve any issues. Then, update your payment details as needed."
  },
  {
    "id": "api.templates.delinquency_14.title",
    "translation": "Payment not received"
  },
  {
    "id": "api.templates.delinquency_30.bullet.files",
    "translation": "Files"
  },
  {
    "id": "api.templates.delinquency_30.bullet.message_history",
    "translation": "Message history"
  },
  {
    "id": "api.templates.delinquency_30.button",
    "translation": "Update payment"
  },
  {
    "id": "api.templates.delinquency_30.limits_documentation",
    "translation": "View all limits documentation."
  },
  {
    "id": "api.templates.delinquency_30.subject",
    "translation": "Act to keep your Mattermost {{.Plan}} Features"
  },
  {
    "id": "api.templates.delinquency_30.subtitle1",
    "translation": "You have time to keep your Mattermost {{.Plan}} active but you'll need to resolve issues with your payment method."
  },
  {
    "id": "api.templates.delinquency_30.subtitle2",
    "translation": "If no action is taken, your workspace will be downgraded and the following data may be archived:"
  },
  {
    "id": "api.templates.delinquency_30.title",
    "translation": "Your workspace will be downgraded soon"
  },
  {
    "id": "api.templates.delinquency_45.button",
    "translation": "Update payment"
  },
  {
    "id": "api.templates.delinquency_45.subject",
    "translation": "Notice: Your Mattermost {{.Plan}} will be downgraded soon"
  },
  {
    "id": "api.templates.delinquency_45.subtitle1",
    "translation": "We've been unable to collect payment for outstanding invoices since {{.DelinquencyDate}}. Your workspace is at risk of being downgraded."
  },
  {
    "id": "api.templates.delinquency_45.subtitle2",
    "translation": "A downgraded workspace might negatively affect critical workflows and other business critical activities carried at your workspace."
  },
  {
    "id": "api.templates.delinquency_45.subtitle3",
    "translation": "Update your credit card information now."
  },
  {
    "id": "api.templates.delinquency_45.title",
    "translation": "Your workspace will be downgraded soon"
  },
  {
    "id": "api.templates.delinquency_60.button",
    "translation": "Update payment"
  },
  {
    "id": "api.templates.delinquency_60.downgrade_to_free",
    "translation": "Downgrade to Cloud Free"
  },
  {
    "id": "api.templates.delinquency_60.subject",
    "translation": "Action Required: Workspace will be downgraded in 30 days"
  },
  {
    "id": "api.templates.delinquency_60.subtitle1",
    "translation": "Please update your payment information soon to process your outstanding invoices."
  },
  {
    "id": "api.templates.delinquency_60.subtitle2",
    "translation": "We will downgrade your workspace automatically in 30 days if we are unable to process your payment."
  },
  {
    "id": "api.templates.delinquency_60.subtitle3",
    "translation": "Update your payment information now or downgrade to Cloud Free below."
  },
  {
    "id": "api.templates.delinquency_60.title",
    "translation": "Your Mattermost workspace will be downgraded in 30 days"
  },
  {
    "id": "api.templates.delinquency_7.button",
    "translation": "Update payment"
  },
  {
    "id": "api.templates.delinquency_7.subtitle1",
    "translation": "We couldn't process your most recent payment."
  },
  {
    "id": "api.templates.delinquency_7.subtitle2",
    "translation": "To keep your {{.Plan}} plan active, please contact your financial institution as soon as possible. Then, update your payment details as needed."
  },
  {
    "id": "api.templates.delinquency_7.title",
    "translation": "Your payment wasn't completed"
  },
  {
    "id": "api.templates.delinquency_75.button",
    "translation": "Update payment"
  },
  {
    "id": "api.templates.delinquency_75.downgrade_to_free",
    "translation": "Downgrade to Cloud Free"
  },
  {
    "id": "api.templates.delinquency_75.subject",
    "translation": "Your Mattermost {{.Plan}} will be downgraded in 15 days"
  },
  {
    "id": "api.templates.delinquency_75.subtitle1",
    "translation": "This is a final reminder that we haven’t received payment for your Mattermost Cloud workspace since {{.DelinquencyDate}}."
  },
  {
    "id": "api.templates.delinquency_75.subtitle2",
    "translation": "Your workspace will be downgraded to Cloud Free. Your {{.Plan}} features will be locked and some of your workspace data may be archived until your full outstanding balance is settled."
  },
  {
    "id": "api.templates.delinquency_75.subtitle3",
    "translation": "Update your payment information now, or downgrade to Cloud Free."
  },
  {
    "id": "api.templates.delinquency_75.title",
    "translation": "Your workspace will be downgraded in 15 days"
  },
  {
    "id": "api.templates.delinquency_90.button",
    "translation": "Update payment"
  },
  {
    "id": "api.templates.delinquency_90.secondary_action_button",
    "translation": "View Plans & Pricing"
  },
  {
    "id": "api.templates.delinquency_90.subject",
    "translation": "Your Mattermost Cloud workspace has been downgraded"
  },
  {
    "id": "api.templates.delinquency_90.subtitle1",
    "translation": "If you use Cloud Professional or Enterprise features for important business operations, these will no longer be available and you'll experience degraded performance."
  },
  {
    "id": "api.templates.delinquency_90.subtitle2",
    "translation": "In addition, your data may have been archived due to Cloud Free limitations."
  },
  {
    "id": "api.templates.delinquency_90.subtitle3",
    "translation": "To unarchive your data and keep paid features, update your payment information."
  },
  {
    "id": "api.templates.delinquency_90.title",
    "translation": "Your Mattermost workspace has been downgraded"
  },
  {
    "id": "api.templates.email_change_body.info",
    "translation": "Your email address for {{.TeamDisplayName}} has been changed to {{.NewEmail}}."
  },
  {
    "id": "api.templates.email_change_body.title",
    "translation": "You updated your email"
  },
  {
    "id": "api.templates.email_change_subject",
    "translation": "[{{ .SiteName }}] Your email address has changed"
  },
  {
    "id": "api.templates.email_change_verify_body.button",
    "translation": "Verify Email"
  },
  {
    "id": "api.templates.email_change_verify_body.info",
    "translation": "To finish updating your email address for {{.TeamDisplayName}}, please click the link below to confirm this is the right address."
  },
  {
    "id": "api.templates.email_change_verify_body.title",
    "translation": "You successfully updated your email"
  },
  {
    "id": "api.templates.email_change_verify_subject",
    "translation": "[{{ .SiteName }}] Verify new email address"
  },
  {
    "id": "api.templates.email_footer",
    "translation": "To change your notification preferences, log in to your team site and go to Settings > Notifications."
  },
  {
    "id": "api.templates.email_footer_v2",
    "translation": "© 2022 Mattermost, Inc. 530 Lytton Avenue, Second floor, Palo Alto, CA, 94301"
  },
  {
    "id": "api.templates.email_info1",
    "translation": "Any questions at all, mail us any time: "
  },
  {
    "id": "api.templates.email_info2",
    "translation": "Best wishes,"
  },
  {
    "id": "api.templates.email_info3",
    "translation": "The {{.SiteName}} Team"
  },
  {
    "id": "api.templates.email_organization",
    "translation": "Sent by "
  },
  {
    "id": "api.templates.email_us_anytime_at",
    "translation": "Email us any time at "
  },
  {
    "id": "api.templates.email_warning",
    "translation": "If you did not make this change, please contact the system administrator."
  },
  {
    "id": "api.templates.invite_body.button",
    "translation": "Join now"
  },
  {
    "id": "api.templates.invite_body.subTitle",
    "translation": "Start collaborating with your team on Mattermost"
  },
  {
    "id": "api.templates.invite_body.title",
    "translation": "{{ .SenderName }} invited you to join the {{ .TeamDisplayName }} team."
  },
  {
    "id": "api.templates.invite_body.title.reminder",
    "translation": "Reminder"
  },
  {
    "id": "api.templates.invite_body_footer.info",
    "translation": "Mattermost is a flexible, open source messaging platform that enables secure team collaboration."
  },
  {
    "id": "api.templates.invite_body_footer.learn_more",
    "translation": "Learn more"
  },
  {
    "id": "api.templates.invite_body_footer.title",
    "translation": "What is Mattermost?"
  },
  {
    "id": "api.templates.invite_body_guest.subTitle",
    "translation": "You were invited as a guest to collaborate with the team"
  },
  {
    "id": "api.templates.invite_guest_subject",
    "translation": "[{{ .SiteName }}] {{ .SenderName }} invited you to join the team {{ .TeamDisplayName }} as a guest"
  },
  {
    "id": "api.templates.invite_subject",
    "translation": "[{{ .SiteName }}] {{ .SenderName }} invited you to join {{ .TeamDisplayName }} Team"
  },
  {
    "id": "api.templates.invite_team_and_channel_body.title",
    "translation": "{{ .SenderName }} invited you to join the {{ .ChannelName }} Channel on the {{ .TeamDisplayName }} Team"
  },
  {
    "id": "api.templates.invite_team_and_channel_subject",
    "translation": "[{{ .SiteName }}] {{ .SenderName }} invited you to join the {{ .ChannelName }} Channel on the {{ .TeamDisplayName }} Team"
  },
  {
    "id": "api.templates.invite_team_and_channels_body.title",
    "translation": "{{ .SenderName }} invited you to join {{ .ChannelsLen }} channels on the {{ .TeamDisplayName }} Team"
  },
  {
    "id": "api.templates.invite_team_and_channels_subject",
    "translation": "[{{ .SiteName }}] {{ .SenderName }} invited you to join {{ .ChannelsLen }} channels on the {{ .TeamDisplayName }} Team"
  },
  {
    "id": "api.templates.license_up_for_renewal_contact_sales",
    "translation": "Contact sales"
  },
  {
    "id": "api.templates.license_up_for_renewal_renew_now",
    "translation": "Renew now"
  },
  {
    "id": "api.templates.license_up_for_renewal_subject",
    "translation": "Your license is up for renewal"
  },
  {
    "id": "api.templates.license_up_for_renewal_subtitle",
    "translation": "{{.UserName}}, your subscription is set to expire in {{.Days}} days. We hope you’re experiencing the flexible, secure team collaboration that Mattermost enables. Renew soon to ensure your team can keep enjoying these benefits."
  },
  {
    "id": "api.templates.license_up_for_renewal_subtitle_two",
    "translation": "Log in to your Customer Account to renew"
  },
  {
    "id": "api.templates.license_up_for_renewal_title",
    "translation": "Your Mattermost subscription is up for renewal"
  },
  {
    "id": "api.templates.mfa_activated_body.info",
    "translation": "Multi-factor authentication has been added to your account on {{ .SiteURL }}."
  },
  {
    "id": "api.templates.mfa_activated_body.title",
    "translation": "Multi-factor authentication was added"
  },
  {
    "id": "api.templates.mfa_change_subject",
    "translation": "[{{ .SiteName }}] Your MFA has been updated"
  },
  {
    "id": "api.templates.mfa_deactivated_body.info",
    "translation": "Multi-factor authentication has been removed from your account on {{ .SiteURL }}."
  },
  {
    "id": "api.templates.mfa_deactivated_body.title",
    "translation": "Multi-factor authentication was removed"
  },
  {
    "id": "api.templates.password_change_body.info",
    "translation": "Your password has been updated for {{.TeamDisplayName}} on {{ .TeamURL }} by {{.Method}}."
  },
  {
    "id": "api.templates.password_change_body.title",
    "translation": "Your password has been updated"
  },
  {
    "id": "api.templates.password_change_subject",
    "translation": "[{{ .SiteName }}] Your password has been updated"
  },
  {
    "id": "api.templates.payment_failed.info1",
    "translation": "Your financial institution declined a payment from your {{.CardBrand}} ****{{.LastFour}} associated with your Mattermost Cloud workspace."
  },
  {
    "id": "api.templates.payment_failed.info2",
    "translation": "They provided the following reason:"
  },
  {
    "id": "api.templates.payment_failed.info3",
    "translation": "To ensure uninterrupted access to Mattermost {{.Plan}}, please either contact your financial institution to fix the underlying problem or update your payment information. Once payment information is updated, Mattermost will attempt to settle any outstanding balance."
  },
  {
    "id": "api.templates.payment_failed.subject",
    "translation": "Action required: Payment failed for Mattermost {{.Plan}}"
  },
  {
    "id": "api.templates.payment_failed.title",
    "translation": "The payment wasn't successful"
  },
  {
    "id": "api.templates.payment_failed_no_card.button",
    "translation": "Pay now"
  },
  {
    "id": "api.templates.payment_failed_no_card.info1",
    "translation": "Your Mattermost Cloud invoice for the most recent billing period has been processed. However, we don't have your payment details on file."
  },
  {
    "id": "api.templates.payment_failed_no_card.info3",
    "translation": "To review your invoice and add a payment method, select Pay now."
  },
  {
    "id": "api.templates.payment_failed_no_card.subject",
    "translation": "Payment is due for your Mattermost Cloud subscription"
  },
  {
    "id": "api.templates.payment_failed_no_card.title",
    "translation": "Your Mattermost Cloud Invoice is due"
  },
  {
    "id": "api.templates.post_body.button",
    "translation": "Reply in Mattermost"
  },
  {
    "id": "api.templates.questions_footer.info",
    "translation": "Need help or have questions? Email us at "
  },
  {
    "id": "api.templates.questions_footer.title",
    "translation": "Questions?"
  },
  {
    "id": "api.templates.remove_expired_license.body.renew_button",
    "translation": "Renew License Now"
  },
  {
    "id": "api.templates.remove_expired_license.body.title",
    "translation": "Your Enterprise Edition license has expired and some features may be disabled. Please renew your license now."
  },
  {
    "id": "api.templates.remove_expired_license.subject",
    "translation": "Mattermost Enterprise license has been disabled."
  },
  {
    "id": "api.templates.reset_body.button",
    "translation": "Reset Password"
  },
  {
    "id": "api.templates.reset_body.info",
    "translation": "The password reset link expires in 24 hours."
  },
  {
    "id": "api.templates.reset_body.subTitle",
    "translation": "Click the button below to reset your password. If you didn’t request this, you can safely ignore this email."
  },
  {
    "id": "api.templates.reset_body.title",
    "translation": "Reset Your Password"
  },
  {
    "id": "api.templates.reset_subject",
    "translation": "[{{ .SiteName }}] Reset your password"
  },
  {
    "id": "api.templates.server_inactivity_button",
    "translation": "Open Mattermost"
  },
  {
    "id": "api.templates.server_inactivity_footer_disclaimer",
    "translation": "You received this one-time email because your Mattermost server was inactive for more than {{.Hours}} hours. This email was automatically generated by your Mattermost server."
  },
  {
    "id": "api.templates.server_inactivity_info",
    "translation": "Come and check it out!"
  },
  {
    "id": "api.templates.server_inactivity_info_bullet",
    "translation": "Guest Access to specified "
  },
  {
    "id": "api.templates.server_inactivity_info_bullet1",
    "translation": "Workflow management with "
  },
  {
    "id": "api.templates.server_inactivity_info_bullet2",
    "translation": "Manage tasks using "
  },
  {
    "id": "api.templates.server_inactivity_subject",
    "translation": "Come open Mattermost to increase your team’s productivity!"
  },
  {
    "id": "api.templates.server_inactivity_subtitle",
    "translation": "Hey {{.Name}}, we’ve noticed that your Mattermost server is collecting a bit of dust. Take a look at some features that can help lighten your team's workload."
  },
  {
    "id": "api.templates.server_inactivity_title",
    "translation": "Unlock increased productivity with these awesome features"
  },
  {
    "id": "api.templates.signin_change_email.body.info",
    "translation": "You updated your sign-in method on {{ .SiteName }} to {{.Method}}."
  },
  {
    "id": "api.templates.signin_change_email.body.method_email",
    "translation": "email and password"
  },
  {
    "id": "api.templates.signin_change_email.body.title",
    "translation": "You updated your sign-in method"
  },
  {
    "id": "api.templates.signin_change_email.subject",
    "translation": "[{{ .SiteName }}] Your sign-in method has been updated"
  },
  {
    "id": "api.templates.user_access_token_body.info",
    "translation": "A personal access token was added to your account on {{ .SiteURL }}. They can be used to access {{.SiteName}} with your account."
  },
  {
    "id": "api.templates.user_access_token_body.title",
    "translation": "Personal access token added to your account"
  },
  {
    "id": "api.templates.user_access_token_subject",
    "translation": "[{{ .SiteName }}] Personal access token added to your account"
  },
  {
    "id": "api.templates.username_change_body.info",
    "translation": "Your username for {{.TeamDisplayName}} has been changed to {{.NewUsername}}."
  },
  {
    "id": "api.templates.username_change_body.title",
    "translation": "You updated your username"
  },
  {
    "id": "api.templates.username_change_subject",
    "translation": "[{{ .SiteName }}] Your username has changed"
  },
  {
    "id": "api.templates.verify_body.button",
    "translation": "Verify Email"
  },
  {
    "id": "api.templates.verify_body.info",
    "translation": "This email address was used to create an account with Mattermost."
  },
  {
    "id": "api.templates.verify_body.info1",
    "translation": "If it was not you, you can safely ignore this email."
  },
  {
    "id": "api.templates.verify_body.serverURL",
    "translation": "{{ .ServerURL }}."
  },
  {
    "id": "api.templates.verify_body.subTitle1",
    "translation": "Thanks for joining "
  },
  {
    "id": "api.templates.verify_body.subTitle2",
    "translation": "Click below to verify your email address."
  },
  {
    "id": "api.templates.verify_body.title",
    "translation": "Verify your email address"
  },
  {
    "id": "api.templates.verify_subject",
    "translation": "[{{ .SiteName }}] Email Verification"
  },
  {
    "id": "api.templates.warn_metric_ack.body.contact_email_header",
    "translation": "Email: "
  },
  {
    "id": "api.templates.warn_metric_ack.body.contact_name_header",
    "translation": "Contact: "
  },
  {
    "id": "api.templates.warn_metric_ack.body.diagnostic_id_header",
    "translation": "Diagnostic Id: "
  },
  {
    "id": "api.templates.warn_metric_ack.body.registered_users_header",
    "translation": "Total Active Users: "
  },
  {
    "id": "api.templates.warn_metric_ack.body.site_url_header",
    "translation": "Site URL: "
  },
  {
    "id": "api.templates.warn_metric_ack.footer",
    "translation": "If you have any additional inquiries, please contact support@mattermost.com"
  },
  {
    "id": "api.templates.warn_metric_ack.subject",
    "translation": "Mattermost Contact Us request"
  },
  {
    "id": "api.templates.welcome_body.app_download_button",
    "translation": "Download"
  },
  {
    "id": "api.templates.welcome_body.app_download_info",
    "translation": "For the best experience, download the apps for PC, Mac, iOS and Android."
  },
  {
    "id": "api.templates.welcome_body.app_download_title",
    "translation": "Download the desktop and mobile apps"
  },
  {
    "id": "api.templates.welcome_body.button",
    "translation": "Verify Email"
  },
  {
    "id": "api.templates.welcome_body.info",
    "translation": "This email address was used to create an account with Mattermost."
  },
  {
    "id": "api.templates.welcome_body.info1",
    "translation": "If it was not you, you can safely ignore this email."
  },
  {
    "id": "api.templates.welcome_body.serverURL",
    "translation": "{{ .ServerURL }}."
  },
  {
    "id": "api.templates.welcome_body.subTitle1",
    "translation": "Thanks for joining "
  },
  {
    "id": "api.templates.welcome_body.subTitle2",
    "translation": "Click below to verify your email address."
  },
  {
    "id": "api.templates.welcome_body.title",
    "translation": "Welcome to the team"
  },
  {
    "id": "api.templates.welcome_subject",
    "translation": "[{{ .SiteName }}] You joined {{ .ServerURL }}"
  },
  {
    "id": "api.unable_to_create_zip_file",
    "translation": "Error creating zip file."
  },
  {
    "id": "api.unable_to_read_file_from_backend",
    "translation": "Error reading file from backend"
  },
  {
    "id": "api.unmarshal_error",
    "translation": "Failed to unmarshal."
  },
  {
    "id": "api.upgrade_to_enterprise.already-done.app_error",
    "translation": "You have already upgraded to Mattermost Enterprise Edition. Please restart the server to finish the upgrade."
  },
  {
    "id": "api.upgrade_to_enterprise.already-enterprise.app_error",
    "translation": "You cannot upgrade because you are already running Mattermost Enterprise Edition."
  },
  {
    "id": "api.upgrade_to_enterprise.app_error",
    "translation": "An upgrade to Mattermost Enterprise Edition is already running."
  },
  {
    "id": "api.upgrade_to_enterprise.generic_error.app_error",
    "translation": "Mattermost was unable to upgrade to Enterprise Edition."
  },
  {
    "id": "api.upgrade_to_enterprise.invalid-permission.app_error",
    "translation": "Mattermost was unable to upgrade to Enterprise Edition. The Mattermost system user {{.MattermostUsername}} does not have write access to the necessary binary file. A system administrator can update the file permissions by executing the following command on the server where Mattermost is installed:\n\n```\nchmod +w \"{{.Path}}\"\n```\n\nAfter changing the file permissions, try to upgrade Mattermost again. When you have upgraded and restarted, remember to restore the original binary file permissions:\n\n```\nchmod -w \"{{.Path}}\"\n```"
  },
  {
    "id": "api.upgrade_to_enterprise.invalid-user-and-permission.app_error",
    "translation": "Mattermost was unable to upgrade to Enterprise Edition. The Mattermost system user {{.MattermostUsername}} does not have write access to the necessary binary file. A system administrator can update the file permissions by executing the following command on the server where Mattermost is installed:\n\n```\nchown {{.MattermostUsername}} \"{{.Path}}\"\nchmod +w \"{{.Path}}\"\n```\n\nAfter changing the file permissions, try to upgrade Mattermost again. When you have upgraded and restarted, remember to restore the original binary file permissions:\n\n```\nchown {{.FileUsername}} \"{{.Path}}\"\nchmod -w \"{{.Path}}\"\n```"
  },
  {
    "id": "api.upgrade_to_enterprise.invalid-user.app_error",
    "translation": "Mattermost was unable to upgrade to Enterprise Edition. The Mattermost system user {{.MattermostUsername}} does not have write access to the necessary binary file. A system administrator can update the file permissions by executing the following command on the server where Mattermost is installed:\n\n```\nchown {{.MattermostUsername}} \"{{.Path}}\"\n```\n\nAfter changing the file permissions, try to upgrade Mattermost again. When you have upgraded and restarted, remember to restore the original binary file permissions:\n\n```\nchown {{.FileUsername}} \"{{.Path}}\"\n```"
  },
  {
    "id": "api.upgrade_to_enterprise.system_not_supported.app_error",
    "translation": "Mattermost was unable to upgrade to Enterprise Edition. This feature will only work on Linux systems with x86-64 architecture."
  },
  {
    "id": "api.upgrade_to_enterprise_status.app_error",
    "translation": "Mattermost was unable to upgrade to Enterprise Edition."
  },
  {
    "id": "api.upgrade_to_enterprise_status.signature.app_error",
    "translation": "Mattermost was unable to upgrade to Enterprise Edition. The digital signature of the downloaded binary file could not be verified."
  },
  {
    "id": "api.upload.create.upload_too_large.app_error",
    "translation": "Unable to upload file. File is too large."
  },
  {
    "id": "api.upload.get_upload.forbidden.app_error",
    "translation": "Failed to get upload."
  },
  {
    "id": "api.upload.upload_data.invalid_content_length",
    "translation": "Invalid Content-Length."
  },
  {
    "id": "api.upload.upload_data.invalid_content_type",
    "translation": "Invalid Content-Type for multipart upload."
  },
  {
    "id": "api.upload.upload_data.multipart_error",
    "translation": "Failed to process the multipart data."
  },
  {
    "id": "api.user.activate_mfa.email_and_ldap_only.app_error",
    "translation": "MFA is not available for this account type."
  },
  {
    "id": "api.user.add_direct_channels_and_forget.failed.error",
    "translation": "Failed to add direct channel preferences for user user_id={{.UserId}}, team_id={{.TeamId}}, err={{.Error}}"
  },
  {
    "id": "api.user.add_user_to_group_syncables.not_ldap_user.app_error",
    "translation": "not an ldap user"
  },
  {
    "id": "api.user.authorize_oauth_user.bad_response.app_error",
    "translation": "Bad response from token request."
  },
  {
    "id": "api.user.authorize_oauth_user.bad_token.app_error",
    "translation": "Bad token type."
  },
  {
    "id": "api.user.authorize_oauth_user.invalid_state.app_error",
    "translation": "Invalid state"
  },
  {
    "id": "api.user.authorize_oauth_user.missing.app_error",
    "translation": "Missing access token."
  },
  {
    "id": "api.user.authorize_oauth_user.response.app_error",
    "translation": "Received invalid response from OAuth service provider."
  },
  {
    "id": "api.user.authorize_oauth_user.saml_response_too_long.app_error",
    "translation": "SAML response is too long"
  },
  {
    "id": "api.user.authorize_oauth_user.service.app_error",
    "translation": "Token request to {{.Service}} failed."
  },
  {
    "id": "api.user.authorize_oauth_user.token_failed.app_error",
    "translation": "Token request failed."
  },
  {
    "id": "api.user.authorize_oauth_user.unsupported.app_error",
    "translation": "{{.Service}} SSO through OAuth 2.0 not available on this server."
  },
  {
    "id": "api.user.autocomplete_users.missing_team_id.app_error",
    "translation": "Team id parameter is required to autocomplete by channel."
  },
  {
    "id": "api.user.check_user_login_attempts.too_many.app_error",
    "translation": "Your account is locked because of too many failed password attempts. Please reset your password."
  },
  {
    "id": "api.user.check_user_mfa.bad_code.app_error",
    "translation": "Invalid MFA token."
  },
  {
    "id": "api.user.check_user_password.invalid.app_error",
    "translation": "Login failed because of invalid password."
  },
  {
    "id": "api.user.complete_switch_with_oauth.blank_email.app_error",
    "translation": "Blank email."
  },
  {
    "id": "api.user.complete_switch_with_oauth.parse.app_error",
    "translation": "Could not parse auth data out of {{.Service}} user object."
  },
  {
    "id": "api.user.create_email_token.error",
    "translation": "Failed to create token data for email verification"
  },
  {
    "id": "api.user.create_oauth_user.already_attached.app_error",
    "translation": "There is already an account associated with that email address using a sign in method other than {{.Service}}. Please sign in using {{.Auth}}."
  },
  {
    "id": "api.user.create_oauth_user.create.app_error",
    "translation": "Could not create user out of {{.Service}} user object."
  },
  {
    "id": "api.user.create_password_token.error",
    "translation": "Unable to create password recovery token"
  },
  {
    "id": "api.user.create_profile_image.default_font.app_error",
    "translation": "Could not create default profile image font."
  },
  {
    "id": "api.user.create_profile_image.encode.app_error",
    "translation": "Could not encode default profile image."
  },
  {
    "id": "api.user.create_profile_image.initial.app_error",
    "translation": "Could not add user initial to default profile picture."
  },
  {
    "id": "api.user.create_user.accepted_domain.app_error",
    "translation": "The email you provided does not belong to an accepted domain. Please contact your administrator or sign up with a different email."
  },
  {
    "id": "api.user.create_user.bad_token_email_data.app_error",
    "translation": "The email address in the token does not match the one in the user data."
  },
  {
    "id": "api.user.create_user.disabled.app_error",
    "translation": "User creation is disabled."
  },
  {
    "id": "api.user.create_user.guest_accounts.disabled.app_error",
    "translation": "Guest accounts are disabled."
  },
  {
    "id": "api.user.create_user.guest_accounts.license.app_error",
    "translation": "Your license does not support guest accounts."
  },
  {
    "id": "api.user.create_user.invalid_invitation_type.app_error",
    "translation": "Unable to create the user, invalid invitation."
  },
  {
    "id": "api.user.create_user.no_open_server",
    "translation": "This server does not allow open signups.  Please speak with your Administrator to receive an invitation."
  },
  {
    "id": "api.user.create_user.signup_email_disabled.app_error",
    "translation": "User sign-up with email is disabled."
  },
  {
    "id": "api.user.create_user.signup_link_expired.app_error",
    "translation": "The signup link has expired."
  },
  {
    "id": "api.user.create_user.signup_link_invalid.app_error",
    "translation": "The signup link does not appear to be valid."
  },
  {
    "id": "api.user.delete_channel.not_enabled.app_error",
    "translation": "Permanent channel deletion feature is not enabled. Please contact your System Administrator."
  },
  {
    "id": "api.user.delete_team.not_enabled.app_error",
    "translation": "Permanent team deletion feature is not enabled. Please contact your System Administrator."
  },
  {
    "id": "api.user.delete_user.not_enabled.app_error",
    "translation": "Permanent user deletion feature is not enabled. Please contact your System Administrator."
  },
  {
    "id": "api.user.demote_user_to_guest.already_guest.app_error",
    "translation": "Unable to convert the user to guest because is already a guest."
  },
  {
    "id": "api.user.email_to_ldap.not_available.app_error",
    "translation": "AD/LDAP not available on this server."
  },
  {
    "id": "api.user.email_to_oauth.not_available.app_error",
    "translation": "Authentication Transfer not configured or available on this server."
  },
  {
    "id": "api.user.get_authorization_code.endpoint.app_error",
    "translation": "Error retrieving endpoint from Discovery Document."
  },
  {
    "id": "api.user.get_uploads_for_user.forbidden.app_error",
    "translation": "Failed to get uploads."
  },
  {
    "id": "api.user.get_user_by_email.permissions.app_error",
    "translation": "Unable to get user by email."
  },
  {
    "id": "api.user.get_users.validation.app_error",
    "translation": "Error fetching roles during validation."
  },
  {
    "id": "api.user.invalidate_verify_email_tokens.error",
    "translation": "Unable to get tokens by type when invalidating email verification tokens"
  },
  {
    "id": "api.user.invalidate_verify_email_tokens_delete.error",
    "translation": "Unable to remove token when invalidating email verification tokens"
  },
  {
    "id": "api.user.invalidate_verify_email_tokens_parse.error",
    "translation": "Unable to parse token when invalidating email verification tokens"
  },
  {
    "id": "api.user.ldap_to_email.not_available.app_error",
    "translation": "AD/LDAP not available on this server."
  },
  {
    "id": "api.user.ldap_to_email.not_ldap_account.app_error",
    "translation": "This user account does not use AD/LDAP."
  },
  {
    "id": "api.user.login.blank_pwd.app_error",
    "translation": "Password field must not be blank"
  },
  {
    "id": "api.user.login.bot_login_forbidden.app_error",
    "translation": "Bot login is forbidden."
  },
  {
    "id": "api.user.login.client_side_cert.certificate.app_error",
    "translation": "Attempted to sign in using the experimental feature ClientSideCert without providing a valid certificate."
  },
  {
    "id": "api.user.login.client_side_cert.license.app_error",
    "translation": "Attempt to use the experimental feature ClientSideCertEnable without a valid enterprise license."
  },
  {
    "id": "api.user.login.guest_accounts.disabled.error",
    "translation": "Guest accounts are disabled"
  },
  {
    "id": "api.user.login.guest_accounts.license.error",
    "translation": "Your license does not support guest accounts"
  },
  {
    "id": "api.user.login.inactive.app_error",
    "translation": "Login failed because your account has been deactivated.  Please contact an administrator."
  },
  {
    "id": "api.user.login.invalid_credentials_email",
    "translation": "Enter a valid email and/or password"
  },
  {
    "id": "api.user.login.invalid_credentials_email_username",
    "translation": "Enter a valid email or username and/or password."
  },
  {
    "id": "api.user.login.invalid_credentials_sso",
    "translation": "Enter a valid email or username and/or password, or sign in using another method."
  },
  {
    "id": "api.user.login.invalid_credentials_username",
    "translation": "Enter a valid username and/or password."
  },
  {
    "id": "api.user.login.not_verified.app_error",
    "translation": "Login failed because email address has not been verified."
  },
  {
    "id": "api.user.login.use_auth_service.app_error",
    "translation": "Please sign in using {{.AuthService}}."
  },
  {
    "id": "api.user.login_by_cws.invalid_token.app_error",
    "translation": "CWS token is not valid"
  },
  {
    "id": "api.user.login_by_oauth.bot_login_forbidden.app_error",
    "translation": "Bot login is forbidden."
  },
  {
    "id": "api.user.login_by_oauth.not_available.app_error",
    "translation": "{{.Service}} SSO through OAuth 2.0 not available on this server."
  },
  {
    "id": "api.user.login_by_oauth.parse.app_error",
    "translation": "Could not parse auth data out of {{.Service}} user object."
  },
  {
    "id": "api.user.login_cws.license.error",
    "translation": "CWS login is forbidden."
  },
  {
    "id": "api.user.login_ldap.not_available.app_error",
    "translation": "AD/LDAP not available on this server."
  },
  {
    "id": "api.user.oauth_to_email.context.app_error",
    "translation": "Update password failed because context user_id did not match provided user's id."
  },
  {
    "id": "api.user.oauth_to_email.not_available.app_error",
    "translation": "Authentication Transfer not configured or available on this server."
  },
  {
    "id": "api.user.patch_user.login_provider_attribute_set.app_error",
    "translation": "Field '{{.Field}}' must be set through user's login provider."
  },
  {
    "id": "api.user.promote_guest_to_user.no_guest.app_error",
    "translation": "Unable to convert the guest to regular user because is not a guest."
  },
  {
    "id": "api.user.reset_password.broken_token.app_error",
    "translation": "The reset password token does not appear to be valid."
  },
  {
    "id": "api.user.reset_password.invalid_link.app_error",
    "translation": "The reset password link does not appear to be valid."
  },
  {
    "id": "api.user.reset_password.link_expired.app_error",
    "translation": "The password reset link has expired."
  },
  {
    "id": "api.user.reset_password.method",
    "translation": "using a reset password link"
  },
  {
    "id": "api.user.reset_password.sso.app_error",
    "translation": "Unable to reset password for SSO accounts."
  },
  {
    "id": "api.user.reset_password.token_parse.error",
    "translation": "Unable to parse the reset password token"
  },
  {
    "id": "api.user.saml.not_available.app_error",
    "translation": "SAML 2.0 is not configured or supported on this server."
  },
  {
    "id": "api.user.send_cloud_welcome_email.error",
    "translation": "Failed to send cloud welcome email"
  },
  {
    "id": "api.user.send_deactivate_email_and_forget.failed.error",
    "translation": "Failed to send the deactivate account email successfully"
  },
  {
    "id": "api.user.send_email_change_verify_email_and_forget.error",
    "translation": "Failed to send email change verification email successfully"
  },
  {
    "id": "api.user.send_password_reset.send.app_error",
    "translation": "Failed to send password reset email successfully."
  },
  {
    "id": "api.user.send_password_reset.sso.app_error",
    "translation": "Unable to reset password for SSO accounts."
  },
  {
    "id": "api.user.send_sign_in_change_email_and_forget.error",
    "translation": "Failed to send update password email successfully"
  },
  {
    "id": "api.user.send_verify_email_and_forget.failed.error",
    "translation": "Failed to send verification email successfully"
  },
  {
    "id": "api.user.update_active.cannot_enable_guest_when_guest_feature_is_disabled.app_error",
    "translation": "You cannot activate a guest account because Guest Access feature is not enabled."
  },
  {
    "id": "api.user.update_active.not_enable.app_error",
    "translation": "You cannot deactivate yourself because this feature is not enabled. Please contact your System Administrator."
  },
  {
    "id": "api.user.update_active.permissions.app_error",
    "translation": "You do not have the appropriate permissions."
  },
  {
    "id": "api.user.update_oauth_user_attrs.get_user.app_error",
    "translation": "Could not get user from {{.Service}} user object."
  },
  {
    "id": "api.user.update_password.context.app_error",
    "translation": "Update password failed because context user_id did not match props user_id."
  },
  {
    "id": "api.user.update_password.failed.app_error",
    "translation": "Update password failed."
  },
  {
    "id": "api.user.update_password.incorrect.app_error",
    "translation": "The \"Current Password\" you entered is incorrect. Please check that Caps Lock is off and try again."
  },
  {
    "id": "api.user.update_password.menu",
    "translation": "using the settings menu"
  },
  {
    "id": "api.user.update_password.oauth.app_error",
    "translation": "Update password failed because the user is logged in through an OAuth service."
  },
  {
    "id": "api.user.update_password.user_and_hashed.app_error",
    "translation": "Only system administrators can set already-hashed passwords."
  },
  {
    "id": "api.user.update_password.valid_account.app_error",
    "translation": "Update password failed because we couldn't find a valid account."
  },
  {
    "id": "api.user.update_user.accepted_domain.app_error",
    "translation": "The email you provided does not belong to an accepted domain. Please contact your administrator or sign up with a different email."
  },
  {
    "id": "api.user.update_user.accepted_guest_domain.app_error",
    "translation": "The email you provided does not belong to an accepted domain for guest accounts. Please contact your administrator or sign up with a different email."
  },
  {
    "id": "api.user.update_user.login_provider_attribute_set.app_error",
    "translation": "Field '{{.Field}}' must be set through user's login provider."
  },
  {
    "id": "api.user.update_user_auth.invalid_request",
    "translation": "Request is missing either AuthData or AuthService parameter."
  },
  {
    "id": "api.user.update_user_roles.license.app_error",
    "translation": "Custom Permission Schemes not supported by current license"
  },
  {
    "id": "api.user.upload_profile_user.array.app_error",
    "translation": "Empty array under 'image' in request."
  },
  {
    "id": "api.user.upload_profile_user.check_image_limits.app_error",
    "translation": "Image limits check failed. Resolution is too high."
  },
  {
    "id": "api.user.upload_profile_user.decode.app_error",
    "translation": "Could not decode profile image."
  },
  {
    "id": "api.user.upload_profile_user.encode.app_error",
    "translation": "Could not encode profile image."
  },
  {
    "id": "api.user.upload_profile_user.login_provider_attribute_set.app_error",
    "translation": "Profile picture must be set through user's login provider."
  },
  {
    "id": "api.user.upload_profile_user.no_file.app_error",
    "translation": "No file under 'image' in request."
  },
  {
    "id": "api.user.upload_profile_user.open.app_error",
    "translation": "Could not open image file."
  },
  {
    "id": "api.user.upload_profile_user.parse.app_error",
    "translation": "Could not parse multipart form."
  },
  {
    "id": "api.user.upload_profile_user.storage.app_error",
    "translation": "Unable to upload file. Image storage is not configured."
  },
  {
    "id": "api.user.upload_profile_user.too_large.app_error",
    "translation": "Unable to upload profile image. File is too large."
  },
  {
    "id": "api.user.upload_profile_user.upload_profile.app_error",
    "translation": "Couldn't upload profile image."
  },
  {
    "id": "api.user.verify_email.bad_link.app_error",
    "translation": "Bad verify email link."
  },
  {
    "id": "api.user.verify_email.broken_token.app_error",
    "translation": "Bad verify email token type."
  },
  {
    "id": "api.user.verify_email.link_expired.app_error",
    "translation": "The email verification link has expired."
  },
  {
    "id": "api.user.verify_email.token_parse.error",
    "translation": "Failed to parse token data from email verification"
  },
  {
    "id": "api.user.view_archived_channels.get_posts_for_channel.app_error",
    "translation": "Cannot retrieve posts for an archived channel"
  },
  {
    "id": "api.user.view_archived_channels.get_users_in_channel.app_error",
    "translation": "Cannot retrieve users for an archived channel"
  },
  {
    "id": "api.web_socket.connect.upgrade.app_error",
    "translation": "Failed to upgrade websocket connection."
  },
  {
    "id": "api.web_socket_router.bad_action.app_error",
    "translation": "Unknown WebSocket action."
  },
  {
    "id": "api.web_socket_router.bad_seq.app_error",
    "translation": "Invalid sequence for WebSocket message."
  },
  {
    "id": "api.web_socket_router.no_action.app_error",
    "translation": "No websocket action."
  },
  {
    "id": "api.web_socket_router.not_authenticated.app_error",
    "translation": "WebSocket connection is not authenticated. Please log in and try again."
  },
  {
    "id": "api.webhook.create_outgoing.intersect.app_error",
    "translation": "Outgoing webhooks from the same channel cannot have the same trigger words/callback URLs."
  },
  {
    "id": "api.webhook.create_outgoing.not_open.app_error",
    "translation": "Outgoing webhooks can only be created for public channels."
  },
  {
    "id": "api.webhook.create_outgoing.permissions.app_error",
    "translation": "Invalid permissions to create outgoing webhook."
  },
  {
    "id": "api.webhook.create_outgoing.triggers.app_error",
    "translation": "Either trigger_words or channel_id must be set."
  },
  {
    "id": "api.webhook.incoming.error",
    "translation": "Could not decode the multipart payload of incoming webhook."
  },
  {
    "id": "api.webhook.team_mismatch.app_error",
    "translation": "Unable to update webhook across teams."
  },
  {
    "id": "api.webhook.update_outgoing.intersect.app_error",
    "translation": "Outgoing webhooks from the same channel cannot have the same trigger words/callback URLs."
  },
  {
    "id": "api.websocket_handler.invalid_param.app_error",
    "translation": "Invalid {{.Name}} parameter."
  },
  {
    "id": "api.websocket_handler.server_busy.app_error",
    "translation": "Server is busy, non-critical services are temporarily unavailable."
  },
  {
    "id": "api.work_templates.disabled",
    "translation": "Work templates are disabled."
  },
  {
    "id": "app.acknowledgement.delete.app_error",
    "translation": "Unable to delete acknowledgement."
  },
  {
    "id": "app.acknowledgement.get.app_error",
    "translation": "Unable to get acknowledgement."
  },
  {
    "id": "app.acknowledgement.getforpost.get.app_error",
    "translation": "Unable to get acknowledgement for post."
  },
  {
    "id": "app.acknowledgement.save.save.app_error",
    "translation": "Unable to save acknowledgement for post."
  },
  {
    "id": "app.admin.saml.failure_decode_metadata_xml_from_idp.app_error",
    "translation": "Could not decode the XML metadata information received from the Identity Provider."
  },
  {
    "id": "app.admin.saml.failure_read_response_body_from_idp.app_error",
    "translation": "Failure encountered when reading the response payload received from the Identity Provider."
  },
  {
    "id": "app.admin.saml.invalid_response_from_idp.app_error",
    "translation": "Could not read the response received from the Identity Provider."
  },
  {
    "id": "app.admin.test_email.failure",
    "translation": "Connection unsuccessful: {{.Error}}"
  },
  {
    "id": "app.admin.test_site_url.failure",
    "translation": "This is not a valid live URL"
  },
  {
    "id": "app.analytics.getanalytics.internal_error",
    "translation": "Unable to get the analytics."
  },
  {
    "id": "app.audit.get.finding.app_error",
    "translation": "We encountered an error finding the audits."
  },
  {
    "id": "app.audit.get.limit.app_error",
    "translation": "Limit exceeded for paging."
  },
  {
    "id": "app.audit.permanent_delete_by_user.app_error",
    "translation": "We encountered an error deleting the audits."
  },
  {
    "id": "app.audit.save.saving.app_error",
    "translation": "We encountered an error saving the audit."
  },
  {
    "id": "app.bot.createbot.internal_error",
    "translation": "Unable to save the bot."
  },
  {
    "id": "app.bot.get_disable_bot_sysadmin_message",
    "translation": "{{if .disableBotsSetting}}{{if .printAllBots}}{{.UserName}} was deactivated. They managed the following bot accounts which have now been disabled.\n\n{{.BotNames}}{{else}}{{.UserName}} was deactivated. They managed {{.NumBots}} bot accounts which have now been disabled, including the following:\n\n{{.BotNames}}{{end}}You can take ownership of each bot by enabling it at **Integrations > Bot Accounts** and creating new tokens for the bot.\n\nFor more information, see our [documentation](https://docs.mattermost.com/developer/bot-accounts.html#what-happens-when-a-user-who-owns-bot-accounts-is-disabled).{{else}}{{if .printAllBots}}{{.UserName}} was deactivated. They managed the following bot accounts which are still enabled.\n\n{{.BotNames}}\n{{else}}{{.UserName}} was deactivated. They managed {{.NumBots}} bot accounts which are still enabled, including the following:\n\n{{.BotNames}}{{end}}We strongly recommend you to take ownership of each bot by re-enabling it at **Integrations > Bot Accounts** and creating new tokens for the bot.\n\nFor more information, see our [documentation](https://docs.mattermost.com/developer/bot-accounts.html#what-happens-when-a-user-who-owns-bot-accounts-is-disabled).\n\nIf you want bot accounts to disable automatically after owner deactivation, set “Disable bot accounts when owner is deactivated” in **System Console > Integrations > Bot Accounts** to true.{{end}}"
  },
  {
    "id": "app.bot.get_system_bot.empty_admin_list.app_error",
    "translation": "List of admins is empty."
  },
  {
    "id": "app.bot.get_warn_metrics_bot.empty_admin_list.app_error",
    "translation": "List of admins is empty."
  },
  {
    "id": "app.bot.getbot.internal_error",
    "translation": "Unable to get the bot."
  },
  {
    "id": "app.bot.getbots.internal_error",
    "translation": "Unable to get the bots."
  },
  {
    "id": "app.bot.patchbot.internal_error",
    "translation": "Unable to update the bot."
  },
  {
    "id": "app.bot.permanent_delete.internal_error",
    "translation": "Unable to delete the bot permanently."
  },
  {
    "id": "app.bot.permenent_delete.bad_id",
    "translation": "Unable to delete the bot."
  },
  {
    "id": "app.channel.analytics_type_count.app_error",
    "translation": "Unable to get channel type counts."
  },
  {
    "id": "app.channel.autofollow.app_error",
    "translation": "Failed to update thread membership for mentioned user"
  },
  {
    "id": "app.channel.clear_all_custom_role_assignments.select.app_error",
    "translation": "Failed to retrieve the channel members."
  },
  {
    "id": "app.channel.count_posts_since.app_error",
    "translation": "Unable to count messages since given date."
  },
  {
    "id": "app.channel.count_urgent_posts_since.app_error",
    "translation": "Unable to count urgent posts since given date."
  },
  {
    "id": "app.channel.create_channel.internal_error",
    "translation": "Unable to save channel."
  },
  {
    "id": "app.channel.create_channel.no_team_id.app_error",
    "translation": "Must specify the team ID to create a channel."
  },
  {
    "id": "app.channel.create_direct_channel.internal_error",
    "translation": "Unable to save direct channel."
  },
  {
    "id": "app.channel.create_initial_sidebar_categories.internal_error",
    "translation": "Unable to create initial sidebar categories for user."
  },
  {
    "id": "app.channel.delete.app_error",
    "translation": "Unable to delete the channel."
  },
  {
    "id": "app.channel.get.existing.app_error",
    "translation": "Unable to find the existing channel."
  },
  {
    "id": "app.channel.get.find.app_error",
    "translation": "We encountered an error finding the channel."
  },
  {
    "id": "app.channel.get_all.app_error",
    "translation": "Unable to get all the channels."
  },
  {
    "id": "app.channel.get_all_channels.app_error",
    "translation": "Unable to get all the channels."
  },
  {
    "id": "app.channel.get_all_channels_count.app_error",
    "translation": "Unable to count all the channels."
  },
  {
    "id": "app.channel.get_all_direct.app_error",
    "translation": "Unable to get all the direct channels."
  },
  {
    "id": "app.channel.get_by_name.existing.app_error",
    "translation": "Unable to find the existing channel."
  },
  {
    "id": "app.channel.get_by_name.missing.app_error",
    "translation": "Channel does not exist."
  },
  {
    "id": "app.channel.get_by_scheme.app_error",
    "translation": "Unable to get the channels for the provided scheme."
  },
  {
    "id": "app.channel.get_channel_counts.get.app_error",
    "translation": "Unable to get the channel counts."
  },
  {
    "id": "app.channel.get_channels.get.app_error",
    "translation": "Unable to get the channels."
  },
  {
    "id": "app.channel.get_channels.not_found.app_error",
    "translation": "No channels were found."
  },
  {
    "id": "app.channel.get_channels_batch_for_indexing.get.app_error",
    "translation": "Unable to get the channels batch for indexing."
  },
  {
    "id": "app.channel.get_channels_by_ids.app_error",
    "translation": "Unable to get channels by ids."
  },
  {
    "id": "app.channel.get_channels_by_ids.get.app_error",
    "translation": "Unable to get the channels."
  },
  {
    "id": "app.channel.get_channels_by_ids.not_found.app_error",
    "translation": "No channel found."
  },
  {
    "id": "app.channel.get_deleted.existing.app_error",
    "translation": "Unable to find the existing deleted channel."
  },
  {
    "id": "app.channel.get_deleted.missing.app_error",
    "translation": "No deleted channels exist."
  },
  {
    "id": "app.channel.get_file_count.app_error",
    "translation": "Unable to get the file count for the channel"
  },
  {
    "id": "app.channel.get_for_post.app_error",
    "translation": "Unable to get the channel for the given post."
  },
  {
    "id": "app.channel.get_member.app_error",
    "translation": "Unable to get the channel member."
  },
  {
    "id": "app.channel.get_member.missing.app_error",
    "translation": "No channel member found for that user ID and channel ID."
  },
  {
    "id": "app.channel.get_member_count.app_error",
    "translation": "Unable to get the channel member count."
  },
  {
    "id": "app.channel.get_members.app_error",
    "translation": "Unable to get the channel members."
  },
  {
    "id": "app.channel.get_members_by_ids.app_error",
    "translation": "Unable to get the channel members."
  },
  {
    "id": "app.channel.get_more_channels.get.app_error",
    "translation": "Unable to get the channels."
  },
  {
    "id": "app.channel.get_pinnedpost_count.app_error",
    "translation": "Unable to get the channel pinned post count."
  },
  {
    "id": "app.channel.get_priority_for_posts.app_error",
    "translation": "Unable to get the priority for posts"
  },
  {
    "id": "app.channel.get_private_channels.get.app_error",
    "translation": "Unable to get private channels."
  },
  {
    "id": "app.channel.get_public_channels.get.app_error",
    "translation": "Unable to get public channels."
  },
  {
    "id": "app.channel.get_unread.app_error",
    "translation": "Unable to get the channel unread messages."
  },
  {
    "id": "app.channel.migrate_channel_members.select.app_error",
    "translation": "Failed to select the batch of channel members."
  },
  {
    "id": "app.channel.move_channel.members_do_not_match.error",
    "translation": "Unable to move a channel unless all its members are already members of the destination team."
  },
  {
    "id": "app.channel.permanent_delete.app_error",
    "translation": "Unable to delete the channel."
  },
  {
    "id": "app.channel.permanent_delete_members_by_user.app_error",
    "translation": "Unable to remove the channel member."
  },
  {
    "id": "app.channel.pinned_posts.app_error",
    "translation": "Unable to find the pinned posts."
  },
  {
    "id": "app.channel.post_update_channel_purpose_message.post.error",
    "translation": "Failed to post channel purpose message"
  },
  {
    "id": "app.channel.post_update_channel_purpose_message.removed",
    "translation": "%s removed the channel purpose (was: %s)"
  },
  {
    "id": "app.channel.post_update_channel_purpose_message.retrieve_user.error",
    "translation": "Failed to retrieve user while updating channel purpose message %v"
  },
  {
    "id": "app.channel.post_update_channel_purpose_message.updated_from",
    "translation": "%s updated the channel purpose from: %s to: %s"
  },
  {
    "id": "app.channel.post_update_channel_purpose_message.updated_to",
    "translation": "%s updated the channel purpose to: %s"
  },
  {
    "id": "app.channel.remove_all_deactivated_members.app_error",
    "translation": "We could not remove the deactivated users from the channel."
  },
  {
    "id": "app.channel.remove_member.app_error",
    "translation": "Unable to remove the channel member."
  },
  {
    "id": "app.channel.reset_all_channel_schemes.app_error",
    "translation": "We could not reset the channel schemes."
  },
  {
    "id": "app.channel.restore.app_error",
    "translation": "Unable to restore the channel."
  },
  {
    "id": "app.channel.save_member.exists.app_error",
    "translation": "A channel member with that ID already exists."
  },
  {
    "id": "app.channel.search.app_error",
    "translation": "We encountered an error searching channels."
  },
  {
    "id": "app.channel.search_group_channels.app_error",
    "translation": "Unable to get the group channels for the given user and term."
  },
  {
    "id": "app.channel.sidebar_categories.app_error",
    "translation": "Failed to insert record to database."
  },
  {
    "id": "app.channel.update.bad_id",
    "translation": "Unable to update the channel."
  },
  {
    "id": "app.channel.update_channel.internal_error",
    "translation": "Unable to update channel."
  },
  {
    "id": "app.channel.update_last_viewed_at.app_error",
    "translation": "Unable to update the last viewed at time."
  },
  {
    "id": "app.channel.update_last_viewed_at_post.app_error",
    "translation": "Unable to mark channel as unread."
  },
  {
    "id": "app.channel.user_belongs_to_channels.app_error",
    "translation": "Unable to determine if the user belongs to a list of channels."
  },
  {
    "id": "app.channel_member_history.log_join_event.internal_error",
    "translation": "Failed to record channel member history."
  },
  {
    "id": "app.channel_member_history.log_leave_event.internal_error",
    "translation": "Failed to record channel member history. Failed to update existing join record"
  },
  {
    "id": "app.cloud.get_cloud_products.app_error",
    "translation": "Couldn't retrieve cloud products"
  },
  {
    "id": "app.cloud.get_current_plan_name.app_error",
    "translation": "Unable to get current plan name"
  },
  {
    "id": "app.cloud.get_subscription.app_error",
    "translation": "Couldn't retrieve cloud subscription"
  },
  {
    "id": "app.cloud.get_subscription_delinquency_date.app_error",
    "translation": "Subscription is not delinquent"
  },
  {
    "id": "app.cloud.trial_plan_bot_message",
    "translation": "{{.UsersNum}} members of the {{.WorkspaceName}} workspace have requested starting the Enterprise trial for access to: "
  },
  {
    "id": "app.cloud.trial_plan_bot_message_single",
    "translation": "{{.UsersNum}} member of the {{.WorkspaceName}} workspace has requested starting the Enterprise trial for access to: "
  },
  {
    "id": "app.cloud.upgrade_plan_bot_message",
    "translation": "{{.UsersNum}} members of the {{.WorkspaceName}} workspace have requested a workspace upgrade for: "
  },
  {
    "id": "app.cloud.upgrade_plan_bot_message_single",
    "translation": "{{.UsersNum}} member of the {{.WorkspaceName}} workspace has requested a workspace upgrade for: "
  },
  {
    "id": "app.collection.add_collection.exists.app_error",
    "translation": "Collection type already exists."
  },
  {
    "id": "app.collection.add_topic.exists.app_error",
    "translation": "Topic type already exists."
  },
  {
    "id": "app.command.createcommand.internal_error",
    "translation": "Unable to save the command."
  },
  {
    "id": "app.command.deletecommand.internal_error",
    "translation": "Unable to delete the command."
  },
  {
    "id": "app.command.getcommand.internal_error",
    "translation": "Unable to get the command."
  },
  {
    "id": "app.command.listallcommands.internal_error",
    "translation": "Unable to list the commands."
  },
  {
    "id": "app.command.listautocompletecommands.internal_error",
    "translation": "Unable to list the autocomplete commands."
  },
  {
    "id": "app.command.listteamcommands.internal_error",
    "translation": "Unable to list the team commands."
  },
  {
    "id": "app.command.movecommand.internal_error",
    "translation": "Unable to move the command."
  },
  {
    "id": "app.command.regencommandtoken.internal_error",
    "translation": "Unable to regenerate the command token."
  },
  {
    "id": "app.command.tryexecutecustomcommand.internal_error",
    "translation": "Unable to execute the custom command."
  },
  {
    "id": "app.command.updatecommand.internal_error",
    "translation": "Unable to update the command."
  },
  {
    "id": "app.command_webhook.create_command_webhook.existing",
    "translation": "You cannot update an existing CommandWebhook."
  },
  {
    "id": "app.command_webhook.create_command_webhook.internal_error",
    "translation": "Unable to save the CommandWebhook."
  },
  {
    "id": "app.command_webhook.get.internal_error",
    "translation": "Unable to get the webhook."
  },
  {
    "id": "app.command_webhook.get.missing",
    "translation": "Unable to find the webhook."
  },
  {
    "id": "app.command_webhook.handle_command_webhook.parse",
    "translation": "Unable to parse incoming data."
  },
  {
    "id": "app.command_webhook.try_use.internal_error",
    "translation": "Unable to use the webhook."
  },
  {
    "id": "app.command_webhook.try_use.invalid",
    "translation": "Invalid webhook."
  },
  {
    "id": "app.compliance.get.finding.app_error",
    "translation": "We encountered an error retrieving the compliance reports."
  },
  {
    "id": "app.compliance.save.saving.app_error",
    "translation": "We encountered an error saving the compliance report."
  },
  {
    "id": "app.create_basic_user.save_member.app_error",
    "translation": "Unable to create default team memberships"
  },
  {
    "id": "app.create_basic_user.save_member.conflict.app_error",
    "translation": "Unable to create default team membership because they already exists"
  },
  {
    "id": "app.create_basic_user.save_member.max_accounts.app_error",
    "translation": "Unable to create default team membership because no more members are allowed in that team"
  },
  {
    "id": "app.custom_group.unique_name",
    "translation": "group name is not unique"
  },
  {
    "id": "app.draft.delete.app_error",
    "translation": "Unable to delete the Draft."
  },
  {
    "id": "app.draft.feature_disabled",
    "translation": "Drafts feature is disabled."
  },
  {
    "id": "app.draft.get.app_error",
    "translation": "Unable to get the Draft."
  },
  {
    "id": "app.draft.get_drafts.app_error",
    "translation": "Unable to get user's Drafts."
  },
  {
    "id": "app.draft.get_for_draft.app_error",
    "translation": "Unable to get files for Draft."
  },
  {
    "id": "app.draft.save.app_error",
    "translation": "Unable to save the Draft."
  },
  {
    "id": "app.draft.update.app_error",
    "translation": "Unable to update the Draft."
  },
  {
    "id": "app.email.no_rate_limiter.app_error",
    "translation": "Rate limiter is not set up."
  },
  {
    "id": "app.email.rate_limit_exceeded.app_error",
    "translation": "Invite emails rate limit exceeded. Timer will be reset after {{.ResetAfter}} seconds. Please retry after {{.RetryAfter}} seconds."
  },
  {
    "id": "app.email.setup_rate_limiter.app_error",
    "translation": "Error occurred in the rate limiter."
  },
  {
    "id": "app.emoji.create.internal_error",
    "translation": "Unable to save emoji."
  },
  {
    "id": "app.emoji.delete.app_error",
    "translation": "Unable to delete the emoji."
  },
  {
    "id": "app.emoji.delete.no_results",
    "translation": "We couldn’t find the emoji to delete."
  },
  {
    "id": "app.emoji.get.app_error",
    "translation": "Unable to get the emoji."
  },
  {
    "id": "app.emoji.get.no_result",
    "translation": "We couldn’t find the emoji."
  },
  {
    "id": "app.emoji.get_by_name.app_error",
    "translation": "Unable to get the emoji."
  },
  {
    "id": "app.emoji.get_by_name.no_result",
    "translation": "We couldn’t find the emoji."
  },
  {
    "id": "app.emoji.get_list.internal_error",
    "translation": "Unable to get the emoji."
  },
  {
    "id": "app.export.export_attachment.copy_file.error",
    "translation": "Failed to copy file during export."
  },
  {
    "id": "app.export.export_attachment.create_file.error",
    "translation": "Failed to create file during export."
  },
  {
    "id": "app.export.export_attachment.mkdirall.error",
    "translation": "Failed to create directory during export."
  },
  {
    "id": "app.export.export_attachment.zip_create_header.error",
    "translation": "Failed to create zip header during export."
  },
  {
    "id": "app.export.export_custom_emoji.copy_emoji_images.error",
    "translation": "Unable to copy custom emoji images"
  },
  {
    "id": "app.export.export_write_line.io_writer.error",
    "translation": "An error occurred writing the export data."
  },
  {
    "id": "app.export.export_write_line.json_marshall.error",
    "translation": "An error occurred marshalling the JSON data for export."
  },
  {
    "id": "app.export.marshal.app_error",
    "translation": "Unable to marshal response."
  },
  {
    "id": "app.export.zip_create.error",
    "translation": "Failed to add file to zip archive during export."
  },
  {
    "id": "app.file.cloud.get.app_error",
    "translation": "Can not fetch the file as it is past the cloud plan's limit."
  },
  {
    "id": "app.file_info.get.app_error",
    "translation": "Unable to get the file info."
  },
  {
    "id": "app.file_info.get_for_post.app_error",
    "translation": "Unable to get the file info for the post."
  },
  {
    "id": "app.file_info.get_with_options.app_error",
    "translation": "Unable to get the file info with options"
  },
  {
    "id": "app.file_info.permanent_delete_by_user.app_error",
    "translation": "Unable to delete attachments of the user."
  },
  {
    "id": "app.file_info.save.app_error",
    "translation": "Unable to save the file info."
  },
  {
    "id": "app.group.crud_permission",
    "translation": "Unable to perform operation for that source type."
  },
  {
    "id": "app.group.group_syncable_already_deleted",
    "translation": "group syncable was already deleted"
  },
  {
    "id": "app.group.id.app_error",
    "translation": "invalid id property for group."
  },
  {
    "id": "app.group.no_rows",
    "translation": "no matching group found"
  },
  {
    "id": "app.group.permanent_delete_members_by_user.app_error",
    "translation": "Unable to remove the group member with UserID \"{{.UserId}}\"."
  },
  {
    "id": "app.group.uniqueness_error",
    "translation": "group member already exists"
  },
  {
    "id": "app.group.username_conflict",
    "translation": "user with username \"{{.Username}}\" already exists."
  },
  {
    "id": "app.import.attachment.bad_file.error",
    "translation": "Error reading the file at: \"{{.FilePath}}\""
  },
  {
    "id": "app.import.attachment.file_upload.error",
    "translation": "Error uploading the file: \"{{.FilePath}}\""
  },
  {
    "id": "app.import.attachment.read_file_data.error",
    "translation": "Failed to read file attachment during import."
  },
  {
    "id": "app.import.bulk_import.file_scan.error",
    "translation": "Error reading import data file."
  },
  {
    "id": "app.import.bulk_import.json_decode.error",
    "translation": "JSON decode of line failed."
  },
  {
    "id": "app.import.bulk_import.unsupported_version.error",
    "translation": "Incorrect or missing version in the data import file. Make sure version is the first object in your import file and try again."
  },
  {
    "id": "app.import.emoji.bad_file.error",
    "translation": "Error reading import emoji image file. Emoji with name: \"{{.EmojiName}}\""
  },
  {
    "id": "app.import.generate_password.app_error",
    "translation": "Error generating password."
  },
  {
    "id": "app.import.get_teams_by_names.some_teams_not_found.error",
    "translation": "Some teams not found"
  },
  {
    "id": "app.import.get_users_by_username.some_users_not_found.error",
    "translation": "Some users not found"
  },
  {
    "id": "app.import.import_channel.scheme_deleted.error",
    "translation": "Unable to set a channel to use a deleted scheme."
  },
  {
    "id": "app.import.import_channel.scheme_wrong_scope.error",
    "translation": "Channel must be assigned to a Channel-scoped scheme."
  },
  {
    "id": "app.import.import_channel.team_not_found.error",
    "translation": "Error importing channel. Team with name \"{{.TeamName}}\" could not be found."
  },
  {
    "id": "app.import.import_direct_channel.create_direct_channel.error",
    "translation": "Failed to create direct channel"
  },
  {
    "id": "app.import.import_direct_channel.create_group_channel.error",
    "translation": "Failed to create group channel"
  },
  {
    "id": "app.import.import_direct_channel.update_header_failed.error",
    "translation": "Failed to update direct channel header"
  },
  {
    "id": "app.import.import_direct_post.create_direct_channel.error",
    "translation": "Failed to get direct channel"
  },
  {
    "id": "app.import.import_direct_post.create_group_channel.error",
    "translation": "Failed to get group channel"
  },
  {
    "id": "app.import.import_line.null_channel.error",
    "translation": "Import data line has type \"channel\" but the channel object is null."
  },
  {
    "id": "app.import.import_line.null_direct_channel.error",
    "translation": "Import data line has type \"direct_channel\" but the direct_channel object is null."
  },
  {
    "id": "app.import.import_line.null_direct_post.error",
    "translation": "Import data line has type \"direct_post\" but the direct_post object is null."
  },
  {
    "id": "app.import.import_line.null_emoji.error",
    "translation": "Import data line has type \"emoji\" but the emoji object is null."
  },
  {
    "id": "app.import.import_line.null_post.error",
    "translation": "Import data line has type \"post\" but the post object is null."
  },
  {
    "id": "app.import.import_line.null_scheme.error",
    "translation": "Import data line has type \"scheme\" but the scheme object is null."
  },
  {
    "id": "app.import.import_line.null_team.error",
    "translation": "Import data line has type \"team\" but the team object is null."
  },
  {
    "id": "app.import.import_line.null_user.error",
    "translation": "Import data line has type \"user\" but the user object is null."
  },
  {
    "id": "app.import.import_line.unknown_line_type.error",
    "translation": "Import data line has unknown type \"{{.Type}}\"."
  },
  {
    "id": "app.import.import_post.channel_not_found.error",
    "translation": "Error importing post. Channel with name \"{{.ChannelName}}\" could not be found."
  },
  {
    "id": "app.import.import_post.save_preferences.error",
    "translation": "Error importing post. Failed to save preferences."
  },
  {
    "id": "app.import.import_post.user_not_found.error",
    "translation": "Error importing post. User with username \"{{.Username}}\" could not be found."
  },
  {
    "id": "app.import.import_scheme.scope_change.error",
    "translation": "The bulk importer cannot change the scope of an already-existing scheme."
  },
  {
    "id": "app.import.import_team.scheme_deleted.error",
    "translation": "Unable to set a team to use a deleted scheme."
  },
  {
    "id": "app.import.import_team.scheme_wrong_scope.error",
    "translation": "Team must be assigned to a Team-scoped scheme."
  },
  {
    "id": "app.import.import_user.save_preferences.error",
    "translation": "Error importing user preferences. Failed to save preferences."
  },
  {
    "id": "app.import.import_user_channels.channel_not_found.error",
    "translation": "Error importing user channels. Channel not found."
  },
  {
    "id": "app.import.import_user_channels.save_preferences.error",
    "translation": "Error importing user channel memberships. Failed to save preferences."
  },
  {
    "id": "app.import.import_user_teams.save_members.conflict.app_error",
    "translation": "Unable to import the new team membership because it already exists"
  },
  {
    "id": "app.import.import_user_teams.save_members.error",
    "translation": "Unable to import team memberships"
  },
  {
    "id": "app.import.import_user_teams.save_members.max_accounts.app_error",
    "translation": "Unable to import team membership because no more members are allowed in that team"
  },
  {
    "id": "app.import.import_user_teams.save_preferences.error",
    "translation": "Unable to save the team theme preferences"
  },
  {
    "id": "app.import.process_import_data_file_version_line.invalid_version.error",
    "translation": "Unable to read the version of the data import file."
  },
  {
    "id": "app.import.validate_channel_import_data.display_name_length.error",
    "translation": "Channel display_name is not within permitted length constraints."
  },
  {
    "id": "app.import.validate_channel_import_data.header_length.error",
    "translation": "Channel header is too long."
  },
  {
    "id": "app.import.validate_channel_import_data.name_characters.error",
    "translation": "Channel name contains invalid characters."
  },
  {
    "id": "app.import.validate_channel_import_data.name_length.error",
    "translation": "Channel name is too long."
  },
  {
    "id": "app.import.validate_channel_import_data.name_missing.error",
    "translation": "Missing required channel property: name"
  },
  {
    "id": "app.import.validate_channel_import_data.purpose_length.error",
    "translation": "Channel purpose is too long."
  },
  {
    "id": "app.import.validate_channel_import_data.scheme_invalid.error",
    "translation": "Invalid scheme name for channel."
  },
  {
    "id": "app.import.validate_channel_import_data.team_missing.error",
    "translation": "Missing required channel property: team"
  },
  {
    "id": "app.import.validate_channel_import_data.type_invalid.error",
    "translation": "Channel type is invalid."
  },
  {
    "id": "app.import.validate_channel_import_data.type_missing.error",
    "translation": "Missing required channel property: type."
  },
  {
    "id": "app.import.validate_direct_channel_import_data.header_length.error",
    "translation": "Direct channel header is too long"
  },
  {
    "id": "app.import.validate_direct_channel_import_data.members_required.error",
    "translation": "Missing required direct channel property: members"
  },
  {
    "id": "app.import.validate_direct_channel_import_data.members_too_few.error",
    "translation": "Direct channel members list contains too few items"
  },
  {
    "id": "app.import.validate_direct_channel_import_data.members_too_many.error",
    "translation": "Direct channel members list contains too many items"
  },
  {
    "id": "app.import.validate_direct_channel_import_data.unknown_favoriter.error",
    "translation": "Direct channel can only be favorited by members. \"{{.Username}}\" is not a member."
  },
  {
    "id": "app.import.validate_direct_post_import_data.channel_members_required.error",
    "translation": "Missing required direct post property: channel_members"
  },
  {
    "id": "app.import.validate_direct_post_import_data.channel_members_too_few.error",
    "translation": "Direct post channel members list contains too few items"
  },
  {
    "id": "app.import.validate_direct_post_import_data.channel_members_too_many.error",
    "translation": "Direct post channel members list contains too many items"
  },
  {
    "id": "app.import.validate_direct_post_import_data.create_at_missing.error",
    "translation": "Missing required direct post property: create_at"
  },
  {
    "id": "app.import.validate_direct_post_import_data.create_at_zero.error",
    "translation": "CreateAt must be greater than 0"
  },
  {
    "id": "app.import.validate_direct_post_import_data.message_length.error",
    "translation": "Message is too long"
  },
  {
    "id": "app.import.validate_direct_post_import_data.message_missing.error",
    "translation": "Missing required direct post property: message"
  },
  {
    "id": "app.import.validate_direct_post_import_data.unknown_flagger.error",
    "translation": "Direct post can only be flagged by members of the channel it is in. \"{{.Username}}\" is not a member."
  },
  {
    "id": "app.import.validate_direct_post_import_data.user_missing.error",
    "translation": "Missing required direct post property: user"
  },
  {
    "id": "app.import.validate_emoji_import_data.empty.error",
    "translation": "Import emoji data empty."
  },
  {
    "id": "app.import.validate_emoji_import_data.image_missing.error",
    "translation": "Import emoji image field missing or blank."
  },
  {
    "id": "app.import.validate_emoji_import_data.name_missing.error",
    "translation": "Import emoji name field missing or blank."
  },
  {
    "id": "app.import.validate_post_import_data.channel_missing.error",
    "translation": "Missing required Post property: Channel."
  },
  {
    "id": "app.import.validate_post_import_data.create_at_missing.error",
    "translation": "Missing required Post property: create_at."
  },
  {
    "id": "app.import.validate_post_import_data.create_at_zero.error",
    "translation": "Post CreateAt property must not be zero."
  },
  {
    "id": "app.import.validate_post_import_data.message_length.error",
    "translation": "Post Message property is longer than the maximum permitted length."
  },
  {
    "id": "app.import.validate_post_import_data.message_missing.error",
    "translation": "Missing required Post property: Message."
  },
  {
    "id": "app.import.validate_post_import_data.props_too_large.error",
    "translation": "Post Props are longer than the maximum permitted length."
  },
  {
    "id": "app.import.validate_post_import_data.team_missing.error",
    "translation": "Missing required Post property: Team."
  },
  {
    "id": "app.import.validate_post_import_data.user_missing.error",
    "translation": "Missing required Post property: User."
  },
  {
    "id": "app.import.validate_reaction_import_data.create_at_before_parent.error",
    "translation": "Reaction CreateAt property must be greater than the parent post CreateAt."
  },
  {
    "id": "app.import.validate_reaction_import_data.create_at_missing.error",
    "translation": "Missing required Reaction property: create_at."
  },
  {
    "id": "app.import.validate_reaction_import_data.create_at_zero.error",
    "translation": "Reaction CreateAt property must not be zero."
  },
  {
    "id": "app.import.validate_reaction_import_data.emoji_name_length.error",
    "translation": "Reaction EmojiName property is longer than the maximum permitted length."
  },
  {
    "id": "app.import.validate_reaction_import_data.emoji_name_missing.error",
    "translation": "Missing required Reaction property: EmojiName."
  },
  {
    "id": "app.import.validate_reaction_import_data.user_missing.error",
    "translation": "Missing required Reaction property: User."
  },
  {
    "id": "app.import.validate_reply_import_data.create_at_missing.error",
    "translation": "Missing required Reply property: create_at."
  },
  {
    "id": "app.import.validate_reply_import_data.create_at_zero.error",
    "translation": "Reply CreateAt property must not be zero."
  },
  {
    "id": "app.import.validate_reply_import_data.message_length.error",
    "translation": "Reply Message property is longer than the maximum permitted length."
  },
  {
    "id": "app.import.validate_reply_import_data.message_missing.error",
    "translation": "Missing required Reply property: Message."
  },
  {
    "id": "app.import.validate_reply_import_data.user_missing.error",
    "translation": "Missing required Reply property: User."
  },
  {
    "id": "app.import.validate_role_import_data.description_invalid.error",
    "translation": "Invalid role description."
  },
  {
    "id": "app.import.validate_role_import_data.display_name_invalid.error",
    "translation": "Invalid role display name."
  },
  {
    "id": "app.import.validate_role_import_data.invalid_permission.error",
    "translation": "Invalid permission on role."
  },
  {
    "id": "app.import.validate_role_import_data.name_invalid.error",
    "translation": "Invalid role name."
  },
  {
    "id": "app.import.validate_scheme_import_data.description_invalid.error",
    "translation": "Invalid scheme description."
  },
  {
    "id": "app.import.validate_scheme_import_data.display_name_invalid.error",
    "translation": "Invalid scheme display name."
  },
  {
    "id": "app.import.validate_scheme_import_data.name_invalid.error",
    "translation": "Invalid scheme name."
  },
  {
    "id": "app.import.validate_scheme_import_data.null_scope.error",
    "translation": "Scheme scope is required."
  },
  {
    "id": "app.import.validate_scheme_import_data.unknown_scheme.error",
    "translation": "Unknown scheme scope."
  },
  {
    "id": "app.import.validate_scheme_import_data.wrong_roles_for_scope.error",
    "translation": "The wrong roles were provided for a scheme with this scope."
  },
  {
    "id": "app.import.validate_team_import_data.description_length.error",
    "translation": "Team description is too long."
  },
  {
    "id": "app.import.validate_team_import_data.display_name_length.error",
    "translation": "Team display_name is not within permitted length constraints."
  },
  {
    "id": "app.import.validate_team_import_data.display_name_missing.error",
    "translation": "Missing required team property: display_name."
  },
  {
    "id": "app.import.validate_team_import_data.name_characters.error",
    "translation": "Team name contains invalid characters."
  },
  {
    "id": "app.import.validate_team_import_data.name_length.error",
    "translation": "Team name is too long."
  },
  {
    "id": "app.import.validate_team_import_data.name_missing.error",
    "translation": "Missing required team property: name."
  },
  {
    "id": "app.import.validate_team_import_data.name_reserved.error",
    "translation": "Team name contains reserved words."
  },
  {
    "id": "app.import.validate_team_import_data.scheme_invalid.error",
    "translation": "Invalid scheme name for team."
  },
  {
    "id": "app.import.validate_team_import_data.type_invalid.error",
    "translation": "Team type is not valid."
  },
  {
    "id": "app.import.validate_team_import_data.type_missing.error",
    "translation": "Missing required team property: type."
  },
  {
    "id": "app.import.validate_user_channels_import_data.channel_name_missing.error",
    "translation": "Channel name missing from User's Channel Membership."
  },
  {
    "id": "app.import.validate_user_channels_import_data.invalid_notify_props_desktop.error",
    "translation": "Invalid Desktop NotifyProps for User's Channel Membership."
  },
  {
    "id": "app.import.validate_user_channels_import_data.invalid_notify_props_mark_unread.error",
    "translation": "Invalid MarkUnread NotifyProps for User's Channel Membership."
  },
  {
    "id": "app.import.validate_user_channels_import_data.invalid_notify_props_mobile.error",
    "translation": "Invalid Mobile NotifyProps for User's Channel Membership."
  },
  {
    "id": "app.import.validate_user_channels_import_data.invalid_roles.error",
    "translation": "Invalid roles for User's Channel Membership."
  },
  {
    "id": "app.import.validate_user_import_data.advanced_props_email_interval.error",
    "translation": "Invalid email batching interval setting for User"
  },
  {
    "id": "app.import.validate_user_import_data.advanced_props_feature_markdown_preview.error",
    "translation": "Invalid markdown preview setting for User"
  },
  {
    "id": "app.import.validate_user_import_data.advanced_props_formatting.error",
    "translation": "Invalid post formatting setting for User"
  },
  {
    "id": "app.import.validate_user_import_data.advanced_props_show_unread_section.error",
    "translation": "Invalid show unread section setting for User"
  },
  {
    "id": "app.import.validate_user_import_data.auth_data_and_password.error",
    "translation": "User AuthData and Password are mutually exclusive."
  },
  {
    "id": "app.import.validate_user_import_data.auth_data_and_service_dependency.error",
    "translation": "User AuthService and AuthData are mutually inclusive."
  },
  {
    "id": "app.import.validate_user_import_data.auth_data_length.error",
    "translation": "User AuthData is too long."
  },
  {
    "id": "app.import.validate_user_import_data.email_length.error",
    "translation": "User email has an invalid length."
  },
  {
    "id": "app.import.validate_user_import_data.email_missing.error",
    "translation": "Missing required user property: email."
  },
  {
    "id": "app.import.validate_user_import_data.first_name_length.error",
    "translation": "User First Name is too long."
  },
  {
    "id": "app.import.validate_user_import_data.last_name_length.error",
    "translation": "User Last Name is too long."
  },
  {
    "id": "app.import.validate_user_import_data.nickname_length.error",
    "translation": "User nickname is too long."
  },
  {
    "id": "app.import.validate_user_import_data.notify_props_channel_trigger_invalid.error",
    "translation": "Invalid Channel Trigger Notify Prop for user."
  },
  {
    "id": "app.import.validate_user_import_data.notify_props_comments_trigger_invalid.error",
    "translation": "Invalid Comments Prop value for user."
  },
  {
    "id": "app.import.validate_user_import_data.notify_props_desktop_invalid.error",
    "translation": "Invalid Desktop Notify Prop value for user."
  },
  {
    "id": "app.import.validate_user_import_data.notify_props_desktop_sound_invalid.error",
    "translation": "Invalid Desktop Sound Notify Prop value for user."
  },
  {
    "id": "app.import.validate_user_import_data.notify_props_email_invalid.error",
    "translation": "Invalid Email Notify Prop value for user."
  },
  {
    "id": "app.import.validate_user_import_data.notify_props_mobile_invalid.error",
    "translation": "Invalid Mobile Notify Prop value for user."
  },
  {
    "id": "app.import.validate_user_import_data.notify_props_mobile_push_status_invalid.error",
    "translation": "Invalid Mobile Push Status Notify Prop for user."
  },
  {
    "id": "app.import.validate_user_import_data.password_length.error",
    "translation": "User Password has invalid length."
  },
  {
    "id": "app.import.validate_user_import_data.position_length.error",
    "translation": "User Position is too long."
  },
  {
    "id": "app.import.validate_user_import_data.profile_image.error",
    "translation": "Invalid profile image."
  },
  {
    "id": "app.import.validate_user_import_data.roles_invalid.error",
    "translation": "User roles are not valid."
  },
  {
    "id": "app.import.validate_user_import_data.username_invalid.error",
    "translation": "Username is not valid."
  },
  {
    "id": "app.import.validate_user_import_data.username_missing.error",
    "translation": "Missing require user property: username."
  },
  {
    "id": "app.import.validate_user_teams_import_data.invalid_auth_service.error",
    "translation": "Invalid auth service: {{.AuthService}}"
  },
  {
    "id": "app.import.validate_user_teams_import_data.invalid_roles.error",
    "translation": "Invalid roles for User's Team Membership."
  },
  {
    "id": "app.import.validate_user_teams_import_data.invalid_team_theme.error",
    "translation": "Invalid team theme for the User"
  },
  {
    "id": "app.import.validate_user_teams_import_data.team_name_missing.error",
    "translation": "Team name missing from User's Team Membership."
  },
  {
    "id": "app.insert_error",
    "translation": "insert error"
  },
  {
    "id": "app.insights.feature_disabled",
    "translation": "Insights feature is disabled."
  },
  {
    "id": "app.job.download_export_results_not_enabled",
    "translation": "DownloadExportResults in config.json is false. Please set this to true to download the results of this job."
  },
  {
    "id": "app.job.error",
    "translation": "Error during job execution."
  },
  {
    "id": "app.job.get.app_error",
    "translation": "Unable to get the job."
  },
  {
    "id": "app.job.get_all.app_error",
    "translation": "Unable to get the jobs."
  },
  {
    "id": "app.job.get_all_jobs_by_type_and_status.app_error",
    "translation": "Unable to get the all jobs by type and status."
  },
  {
    "id": "app.job.get_count_by_status_and_type.app_error",
    "translation": "Unable to get the job count by status and type."
  },
  {
    "id": "app.job.get_newest_job_by_status_and_type.app_error",
    "translation": "Unable to get the newest job by status and type."
  },
  {
    "id": "app.job.save.app_error",
    "translation": "Unable to save the job."
  },
  {
    "id": "app.job.update.app_error",
    "translation": "Unable to update the job."
  },
  {
    "id": "app.last_accessible_file.app_error",
    "translation": "Error fetching last accessible file"
  },
  {
    "id": "app.last_accessible_post.app_error",
    "translation": "Error fetching last accessible post"
  },
  {
    "id": "app.license.generate_renewal_token.app_error",
    "translation": "Failed to generate a new renewal token."
  },
  {
    "id": "app.license.generate_renewal_token.bad_license",
    "translation": "This type of license doesn't support renewal token generation"
  },
  {
    "id": "app.license.generate_renewal_token.no_license",
    "translation": "No license present"
  },
  {
    "id": "app.member_count",
    "translation": "error retrieving member count"
  },
  {
    "id": "app.notification.body.dm.subTitle",
    "translation": "While you were away, {{.SenderName}} sent you a new Direct Message."
  },
  {
    "id": "app.notification.body.dm.time",
    "translation": "{{.Hour}}:{{.Minute}} {{.TimeZone}}"
  },
  {
    "id": "app.notification.body.dm.title",
    "translation": "{{.SenderName}} sent you a new message"
  },
  {
    "id": "app.notification.body.group.subTitle",
    "translation": "While you were away, {{.SenderName}} sent a message to your group."
  },
  {
    "id": "app.notification.body.group.title",
    "translation": "{{.SenderName}} sent you a new message"
  },
  {
    "id": "app.notification.body.mention.subTitle",
    "translation": "While you were away, {{.SenderName}} mentioned you in the {{.ChannelName}} channel."
  },
  {
    "id": "app.notification.body.mention.title",
    "translation": "{{.SenderName}} mentioned you in a message"
  },
  {
    "id": "app.notification.body.thread.title",
    "translation": "{{.SenderName}} replied to a thread"
  },
  {
    "id": "app.notification.body.thread_channel.subTitle",
    "translation": "While you were away, {{.SenderName}} replied to a thread you're following."
  },
  {
    "id": "app.notification.body.thread_channel_full.subTitle",
    "translation": "While you were away, {{.SenderName}} replied to a thread you're following in {{.ChannelName}}."
  },
  {
    "id": "app.notification.body.thread_dm.subTitle",
    "translation": "While you were away, {{.SenderName}} replied to a thread in your Direct Message."
  },
  {
    "id": "app.notification.body.thread_gm.subTitle",
    "translation": "While you were away, {{.SenderName}} replied to a thread in your group."
  },
  {
    "id": "app.notification.footer.info",
    "translation": " and go to Settings > Notifications"
  },
  {
    "id": "app.notification.footer.infoLogin",
    "translation": "Login to Mattermost"
  },
  {
    "id": "app.notification.footer.title",
    "translation": "Want to change your notifications settings?"
  },
  {
    "id": "app.notification.subject.direct.full",
    "translation": "[{{.SiteName}}] New Direct Message from {{.SenderDisplayName}} on {{.Month}} {{.Day}}, {{.Year}}"
  },
  {
    "id": "app.notification.subject.group_message.full",
    "translation": "[{{ .SiteName }}] New Group Message in {{ .ChannelName}} on {{.Month}} {{.Day}}, {{.Year}}"
  },
  {
    "id": "app.notification.subject.group_message.generic",
    "translation": "[{{ .SiteName }}] New Group Message on {{.Month}} {{.Day}}, {{.Year}}"
  },
  {
    "id": "app.notification.subject.notification.full",
    "translation": "[{{ .SiteName }}] Notification in {{ .TeamName}} on {{.Month}} {{.Day}}, {{.Year}}"
  },
  {
    "id": "app.notify_admin.save.app_error",
    "translation": "Unable to save notify data."
  },
  {
    "id": "app.notify_admin.send_notification_post.app_error",
    "translation": "Unable to send notification post."
  },
  {
    "id": "app.oauth.delete_app.app_error",
    "translation": "An error occurred while deleting the OAuth2 App."
  },
  {
    "id": "app.oauth.get_access_data_by_user_for_app.app_error",
    "translation": "We encountered an error finding all the access tokens."
  },
  {
    "id": "app.oauth.get_app.find.app_error",
    "translation": "Unable to find the requested app."
  },
  {
    "id": "app.oauth.get_app.finding.app_error",
    "translation": "We encountered an error finding the app."
  },
  {
    "id": "app.oauth.get_app_by_user.find.app_error",
    "translation": "Unable to find any existing apps."
  },
  {
    "id": "app.oauth.get_apps.find.app_error",
    "translation": "An error occurred while finding the OAuth2 Apps."
  },
  {
    "id": "app.oauth.permanent_delete_auth_data_by_user.app_error",
    "translation": "Unable to remove the authorization code."
  },
  {
    "id": "app.oauth.remove_access_data.app_error",
    "translation": "Unable to remove the access token."
  },
  {
    "id": "app.oauth.save_app.existing.app_error",
    "translation": "Must call update for existing app."
  },
  {
    "id": "app.oauth.save_app.save.app_error",
    "translation": "Unable to save the app."
  },
  {
    "id": "app.oauth.update_app.find.app_error",
    "translation": "Unable to find the existing app to update."
  },
  {
    "id": "app.oauth.update_app.updating.app_error",
    "translation": "We encountered an error updating the app."
  },
  {
    "id": "app.plugin.cluster.save_config.app_error",
    "translation": "The plugin configuration in your config.json file must be updated manually when using ReadOnlyConfig with clustering enabled."
  },
  {
    "id": "app.plugin.config.app_error",
    "translation": "Error saving plugin state in config."
  },
  {
    "id": "app.plugin.deactivate.app_error",
    "translation": "Unable to deactivate plugin."
  },
  {
    "id": "app.plugin.delete_public_key.delete.app_error",
    "translation": "An error occurred while deleting the public key."
  },
  {
    "id": "app.plugin.disabled.app_error",
    "translation": "Plugins have been disabled. Please check your logs for details."
  },
  {
    "id": "app.plugin.extract.app_error",
    "translation": "An error occurred extracting the plugin bundle."
  },
  {
    "id": "app.plugin.filesystem.app_error",
    "translation": "Encountered filesystem error."
  },
  {
    "id": "app.plugin.flag_managed.app_error",
    "translation": "Unable to set plugin as managed by the file store."
  },
  {
    "id": "app.plugin.get_cluster_plugin_statuses.app_error",
    "translation": "Unable to get plugin statuses from the cluster."
  },
  {
    "id": "app.plugin.get_plugins.app_error",
    "translation": "Unable to get active plugins."
  },
  {
    "id": "app.plugin.get_public_key.get_file.app_error",
    "translation": "An error occurred while getting the public key from the store."
  },
  {
    "id": "app.plugin.get_statuses.app_error",
    "translation": "Unable to get plugin statuses."
  },
  {
    "id": "app.plugin.install.app_error",
    "translation": "Unable to install plugin."
  },
  {
    "id": "app.plugin.install_id.app_error",
    "translation": "Unable to install plugin. A plugin with the same ID is already installed."
  },
  {
    "id": "app.plugin.install_id_failed_remove.app_error",
    "translation": "Unable to install plugin. A plugin with the same ID is already installed and failed to be removed."
  },
  {
    "id": "app.plugin.install_marketplace_plugin.app_error",
    "translation": "Failed to install marketplace plugin."
  },
  {
    "id": "app.plugin.invalid_id.app_error",
    "translation": "Plugin Id must be at least {{.Min}} characters, at most {{.Max}} characters and match {{.Regex}}."
  },
  {
    "id": "app.plugin.invalid_version.app_error",
    "translation": "Plugin version could not be parsed."
  },
  {
    "id": "app.plugin.manifest.app_error",
    "translation": "Unable to find manifest for extracted plugin."
  },
  {
    "id": "app.plugin.marketplace_client.app_error",
    "translation": "Failed to create marketplace client."
  },
  {
    "id": "app.plugin.marketplace_client.failed_to_fetch",
    "translation": "Failed to get plugins from the marketplace server."
  },
  {
    "id": "app.plugin.marketplace_disabled.app_error",
    "translation": "Marketplace has been disabled. Please check your logs for details."
  },
  {
    "id": "app.plugin.marketplace_plugin_request.app_error",
    "translation": "Failed to decode the marketplace plugin request."
  },
  {
    "id": "app.plugin.marketplace_plugins.not_found.app_error",
    "translation": "Could not find the requested marketplace plugin."
  },
  {
    "id": "app.plugin.marketplace_plugins.signature_not_found.app_error",
    "translation": "Could not find the requested marketplace plugin signature."
  },
  {
    "id": "app.plugin.marshal.app_error",
    "translation": "Failed to marshal marketplace plugins."
  },
  {
    "id": "app.plugin.modify_saml.app_error",
    "translation": "Can't modify saml files."
  },
  {
    "id": "app.plugin.mvdir.app_error",
    "translation": "Unable to move plugin from temporary directory to final destination. Another plugin may be using the same directory name."
  },
  {
    "id": "app.plugin.not_installed.app_error",
    "translation": "Plugin is not installed."
  },
  {
    "id": "app.plugin.product_mode.app_error",
    "translation": "Plugin {{.Name}} cannot be enabled in product mode."
  },
  {
    "id": "app.plugin.remove.app_error",
    "translation": "Unable to delete plugin."
  },
  {
    "id": "app.plugin.remove_bundle.app_error",
    "translation": "Unable to remove plugin bundle from file store."
  },
  {
    "id": "app.plugin.restart.app_error",
    "translation": "Unable to restart plugin on upgrade."
  },
  {
    "id": "app.plugin.signature_decode.app_error",
    "translation": "Unable to decode base64 signature."
  },
  {
    "id": "app.plugin.store_bundle.app_error",
    "translation": "Unable to store the plugin to the configured file store."
  },
  {
    "id": "app.plugin.store_signature.app_error",
    "translation": "Unable to store the plugin signature to the configured file store."
  },
  {
    "id": "app.plugin.sync.list_filestore.app_error",
    "translation": "Error reading files from the plugins folder in the file store."
  },
  {
    "id": "app.plugin.sync.read_local_folder.app_error",
    "translation": "Error reading local plugins folder."
  },
  {
    "id": "app.plugin.upload_disabled.app_error",
    "translation": "Plugins and/or plugin uploads have been disabled."
  },
  {
    "id": "app.plugin.webapp_bundle.app_error",
    "translation": "Unable to generate plugin webapp bundle."
  },
  {
    "id": "app.plugin.write_file.read.app_error",
    "translation": "An error occurred while reading the file."
  },
  {
    "id": "app.plugin.write_file.saving.app_error",
    "translation": "An error occurred while saving the file."
  },
  {
    "id": "app.plugin_store.delete.app_error",
    "translation": "Could not delete plugin key value."
  },
  {
    "id": "app.plugin_store.get.app_error",
    "translation": "Could not get plugin key value."
  },
  {
    "id": "app.plugin_store.list.app_error",
    "translation": "Unable to list all the plugin keys."
  },
  {
    "id": "app.plugin_store.save.app_error",
    "translation": "Could not save or update plugin key value."
  },
  {
    "id": "app.post.analytics_posts_count.app_error",
    "translation": "Unable to get post counts."
  },
  {
    "id": "app.post.analytics_posts_count_by_day.app_error",
    "translation": "Unable to get post counts by day."
  },
  {
    "id": "app.post.analytics_teams_count.app_error",
    "translation": "Unable to get teams usage"
  },
  {
    "id": "app.post.analytics_user_counts_posts_by_day.app_error",
    "translation": "Unable to get user counts with posts."
  },
  {
    "id": "app.post.cloud.get.app_error",
    "translation": "Can not fetch the post as it is past the cloud's plan limit."
  },
  {
    "id": "app.post.delete.app_error",
    "translation": "Unable to delete the post."
  },
  {
    "id": "app.post.get.app_error",
    "translation": "Unable to get the post."
  },
  {
    "id": "app.post.get_direct_posts.app_error",
    "translation": "Unable to get direct posts."
  },
  {
    "id": "app.post.get_files_batch_for_indexing.get.app_error",
    "translation": "Unable to get the files batch for indexing."
  },
  {
    "id": "app.post.get_flagged_posts.app_error",
    "translation": "Unable to get the flagged posts."
  },
  {
    "id": "app.post.get_post_after_time.app_error",
    "translation": "Unable to get post after time bound."
  },
  {
    "id": "app.post.get_post_id_around.app_error",
    "translation": "Unable to get post around time bound."
  },
  {
    "id": "app.post.get_posts.app_error",
    "translation": "Limit exceeded for paging."
  },
  {
    "id": "app.post.get_posts_around.get.app_error",
    "translation": "Unable to get the posts for the channel."
  },
  {
    "id": "app.post.get_posts_batch_for_indexing.get.app_error",
    "translation": "Unable to get the posts batch for indexing."
  },
  {
    "id": "app.post.get_posts_created_at.app_error",
    "translation": "Unable to get the posts for the channel."
  },
  {
    "id": "app.post.get_posts_since.app_error",
    "translation": "Unable to get the posts for the channel."
  },
  {
    "id": "app.post.get_root_posts.app_error",
    "translation": "Unable to get the posts for the channel."
  },
  {
    "id": "app.post.get_top_dms_for_user_since.app_error",
    "translation": "Unable to get top DMs for user."
  },
  {
    "id": "app.post.get_top_threads_for_team_since.app_error",
    "translation": "Unable to get top threads for team."
  },
  {
    "id": "app.post.get_top_threads_for_user_since.app_error",
    "translation": "Unable to get top threads for user."
  },
  {
    "id": "app.post.marshal.app_error",
    "translation": "Failed to marshal post."
  },
  {
    "id": "app.post.overwrite.app_error",
    "translation": "Unable to overwrite the Post."
  },
  {
    "id": "app.post.permanent_delete_by_channel.app_error",
    "translation": "Unable to delete the posts by channel."
  },
  {
    "id": "app.post.permanent_delete_by_user.app_error",
    "translation": "Unable to select the posts to delete for the user."
  },
  {
    "id": "app.post.save.app_error",
    "translation": "Unable to save the Post."
  },
  {
    "id": "app.post.save.existing.app_error",
    "translation": "You cannot update an existing Post."
  },
  {
    "id": "app.post.search.app_error",
    "translation": "Error searching posts"
  },
  {
    "id": "app.post.update.app_error",
    "translation": "Unable to update the Post."
  },
  {
    "id": "app.post_prority.get_for_post.app_error",
    "translation": "Unable to get postpriority for post"
  },
  {
    "id": "app.post_reminder_dm",
    "translation": "Hi there, here's your reminder about this message from @{{.Username}}: {{.SiteURL}}/{{.TeamName}}/pl/{{.PostId}}"
  },
  {
    "id": "app.preference.delete.app_error",
    "translation": "We encountered an error while deleting preferences."
  },
  {
    "id": "app.preference.get.app_error",
    "translation": "We encountered an error while finding preferences."
  },
  {
    "id": "app.preference.get_all.app_error",
    "translation": "We encountered an error while finding preferences."
  },
  {
    "id": "app.preference.get_category.app_error",
    "translation": "We encountered an error while finding preferences."
  },
  {
    "id": "app.preference.permanent_delete_by_user.app_error",
    "translation": "We encountered an error while deleting preferences."
  },
  {
    "id": "app.preference.save.updating.app_error",
    "translation": "We encountered an error while updating preferences."
  },
  {
    "id": "app.prepackged-plugin.invalid_version.app_error",
    "translation": "Prepackged plugin version could not be parsed."
  },
  {
    "id": "app.reaction.bulk_get_for_post_ids.app_error",
    "translation": "Unable to get reactions for post."
  },
  {
    "id": "app.reaction.delete_all_with_emoji_name.get_reactions.app_error",
    "translation": "Unable to get all reactions with this emoji name."
  },
  {
    "id": "app.reaction.get_for_post.app_error",
    "translation": "Unable to get reactions for post."
  },
  {
    "id": "app.reaction.save.save.app_error",
    "translation": "Unable to save reaction."
  },
  {
    "id": "app.recent_searches.app_error",
    "translation": "Error fetching recent searches"
  },
  {
    "id": "app.recover.delete.app_error",
    "translation": "Unable to delete token."
  },
  {
    "id": "app.recover.save.app_error",
    "translation": "Unable to save the token."
  },
  {
    "id": "app.role.check_roles_exist.role_not_found",
    "translation": "The provided role does not exist"
  },
  {
    "id": "app.role.get.app_error",
    "translation": "Unable to get role."
  },
  {
    "id": "app.role.get_all.app_error",
    "translation": "Unable to get all the roles."
  },
  {
    "id": "app.role.get_by_name.app_error",
    "translation": "Unable to get role."
  },
  {
    "id": "app.role.get_by_names.app_error",
    "translation": "Unable to get roles."
  },
  {
    "id": "app.role.permanent_delete_all.app_error",
    "translation": "We could not permanently delete all the roles."
  },
  {
    "id": "app.role.save.insert.app_error",
    "translation": "Unable to save new role."
  },
  {
    "id": "app.role.save.invalid_role.app_error",
    "translation": "The role was not valid."
  },
  {
    "id": "app.save_config.app_error",
    "translation": "An error occurred saving the configuration."
  },
  {
    "id": "app.scheme.delete.app_error",
    "translation": "Unable to delete this scheme."
  },
  {
    "id": "app.scheme.get.app_error",
    "translation": "Unable to get the scheme."
  },
  {
    "id": "app.scheme.permanent_delete_all.app_error",
    "translation": "We could not permanently delete the schemes."
  },
  {
    "id": "app.scheme.save.app_error",
    "translation": "Unable to create the scheme."
  },
  {
    "id": "app.scheme.save.invalid_scheme.app_error",
    "translation": "The provided scheme is invalid."
  },
  {
    "id": "app.schemes.is_phase_2_migration_completed.not_completed.app_error",
    "translation": "This API endpoint is not accessible as required migrations have not yet completed."
  },
  {
    "id": "app.select_error",
    "translation": "select error"
  },
  {
    "id": "app.session.analytics_session_count.app_error",
    "translation": "Unable to count the sessions."
  },
  {
    "id": "app.session.extend_session_expiry.app_error",
    "translation": "Unable to extend session length"
  },
  {
    "id": "app.session.get.app_error",
    "translation": "We encountered an error finding the session."
  },
  {
    "id": "app.session.get_sessions.app_error",
    "translation": "We encountered an error while finding user sessions."
  },
  {
    "id": "app.session.permanent_delete_sessions_by_user.app_error",
    "translation": "Unable to remove all the sessions for the user."
  },
  {
    "id": "app.session.remove.app_error",
    "translation": "Unable to remove the session."
  },
  {
    "id": "app.session.remove_all_sessions_for_team.app_error",
    "translation": "Unable to remove all the sessions."
  },
  {
    "id": "app.session.save.app_error",
    "translation": "Unable to save the session."
  },
  {
    "id": "app.session.save.existing.app_error",
    "translation": "Unable to update existing session."
  },
  {
    "id": "app.session.update_device_id.app_error",
    "translation": "Unable to update the device id."
  },
  {
    "id": "app.sharedchannel.dm_channel_creation.internal_error",
    "translation": "Encountered an error while creating a direct shared channel."
  },
  {
    "id": "app.status.get.app_error",
    "translation": "Encountered an error retrieving the status."
  },
  {
    "id": "app.status.get.missing.app_error",
    "translation": "No entry for that status exists."
  },
  {
    "id": "app.submit_interactive_dialog.json_error",
    "translation": "Encountered an error encoding JSON for the interactive dialog."
  },
  {
    "id": "app.system.complete_onboarding_request.app_error",
    "translation": "Failed to decode the complete onboarding request."
  },
  {
    "id": "app.system.complete_onboarding_request.no_first_user",
    "translation": "Onboarding can only be completed by a System Administrator."
  },
  {
    "id": "app.system.get.app_error",
    "translation": "We encountered an error finding the system properties."
  },
  {
    "id": "app.system.get_by_name.app_error",
    "translation": "Unable to find the system variable."
  },
  {
    "id": "app.system.get_onboarding_request.app_error",
    "translation": "Failed to get onboarding completion status."
  },
  {
    "id": "app.system.permanent_delete_by_name.app_error",
    "translation": "We could not permanently delete the system table entry."
  },
  {
    "id": "app.system.save.app_error",
    "translation": "We encountered an error saving the system property."
  },
  {
    "id": "app.system.system_bot.bot_displayname",
    "translation": "System"
  },
  {
    "id": "app.system.warn_metric.bot_displayname",
    "translation": "Mattermost Advisor"
  },
  {
    "id": "app.system.warn_metric.store.app_error",
    "translation": "Failed to store value for {{.WarnMetricName}}"
  },
  {
    "id": "app.system_install_date.parse_int.app_error",
    "translation": "Failed to parse installation date."
  },
  {
    "id": "app.team.analytics_team_count.app_error",
    "translation": "Unable to count the teams."
  },
  {
    "id": "app.team.clear_all_custom_role_assignments.select.app_error",
    "translation": "Failed to retrieve the team members."
  },
  {
    "id": "app.team.clear_cache.app_error",
    "translation": "Error clearing team member cache"
  },
  {
    "id": "app.team.create_onboarding_linked_board.error_duplicating_board",
    "translation": "error duplicating board"
  },
  {
    "id": "app.team.create_onboarding_linked_board.error_getting_templates",
    "translation": "error getting boards templates"
  },
  {
    "id": "app.team.create_onboarding_linked_board.error_no_board",
    "translation": "error no board created"
  },
  {
    "id": "app.team.create_onboarding_linked_board.error_patching_board",
    "translation": "error while patching board"
  },
  {
    "id": "app.team.create_onboarding_linked_board.itf_not_of_type",
    "translation": "interface not of expected type"
  },
  {
    "id": "app.team.create_onboarding_linked_board.product_key_not_found",
    "translation": "product key not found"
  },
  {
    "id": "app.team.get.find.app_error",
    "translation": "Unable to find the existing team."
  },
  {
    "id": "app.team.get.finding.app_error",
    "translation": "We encountered an error finding the team."
  },
  {
    "id": "app.team.get_active_member_count.app_error",
    "translation": "Unable to count the team members."
  },
  {
    "id": "app.team.get_all.app_error",
    "translation": "We could not get all teams."
  },
  {
    "id": "app.team.get_all_private_team_listing.app_error",
    "translation": "We could not get all private teams."
  },
  {
    "id": "app.team.get_all_team_listing.app_error",
    "translation": "We could not get all teams."
  },
  {
    "id": "app.team.get_by_invite_id.finding.app_error",
    "translation": "Unable to find the existing team."
  },
  {
    "id": "app.team.get_by_name.app_error",
    "translation": "Unable to find the existing team."
  },
  {
    "id": "app.team.get_by_name.missing.app_error",
    "translation": "Unable to find the existing team."
  },
  {
    "id": "app.team.get_by_scheme.app_error",
    "translation": "Unable to get the channels for the provided scheme."
  },
  {
    "id": "app.team.get_common_team_ids_for_users.app_error",
    "translation": "Unable to get the common team IDs."
  },
  {
    "id": "app.team.get_member.app_error",
    "translation": "Unable to get the team member."
  },
  {
    "id": "app.team.get_member.missing.app_error",
    "translation": "No team member found for that user ID and team ID."
  },
  {
    "id": "app.team.get_member_count.app_error",
    "translation": "Unable to count the team members."
  },
  {
    "id": "app.team.get_members.app_error",
    "translation": "Unable to get the team members."
  },
  {
    "id": "app.team.get_members_by_ids.app_error",
    "translation": "Unable to get the team members."
  },
  {
    "id": "app.team.get_unread.app_error",
    "translation": "Unable to get the teams unread messages."
  },
  {
    "id": "app.team.get_user_team_ids.app_error",
    "translation": "Unable to get the list of teams of a user."
  },
  {
    "id": "app.team.invite_id.group_constrained.error",
    "translation": "Unable to join a group-constrained team by invite."
  },
  {
    "id": "app.team.invite_token.group_constrained.error",
    "translation": "Unable to join a group-constrained team by token."
  },
  {
    "id": "app.team.join_user_to_team.max_accounts.app_error",
    "translation": "This team has reached the maximum number of allowed accounts. Contact your System Administrator to set a higher limit."
  },
  {
    "id": "app.team.join_user_to_team.save_member.app_error",
    "translation": "Unable to create the new team membership"
  },
  {
    "id": "app.team.join_user_to_team.save_member.conflict.app_error",
    "translation": "Unable to create the new team membership because it already exists"
  },
  {
    "id": "app.team.join_user_to_team.save_member.max_accounts.app_error",
    "translation": "Unable to create the new team membership because the team has reached the limit of members"
  },
  {
    "id": "app.team.migrate_team_members.update.app_error",
    "translation": "Failed to update the team member."
  },
  {
    "id": "app.team.permanent_delete.app_error",
    "translation": "Unable to delete the existing team."
  },
  {
    "id": "app.team.permanentdeleteteam.internal_error",
    "translation": "Unable to delete team."
  },
  {
    "id": "app.team.remove_member.app_error",
    "translation": "Unable to remove the team member."
  },
  {
    "id": "app.team.rename_team.name_occupied",
    "translation": "Unable to rename the team, the name is already in use."
  },
  {
    "id": "app.team.reset_all_team_schemes.app_error",
    "translation": "We could not reset the team schemes."
  },
  {
    "id": "app.team.save.app_error",
    "translation": "Unable to save the team."
  },
  {
    "id": "app.team.save.existing.app_error",
    "translation": "Must call update for existing team."
  },
  {
    "id": "app.team.save_member.save.app_error",
    "translation": "Unable to save the team member."
  },
  {
    "id": "app.team.search_all_team.app_error",
    "translation": "We encountered an error searching teams."
  },
  {
    "id": "app.team.search_open_team.app_error",
    "translation": "We encountered an error searching open teams."
  },
  {
    "id": "app.team.search_private_team.app_error",
    "translation": "We encountered an error searching private teams."
  },
  {
    "id": "app.team.update.find.app_error",
    "translation": "Unable to find the existing team to update."
  },
  {
    "id": "app.team.update.updating.app_error",
    "translation": "We encountered an error updating the team."
  },
  {
    "id": "app.team.user_belongs_to_teams.app_error",
    "translation": "Unable to determine if the user belongs to a list of teams."
  },
  {
    "id": "app.teams.analytics_teams_count.app_error",
    "translation": "Unable to get team count"
  },
  {
    "id": "app.terms_of_service.create.app_error",
    "translation": "Unable to save terms of service."
  },
  {
    "id": "app.terms_of_service.create.existing.app_error",
    "translation": "Must not call save for existing terms of service."
  },
  {
    "id": "app.terms_of_service.get.app_error",
    "translation": "Unable to fetch terms of service."
  },
  {
    "id": "app.terms_of_service.get.no_rows.app_error",
    "translation": "No terms of service found."
  },
  {
    "id": "app.update_error",
    "translation": "update error"
  },
  {
    "id": "app.upload.create.cannot_upload_to_deleted_channel.app_error",
    "translation": "Cannot upload to a deleted channel."
  },
  {
    "id": "app.upload.create.incorrect_channel_id.app_error",
    "translation": "Cannot upload to the specified channel."
  },
  {
    "id": "app.upload.create.save.app_error",
    "translation": "Failed to save upload."
  },
  {
    "id": "app.upload.get.app_error",
    "translation": "Failed to get upload."
  },
  {
    "id": "app.upload.get_for_user.app_error",
    "translation": "Failed to get uploads for user."
  },
  {
    "id": "app.upload.run_plugins_hook.move_fail",
    "translation": "Failed to move file."
  },
  {
    "id": "app.upload.run_plugins_hook.rejected",
    "translation": "Unable to upload file {{.Filename}}. Rejected by plugin: {{.Reason}}"
  },
  {
    "id": "app.upload.upload_data.concurrent.app_error",
    "translation": "Unable to upload data from more than one request."
  },
  {
    "id": "app.upload.upload_data.first_part_too_small.app_error",
    "translation": "Failed to upload data. First part must be at least {{.Size}} Bytes."
  },
  {
    "id": "app.upload.upload_data.gen_info.app_error",
    "translation": "Failed to generate file info from uploaded data."
  },
  {
    "id": "app.upload.upload_data.large_image.app_error",
    "translation": "{{.Filename}} dimensions ({{.Width}} by {{.Height}} pixels) exceed the limits."
  },
  {
    "id": "app.upload.upload_data.move_file.app_error",
    "translation": "Failed to move uploaded file."
  },
  {
    "id": "app.upload.upload_data.read_file.app_error",
    "translation": "Failed to read a file."
  },
  {
    "id": "app.upload.upload_data.save.app_error",
    "translation": "Failed to save file info."
  },
  {
    "id": "app.upload.upload_data.update.app_error",
    "translation": "Failed to update the upload session."
  },
  {
    "id": "app.usage.get_storage_usage.app_error",
    "translation": "Failed to get storage usage."
  },
  {
    "id": "app.user.analytics_daily_active_users.app_error",
    "translation": "Unable to get the active users during the requested period."
  },
  {
    "id": "app.user.analytics_get_inactive_users_count.app_error",
    "translation": "We could not count the inactive users."
  },
  {
    "id": "app.user.clear_all_custom_role_assignments.select.app_error",
    "translation": "Failed to retrieve the users."
  },
  {
    "id": "app.user.convert_bot_to_user.app_error",
    "translation": "Unable to convert bot to user."
  },
  {
    "id": "app.user.demote_user_to_guest.user_update.app_error",
    "translation": "Failed to update the user."
  },
  {
    "id": "app.user.get.app_error",
    "translation": "We encountered an error finding the account."
  },
  {
    "id": "app.user.get_badge_count.app_error",
    "translation": "We could not get the badge count for the user."
  },
  {
    "id": "app.user.get_by_auth.missing_account.app_error",
    "translation": "Unable to find an existing account matching your authentication type for this team. This team may require an invite from the team owner to join."
  },
  {
    "id": "app.user.get_by_auth.other.app_error",
    "translation": "We encountered an error trying to find the account by authentication type."
  },
  {
    "id": "app.user.get_by_username.app_error",
    "translation": "Unable to find an existing account matching your username for this team. This team may require an invite from the team owner to join."
  },
  {
    "id": "app.user.get_known_users.get_users.app_error",
    "translation": "Unable to get know users from the database."
  },
  {
    "id": "app.user.get_new_users.app_error",
    "translation": "We encountered an error while finding the new users."
  },
  {
    "id": "app.user.get_profile_by_group_channel_ids_for_user.app_error",
    "translation": "We encountered an error while finding user profiles."
  },
  {
    "id": "app.user.get_profiles.app_error",
    "translation": "We encountered an error while finding user profiles."
  },
  {
    "id": "app.user.get_recently_active_users.app_error",
    "translation": "We encountered an error while finding the recently active users."
  },
  {
    "id": "app.user.get_thread_count_for_user.app_error",
    "translation": "We could not get thread count for the user."
  },
  {
    "id": "app.user.get_thread_membership_for_user.app_error",
    "translation": "Unable to get user thread membership"
  },
  {
    "id": "app.user.get_thread_membership_for_user.not_found",
    "translation": "User thread membership doesn't exist"
  },
  {
    "id": "app.user.get_threads_for_user.app_error",
    "translation": "Unable to get user threads"
  },
  {
    "id": "app.user.get_threads_for_user.not_found",
    "translation": "User thread doesn't exist or is not followed"
  },
  {
    "id": "app.user.get_total_users_count.app_error",
    "translation": "We could not count the users."
  },
  {
    "id": "app.user.get_unread_count.app_error",
    "translation": "We could not get the unread message count for the user."
  },
  {
    "id": "app.user.get_users_batch_for_indexing.get_users.app_error",
    "translation": "Unable to get the users batch for indexing."
  },
  {
    "id": "app.user.missing_account.const",
    "translation": "Unable to find the user."
  },
  {
    "id": "app.user.permanent_delete.app_error",
    "translation": "Unable to delete the existing account."
  },
  {
    "id": "app.user.permanentdeleteuser.internal_error",
    "translation": "Unable to delete user."
  },
  {
    "id": "app.user.promote_guest.user_update.app_error",
    "translation": "Failed to update the user."
  },
  {
    "id": "app.user.save.app_error",
    "translation": "Unable to save the account."
  },
  {
    "id": "app.user.save.email_exists.app_error",
    "translation": "An account with that email already exists."
  },
  {
    "id": "app.user.save.existing.app_error",
    "translation": "Must call update for existing user."
  },
  {
    "id": "app.user.save.username_exists.app_error",
    "translation": "An account with that username already exists."
  },
  {
    "id": "app.user.search.app_error",
    "translation": "Unable to find any user matching the search parameters."
  },
  {
    "id": "app.user.send_auto_response.app_error",
    "translation": "Unable to send auto response from user."
  },
  {
    "id": "app.user.send_emails.app_error",
    "translation": "No emails were successfully sent"
  },
  {
    "id": "app.user.store_is_empty.app_error",
    "translation": "Failed to check if user store is empty."
  },
  {
    "id": "app.user.update.find.app_error",
    "translation": "Unable to find the existing account to update."
  },
  {
    "id": "app.user.update.finding.app_error",
    "translation": "We encountered an error finding the account."
  },
  {
    "id": "app.user.update_active_for_multiple_users.updating.app_error",
    "translation": "Unable to deactivate guests."
  },
  {
    "id": "app.user.update_auth_data.app_error",
    "translation": "Unable to update the auth data."
  },
  {
    "id": "app.user.update_auth_data.email_exists.app_error",
    "translation": "Unable to switch account to {{.Service}}. An account using the email {{.Email}} already exists."
  },
  {
    "id": "app.user.update_failed_pwd_attempts.app_error",
    "translation": "Unable to update the failed_attempts."
  },
  {
    "id": "app.user.update_thread_follow_for_user.app_error",
    "translation": "Unable to update following state for thread"
  },
  {
    "id": "app.user.update_thread_read_for_user.app_error",
    "translation": "Unable to update read state for thread"
  },
  {
    "id": "app.user.update_thread_read_for_user_by_post.app_error",
    "translation": "Invalid post_id"
  },
  {
    "id": "app.user.update_threads_read_for_user.app_error",
    "translation": "Unable to update all user threads as read"
  },
  {
    "id": "app.user.update_update.app_error",
    "translation": "Unable to update the date of the last update of the user."
  },
  {
    "id": "app.user.verify_email.app_error",
    "translation": "Unable to update verify email field."
  },
  {
    "id": "app.user_access_token.delete.app_error",
    "translation": "Unable to delete the personal access token."
  },
  {
    "id": "app.user_access_token.disabled",
    "translation": "Personal access tokens are disabled on this server. Please contact your system administrator for details."
  },
  {
    "id": "app.user_access_token.get_all.app_error",
    "translation": "Unable to get all personal access tokens."
  },
  {
    "id": "app.user_access_token.get_by_user.app_error",
    "translation": "Unable to get the personal access tokens by user."
  },
  {
    "id": "app.user_access_token.invalid_or_missing",
    "translation": "Invalid or missing token."
  },
  {
    "id": "app.user_access_token.save.app_error",
    "translation": "Unable to save the personal access token."
  },
  {
    "id": "app.user_access_token.search.app_error",
    "translation": "We encountered an error searching user access tokens."
  },
  {
    "id": "app.user_access_token.update_token_disable.app_error",
    "translation": "Unable to disable the access token."
  },
  {
    "id": "app.user_access_token.update_token_enable.app_error",
    "translation": "Unable to enable the access token."
  },
  {
    "id": "app.user_terms_of_service.delete.app_error",
    "translation": "Unable to delete terms of service."
  },
  {
    "id": "app.user_terms_of_service.get_by_user.app_error",
    "translation": "Unable to fetch terms of service."
  },
  {
    "id": "app.user_terms_of_service.get_by_user.no_rows.app_error",
    "translation": "No terms of service found."
  },
  {
    "id": "app.user_terms_of_service.save.app_error",
    "translation": "Unable to save terms of service."
  },
  {
    "id": "app.valid_password_generic.app_error",
    "translation": "Password is not valid"
  },
  {
    "id": "app.webhooks.analytics_incoming_count.app_error",
    "translation": "Unable to count the incoming webhooks."
  },
  {
    "id": "app.webhooks.analytics_outgoing_count.app_error",
    "translation": "Unable to count the outgoing webhooks."
  },
  {
    "id": "app.webhooks.delete_incoming.app_error",
    "translation": "Unable to delete the webhook."
  },
  {
    "id": "app.webhooks.delete_outgoing.app_error",
    "translation": "Unable to delete the webhook."
  },
  {
    "id": "app.webhooks.get_incoming.app_error",
    "translation": "Unable to get the webhook."
  },
  {
    "id": "app.webhooks.get_incoming_by_channel.app_error",
    "translation": "Unable to get the webhooks."
  },
  {
    "id": "app.webhooks.get_incoming_by_user.app_error",
    "translation": "Unable to get the webhook."
  },
  {
    "id": "app.webhooks.get_outgoing.app_error",
    "translation": "Unable to get the webhook."
  },
  {
    "id": "app.webhooks.get_outgoing_by_channel.app_error",
    "translation": "Unable to get the webhooks."
  },
  {
    "id": "app.webhooks.get_outgoing_by_team.app_error",
    "translation": "Unable to get the webhooks."
  },
  {
    "id": "app.webhooks.permanent_delete_incoming_by_channel.app_error",
    "translation": "Unable to delete the webhook."
  },
  {
    "id": "app.webhooks.permanent_delete_incoming_by_user.app_error",
    "translation": "Unable to delete the webhook."
  },
  {
    "id": "app.webhooks.permanent_delete_outgoing_by_channel.app_error",
    "translation": "Unable to delete the webhook."
  },
  {
    "id": "app.webhooks.permanent_delete_outgoing_by_user.app_error",
    "translation": "Unable to delete the webhook."
  },
  {
    "id": "app.webhooks.save_incoming.app_error",
    "translation": "Unable to save the IncomingWebhook."
  },
  {
    "id": "app.webhooks.save_incoming.existing.app_error",
    "translation": "You cannot overwrite an existing IncomingWebhook."
  },
  {
    "id": "app.webhooks.save_outgoing.app_error",
    "translation": "Unable to save the OutgoingWebhook."
  },
  {
    "id": "app.webhooks.save_outgoing.override.app_error",
    "translation": "You cannot overwrite an existing OutgoingWebhook."
  },
  {
    "id": "app.webhooks.update_incoming.app_error",
    "translation": "Unable to update the IncomingWebhook."
  },
  {
    "id": "app.webhooks.update_outgoing.app_error",
    "translation": "Unable to update the webhook."
  },
  {
    "id": "app.worktemplate.execution_request.cannot_create_private_board",
    "translation": "You don't have permissions to create a private board."
  },
  {
    "id": "app.worktemplate.execution_request.cannot_create_private_channel",
    "translation": "You don't have permissions to create a private channel."
  },
  {
    "id": "app.worktemplate.execution_request.cannot_create_private_playbook",
    "translation": "You don't have permissions to create a private playbook."
  },
  {
    "id": "app.worktemplate.execution_request.cannot_create_public_board",
    "translation": "You don't have permissions to create a public board."
  },
  {
    "id": "app.worktemplate.execution_request.cannot_create_public_channel",
    "translation": "You don't have permissions to create a public channel."
  },
  {
    "id": "app.worktemplate.execution_request.cannot_create_public_playbook",
    "translation": "You don't have permissions to create a public playbook."
  },
  {
    "id": "app.worktemplate.execution_request.license_cannot_create_private_playbook",
    "translation": "Your license does not support private playbooks."
  },
  {
    "id": "app.worktemplates.execute_work_template.app_error",
    "translation": "Error while executing a work template."
  },
  {
    "id": "app.worktemplates.execute_work_template.boards.create_error",
    "translation": "Error while creating a board."
  },
  {
    "id": "app.worktemplates.execute_work_template.channels.create_error",
    "translation": "Error while creating a channel."
  },
  {
    "id": "app.worktemplates.execute_work_template.name_too_long",
    "translation": "The name field cannot contain more than 64 characters."
  },
  {
    "id": "app.worktemplates.execute_work_template.playbooks.create_error",
    "translation": "Error while creating a playbook."
  },
  {
    "id": "app.worktemplates.execute_work_template.playbooks.find_channel_error",
    "translation": "Unable to find channel associated with a playbook."
  },
  {
    "id": "app.worktemplates.get_categories.app_error",
    "translation": "Unable to get work template categories"
  },
  {
    "id": "app.worktemplates.get_templates.app_error",
    "translation": "Unable to get work templates"
  },
  {
    "id": "bleveengine.already_started.error",
    "translation": "Bleve is already started."
  },
  {
    "id": "bleveengine.create_channel_index.error",
    "translation": "Error creating the bleve channel index."
  },
  {
    "id": "bleveengine.create_file_index.error",
    "translation": "Error creating the bleve file index."
  },
  {
    "id": "bleveengine.create_post_index.error",
    "translation": "Error creating the bleve post index."
  },
  {
    "id": "bleveengine.create_user_index.error",
    "translation": "Error creating the bleve user index."
  },
  {
    "id": "bleveengine.delete_channel.error",
    "translation": "Failed to delete the channel."
  },
  {
    "id": "bleveengine.delete_channel_posts.error",
    "translation": "Failed to delete channel posts"
  },
  {
    "id": "bleveengine.delete_file.error",
    "translation": "Failed to delete the file."
  },
  {
    "id": "bleveengine.delete_files_batch.error",
    "translation": "Failed to delete the files."
  },
  {
    "id": "bleveengine.delete_post.error",
    "translation": "Failed to delete the post."
  },
  {
    "id": "bleveengine.delete_post_files.error",
    "translation": "Failed to delete the post files."
  },
  {
    "id": "bleveengine.delete_user.error",
    "translation": "Failed to delete the user."
  },
  {
    "id": "bleveengine.delete_user_files.error",
    "translation": "Failed to delete the user files."
  },
  {
    "id": "bleveengine.delete_user_posts.error",
    "translation": "Failed to delete user posts"
  },
  {
    "id": "bleveengine.index_channel.error",
    "translation": "Failed to index the channel."
  },
  {
    "id": "bleveengine.index_file.error",
    "translation": "Failed to index the file."
  },
  {
    "id": "bleveengine.index_post.error",
    "translation": "Failed to index the post."
  },
  {
    "id": "bleveengine.index_user.error",
    "translation": "Failed to index the user."
  },
  {
    "id": "bleveengine.indexer.do_job.bulk_index_channels.batch_error",
    "translation": "Failed to index channel batch."
  },
  {
    "id": "bleveengine.indexer.do_job.bulk_index_files.batch_error",
    "translation": "Failed to index file batch."
  },
  {
    "id": "bleveengine.indexer.do_job.bulk_index_posts.batch_error",
    "translation": "Failed to index post batch."
  },
  {
    "id": "bleveengine.indexer.do_job.bulk_index_users.batch_error",
    "translation": "Failed to index user batch."
  },
  {
    "id": "bleveengine.indexer.do_job.engine_inactive",
    "translation": "Failed to run Bleve index job: engine is inactive."
  },
  {
    "id": "bleveengine.indexer.do_job.get_oldest_entity.error",
    "translation": "The oldest entity (user, channel or post) could not be retrieved from the database."
  },
  {
    "id": "bleveengine.indexer.do_job.parse_end_time.error",
    "translation": "Bleve indexing worker failed to parse the end time."
  },
  {
    "id": "bleveengine.indexer.do_job.parse_start_time.error",
    "translation": "Bleve indexing worker failed to parse the start time."
  },
  {
    "id": "bleveengine.indexer.index_batch.nothing_left_to_index.error",
    "translation": "Trying to index a new batch when all the entities are completed."
  },
  {
    "id": "bleveengine.purge_channel_index.error",
    "translation": "Failed to purge channel indexes."
  },
  {
    "id": "bleveengine.purge_file_index.error",
    "translation": "Failed to purge file indexes."
  },
  {
    "id": "bleveengine.purge_post_index.error",
    "translation": "Failed to purge post indexes."
  },
  {
    "id": "bleveengine.purge_user_index.error",
    "translation": "Failed to purge user indexes."
  },
  {
    "id": "bleveengine.search_channels.error",
    "translation": "Channel search failed to complete."
  },
  {
    "id": "bleveengine.search_files.error",
    "translation": "File search failed to complete."
  },
  {
    "id": "bleveengine.search_posts.error",
    "translation": "Post search failed to complete."
  },
  {
    "id": "bleveengine.search_users_in_channel.nuchan.error",
    "translation": "User search failed to complete."
  },
  {
    "id": "bleveengine.search_users_in_channel.uchan.error",
    "translation": "User search failed to complete."
  },
  {
    "id": "bleveengine.search_users_in_team.error",
    "translation": "User search failed to complete."
  },
  {
    "id": "bleveengine.stop_channel_index.error",
    "translation": "Failed to close channel index."
  },
  {
    "id": "bleveengine.stop_file_index.error",
    "translation": "Failed to close file index."
  },
  {
    "id": "bleveengine.stop_post_index.error",
    "translation": "Failed to close post index."
  },
  {
    "id": "bleveengine.stop_user_index.error",
    "translation": "Failed to close user index."
  },
  {
    "id": "brand.save_brand_image.check_image_limits.app_error",
    "translation": "Image limits check failed. Resolution is too high."
  },
  {
    "id": "brand.save_brand_image.decode.app_error",
    "translation": "Unable to decode the image data."
  },
  {
    "id": "brand.save_brand_image.encode.app_error",
    "translation": "Unable to convert the image data to PNG format. Please try again."
  },
  {
    "id": "brand.save_brand_image.open.app_error",
    "translation": "Unable to upload the custom brand image. Make sure the image size is less than 2 MB and try again."
  },
  {
    "id": "brand.save_brand_image.save_image.app_error",
    "translation": "Unable to write the image file to your file storage. Please check your connection and try again."
  },
  {
    "id": "common.parse_error_int64",
    "translation": "Failed to parse the value:{{.Value}} to int64"
  },
  {
    "id": "ent.account_migration.get_all_failed",
    "translation": "Unable to get users."
  },
  {
    "id": "ent.account_migration.get_saml_users_failed",
    "translation": "Unable to get SAML users."
  },
  {
    "id": "ent.actiance.export.marshalToXml.appError",
    "translation": "Unable to convert export to XML."
  },
  {
    "id": "ent.actiance.export.write_file.appError",
    "translation": "Unable to write the export file."
  },
  {
    "id": "ent.api.post.send_notifications_and_forget.push_image_only",
    "translation": " attached a file."
  },
  {
    "id": "ent.cluster.404.app_error",
    "translation": "Cluster API endpoint not found."
  },
  {
    "id": "ent.cluster.config_changed.info",
    "translation": "Cluster configuration has changed for id={{ .id }}. The cluster may become unstable and a restart is required. To ensure the cluster is configured correctly you should perform a rolling restart immediately."
  },
  {
    "id": "ent.cluster.json_encode.error",
    "translation": "Error occurred while marshalling JSON request"
  },
  {
    "id": "ent.cluster.save_config.error",
    "translation": "System Console is set to read-only when High Availability is enabled unless ReadOnlyConfig is disabled in the configuration file."
  },
  {
    "id": "ent.cluster.timeout.error",
    "translation": "Timed out waiting for cluster response"
  },
  {
    "id": "ent.compliance.bad_export_type.appError",
    "translation": "Unknown output format {{.ExportType}}"
  },
  {
    "id": "ent.compliance.csv.attachment.copy.appError",
    "translation": "Unable to copy the attachment into the zip file."
  },
  {
    "id": "ent.compliance.csv.attachment.export.appError",
    "translation": "Unable to add attachment to the CSV export."
  },
  {
    "id": "ent.compliance.csv.file.creation.appError",
    "translation": "Unable to create temporary CSV export file."
  },
  {
    "id": "ent.compliance.csv.header.export.appError",
    "translation": "Unable to add header to the CSV export."
  },
  {
    "id": "ent.compliance.csv.metadata.export.appError",
    "translation": "Unable to add metadata file to the zip file."
  },
  {
    "id": "ent.compliance.csv.metadata.json.marshalling.appError",
    "translation": "Unable to convert metadata to json."
  },
  {
    "id": "ent.compliance.csv.metadata.json.zipfile.appError",
    "translation": "Unable to create the zip file"
  },
  {
    "id": "ent.compliance.csv.post.export.appError",
    "translation": "Unable to export a post."
  },
  {
    "id": "ent.compliance.csv.warning.appError",
    "translation": "Unable to create the warning file."
  },
  {
    "id": "ent.compliance.csv.write_file.appError",
    "translation": "Unable to write the csv file."
  },
  {
    "id": "ent.compliance.csv.zip.creation.appError",
    "translation": "Unable to create the zip export file."
  },
  {
    "id": "ent.compliance.global_relay.attachments_removed.appError",
    "translation": "Uploaded file was removed from Global Relay export because it was too large to send."
  },
  {
    "id": "ent.compliance.global_relay.open_temporary_file.appError",
    "translation": "Unable to open the temporary export file."
  },
  {
    "id": "ent.compliance.global_relay.rewind_temporary_file.appError",
    "translation": "Unable to re-read the Global Relay temporary export file."
  },
  {
    "id": "ent.compliance.global_relay.write_file.appError",
    "translation": "Unable to write the global relay file."
  },
  {
    "id": "ent.compliance.licence_disable.app_error",
    "translation": "Compliance functionality disabled by current license. Please contact your system administrator about upgrading your enterprise license."
  },
  {
    "id": "ent.compliance.run_export.template_watcher.appError",
    "translation": "Unable to load export templates. Please try again."
  },
  {
    "id": "ent.compliance.run_failed.error",
    "translation": "Compliance export failed for job '{{.JobName}}' at '{{.FilePath}}'"
  },
  {
    "id": "ent.data_retention.generic.license.error",
    "translation": "Your license does not support Data Retention."
  },
  {
    "id": "ent.data_retention.policies.internal_error",
    "translation": "We encountered an error performing the requested operation."
  },
  {
    "id": "ent.data_retention.policies.invalid_policy",
    "translation": "Policy is invalid."
  },
  {
    "id": "ent.data_retention.run_failed.error",
    "translation": "Data retention job failed."
  },
  {
    "id": "ent.elasticsearch.aggregator_worker.create_index_job.error",
    "translation": "Elasticsearch aggregator worker failed to create the indexing job"
  },
  {
    "id": "ent.elasticsearch.aggregator_worker.delete_indexes.error",
    "translation": "Elasticsearch aggregator worker failed to delete the indexes"
  },
  {
    "id": "ent.elasticsearch.aggregator_worker.get_indexes.error",
    "translation": "Elasticsearch aggregator worker failed to get indexes"
  },
  {
    "id": "ent.elasticsearch.aggregator_worker.index_job_failed.error",
    "translation": "Elasticsearch aggregator worker failed due to the indexing job failing"
  },
  {
    "id": "ent.elasticsearch.create_client.ca_cert_malformed",
    "translation": "Decoding of the CA for Elasticsearch failed"
  },
  {
    "id": "ent.elasticsearch.create_client.ca_cert_missing",
    "translation": "Could not open the CA file for Elasticsearch"
  },
  {
    "id": "ent.elasticsearch.create_client.client_cert_malformed",
    "translation": "Decoding of the client certificate for Elasticsearch failed"
  },
  {
    "id": "ent.elasticsearch.create_client.client_cert_missing",
    "translation": "Could not open the client certificate file for Elasticsearch"
  },
  {
    "id": "ent.elasticsearch.create_client.client_key_missing",
    "translation": "Could not open the client key file for Elasticsearch"
  },
  {
    "id": "ent.elasticsearch.create_client.connect_failed",
    "translation": "Setting up Elasticsearch Client Failed"
  },
  {
    "id": "ent.elasticsearch.create_template_channels_if_not_exists.template_create_failed",
    "translation": "Failed to create Elasticsearch template for channels"
  },
  {
    "id": "ent.elasticsearch.create_template_file_info_if_not_exists.template_create_failed",
    "translation": "Failed to create Elasticsearch template for files"
  },
  {
    "id": "ent.elasticsearch.create_template_posts_if_not_exists.template_create_failed",
    "translation": "Failed to create Elasticsearch template for posts"
  },
  {
    "id": "ent.elasticsearch.create_template_users_if_not_exists.template_create_failed",
    "translation": "Failed to create Elasticsearch template for users"
  },
  {
    "id": "ent.elasticsearch.data_retention_delete_indexes.delete_index.error",
    "translation": "Failed to delete Elasticsearch index"
  },
  {
    "id": "ent.elasticsearch.data_retention_delete_indexes.get_indexes.error",
    "translation": "Failed to get Elasticsearch indexes"
  },
  {
    "id": "ent.elasticsearch.delete_channel.error",
    "translation": "Failed to delete the channel"
  },
  {
    "id": "ent.elasticsearch.delete_channel_posts.error",
    "translation": "Failed to delete channel posts"
  },
  {
    "id": "ent.elasticsearch.delete_file.error",
    "translation": "Failed to delete file"
  },
  {
    "id": "ent.elasticsearch.delete_post.error",
    "translation": "Failed to delete the post"
  },
  {
    "id": "ent.elasticsearch.delete_post_files.error",
    "translation": "Failed to delete post files"
  },
  {
    "id": "ent.elasticsearch.delete_user.error",
    "translation": "Failed to delete the user"
  },
  {
    "id": "ent.elasticsearch.delete_user_files.error",
    "translation": "Failed to delete user files"
  },
  {
    "id": "ent.elasticsearch.delete_user_posts.error",
    "translation": "Failed to delete user posts"
  },
  {
    "id": "ent.elasticsearch.generic.disabled",
    "translation": "Elasticsearch search is not enabled on this server"
  },
  {
    "id": "ent.elasticsearch.getAllChannelMembers.error",
    "translation": "Failed to get all channel members"
  },
  {
    "id": "ent.elasticsearch.getAllTeamMembers.error",
    "translation": "Failed to get all team members"
  },
  {
    "id": "ent.elasticsearch.index_channel.error",
    "translation": "Failed to index the channel"
  },
  {
    "id": "ent.elasticsearch.index_channels_batch.error",
    "translation": "Unable to get the channels batch for indexing."
  },
  {
    "id": "ent.elasticsearch.index_file.error",
    "translation": "Failed to index the file"
  },
  {
    "id": "ent.elasticsearch.index_post.error",
    "translation": "Failed to index the post"
  },
  {
    "id": "ent.elasticsearch.index_user.error",
    "translation": "Failed to index the user"
  },
  {
    "id": "ent.elasticsearch.indexer.do_job.get_oldest_entity.error",
    "translation": "The oldest entity (user, channel or post), could not be retrieved from the database"
  },
  {
    "id": "ent.elasticsearch.indexer.do_job.parse_end_time.error",
    "translation": "Elasticsearch indexing worker failed to parse the end time"
  },
  {
    "id": "ent.elasticsearch.indexer.do_job.parse_start_time.error",
    "translation": "Elasticsearch indexing worker failed to parse the start time"
  },
  {
    "id": "ent.elasticsearch.indexer.index_batch.nothing_left_to_index.error",
    "translation": "Trying to index a new batch when all the entities are completed"
  },
  {
    "id": "ent.elasticsearch.not_started.error",
    "translation": "Elasticsearch is not started"
  },
  {
    "id": "ent.elasticsearch.post.get_files_batch_for_indexing.error",
    "translation": "Unable to get the files batch for indexing."
  },
  {
    "id": "ent.elasticsearch.post.get_posts_batch_for_indexing.error",
    "translation": "Unable to get the posts batch for indexing."
  },
  {
    "id": "ent.elasticsearch.purge_indexes.delete_failed",
    "translation": "Failed to delete Elasticsearch index"
  },
  {
    "id": "ent.elasticsearch.refresh_indexes.refresh_failed",
    "translation": "Failed to refresh Elasticsearch indexes"
  },
  {
    "id": "ent.elasticsearch.search_channels.disabled",
    "translation": "Elasticsearch searching is disabled on this server"
  },
  {
    "id": "ent.elasticsearch.search_channels.search_failed",
    "translation": "Search failed to complete"
  },
  {
    "id": "ent.elasticsearch.search_channels.unmarshall_channel_failed",
    "translation": "Failed to decode search results"
  },
  {
    "id": "ent.elasticsearch.search_files.disabled",
    "translation": "Elasticsearch files searching is disabled on this server"
  },
  {
    "id": "ent.elasticsearch.search_files.search_failed",
    "translation": "Search failed to complete"
  },
  {
    "id": "ent.elasticsearch.search_files.unmarshall_file_failed",
    "translation": "Failed to decode search results"
  },
  {
    "id": "ent.elasticsearch.search_posts.disabled",
    "translation": "Elasticsearch searching is disabled on this server"
  },
  {
    "id": "ent.elasticsearch.search_posts.parse_matches_failed",
    "translation": "Failed to parse search result matches"
  },
  {
    "id": "ent.elasticsearch.search_posts.search_failed",
    "translation": "Search failed to complete"
  },
  {
    "id": "ent.elasticsearch.search_posts.unmarshall_post_failed",
    "translation": "Failed to decode search results"
  },
  {
    "id": "ent.elasticsearch.search_users.search_failed",
    "translation": "Search failed to complete"
  },
  {
    "id": "ent.elasticsearch.search_users.unmarshall_user_failed",
    "translation": "Failed to decode search results"
  },
  {
    "id": "ent.elasticsearch.start.already_started.app_error",
    "translation": "Elasticsearch is already started."
  },
  {
    "id": "ent.elasticsearch.start.create_bulk_processor_failed.app_error",
    "translation": "Failed to create Elasticsearch bulk processor."
  },
  {
    "id": "ent.elasticsearch.start.get_server_version.app_error",
    "translation": "Failed to get Elasticsearch server version."
  },
  {
    "id": "ent.elasticsearch.start.parse_server_version.app_error",
    "translation": "Failed to parse Elasticsearch server version."
  },
  {
    "id": "ent.elasticsearch.start.start_bulk_processor_failed.app_error",
    "translation": "Failed to start Elasticsearch bulk processor."
  },
  {
    "id": "ent.elasticsearch.stop.already_stopped.app_error",
    "translation": "Elasticsearch is already stopped."
  },
  {
    "id": "ent.elasticsearch.test_config.indexing_disabled.error",
    "translation": "Elasticsearch is disabled."
  },
  {
    "id": "ent.elasticsearch.test_config.license.error",
    "translation": "Your license does not support Elasticsearch."
  },
  {
    "id": "ent.elasticsearch.test_config.reenter_password",
    "translation": "The Elasticsearch Server URL or Username has changed. Please re-enter the Elasticsearch password to test connection."
  },
  {
    "id": "ent.get_users_in_channel_during",
    "translation": "Failed to get users in channel during specified time period."
  },
  {
    "id": "ent.id_loaded.license_disable.app_error",
    "translation": "Your license does not support ID Loaded Push Notifications."
  },
  {
    "id": "ent.jobs.start_synchronize_job.timeout",
    "translation": "Reached AD/LDAP synchronization job timeout."
  },
  {
    "id": "ent.ldap.app_error",
    "translation": "ldap interface was nil."
  },
  {
    "id": "ent.ldap.create_fail",
    "translation": "Unable to create LDAP user."
  },
  {
    "id": "ent.ldap.disabled.app_error",
    "translation": "AD/LDAP disabled or licence does not support AD/LDAP."
  },
  {
    "id": "ent.ldap.do_login.bind_admin_user.app_error",
    "translation": "Unable to bind to AD/LDAP server. Check BindUsername and BindPassword."
  },
  {
    "id": "ent.ldap.do_login.certificate.app_error",
    "translation": "Error loading LDAP TLS Certificate file."
  },
  {
    "id": "ent.ldap.do_login.invalid_password.app_error",
    "translation": "Invalid Password."
  },
  {
    "id": "ent.ldap.do_login.key.app_error",
    "translation": "Error loading LDAP TLS Key file."
  },
  {
    "id": "ent.ldap.do_login.licence_disable.app_error",
    "translation": "AD/LDAP functionality disabled by current license. Please contact your system administrator about upgrading your enterprise license."
  },
  {
    "id": "ent.ldap.do_login.matched_to_many_users.app_error",
    "translation": "Username given matches multiple users."
  },
  {
    "id": "ent.ldap.do_login.search_ldap_server.app_error",
    "translation": "Failed to search AD/LDAP server."
  },
  {
    "id": "ent.ldap.do_login.unable_to_connect.app_error",
    "translation": "Unable to connect to AD/LDAP server."
  },
  {
    "id": "ent.ldap.do_login.user_filtered.app_error",
    "translation": "Your AD/LDAP account does not have permission to use this Mattermost server. Please ask your System Administrator to check the AD/LDAP user filter."
  },
  {
    "id": "ent.ldap.do_login.user_not_registered.app_error",
    "translation": "User not registered on AD/LDAP server."
  },
  {
    "id": "ent.ldap.do_login.x509.app_error",
    "translation": "Error creating key pair"
  },
  {
    "id": "ent.ldap.no.users.checkcertificate",
    "translation": "No LDAP users found, check your user filter and certificates."
  },
  {
    "id": "ent.ldap.save_user.email_exists.ldap_app_error",
    "translation": "This account does not use AD/LDAP authentication. Please sign in using email and password."
  },
  {
    "id": "ent.ldap.save_user.username_exists.ldap_app_error",
    "translation": "An account with that username already exists. Please contact your Administrator."
  },
  {
    "id": "ent.ldap.syncronize.delete_group_constained_memberships",
    "translation": "error deleting team or channel memberships"
  },
  {
    "id": "ent.ldap.syncronize.get_all.app_error",
    "translation": "Unable to get all users using AD/LDAP."
  },
  {
    "id": "ent.ldap.syncronize.get_all_groups.app_error",
    "translation": "error retrieving groups."
  },
  {
    "id": "ent.ldap.syncronize.populate_syncables",
    "translation": "error populating syncables"
  },
  {
    "id": "ent.ldap.syncronize.search_failure.app_error",
    "translation": "Failed to search users in AD/LDAP. Test if the Mattermost server can connect to your AD/LDAP server and try again."
  },
  {
    "id": "ent.ldap.syncronize.search_failure_size_exceeded.app_error",
    "translation": "Size Limit Exceeded. Try checking your [max page size](https://docs.mattermost.com/deployment/sso-ldap.html#i-see-the-log-error-ldap-result-code-4-size-limit-exceeded)."
  },
  {
    "id": "ent.ldap.validate_admin_filter.app_error",
    "translation": "Invalid AD/LDAP Admin Filter."
  },
  {
    "id": "ent.ldap.validate_filter.app_error",
    "translation": "Invalid AD/LDAP Filter."
  },
  {
    "id": "ent.ldap.validate_guest_filter.app_error",
    "translation": "Invalid AD/LDAP Guest Filter."
  },
  {
    "id": "ent.ldap_groups.group_search_error",
    "translation": "error retrieving ldap group"
  },
  {
    "id": "ent.ldap_groups.groups_search_error",
    "translation": "error retrieving ldap groups"
  },
  {
    "id": "ent.ldap_groups.members_of_group_error",
    "translation": "error retrieving members of group"
  },
  {
    "id": "ent.ldap_groups.no_rows",
    "translation": "no groups found with matching uid"
  },
  {
    "id": "ent.ldap_groups.reachable_groups_error",
    "translation": "error retrieving groups for user"
  },
  {
    "id": "ent.ldap_id_migrate.app_error",
    "translation": "unable to migrate."
  },
  {
    "id": "ent.message_export.actiance_export.get_attachment_error",
    "translation": "Failed to get file info for a post."
  },
  {
    "id": "ent.message_export.csv_export.get_attachment_error",
    "translation": "Failed to get file info for a post."
  },
  {
    "id": "ent.message_export.global_relay.attach_file.app_error",
    "translation": "Unable to add attachment to the Global Relay export."
  },
  {
    "id": "ent.message_export.global_relay.close_zip_file.app_error",
    "translation": "Unable to close the zip file."
  },
  {
    "id": "ent.message_export.global_relay.create_file_in_zip.app_error",
    "translation": "Unable to create the eml file."
  },
  {
    "id": "ent.message_export.global_relay.generate_email.app_error",
    "translation": "Unable to generate eml file data."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.close.app_error",
    "translation": "Unable to deliver the email to Global Relay."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.from_address.app_error",
    "translation": "Unable to set the email From address."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.msg.app_error",
    "translation": "Unable to set the email message."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.msg_data.app_error",
    "translation": "Unable to write the email message."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.parse_mail.app_error",
    "translation": "Unable to read the email information."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.to_address.app_error",
    "translation": "Unable to set the email To address."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.unable_to_connect_smtp_server.app_error",
    "translation": "Unable to connect to the smtp server"
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.unable_to_get_file_info.app_error",
    "translation": "Unable to get the information of the export temporary file."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.unable_to_open_email_file.app_error",
    "translation": "Unable to get the an email from the temporary file."
  },
  {
    "id": "ent.message_export.global_relay_export.deliver.unable_to_open_zip_file_data.app_error",
    "translation": "Unable to open the export temporary file."
  },
  {
    "id": "ent.message_export.global_relay_export.get_attachment_error",
    "translation": "Failed to get file info for a post."
  },
  {
    "id": "ent.message_export.run_export.app_error",
    "translation": "Failed to select message export data."
  },
  {
    "id": "ent.migration.migratetoldap.duplicate_field",
    "translation": "Unable to migrate AD/LDAP users with specified field. Duplicate entry detected. Please remove all duplicates and try again."
  },
  {
    "id": "ent.migration.migratetoldap.user_not_found",
    "translation": "Unable to find user on AD/LDAP server: "
  },
  {
    "id": "ent.migration.migratetosaml.email_already_used_by_other_user",
    "translation": "Email already used by another SAML user."
  },
  {
    "id": "ent.migration.migratetosaml.user_not_found_in_users_mapping_file",
    "translation": "User not found in the users file."
  },
  {
    "id": "ent.migration.migratetosaml.username_already_used_by_other_user",
    "translation": "Username already used by another Mattermost user."
  },
  {
    "id": "ent.saml.attribute.app_error",
    "translation": "SAML login was unsuccessful because one of the attributes is incorrect. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.build_request.app_error",
    "translation": "An error occurred while initiating the request to the Identity Provider. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.build_request.encoding.app_error",
    "translation": "An error occurred while encoding the request for the Identity Provider. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.configure.certificate_parse_error.app_error",
    "translation": "SAML could not load Identity Provider Public Certificate successfully, please contact your system administrator."
  },
  {
    "id": "ent.saml.configure.encryption_not_enabled.app_error",
    "translation": "SAML login was unsuccessful because encryption is not enabled. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.configure.load_idp_cert.app_error",
    "translation": "Identity Provider Public Certificate File was not found. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.configure.load_private_key.app_error",
    "translation": "SAML login was unsuccessful because the Service Provider Private Key was not found. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.configure.not_encrypted_response.app_error",
    "translation": "SAML login was unsuccessful as the Identity Provider response is not encrypted. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.do_login.decrypt.app_error",
    "translation": "SAML login was unsuccessful because an error occurred while decrypting the response from the Identity Provider. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.do_login.empty_response.app_error",
    "translation": "We received an empty response from the Identity Provider."
  },
  {
    "id": "ent.saml.do_login.invalid_signature.app_error",
    "translation": "We received an invalid signature in the response from the Identity Provider. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.do_login.invalid_time.app_error",
    "translation": "We received an invalid time in the response from the Identity Provider. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.do_login.parse.app_error",
    "translation": "An error occurred while parsing the response from the Identity Provider. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.do_login.validate.app_error",
    "translation": "An error occurred while validating the response from the Identity Provider. Please contact your System Administrator."
  },
  {
    "id": "ent.saml.license_disable.app_error",
    "translation": "Your license does not support SAML authentication."
  },
  {
    "id": "ent.saml.metadata.app_error",
    "translation": "An error occurred while building Service Provider Metadata."
  },
  {
    "id": "ent.saml.save_user.email_exists.saml_app_error",
    "translation": "This account does not use SAML authentication. Please sign in using email and password."
  },
  {
    "id": "ent.saml.save_user.username_exists.saml_app_error",
    "translation": "An account with that username already exists. Please contact your Administrator."
  },
  {
    "id": "ent.saml.service_disable.app_error",
    "translation": "SAML 2.0 is not configured or supported on this server."
  },
  {
    "id": "ent.user.complete_switch_with_oauth.blank_email.app_error",
    "translation": "Unable to complete SAML login with an empty email address."
  },
  {
    "id": "error",
    "translation": "Error"
  },
  {
    "id": "group_not_associated_to_synced_team",
    "translation": "Group cannot be associated to the channel until it is first associated to the parent group-synced team."
  },
  {
    "id": "groups.unsupported_syncable_type",
    "translation": "Unsupported syncable type '{{.Value}}'."
  },
  {
    "id": "import_process.worker.do_job.file_exists",
    "translation": "Unable to process import: file does not exists."
  },
  {
    "id": "import_process.worker.do_job.missing_file",
    "translation": "Unable to process import: import_file parameter is missing."
  },
  {
    "id": "import_process.worker.do_job.missing_jsonl",
    "translation": "Unable to process import: JSONL file is missing."
  },
  {
    "id": "import_process.worker.do_job.open_file",
    "translation": "Unable to process import: failed to open file."
  },
  {
    "id": "interactive_message.decode_trigger_id.base64_decode_failed",
    "translation": "Failed to decode base64 for trigger ID for interactive dialog."
  },
  {
    "id": "interactive_message.decode_trigger_id.base64_decode_failed_signature",
    "translation": "Failed to decode base64 signature of trigger ID for interactive dialog."
  },
  {
    "id": "interactive_message.decode_trigger_id.expired",
    "translation": "Trigger ID for interactive dialog is expired. Trigger IDs live for a maximum of {{.Seconds}} seconds."
  },
  {
    "id": "interactive_message.decode_trigger_id.missing_data",
    "translation": "Trigger ID missing required data for interactive dialog."
  },
  {
    "id": "interactive_message.decode_trigger_id.signature_decode_failed",
    "translation": "Failed to decode base64 signature of trigger ID for interactive dialog."
  },
  {
    "id": "interactive_message.decode_trigger_id.verify_signature_failed",
    "translation": "Signature verification failed of trigger ID for interactive dialog."
  },
  {
    "id": "interactive_message.generate_trigger_id.signing_failed",
    "translation": "Failed to sign generated trigger ID for interactive dialog."
  },
  {
    "id": "jobs.request_cancellation.status.error",
    "translation": "Could not request cancellation for job that is not in a cancelable state."
  },
  {
    "id": "jobs.set_job_error.update.error",
    "translation": "Failed to set job status to error"
  },
  {
    "id": "manaultesting.manual_test.parse.app_error",
    "translation": "Unable to parse URL."
  },
  {
    "id": "manaultesting.test_autolink.unable.app_error",
    "translation": "Unable to get channels."
  },
  {
    "id": "mattermost.bulletin.subject",
    "translation": "Mattermost Security Bulletin"
  },
  {
    "id": "mfa.activate.app_error",
    "translation": "Unable to update MFA active status for the user."
  },
  {
    "id": "mfa.activate.bad_token.app_error",
    "translation": "Invalid MFA token."
  },
  {
    "id": "mfa.deactivate.app_error",
    "translation": "Unable to update MFA active status for the user."
  },
  {
    "id": "mfa.generate_qr_code.create_code.app_error",
    "translation": "Error generating QR code."
  },
  {
    "id": "mfa.mfa_disabled.app_error",
    "translation": "Multi-factor authentication has been disabled on this server."
  },
  {
    "id": "mfa.validate_token.authenticate.app_error",
    "translation": "Invalid MFA token."
  },
  {
    "id": "migrations.system.save.app_error",
    "translation": "We encountered an error saving the system property."
  },
  {
    "id": "migrations.worker.run_advanced_permissions_phase_2_migration.invalid_progress",
    "translation": "Migration failed due to invalid progress data."
  },
  {
    "id": "migrations.worker.run_migration.unknown_key",
    "translation": "Unable to run migration job due to unknown migration key."
  },
  {
    "id": "model.access.is_valid.access_token.app_error",
    "translation": "Invalid access token."
  },
  {
    "id": "model.access.is_valid.client_id.app_error",
    "translation": "Invalid client id."
  },
  {
    "id": "model.access.is_valid.redirect_uri.app_error",
    "translation": "Invalid redirect uri."
  },
  {
    "id": "model.access.is_valid.refresh_token.app_error",
    "translation": "Invalid refresh token."
  },
  {
    "id": "model.access.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.acknowledgement.is_valid.post_id.app_error",
    "translation": "Invalid post id."
  },
  {
    "id": "model.acknowledgement.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.authorize.is_valid.auth_code.app_error",
    "translation": "Invalid authorization code."
  },
  {
    "id": "model.authorize.is_valid.client_id.app_error",
    "translation": "Invalid client id."
  },
  {
    "id": "model.authorize.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.authorize.is_valid.expires.app_error",
    "translation": "Expires in must be set."
  },
  {
    "id": "model.authorize.is_valid.redirect_uri.app_error",
    "translation": "Invalid redirect uri."
  },
  {
    "id": "model.authorize.is_valid.response_type.app_error",
    "translation": "Invalid response type."
  },
  {
    "id": "model.authorize.is_valid.scope.app_error",
    "translation": "Invalid scope."
  },
  {
    "id": "model.authorize.is_valid.state.app_error",
    "translation": "Invalid state."
  },
  {
    "id": "model.authorize.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.bot.is_valid.create_at.app_error",
    "translation": "Invalid create at."
  },
  {
    "id": "model.bot.is_valid.creator_id.app_error",
    "translation": "Invalid creator id."
  },
  {
    "id": "model.bot.is_valid.description.app_error",
    "translation": "Invalid description."
  },
  {
    "id": "model.bot.is_valid.update_at.app_error",
    "translation": "Invalid update at."
  },
  {
    "id": "model.bot.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.bot.is_valid.username.app_error",
    "translation": "Invalid username."
  },
  {
    "id": "model.channel.is_valid.1_or_more.app_error",
    "translation": "Name must be 1 or more lowercase alphanumeric character."
  },
  {
    "id": "model.channel.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.channel.is_valid.creator_id.app_error",
    "translation": "Invalid creator id."
  },
  {
    "id": "model.channel.is_valid.display_name.app_error",
    "translation": "Invalid display name."
  },
  {
    "id": "model.channel.is_valid.header.app_error",
    "translation": "Invalid header."
  },
  {
    "id": "model.channel.is_valid.id.app_error",
    "translation": "Invalid Id."
  },
  {
    "id": "model.channel.is_valid.name.app_error",
    "translation": "Channel names can't be in a hexadecimal format. Please enter a different channel name."
  },
  {
    "id": "model.channel.is_valid.purpose.app_error",
    "translation": "Invalid purpose."
  },
  {
    "id": "model.channel.is_valid.type.app_error",
    "translation": "Invalid type."
  },
  {
    "id": "model.channel.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.channel_member.is_valid.channel_id.app_error",
    "translation": "Invalid channel id."
  },
  {
    "id": "model.channel_member.is_valid.email_value.app_error",
    "translation": "Invalid email notification value."
  },
  {
    "id": "model.channel_member.is_valid.ignore_channel_mentions_value.app_error",
    "translation": "Invalid ignore channel mentions status."
  },
  {
    "id": "model.channel_member.is_valid.notify_level.app_error",
    "translation": "Invalid notify level."
  },
  {
    "id": "model.channel_member.is_valid.push_level.app_error",
    "translation": "Invalid push notification level."
  },
  {
    "id": "model.channel_member.is_valid.roles_limit.app_error",
    "translation": "Invalid channel member roles longer than {{.Limit}} characters."
  },
  {
    "id": "model.channel_member.is_valid.unread_level.app_error",
    "translation": "Invalid mark unread level."
  },
  {
    "id": "model.channel_member.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.cluster.is_valid.create_at.app_error",
    "translation": "CreateAt must be set."
  },
  {
    "id": "model.cluster.is_valid.hostname.app_error",
    "translation": "Hostname must be set."
  },
  {
    "id": "model.cluster.is_valid.id.app_error",
    "translation": "Invalid Id."
  },
  {
    "id": "model.cluster.is_valid.last_ping_at.app_error",
    "translation": "LastPingAt must be set."
  },
  {
    "id": "model.cluster.is_valid.name.app_error",
    "translation": "ClusterName must be set."
  },
  {
    "id": "model.cluster.is_valid.type.app_error",
    "translation": "Type must be set."
  },
  {
    "id": "model.command.is_valid.autocomplete_data.app_error",
    "translation": "Invalid AutocompleteData"
  },
  {
    "id": "model.command.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.command.is_valid.description.app_error",
    "translation": "Invalid description."
  },
  {
    "id": "model.command.is_valid.display_name.app_error",
    "translation": "Invalid title."
  },
  {
    "id": "model.command.is_valid.id.app_error",
    "translation": "Invalid Id."
  },
  {
    "id": "model.command.is_valid.method.app_error",
    "translation": "Invalid Method."
  },
  {
    "id": "model.command.is_valid.plugin_id.app_error",
    "translation": "Invalid plugin id."
  },
  {
    "id": "model.command.is_valid.team_id.app_error",
    "translation": "Invalid team ID."
  },
  {
    "id": "model.command.is_valid.token.app_error",
    "translation": "Invalid token."
  },
  {
    "id": "model.command.is_valid.trigger.app_error",
    "translation": "Invalid trigger."
  },
  {
    "id": "model.command.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.command.is_valid.url.app_error",
    "translation": "Invalid URL."
  },
  {
    "id": "model.command.is_valid.url_http.app_error",
    "translation": "Invalid URL. Must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.command.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.command_hook.channel_id.app_error",
    "translation": "Invalid channel id."
  },
  {
    "id": "model.command_hook.command_id.app_error",
    "translation": "Invalid command id."
  },
  {
    "id": "model.command_hook.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.command_hook.id.app_error",
    "translation": "Invalid command hook id."
  },
  {
    "id": "model.command_hook.root_id.app_error",
    "translation": "Invalid root id."
  },
  {
    "id": "model.command_hook.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.compliance.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.compliance.is_valid.desc.app_error",
    "translation": "Invalid description."
  },
  {
    "id": "model.compliance.is_valid.end_at.app_error",
    "translation": "To must be a valid time."
  },
  {
    "id": "model.compliance.is_valid.id.app_error",
    "translation": "Invalid Id."
  },
  {
    "id": "model.compliance.is_valid.start_at.app_error",
    "translation": "From must be a valid time."
  },
  {
    "id": "model.compliance.is_valid.start_end_at.app_error",
    "translation": "To must be greater than From."
  },
  {
    "id": "model.config.is_valid.allow_cookies_for_subdomains.app_error",
    "translation": "Allowing cookies for subdomains requires SiteURL to be set."
  },
  {
    "id": "model.config.is_valid.amazons3_timeout.app_error",
    "translation": "Invalid timeout value {{.Value}}. Should be a positive number."
  },
  {
    "id": "model.config.is_valid.atmos_camo_image_proxy_options.app_error",
    "translation": "Invalid RemoteImageProxyOptions for atmos/camo. Must be set to your shared key."
  },
  {
    "id": "model.config.is_valid.atmos_camo_image_proxy_url.app_error",
    "translation": "Invalid RemoteImageProxyURL for atmos/camo. Must be set to your shared key."
  },
  {
    "id": "model.config.is_valid.bleve_search.bulk_indexing_batch_size.app_error",
    "translation": "Bleve Bulk Indexing Batch Size must be at least {{.BatchSize}}."
  },
  {
    "id": "model.config.is_valid.bleve_search.enable_autocomplete.app_error",
    "translation": "Bleve EnableIndexing setting must be set to true when Bleve EnableAutocomplete is set to true"
  },
  {
    "id": "model.config.is_valid.bleve_search.enable_searching.app_error",
    "translation": "Bleve EnableIndexing setting must be set to true when Bleve EnableSearching is set to true"
  },
  {
    "id": "model.config.is_valid.bleve_search.filename.app_error",
    "translation": "Bleve IndexingDir setting must be set when Bleve EnableIndexing is set to true"
  },
  {
    "id": "model.config.is_valid.cluster_email_batching.app_error",
    "translation": "Unable to enable email batching when clustering is enabled."
  },
  {
    "id": "model.config.is_valid.collapsed_threads.app_error",
    "translation": "CollapsedThreads setting must be either disabled,default_on or default_off"
  },
  {
    "id": "model.config.is_valid.collapsed_threads.autofollow.app_error",
    "translation": "ThreadAutoFollow must be true to enable CollapsedThreads"
  },
  {
    "id": "model.config.is_valid.data_retention.deletion_job_start_time.app_error",
    "translation": "Data retention job start time must be a 24-hour time stamp in the form HH:MM."
  },
  {
    "id": "model.config.is_valid.data_retention.file_retention_days_too_low.app_error",
    "translation": "File retention must be one day or longer."
  },
  {
    "id": "model.config.is_valid.data_retention.message_retention_days_too_low.app_error",
    "translation": "Message retention must be one day or longer."
  },
  {
    "id": "model.config.is_valid.directory.app_error",
    "translation": "Invalid Local Storage Directory. Must be a non-empty string."
  },
  {
    "id": "model.config.is_valid.display.custom_url_schemes.app_error",
    "translation": "The custom URL scheme {{.Scheme}} is invalid. Custom URL schemes must start with a letter and contain only letters, numbers, plus (+), period (.) and hyphen (-)."
  },
  {
    "id": "model.config.is_valid.elastic_search.aggregate_posts_after_days.app_error",
    "translation": "Elasticsearch AggregatePostsAfterDays setting must be a number greater than or equal to 1."
  },
  {
    "id": "model.config.is_valid.elastic_search.bulk_indexing_batch_size.app_error",
    "translation": "Elasticsearch Bulk Indexing Batch Size must be at least {{.BatchSize}}."
  },
  {
    "id": "model.config.is_valid.elastic_search.connection_url.app_error",
    "translation": "Elasticsearch ConnectionUrl setting must be provided when Elasticsearch indexing is enabled."
  },
  {
    "id": "model.config.is_valid.elastic_search.enable_autocomplete.app_error",
    "translation": "Elasticsearch EnableIndexing setting must be set to true when Elasticsearch EnableAutocomplete is set to true"
  },
  {
    "id": "model.config.is_valid.elastic_search.enable_searching.app_error",
    "translation": "Elasticsearch EnableIndexing setting must be set to true when Elasticsearch EnableSearching is set to true"
  },
  {
    "id": "model.config.is_valid.elastic_search.live_indexing_batch_size.app_error",
    "translation": "Elasticsearch Live Indexing Batch Size must be at least 1."
  },
  {
    "id": "model.config.is_valid.elastic_search.posts_aggregator_job_start_time.app_error",
    "translation": "Elasticsearch PostsAggregatorJobStartTime setting must be a time in the format \"hh:mm\"."
  },
  {
    "id": "model.config.is_valid.elastic_search.request_timeout_seconds.app_error",
    "translation": "Elasticsearch Request Timeout must be at least 1 second."
  },
  {
    "id": "model.config.is_valid.email_batching_buffer_size.app_error",
    "translation": "Invalid email batching buffer size for email settings. Must be zero or a positive number."
  },
  {
    "id": "model.config.is_valid.email_batching_interval.app_error",
    "translation": "Invalid email batching interval for email settings. Must be 30 seconds or more."
  },
  {
    "id": "model.config.is_valid.email_notification_contents_type.app_error",
    "translation": "Invalid email notification contents type for email settings. Must be one of either 'full' or 'generic'."
  },
  {
    "id": "model.config.is_valid.email_security.app_error",
    "translation": "Invalid connection security for email settings. Must be '', 'TLS', or 'STARTTLS'."
  },
  {
    "id": "model.config.is_valid.encrypt_sql.app_error",
    "translation": "Invalid at rest encrypt key for SQL settings. Must be 32 chars or more."
  },
  {
    "id": "model.config.is_valid.export.directory.app_error",
    "translation": "Value for Directory should not be empty."
  },
  {
    "id": "model.config.is_valid.export.retention_days_too_low.app_error",
    "translation": "Invalid value for RetentionDays. Value should be greater than 0"
  },
  {
    "id": "model.config.is_valid.file_driver.app_error",
    "translation": "Invalid driver name for file settings. Must be 'local' or 'amazons3'."
  },
  {
    "id": "model.config.is_valid.file_salt.app_error",
    "translation": "Invalid public link salt for file settings. Must be 32 chars or more."
  },
  {
    "id": "model.config.is_valid.group_unread_channels.app_error",
    "translation": "Invalid group unread channels for service settings. Must be 'disabled', 'default_on', or 'default_off'."
  },
  {
    "id": "model.config.is_valid.image_decoder_concurrency.app_error",
    "translation": "Invalid decoder concurrency {{.Value}}. Should be a positive number or -1."
  },
  {
    "id": "model.config.is_valid.image_proxy_type.app_error",
    "translation": "Invalid image proxy type. Must be 'local' or 'atmos/camo'."
  },
  {
    "id": "model.config.is_valid.import.directory.app_error",
    "translation": "Invalid value for Directory."
  },
  {
    "id": "model.config.is_valid.import.retention_days_too_low.app_error",
    "translation": "Invalid value for RetentionDays. Value is too low."
  },
  {
    "id": "model.config.is_valid.ldap_basedn",
    "translation": "AD/LDAP field \"BaseDN\" is required."
  },
  {
    "id": "model.config.is_valid.ldap_email",
    "translation": "AD/LDAP field \"Email Attribute\" is required."
  },
  {
    "id": "model.config.is_valid.ldap_id",
    "translation": "AD/LDAP field \"ID Attribute\" is required."
  },
  {
    "id": "model.config.is_valid.ldap_login_id",
    "translation": "AD/LDAP field \"Login ID Attribute\" is required."
  },
  {
    "id": "model.config.is_valid.ldap_max_page_size.app_error",
    "translation": "Invalid max page size value."
  },
  {
    "id": "model.config.is_valid.ldap_security.app_error",
    "translation": "Invalid connection security for AD/LDAP settings. Must be '', 'TLS', or 'STARTTLS'."
  },
  {
    "id": "model.config.is_valid.ldap_server",
    "translation": "AD/LDAP field \"AD/LDAP Server\" is required."
  },
  {
    "id": "model.config.is_valid.ldap_sync_interval.app_error",
    "translation": "Invalid sync interval time. Must be at least one minute."
  },
  {
    "id": "model.config.is_valid.ldap_username",
    "translation": "AD/LDAP field \"Username Attribute\" is required."
  },
  {
    "id": "model.config.is_valid.listen_address.app_error",
    "translation": "Invalid listen address for service settings Must be set."
  },
  {
    "id": "model.config.is_valid.localization.available_locales.app_error",
    "translation": "Available Languages must contain Default Client Language."
  },
  {
    "id": "model.config.is_valid.login_attempts.app_error",
    "translation": "Invalid maximum login attempts for service settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.max_burst.app_error",
    "translation": "Maximum burst size must be greater than zero."
  },
  {
    "id": "model.config.is_valid.max_channels.app_error",
    "translation": "Invalid maximum channels per team for team settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.max_file_size.app_error",
    "translation": "Invalid max file size for file settings. Must be a whole number greater than zero."
  },
  {
    "id": "model.config.is_valid.max_notify_per_channel.app_error",
    "translation": "Invalid maximum notifications per channel for team settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.max_users.app_error",
    "translation": "Invalid maximum users per team for team settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.message_export.batch_size.app_error",
    "translation": "Message export job BatchSize must be a positive integer."
  },
  {
    "id": "model.config.is_valid.message_export.daily_runtime.app_error",
    "translation": "Message export job DailyRuntime must be a 24-hour time stamp in the form HH:MM."
  },
  {
    "id": "model.config.is_valid.message_export.enable.app_error",
    "translation": "Message export job EnableExport setting must be either true or false."
  },
  {
    "id": "model.config.is_valid.message_export.export_from.app_error",
    "translation": "Message export job ExportFromTimestamp must be a timestamp (expressed in seconds since unix epoch). Only messages sent after this timestamp will be exported."
  },
  {
    "id": "model.config.is_valid.message_export.export_type.app_error",
    "translation": "Message export job ExportFormat must be one of 'actiance', 'csv' or 'globalrelay'."
  },
  {
    "id": "model.config.is_valid.message_export.global_relay.config_missing.app_error",
    "translation": "Message export job ExportFormat is set to 'globalrelay', but GlobalRelaySettings are missing."
  },
  {
    "id": "model.config.is_valid.message_export.global_relay.customer_type.app_error",
    "translation": "Message export GlobalRelaySettings.CustomerType must be set to one of either 'A9' or 'A10'."
  },
  {
    "id": "model.config.is_valid.message_export.global_relay.email_address.app_error",
    "translation": "Message export job GlobalRelaySettings.EmailAddress must be set to a valid email address."
  },
  {
    "id": "model.config.is_valid.message_export.global_relay.smtp_password.app_error",
    "translation": "Message export job GlobalRelaySettings.SmtpPassword must be set."
  },
  {
    "id": "model.config.is_valid.message_export.global_relay.smtp_username.app_error",
    "translation": "Message export job GlobalRelaySettings.SmtpUsername must be set."
  },
  {
    "id": "model.config.is_valid.password_length.app_error",
    "translation": "Minimum password length must be a whole number greater than or equal to {{.MinLength}} and less than or equal to {{.MaxLength}}."
  },
  {
    "id": "model.config.is_valid.rate_mem.app_error",
    "translation": "Invalid memory store size for rate limit settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.rate_sec.app_error",
    "translation": "Invalid per sec for rate limit settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.read_timeout.app_error",
    "translation": "Invalid value for read timeout."
  },
  {
    "id": "model.config.is_valid.restrict_direct_message.app_error",
    "translation": "Invalid direct message restriction. Must be 'any', or 'team'."
  },
  {
    "id": "model.config.is_valid.saml_admin_attribute.app_error",
    "translation": "Invalid Admin attribute. Must be in the form 'field=value'."
  },
  {
    "id": "model.config.is_valid.saml_assertion_consumer_service_url.app_error",
    "translation": "Service Provider Login URL must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.config.is_valid.saml_canonical_algorithm.app_error",
    "translation": "Invalid Canonical Algorithm."
  },
  {
    "id": "model.config.is_valid.saml_email_attribute.app_error",
    "translation": "Invalid Email attribute. Must be set."
  },
  {
    "id": "model.config.is_valid.saml_guest_attribute.app_error",
    "translation": "Invalid Guest attribute. Must be in the form 'field=value'."
  },
  {
    "id": "model.config.is_valid.saml_idp_cert.app_error",
    "translation": "Identity Provider Public Certificate missing. Did you forget to upload it?"
  },
  {
    "id": "model.config.is_valid.saml_idp_descriptor_url.app_error",
    "translation": "Identity Provider Issuer URL must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.config.is_valid.saml_idp_url.app_error",
    "translation": "SAML SSO URL must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.config.is_valid.saml_private_key.app_error",
    "translation": "Service Provider Private Key missing. Did you forget to upload it?"
  },
  {
    "id": "model.config.is_valid.saml_public_cert.app_error",
    "translation": "Service Provider Public Certificate missing. Did you forget to upload it?"
  },
  {
    "id": "model.config.is_valid.saml_signature_algorithm.app_error",
    "translation": "Invalid Signature Algorithm."
  },
  {
    "id": "model.config.is_valid.saml_spidentifier_attribute.app_error",
    "translation": "Service Provider Identifier is required"
  },
  {
    "id": "model.config.is_valid.saml_username_attribute.app_error",
    "translation": "Invalid Username attribute. Must be set."
  },
  {
    "id": "model.config.is_valid.site_url.app_error",
    "translation": "Site URL must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.config.is_valid.site_url_email_batching.app_error",
    "translation": "Unable to enable email batching when SiteURL isn't set."
  },
  {
    "id": "model.config.is_valid.sitename_length.app_error",
    "translation": "Site name must be less than or equal to {{.MaxLength}} characters."
  },
  {
    "id": "model.config.is_valid.sql_conn_max_idle_time_milliseconds.app_error",
    "translation": "Invalid connection maximum idle time for SQL settings. Must be a non-negative number."
  },
  {
    "id": "model.config.is_valid.sql_conn_max_lifetime_milliseconds.app_error",
    "translation": "Invalid connection maximum lifetime for SQL settings. Must be a non-negative number."
  },
  {
    "id": "model.config.is_valid.sql_data_src.app_error",
    "translation": "Invalid data source for SQL settings. Must be set."
  },
  {
    "id": "model.config.is_valid.sql_driver.app_error",
    "translation": "Invalid driver name for SQL settings. Must be 'mysql' or 'postgres'."
  },
  {
    "id": "model.config.is_valid.sql_idle.app_error",
    "translation": "Invalid maximum idle connection for SQL settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.sql_max_conn.app_error",
    "translation": "Invalid maximum open connection for SQL settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.sql_query_timeout.app_error",
    "translation": "Invalid query timeout for SQL settings. Must be a positive number."
  },
  {
    "id": "model.config.is_valid.teammate_name_display.app_error",
    "translation": "Invalid teammate display. Must be 'full_name', 'nickname_full_name' or 'username'."
  },
  {
    "id": "model.config.is_valid.time_between_user_typing.app_error",
    "translation": "Time between user typing updates should not be set to less than 1000 milliseconds."
  },
  {
    "id": "model.config.is_valid.tls_cert_file_missing.app_error",
    "translation": "Invalid value for TLS certificate file - Either use LetsEncrypt or set path to existing certificate file."
  },
  {
    "id": "model.config.is_valid.tls_key_file_missing.app_error",
    "translation": "Invalid value for TLS key file - Either use LetsEncrypt or set path to existing key file."
  },
  {
    "id": "model.config.is_valid.tls_overwrite_cipher.app_error",
    "translation": "Invalid value passed for TLS overwrite cipher - Please refer to the documentation for valid values."
  },
  {
    "id": "model.config.is_valid.webserver_security.app_error",
    "translation": "Invalid value for webserver connection security."
  },
  {
    "id": "model.config.is_valid.websocket_url.app_error",
    "translation": "Websocket URL must be a valid URL and start with ws:// or wss://."
  },
  {
    "id": "model.config.is_valid.write_timeout.app_error",
    "translation": "Invalid value for write timeout."
  },
  {
    "id": "model.draft.is_valid.channel_id.app_error",
    "translation": "Invalid channel id."
  },
  {
    "id": "model.draft.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.draft.is_valid.file_ids.app_error",
    "translation": "Invalid file ids."
  },
  {
    "id": "model.draft.is_valid.msg.app_error",
    "translation": "Invalid message."
  },
  {
    "id": "model.draft.is_valid.priority.app_error",
    "translation": "Invalid priority"
  },
  {
    "id": "model.draft.is_valid.props.app_error",
    "translation": "Invalid props."
  },
  {
    "id": "model.draft.is_valid.root_id.app_error",
    "translation": "Invalid root id."
  },
  {
    "id": "model.draft.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.draft.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.emoji.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.emoji.id.app_error",
    "translation": "Invalid emoji id."
  },
  {
    "id": "model.emoji.name.app_error",
    "translation": "Name must be 1 to 64 lowercase alphanumeric characters."
  },
  {
    "id": "model.emoji.system_emoji_name.app_error",
    "translation": "Name conflicts with existing system emoji name."
  },
  {
    "id": "model.emoji.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.emoji.user_id.app_error",
    "translation": "Invalid creator id."
  },
  {
    "id": "model.file_info.get.gif.app_error",
    "translation": "Could not decode gif."
  },
  {
    "id": "model.file_info.is_valid.create_at.app_error",
    "translation": "Invalid value for create_at."
  },
  {
    "id": "model.file_info.is_valid.id.app_error",
    "translation": "Invalid value for id."
  },
  {
    "id": "model.file_info.is_valid.path.app_error",
    "translation": "Invalid value for path."
  },
  {
    "id": "model.file_info.is_valid.post_id.app_error",
    "translation": "Invalid value for post_id."
  },
  {
    "id": "model.file_info.is_valid.update_at.app_error",
    "translation": "Invalid value for update_at."
  },
  {
    "id": "model.file_info.is_valid.user_id.app_error",
    "translation": "Invalid value for user_id."
  },
  {
    "id": "model.group.create_at.app_error",
    "translation": "invalid create at property for group."
  },
  {
    "id": "model.group.description.app_error",
    "translation": "invalid description property for group."
  },
  {
    "id": "model.group.display_name.app_error",
    "translation": "invalid display name property for group."
  },
  {
    "id": "model.group.name.app_error",
    "translation": "invalid name property for group."
  },
  {
    "id": "model.group.name.invalid_chars.app_error",
    "translation": "invalid characters in the name property for group"
  },
  {
    "id": "model.group.name.invalid_length.app_error",
    "translation": "Name must be 1 to 64 lowercase alphanumeric characters."
  },
  {
    "id": "model.group.name.reserved_name.app_error",
    "translation": "group name already exists as a reserved name"
  },
  {
    "id": "model.group.remote_id.app_error",
    "translation": "invalid remote id property for group."
  },
  {
    "id": "model.group.source.app_error",
    "translation": "invalid source property for group."
  },
  {
    "id": "model.group.update_at.app_error",
    "translation": "invalid update at property for group."
  },
  {
    "id": "model.group_member.group_id.app_error",
    "translation": "invalid group id property for group member."
  },
  {
    "id": "model.group_member.user_id.app_error",
    "translation": "invalid user id property for group member."
  },
  {
    "id": "model.group_syncable.group_id.app_error",
    "translation": "invalid group id property for group syncable."
  },
  {
    "id": "model.group_syncable.syncable_id.app_error",
    "translation": "invalid syncable id for group syncable."
  },
  {
    "id": "model.guest.is_valid.channel.app_error",
    "translation": "Invalid channel."
  },
  {
    "id": "model.guest.is_valid.channels.app_error",
    "translation": "Invalid channels."
  },
  {
    "id": "model.guest.is_valid.email.app_error",
    "translation": "Invalid email."
  },
  {
    "id": "model.guest.is_valid.emails.app_error",
    "translation": "Invalid emails."
  },
  {
    "id": "model.incoming_hook.channel_id.app_error",
    "translation": "Invalid channel id."
  },
  {
    "id": "model.incoming_hook.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.incoming_hook.description.app_error",
    "translation": "Invalid description."
  },
  {
    "id": "model.incoming_hook.display_name.app_error",
    "translation": "Invalid title."
  },
  {
    "id": "model.incoming_hook.icon_url.app_error",
    "translation": "Invalid post icon."
  },
  {
    "id": "model.incoming_hook.id.app_error",
    "translation": "Invalid Id."
  },
  {
    "id": "model.incoming_hook.parse_data.app_error",
    "translation": "Unable to parse incoming data."
  },
  {
    "id": "model.incoming_hook.team_id.app_error",
    "translation": "Invalid team ID."
  },
  {
    "id": "model.incoming_hook.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.incoming_hook.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.incoming_hook.username.app_error",
    "translation": "Invalid username."
  },
  {
    "id": "model.insights.get_start_of_day_for_time_range.time_range.app_error",
    "translation": "Invalid time range."
  },
  {
    "id": "model.job.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.job.is_valid.id.app_error",
    "translation": "Invalid job Id."
  },
  {
    "id": "model.job.is_valid.status.app_error",
    "translation": "Invalid job status."
  },
  {
    "id": "model.job.is_valid.type.app_error",
    "translation": "Invalid job type."
  },
  {
    "id": "model.license_record.is_valid.create_at.app_error",
    "translation": "Invalid value for create_at when uploading a license."
  },
  {
    "id": "model.license_record.is_valid.id.app_error",
    "translation": "Invalid value for id when uploading a license."
  },
  {
    "id": "model.link_metadata.is_valid.data.app_error",
    "translation": "Link metadata data cannot be nil."
  },
  {
    "id": "model.link_metadata.is_valid.data_type.app_error",
    "translation": "Link metadata data does not match the given type."
  },
  {
    "id": "model.link_metadata.is_valid.timestamp.app_error",
    "translation": "Link metadata timestamp must be nonzero and rounded to the nearest hour."
  },
  {
    "id": "model.link_metadata.is_valid.type.app_error",
    "translation": "Invalid link metadata type."
  },
  {
    "id": "model.link_metadata.is_valid.url.app_error",
    "translation": "Link metadata URL must be set."
  },
  {
    "id": "model.member.is_valid.channel.app_error",
    "translation": "Channel name is not valid"
  },
  {
    "id": "model.member.is_valid.emails.app_error",
    "translation": "Email list is empty"
  },
  {
    "id": "model.oauth.is_valid.app_id.app_error",
    "translation": "Invalid app id."
  },
  {
    "id": "model.oauth.is_valid.callback.app_error",
    "translation": "Callback URL must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.oauth.is_valid.client_secret.app_error",
    "translation": "Invalid client secret."
  },
  {
    "id": "model.oauth.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.oauth.is_valid.creator_id.app_error",
    "translation": "Invalid creator id."
  },
  {
    "id": "model.oauth.is_valid.description.app_error",
    "translation": "Invalid description."
  },
  {
    "id": "model.oauth.is_valid.homepage.app_error",
    "translation": "Homepage must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.oauth.is_valid.icon_url.app_error",
    "translation": "Icon URL must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.oauth.is_valid.mattermost_app_id.app_error",
    "translation": "The maximum length of MattermostAppID is 32 characters."
  },
  {
    "id": "model.oauth.is_valid.name.app_error",
    "translation": "Invalid name."
  },
  {
    "id": "model.oauth.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.outgoing_hook.icon_url.app_error",
    "translation": "Invalid icon."
  },
  {
    "id": "model.outgoing_hook.is_valid.callback.app_error",
    "translation": "Invalid callback URLs."
  },
  {
    "id": "model.outgoing_hook.is_valid.channel_id.app_error",
    "translation": "Invalid channel id."
  },
  {
    "id": "model.outgoing_hook.is_valid.content_type.app_error",
    "translation": "Invalid value for content_type."
  },
  {
    "id": "model.outgoing_hook.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.outgoing_hook.is_valid.description.app_error",
    "translation": "Invalid description."
  },
  {
    "id": "model.outgoing_hook.is_valid.display_name.app_error",
    "translation": "Invalid title."
  },
  {
    "id": "model.outgoing_hook.is_valid.id.app_error",
    "translation": "Invalid Id."
  },
  {
    "id": "model.outgoing_hook.is_valid.team_id.app_error",
    "translation": "Invalid team ID."
  },
  {
    "id": "model.outgoing_hook.is_valid.token.app_error",
    "translation": "Invalid token."
  },
  {
    "id": "model.outgoing_hook.is_valid.trigger_words.app_error",
    "translation": "Invalid trigger words."
  },
  {
    "id": "model.outgoing_hook.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.outgoing_hook.is_valid.url.app_error",
    "translation": "Invalid callback URLs. Each must be a valid URL and start with http:// or https://."
  },
  {
    "id": "model.outgoing_hook.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.outgoing_hook.is_valid.words.app_error",
    "translation": "Invalid trigger words."
  },
  {
    "id": "model.outgoing_hook.username.app_error",
    "translation": "Invalid username."
  },
  {
    "id": "model.plugin_command.error.app_error",
    "translation": "An error occurred while trying to execute this command."
  },
  {
    "id": "model.plugin_command_crash.error.app_error",
    "translation": "/{{.Command}} command crashed the {{.PluginId}} plugin. Please contact your system administrator"
  },
  {
    "id": "model.plugin_command_error.error.app_error",
    "translation": "Plugin for /{{.Command}} is not working. Please contact your system administrator"
  },
  {
    "id": "model.plugin_key_value.is_valid.key.app_error",
    "translation": "Invalid key, must be more than {{.Min}} and a of maximum {{.Max}} characters long."
  },
  {
    "id": "model.plugin_key_value.is_valid.plugin_id.app_error",
    "translation": "Invalid plugin ID, must be more than {{.Min}} and a of maximum {{.Max}} characters long."
  },
  {
    "id": "model.plugin_kvset_options.is_valid.old_value.app_error",
    "translation": "Invalid old value, it shouldn't be set when the operation is not atomic."
  },
  {
    "id": "model.post.channel_notifications_disabled_in_channel.message",
    "translation": "Channel notifications are disabled in {{.ChannelName}}. The {{.Mention}} did not trigger any notifications."
  },
  {
    "id": "model.post.is_valid.channel_id.app_error",
    "translation": "Invalid channel id."
  },
  {
    "id": "model.post.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.post.is_valid.file_ids.app_error",
    "translation": "Invalid file ids. Note that uploads are limited to 10 files maximum. Please use additional posts for more files."
  },
  {
    "id": "model.post.is_valid.filenames.app_error",
    "translation": "Invalid filenames."
  },
  {
    "id": "model.post.is_valid.hashtags.app_error",
    "translation": "Invalid hashtags."
  },
  {
    "id": "model.post.is_valid.id.app_error",
    "translation": "Invalid Id."
  },
  {
    "id": "model.post.is_valid.msg.app_error",
    "translation": "Invalid message."
  },
  {
    "id": "model.post.is_valid.original_id.app_error",
    "translation": "Invalid original id."
  },
  {
    "id": "model.post.is_valid.props.app_error",
    "translation": "Invalid props."
  },
  {
    "id": "model.post.is_valid.root_id.app_error",
    "translation": "Invalid root id."
  },
  {
    "id": "model.post.is_valid.type.app_error",
    "translation": "Invalid type."
  },
  {
    "id": "model.post.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.post.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.preference.is_valid.category.app_error",
    "translation": "Invalid category."
  },
  {
    "id": "model.preference.is_valid.id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.preference.is_valid.name.app_error",
    "translation": "Invalid name."
  },
  {
    "id": "model.preference.is_valid.theme.app_error",
    "translation": "Invalid theme."
  },
  {
    "id": "model.preference.is_valid.value.app_error",
    "translation": "Value is too long."
  },
  {
    "id": "model.reaction.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.reaction.is_valid.emoji_name.app_error",
    "translation": "Invalid emoji name."
  },
  {
    "id": "model.reaction.is_valid.post_id.app_error",
    "translation": "Invalid post id."
  },
  {
    "id": "model.reaction.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.reaction.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.search_params_list.is_valid.include_deleted_channels.app_error",
    "translation": "All IncludeDeletedChannels params should have the same value."
  },
  {
    "id": "model.session.is_valid.create_at.app_error",
    "translation": "Invalid CreateAt field for session."
  },
  {
    "id": "model.session.is_valid.id.app_error",
    "translation": "Invalid Id field for session."
  },
  {
    "id": "model.session.is_valid.roles_limit.app_error",
    "translation": "Invalid session roles longer than {{.Limit}} characters."
  },
  {
    "id": "model.session.is_valid.user_id.app_error",
    "translation": "Invalid UserId field for session."
  },
  {
    "id": "model.team.is_valid.characters.app_error",
    "translation": "Name must be 2 or more lowercase alphanumeric characters."
  },
  {
    "id": "model.team.is_valid.company.app_error",
    "translation": "Invalid company name."
  },
  {
    "id": "model.team.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.team.is_valid.description.app_error",
    "translation": "Invalid description."
  },
  {
    "id": "model.team.is_valid.domains.app_error",
    "translation": "Invalid allowed domains."
  },
  {
    "id": "model.team.is_valid.email.app_error",
    "translation": "Invalid email."
  },
  {
    "id": "model.team.is_valid.id.app_error",
    "translation": "Invalid Id."
  },
  {
    "id": "model.team.is_valid.invite_id.app_error",
    "translation": "Invalid invite id."
  },
  {
    "id": "model.team.is_valid.name.app_error",
    "translation": "Invalid name."
  },
  {
    "id": "model.team.is_valid.reserved.app_error",
    "translation": "This URL is unavailable. Please try another."
  },
  {
    "id": "model.team.is_valid.type.app_error",
    "translation": "Invalid type."
  },
  {
    "id": "model.team.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.team.is_valid.url.app_error",
    "translation": "Invalid URL Identifier."
  },
  {
    "id": "model.team_member.is_valid.roles_limit.app_error",
    "translation": "Invalid team member roles longer than {{.Limit}} characters."
  },
  {
    "id": "model.team_member.is_valid.team_id.app_error",
    "translation": "Invalid team ID."
  },
  {
    "id": "model.team_member.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.token.is_valid.expiry",
    "translation": "Invalid token expiry"
  },
  {
    "id": "model.token.is_valid.size",
    "translation": "Invalid token."
  },
  {
    "id": "model.upload_session.is_valid.channel_id.app_error",
    "translation": "Invalid value for ChannelId."
  },
  {
    "id": "model.upload_session.is_valid.create_at.app_error",
    "translation": "Invalid value for CreateAt"
  },
  {
    "id": "model.upload_session.is_valid.file_offset.app_error",
    "translation": "Invalid value for FileOffset"
  },
  {
    "id": "model.upload_session.is_valid.file_size.app_error",
    "translation": "Invalid value for FileSize"
  },
  {
    "id": "model.upload_session.is_valid.filename.app_error",
    "translation": "Invalid value for Filename"
  },
  {
    "id": "model.upload_session.is_valid.id.app_error",
    "translation": "Invalid value for Id"
  },
  {
    "id": "model.upload_session.is_valid.path.app_error",
    "translation": "Invalid value for Path"
  },
  {
    "id": "model.upload_session.is_valid.type.app_error",
    "translation": "Invalid value for Type"
  },
  {
    "id": "model.upload_session.is_valid.user_id.app_error",
    "translation": "Invalid Value for UserId"
  },
  {
    "id": "model.user.is_valid.auth_data.app_error",
    "translation": "Invalid auth data."
  },
  {
    "id": "model.user.is_valid.auth_data_pwd.app_error",
    "translation": "Invalid user, password and auth data cannot both be set."
  },
  {
    "id": "model.user.is_valid.auth_data_type.app_error",
    "translation": "Invalid user, auth data must be set with auth type."
  },
  {
    "id": "model.user.is_valid.create_at.app_error",
    "translation": "Create at must be a valid time."
  },
  {
    "id": "model.user.is_valid.email.app_error",
    "translation": "Invalid email."
  },
  {
    "id": "model.user.is_valid.first_name.app_error",
    "translation": "Invalid first name."
  },
  {
    "id": "model.user.is_valid.id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.user.is_valid.last_name.app_error",
    "translation": "Invalid last name."
  },
  {
    "id": "model.user.is_valid.locale.app_error",
    "translation": "Invalid locale."
  },
  {
    "id": "model.user.is_valid.marshal.app_error",
    "translation": "Failed to encode field to JSON"
  },
  {
    "id": "model.user.is_valid.nickname.app_error",
    "translation": "Invalid nickname."
  },
  {
    "id": "model.user.is_valid.password_limit.app_error",
    "translation": "Unable to set a password over 72 characters due to the limitations of bcrypt."
  },
  {
    "id": "model.user.is_valid.position.app_error",
    "translation": "Invalid position: must not be longer than 128 characters."
  },
  {
    "id": "model.user.is_valid.pwd.app_error",
    "translation": "Your password must contain at least {{.Min}} characters."
  },
  {
    "id": "model.user.is_valid.pwd_lowercase.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one lowercase letter."
  },
  {
    "id": "model.user.is_valid.pwd_lowercase_number.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one lowercase letter and at least one number."
  },
  {
    "id": "model.user.is_valid.pwd_lowercase_number_symbol.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one lowercase letter, at least one number, and at least one symbol (e.g. \"~!@#$%^&*()\")."
  },
  {
    "id": "model.user.is_valid.pwd_lowercase_symbol.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one lowercase letter and at least one symbol (e.g. \"~!@#$%^&*()\")."
  },
  {
    "id": "model.user.is_valid.pwd_lowercase_uppercase.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one lowercase letter and at least one uppercase letter."
  },
  {
    "id": "model.user.is_valid.pwd_lowercase_uppercase_number.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one lowercase letter, at least one uppercase letter, and at least one number."
  },
  {
    "id": "model.user.is_valid.pwd_lowercase_uppercase_number_symbol.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one lowercase letter, at least one uppercase letter, at least one number, and at least one symbol (e.g. \"~!@#$%^&*()\")."
  },
  {
    "id": "model.user.is_valid.pwd_lowercase_uppercase_symbol.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one lowercase letter, at least one uppercase letter, and at least one symbol (e.g. \"~!@#$%^&*()\")."
  },
  {
    "id": "model.user.is_valid.pwd_number.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one number."
  },
  {
    "id": "model.user.is_valid.pwd_number_symbol.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one number and at least one symbol (e.g. \"~!@#$%^&*()\")."
  },
  {
    "id": "model.user.is_valid.pwd_symbol.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one symbol (e.g. \"~!@#$%^&*()\")."
  },
  {
    "id": "model.user.is_valid.pwd_uppercase.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one uppercase letter."
  },
  {
    "id": "model.user.is_valid.pwd_uppercase_number.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one uppercase letter and at least one number."
  },
  {
    "id": "model.user.is_valid.pwd_uppercase_number_symbol.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one uppercase letter, at least one number, and at least one symbol (e.g. \"~!@#$%^&*()\")."
  },
  {
    "id": "model.user.is_valid.pwd_uppercase_symbol.app_error",
    "translation": "Your password must contain at least {{.Min}} characters made up of at least one uppercase letter and at least one symbol (e.g. \"~!@#$%^&*()\")."
  },
  {
    "id": "model.user.is_valid.roles_limit.app_error",
    "translation": "Invalid user roles longer than {{.Limit}} characters."
  },
  {
    "id": "model.user.is_valid.update_at.app_error",
    "translation": "Update at must be a valid time."
  },
  {
    "id": "model.user.is_valid.username.app_error",
    "translation": "Username must begin with a letter, and contain between 3 to 22 lowercase characters made up of numbers, letters, and the symbols \".\", \"-\", and \"_\"."
  },
  {
    "id": "model.user_access_token.is_valid.description.app_error",
    "translation": "Invalid description, must be 255 or less characters."
  },
  {
    "id": "model.user_access_token.is_valid.id.app_error",
    "translation": "Invalid value for id."
  },
  {
    "id": "model.user_access_token.is_valid.token.app_error",
    "translation": "Invalid access token."
  },
  {
    "id": "model.user_access_token.is_valid.user_id.app_error",
    "translation": "Invalid user id."
  },
  {
    "id": "model.utils.decode_json.app_error",
    "translation": "could not decode."
  },
  {
    "id": "model.websocket_client.connect_fail.app_error",
    "translation": "Unable to connect to the WebSocket server."
  },
  {
    "id": "oauth.gitlab.tos.error",
    "translation": "GitLab's Terms of Service have updated. Please go to {{.URL}} to accept them and then try logging into Mattermost again."
  },
  {
    "id": "plugin.api.get_users_in_channel",
    "translation": "Unable to get the users, invalid sorting criteria."
  },
  {
    "id": "plugin.api.update_user_status.bad_status",
    "translation": "Unable to set the user status. Unknown user status."
  },
  {
    "id": "plugin_api.bot_cant_create_bot",
    "translation": "Bot user cannot create bot user."
  },
  {
    "id": "plugin_api.get_file_link.disabled.app_error",
    "translation": "Public links have been disabled."
  },
  {
    "id": "plugin_api.get_file_link.no_post.app_error",
    "translation": "Unable to get public link for file. File must be attached to a post that can be read."
  },
  {
    "id": "plugin_api.send_mail.missing_htmlbody",
    "translation": "Missing HTML Body."
  },
  {
    "id": "plugin_api.send_mail.missing_subject",
    "translation": "Missing email subject."
  },
  {
    "id": "plugin_api.send_mail.missing_to",
    "translation": "Missing TO address."
  },
  {
    "id": "searchengine.bleve.disabled.error",
    "translation": "Error purging Bleve indexes: engine is disabled"
  },
  {
    "id": "sharedchannel.cannot_deliver_post",
    "translation": "One or more posts could not be delivered to remote site {{.Remote}} because it is offline. The post(s) will be delivered when the site is online."
  },
  {
    "id": "sharedchannel.permalink.not_found",
    "translation": "This post contains permalinks to other channels which may not be visible to users in other sites."
  },
  {
    "id": "store.sql_bot.get.missing.app_error",
    "translation": "Bot does not exist."
  },
  {
    "id": "store.sql_channel.get.existing.app_error",
    "translation": "Unable to find the existing channel."
  },
  {
    "id": "store.sql_channel.save.archived_channel.app_error",
    "translation": "You can not modify an archived channel."
  },
  {
    "id": "store.sql_channel.save.direct_channel.app_error",
    "translation": "Use SaveDirectChannel to create a direct channel."
  },
  {
    "id": "store.sql_channel.save_channel.existing.app_error",
    "translation": "Must call update for existing channel."
  },
  {
    "id": "store.sql_channel.save_channel.exists.app_error",
    "translation": "A channel with that name already exists on the same team."
  },
  {
    "id": "store.sql_channel.save_channel.limit.app_error",
    "translation": "You've reached the limit of the number of allowed channels."
  },
  {
    "id": "store.sql_channel.save_direct_channel.not_direct.app_error",
    "translation": "Not a direct channel attempted to be created with SaveDirectChannel."
  },
  {
    "id": "store.sql_command.get.missing.app_error",
    "translation": "Command does not exist."
  },
  {
    "id": "store.sql_command.save.get.app_error",
    "translation": "Unable to get the command."
  },
  {
    "id": "store.sql_command.update.missing.app_error",
    "translation": "Command does not exist."
  },
  {
    "id": "store.sql_file_info.search.disabled",
    "translation": "Searching files has been disabled on this server. Please contact your System Administrator."
  },
  {
    "id": "store.sql_post.search.disabled",
    "translation": "Searching has been disabled on this server. Please contact your System Administrator."
  },
  {
    "id": "store.sql_team.save_member.exists.app_error",
    "translation": "A team member with that ID already exists."
  },
  {
    "id": "store.sql_user.get_for_login.app_error",
    "translation": "Unable to find an existing account matching your credentials. This team may require an invite from the team owner to join."
  },
  {
    "id": "system.message.name",
    "translation": "System"
  },
  {
    "id": "web.command_webhook.command.app_error",
    "translation": "Couldn't find the command."
  },
  {
    "id": "web.command_webhook.parse.app_error",
    "translation": "Unable to parse incoming data."
  },
  {
    "id": "web.error.unsupported_browser.browser_get_latest.chrome",
    "translation": "Get the latest Chrome browser"
  },
  {
    "id": "web.error.unsupported_browser.browser_get_latest.firefox",
    "translation": "Get the latest Firefox browser"
  },
  {
    "id": "web.error.unsupported_browser.browser_get_latest.safari",
    "translation": "Get the latest Safari browser"
  },
  {
    "id": "web.error.unsupported_browser.browser_title.chrome",
    "translation": "Google Chrome"
  },
  {
    "id": "web.error.unsupported_browser.browser_title.edge",
    "translation": "Microsoft Edge"
  },
  {
    "id": "web.error.unsupported_browser.browser_title.firefox",
    "translation": "Firefox"
  },
  {
    "id": "web.error.unsupported_browser.browser_title.safari",
    "translation": "Safari"
  },
  {
    "id": "web.error.unsupported_browser.download",
    "translation": "Download the App"
  },
  {
    "id": "web.error.unsupported_browser.download_app_or_upgrade_browser",
    "translation": "Download the Mattermost app or use a supported browser for a better experience."
  },
  {
    "id": "web.error.unsupported_browser.download_the_app",
    "translation": "Download the App"
  },
  {
    "id": "web.error.unsupported_browser.install_guide.mac",
    "translation": "Install Guide"
  },
  {
    "id": "web.error.unsupported_browser.install_guide.windows",
    "translation": "Install Guide"
  },
  {
    "id": "web.error.unsupported_browser.learn_more",
    "translation": "Learn more about supported browsers."
  },
  {
    "id": "web.error.unsupported_browser.min_browser_version.chrome",
    "translation": "Version 110+"
  },
  {
    "id": "web.error.unsupported_browser.min_browser_version.edge",
    "translation": "Version 110+"
  },
  {
    "id": "web.error.unsupported_browser.min_browser_version.firefox",
    "translation": "Version 102+"
  },
  {
    "id": "web.error.unsupported_browser.min_browser_version.safari",
    "translation": "Version 16.2+"
  },
  {
    "id": "web.error.unsupported_browser.min_os_version.mac",
    "translation": "macOS 11+"
  },
  {
    "id": "web.error.unsupported_browser.min_os_version.windows",
    "translation": "Windows 10+"
  },
  {
    "id": "web.error.unsupported_browser.no_longer_support",
    "translation": "This browser is no longer supported by Mattermost"
  },
  {
    "id": "web.error.unsupported_browser.no_longer_support_version",
    "translation": "This version of your browser is no longer supported by Mattermost"
  },
  {
    "id": "web.error.unsupported_browser.open_system_browser.edge",
    "translation": "Open Edge"
  },
  {
    "id": "web.error.unsupported_browser.system_browser_make_default",
    "translation": "Make default"
  },
  {
    "id": "web.error.unsupported_browser.system_browser_or",
    "translation": "or"
  },
  {
    "id": "web.get_access_token.internal_saving.app_error",
    "translation": "Unable to update the user access data."
  },
  {
    "id": "web.incoming_webhook.channel.app_error",
    "translation": "Couldn't find the channel."
  },
  {
    "id": "web.incoming_webhook.channel_locked.app_error",
    "translation": "This webhook is not permitted to post to the requested channel."
  },
  {
    "id": "web.incoming_webhook.disabled.app_error",
    "translation": "Incoming webhooks have been disabled by the system admin."
  },
  {
    "id": "web.incoming_webhook.invalid.app_error",
    "translation": "Invalid webhook."
  },
  {
    "id": "web.incoming_webhook.parse.app_error",
    "translation": "Unable to parse incoming data."
  },
  {
    "id": "web.incoming_webhook.permissions.app_error",
    "translation": "Inappropriate channel permissions."
  },
  {
    "id": "web.incoming_webhook.split_props_length.app_error",
    "translation": "Unable to split webhook props into {{.Max}} character parts."
  },
  {
    "id": "web.incoming_webhook.text.app_error",
    "translation": "No text specified."
  },
  {
    "id": "web.incoming_webhook.user.app_error",
    "translation": "Couldn't find the user."
  },
  {
    "id": "worktemplate.category.companywide",
    "translation": "Company - Wide"
  },
  {
    "id": "worktemplate.category.devops",
    "translation": "Dev Ops"
  },
  {
    "id": "worktemplate.category.leadership",
    "translation": "Leadership"
  },
  {
    "id": "worktemplate.category.product_teams",
    "translation": "Product Teams"
  },
  {
    "id": "worktemplate.companywide.create_project.board",
    "translation": "Plan a Roadmap using this Project Board and collaborate on topic in the channel created with this template."
  },
  {
    "id": "worktemplate.companywide.create_project.channel",
    "translation": "Plan a Roadmap using this Project Board and collaborate on topic in the channel created with this template."
  },
  {
    "id": "worktemplate.companywide.create_project.integration",
    "translation": "Plan a Roadmap using this Project Board and collaborate on topic in the channel created with this template."
  },
  {
    "id": "worktemplate.companywide.goals_and_okrs.board",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.companywide.goals_and_okrs.channel",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.companywide.goals_and_okrs.integration",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.devops.incident_resolution.description.board",
    "translation": "When everything is going wrong, having a repeatable process is the key to making sure everything is made right as quickly as possible. This Project combines everything Mattermost offers to ensure the fires are put out and stakeholders informed along the way."
  },
  {
    "id": "worktemplate.devops.incident_resolution.description.channel",
    "translation": "When everything is going wrong, having a repeatable process is the key to making sure everything is made right as quickly as possible. This Project combines everything Mattermost offers to ensure the fires are put out and stakeholders informed along the way."
  },
  {
    "id": "worktemplate.devops.incident_resolution.description.playbook",
    "translation": "When everything is going wrong, having a repeatable process is the key to making sure everything is made right as quickly as possible. This Project combines everything Mattermost offers to ensure the fires are put out and stakeholders informed along the way."
  },
  {
    "id": "worktemplate.devops.product_release.board",
    "translation": "Don’t miss a step during a product release with this Project. Assign tasks from the Playbook checklist and hit milestones with the Board. Use Channels to keep everyone on the same page."
  },
  {
    "id": "worktemplate.devops.product_release.channel",
    "translation": "Don’t miss a step during a product release with this Project. Assign tasks from the Playbook checklist and hit milestones with the Board. Use Channels to keep everyone on the same page."
  },
  {
    "id": "worktemplate.devops.product_release.playbook",
    "translation": "Don’t miss a step during a product release with this Project. Assign tasks from the Playbook checklist and hit milestones with the Board. Use Channels to keep everyone on the same page."
  },
  {
    "id": "worktemplate.leadership.goals_and_okrs.board",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.leadership.goals_and_okrs.channel",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.leadership.goals_and_okrs.integration",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.product_teams.bug_bash.board",
    "translation": "Get organized and bash all the bugs with  this project! Build momentum and measure progress using included Playbook, Board, and Channel."
  },
  {
    "id": "worktemplate.product_teams.bug_bash.channel",
    "translation": "Get organized and bash all the bugs with  this project! Build momentum and measure progress using included Playbook, Board, and Channel."
  },
  {
    "id": "worktemplate.product_teams.bug_bash.integration",
    "translation": "Get organized and bash all the bugs with  this project! Build momentum and measure progress using included Playbook, Board, and Channel."
  },
  {
    "id": "worktemplate.product_teams.bug_bash.playbook",
    "translation": "Get organized and bash all the bugs with  this project! Build momentum and measure progress using included Playbook, Board, and Channel."
  },
  {
    "id": "worktemplate.product_teams.feature_release.description.board",
    "translation": "Use our Meeting Agenda board template for recurring meetings like standup and our Project Tasks board to manage the progress of tasks along the way."
  },
  {
    "id": "worktemplate.product_teams.feature_release.description.channel",
    "translation": "Chat with your team in a Feature Release channel that connects easily with your boards, playbooks and app bots."
  },
  {
    "id": "worktemplate.product_teams.feature_release.description.integration",
    "translation": "Increase productivity in your channel by integrating a Jira bot and Github bot. These will be downloaded for you."
  },
  {
    "id": "worktemplate.product_teams.feature_release.description.playbook",
    "translation": "Create transparent workflows across development teams to ensure your feature development process is seamless."
  },
  {
    "id": "worktemplate.product_teams.goals_and_okrs.board",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.product_teams.goals_and_okrs.channel",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.product_teams.goals_and_okrs.integration",
    "translation": "Clear focus is essential to team success and with this Project you can document the team’s goals and OKR’s as well as post updates in the dedicated channel."
  },
  {
    "id": "worktemplate.product_teams.product_roadmap.board",
    "translation": "Description of why the board(s) are needed"
  },
  {
    "id": "worktemplate.product_teams.product_roadmap.channel",
    "translation": "Description of why the channel(s) are needed"
  },
  {
    "id": "worktemplate.product_teams.sprint_planning.board",
    "translation": "Use a Project to make sprint planning a breeze. The channel keeps the conversation and questions focused. The sprint plan keeps everyone on task for the week and the Retrospective board brings the team together to continuously improve."
  },
  {
    "id": "worktemplate.product_teams.sprint_planning.channel",
    "translation": "Use a Project to make sprint planning a breeze. The channel keeps the conversation and questions focused. The sprint plan keeps everyone on task for the week and the Retrospective board brings the team together to continuously improve."
  },
  {
    "id": "worktemplate.product_teams.sprint_planning.integration",
    "translation": "Use a Project to make sprint planning a breeze. The channel keeps the conversation and questions focused. The sprint plan keeps everyone on task for the week and the Retrospective board brings the team together to continuously improve."
  }
]
