CINXE.COM

Pulley | Privacy Policy

<!DOCTYPE html><!-- Last Published: Tue Nov 26 2024 23:23:41 GMT+0000 (Coordinated Universal Time) --><html data-wf-domain="www.withpulley.com" data-wf-page="65cbd4721230f2d0ee912790" data-wf-site="624377943107de1855915833" lang="en"><head><meta charset="utf-8"/><title>Pulley | Privacy Policy</title><meta content="Get construction permits faster by leveraging Pulley鈥檚 purpose-built software and dedicated, local experts." name="description"/><meta content="Pulley | Privacy Policy" property="og:title"/><meta content="Get construction permits faster by leveraging Pulley鈥檚 purpose-built software and dedicated, local experts." property="og:description"/><meta content="Pulley | Privacy Policy" property="twitter:title"/><meta content="Get construction permits faster by leveraging Pulley鈥檚 purpose-built software and dedicated, local experts." property="twitter:description"/><meta property="og:type" content="website"/><meta content="summary_large_image" name="twitter:card"/><meta content="width=device-width, initial-scale=1" name="viewport"/><meta content="jxXrNL0nTpeoj8mDZYOtmZMwzJabB3jSaBbeW58yOHk" name="google-site-verification"/><link href="https://cdn.prod.website-files.com/624377943107de1855915833/css/pulley-v1.webflow.43fa16639.min.css" rel="stylesheet" type="text/css"/><link href="https://fonts.googleapis.com" rel="preconnect"/><link href="https://fonts.gstatic.com" rel="preconnect" crossorigin="anonymous"/><script src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js" type="text/javascript"></script><script type="text/javascript">WebFont.load({ google: { families: ["DM Serif Text:regular","Inter:100,200,300,regular,500,600,700,800","Nunito:300,regular,500,600,700,800,200italic,300italic,italic,700italic","Roboto Mono:regular,500,600,700","Prompt:300,regular,500,600,700,800","Poppins:200,300,regular,500,600,700"] }});</script><script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script><link href="https://cdn.prod.website-files.com/624377943107de1855915833/6258aedfdd240f3ad1c10d98_Pulley%20Logo%20(Small).png" rel="shortcut icon" type="image/x-icon"/><link href="https://cdn.prod.website-files.com/624377943107de1855915833/6258aee8f2858ba602fae828_Pulley%20Logo%20(Large).png" rel="apple-touch-icon"/><link href="https://www.withpulley.com/legal/privacy" rel="canonical"/><!-- Google Tag Manager --> <script>(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://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-NNLRRH8N');</script> <!-- End Google Tag Manager --> <style> /* Font rendering improvements */ * { -webkit-font-smoothing: antialiased; -moz-font-smoothing: antialiased; -o-font-smoothing: antialiased; } /* Custom style for unordered list items */ .text-rich-text.is-full-mobile ul li { margin-bottom: 0px; /* Space between list items */ } </style> <script> window.markerConfig = { project: '6464cab982516a24c12f718c', source: 'snippet' }; </script> <script> !function(e,r,a){if(!e.__Marker){e.__Marker={};var t=[],n={__cs:t};["show","hide","isVisible","capture","cancelCapture","unload","reload","isExtensionInstalled","setReporter","setCustomData","on","off"].forEach(function(e){n[e]=function(){var r=Array.prototype.slice.call(arguments);r.unshift(e),t.push(r)}}),e.Marker=n;var s=r.createElement("script");s.async=1,s.src="https://edge.marker.io/latest/shim.js";var i=r.getElementsByTagName("script")[0];i.parentNode.insertBefore(s,i)}}(window,document); </script> <!-- Start of HubSpot Embed Code --> <script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/24201671.js"></script> <!-- End of HubSpot Embed Code --> <script id="vtag-ai-js" async src="https://r2.leadsy.ai/tag.js" data-pid="1wmwtaNqEwxq46S6O" data-version="062024"></script><script> window.location.replace("https://docs.google.com/document/d/e/2PACX-1vTU-OyKGyRkDYMg15rG9WibXlWjlpHHqyb5ZkGtm9AFYcGgZiEYF0vZMKOaNjm2PQ/pub"); </script> <meta name="viewport" content="width=device-width, initial-scale=1"></head><body><script src="https://d3e54v103j8qbb.cloudfront.net/js/jquery-3.5.1.min.dc5e7f18c8.js?site=624377943107de1855915833" type="text/javascript" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script><script src="https://cdn.prod.website-files.com/624377943107de1855915833/js/webflow.8c4c7ccba.js" type="text/javascript"></script><!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NNLRRH8N" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <script> !function(t){if(window.ko)return;window.ko=[],["identify","track","removeListeners","open","on","off","qualify","ready"].forEach(function(t){ko[t]=function(){var n=[].slice.call(arguments);return n.unshift(t),ko.push(n),ko}});var n=document.createElement("script");n.async=!0,n.setAttribute("src","https://cdn.getkoala.com/v1/pk_66ff6c50cfbfed2cadcb4e0e0acb801ab225/sdk.js"),(document.body || document.head).appendChild(n)}(); </script> <!-- https://github.com/js-cookie/js-cookie --> <script src="https://cdn.jsdelivr.net/npm/js-cookie@2/src/js.cookie.min.js"></script> <script> const my_utmParameters = [ "utm_source", "utm_medium", "utm_campaign", "utm_content" ]; function getAllUrlParams(url) { let obj = Object.fromEntries(new URLSearchParams(location.search)); return obj; } /* Check if Lead Cookie already exist */ var cookieExist = Cookies.get('Lead'); // => if false return undefined /* get URL params object */ var getAllUrlParams = getAllUrlParams(); // return object /*Convert a JavaScript object into a string */ var getAllUrlParamsJSON = JSON.stringify(getAllUrlParams); /* Check if the url with utm_parameters */ let isEmpty = jQuery.isEmptyObject(getAllUrlParams); // return true/false /* Case 1 - if the page with parameters & no cookie exsist */ if(!isEmpty && cookieExist === undefined){ /* Set lead object for the cookies */ console.log("Case 1 - parameters & no cookie exsist => Create Cookie"); /* ## Set Cookies ## expires: If omitted, the cookie becomes a session cookie (This example) */ createLead(); setUTMformValues(); }/*end if*/ let compare = is_this_utm_equal_to_cookie_utm_values(); if(!isEmpty && cookieExist !== undefined){ /* it this utm params diff from current lead values create new lead*/ if(!compare){ /* Case 3 - cookie already exsist but with diff values Vs url utm params (remove current Lead and generate new one) */ console.log("Case 3 - lead Exist, but with diff params"); Cookies.remove('Lead'); createLead(); setUTMformValues(); }else{ console.log("Case 2 - lead exsist with this params"); setUTMformValues(); } } /* Case 4 - cookie Exist but page without any utm param */ if(isEmpty && cookieExist !== undefined){ console.log("Case 4 - cookie Exist but page without any utm param"); setUTMformValues(); } function createLead(){ var lead = { parameters: getAllUrlParams }; /* if you want to add 2 days expires for example: Cookies.set('Lead', 'lead', { expires: 2}) */ Cookies.set('Lead', lead, { }); } /* check if this utm url equal to the current values of cookie lead */ function is_this_utm_equal_to_cookie_utm_values(){ for (const this_utm_element of my_utmParameters) { /* if utm_source exist */ let value_exsist = JSON.parse(cookieExist).parameters[this_utm_element] == getAllUrlParams[this_utm_element]; //console.log(`${value_exsist} - ${JSON.parse(cookieExist).parameters[this_utm_element]} compare to: ${getAllUrlParams[this_utm_element]}`); if(value_exsist == false){ return false; } }/* end for loop */ return true; } function setUTMformValues(){ /* webflow form object (Add embed code under webflow designer inside FORM */ /* <input type="text" class="utm_source" placeholder="utm_source" name="utm_source"> <input type="text" class="utm_medium" placeholder="utm_medium" name="utm_medium"> <input type="text" class="utm_campaign" placeholder="utm_campaign" name="utm_campaign"> */ /* the value if the param is empty */ const empty_param_case = "null"; /* set feilds */ for (const this_utm_element of my_utmParameters) { /* if utm_source exist */ set_utm_feild(this_utm_element); }/* end for loop */ /* inner function */ function set_utm_feild(utm_type){ let utm_value = JSON.parse(Cookies.get('Lead')).parameters[utm_type]; let utm_nodes = document.getElementsByClassName(utm_type); /* change all utm form feilds */ if(utm_nodes.length > 0){ for(var i = 0; i < utm_nodes.length; i++) { if(!!utm_value && utm_value !== undefined){ utm_nodes[i].value = utm_value; } else{ /* empty param for example ?utm_campaign= or ?utm_campaign */ utm_nodes[i].value = empty_param_case; } }/* end for */ }/* end if */ }// end inner set_utm_feild function */ } </script> <script> const html = document.querySelector("html"); const madeBy = document.createComment(" DESIGNED AND BUILT BY BETTER MISTAKES - BETTERMISTAKES.COM "); document.insertBefore(madeBy, html); </script> <script> document.addEventListener('DOMContentLoaded', function() { var form = document.getElementById('wf-form-Gated-Content-Form'); if (form) { form.addEventListener('submit', function(event) { event.preventDefault(); // Prevent the default form submission // Perform form validation or AJAX submission here // After successful submission, scroll to the desired position window.scrollTo({ top: 750, // Adjust this value to set the scroll position behavior: 'smooth' // Enables smooth scrolling }); }); } }); </script> <script> var _hsq = window._hsq = window._hsq || []; _hsq.push(['setContentType', 'legal-page']); </script></body></html>