[{"data":1,"prerenderedAt":261},["ShallowReactive",2],{"i-custom:social-instagram":3,"i-custom:social-tiktok":8,"i-custom:social-linkedin":10,"\u002Fdocs\u002Fmigrate":12,"docs-navigation":238,"\u002Fdocs\u002Fmigrate-surround":257},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,33,false,"\u003Cg fill=\"none\">\u003Cg id=\"Inst\">\n\u003Cpath id=\"Vector\" d=\"M22.519 3.0918H10.519C8.66314 3.09378 6.88381 3.83192 5.57149 5.14424C4.25916 6.45657 3.52103 8.23589 3.51904 10.0918V22.0918C3.52103 23.9477 4.25916 25.727 5.57149 27.0394C6.88381 28.3517 8.66314 29.0898 10.519 29.0918H22.519C24.3749 29.0898 26.1543 28.3517 27.4666 27.0394C28.7789 25.727 29.5171 23.9477 29.519 22.0918V10.0918C29.5171 8.23589 28.7789 6.45657 27.4666 5.14424C26.1543 3.83192 24.3749 3.09378 22.519 3.0918ZM16.519 22.0918C15.3324 22.0918 14.1723 21.7399 13.1856 21.0806C12.1989 20.4213 11.4299 19.4843 10.9758 18.3879C10.5216 17.2915 10.4028 16.0851 10.6343 14.9213C10.8658 13.7574 11.4373 12.6883 12.2764 11.8492C13.1155 11.01 14.1846 10.4386 15.3485 10.2071C16.5124 9.97557 17.7188 10.0944 18.8151 10.5485C19.9115 11.0026 20.8486 11.7717 21.5079 12.7584C22.1671 13.7451 22.519 14.9051 22.519 16.0918C22.5174 17.6826 21.8847 19.2078 20.7599 20.3326C19.635 21.4575 18.1098 22.0901 16.519 22.0918ZM24.019 10.0918C23.7224 10.0918 23.4324 10.0038 23.1857 9.839C22.939 9.67418 22.7468 9.43991 22.6332 9.16582C22.5197 8.89173 22.49 8.59013 22.5479 8.29916C22.6057 8.00819 22.7486 7.74092 22.9584 7.53114C23.1682 7.32136 23.4354 7.1785 23.7264 7.12062C24.0174 7.06274 24.319 7.09245 24.5931 7.20598C24.8672 7.31951 25.1014 7.51177 25.2662 7.75844C25.4311 8.00512 25.519 8.29513 25.519 8.5918C25.519 8.98962 25.361 9.37115 25.0797 9.65246C24.7984 9.93376 24.4169 10.0918 24.019 10.0918ZM20.519 16.0918C20.519 16.8829 20.2844 17.6563 19.8449 18.3141C19.4054 18.9719 18.7807 19.4846 18.0498 19.7873C17.3189 20.0901 16.5146 20.1693 15.7387 20.0149C14.9628 19.8606 14.25 19.4796 13.6906 18.9202C13.1312 18.3608 12.7502 17.6481 12.5959 16.8722C12.4416 16.0962 12.5208 15.292 12.8235 14.5611C13.1263 13.8302 13.639 13.2054 14.2968 12.7659C14.9546 12.3264 15.7279 12.0918 16.519 12.0918C17.5799 12.0918 18.5973 12.5132 19.3475 13.2634C20.0976 14.0135 20.519 15.0309 20.519 16.0918Z\" fill=\"currentColor\"\u002F>\n\u003C\u002Fg>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":9},"\u003Cg fill=\"none\">\u003Cg id=\"TikTok\">\n\u003Cpath id=\"Vector\" d=\"M29.519 10.0918V15.0918C29.519 15.357 29.4137 15.6114 29.2262 15.7989C29.0386 15.9864 28.7843 16.0918 28.519 16.0918C26.4301 16.0966 24.3711 15.5944 22.519 14.628V19.5918C22.519 22.1114 21.5182 24.5277 19.7366 26.3093C17.955 28.0909 15.5386 29.0918 13.019 29.0918C10.4995 29.0918 8.08312 28.0909 6.30153 26.3093C4.51993 24.5277 3.51904 22.1114 3.51904 19.5918C3.51904 14.9793 6.88279 10.9018 11.344 10.1068C11.488 10.0812 11.6357 10.0875 11.777 10.1252C11.9182 10.1629 12.0494 10.2311 12.1615 10.325C12.2735 10.4189 12.3636 10.5363 12.4253 10.6687C12.4871 10.8012 12.5191 10.9456 12.519 11.0918V16.428C12.5191 16.6173 12.4655 16.8027 12.3643 16.9627C12.2632 17.1227 12.1188 17.2507 11.9478 17.3318C11.5436 17.5235 11.1982 17.8201 10.9477 18.1908C10.6972 18.5614 10.5508 18.9925 10.5236 19.439C10.4965 19.8856 10.5897 20.3312 10.7935 20.7294C10.9972 21.1277 11.3042 21.464 11.6822 21.7032C12.0602 21.9424 12.4955 22.0758 12.9426 22.0895C13.3898 22.1032 13.8324 21.9966 14.2243 21.7809C14.6163 21.5653 14.9431 21.2484 15.1709 20.8633C15.3986 20.4783 15.5188 20.0392 15.519 19.5918V3.0918C15.519 2.82658 15.6244 2.57223 15.8119 2.38469C15.9995 2.19715 16.2538 2.0918 16.519 2.0918H21.519C21.7843 2.0918 22.0386 2.19715 22.2262 2.38469C22.4137 2.57223 22.519 2.82658 22.519 3.0918C22.5207 4.68259 23.1534 6.20775 24.2782 7.33261C25.4031 8.45747 26.9283 9.09014 28.519 9.0918C28.7843 9.0918 29.0386 9.19715 29.2262 9.38469C29.4137 9.57223 29.519 9.82658 29.519 10.0918Z\" fill=\"currentColor\"\u002F>\n\u003C\u002Fg>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":11},"\u003Cg fill=\"none\">\u003Cg id=\"Linkedin\">\n\u003Cpath id=\"Vector\" d=\"M27.519 2.95508H5.51904C4.98861 2.95508 4.4799 3.16579 4.10483 3.54086C3.72976 3.91594 3.51904 4.42465 3.51904 4.95508V26.9551C3.51904 27.4855 3.72976 27.9942 4.10483 28.3693C4.4799 28.7444 4.98861 28.9551 5.51904 28.9551H27.519C28.0495 28.9551 28.5582 28.7444 28.9333 28.3693C29.3083 27.9942 29.519 27.4855 29.519 26.9551V4.95508C29.519 4.42465 29.3083 3.91594 28.9333 3.54086C28.5582 3.16579 28.0495 2.95508 27.519 2.95508ZM12.519 21.9551C12.519 22.2203 12.4137 22.4746 12.2261 22.6622C12.0386 22.8497 11.7843 22.9551 11.519 22.9551C11.2538 22.9551 10.9995 22.8497 10.8119 22.6622C10.6244 22.4746 10.519 22.2203 10.519 21.9551V13.9551C10.519 13.6899 10.6244 13.4355 10.8119 13.248C10.9995 13.0604 11.2538 12.9551 11.519 12.9551C11.7843 12.9551 12.0386 13.0604 12.2261 13.248C12.4137 13.4355 12.519 13.6899 12.519 13.9551V21.9551ZM11.519 11.9551C11.2224 11.9551 10.9324 11.8671 10.6857 11.7023C10.439 11.5375 10.2468 11.3032 10.1332 11.0291C10.0197 10.755 9.98999 10.4534 10.0479 10.1624C10.1057 9.87147 10.2486 9.6042 10.4584 9.39442C10.6682 9.18464 10.9354 9.04178 11.2264 8.9839C11.5174 8.92602 11.819 8.95573 12.0931 9.06926C12.3672 9.18279 12.6014 9.37505 12.7662 9.62172C12.9311 9.8684 13.019 10.1584 13.019 10.4551C13.019 10.8529 12.861 11.2344 12.5797 11.5157C12.2984 11.797 11.9169 11.9551 11.519 11.9551ZM23.519 21.9551C23.519 22.2203 23.4137 22.4746 23.2262 22.6622C23.0386 22.8497 22.7843 22.9551 22.519 22.9551C22.2538 22.9551 21.9995 22.8497 21.8119 22.6622C21.6244 22.4746 21.519 22.2203 21.519 21.9551V17.4551C21.519 16.792 21.2557 16.1562 20.7868 15.6873C20.318 15.2185 19.6821 14.9551 19.019 14.9551C18.356 14.9551 17.7201 15.2185 17.2513 15.6873C16.7824 16.1562 16.519 16.792 16.519 17.4551V21.9551C16.519 22.2203 16.4137 22.4746 16.2261 22.6622C16.0386 22.8497 15.7843 22.9551 15.519 22.9551C15.2538 22.9551 14.9995 22.8497 14.8119 22.6622C14.6244 22.4746 14.519 22.2203 14.519 21.9551V13.9551C14.5203 13.7101 14.6114 13.4742 14.7751 13.2919C14.9387 13.1097 15.1636 12.9939 15.407 12.9664C15.6504 12.939 15.8954 13.0019 16.0956 13.1431C16.2957 13.2843 16.4371 13.4941 16.4928 13.7326C17.1693 13.2737 17.958 13.0077 18.7742 12.9632C19.5905 12.9188 20.4034 13.0975 21.1257 13.4802C21.8481 13.8628 22.4525 14.4351 22.8742 15.1354C23.2958 15.8357 23.5188 16.6376 23.519 17.4551V21.9551Z\" fill=\"currentColor\"\u002F>\n\u003C\u002Fg>\u003C\u002Fg>",{"id":13,"title":14,"body":15,"description":229,"extension":230,"meta":231,"navigation":232,"path":234,"seo":235,"stem":236,"__hash__":237},"docs\u002Fdocs\u002F4.migrate.md","Migrate from another provider",{"type":16,"value":17,"toc":222},"minimark",[18,22,46,49,52,57,142,146,149,153],[19,20,21],"p",{},"Each prompt below asks a coding assistant (Claude Code, Cursor, Copilot…) to move the parts of your project that use one provider to the TopoExport APIs. It is written to be conservative:",[23,24,25,29,37,40,43],"ul",{},[26,27,28],"li",{},"the assistant first lists every use of the provider in your code and shows it to you;",[26,30,31,32,36],{},"it replaces only the calls listed as equivalent, and leaves everything else in place with a ",[33,34,35],"code",{},"TODO(topoexport-migration)"," comment;",[26,38,39],{},"the key goes into an environment variable, and the required attribution stays visible;",[26,41,42],{},"it reports the differences in behaviour (address guard, credits, rate limits, response format) and proposes tests;",[26,44,45],{},"it removes no package, key or account: you decide once the migration is verified.",[19,47,48],{},"Read a prompt before using it, then paste it at the root of your project.",[50,51],"docs-migration-prompts",{},[53,54,56],"h2",{"id":55},"what-has-an-equivalent","What has an equivalent",[58,59,60,73],"table",{},[61,62,63],"thead",{},[64,65,66,70],"tr",{},[67,68,69],"th",{},"Need",[67,71,72],{},"TopoExport",[74,75,76,93,104,118,128],"tbody",{},[64,77,78,82],{},[79,80,81],"td",{},"Vector basemap style for MapLibre GL JS or Mapbox GL JS",[79,83,84,87,88],{},[33,85,86],{},"\u002Fv1\u002Fstyles\u002Fosm-world\u002F{flavor}.json",", see ",[89,90,92],"a",{"href":91},"\u002Fdocs\u002Fmaps#styles","Map tiles",[64,94,95,98],{},[79,96,97],{},"Address and place autocomplete",[79,99,100,103],{},[33,101,102],{},"\u002Fv1\u002Fgeocode\u002Fautocomplete",", coordinates included in each suggestion",[64,105,106,109],{},[79,107,108],{},"Forward geocoding",[79,110,111,114,115],{},[33,112,113],{},"\u002Fv1\u002Fgeocode\u002Fsearch",", ",[33,116,117],{},"\u002Fv1\u002Fgeocode\u002Fstructured",[64,119,120,123],{},[79,121,122],{},"Reverse geocoding",[79,124,125],{},[33,126,127],{},"\u002Fv1\u002Fgeocode\u002Freverse",[64,129,130,133],{},[79,131,132],{},"Details of a result by identifier",[79,134,135,138,139],{},[33,136,137],{},"\u002Fv1\u002Fgeocode\u002Fplace?ids="," with the result's ",[33,140,141],{},"gid",[53,143,145],{"id":144},"what-has-no-equivalent","What has no equivalent",[19,147,148],{},"Routing and directions, isochrones and matrices, satellite imagery, raster basemap tiles, static map images, Street View, place photos, reviews and opening hours, and the providers' ready-made search widgets. The prompts leave these untouched and list them in their report.",[53,150,152],{"id":151},"differences-to-plan-for","Differences to plan for",[23,154,155,173,191,206],{},[26,156,157,161,162,168,169,172],{},[158,159,160],"strong",{},"Map schema."," The TopoExport basemap uses the ",[89,163,167],{"href":164,"rel":165},"https:\u002F\u002Fdocs.protomaps.com\u002Fbasemaps\u002Flayers",[166],"nofollow","Protomaps v4 schema",". Layers you added on top of a Mapbox Streets or OpenMapTiles basemap reference other ",[33,170,171],{},"source-layer"," names and must be rewritten by hand.",[26,174,175,178,179,182,183,186,187,190],{},[158,176,177],{},"Geocoding format."," Responses are Pelias GeoJSON: ",[33,180,181],{},"[lon, lat]"," coordinates, ",[33,184,185],{},"properties.label"," for display, ",[33,188,189],{},"properties.gid"," as identifier. Identifiers from another provider cannot be converted.",[26,192,193,196,197,200,201,205],{},[158,194,195],{},"Address guard."," Autocomplete searches the ",[33,198,199],{},"address"," layer from ",[202,203],"docs-value",{"name":204},"addressGuardMinChars"," characters, or as soon as the text contains a digit.",[26,207,208,211,212,216,217,221],{},[158,209,210],{},"Credits and limits."," See ",[89,213,215],{"href":214},"\u002Fdocs#plans-and-credits","Plans and credits"," and ",[89,218,220],{"href":219},"\u002Fdocs#rate-limits","Rate limits",".",{"title":223,"searchDepth":224,"depth":224,"links":225},"",2,[226,227,228],{"id":55,"depth":224,"text":56},{"id":144,"depth":224,"text":145},{"id":151,"depth":224,"text":152},"Prompts for coding assistants that move a project from Mapbox, MapTiler, Stadia Maps or Google Maps Platform to the TopoExport APIs, where an equivalent exists.","md",{},{"title":233},"Migration prompts","\u002Fdocs\u002Fmigrate",{"title":14,"description":229},"docs\u002F4.migrate","-oM62Y0WkL_jd_Qj5v4l4Re-A95euXnPNE0krN9Sctw",[239],{"title":240,"path":241,"stem":242,"children":243},"Getting started","\u002Fdocs","docs\u002F0.index",[244,245,248,252,256],{"title":240,"path":241,"stem":242},{"title":92,"path":246,"stem":247},"\u002Fdocs\u002Fmaps","docs\u002F1.maps",{"title":249,"path":250,"stem":251},"Geocoding","\u002Fdocs\u002Fgeocoding","docs\u002F2.geocoding",{"title":253,"path":254,"stem":255},"Export API","\u002Fdocs\u002Fexport-api","docs\u002F3.export-api",{"title":233,"path":234,"stem":236},[258,260],{"title":253,"path":254,"stem":255,"description":259,"children":-1},"Find the best official dataset for a location, then download its features over a bounding box as GeoJSON, glTF, OBJ, GeoTIFF or PNG.",null,1792558216225]