CINXE.COM
AppSheet Terms of Service - AppSheet
<!doctype html> <html lang="en" class="newLayout "> <head><script type="text/javascript" src="/_static/js/bundle-playback.js?v=HxkREWBo" charset="utf-8"></script> <script type="text/javascript" src="/_static/js/wombat.js?v=txqj7nKC" charset="utf-8"></script> <script>window.RufflePlayer=window.RufflePlayer||{};window.RufflePlayer.config={"autoplay":"on","unmuteOverlay":"hidden"};</script> <script type="text/javascript" src="/_static/js/ruffle/ruffle.js"></script> <script type="text/javascript"> __wm.init("https://web.archive.org/web"); __wm.wombat("https://www.appsheet.com/home/terms","20210813082504","https://web.archive.org/","web","/_static/", "1628843104"); </script> <link rel="stylesheet" type="text/css" href="/_static/css/banner-styles.css?v=S1zqJCYt" /> <link rel="stylesheet" type="text/css" href="/_static/css/iconochive.css?v=3PDvdIFv" /> <!-- End Wayback Rewrite JS Include --> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="apple-itunes-app" content="app-id=732548900"/> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>AppSheet Terms of Service - AppSheet</title> <meta name="description" content="Learn how to make mobile apps for iPhone, Android, and web."> <meta name="author" content="AppSheet"/> <meta name="google-site-verification" content="97jAB4aUdRiLxKkCyBUhJnpDEWTQAJ6tOzUKFwE1p8w"/> <meta name="google-site-verification" content="qPkt9TxKqz8fFiALwco4ddvCCsGNrgRwTuE1aCBxG1k"/> <meta property="og:title" content="AppSheet : mobile apps from spreadsheets : AppSheet Terms of Service"/> <meta property="og:image" content="/web/20210813082504im_/https://www.appsheet.com/home/terms"/> <meta property="og:site_name" content="AppSheet"/> <link rel="canonical" href="https://web.archive.org/web/20210813082504/https://www.appsheet.com/Home/Terms"/> <link rel="shortcut icon" href="/web/20210813082504im_/https://www.appsheet.com/Content/img/Favicon-Material.png" sizes="16x16"/> <link rel="shortcut icon" href="/web/20210813082504im_/https://www.appsheet.com/Content/img/Favicon-Material.png" sizes="32X32"/> <link href="/web/20210813082504cs_/https://www.appsheet.com/content/build/web-main-material.css?v='20210810'.1" rel="stylesheet" type="text/css" media="screen, print"/> <link href="https://web.archive.org/web/20210813082504cs_/https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700,700i" rel="stylesheet"> <link rel="stylesheet" href="/web/20210813082504cs_/https://www.appsheet.com/Content/css/instantsearch-1.12.1.min.css"> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/Content/scripts/web/navbar.js"></script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/content/build/logging-main.js?v='20210810'.1"></script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw=="> window.JeeneeAnalyticsNewUser = false; <!-- Google Tag Manager --> (function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' }); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://web.archive.org/web/20210813082504/https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); var k = d.createElement(s); k.src = 'https://web.archive.org/web/20210813082504/https://www.googleoptimize.com/optimize.js?id=OPT-P4M9XQT'; f = d.getElementsByTagName(s)[0]; f.parentNode.insertBefore(k, f); })(window, document, 'script', 'dataLayer', 'GTM-N6QM4V3'); <!-- End Google Tag Manager --> </script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" type="text/javascript"> (function (f, b) { if (!b.__SV) { var a, e, i, g; window.mixpanel = b; b._i = []; b.init = function (a, e, d) { function f(b, h) { var a = h.split("."); 2 == a.length && (b = b[a[0]], h = a[1]); b[h] = function () { b.push([h].concat(Array.prototype.slice.call(arguments, 0))) } } var c = b; "undefined" !== typeof d ? c = b[d] = [] : d = "mixpanel"; c.people = c.people || []; c.toString = function (b) { var a = "mixpanel"; "mixpanel" !== d && (a += "." + d); b || (a += " (stub)"); return a }; c.people.toString = function () { return c.toString(1) + ".people (stub)" }; i = "disable track track_pageview track_links track_forms register register_once alias unregister identify name_tag set_config people.set people.set_once people.increment people.append people.track_charge people.clear_charges people.delete_user".split(" "); for (g = 0; g < i.length; g++) f(c, i[g]); b._i.push([a, e, d]) }; b.__SV = 1.2; a = f.createElement("script"); a.type = "text/javascript"; a.async = !0; a.src = "/Content/scripts/_shared/external/mixpanel-2.2.min.js"; e = f.getElementsByTagName("script")[0]; e.parentNode.insertBefore(a, e) } })(document, window.mixpanel || []); // Code to manage mixpanel initialization. Calling mixpanel.init is // async and takes a 'loaded' callback argument. The code below creates a window // global object that allows other parts of the code to register callbacks. Callers // should use window.mixpanelLoader.onLoad(cb). Note: this is only implemented for // the AppSheet Web mixpanel instance. TODO: make it work for both mixpanel projects. window.mixpanelLoader = (function () { var callbacks = [] var isLoaded = false return { // The method that callers should use onLoad: function (cb) { if (isLoaded) { cb() } else { callbacks.push(cb) } }, // The callback that is passed to mixpanel.init loaded: function () { isLoaded = true callbacks.forEach(function (cb) { cb() }) } } })() mixpanel.init('f3f157a3585cb23361a9ace882b7611e', { loaded: window.mixpanelLoader.loaded }); // Makes the AppSheet bucket accessible via mixpanel.appSheet.track(...) mixpanel.init('6460a5084cbe5c139b2cd70d800f9fa0', {}, "appSheet"); // Needed to access the web bucket in a special case for app signups converting app creators mixpanel.init('f3f157a3585cb23361a9ace882b7611e', {}, "web"); </script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" type="text/javascript"> // http://stackoverflow.com/questions/25851345/tracking-utm-campaign-params-with-mixpanel-as-people-properties function getQueryStrings() { var assoc = {}; var decode = function (s) { return decodeURIComponent(s.replace(/\+/g, " ")); }; var queryString = location.search.substring(1); var keyValues = queryString.split('&'); for (var i in keyValues) { var key = keyValues[i].split('='); if (key.length > 1) { assoc[decode(key[0])] = decode(key[1]); } } return assoc; } function addDefaultProperties(properties) { if (properties == null) { properties = {}; } var linkFrom = ''; properties.linkedFrom = linkFrom; properties.user = ''; return properties } function setUTMPropertiesOnUser() { var params = getQueryStrings(); for (var i in params) { var match = /utm_[a-z]+/ if (match.test(i)) { var value = params[i]; mixpanel.people.set_once(i, value); } } } /** * Checks whether all of the UTM fields are empty in local storage. */ function hasNoSetUtmFields() { return ( window.localStorage.getItem('JeeneeNewUserCampaign') == null && window.localStorage.getItem('JeeneeNewUserSource') == null && window.localStorage.getItem('JeeneeNewUserMedium') == null && window.localStorage.getItem('JeeneeNewUserContent') == null && window.localStorage.getItem('JeeneeNewUserTerm') == null ); } /** * Checks for UTM fields in URL params. */ function hasUtmFieldsUrlparams(queryParams) { return ( queryParams.hasOwnProperty('utm_campaign') || queryParams.hasOwnProperty('utm_source') || queryParams.hasOwnProperty('utm_medium') || queryParams.hasOwnProperty('utm_content') || queryParams.hasOwnProperty('utm_term') ); } /** * Sets UTM fields to direct/default values in local storage * when none are passed in via the URL upon user's first visit. * utm_content and utm_term are left undefined for direct and organic traffic. */ function setDefaultUtmPropertiesOnUserLocalStorage() { window.localStorage.setItem('JeeneeNewUserCampaign', 'direct'); window.localStorage.setItem('JeeneeNewUserSource', 'direct'); window.localStorage.setItem('JeeneeNewUserMedium', 'none'); } /** * Sets UTM values in local storage. Only process UTM parameters within the URL when * all of UTM fields in local storage are undefined. This ensures first touch attribution. * utm_campaign, utm_source, and utm_medium are required fields for every campaign, CTA, etc. * Seeing any of these fields as undefined is an indication that there are invalid UTM parameters in the URL. * utm_content and utm_term are optional. */ function setUTMPropertiesOnUserLocalStorage() { if (hasNoSetUtmFields()) { var queryParams = getQueryStrings(); if (hasUtmFieldsUrlparams(queryParams)) { if (queryParams['utm_campaign'] != null) { window.localStorage.setItem('JeeneeNewUserCampaign', queryParams['utm_campaign']); } if (queryParams['utm_source'] != null) { window.localStorage.setItem('JeeneeNewUserSource', queryParams['utm_source']); } if (queryParams['utm_medium'] != null) { window.localStorage.setItem('JeeneeNewUserMedium', queryParams['utm_medium']); } if (queryParams['utm_content'] != null) { window.localStorage.setItem('JeeneeNewUserContent', queryParams['utm_content']); } if (queryParams['utm_term'] != null) { window.localStorage.setItem('JeeneeNewUserTerm', queryParams['utm_term']); } } else { setDefaultUtmPropertiesOnUserLocalStorage(); } } } function TrackSimpleConcordEvent(eventName) { if (window.Concord && typeof window.Concord.TrackSimpleEvent === 'function') { window.Concord.TrackSimpleEvent(eventName); } } setUTMPropertiesOnUserLocalStorage(); /* Only use this function for non-webpack pages. Cannot pass props to Concord using this */ window.Track = function (event, properties, callback) { properties = addDefaultProperties(properties) mixpanel.track(event, properties, callback); } window.TrackSuperProp = function (properties) { mixpanel.register(properties) } window.TrackSuperPropOnce = function (properties) { mixpanel.register_once(properties) } window.TrackPeopleProp = function (properties) { mixpanel.people.set(properties) } window.TrackTabClick = function (pageName, tabName, properties) { properties = addDefaultProperties(properties); properties.zType = 'TabClick'; properties.zPage = pageName; properties.zTab = tabName; window.Track('Action', properties); TrackSimpleConcordEvent('Tab Click'); } window.TrackActionClick = function (pageName, buttonName, properties) { properties = addDefaultProperties(properties); properties.zType = 'ButtonClick'; properties.zPage = pageName; properties.zButton = buttonName; window.Track('Action', properties); // Need to create an event in EventName for each combo here otherwise it's not very useful // to just know that a user clicked on a button but not what it was TrackSimpleConcordEvent('Button Click ' + pageName + ' ' + buttonName); } // Use this function to track user link clicks. You need a special function for this, since // the browser reloads a new page when the user clicks a link, before Mixpanel has a chance to // log the event. The mixpanel.track_links method waits for 300ms before giving up and moving to // the new link. query should be a jquery selector for the links to track. eventName is the event name // passed to mixpanel. properties is either a function of the DOM node that was clicked that returns the // event props, or a constant object of event props. window.TrackLinks = function (query, eventName, properties) { var newProperties; if (typeof properties === 'function') { // Wrap the function so we get all of the default properites newProperties = function (node) { var result = properties(node) return addDefaultProperties(result) } } else { newProperties = addDefaultProperties(properties); } mixpanel.track_links(query, eventName, newProperties); } </script> <script type="text/javascript" nonce="PdVrb/l4QYA4pdJ840q4Hw=="> (function () { // Utility for running A/B tests on the website. An AB test is defined with a testName and an array of variants. // Each variant consists of a name, a jquery selector, and an initialize function that renders the variant in the website. // When a variant is run, the jquery selector is made visible and the initialize function is called. // The results of the test are saved to mixpanel. The test name is used as a super property in Mixpanel. The value // of the super property is the variant of the test that the user was shown. var ABTest = function (props) { this.name = props.name this.variants = props.variants this.defaultVariant = props.variants[0] this.initialized = false this.currentVariant = null // We need to know if mixpanel has been loaded and we can access the current user's properties. // You can pass in an onMixpanelLoad callback function, or use the default window.mixpanelLoader. // See _TrackingTop.cshtml for the code that loads mixpanel. if (typeof props.onMixpanelLoad === 'function') { this.onMixpanelLoad = props.onMixpanelLoad } else if (window.mixpanelLoader && typeof window.mixpanelLoader.onLoad === 'function') { this.onMixpanelLoad = window.mixpanelLoader.onLoad } else { this.onMixpanelLoad = function () { } } // How long to wait on mixpanel before giving up and showing the default variant this.timeout = 2000 // Gets the variant of the page for the current user. If they've already been assigned to a variant, // give them that one. Otherwise, assign them to a random variant. Parameter specifiedVariant allows // the caller to ask for a particular variant, without setting mixpanel super props. this.getVariant = function (specifiedVariant) { var variantName = specifiedVariant ? specifiedVariant : mixpanel.get_property(this.name) var variant = this.variants.find(function (v) { return v.name === variantName }) if (!variant && !specifiedVariant) { // The user has not yet beeen assigned to a variant and one has not been specified by caller variant = this.getRandomVariant() props = {} props[this.name] = variant.name mixpanel.register_once(props) } return variant } // Picks a variant uniformly at random this.getRandomVariant = function () { return this.variants[Math.floor(Math.random() * this.variants.length)] } this.getVariantSelector = function (variant) { return "." + this.name + "-" + variant.name } // Renders the variant to the page this.showVariant = function (variant, callback) { // Hide all of the variants. this.hideVariants() // Show the dom elements associated with this particular variant $(this.getVariantSelector(variant)).show() // Variant definition can supply a callback if (typeof variant.initialize === 'function') { variant.initialize() } // Caller can supply a callback, either a function or an object with keys named // according to the variants if (typeof callback === 'function') { callback(variant) } else if (typeof callback === 'object' && typeof callback[variant.name] === 'function') { callback[variant.name](variant) } this.currentVariant = variant } // Hides any variants that are currently showing in the page this.hideVariants = function () { var tmpThis = this this.variants.forEach(function (variant) { $(tmpThis.getVariantSelector(variant)).hide() }) } // Runs with a particular variant, but doesn't actually bucket the user (for debugging) this.runVariant = function (variantName, callback) { var variant = this.getVariant(variantName) this.initialized = true this.showVariant(variant, callback) } this.showSpinner = function () { $('.ab-loading.' + this.name).show() } this.hideSpinner = function () { $('.ab-loading.' + this.name).hide() } // Runs the experiment this.run = function (callback) { var tmpThis = this tmpThis.showSpinner() // The run method has already been called if (this.currentVariant && this.initialized) { callback(this.currentVariant) return } // We need to make sure mixpanel is loaded to check whether the user has already been assigned // to a variant. this.onMixpanelLoad(function () { if (tmpThis.initialized) { callback(tmpThis.currentVariant) return } tmpThis.initialized = true var variant = tmpThis.getVariant() tmpThis.showVariant(variant, callback) tmpThis.hideSpinner() }) // Just in case mixpanel doesn't load, we show them the default variant setTimeout(function () { if (tmpThis.initialized) { callback(tmpThis.currentVariant) return } tmpThis.initialized = true tmpThis.showVariant(tmpThis.defaultVariant, callback) tmpThis.hideSpinner() }, this.timeout) return this } } // Set up a global abTests object that's used to add/run tests in particular pages var tests = [] var abTests = {} var menuInitialized = false var isDebug = false abTests.addTest = function (props) { tests.push(new ABTest(props)) } abTests.getTest = function (name) { var test = tests.find(function (t) { return t.name === name }) if (test) { return test } else { console.error('Could not find AB test: ' + String(name)) return { run: function () { } } } } // Functions below allow internal users to select ab test variants. Don't store this state // in mixpanel because mixpanel is not turned on for internal users. var localStorageAvailable = function () { var test = 'test' try { localStorage.setItem(test, test) localStorage.removeItem(test) return true } catch (e) { return false } } abTests.setSelectedVariant = function (testName, variantName) { if (!localStorageAvailable()) return localStorage.setItem(testName, variantName) } abTests.loadSelectedVariant = function (testName) { if (!localStorageAvailable()) return var variantName = localStorage.getItem(testName) if (variantName) { return variantName } else { return } } var highlightMenuVariant = function (testName, callback) { return function (variant) { callback(variant) if (isDebug) { $('.ab-menu-root .ab-test-name').filter(function () { return $(this).data('name') === testName }) .find('.ab-test-variant-name').each(function () { var thisVariant = $(this).data() || {} if (thisVariant.name === variant.name) { $(this).addClass('ab-menu-highlight') } }) } } } abTests.runTest = function (name, callback) { // Check to see if there's a selected variant to override default ab behavior var selectedVariant = abTests.loadSelectedVariant(name) // Update the menu to display ab info if (!menuInitialized) abTests.initializeMenu() abTests.addToMenu(name) var newCallback = highlightMenuVariant(name, callback) if (selectedVariant) { return abTests.runTestVariant(name, selectedVariant, newCallback) } else { return abTests.getTest(name).run(newCallback) } } abTests.runTestVariant = function (name, variantName, callback) { var newCallback = highlightMenuVariant(name, callback) return abTests.getTest(name).runVariant(variantName, newCallback) } abTests.initializeMenu = function () { // Only initialize menu if in debug mode if (!isDebug) return var $menu = $('#ab-menu') if ($menu.length != 1) return $menu.show() var $root = $('.ab-menu-root') $root.hide() $('#ab-menu').find('.title').on('click', function () { $root.toggle() }) menuInitialized = true } abTests.addToMenu = function (testName) { if (!menuInitialized || !isDebug) return var test = abTests.getTest(testName) if (!test) return var $root = $('.ab-menu-root') var $testRoot = $('<li class="ab-test-name">' + testName + '</li>') $testRoot.data({name: testName}) $testRoot.appendTo($root) test.variants.forEach(function (variant) { var $variant = $('<li class="ab-test-variant-name"><a class="link" href="#">' + variant.name + '</a></li>') $variant.data(variant) $variant.appendTo($testRoot) $variant.find('a').on('click', function(e) { e.preventDefault() abTests.setSelectedVariant(testName, variant.name) location.reload() }) }) } window.abTests = abTests /* leaving this here as an example abTests.addTest({ name: 'abSpecClickableHints', variants: [ { name: 'Clickable', useHintLinks: true }, { name: 'Not Clickable', useHintLinks: false } ] }) */ })() </script> <link rel="stylesheet" type="text/css" href="/web/20210813082504cs_/https://www.appsheet.com/Content/css/cookieconsent2-3.1.0.min.css"/> </head> <body id="terms" class="gsuite-root"> <div class="bodyWrapper"> <img src="/web/20210813082504im_/https://www.appsheet.com/Content/img/logo/material/logomark.png" alt="" class="hidden" style="display: none;"/> <script nonce="PdVrb/l4QYA4pdJ840q4Hw=="> var verifiedAjaxPost = function (options) { if (!options.headers) { options.headers = {} } options.headers.RequestVerificationToken = 'uzuKeecerFv2o8VdAaXlAHm0LvCSGkgogyIlKDBxSAixtiQ1n-J4NoWFJR1IoVtXzjWY9HfUjrYt5ViZLdBTJ2K1Kw-QiAobthrx68PUWtNxaG70D3yuu2tH71mOEZnNQUMfHIT5_oioqdEoUnRL3w2:OAVhYQOcI99xzEWPCLsZ0zojgnF6_ZlC39lwqoHGQr393uxEKvOqt-5KBu1eZeno0vrG9KfP505-6aVupEc1oJtFPg8vTw14-Yfk-lmdUKargFC_cfttSHM68I0aBTvVDeIwbTFOf0Eei6A-hhEUfA2' options.method = 'POST' return $.ajax(options) } window.verifiedAjaxPost = verifiedAjaxPost var reloadPage = function (nonce) { // if there is already a nonce=, remove it var currentSearch = window.location.search var currentSearchSplit = currentSearch.split("&nonce=") if (currentSearchSplit.length > 1) { currentSearchSplit[1] = "" currentSearch = currentSearchSplit.join("") } window.location.search = currentSearch + "&nonce=" + (nonce ? nonce : Math.random()) } // GLOBALS window.DEBUG_MODE = false window.ALLOW_DEBUG_LOGGING = false window.USE_UPDATED_SKUS = false; window.getUserId = function () { return '-1' } </script> <div id="cloningClickEater"> <div id="waitingClone"> <div class="loader">Loading...</div> <p>We're setting up your new app...</p> </div> <div id="errorClick"> <div id="errorModal" class="modal fade"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close AlwaysEditable" data-dismiss="modal"><i class="material">cancel</i></button> <h5 class="modal-title">Error Cloning App</h5> </div> <div id="modalErrorText" class="modal-body"></div> <div class="modal-footer"> <button id="dismissModal" type="button" class="btn btn-default AlwaysEditable" data-dismiss="modal">Close</button> </div> </div> </div> </div> </div> </div> <header class="topNav"> <div class="primaryNav"> <div class="logo"> <a href="/web/20210813082504/https://www.appsheet.com/"> <img class="material-logo" src="https://web.archive.org/web/20210813082504im_/https://www.appsheet.com/content/img/material/logo.svg"/> <span class="logo-text"> AppSheet </span> <span class="subscriptionType"></span> </a> </div> <nav> <div class="navicon"> <i class="material clickable">arrow_drop_down</i> </div> <ul class="non-mobile"> <li class="createanapp "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/how-to-create-an-app" data-label="createanapp" rel="" target=""> <span> How to create an app </span> </a> </li> <li class="howitworks "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/application-platform" data-label="howitworks" rel="" target=""> <span> Platform </span> </a> </li> <li class="pricing "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/pricing" data-label="pricing" rel="" target=""> <span> Pricing </span> </a> </li> <li class="apps "> <a href="/web/20210813082504/https://www.appsheet.com/templates" data-label="apps" rel="" target=""> <span> Sample apps </span> </a> </li> <li class="enterprise "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/appsheet-enterprise" data-label="enterprise" rel="" target=""> <span> Enterprise </span> </a> </li> <li class="solutions "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/get-it-done" data-label="solutions" rel="" target=""> <span> Solutions </span> </a> </li> <li class="blog "> <a href="https://web.archive.org/web/20210813082504/https://blog.appsheet.com/" data-label="blog" rel="" target=""> <span> Blog </span> </a> </li> <li class="login "> <a href="/web/20210813082504/https://www.appsheet.com/Account/Login" data-label="login" rel="" target=""> <span> Login </span> </a> </li> <li class="signup "> <a href="/web/20210813082504/https://www.appsheet.com/Home/Start" data-label="signup" rel="" target=""> <span> Start for free </span> </a> </li> </ul> <ul class="mobile"> <li class="createanapp "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/how-to-create-an-app" data-label="createanapp" rel="" target=""> <span> How to create an app </span> </a> </li> <li class="howitworks "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/application-platform" data-label="howitworks" rel="" target=""> <span> Platform </span> </a> </li> <li class="pricing "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/pricing" data-label="pricing" rel="" target=""> <span> Pricing </span> </a> </li> <li class="apps "> <a href="/web/20210813082504/https://www.appsheet.com/templates" data-label="apps" rel="" target=""> <span> Sample apps </span> </a> </li> <li class="enterprise "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/appsheet-enterprise" data-label="enterprise" rel="" target=""> <span> Enterprise </span> </a> </li> <li class="solutions "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/get-it-done" data-label="solutions" rel="" target=""> <span> Solutions </span> </a> </li> <li class="blog "> <a href="https://web.archive.org/web/20210813082504/https://blog.appsheet.com/" data-label="blog" rel="" target=""> <span> Blog </span> </a> </li> <li class="login "> <a href="/web/20210813082504/https://www.appsheet.com/Account/Login" data-label="login" rel="" target=""> <span> Login </span> </a> </li> <li class="signup "> <a href="/web/20210813082504/https://www.appsheet.com/Home/Start" data-label="signup" rel="" target=""> <span> Start for free </span> </a> </li> </ul> </nav> </div> </header> <main> <div class="pageHeader"> <h2> AppSheet Terms of Service </h2> <div class="more"> </div> </div> <div id="TermsPage"> <p>Last modified: November 10th, 2020</p> <p> If you signed an offline variant of this Agreement for use of the Services under the same AppSheet Account, the terms below do not apply to you, and your offline terms govern your use of the Services. </p> <p> These AppSheet Terms of Service (together, the "Agreement") are entered into by Google and the entity or person agreeing to these terms ("Customer") and govern Customer's access to and use of the Services. "Google" means Google LLC, with offices at 1600 Amphitheatre Parkway, Mountain View, California 94043. </p> <p> This Agreement is effective when Customer either accepts it as part of allowing AppSheet to access Customer's Data Source, creating, installing or using a Customer Application, or otherwise agrees to this Agreement (the "Effective Date"). If you are accepting on behalf of Customer, you represent and warrant that (i) you have full legal authority to bind Customer to this Agreement; (ii) you have read and understand this Agreement; and (iii) you agree, on behalf of Customer, to this Agreement. </p> <ul> <p> 1. <u>Provision of the Services</u>. </p> <p> 1.1 <u>Services Use</u>. During the Term, Google will provide the Services in accordance with the Agreement and Customer may use the Services, and use the Services to create any Customer Application that has material value independent of the Services, in accordance with the Agreement. </p> <p> 1.2 <u>Admin Console</u>. Customer will have access to the Admin Console, through which Customer may manage its use of the Services. </p> <p> 1.3 <u>Accounts and Data Source</u>. Customer must have an Account to use the Services and is responsible for the information it provides to create the Account, the security of its passwords, and for any use of its Account. Customer must have an account with a Data Source in order to sign-up for or sign-in to the Services to create a Customer Application . Google has no obligation to provide multiple accounts to Customer. </p> <p> 1.4 <u>Modifications</u>. </p> <p> (a) <u>To the Services</u>. Google may make commercially reasonable updates to the Services from time to time. Google will inform Customer if Google makes a material change to the Services that has a material impact on Customer's use of the Services. </p> <p> (b) <u>To the Agreement</u>. Google may make changes to this Agreement, including pricing (and any linked documents) from time to time. Unless otherwise noted by Google, material changes to the Agreement will become effective 30 days after they are posted, except to the extent the changes apply to new functionality in which case they will be effective immediately. If Customer does not agree to the revised Agreement, Customer may stop using the Services. Customer may also terminate this Agreement for convenience under Section 8.4 (Termination for Convenience). Customer's continued use of the Services after such material change will constitute Customer's consent to such changes. Google will post any modification to this Agreement to <a target="_blank" href="https://web.archive.org/web/20210813082504/https://www.appsheet.com/Home/Terms" rel="noopener noreferrer">https://www.appsheet.com/Home/Terms</a>. </p> <p> (c) <u>To the Data Processing and Security Terms</u>. Google may only change the Data Processing and Security Terms where such change is required to comply with applicable law, applicable regulation, court order, or guidance issued by a governmental regulator or agency, where such change is expressly permitted by the Data Processing and Security Terms, or where such change </p> <p> (i) is commercially reasonable; </p> <p> (ii) does not result in a degradation of the overall security of the Services; </p> <p> (iii) does not expand the scope of or remove any restrictions on Google's processing of Customer Personal Data, as described in the Scope of Processing Section of the Data Processing and Security Terms; and </p> <p> (iv) does not otherwise have a material adverse impact on Customer's rights under the Data Processing and Security Terms. </p> <p> If Google makes a material change to the Data Processing and Security Terms in accordance with this Section, Google will post the modification to the URL containing those terms. </p> <p> 1.5 <u>Software</u>. Google may make Software available to Customer, including third-party software. Customer's use of any Software is subject to this Agreement. Some Software may be subject ot third-party license terms. </p> <p> 1.6 <u>Data Processing and Security Terms</u>. The Data Processing and Security Terms are incorporated by this reference into the Agreement. </p> <p> 1.7 <u>Free Accounts</u>. Free accounts are subject to limitations, are not eligible for TSS and certain features of the Services may not be available for free accounts. Google's indemnity does not apply to use of the Services under a free account. </p> <p> 1.8 <u>Data Sources</u>. Customer's use of Data Sources in connection with the Services is subject to and governed by the terms of service between Customer and the applicable Data Source provider. Customer is solely responsible for compliance with such Data Source terms of service, including ensuring necessary rights to allow Google to access or use such Data Sources for providing the Services to Customer. </p> <p> 1.9 <u>End Users and Customer Applications</u>. Google is not responsible for the content, accuracy or reliability of Customer Applications or Customer Data. Customer's use of Customer Applications or Customer Data is entirely at Customer's own risk and is governed by any agreement, terms or other relationship between the creator of the Customer Application and End Users. </p> <p> 1.10 <u>Pre-GA Features</u>. Google may make available to Customer pre-general availability features of the Services or Software that are identified as "Early Access," "Alpha," "Beta," "Preview," "Experimental," or a similar designation (collectively, "Pre-GA Features"). PRE-GA FEATURES ARE PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES OR REPRESENTATIONS OF ANY KIND. Pre-GA Features (a) may be changed, suspended or discontinued at any time without prior notice to Customer and (b) are not covered by any Google indemnity. Except as otherwise expressly indicated in a written notice or the documentation for a given Pre-GA Feature, (i) Pre-GA Features may not be covered by TSS and (ii) the Data Processing and Security Terms do not apply to Pre-GA Features and Customer should not use Pre-GA Features to process personal data or other data subject to legal or regulatory compliance requirements. With respect to Pre-GA Features, to the maximum extent permitted by applicable law, neither Google nor its suppliers will be liable for any amounts in excess of the lesser of (A) the limitation on the amount of liability stated in the Agreement or (B) $1,000. Nothing in the preceding sentence will affect the remaining terms of the Agreement relating to liability (including any specific exclusions from any limitation of liability). Either party may terminate Customer's use of a Pre-GA Feature at any time with written notice to the other party. </p> <p> 2. Payment Terms </p> <p> 2.1 <u>Online Billing</u>. At the beginning of the applicable Fee Accrual Period or as otherwise stated by Google in the Admin Console, Google will issue an electronic bill in advance to Customer for all charges based on Customer's subscription plan for the Services during the applicable Fee Accrual Period (including, if applicable, the relevant Fees for TSS). Customer will pay all Fees in the currency stated in the invoice. If Customer elects to pay by credit card, debit card, or other non-invoiced form of payment, Google will charge (and Customer will pay) all Fees immediately at the beginning of the Fee Accrual Period. If Customer elects to pay by invoice (and Google agrees), all Fees are due as stated in the invoice. Customer's obligation to pay all Fees is non-cancellable. Google will not issue refunds or credits for partial periods of Services. Google's measurement of Customer's use of the Services is final. Google has no obligation to provide multiple bills. Payments made via wire transfer must include the bank information provided by Google. </p> <p> 2.2 <u>Taxes</u>. </p> <p> (a) Customer is responsible for any Taxes, and Customer will pay Google for the Services without any reduction for Taxes. If Google is obligated to collect or pay Taxes, the Taxes will be invoiced to Customer and Customer will pay such Taxes to Google in addition to the Fees, unless Customer provides Google with a timely and valid tax exemption certificate. </p> <p> (b) If required under applicable law, Customer will provide Google with applicable tax identification information that Google may require to ensure its compliance with applicable tax regulations and authorities in applicable jurisdictions. Customer will be liable to pay (or reimburse Google for) any taxes, interest, penalties, or fines arising out of any mis-declaration by Customer. </p> <p> 2.3 <u>Invoice Disputes & Refunds</u>. Any invoice disputes must be submitted before the payment due date. If the parties determine that certain billing inaccuracies are attributable to Google, Google will not issue a corrected invoice, but will instead issue a credit memo specifying the incorrect amount in the affected invoice. If the disputed invoice has not yet been paid, Google will apply the credit memo amount to the disputed invoice and Customer will be responsible for paying the resulting net balance due on that invoice. To the fullest extent permitted by law, Customer waives all claims relating to Fees unless claimed within 60 days after the invoice date. Refunds (if any) are at Google's discretion and will only be in the form of credit for the Services. Nothing in this Agreement obligates Google to extend credit to any party. </p> <p> 2.4 <u>Delinquent Payments; Suspension</u>. Late payments may bear interest at the rate of 1.5% per month (or the highest rate permitted by law, if less) from the payment due date until paid in full. Customer will be responsible for all reasonable expenses (including attorneys' fees) incurred by Google in collecting such delinquent amounts. If Customer is late on payment for the Services, Google may Suspend the Services or terminate the Agreement for breach under Section 8.2 (Termination for Breach). </p> <p> 2.5 <u>No Purchase Order Number Required</u>. Customer is obligated to pay all applicable Fees without any requirement for Google to provide a purchase order number on Google's invoice (or otherwise). </p> <p> 3. Customer Obligations </p> <p> 3.1 <u>Compliance</u>. Customer will (a) ensure that Customer and End Users' use of the Services complies with the Agreement, (b) use commercially reasonable efforts to prevent and terminate any unauthorized use of, or access to, the Services, and (c) promptly notify Google of any unauthorized use of, or access to, the Services, Account, or Customer's password of which Customer becomes aware. Google reserves the right to investigate any potential violation of the AUP by Customer, which may include reviewing Customer Applications or Customer Data. </p> <p> 3.2 <u>Privacy</u>. Customer is responsible for any consents and notices required to permit (a) Customer's use and receipt of the Services and (b) Google's accessing, storing, and processing of data provided by Customer (including Customer Data, if applicable) under the Agreement. </p> <p> 3.3 <u>Restrictions</u>. Customer will not, and will not allow End Users to, (a) copy, modify, or create a derivative work of the Services; (b) reverse engineer, decompile, translate, disassemble, or otherwise attempt to extract any or all of the source code of the Services (except to the extent such restriction is expressly prohibited by applicable law); (c) sell, resell, sublicense, transfer, or distribute any or all of the Services; or (d) access or use the Services (i) for High Risk Activities; (ii) in violation of the AUP; (iii) in a manner intended to avoid incurring Fees (including creating multiple Customer Applications or Accounts to simulate or act as a single Customer Application or Account (respectively)) or to circumvent Service-specific usage limits or quotas; (iv) to engage in cryptocurrency mining without Google's prior written approval; (v) to operate or enable any telecommunications service or in connection with any Customer Application that allows End Users to place calls or to receive calls from any public switched telephone network; (vi) for materials or activities that are subject to the International Traffic in Arms Regulations (ITAR) maintained by the United States Department of State; (vii) in a manner that breaches, or causes the breach of, Export Control Laws; or (viii) to transmit, store, or process health information subject to United States HIPAA regulations except as permitted by an executed HIPAA BAA. </p> <p> 3.4 <u>Documentation</u>. Google may provide Documentation for Customer's use of the Services. </p> <p> 3.5 <u>Copyright</u>. Google provides information to help copyright holders manage their intellectual property online, but Google cannot determine whether something is being used legally without input from the copyright holders. Google will respond to notices of alleged copyright infringement and may terminate repeat infringers in appropriate circumstances as required to maintain safe harbor for online service providers under the U.S. Digital Millennium Copyright Act. If Customer believes a person or entity is infringing Customer's or End User's copyrights and would like to notify Google, Customer can find information about submitting notices, and Google's policy about responding to notices, at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://www.google.com/dmca.html" rel="noopener noreferrer">http://www.google.com/dmca.html</a>. </p> <p> 4. <u>Suspension</u>. </p> <p> 4.1 <u>AUP Violations</u>. If Google becomes aware that Customer's or any End User's use of the Services violates the AUP, Google will give Customer notice of the violation by requesting that Customer correct the violation. If Customer fails to correct the violation within 24 hours of Google's request, then Google may Suspend all or part of Customer's use of the Services until the violation is corrected. </p> <p> 4.2 <u>Other Suspension</u>. Notwithstanding Section 4.1 (AUP Violations), Google may immediately Suspend all or part of Customer's use of the Services if (a) Google believes Customer's or any End User's use of the Services could adversely impact the Services, other customers' or their end users' use of the Services, or the Google network or servers used to provide the Services; (b) there is suspected unauthorized third-party access to the Services; (c) Google believes it is required to Suspend immediately to comply with applicable law; or (d) Customer is in breach of Section 3.3 (Restrictions). Google will lift any such Suspension when the circumstances giving rise to the Suspension have been resolved. At Customer's request, unless prohibited by applicable law, Google will notify Customer of the basis for the Suspension as soon as is reasonably possible. </p> <p> 5. <u>Intellectual Property Rights; Protection of Customer Data; Feedback; Benchmarking</u>. </p> <p> 5.1 <u>Intellectual Property Rights</u>. Except as expressly stated in this Agreement, this Agreement does not grant either party any rights, implied or otherwise, to the other's content or any of the other's intellectual property. As between the parties, Customer owns all Intellectual Property Rights in Customer Data and Customer Applications (excluding the Services and Software), and Google owns all Intellectual Property Rights in the Services and Software (including without limitation any models trained and improvements made to the Services pursuant to Section 5.2). </p> <p> 5.2 <u>Protection of Customer Data</u>. Google will only access or use Customer Data to provide the Services and TSS to Customer or as otherwise instructed by Customer and will not use it for any other Google products, services, or advertising. Google has implemented and will maintain administrative, physical, and technical safeguards to protect Customer Data, as further described in the Data Processing and Security Terms. Customer acknowledges and agrees that, as part of providing the Services and Customer's instructions to Google, Google may use Customer Application definitions contained within Customer Data to train and improve the Services for all customers. While Customer continues to own all Intellectual Property Rights in Customer Application definitions, Google owns all Intellectual Property Rights in the models trained, schema and application patterns learned, and improvements made to the Services using Customer Application definitions. </p> <p> 5.3 <u>Customer Feedback</u>. At its option, Customer may provide feedback or suggestions about the Services to Google ("Feedback"). If Customer provides Feedback, then Google and its Affiliates may use that Feedback without restriction and without obligation to Customer. </p> <p> 5.4 <u>Benchmarking</u>. Customer may conduct benchmark tests of the Services (each a "Test"). Customer may only publicly disclose the results of such Tests if it (a) obtains Google's prior written consent, (b) provides Google all necessary information to replicate the Tests, and (c) allows Google to conduct benchmark tests of Customer's publicly available products or services and publicly disclose the results of such tests. Notwithstanding the foregoing, Customer may not do either of the following on behalf of a hyperscale public cloud provider without Google's prior written consent: (i) conduct (directly or through a third party) any Test of the Services or (ii) disclose the results of any such Test. </p> <p> 6. <u>Technical Support Services</u>. </p> <p> 6.1 <u>By Customer</u>. Customer is responsible for technical support of its Customer Applications. </p> <p> 6.2 <u>By Google</u>. Subject to payment of applicable Fees, Google will provide TSS to Customer during the Term in accordance with the TSS Guidelines. </p> <p> 7. <u>Confidential Information</u>. </p> <p> 7.1 <u>Obligations</u>. The recipient will only use the disclosing party's Confidential Information to exercise its rights and fulfill its obligations under the Agreement, and will use reasonable care to protect against the disclosure of the disclosing party's Confidential Information. The recipient may disclose Confidential Information only to its Affiliates, employees, agents, or professional advisors who need to know it and who have agreed in writing (or in the case of professional advisors are otherwise bound) to keep it confidential. The recipient will ensure that those people and entities use the received Confidential Information only to exercise rights and fulfill obligations under this Agreement. </p> <p> 7.2 <u>Required Disclosure</u>. Notwithstanding any provision to the contrary in this Agreement, the recipient may also disclose Confidential Information to the extent required by applicable Legal Process; provided that the recipient uses commercially reasonable efforts to (a) promptly notify the other party of such disclosure before disclosing and (b) comply with the other party's reasonable requests regarding its efforts to oppose the disclosure. Notwithstanding the foregoing, subsections (a) and (b) above will not apply if the recipient determines that complying with (a) and (b) could (i) result in a violation of Legal Process; (ii) obstruct a governmental investigation; or (iii) lead to death or serious physical harm to an individual. </p> <p> 8. <u>Term and Termination</u>. </p> <p> 8.1 <u>Agreement Term</u>. The "Term" of this Agreement will begin on the Effective Date and continue until the Agreement is terminated as stated in this Section 8 (Term and Termination). </p> <p> 8.2 <u>Termination for Breach</u>. Either party may terminate this Agreement if (a) the other party is in material breach of the Agreement and fails to cure that breach within 30 days after receipt of written notice or (b) the other party ceases its business operations or becomes subject to insolvency proceedings and the proceedings are not dismissed within 90 days. </p> <p> 8.3 <u>Termination for Inactivity</u>. Google reserves the right to terminate the provision of the Services upon 30 days' advance notice if, for a period of 60 days (a) Customer has not accessed the Admin Console or the Account has had no network activity and (b) such Account has not incurred any Fees for such Services. </p> <p> 8.4 <u>Termination for Convenience</u>. Customer may stop using the Services at any time. Customer may terminate this Agreement for its convenience at any time on prior written notice and, upon termination, must cease use of the applicable Services. Google may terminate this Agreement for its convenience at any time with 30 days' prior written notice to Customer. </p> <p> 8.5 <u>Effect of Termination</u>. If the Agreement is terminated, then (a) all rights and access to the Services will terminate (including access to Customer Data, if applicable), unless otherwise described in this Agreement, and (b) all Fees owed by Customer to Google are immediately due upon receipt of the final electronic bill or as set forth in the final invoice. </p> <p> 9. <u>Publicity</u>. Customer is permitted to state publicly that it is a customer of the Services, consistent with the Trademark Guidelines. If Customer wants to display Google Brand Features in connection with its use of the Services, Customer must obtain written permission from Google through the process specified in the Trademark Guidelines. Google may include Customer's name or Brand Features in a list of Google customers, online or in promotional materials. Google may also verbally reference Customer as a customer of the Services. Neither party needs approval if it is repeating a public statement that is substantially similar to a previously-approved public statement. Any use of a party's Brand Features will inure to the benefit of the party holding Intellectual Property Rights to those Brand Features. A party may revoke the other party's right to use its Brand Features under this Section with written notice to the other party and a reasonable period to stop the use. </p> <p> 10. <u>Representations and Warranties</u>. Each party represents and warrants that (a) it has full power and authority to enter into the Agreement, and (b) it will comply with all laws and regulations applicable to its provision, receipt, or use of the Services, as applicable. </p> <p> <b>11. <u>Disclaimer</u>. Except as expressly provided for in the Agreement, to the fullest extent permitted by applicable law, Google (a) does not make any warranties of any kind, whether express, implied, statutory, or otherwise, including warranties of merchantability, fitness for a particular use, title, noninfringement, or error-free or uninterrupted use of the Services or Software and (b) makes no representation about content or information accessible through the Services.</b> </p> <p> 12. <u>Limitation of Liability</u>. </p> <p> <b>12.1 <u>Limitation on Indirect Liability</u>. To the extent permitted by applicable law and subject to Section</b> </p> <p> <b>12.2 <u>Limitation on Amount of Liability</u>. Each party's total aggregate Liability for damages arising out of or relating to the Agreement is limited to the Fees Customer paid during the 12 month period before the event giving rise to Liability.</b> </p> <p> <b>12.3 <u>Unlimited Liabilities</u>. Neither party will have any Liability arising out of or relating to the Agreement for any (a) indirect, consequential, special, incidental, or punitive damages or (b) lost revenues, profits, savings, or goodwill.</b> </p> <p> <b>12.3 <u>Unlimited Liabilities</u>. Nothing in the Agreement excludes or limits either party's Liability for: <br/> (a) its fraud or fraudulent misrepresentation; <br/> (b) its obligations under Section 13 (Indemnification); <br/> (c) its infringement of the other party's Intellectual Property Rights; <br/> (d) its payment obligations under the Agreement; or <br/> (e) matters for which liability cannot be excluded or limited under applicable law.</b> </p> <p> 13. <u>Indemnification</u>. </p> <p> 13.1 <u>Google Indemnification Obligations</u>. Google will defend Customer and its Affiliates participating under the Agreement ("Customer Indemnified Parties") and indemnify them against Indemnified Liabilities in any Third-Party Legal Proceeding to the extent arising from an allegation that the Customer Indemnified Parties' use of (a) Google's technology used to provide the Services, or (b) any Google Brand Feature, infringes the third party's Intellectual Property Rights. </p> <p> 13.2 <u>Customer Indemnification Obligations</u>. Customer will defend Google and its Affiliates participating under this Agreement and indemnify them against Indemnified Liabilities in any Third-Party Legal Proceeding to the extent arising from (a) any Customer Application, Customer Data, or Customer Brand Features; or (b) Customer's or an End User's use of the Services in breach of the AUP or Section 3.3 (Restrictions). </p> <p> 13.3 <u>Exclusions</u>. Sections 13.1 (Google Indemnification Obligations) and 13.2 (Customer Indemnification Obligations) will not apply to the extent the underlying allegation arises from (a) the indemnified party's breach of the Agreement or (b) a combination of the indemnifying party's technology or Brand Features with materials not provided by the indemnifying party under the Agreement, unless the combination is required by the Agreement. </p> <p> 13.4 <u>Conditions</u>. Sections 13.1 (Google Indemnification Obligations) and 13.2 (Customer Indemnification Obligations) are conditioned on the following: </p> <p> (a) The indemnified party must promptly notify the indemnifying party in writing of any allegation(s) that preceded the Third-Party Legal Proceeding and cooperate reasonably with the indemnifying party to resolve the allegation(s) and Third-Party Legal Proceeding. If breach of this Section 13.4(a) prejudices the defense of the Third-Party Legal Proceeding, the indemnifying party's obligations under Section 13.1 (Google Indemnification Obligations) or 13.2 (Customer Indemnification Obligations) (as applicable) will be reduced in proportion to the prejudice. </p> <p> (b) The indemnified party must tender sole control of the indemnified portion of the Third-Party Legal Proceeding to the indemnifying party, subject to the following: (i) the indemnified party may appoint its own non-controlling counsel, at its own expense; and (ii) any settlement requiring the indemnified party to admit liability, pay money, or take (or refrain from taking) any action, will require the indemnified party's prior written consent, not to be unreasonably withheld, conditioned, or delayed. </p> <p> 13.5 <u>Remedies</u>. </p> <p> (a) If Google reasonably believes the Services might infringe a third party's Intellectual Property Rights, then Google may, at its sole option and expense (i) procure the right for Customer to continue using the Services; (ii) modify the Services to make them non-infringing without materially reducing their functionality; or (iii) replace the Services with a non-infringing, functionally equivalent alternative. </p> <p> (b) If Google does not believe the remedies in Section 13.5(a) are commercially reasonable, then Google may Suspend or terminate Customer's use of the impacted Services. </p> <p> 13.6 <u>Sole Rights and Obligations</u>. Without affecting either party's termination rights, this Section 13 (Indemnification) states the parties' sole and exclusive remedy under this Agreement for any third-party allegations of Intellectual Property Rights infringement covered by this Section 13 (Indemnification). </p> <p> 14. <u>U.S. Federal Agency Users</u>. The Services were developed solely at private expense and are commercial computer software and related documentation within the meaning of the applicable Federal Acquisition Regulations and their agency supplements. </p> <p> 15. <u>Miscellaneous</u>. </p> <p> 15.1 <u>Notices</u>. Google will provide notices under the Agreement to Customer by sending an email to the Notification Email Address. Customer will provide notices under the Agreement to Google by sending an email to legal-notices@google.com. Notice will be treated as received when the email is sent. Customer is responsible for keeping its Notification Email Address current throughout the Term. </p> <p> 15.2 <u>Emails</u>. The parties may use emails to satisfy written approval and consent requirements under the Agreement. </p> <p> 15.3 <u>Assignment</u>. Neither party may assign any part of this Agreement without the written consent of the other, except to an Affiliate where (a) the assignee has agreed in writing to be bound by the terms of this Agreement, and (b) the assigning party has notified the other party of the assignment. Any other attempt to assign is void. </p> <p> 15.4 <u>Change of Control</u>. If a party experiences a change of Control (for example, through a stock purchase or sale, merger, or other form of corporate transaction), that party will give written notice to the other party within 30 days after the change of Control. </p> <p> 15.5 <u>Force Majeure</u>. Neither party will be liable for failure or delay in performance to the extent caused by circumstances beyond its reasonable control, including acts of God, natural disasters, terrorism, riots, or war. </p> <p> 15.6 <u>Subcontracting</u>. Google may subcontract obligations under the Agreement but will remain liable to Customer for any subcontracted obligations. </p> <p> 15.7 <u>No Agency</u>. This Agreement does not create any agency, partnership, or joint venture between the parties. </p> <p> 15.8 <u>No Waiver</u>. Neither party will be treated as having waived any rights by not exercising (or delaying the exercise of) any rights under this Agreement. </p> <p> 15.9 <u>Severability</u>. If any part of this Agreement is invalid, illegal, or unenforceable, the rest of the Agreement will remain in effect. </p> <p> 15.10 <u>No Third-Party Beneficiaries</u>. This Agreement does not confer any benefits on any third party unless it expressly states that it does. </p> <p> 15.11 <u>Equitable Relief</u>. Nothing in this Agreement will limit either party's ability to seek equitable relief. </p> <p> 15.12 <u>U.S. Governing Law</u>. </p> <p> (a) <u>For U.S. City, County, and State Government Entities</u>. If Customer is a U.S. city, county, or state government entity, then the Agreement will be silent regarding governing law and venue. </p> <p> (b) <u>For U.S. Federal Government Entities</u>. If Customer is a U.S. federal government entity, then the following applies: ALL CLAIMS ARISING OUT OF OR RELATING TO THIS AGREEMENT OR THE SERVICES WILL BE GOVERNED BY THE LAWS OF THE UNITED STATES OF AMERICA, EXCLUDING ITS CONFLICT OF LAWS RULES. SOLELY TO THE EXTENT PERMITTED BY FEDERAL LAW, (I) THE LAWS OF THE STATE OF CALIFORNIA (EXCLUDING CALIFORNIA'S CONFLICT OF LAWS RULES) WILL APPLY IN THE ABSENCE OF APPLICABLE FEDERAL LAW; AND (II) FOR ALL CLAIMS ARISING OUT OF OR RELATING TO THIS AGREEMENT OR THE SERVICES, THE PARTIES CONSENT TO PERSONAL JURISDICTION IN, AND THE EXCLUSIVE VENUE OF, THE COURTS IN SANTA CLARA COUNTY, CALIFORNIA. </p> <p> (c) <u>For All Other Entities</u>. If Customer is any entity not stated in Section 15.12(a) or (b) then the following applies: ALL CLAIMS ARISING OUT OF OR RELATING TO THIS AGREEMENT OR THE SERVICES WILL BE GOVERNED BY CALIFORNIA LAW, EXCLUDING THAT STATE'S CONFLICT OF LAWS RULES, AND WILL BE LITIGATED EXCLUSIVELY IN THE FEDERAL OR STATE COURTS OF SANTA CLARA COUNTY, CALIFORNIA, USA; THE PARTIES CONSENT TO PERSONAL JURISDICTION IN THOSE COURTS. </p> <p> 15.13 <u>Amendments</u>. Except as stated in Section 1.4(b) (Modifications: To the Agreement) or (c) (Modifications: To the Data Processing and Security Terms), any amendment must be in writing, signed by both parties, and expressly state that it is amending this Agreement. </p> <p> 15.14 <u>Survival</u>. The following Sections will survive expiration or termination of this Agreement: Section 2 (Payment Terms), Section 5 (Intellectual Property Rights; Protection of Customer Data; Feedback; Benchmarking), Section 7 (Confidential Information), Section 8.5 (Effect of Termination), Section 11 (Disclaimer), Section 12 (Limitation of Liability), Section 13 (Indemnification), and Section 15 (Miscellaneous). </p> <p> 15.15 <u>Entire Agreement</u>. This Agreement sets out all terms agreed between the parties and supersedes all other agreements between the parties relating to its subject matter. In entering into this Agreement, neither party has relied on, and neither party will have any right or remedy based on, any statement, representation, or warranty (whether made negligently or innocently), except those expressly stated in this Agreement. The terms located at a URL referenced in this Agreement are incorporated by reference into the Agreement. After the Effective Date, Google may provide an updated URL in place of any URL in this Agreement. </p> <p> 15.16 <u>Conflicting Terms</u>. If there is a conflict between the documents that make up this Agreement, the documents will control in the following order: the Data Processing and Security Terms, the Agreement, and the terms at any other URL. </p> <p> 15.17 <u>Headers</u>. Headings and captions used in the Agreement are for reference purposes only and will not have any effect on the interpretation of the Agreement. </p> <p> 15.18 <u>Conflicting Languages</u>. If this Agreement is translated into any language other than English, and there is a discrepancy between the English text and the translated text, the English text will govern unless expressly stated otherwise in the translation. </p> <p> 15.19 <u>Definitions</u>. </p> <ul> <li> "Account" means Customer's AppSheet account. </li> <li> "Admin Console" means the online console(s) or dashboard provided by Google to Customer for administering the Services. </li> <li> "Affiliate" means any entity that directly or indirectly Controls, is Controlled by, or is under common Control with a party. </li> <li> "AUP" means the then-current acceptable use policy for the Services stated at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://cloud.google.com/terms/aup" rel="noopener noreferrer">http://cloud.google.com/terms/aup</a>. For purposes of clarity, references to Services in the AUP means only the Services defined in this Agreement. </li> <li> "BAA" or "Business Associate Agreement" is an amendment to the Agreement covering the handling of Protected Health Information (as defined in HIPAA). </li> <li> "Brand Features" means the trade names, trademarks, service marks, logos, domain names, and other distinctive brand features of each party, respectively, as secured by such party from time to time. </li> <li> "Confidential Information" means information that one party (or an Affiliate) discloses to the other party under this Agreement, and which is marked as confidential or would normally under the circumstances be considered confidential information. It does not include information that is independently developed by the recipient, is rightfully given to the recipient by a third party without confidentiality obligations, or becomes public through no fault of the recipient. Subject to the preceding sentence, Customer Data is considered Customer's Confidential Information. </li> <li> "Control" means control of greater than 50 percent of the voting rights or equity interests of a party. </li> <li> "Customer Application" means a software program that Customer creates or hosts using the Services. </li> <li> "Customer Data" means data provided to Google by Customer or End Users through the Services under the Account. </li> <li> "End User" means an individual that Customer invites or permits to use the Services or a Customer Application. For clarity, End Users may include employees of Customer Affiliates and other third parties. </li> <li> "Data Processing and Security Terms" means the terms stated at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://www.appsheet.com/Home/DPST" rel="noopener noreferrer">https://www.appsheet.com/Home/DPST</a>. </li> <li> "Data Source" means the Google or third party data sources linked at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://www.appsheet.com/Home/StartWithData" rel="noopener noreferrer">https://www.appsheet.com/Home/StartWithData</a>. </li> <li> "Documentation" means the Google documentation (as may be updated from time to time) in the form generally made available by Google to its customers for use with the Services at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://help.appsheet.com/en/" rel="noopener noreferrer">https://help.appsheet.com/en/</a>. </li> <li> "Fee Accrual Period" means the month, year or another period specified by Google in the Admin Console. </li> <li> "Fees" means the applicable fees for each Service and any applicable Taxes. The Fees for each Service are stated at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/pricing/" rel="noopener noreferrer">https://solutions.appsheet.com/pricing/</a>. </li> <li> "Google API" means any application programming interface provided by Google as part of the Services. </li> <li> "High Risk Activities" means activities where the use or failure of the Services would reasonably be expected to lead to death, personal injury, or environmental damage (such as the creation or operation of nuclear facilities, air traffic control, life support systems, or weaponry). </li> <li> "HIPAA" means the Health Insurance Portability and Accountability Act of 1996 as it may be amended from time to time, and any regulations issued under it. </li> <li> "including" means including but not limited to. </li> <li> "Indemnified Liabilities" means any (i) settlement amounts approved by the indemnifying party and (ii) damages and costs finally awarded against the indemnified party and its Affiliates by a court of competent jurisdiction. </li> <li> "Intellectual Property Rights" means current and future worldwide rights under patent, copyright, trade secret, trademark, and moral rights laws, and other similar rights. </li> <li> "Legal Process" means an information disclosure request made under law, governmental regulation, court order, subpoena, warrant, or other valid legal authority, legal procedure, or similar process. </li> <li> "Liability" means any liability, whether under contract, tort (including negligence), or otherwise, regardless of whether foreseeable or contemplated by the parties. </li> <li> "Notification Email Address" means the email address(es) associated with Customer's Account. </li> <li> "Services" means the then-current services described at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/application-platform" rel="noopener noreferrer">https://solutions.appsheet.com/application-platform</a>. </li> <li> "Software" means any downloadable tools, software development kits, or other such computer software provided by Google in connection with the Services, and any updates Google may make to such Software from time to time. </li> <li> "Suspend" or "Suspension" means disabling or limiting access to or use of the Services or components of the Services. </li> <li> "Taxes" means all government-imposed taxes, except for taxes based on Google's net income, net worth, asset value, property value, or employment. </li> <li> "Term" has the meaning stated in Section 8 (Term and Termination) of this Agreement. </li> <li> "Third-Party Legal Proceeding" means any formal legal proceeding filed by an unaffiliated third party before a court or government tribunal (including any appellate proceeding). </li> <li> "Trademark Guidelines" means Google's Guidelines for Third Party Use of Google Brand Features at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://www.google.com/permissions/guidelines.html" rel="noopener noreferrer">http://www.google.com/permissions/guidelines.html</a>. </li> <li> "TSS" means the then-current technical support service provided by Google to Customer under the TSS Guidelines. For purposes of clarity, TSS excludes the AppSheet Community at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://community.appsheet.com/" rel="noopener noreferrer">https://community.appsheet.com/</a>. </li> <li> "TSS Guidelines" means Google's technical support services guidelines then in effect for the Services. TSS Guidelines are at <a target="_blank" href="https://web.archive.org/web/20210813082504/https://www.appsheet.com/Home/TSSG" rel="noopener noreferrer">https://www.appsheet.com/Home/TSSG</a>. </li> </ul> </ul> <p> Previous Versions </p> <ul> <li> <a target="_blank" href="https://web.archive.org/web/20210813082504/https://www.appsheet.com/Home/Terms20201005" rel="noopener noreferrer">October 5th, 2020</a> </li> </ul> </div> <div class="modal" id="deleteAccountModal"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button class="AlwaysEditable cancel" data-dismiss="modal">Cancel</button> <h5 class="modal-title"> Delete my account </h5> </div> <form> <div class="modal-body"> <p>We're sorry to see you go! Why are you leaving?</p> <p> <fieldset> <div> <input name="deleteAccountReason" type="radio" value="too hard" id="too-hard" style="width:auto;margin-right:10px"/><label for="too-hard" style="display:inline">It's too hard to figure out</label> </div> <div> <input name="deleteAccountReason" type="radio" value="unmet needs" id="unmet-needs" style="width:auto;margin-right:10px"/><label for="unmet-needs" style="display:inline">It doesn't do what I need it to do</label> </div> <div> <input name="deleteAccountReason" type="radio" value="just browsing" id="just-browsing" style="width:auto;margin-right:10px"/><label for="just-browsing" style="display:inline">I was just browsing</label> </div> <div> <input name="deleteAccountReason" type="radio" value="other" id="other" style="width:auto;margin-right:10px"/><label for="other" style="display:inline">Other</label> </div> </fieldset> </p> <p> <label for="delete-account-comment">Please tell us what we should improve<textarea rows="4" name="deleteAccountComment" id="delete-account-comment"></textarea></label> </p> <p> <a href="https://web.archive.org/web/20210813082504/https://help.appsheet.com/en/articles/962254-resetting-appsheet" class="link clear-devices-help-link"> Deletion of this account will not delete the apps or app data already downloaded to app users' devices. </a> </p> </div> <div class="modal-footer" style="overflow:auto"> <button type="submit">Delete my account</button> </div> </form> </div> </div> </div> </main> <section class="start-for-free-cta"> <a class="button icon-button-filled button-rectangle" href="/web/20210813082504/https://www.appsheet.com/Home/Start">Start for free</a> </section> <footer class="bottomNav"> <nav> <ul> <li class="company"> <div class="subheader1"><a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/about">Company</a></div> <ul> <li class="about "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/about">About</a> </li> <li class="blog "> <a href="https://web.archive.org/web/20210813082504/http://blog.appsheet.com/">Blog</a> </li> <li class="careers "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/careers">Careers</a> </li> <li class="contactus "> <a href="/web/20210813082504/https://www.appsheet.com/Support/Contact">Contact us</a> </li> </ul> </li> <li class="howitworks"> <div class="subheader1"><a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/application-platform">Platform</a></div> <ul> <li class="box "> <a href="/web/20210813082504/https://www.appsheet.com/HowItWorks/Architecture">Architecture</a> </li> <li class="datasource "> <a href="/web/20210813082504/https://www.appsheet.com/HowItWorks/DataSources">Data Sources</a> </li> <li class="enterprise "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/appsheet-enterprise">Enterprise</a> </li> <li class="trustCenter "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/trust-center">Trust Center</a> </li> </ul> </li> <li class="pricing"> <div class="subheader1"><a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/pricing">Pricing</a></div> <ul> <li class="terms selected"> <a href="/web/20210813082504/https://www.appsheet.com/Home/Terms">Terms of service</a> </li> <li class="privacy "> <a href="https://web.archive.org/web/20210813082504/https://policies.google.com/privacy">Privacy policy</a> </li> <li class="sales "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/contact">Contact sales</a> </li> </ul> </li> <li class="solutions"> <div class="subheader1"><a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/get-it-done">Solutions</a></div> <ul> <li class="apps "> <a href="/web/20210813082504/https://www.appsheet.com/templates">Sample apps</a> </li> <li class="resources "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/get-it-done#section3-outer-wrap">Resources</a> </li> <li class="industries "> <a href="/web/20210813082504/https://www.appsheet.com/Solutions#industries">Industries</a> </li> <li class="customers "> <a href="https://web.archive.org/web/20210813082504/https://blog.appsheet.com/topic/customers">Customers</a> </li> </ul> </li> <li class="partners"> <div class="subheader1"><a href="/web/20210813082504/https://www.appsheet.com/Partners">Partners</a></div> <ul> <li class="findapartner "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/partners/get-partner-help">Find a partner</a> </li> <li class="becomeapartner "> <a href="https://web.archive.org/web/20210813082504/https://solutions.appsheet.com/partners/become-an-appsheet-partner">Become a partner</a> </li> </ul> </li> <li class="support"> <div class="subheader1"><a href="/web/20210813082504/https://www.appsheet.com/Support">Support</a></div> <ul> <li class="community "> <a href="https://web.archive.org/web/20210813082504/https://community.appsheet.com/">Community</a> </li> <li class="documentation "> <a href="https://web.archive.org/web/20210813082504/https://help.appsheet.com/">Documentation</a> </li> <li class="contactus "> <a href="/web/20210813082504/https://www.appsheet.com/Support/Contact">Contact Us</a> </li> </ul> </li> <li class="account"> <div class="subheader1"><a href="/web/20210813082504/https://www.appsheet.com/Template/Apps">Account</a></div> <ul> <li class="login "> <a href="/web/20210813082504/https://www.appsheet.com/Account/Login">Login</a> </li> <li class="signup "> <a href="/web/20210813082504/https://www.appsheet.com/Home/Start">Start for free</a> </li> </ul> </li> </ul> <div class="bottom-meta"> <div class="socialMedia" itemscope itemtype="http://schema.org/Organization"> <link itemprop="url" href="https://www.appsheet.com"> <a href="https://web.archive.org/web/20210813082504/https://www.youtube.com/channel/UC7xYEO2O_VZWyvctU0LQp8g" itemprop="sameAs"> <i class="material">post_youtube</i> </a> <a href="https://web.archive.org/web/20210813082504/https://www.linkedin.com/company/appsheet" itemprop="sameAs"> <i class="material">post_linkedin</i> </a> <a href="https://web.archive.org/web/20210813082504/https://twitter.com/appsheet" itemprop="sameAs"> <i class="material">post_twitter</i> </a> <a href="https://web.archive.org/web/20210813082504/https://www.facebook.com/appsheet" itemprop="sameAs"> <i class="material">post_facebook</i> </a> </div> </div> </nav> </footer> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/Scripts/jquery-3.5.1.min.js"></script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/Scripts/jquery-migrate-3.3.2.min.js"></script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/bundles/valjquery"></script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/bundles/unobtrusive?v=lWgf8_nB9MzU3N1ztusS2nnyZp9GZERS2J1NvX37gZo1"></script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/Content/scripts/web/utilities.js?update='20210810'.1"></script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/Content/scripts/web/accountStartup.js"> </script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw==" type="text/javascript"> $(function () { var shouldCheck = false; if (shouldCheck) { var oneHour = 60 * 60 * 1000; initCheckAccountStatus(oneHour); } }); </script> <noscript> <iframe src="https://web.archive.org/web/20210813082504if_/https://www.googletagmanager.com/ns.html?id=GTM-N6QM4V3" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <script nonce="PdVrb/l4QYA4pdJ840q4Hw=="> Track('Terms'); </script> <script id="CookieConsent" nonce="PdVrb/l4QYA4pdJ840q4Hw==" src="/web/20210813082504js_/https://www.appsheet.com/Content/scripts/_shared/external/cookieconsent2-3.1.0.min.js" async defer></script> <script nonce="PdVrb/l4QYA4pdJ840q4Hw=="> window.showCookieConsent = function () { window.cookieconsent.initialise({ "palette": { "popup": { "background": "#ffffff", "text": "#3C4043" }, "button": { "background": "#1A73E8", "text": "#ffffff" } }, "position": "bottom-left", "content": { "message": "This website uses cookies to ensure you get the best experience with our platform.", "dismiss": "Got it!", "link": "Learn more", "href": "https://web.archive.org/web/20210813082504/https://www.appsheet.com/Home/Privacy" }, "cookie": { "domain": ".appsheet.com", "secure": true, }, }) }; $('#CookieConsent').on('load', showCookieConsent) </script> </div> </body> </html> <!-- FILE ARCHIVED ON 08:25:04 Aug 13, 2021 AND RETRIEVED FROM THE INTERNET ARCHIVE ON 03:46:13 Dec 12, 2024. JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE. ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C. SECTION 108(a)(3)). --> <!-- playback timings (ms): captures_list: 0.54 exclusion.robots: 0.026 exclusion.robots.policy: 0.016 esindex: 0.011 cdx.remote: 29.184 LoadShardBlock: 311.165 (3) PetaboxLoader3.datanode: 225.432 (4) PetaboxLoader3.resolve: 265.226 (2) load_resource: 279.402 -->