CINXE.COM
Help Center
<!DOCTYPE html> <html lang="en-US"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="pinterest" content="nopin" /> <meta name="pinterest" content="nohover" /> <meta name="3778517eb4810dfb5d143ed8f1b359b3b5a82923" content="0f56257c3db4a222e91b11bc6871c4df2e263b28" /> <link rel="apple-touch-icon" sizes="57x57" href="/img/org.10/favicons/apple-icon-57x57.png"> <link rel="apple-touch-icon" sizes="60x60" href="/img/org.10/favicons/apple-icon-60x60.png"> <link rel="apple-touch-icon" sizes="72x72" href="/img/org.10/favicons/apple-icon-72x72.png"> <link rel="apple-touch-icon" sizes="76x76" href="/img/org.10/favicons/apple-icon-76x76.png"> <link rel="apple-touch-icon" sizes="114x114" href="/img/org.10/favicons/apple-icon-114x114.png"> <link rel="apple-touch-icon" sizes="120x120" href="/img/org.10/favicons/apple-icon-120x120.png"> <link rel="apple-touch-icon" sizes="144x144" href="/img/org.10/favicons/apple-icon-144x144.png"> <link rel="apple-touch-icon" sizes="152x152" href="/img/org.10/favicons/apple-icon-152x152.png"> <link rel="apple-touch-icon" sizes="180x180" href="/img/org.10/favicons/apple-icon-180x180.png"> <link rel="icon" type="image/png" sizes="192x192" href="/img/org.10/favicons/android-icon-192x192.png"> <link rel="icon" type="image/png" sizes="32x32" href="/img/org.10/favicons/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="96x96" href="/img/org.10/favicons/favicon-96x96.png"> <link rel="icon" type="image/png" sizes="16x16" href="/img/org.10/favicons/favicon-16x16.png"> <link rel="manifest" href="/img/org.10/favicons/manifest.json"> <meta name="msapplication-TileColor" content="#ffffff"> <meta name="msapplication-TileImage" content="/ms-icon-144x144.png"> <script> /* stubs */ const hapticsImpactHeavy = async () => { }; const hapticsImpactMedium = async () => { }; const hapticsImpactLight = async () => { }; const hapticsVibrate = async () => { }; const hapticsSelectionStart = async () => { }; const hapticsSelectionChanged = async () => { }; const hapticsSelectionEnd = async () => { }; </script> <script> function setPullToRefresh() {} function gotoURL(inurl) { window.location.href = inurl; return; } function contentLoaded(isHTMX, f, caller = "") { console.log("contentLoaded: " + isHTMX + " " + caller); if (isHTMX == true) { document.body.addEventListener('htmx:afterSettle', f, {once: true}); } else { if (document.readyState !== 'loading') { console.log('document is already ready, just execute code here'); f(); } else { console.log('document was not ready, place code here'); document.addEventListener('DOMContentLoaded', f, {once: true}); } } } function HideAppSidebarOnKeyboard() { console.log("In HideAppSidebarOnKeyboard"); } // stub function logError(data, url, linenumber) { console.log(data) return; } var pushSubToken; var ignoreErrors = false; var lastError = ""; window.onerror = function(errorMessage, errorUrl, errorLine, errorColumn, errorObj) { let column; let stack; if (console && console.log) { console.log("msg:", errorMessage); console.log("url:", errorUrl); console.log("line:", errorLine); if (errorColumn !== undefined && errorObj != null) { console.log("column:", errorColumn); column = errorColumn; } if (errorObj !== undefined && errorObj != null) { console.log("stack:", errorObj.stack); stack = errorObj.stack; } console.log("client_id:", "web.web08.4076019.1740503468034678545"); console.log("last_error:", lastError); console.log("stack:", stack); } if (errorUrl == "" || errorUrl === null) { errorUrl = window.location.href; } if (errorMessage.includes("SecurityError:") == true) { ignoreErrors = true; } if (ignoreErrors == true) { console.log("cookies, disabled, ignoring"); lastError = errorMessage; return; } jQuery.ajax({ type: 'POST', url: '/jsclienterror', data: { msg: errorMessage, url: errorUrl, line: errorLine, column: column, stack: stack, last_error: lastError, client_id: "web.web08.4076019.1740503468034678545" }, success: function() { if (console && console.log) { console.log('JS error report successful.'); } lastError = errorMessage; }, error: function() { if (console && console.error) { console.error('JS error report submission failed!'); } lastError = errorMessage; } }); return true; } </script> <script src="/tinymce-5.10.9/tinymce.min.js"></script> <script src="/js/browser-image-compression-2.0.2.min.js"></script> <link href="/css/application-ddb8b9131d6cc3df6479ea15af05e501.css" rel="stylesheet" id="groupsio-css"> <script src="/js/application-9b2c27b802a13063cf8a712fe566f004.js" id="groupsio-js"></script> <script src="/js/run_prettify.js"></script> <title>Help Center</title> <style> .scrollable { height: calc(100vh - 75px); /* Adjust this value according to your needs */ overflow-y: scroll; } .bs-docs-sidenav { margin-top: 20px; margin-bottom: 20px; } /* All levels of nav */ .bs-docs-sidebar .nav > li > a { display: block; padding: 4px 20px; font-size: 13px; font-weight: 500; color: #767676; } .bs-docs-sidebar .nav > li > a:hover, .bs-docs-sidebar .nav > li > a:focus { padding-left: 19px; color: #563d7c; text-decoration: none; background-color: transparent; border-left: 1px solid #563d7c; } .bs-docs-sidebar .nav > .active > a, .bs-docs-sidebar .nav > .active:hover > a, .bs-docs-sidebar .nav > .active:focus > a { padding-left: 18px; font-weight: bold; color: #563d7c; background-color: transparent; border-left: 2px solid #563d7c; } /* Nav: second level (shown on .active) */ .bs-docs-sidebar .nav .nav { padding-bottom: 10px; } .bs-docs-sidebar .nav .nav > li > a { padding-top: 1px; padding-bottom: 1px; padding-left: 30px; font-size: 12px; font-weight: normal; } .bs-docs-sidebar .nav .nav > li > a:hover, .bs-docs-sidebar .nav .nav > li > a:focus { padding-left: 29px; } .bs-docs-sidebar .nav .nav > .active > a, .bs-docs-sidebar .nav .nav > .active:hover > a, .bs-docs-sidebar .nav .nav > .active:focus > a { padding-left: 28px; font-weight: 500; } .examples { color: #4c555a;; } .page-header { padding-bottom: 0px !important; margin: 40px 0 20px; border-bottom: 0px; font-size:24px; } a[aria-expanded=true] .fa-caret-right { display: none; } a[aria-expanded=false] .fa-caret-down { display: none; } </style> <script> htmx.config.scrollBehavior = "instant"; htmx.config.historyCacheSize = 0; htmx.config.defaultSettleDelay = 0; console.log("FULL PAGE LOAD"); </script> </head> <body id="body" class="" hx-headers='{"Accept-Version": "57e190f165098182b3664311c44a7ad185e99634"}' hx-ext="preload" hx-boost="false"> <script> if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) { document.body.classList.add('dark-mode'); } </script> <div class="navbar navbar-head navbar-fixed-top" role="navigation" id="headerbar"> <div class="container-fluid" style="padding-left:0px;"> <a href="https://lists.cncf.io" class="navbar-left" hx-boost="false" hx-disinherit="*"> <img src="https://lists.cncf.io/img/org.10/mainlogo.png?cachebust" height="50" alt="Groups.io"> </a> <ul class="nav navbar-nav pull-right visible-xs" style="margin-top:5px;margin-bottom:5px;"> <li> <a href="#" data-toggle="modal" data-target="#mobileAccount"> <i class="fa-fw fa fa-bars fa-lg"></i> </a> </li> </ul> <ul class="nav navbar-nav pull-right hidden-xs"> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <i class="fa-fw fa-regular fa-globe"></i> EN <b class="caret"></b> </a> <ul class="dropdown-menu"> <li> <a href="https://lists.cncf.io/unsetlang"> EN </a> </li> <li> <a href="https://lists.cncf.io/setlang/de"> DE </a> </li> <li> <a href="https://lists.cncf.io/setlang/es"> ES </a> </li> <li> <a href="https://lists.cncf.io/setlang/fr"> FR </a> </li> <li> <a href="https://lists.cncf.io/setlang/it"> IT </a> </li> <li> <a href="https://lists.cncf.io/setlang/pt"> PT </a> </li> <li> <a href="https://lists.cncf.io/setlang/uk"> UK </a> </li> </ul> </li> <li> <a href="https://lists.cncf.io/helpcenter" target="_blank"> Help </a> </li> <li> <a href="https://lists.cncf.io/login" hx-boost="false" hx-disinherit="*"> <i class="fa fa-sign-in-alt"></i> Log In </a> </li> </ul> </div> </div> <div class="modal fade" id="mobileAccount" role="dialog"> <div class="modal-dialog" style="margin-top:50px;"> <div class="modal-content"> <div class="modal-body"> <ul class="list-group noborderlist"> <li class="noborderitem list-group-item"> <a href="https://lists.cncf.io/login" hx-boost="false" hx-disinherit="*"> <i class="fa fa-sign-in-alt"></i> Log In </a> </li> <li class="noborderitem list-group-item"> <a href="https://lists.cncf.io/helpcenter" target="_blank"> <i class="fa-fw fa fa-question-circle"></i> Help </a> </li> <li class="dropdown noborderitem list-group-item"> <a href="#" class="dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <i class="fa-fw fa-regular fa-globe"></i> EN <b class="caret"></b> </a> <ul class="dropdown-menu"> <li> <a href="https://lists.cncf.io/unsetlang"> EN </a> </li> <li> <a href="https://lists.cncf.io/setlang/de"> DE </a> </li> <li> <a href="https://lists.cncf.io/setlang/es"> ES </a> </li> <li> <a href="https://lists.cncf.io/setlang/fr"> FR </a> </li> <li> <a href="https://lists.cncf.io/setlang/it"> IT </a> </li> <li> <a href="https://lists.cncf.io/setlang/pt"> PT </a> </li> <li> <a href="https://lists.cncf.io/setlang/uk"> UK </a> </li> </ul> </li> </ul> </div> </div> </div> </div> <script> var groupnavigatorData = [ ]; </script> <!-- Modal Dialog for Autocomplete --> <div class="modal fade" id="groupnavigatorModal" tabindex="-1" role="dialog" aria-labelledby="modalLabel" aria-hidden="true"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-body"> <input type="text" class="form-control" id="groupnavigatorInput" placeholder="Go to group..." style="margin-bottom:10px"> <div id="groupnavigatorContainer" class="autocompleteResults" style="max-height:250px; overflow-y: auto;"></div> <div class="text-center" style="margin-top:10px; font-size:12px;"><i class="fa-sharp fa-arrow-up-arrow-down"></i> to navigate <i class="fa-sharp fa-arrow-turn-down-left"></i> to use <strong>esc</strong> to dismiss</div> </div> </div> </div> </div> <script> // Keep track of the currently selected index var selectedIndex = -1; // Function to highlight the matched substring function highlightSubstring(str, substring) { var index = str.toLowerCase().indexOf(substring.toLowerCase()); if (index !== -1) { var before = str.substring(0, index); var middle = str.substring(index, index + substring.length); var after = str.substring(index + substring.length); return before + '<span class="autocomplete-highlight">' + middle + '</span>' + after; } return str; } // Function to highlight the selected item and ensure it is visible in the scrollable list function highlightSelectedItem(modalName) { var listContainer = document.getElementById(modalName + 'Container'); var items = document.getElementsByClassName(modalName + '-list-item'); Array.from(items).forEach(function(item, idx) { item.className = idx === selectedIndex ? modalName + '-list-item autocomplete-list-item btn-primary no-hover' : modalName + '-list-item autocomplete-list-item no-hover'; // Apply btn-primary class to the selected item }); if (items.length > 0 && selectedIndex >= 0) { var selectedItem = items[selectedIndex]; var containerTop = listContainer.scrollTop; var containerBottom = containerTop + listContainer.clientHeight; var itemTop = selectedItem.offsetTop; var itemBottom = itemTop + selectedItem.offsetHeight; const fudge = 59; if (selectedIndex > 0 && itemTop > containerBottom) { // If there are items below the selected item and the selected item is not fully visible, scroll down listContainer.scrollTop = itemTop - listContainer.clientHeight + items[selectedIndex - 1].offsetHeight; } else if (selectedIndex < items.length - 1 && (itemTop - fudge) < containerTop) { // If there are items above the selected item and the selected item is not fully visible, scroll up listContainer.scrollTop = itemTop - fudge - items[selectedIndex + 1].offsetHeight; } } } // function to populate the list based on the input function populateList(modalName, data) { var input = document.getElementById(modalName+'Input').value; var listContainer = document.getElementById(modalName+'Container'); listContainer.innerHTML = ''; data.forEach(function(item) { if (item.name.toLowerCase().includes(input.toLowerCase())) { var div = document.createElement('div'); div.innerHTML = highlightSubstring(item.name, input); div.className = modalName+'-list-item autocomplete-list-item no-hover'; // Apply no-hover class div.addEventListener('click', function() { // Navigate to the specified URL when a list item is clicked window.location.href = item.url; }); div.addEventListener('mousemove', function() { // Remove no-hover class from all items when the mouse is moved over any item console.log("mouse move"); var items = document.getElementsByClassName(modalName+'-list-item'); Array.from(items).forEach(function(item) { item.classList.remove('no-hover'); }); }); listContainer.appendChild(div); } }); highlightSelectedItem(modalName); } function InitAutocomplete(modalName, data) { // Focus the input field when the modal is shown and populate the list $('#' + modalName + 'Modal').on('shown.bs.modal', function () { $('#' + modalName + 'Input').focus().val(''); populateList(modalName, data); selectedIndex = 0; highlightSelectedItem(modalName); }); // Event listener for input field typing document.getElementById(modalName + 'Input').addEventListener('input', function() { populateList(modalName, data); selectedIndex = 0; }); // Event listener for arrow keys and enter key document.getElementById(modalName + 'Input').addEventListener('keydown', function(event) { var items = document.getElementsByClassName(modalName + '-list-item'); if (event.key === 'ArrowDown') { event.preventDefault(); if (selectedIndex < items.length - 1) selectedIndex++; highlightSelectedItem(modalName); } else if (event.key === 'ArrowUp') { event.preventDefault(); if (selectedIndex > 0) selectedIndex--; highlightSelectedItem(modalName); } else if (event.key === 'Enter' && selectedIndex >= 0 && selectedIndex < items.length) { event.preventDefault(); items[selectedIndex].click(); } }); } function showAutocompleteModal(modalName) { $('#' + modalName + 'Modal').modal('show'); selectedIndex = -1; } </script> <div id="content" class="container-fluid"> <script> InitAutocomplete("groupnavigator", groupnavigatorData); document.body.addEventListener("showReloadPageDialog", function(evt) { console.log("Forced reload"); location.reload(); }); function ShowBackButton(label) { var logoElement = document.getElementById("logo"); if (logoElement) { html = ` <span style="color:#fff;margin-top:14px;margin-left:12px;float:left !important; height:36px;"> <a onclick="goBack()" style="color:#fff"> <i class="fa-fw fa-solid fa-chevron-left fa-lg"></i> </a></span>`; if (label != "") { html += `<div style="position:absolute;left:50%;transform:translateX(-50%);text-align:center;color:#ecf0f1;margin-top:5px;"><h4>` + label + `</h4></div>`; } logoElement.innerHTML = html; } } function HideBackButton() { var logoElement = document.getElementById("logo"); if (logoElement) { logoElement.innerHTML = ` <a href="https://lists.cncf.io" class="navbar-left"> <img src="https://lists.cncf.io/img/org.10/mainlogo.png?cachebust" height="50" alt="Groups.io"> </a>`; } } function goBack() { history.back(); } // submitEvent acts like .submit(), except it is compatible with the app, by using events instead. function submitEvent(ele) { console.log("in submitEvent"); if (ele.startsWith('#')) { ele = ele.slice(1); } document.getElementById(ele).submit(); return; /* const theEvent = new CustomEvent('submit', { bubbles: true, cancelable: true }); if (typeof ele === 'string' || ele instanceof String) { if (ele.startsWith("#") == true) { ele = ele.slice(1); } if (document.getElementById(ele).dispatchEvent(theEvent) == true) { // if not cancelled, do normal submit console.log("calling submit"); document.getElementById(ele).submit(); } return; } // assume ele is the element if (ele.dispatchEvent(theEvent) == true) { // if not cancelled, do normal submit console.log("calling submit"); ele.submit(); } */ } // gioDestroy is a convenience function for destroy callbacks function gioDestroy(eventCB) { let internalGioDestroy = function(evt) { // do not activate on infinite scroll events if (evt.detail.target !== undefined && evt.detail.target.id != "maincontent-refresh") { console.log("Ignoring infinite scroll event"); return; } console.log("Calling destroy callback"); eventCB(evt); } document.body.addEventListener("htmx:beforeSwap", internalGioDestroy, {once: true}); document.body.addEventListener("htmx:historyCacheMiss", internalGioDestroy, {once: true}); } var drawerCloseFunc = function(evt) { console.log("in drawerCloseFunc"); // Find all elements with the class 'drawer' var drawers = document.querySelectorAll('.drawer'); // Iterate over each element and call closeDrawer() on each drawers.forEach(function(obj) { drawerObj.closeDrawer(obj); }); $('.modal').modal('hide'); } document.body.addEventListener('htmx:beforeSwap', drawerCloseFunc); document.body.addEventListener('htmx:historyCacheMiss', drawerCloseFunc); var keydownFunc = function(event) { var tagName = event.target.tagName.toLowerCase(); if (tagName === 'input' || tagName === 'textarea' || event.target.isContentEditable) { if (event.key === 'Escape') { event.target.blur(); } return; } // check if the viewimages viewer is up let element = document.getElementById('overlay'); if (element && element.classList.contains('visible')) { return; } console.log("HERE: " + event.key + " " + event.ctrlKey + " " + event.shiftKey + " " + event.metaKey); if (event.ctrlKey && event.shiftKey && (event.key === '?' || event.key === '/')) { event.preventDefault(); // Prevent the default action // Show the modal dialog for keyboard shortcuts $('#shortcutModal').modal('show'); return; } $('#shortcutModal').modal('hide'); if (event.key.toLowerCase() === 'g') { // For Windows and Linux if (event.ctrlKey) { event.preventDefault(); showAutocompleteModal("groupnavigator"); return; } } // Check if the pressed key is '/' if ((event.key === 'f' || event.key === 'F') && event.shiftKey) { if (navigator.platform.toUpperCase().indexOf('MAC') >= 0) { if (event.metaKey) { event.preventDefault(); // Prevent the default action // Focus on the search box let box = document.getElementById('searchbox') if (box != null) { document.getElementById('searchbox').focus(); } } } else { // For Windows and Linux if (event.ctrlKey) { event.preventDefault(); // Prevent the default action // Focus on the search box let box = document.getElementById('searchbox') if (box != null) { document.getElementById('searchbox').focus(); } } } } } document.addEventListener('keydown', keydownFunc); var removeDrawerCloseFunc = function(evt) { document.body.removeEventListener('htmx:beforeSwap', drawerCloseFunc); document.body.removeEventListener('htmx:historyCacheMiss', drawerCloseFunc); document.removeEventListener('keydown', keydownFunc); } document.body.addEventListener("htmx:historyCacheMiss", removeDrawerCloseFunc, {once: true}); </script> <!-- Modal Dialog for Keyboard Shortcuts --> <div class="modal fade" id="shortcutModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <h4 class="modal-title" id="myModalLabel">Keyboard Shortcuts</h4> </div> <div class="modal-body"> <div class="row"> <div class="col-xs-3 text-right"><strong>ctrl</strong> + <strong>shift</strong> + <strong>?</strong> :</div> <div class="col-xs-9" style="margin-left: -23px;">Show all keyboard shortcuts</div> </div> <div class="row"> <div class="col-xs-3 text-right"><strong>ctrl</strong> + <strong>g</strong> :</div> <div class="col-xs-9" style="margin-left: -23px;">Navigate to a group</div> </div> <div class="row"> <div class="col-xs-3 text-right"><strong class="ctrlmeta">ctrl</strong> + <strong>shift</strong> + <strong>f</strong> :</div> <div class="col-xs-9" style="margin-left: -23px;">Find</div> </div> <div class="row"> <div class="col-xs-3 text-right"><strong class="ctrlmeta">ctrl</strong> + <strong>/</strong> :</div> <div class="col-xs-9" style="margin-left: -23px;">Quick actions</div> </div> </div> <div class="text-center" style="margin-top:10px; margin-bottom:10px; font-size:12px;"><strong>esc</strong> to dismiss</div> </div> </div> </div> <div id="alertdiv"></div> <div class="noticetemplate template"> <div class="alert alert-success alert-dismissible" role="alert"> <button type="button" class="close" data-dismiss="alert" aria-label="Close"> <span aria-hidden="true"> × </span> </button> <span class="flashmsg"></span> </div> </div> <div class="alerttemplate template"> <div class="alert alert-danger alert-dismissible" role="alert"> <button type="button" class="close" data-dismiss="alert" aria-label="Close"> <span aria-hidden="true"> × </span> </button> <span class="flashmsg"></span> </div> </div> <div class="alertnoclosetemplate template"> <div class="alert alert-danger" role="alert"> <span class="flashmsg"></span> </div> </div> <script> function dismiss() { console.log("dismiss"); $.get( "/dismissalert"); } var $alerttemplate = $(".alerttemplate"); var $alertnoclosetemplate = $(".alertnoclosetemplate"); var $noticetemplate = $(".noticetemplate"); function createAlert(msg, isError, autoClose, noClose) { if (isError == false) { $newPanel = $noticetemplate.clone(); } else { if (noClose) { $newPanel = $alertnoclosetemplate.clone(); } else { $newPanel = $alerttemplate.clone(); } } $newPanel.find(".flashmsg").html(msg); if (autoClose == true) { $("#alertdiv").append($newPanel.fadeTo(2000, 500).slideUp(500, function(){ $newPanel.slideUp(500); $newPanel.remove(); })); } else { $("#alertdiv").append($newPanel.fadeIn()); } return $newPanel; } </script> <div class="row"> <div class="col-xs-2 scrollable bs-docs-sidebar"> <ul id="sidebar" class="nav nav-stacked"> <li class="toggleBtnList"> <a id="linkgroup-member-faq" data-toggle="collapse" href="#collapsegroup-member-faq" onclick="javascript:loadSection('group-member-faq', '')" aria-expanded="false" aria-controls="collapsegroup-member-faq"> <table> <tr> <td valign="top"> <i class="fa fa-fw fa-caret-down"></i> <i class="fa fa-fw fa-caret-right"></i> </td> <td> Group member FAQ </td> </tr> </table> </a> <ul class="nav collapse" id="collapsegroup-member-faq" style="padding-left:15px"> <li> <a id="linkgroup-member-faq_q-i-never-received-a-confirmation-email" href="javascript:loadSection('group-member-faq', 'q-i-never-received-a-confirmation-email')"> Q: I never received a confirmation email from Groups.io. What should I do? </a> </li> <li> <a id="linkgroup-member-faq_q-i-am-not-receiving-email-messages" href="javascript:loadSection('group-member-faq', 'q-i-am-not-receiving-email-messages')"> Q: I am not receiving email messages from a group I joined. What should I do? </a> </li> <li> <a id="linkgroup-member-faq_q-i-got-a-message-that-i" href="javascript:loadSection('group-member-faq', 'q-i-got-a-message-that-i')"> Q: I got a message that I was removed from a group because of reported spam. What does this message mean, and what should I do? </a> </li> <li> <a id="linkgroup-member-faq_q-i-got-a-message-that-my" href="javascript:loadSection('group-member-faq', 'q-i-got-a-message-that-my')"> Q: I got a message that my Groups.io account is bouncing. What does this message mean, and what should I do? </a> </li> <li> <a id="linkgroup-member-faq_q-why-are-some-people-s-email" href="javascript:loadSection('group-member-faq', 'q-why-are-some-people-s-email')"> Q: Why are some people’s email addresses changed to be “via Groups.io”? </a> </li> <li> <a id="linkgroup-member-faq_q-why-do-i-get-a-spoofing" href="javascript:loadSection('group-member-faq', 'q-why-do-i-get-a-spoofing')"> Q: Why do I get a spoofing warning on my email messages? </a> </li> <li> <a id="linkgroup-member-faq_q-i-belong-to-a-group-but" href="javascript:loadSection('group-member-faq', 'q-i-belong-to-a-group-but')"> Q: I belong to a group, but I cannot find any content on the group’s website. What should I do? </a> </li> <li> <a id="linkgroup-member-faq_q-how-do-i-change-my-email" href="javascript:loadSection('group-member-faq', 'q-how-do-i-change-my-email')"> Q: How do I change my email address? </a> </li> <li> <a id="linkgroup-member-faq_q-can-i-add-another-email-address" href="javascript:loadSection('group-member-faq', 'q-can-i-add-another-email-address')"> Q: Can I add another email address to my Groups.io account? </a> </li> <li> <a id="linkgroup-member-faq_q-how-do-i-set-a-password" href="javascript:loadSection('group-member-faq', 'q-how-do-i-set-a-password')"> Q: How do I set a password or change my password? </a> </li> <li> <a id="linkgroup-member-faq_q-how-do-i-set-up-a" href="javascript:loadSection('group-member-faq', 'q-how-do-i-set-up-a')"> Q: How do I set up a signature for a group I belong to? </a> </li> <li> <a id="linkgroup-member-faq_q-i-enabled-push-notifications-in-my" href="javascript:loadSection('group-member-faq', 'q-i-enabled-push-notifications-in-my')"> Q: I enabled push notifications in my Groups.io account, but I am not receiving any notifications. What should I do? </a> </li> <li> <a id="linkgroup-member-faq_q-how-do-i-delete-my-groups" href="javascript:loadSection('group-member-faq', 'q-how-do-i-delete-my-groups')"> Q: How do I delete my Groups.io account? </a> </li> </ul> </li> <li class="toggleBtnList"> <a id="linkgroup-owner-moderator-faq" data-toggle="collapse" href="#collapsegroup-owner-moderator-faq" onclick="javascript:loadSection('group-owner-moderator-faq', '')" aria-expanded="false" aria-controls="collapsegroup-owner-moderator-faq"> <table> <tr> <td valign="top"> <i class="fa fa-fw fa-caret-down"></i> <i class="fa fa-fw fa-caret-right"></i> </td> <td> Group owner/moderator FAQ </td> </tr> </table> </a> <ul class="nav collapse" id="collapsegroup-owner-moderator-faq" style="padding-left:15px"> <li> <a id="linkgroup-owner-moderator-faq_q-i-cannot-access-the-admin-functions" href="javascript:loadSection('group-owner-moderator-faq', 'q-i-cannot-access-the-admin-functions')"> Q: I cannot access the Admin functions in my group. Why? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-can-i-screen-prospective-members-who" href="javascript:loadSection('group-owner-moderator-faq', 'q-can-i-screen-prospective-members-who')"> Q: Can I screen prospective members who want to join my group? How? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-why-is-the-number-of-members" href="javascript:loadSection('group-owner-moderator-faq', 'q-why-is-the-number-of-members')"> Q: Why is the number of members shown on my group’s home page different from the total shown in my group’s member list? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-how-do-i-change-the-cover" href="javascript:loadSection('group-owner-moderator-faq', 'q-how-do-i-change-the-cover')"> Q: How do I change the cover photo/image for my group? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-how-do-i-invite-people-to" href="javascript:loadSection('group-owner-moderator-faq', 'q-how-do-i-invite-people-to')"> Q: How do I invite people to join my group? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-how-do-i-add-moderators-to" href="javascript:loadSection('group-owner-moderator-faq', 'q-how-do-i-add-moderators-to')"> Q: How do I add moderators to my group? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-what-is-counted-towards-the-storage" href="javascript:loadSection('group-owner-moderator-faq', 'q-what-is-counted-towards-the-storage')"> Q: What is counted towards the storage limit for my group? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-how-do-i-download-my-group" href="javascript:loadSection('group-owner-moderator-faq', 'q-how-do-i-download-my-group')"> Q: How do I download my group’s member list and message archive? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-how-do-i-delete-my-group" href="javascript:loadSection('group-owner-moderator-faq', 'q-how-do-i-delete-my-group')"> Q: How do I delete my group? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-the-sole-owner-of-a-group" href="javascript:loadSection('group-owner-moderator-faq', 'q-the-sole-owner-of-a-group')"> Q: The sole owner of a group I belong to has died or become unavailable. What can we do? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-if-i-downgrade-my-group-from" href="javascript:loadSection('group-owner-moderator-faq', 'q-if-i-downgrade-my-group-from')"> Q: If I downgrade my group from Premium to Basic, what features does it lose? </a> </li> <li> <a id="linkgroup-owner-moderator-faq_q-what-types-of-groups-are-not" href="javascript:loadSection('group-owner-moderator-faq', 'q-what-types-of-groups-are-not')"> Q: What types of groups are NOT permitted by Groups.io? </a> </li> </ul> </li> <li class="toggleBtnList"> <a id="linkrevision-history" href="javascript:loadSection('revision-history', '')"> <table> <tr> <td> <i class="fa fa-fw fa-caret-left" style="visibility:hidden;"></i> </td> <td> Revision history </td> </tr> </table> </a> </li> <li> <a href="#"> Updated: January 10, 2023 </a> </li> </ul> <p></p><br /> </div> <div class="scrollable col-xs-10" styleXX="-moz-box-sizing:border-box;-webkit-box-sizing: border-box;box-sizing: border-box;height: 100%;"> <ol class="breadcrumb"> <li> <a href="/helpcenter"> <i class="far fa-info-circle"></i> Help Center </a> </li> <li class="active"> <a href="/helpcenter/faq"> <i class="far fa-question-circle"></i> FAQ </a> </li> </ol> <div class="row"> <div class="col-xs-10" id="fred"> <h2> Welcome to the Groups.io FAQ </h2> <ul> <li> View the FAQ as a <a href="/helpcenter/faq?single=true"> single page </a> . Then you can use the Find feature in your web browser to search the entire FAQ. </li> <li> View a <a href="/hc/faq/Groups.io_FAQ.pdf"> PDF version </a> of the FAQ. Then you can use the Find feature in your PDF reader to search the entire file. </li> </ul> <p> <strong> Tip: </strong> In most browsers and PDF readers, you can press Ctrl+F on Windows or Command+F on Mac to access the Find feature. </p> <p> Updated: January 10, 2023 </p> <h3>Contents</h3><ul><li><strong><a href="/helpcenter/faq/1/group-member-faq">Group member FAQ</strong></a><ul><li><a href="/helpcenter/faq/1/group-member-faq/q-i-never-received-a-confirmation-email">Q: I never received a confirmation email from Groups.io. What should I do?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-i-am-not-receiving-email-messages">Q: I am not receiving email messages from a group I joined. What should I do?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-i-got-a-message-that-i">Q: I got a message that I was removed from a group because of reported spam. What does this message mean, and what should I do?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-i-got-a-message-that-my">Q: I got a message that my Groups.io account is bouncing. What does this message mean, and what should I do?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-why-are-some-people-s-email">Q: Why are some people’s email addresses changed to be “via Groups.io”?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-why-do-i-get-a-spoofing">Q: Why do I get a spoofing warning on my email messages?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-i-belong-to-a-group-but">Q: I belong to a group, but I cannot find any content on the group’s website. What should I do?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-how-do-i-change-my-email">Q: How do I change my email address?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-can-i-add-another-email-address">Q: Can I add another email address to my Groups.io account?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-how-do-i-set-a-password">Q: How do I set a password or change my password?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-how-do-i-set-up-a">Q: How do I set up a signature for a group I belong to?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-i-enabled-push-notifications-in-my">Q: I enabled push notifications in my Groups.io account, but I am not receiving any notifications. What should I do?</a></li><li><a href="/helpcenter/faq/1/group-member-faq/q-how-do-i-delete-my-groups">Q: How do I delete my Groups.io account?</a></li></ul></li><li><strong><a href="/helpcenter/faq/1/group-owner-moderator-faq">Group owner/moderator FAQ</strong></a><ul><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-i-cannot-access-the-admin-functions">Q: I cannot access the Admin functions in my group. Why?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-can-i-screen-prospective-members-who">Q: Can I screen prospective members who want to join my group? How?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-why-is-the-number-of-members">Q: Why is the number of members shown on my group’s home page different from the total shown in my group’s member list?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-how-do-i-change-the-cover">Q: How do I change the cover photo/image for my group?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-how-do-i-invite-people-to">Q: How do I invite people to join my group?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-how-do-i-add-moderators-to">Q: How do I add moderators to my group?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-what-is-counted-towards-the-storage">Q: What is counted towards the storage limit for my group?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-how-do-i-download-my-group">Q: How do I download my group’s member list and message archive?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-how-do-i-delete-my-group">Q: How do I delete my group?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-the-sole-owner-of-a-group">Q: The sole owner of a group I belong to has died or become unavailable. What can we do?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-if-i-downgrade-my-group-from">Q: If I downgrade my group from Premium to Basic, what features does it lose?</a></li><li><a href="/helpcenter/faq/1/group-owner-moderator-faq/q-what-types-of-groups-are-not">Q: What types of groups are NOT permitted by Groups.io?</a></li></ul></li><li><strong><a href="/helpcenter/faq/1/revision-history">Revision history</strong></a></li></ul> </div> </div> </div> </div> <script> contentLoaded(false, function() { $('[data-toggle="tooltip"]').tooltip() }); function loadSection(section, subsection) { url = "/helpcenter/faq/1/" + section; if (subsection != "") { url += "/" + subsection; } console.log("URL=", url); window.history.pushState('page2', 'Help Center', url); $.ajax({ url: url + "?json=1", dataType: "json" }).success(function(data) { //console.log("got"+data.Content); if (subsection == "" && data.Subsections) { raw = "<h2>" + data.Name + "</h2><h3>In this section:</h3><ul>"; for (i = 0; i < data.Subsections.length; i++) { raw += "<li><a href=\"/helpcenter/faq/1/" + section + "/" + data.Subsections[i].SubsectionName + "\">" + data.Subsections[i].Name + "</a></li>"; } raw += "</ul>" $('#fred').html(raw); $('[data-toggle="tooltip"]').tooltip() } else { content = "<h2>" + data.Name + "</h2>" + data.Content; if (data.Subsections) { for (i = 0; i < data.Subsections.length; i++) { content += "<h3>" + data.Subsections[i].Name + "</h3>" + data.Subsections[i].Content; } } $('#fred').html(content); $('[data-toggle="tooltip"]').tooltip() } }); } </script> </div> </body> </html>