One API for agents to read and act on the physical world.
Use our GraphQL API to build applications for any commercial or industrial environment and the grounding layer for agents and Physical AI applications. 40,000 devices across 900 classes, one graph ontology — so your agent sees an elevator as an elevator, no matter who made it.
Build agents and apps on a live world model.
Connect
Mapped software automatically connects to the network devices in its native protocol.
Discover
Mapped makes it easy to understand relationships between systems and events with our single, unified API
Build
Power your applications, dashboards, and analytics with consistent, and normalized data without any complexities.
Deploy
Build applications once and deploy them across your portfolio and locations
One API for all your people, places, and things
With a few lines of GraphQL you get just the data you need to build exceptional new experiences without the burden of integrating with archaic protocols or dozens of vendor-specific APIs. Learn more at https://docs.mapped.com/docs/introduction
FLOOR GEOMETRY
GATHER SENSORS
TEMPERATURE READINGS
{
buildings(filter:{id:{eq:"123456abcdef"}}){
floors{
id
name
geoshape
}
}
}
Fully-managed data pipeline
Use Mapped to connect the people, places, and things in and around any building. We make the data available to you through a unified GraphQL API, so you can focus on delivering innovative applications rather than tedious integration.
Access hard-to-reach data
We’ve profiled thousands of devices from hundreds of vendors and boiled them down to a simple, modern, API to eliminate the headaches of data extraction, normalization, and contextual relationship discovery. With Mapped, an elevator is an elevator no matter who makes it.
Develop innovative applications
Mapped structures, connects, and enhances previously unstructured, isolated, and complex data across various sub-systems, so you can use geospatial knowledge of data and draw correlations between them to drive new use cases.
Write once, run anywhere. Your agent runs in any Mapped-enabled building.
Code against the Mapped API and your app will work in any Mapped-enabled building. That's our promise.
Targeting an environment that hasn't been Mapped? Our Universal Gateway and dozens of out-of-the-box connectors will get your building online in no time.
Just the data you need. Nothing more.
Fine-grained access controls and data routing limit your liability. You’ll have what you need, when you need it without worrying about extraneous data bogging your app down.
Works with things you already have
Take the guesswork out of finding, normalizing, and sourcing data from various sources such as thermostats and lighting systems. When you use Mapped, an HVAC is an HVAC no matter who manufactured it.
["<script nonce=\"dm1kd3VmMnZpbWE=\" src=\"https://js.hsforms.net/forms/embed/v2.js\"></script>","<script nonce=\"dm1kd3VmMnZpbWE=\" src=\"https://static.claydar.com/init.v1.js?id=cByptbsZbj\"></script>","<script nonce=\"dm1kd3VmMnZpbWE=\">(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\nnew Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\nj=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n})(window,document,'script','dataLayer','GTM-N2BZQZZG');</script>","<script nonce=\"dm1kd3VmMnZpbWE=\" id=\"hs-script-loader\" async defer src=\"https://js-na2.hs-scripts.com/22297332.js\"></script>","<script nonce=\"dm1kd3VmMnZpbWE=\">(function(l) { if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])}; \nwindow.lintrk.q=[]} var s = document.getElementsByTagName(\"script\")[0]; \nvar b = document.createElement(\"script\"); b.type = \"text/javascript\";b.async = true; \nb.src = \"https://snap.licdn.com/li.lms-analytics/insight.min.js\"; s.parentNode.insertBefore(b, s);})(window.lintrk);</script>","<script nonce=\"dm1kd3VmMnZpbWE=\">!function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '1280785792734144'); fbq('track', 'PageView');</script>","<script nonce=\"dm1kd3VmMnZpbWE=\">_linkedin_partner_id = \"3501468\"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id);</script>","<script nonce=\"dm1kd3VmMnZpbWE=\">(function(l) { if (!l){window.lintrk = function(a,b){window.lintrk.q.push([a,b])}; window.lintrk.q=[]} var s = document.getElementsByTagName(\"script\")[0]; var b = document.createElement(\"script\"); b.type = \"text/javascript\";b.async = true; b.src = \"https://snap.licdn.com/li.lms-analytics/insight.min.js\"; s.parentNode.insertBefore(b, s);})(window.lintrk);</script>","<script nonce=\"dm1kd3VmMnZpbWE=\">function initApollo(){var n=Math.random().toString(36).substring(7),o=document.createElement(\"script\"); o.src=\"https://assets.apollo.io/micro/website-tracker/tracker.iife.js?nocache=\"+n,o.async=!0,o.defer=!0, o.onload=function(){window.trackingFunctions.onLoad({appId:\"66185ade46511d01c73477f0\"})}, document.head.appendChild(o)}initApollo();</script>","<script nonce=\"dm1kd3VmMnZpbWE=\">!function(e,r){try{if(e.vector)return void console.log(\"Vector snippet included more than once.\");var t={};t.q=t.q||[];for(var o=[\"load\",\"identify\",\"on\"],n=function(e){return function(){var r=Array.prototype.slice.call(arguments);t.q.push([e,r])}},c=0;c<o.length;c++){var a=o[c];t[a]=n(a)}if(e.vector=t,!t.loaded){var i=r.createElement(\"script\");i.type=\"text/javascript\",i.async=!0,i.src=\"https://cdn.vector.co/pixel.js\";var l=r.getElementsByTagName(\"script\")[0];l.parentNode.insertBefore(i,l),t.loaded=!0}}catch(e){console.error(\"Error loading Vector:\",e)}}(window,document); vector.load(\"6ab6ecb3-724c-49c1-ba70-ddc6c268e21a\");</script>"]