AI-Powered Workflows for Your Clients

Join our exclusive partner program, designed for Google Workspace resellers, system integrators, agencies, and consultants. Elevate your clients’ operations with cutting-edge AI agents that bring unmatched transparency, intelligence, and automation—ushering them into the Future of Work.
🤝 Become a Gmelius Partner
Already a Gmelius Partner? Sign in

Expand your services and offering.

You have customers on Google Workspace?
You'll love solving their operational problems thanks to Gmelius.
Shared inboxes and Gmail labels
Automation rules and AI Agents
Shared email drafts and comments
Email mining, analytics and reporting
Email sequences and templates

Drive new business

Refer Gmelius to your clients and prospects to earn attractive commissions that grow your own business.
25% lifetime commission per deal
Dedicated training and support
Exclusive early access to new products and features
Free Gmelius demo account
Partner portal

Apply to our Partner Program

Our program is open to Google Workspace resellers, system integrators, agencies and consultants with leads or clients using Google Workspace and Gmail.

Start your application by completing the form. All information will be kept confidential and does not commit your company to joining the program. Please allow up to a week for a Gmelius representative to follow up.

Reclaim 1 hour per day managing emails.

var user = {}; var params = new URLSearchParams(window.location.search); var path = window.location.pathname; const userPictures = document.getElementsByClassName('user-picture'); const signupCTAs = document.getElementsByClassName('get-started'); const bookDemoCTAs = document.querySelectorAll('[href*="request-demo"]'); const isSignedIn = document.getElementsByClassName('is-user-state'); const isSignedInInline = document.getElementsByClassName('is-state-user-inline'); const upgradeCTAs = document.getElementsByClassName('button-pricing-plan'); const educationCTAs = document.getElementsByClassName('gmelius-university'); const plan = params.get('plan'); const role = params.get('role'); // Select buttons using provided CSS classes const btnsTrial = document.querySelectorAll('.button-trial'); const btnsUpgrade = document.querySelectorAll('.button-upgrade'); const btnsAccount = document.querySelectorAll('.button-account'); const btnsDowngrade = document.querySelectorAll('.button-downgrade'); const btnsUpgradeUser = document.querySelectorAll('.button-upgrade-user'); // Conditional logic based on URL params if (plan && role) { document.querySelector('.pricing-title').textContent = 'Our Plans & Pricing'; document.querySelector('.pricing-subtext').textContent = 'Contact sales@gmelius.com in case of questions'; history.replaceState(null, '', window.location.pathname); // Hide Trial Buttons btnsTrial.forEach(btn => { if (btn) btn.style.display = 'none'; }); // Display appropriate buttons based on params if (role === 'user') { switch (plan) { case 'enterprise': btnsDowngrade.forEach(btn => { btn.style.display = 'flex'; }); document.querySelector('.button-enterprise').style.display = 'none'; btnsAccount[2].style.display = 'flex' btnsAccount[2].href = 'https://app.gmelius.com/account' break; case 'pro': btnsDowngrade[0].style.display = 'flex' btnsAccount[1].style.display = 'flex' btnsAccount[1].href = 'https://app.gmelius.com/account' break; case 'growth': btnsUpgradeUser[1].style.display = 'flex' btnsAccount[0].style.display = 'flex' btnsAccount[0].href = 'https://app.gmelius.com/account' break; default: btnsUpgradeUser.forEach(btn => { btn.style.display = 'flex'; }); } } else if (role !== 'user') { switch (plan) { case 'enterprise': btnsDowngrade.forEach(btn => { btn.style.display = 'flex'; }); document.querySelector('.button-enterprise').style.display = 'none'; btnsAccount[2].style.display = 'flex' break; case 'pro': btnsDowngrade[0].style.display = 'flex' btnsAccount[1].style.display = 'flex' break; case 'growth': btnsUpgrade[1].style.display = 'flex' btnsAccount[0].style.display = 'flex' break; default: btnsUpgrade.forEach(btn => { btn.style.display = 'flex'; }); } } } try { window.onload = function() { document.getElementById('dashboard-frame-app').src = 'https://app.gmelius.com/websiteProxy.html'; }; window.addEventListener('message', function (e) { if (e.origin === 'https://app.gmelius.com') { user = e.data; window.localStorage.setItem('user', JSON.stringify(user)); } }); if (!Object.keys(user).length && window.localStorage.getItem('user')) { user = JSON.parse(window.localStorage.getItem('user')); } if (!Object.keys(user).length && (params.has('ref') && (params.get('ref') === 'dashboard' || params.get('ref') === 'extension'))) { user.picture = 'https://cloud.gmelius.com/public/logos/gmelius-32.png'; window.localStorage.setItem('user', JSON.stringify(user)); } if (Object.keys(user).length) { if (userPictures.length > 0) { Array.from(userPictures).forEach(function(picture) { if (user.email) { picture.src = user.picture || `https://avatar.oxro.io/avatar.svg?name=${user.email.toUpperCase()}&length=1`; } else { picture.src = 'https://cloud.gmelius.com/public/images/avatar-astro.png' } picture.onerror = function () { this.style.display = 'none'; } }); } if (signupCTAs.length > 0) { Array.from(signupCTAs).forEach(function(cta) { //cta.style.display = 'none'; }); } if (isSignedIn.length > 0) { Array.from(isSignedIn).forEach(function(cta) { //cta.style.display = 'none'; }); } if (isSignedInInline.length > 0) { Array.from(isSignedInInline).forEach(function(cta) { //cta.style.display = 'inline'; }); } if (educationCTAs.length > 0) { document.body.classList.add('hasAnnouncement'); Array.from(educationCTAs).forEach(function(cta) { cta.style.display = 'block'; }); } if (upgradeCTAs.length > 0) { Array.from(upgradeCTAs).forEach(function(cta) { cta.classList.add('upgrade'); }); } } } catch (e) {} // Beamer var beamer_config = { product_id : 'CIJpSEcT13796', //DO NOT CHANGE: This is your product code on Beamer selector : '.beamer-widget', /*Optional: Id, class (or list of both) of the HTML element to use as a button*/ //display : 'right', /*Optional: Choose how to display the Beamer panel in your site*/ top: 10, /*Optional: Top position offset for the notification bubble*/ //right: -10, /*Optional: Right position offset for the notification bubble*/ //bottom: 0, /*Optional: Bottom position offset for the notification bubble*/ left: 30, /*Optional: Left position offset for the notification bubble*/ //button_position: 'bottom-right', /*Optional: Position for the notification button that shows up when the selector parameter is not set*/ //icon: 'bell_lines', /*Optional: Alternative icon to display in the notification button*/ //language: 'EN', /*Optional: Bring news in the language of choice*/ //filter: 'admin', /*Optional : Bring the news for a certain role as well as all the public news*/ //lazy: false, /*Optional : true if you want to manually start the script by calling Beamer.init()*/ //alert : true, /*Optional : false if you don't want to initialize the selector*/ //delay : 0, /*Optional : Delay (in milliseconds) before initializing Beamer*/ //embed : false, /*Optional : true if you want to embed and display the feed inside the element selected by the 'selector' parameter*/ //mobile : true, /*Optional : false if you don't want to initialize Beamer on mobile devices*/ //notification_prompt : 'sidebar', /*Optional : override the method selected to prompt users for permission to receive web push notifications*/ //callback : your_callback_function, /*Optional : Beamer will call this function, with the number of new features as a parameter, after the initialization*/ //onclick : your_onclick_function(url, openInNewWindow), /*Optional : Beamer will call this function when a user clicks on a link in one of your posts*/ //onopen : your_onopen_function, /*Optional : Beamer will call this function when opening the panel*/ //onclose : your_onclose_function, /*Optional : Beamer will call this function when closing the panel*/ //---------------Visitor Information--------------- //user_firstname : "firstname", /*Optional : Input your user firstname for better statistics*/ //user_lastname : "lastname", /*Optional : Input your user lastname for better statistics*/ user_email : user.email ? user.email : null, /*Optional : Input your user email for better statistics*/ //user_id : "user_id" /*Optional : Input your user ID for better statistics*/ }; document.addEventListener('DOMContentLoaded', function () { if (user && user.email) { $crisp.push(["set", "user:email", [user.email]]); } const talkToSalesBtn = document.getElementById('talk-to-sales'); const tryProBtn = document.getElementById('try-pro'); const downgradeToGrowthBtn = document.getElementById('downgrade-growth'); const downgradeToProBtn = document.getElementById('downgrade-pro'); // Wait until Crisp is fully loaded function waitForCrisp(callback, attempts = 0) { if (window.$crisp && window.$crisp.is && window.CRISP_WEBSITE_ID) { callback(); } else if (attempts < 10) { // retry up to 10 times (5 sec) setTimeout(() => waitForCrisp(callback, attempts + 1), 500); } else { console.error('Crisp SDK failed to load.'); } } function sendVisitorMessage(messageText) { $crisp.push(["set", "message:text", [messageText]]); } // Open Crisp chat and display messages function openChatAndShowMessages(text) { if (!$crisp.is("chat:visible")) { $crisp.push(["do", "chat:show"]); } if (!$crisp.is("chat:opened")) { $crisp.push(["do", "chat:open"]); } // Small delay ensures Crisp DOM readiness setTimeout(() => { sendVisitorMessage(text); }, 500); } // Button click handler talkToSalesBtn.addEventListener('click', function (event) { event.preventDefault(); waitForCrisp(() => openChatAndShowMessages("Hi, I'd like to talk to your Enterprise Sales Team. My company name is:")); }); tryProBtn.addEventListener('click', function (event) { event.preventDefault(); waitForCrisp(() => openChatAndShowMessages("Hi, I'd like to start a trial of Gmelius Pro. My email address is:")); }); downgradeToProBtn.addEventListener('click', function (event) { event.preventDefault(); waitForCrisp(() => openChatAndShowMessages("Hi, I'd like to downgrade my subscription to Gmelius Pro.")); }); downgradeToGrowthBtn.addEventListener('click', function (event) { event.preventDefault(); waitForCrisp(() => openChatAndShowMessages("Hi, I'd like to downgrade my subscription to Gmelius Growth.")); }); btnsUpgradeUser.forEach(button => { button.addEventListener('click', event => { event.preventDefault(); waitForCrisp(() => openChatAndShowMessages("Hi, I'd like to upgrade my team's subscription.")); }); }); }); -->