Most construction-related data is publicly available in theory, but difficult to access in practice.Data like building permits unlock information regarding contractor activity, job fees, and project distributions. Census and tax assessor data provides demographics and economic data. Parcel and property data provides the underlying grid for connecting the dots, geo-spatially.Shovels takes all these disparate data streams and brings them into a single platform, making it more accessible than ever.
As data fanatics, we care a lot about data quality and robust pipelines. We’ve built our architecture from the ground up to handle 100s of millions of records at a time, to be ingested, parsed, categorized, enriched, and delivered.We use advanced LLMs that are self-trained to permit data specifically, to ensure that we’re capturing all the varied nuance of permit data across the wide range of permit jurisdictions and requirements.
Data is the easy (once you have it). Insights are the more complicated part that require understanding the data, the market(s) interested in the data, and the knowing which dots to connect where in order to derive them.We’ve never been purely interested in raw data. The key for us is combining multiple data streams, where each source builds upon the others organically. This is no easy task, as there isn’t always an obvious foreign key to join everything together. Nor is it so simple to simply access these data streams. But that’s the hard work you pay us to do for you.This is how we’re able to deliver not just the data, but the insights surrounding it. Data plus insights equals intelligence, and that is the Shovels mission.
We have a lot of good ideas, and therefore a ton of work to do to bring the Shovels platform to the next level.If it’s construction-related, then we’re interested in it. We won’t give away everything now, but stay tuned to our LinkedIn and Blog for those updated when they come.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Shovels Documentation","colors":{"primary":"#01654D","light":"#E8BD51","dark":"#01654D"},"logo":{"light":"https://mintcdn.com/shovelsai/RpZdSdGGx61eI0yq/assets/shovels-logo.png?fit=max\u0026auto=format\u0026n=RpZdSdGGx61eI0yq\u0026q=85\u0026s=4580f7cd0725b33ba31367d40fda3bbf","dark":"https://mintcdn.com/shovelsai/1PwAyN7q-VPDJL6r/assets/shovels-logo-dark.png?fit=max\u0026auto=format\u0026n=1PwAyN7q-VPDJL6r\u0026q=85\u0026s=48cea9b3276127273eefe9d0d6d9b0b8","href":"https://www.shovels.ai"},"favicon":"https://mintcdn.com/shovelsai/RpZdSdGGx61eI0yq/assets/favicon.png?fit=max\u0026auto=format\u0026n=RpZdSdGGx61eI0yq\u0026q=85\u0026s=fd9ec8e38b5dd0ef58cf2d43fdc71ec3","api":{"playground":{"display":"interactive"},"examples":{"languages":["curl","python","java","go","ruby","php"]},"mdx":{"server":"https://api.shovels.ai/v2"}},"background":{"color":{"light":"#fcfbf8","dark":"#101727"}},"navbar":{"links":[{"href":"mailto:support@shovels.ai","label":"Contact Support"}],"primary":{"type":"button","label":"Free Trial","href":"https://app.shovels.ai/login?mode=register"}},"footer":{"socials":{"discord":"https://discord.gg/Nypja3cKDx","github":"https://github.com/shovelsai","linkedin":"https://linkedin.com/company/shovels"}},"seo":{"metatags":{"og:site_name":"Shovels Documentation","og:type":"website","og:image":"https://docs.shovels.ai/assets/shovels-logo.png","twitter:card":"summary_large_image","twitter:site":"@shovelsai"},"indexing":"navigable"},"fonts":{"heading":{"family":"Poppins"},"body":{"family":"IBM Plex Sans"}},"styling":{"codeblocks":{"theme":{"light":"css-variables","dark":"css-variables"}},"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Data Dictionary","icon":"book-open-cover","href":"https://www.shovels.ai/data-dictionary"},{"anchor":"Coverage Dashboard","icon":"map-pin","href":"https://www.shovels.ai/coverage"},{"anchor":"Community","icon":"discord","href":"https://discord.gg/Nypja3cKDx"},{"anchor":"Blog","icon":"newspaper","href":"https://www.shovels.ai/blog/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"shovelsai","hasAudioNarration":false,"actualSubdomain":"shovelsai","customDomains":["docs.shovels.ai"],"gitSource":{"type":"github","owner":"shovelsai","repo":"shovels-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aea230fc4fda768c27b6da4","collectionId":"f6c67a76-3d7c-4c01-a39c-2733ea4aa712","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aea230fc4fda768c27b6da4"},"feedback":{"thumbs":true,"edits":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aea29d548425b5f57ad54d8","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Knowledge Base","count":202},{"language":"default","tag":"API Reference","count":35},{"language":"default","tag":"Endpoints","count":34},{"language":"default","tag":"API Questions","count":30},{"language":"default","tag":"Data \u0026 Coverage","count":28},{"language":"default","tag":"Documentation","count":18},{"language":"default","tag":"Contractors","count":15},{"language":"default","tag":"Permits","count":12},{"language":"default","tag":"API Basics","count":10},{"language":"default","tag":"Shovels CLI","count":10}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"/* cyrillic-ext */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1iIq129k.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1isq129k.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* vietnamese */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1iAq129k.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1iEq129k.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F63fjptAgt5VM-kVkqdyU8n1i8q1w.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3twJwl1FgtIU.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3twJwlRFgtIU.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* vietnamese */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3twJwl9FgtIU.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3twJwl5FgtIU.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3twJwlBFgg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl1FgtIU.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlRFgtIU.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* vietnamese */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl9FgtIU.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3vAOwl5FgtIU.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'IBM Plex Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/ibmplexmono/v20/-F6qfjptAgt5VM-kVkqdyU8n3vAOwlBFgg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n:root{--shovels-ink:#101727;--shovels-ink-body:#1e293e;--shovels-ink-secondary:#6b695c;--shovels-label:#837e6c;--shovels-primary:#01654d;--shovels-emerald-dark-rgb:16 185 129;--shovels-emerald-dark:rgb(var(--shovels-emerald-dark-rgb));--shovels-on-emerald:#0e1420;--shovels-surface:#ffffff;--shovels-panel:#f9f7f1;--shovels-subtle:#f0ecdf;--shovels-rule:#e2dcc9;--shovels-rule-strong:#dad3bd;--shovels-dark-panel:#161d2c;--shovels-dark-subtle:#1a2338;--shovels-dark-rule:#2a3550;--shovels-dark-rule-strong:#33415e;--shovels-dark-ink:#d6d0c1;--shovels-dark-ink-secondary:#948d73;--shovels-dark-success-rgb:110 231 183;--shovels-dark-warning-rgb:233 190 81;--shovels-dark-error-rgb:217 135 98;--shovels-success-fill:#e6f2ee;--shovels-success-line:#c6d7ce;--shovels-success-ink:#014d3a;--shovels-warning-fill:#fdfaf0;--shovels-warning-line:#ecd9a4;--shovels-warning-ink:#7a5b18;--shovels-error-fill:#fdf2ee;--shovels-error-line:#a63d27;--shovels-error-ink:#8a3b28;--shovels-structure:Poppins, ui-sans-serif, system-ui, sans-serif;--shovels-identifier:'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace;--shovels-lift:0 1px 1px rgba(84, 72, 40, 0.04)}:root:not(.dark){--gray-50:250 249 244;--gray-100:244 241 231;--gray-200:233 228 212;--gray-300:216 209 188;--gray-400:148 142 122;--gray-500:121 116 95;--gray-600:107 105 92;--gray-700:30 41 62;--gray-800:23 32 50;--gray-900:16 23 39;--gray-950:10 15 26;--mint-foreground:var(--shovels-ink);--mint-background:transparent;--mint-token-keyword:var(--shovels-primary);--mint-token-function:var(--shovels-primary);--mint-token-string:#874d33;--mint-token-string-expression:#874d33;--mint-token-constant:#765817;--mint-token-parameter:#55622f;--mint-token-punctuation:#6b6652;--mint-token-comment:#6c6753;--mint-token-link:var(--shovels-primary)}#content-area table th,#sidebar .sidebar-title,.eyebrow{font-family:var(--shovels-structure);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;line-height:1.4}:root:not(.dark) .eyebrow{color:var(--shovels-primary)}:root:not(.dark) #content-area table th,:root:not(.dark) #sidebar .sidebar-title{color:var(--shovels-ink-secondary)}:root.dark #content-area table th{color:var(--shovels-dark-ink-secondary)}#content-area .prose:not(.text-sm){font-size:15px;line-height:1.65}#content-area h1,#content-area h2,#content-area h3,#content-area h4{font-weight:600;letter-spacing:-.02em}:root{--font-paper-mono:var(--shovels-identifier)}code,kbd,pre,samp{font-family:var(--shovels-identifier)}:root:not(.dark) #content-area :not(pre)>code{color:var(--shovels-ink);background:var(--shovels-subtle);border:1px solid var(--shovels-rule)}:root.dark #content-area :not(pre)>code{color:var(--shovels-dark-ink);background:var(--shovels-dark-subtle);border:1px solid var(--shovels-dark-rule)}:root.dark{--mint-foreground:var(--shovels-dark-ink);--mint-background:transparent;--mint-token-keyword:var(--shovels-emerald-dark);--mint-token-function:var(--shovels-emerald-dark);--mint-token-string:#d98762;--mint-token-string-expression:#d98762;--mint-token-constant:#ba974a;--mint-token-parameter:#90a653;--mint-token-punctuation:var(--shovels-dark-ink-secondary);--mint-token-comment:#8c8670;--mint-token-link:var(--shovels-emerald-dark)}span[style*=\"--mint-token-function\"],span[style*=\"--mint-token-keyword\"]{font-weight:500;--shiki-dark-font-weight:500}#sidebar .sidebar-group a{font-family:var(--shovels-structure)}:root:not(.dark) #assistant-entry,:root:not(.dark) #search-bar-entry{background:var(--shovels-subtle);border:1px solid var(--shovels-rule)}:root:not(.dark) #assistant-entry *,:root:not(.dark) #search-bar-entry *{color:var(--shovels-ink-secondary)}:root.dark #assistant-entry,:root.dark #search-bar-entry{background:var(--shovels-dark-subtle);border:1px solid var(--shovels-dark-rule)}:root.dark #assistant-entry *,:root.dark #search-bar-entry *{color:var(--shovels-dark-ink-secondary)}#content-area .callout,#content-area .card{border-radius:10px}:root:not(.dark) #content-area .card{background:var(--shovels-surface);border-color:var(--shovels-rule);box-shadow:var(--shovels-lift)}#content-area table td{font-size:13px}#content-area table th{padding-top:8px;padding-bottom:8px;vertical-align:middle}#content-area details table td{overflow-wrap:anywhere}#content-area details table td:first-child{font-family:var(--shovels-identifier);font-weight:500}:root:not(.dark) #content-area table th{background:var(--shovels-subtle);border-bottom:1px solid var(--shovels-rule-strong)}:root:not(.dark) #content-area table td{border-bottom:1px solid var(--shovels-rule)}:root.dark #content-area table th{background:var(--shovels-dark-subtle);border-bottom:1px solid var(--shovels-dark-rule-strong)}:root.dark #content-area table td{border-bottom:1px solid var(--shovels-dark-rule)}:root:not(.dark) #content-area .callout[class*=bg-neutral-]{background:var(--shovels-panel);border-color:var(--shovels-rule)}:root:not(.dark) #content-area .callout[class*=bg-neutral-] svg{color:var(--shovels-label)}:root:not(.dark) #content-area .callout[class*=bg-blue-]{background:var(--shovels-subtle);border-color:var(--shovels-rule-strong)}:root:not(.dark) #content-area .callout[class*=bg-blue-] svg{color:var(--shovels-ink-secondary)}:root:not(.dark) #content-area .callout[class*=bg-green-]{background:var(--shovels-success-fill);border-color:var(--shovels-success-line)}:root:not(.dark) #content-area .callout[class*=bg-green-] svg{color:var(--shovels-primary)}:root:not(.dark) #content-area .callout[class*=bg-yellow-]{background:var(--shovels-warning-fill);border-color:var(--shovels-warning-line)}:root:not(.dark) #content-area .callout[class*=bg-yellow-] svg{color:var(--shovels-warning-ink)}:root:not(.dark) #content-area .callout[class*=bg-red-]{background:var(--shovels-error-fill);border-color:var(--shovels-error-line)}:root:not(.dark) #content-area .callout[class*=bg-red-] svg{color:var(--shovels-error-line)}:root:not(.dark) #content-area .callout[class*=bg-blue-] .prose,:root:not(.dark) #content-area .callout[class*=bg-neutral-] .prose{color:var(--shovels-ink-body)}:root:not(.dark) #content-area .callout[class*=bg-green-] .prose{color:var(--shovels-success-ink)}:root:not(.dark) #content-area .callout[class*=bg-yellow-] .prose{color:var(--shovels-warning-ink)}:root:not(.dark) #content-area .callout[class*=bg-red-] .prose{color:var(--shovels-error-ink)}:root.dark #content-area .callout[class*=bg-neutral-]{background:var(--shovels-dark-panel);border-color:var(--shovels-dark-rule)}:root.dark #content-area .callout[class*=bg-blue-] svg,:root.dark #content-area .callout[class*=bg-neutral-] svg{color:var(--shovels-dark-ink-secondary)}:root.dark #content-area .callout[class*=bg-blue-]{background:var(--shovels-dark-subtle);border-color:var(--shovels-dark-rule-strong)}:root.dark #content-area .callout[class*=bg-green-]{background:rgb(var(--shovels-dark-success-rgb)/.12);border-color:rgb(var(--shovels-dark-success-rgb)/.3)}:root.dark #content-area .callout[class*=bg-green-] svg{color:rgb(var(--shovels-dark-success-rgb))}:root.dark #content-area .callout[class*=bg-yellow-]{background:rgb(var(--shovels-dark-warning-rgb)/.12);border-color:rgb(var(--shovels-dark-warning-rgb)/.3)}:root.dark #content-area .callout[class*=bg-yellow-] svg{color:rgb(var(--shovels-dark-warning-rgb))}:root.dark #content-area .callout[class*=bg-red-]{background:rgb(var(--shovels-dark-error-rgb)/.12);border-color:rgb(var(--shovels-dark-error-rgb)/.3)}:root.dark #content-area .callout[class*=bg-red-] svg{color:rgb(var(--shovels-dark-error-rgb))}:root.dark #content-area .callout[class*=bg-blue-] .prose,:root.dark #content-area .callout[class*=bg-neutral-] .prose{color:var(--shovels-dark-ink)}:root.dark #content-area .callout[class*=bg-green-] .prose{color:rgb(var(--shovels-dark-success-rgb))}:root.dark #content-area .callout[class*=bg-yellow-] .prose{color:rgb(var(--shovels-dark-warning-rgb))}:root.dark #content-area .callout[class*=bg-red-] .prose{color:rgb(var(--shovels-dark-error-rgb))}:root:not(.dark){--accordion-background-color:var(--shovels-panel);--accordion-background-hover:var(--shovels-subtle);--accordion-icon-color:var(--shovels-label)}:root:not(.dark) .method-nav-pill [class*=\"2AB673\"],:root:not(.dark) .tryit-button[class*=\"2AB673\"]{background-color:var(--shovels-primary)}:root:not(.dark) .method-nav-pill [class*=bg-green-],:root:not(.dark) .method-pill[class*=bg-green-]{background-color:var(--shovels-success-fill);color:var(--shovels-primary)}:root.dark .method-nav-pill [class*=\"2AB673\"],:root.dark .tryit-button[class*=\"2AB673\"]{background-color:var(--shovels-emerald-dark);color:var(--shovels-on-emerald)}:root.dark .method-nav-pill [class*=bg-green-],:root.dark .method-pill[class*=bg-green-]{background-color:rgb(var(--shovels-emerald-dark-rgb)/.18);color:var(--shovels-emerald-dark)}:root.dark [class*=bg-primary-dark]{background-color:var(--shovels-emerald-dark)}:root.dark #topbar-cta-button,:root.dark #topbar-cta-button *{color:var(--shovels-on-emerald)}:root:not(.dark) #content-area [class*=bg-red-100]{background-color:var(--shovels-warning-fill);color:var(--shovels-warning-ink);box-shadow:inset 0 0 0 1px var(--shovels-warning-line)}:root.dark #content-area [class*=bg-red-100]{background-color:rgb(var(--shovels-dark-warning-rgb)/.12);color:rgb(var(--shovels-dark-warning-rgb));box-shadow:inset 0 0 0 1px rgb(var(--shovels-dark-warning-rgb)/.3)}"}],"page":{"pagePath":"docs/foundations-data-philosophy","slug":"/docs/foundations-data-philosophy","pageMetadata":{"title":"Data Philosophy","description":"Gain insights into how the Shovels team approaches the data in our platform.","href":"/docs/foundations-data-philosophy"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Gain insights into how the Shovels team approaches the data in our platform.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,em:`em`,p:`p`,..._provideComponents(),...props.components},{Heading}=_components;if(!Heading)_missingMdxReference(`Heading`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`the-shovels-mission`,children:`The Shovels Mission`}),`\n`,_jsx(_components.p,{children:`Most construction-related data is publicly available in theory, but difficult to access in practice.`}),`\n`,_jsx(_components.p,{children:`Data like building permits unlock information regarding contractor activity, job fees, and project distributions. Census and tax assessor data provides demographics and economic data. Parcel and property data provides the underlying grid for connecting the dots, geo-spatially.`}),`\n`,_jsx(_components.p,{children:`Shovels takes all these disparate data streams and brings them into a single platform, making it more accessible than ever.`}),`\n`,_jsx(Heading,{level:`2`,id:`data-practices`,children:`Data Practices`}),`\n`,_jsxs(_components.p,{children:[`As data fanatics, we care `,_jsx(_components.em,{children:`a lot`}),` about data quality and robust pipelines. We’ve built our architecture from the ground up to handle 100s of millions of records at a time, to be ingested, parsed, categorized, enriched, and delivered.`]}),`\n`,_jsx(_components.p,{children:`We use advanced LLMs that are self-trained to permit data specifically, to ensure that we’re capturing all the varied nuance of permit data across the wide range of permit jurisdictions and requirements.`}),`\n`,_jsx(Heading,{level:`2`,id:`data-vs-insights`,children:`Data vs Insights`}),`\n`,_jsx(_components.p,{children:`Data is the easy (once you have it). Insights are the more complicated part that require understanding the data, the market(s) interested in the data, and the knowing which dots to connect where in order to derive them.`}),`\n`,_jsx(_components.p,{children:`We’ve never been purely interested in raw data. The key for us is combining multiple data streams, where each source builds upon the others organically. This is no easy task, as there isn’t always an obvious foreign key to join everything together. Nor is it so simple to simply access these data streams. But that’s the hard work you pay us to do for you.`}),`\n`,_jsx(_components.p,{children:`This is how we’re able to deliver not just the data, but the insights surrounding it. Data plus insights equals intelligence, and that is the Shovels mission.`}),`\n`,_jsx(Heading,{level:`2`,id:`what’s-next`,children:`What’s Next?`}),`\n`,_jsx(_components.p,{children:`We have a lot of good ideas, and therefore a ton of work to do to bring the Shovels platform to the next level.`}),`\n`,_jsxs(_components.p,{children:[`If it’s construction-related, then we’re interested in it. We won’t give away everything now, but stay tuned to our `,_jsx(_components.a,{href:`https://www.linkedin.com/company/shovels`,children:`LinkedIn`}),` and `,_jsx(_components.a,{href:`https://shovels.ai/blog`,children:`Blog`}),` for those updated when they come.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"codeStyling":{"theme":{"light":"css-variables","dark":"css-variables"}},"config":{},"pageMetadata":{"title":"Data Philosophy","description":"Gain insights into how the Shovels team approaches the data in our platform.","href":"/docs/foundations-data-philosophy"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"The Shovels Mission","slug":"the-shovels-mission","depth":2,"children":[]},{"title":"Data Practices","slug":"data-practices","depth":2,"children":[]},{"title":"Data vs Insights","slug":"data-vs-insights","depth":2,"children":[]},{"title":"What’s Next?","slug":"what’s-next","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"shovelsai","siteName":"Shovels Documentation","title":"Data Philosophy - Shovels Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2025-11-02T01:27:09.054Z","originalFileLocation":"docs/foundations-data-philosophy.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Gain insights into how the Shovels team approaches the data in our platform.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Shovels Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Data Philosophy - Shovels Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Gain insights into how the Shovels team approaches the data in our platform.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Shovels Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.shovels.ai/docs/foundations-data-philosophy\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://docs.shovels.ai/assets/shovels-logo.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Data Philosophy - Shovels Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Gain insights into how the Shovels team approaches the data in our platform.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://docs.shovels.ai/assets/shovels-logo.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/shovelsai/0tzx6OgdpifPiQBm/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Shovels Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#01654D\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.shovels.ai/docs/foundations-data-philosophy\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/foundations-data-philosophy.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.shovels.ai/#organization\",\"name\":\"Shovels Documentation\",\"url\":\"https://docs.shovels.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/shovelsai/RpZdSdGGx61eI0yq/assets/shovels-logo.png?fit=max\u0026auto=format\u0026n=RpZdSdGGx61eI0yq\u0026q=85\u0026s=4580f7cd0725b33ba31367d40fda3bbf\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.shovels.ai#website\",\"name\":\"Shovels Documentation\",\"url\":\"https://docs.shovels.ai\",\"publisher\":{\"@id\":\"https://docs.shovels.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.shovels.ai/docs/foundations-data-philosophy#webpage\",\"url\":\"https://docs.shovels.ai/docs/foundations-data-philosophy\",\"name\":\"Data Philosophy\",\"description\":\"Gain insights into how the Shovels team approaches the data in our platform.\",\"dateModified\":\"2025-11-02T01:27:09.054Z\",\"isPartOf\":{\"@id\":\"https://docs.shovels.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.shovels.ai/docs/foundations-data-philosophy#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.shovels.ai/docs/foundations-data-philosophy#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Shovels Foundations\",\"item\":\"https://docs.shovels.ai/docs/foundations-building-blocks\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Data Philosophy\",\"item\":\"https://docs.shovels.ai/docs/foundations-data-philosophy\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.shovels.ai/docs/foundations-data-philosophy#article\",\"headline\":\"Data Philosophy\",\"name\":\"Data Philosophy\",\"description\":\"Gain insights into how the Shovels team approaches the data in our platform.\",\"url\":\"https://docs.shovels.ai/docs/foundations-data-philosophy\",\"mainEntityOfPage\":{\"@id\":\"https://docs.shovels.ai/docs/foundations-data-philosophy#webpage\"},\"image\":\"https://docs.shovels.ai/assets/shovels-logo.png\",\"dateModified\":\"2025-11-02T01:27:09.054Z\",\"publisher\":{\"@id\":\"https://docs.shovels.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.shovels.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Shovels Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Shovels Documentation","nav":{"global":{"anchors":[{"anchor":"Data Dictionary","icon":"book-open-cover","href":"https://www.shovels.ai/data-dictionary"},{"anchor":"Coverage Dashboard","icon":"map-pin","href":"https://www.shovels.ai/coverage"},{"anchor":"Community","icon":"discord","href":"https://discord.gg/Nypja3cKDx"},{"anchor":"Blog","icon":"newspaper","href":"https://www.shovels.ai/blog/"}]},"tabs":[{"tab":"Documentation","groups":[{"group":"Overview","pages":[{"title":"Welcome to Shovels","href":"/docs/introduction"}]},{"group":"Shovels Online","pages":[{"title":"Shovels Online Quickstart Guide","href":"/docs/shovels-online-quickstart-guide"}]},{"group":"Shovels API","pages":[{"title":"Introducing the Shovels API","href":"/docs/shovels-api-introduction"}]},{"group":"Shovels CLI","pages":[{"title":"Shovels CLI Quickstart Guide","href":"/docs/shovels-cli-quickstart"}]},{"group":"Shovels for Google Sheets","pages":[{"title":"Shovels for Google Sheets Quickstart Guide","href":"/docs/shovels-sheets-quickstart"}]},{"group":"Tutorials","pages":[{"group":"Shovels Online","pages":[{"title":"Building an Accurate Contractor Search","href":"/docs/tutorial-online-contractor-search"}]},{"group":"Shovels CLI","pages":[{"title":"Building a Contractor Pipeline with the CLI","href":"/docs/tutorial-cli-contractor-pipeline"}]},{"group":"Shovels API","pages":[{"title":"Retrieving Permit History for an Address","href":"/docs/tutorial-api-address-permit-history"}]}]},{"group":"Troubleshooting","pages":[{"title":"FAQ","href":"/docs/shovels-faq"},{"title":"Shovels Online Troubleshooting","href":"/docs/shovels-online-troubleshooting"},{"title":"Shovels API Troubleshooting","href":"/docs/shovels-api-troubleshooting"}]},{"group":"Platform Reference","pages":[{"group":"Data Dictionaries","pages":[{"title":"Overview","href":"/docs/data-dictionary-index"},{"title":"Online","href":"/docs/data-dictionary-online"},{"title":"API","href":"/docs/data-dictionary-api"},{"title":"Enterprise Data License","mode":"wide","href":"/docs/data-dictionary-edl"}]}]},{"group":"Shovels Foundations","pages":[{"title":"Building Blocks","description":"Understanding the key data components that make up the Shovels platform.","href":"/docs/foundations-building-blocks"},{"title":"Data Philosophy","href":"/docs/foundations-data-philosophy"},{"title":"Permit Availability","description":"Introduction to US permit availability and variation across 20k+ jurisdictions.","href":"/docs/foundations-understanding-permits"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/docs/api-reference-about"}]},{"tab":"Release Notes","pages":[{"title":"Release Notes","href":"/release-notes/release-notes"}]},{"tab":"Knowledge Base","pages":[{"title":"Knowledge Base","href":"/docs/knowledge-base"}]}]},"basePath":"","title":"Data Philosophy - Shovels Documentation","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":[],"chunks":[]}