[{"data":1,"prerenderedAt":464},["ShallowReactive",2],{"blog-\u002Fblog\u002Fcustom-markers-in-static-map-images\u002F":3,"related-blog-\u002Fblog\u002Fcustom-markers-in-static-map-images\u002F":435},{"id":4,"title":5,"abstract":6,"author":6,"body":7,"description":420,"excerpt":6,"extension":421,"head":6,"image":6,"keywords":422,"meta":427,"modified":6,"navigation":428,"path":429,"proficiencyLevel":6,"published":430,"rawbody":431,"schemaOrg":6,"schemaType":6,"seo":432,"stem":433,"__hash__":434},"blog\u002Fblog\u002Fcustom-markers-in-static-map-images.md","Custom markers and POST support for Static Maps",null,{"type":8,"value":9,"toc":414},"minimark",[10,14,18,23,26,29,32,39,43,46,55,58,61,383,387,390,394,410],[11,12,5],"h1",{"id":13},"custom-markers-and-post-support-for-static-maps",[15,16,17],"p",{},"Static Maps are the fastest ways to add maps to your website or app.\nSince each map is a single PNG or JPEG,\nthey are a lot easier to set up than interactive maps.\nYou can even add markers and lines to static maps—our servers handle the hard work.",[19,20,22],"h2",{"id":21},"custom-marker-images","Custom marker images",[15,24,25],{},"Today you can add markers to a static map by including the coordinates in your request.\nWe’ll automatically select a suitable image based on the map style.\nYou can also use a labeled marker with a classic solid design for differentiation.",[15,27,28],{},"Today, we’re letting you go even further with branding and improved differentiation.\nJust send us the image URL in your request to customize the marker image!\nThis feature is now available on all plans that have access to static maps\n(including free trials).",[15,30,31],{},"We’re launching with support for up to 5 custom marker images per request,\ngiving you plenty of flexibility.\nAnd the images can be up to 128px in each dimension,\nso your carefully designed icons will look great on retina and other HiDPI screens.",[15,33,34],{},[35,36],"img",{"alt":37,"src":38},"Static Map","https:\u002F\u002Ftiles.stadiamaps.com\u002Fstatic\u002Falidade_smooth.png?center=59.438484,24.742595&zoom=14&l=oj_kpBkhmen@vFvDlStSdIzN%60BxCfMfShA%60B~@%7CAvCrDpG%60FfVfRb%5CzSrBdBhZx%5CpFdM~BpFn@zAxCrHrH%7CQjOh_@NtM%7CVv@d@aHdHEfD%5E%5CDhCh@nIjFlFvE~CfCzAzAdFjFt@t@~EdG%5DcEc@%7BFm@uF%5DoDgAwJhAm@vMqGoAs%7B@dAMfG_@dE_@Ezb@ExWzBBZ?L@%7CDnTtAqE~CyMp@sB%7C@n@XUx@uBjAiApBi@lBp@hAtAzAClSjJzAkMtAl@dA%7D@~CVbB%60@pDtAN%7DDxD%60AdFi@vBIxBIe@aMuAgPyFwy@%7BCa_@yFar@%5B%7BC_AsGuAkGqEgY_CmLqAuFuHi%5Bm@vBq@hC,333333,5&m=59.436884,24.742595,,,C&m=59.437485,24.743150,,,B&m=59.434931,24.745442,,,D&m=59.441293,24.747380,custom:https%3A%2F%2Fdocs.stadiamaps.com%2Fimg%2Fleaf-green.png,,,,-32,-95&markers=59.435561,24.747605,,red,E&size=600x400@2x",[19,40,42],{"id":41},"make-complex-requests-with-ease","Make complex requests with ease",[15,44,45],{},"Before today, the Static Maps API was configurable\nvia query string parameters.\nWe occasionally heard from customers having issues though,\nbecause web browsers and servers place limits on URL length.\nThis limited the level of detail and customization.",[15,47,48,49,54],{},"That’s why we’re now accepting POST requests\nto the ",[50,51,53],"a",{"href":52},"\u002Fblog\u002Fannouncing-cacheable-static-map-images\u002F","cacheable static maps endpoint",".\nPOST parameters are sent via a JSON body,\nmaking it easier to specify complex requests.\nAnd when we add new features—like polygons —\nyou won’t have to worry about URL length.",[15,56,57],{},"As far as we know, we’re the first provider to offer this!",[15,59,60],{},"Here’s an example request body:",[62,63,68],"pre",{"className":64,"code":65,"language":66,"meta":67,"style":67},"language-json shiki shiki-themes github-light","{\n  \"center\": \"59.438484,24.742595\",\n  \"size\": \"600x400@2x\",\n  \"zoom\": 14,\n  \"lines\": [\n    {\n      \"shape\": \"oj_kpBkhmen@vFvDlStSdIzN`BxCfMfShA`B~@|AvCrDpG`FfVfRb\\\\zSrBdBhZx\\\\pFdM~BpFn@zAxCrHrH|QjOh_@NtM|Vv@d@aHdHEfD^\\\\DhCh@nIjFlFvE~CfCzAzAdFjFt@t@~EdG]cEc@{Fm@uF]oDgAwJhAm@vMqGoAs{@dAMfG_@dE_@Ezb@ExWzBBZ?L@|DnTtAqE~CyMp@sB|@n@XUx@uBjAiApBi@lBp@hAtAzAClSjJzAkMtAl@dA}@~CVbB`@pDtAN}DxD`AdFi@vBIxBIe@aMuAgPyFwy@{Ca_@yFar@[{C_AsGuAkGqEgY_CmLqAuFuHi[m@vBq@hC\",\n      \"color\": \"333333\",\n      \"width\": 5\n    }\n  ],\n  \"markers\": [\n    {\n      \"lat\": 59.436884,\n      \"lon\": 24.742595\n    },\n    {\n      \"lat\": 59.441293,\n      \"lon\": 24.747380,\n      \"style\": \"custom:https:\u002F\u002Fdocs.stadiamaps.com\u002Fimg\u002Fleaf-green.png\",\n      \"anchor\": [-32, -95]\n    },\n    {\n      \"lat\": 59.435561,\n      \"lon\": 24.747605,\n      \"color\": \"red\",\n      \"label\": \"E\"\n    }\n  ]\n}\n","json","",[69,70,71,80,97,110,123,132,138,167,180,191,197,203,211,216,229,240,246,251,263,275,288,309,314,319,331,343,355,366,371,377],"code",{"__ignoreMap":67},[72,73,76],"span",{"class":74,"line":75},"line",1,[72,77,79],{"class":78},"sgsFI","{\n",[72,81,83,87,90,94],{"class":74,"line":82},2,[72,84,86],{"class":85},"sYu0t","  \"center\"",[72,88,89],{"class":78},": ",[72,91,93],{"class":92},"sYBdl","\"59.438484,24.742595\"",[72,95,96],{"class":78},",\n",[72,98,100,103,105,108],{"class":74,"line":99},3,[72,101,102],{"class":85},"  \"size\"",[72,104,89],{"class":78},[72,106,107],{"class":92},"\"600x400@2x\"",[72,109,96],{"class":78},[72,111,113,116,118,121],{"class":74,"line":112},4,[72,114,115],{"class":85},"  \"zoom\"",[72,117,89],{"class":78},[72,119,120],{"class":85},"14",[72,122,96],{"class":78},[72,124,126,129],{"class":74,"line":125},5,[72,127,128],{"class":85},"  \"lines\"",[72,130,131],{"class":78},": [\n",[72,133,135],{"class":74,"line":134},6,[72,136,137],{"class":78},"    {\n",[72,139,141,144,146,149,152,155,157,160,162,165],{"class":74,"line":140},7,[72,142,143],{"class":85},"      \"shape\"",[72,145,89],{"class":78},[72,147,148],{"class":92},"\"oj_kpBkhmen@vFvDlStSdIzN`BxCfMfShA`B~@|AvCrDpG`FfVfRb",[72,150,151],{"class":85},"\\\\",[72,153,154],{"class":92},"zSrBdBhZx",[72,156,151],{"class":85},[72,158,159],{"class":92},"pFdM~BpFn@zAxCrHrH|QjOh_@NtM|Vv@d@aHdHEfD^",[72,161,151],{"class":85},[72,163,164],{"class":92},"DhCh@nIjFlFvE~CfCzAzAdFjFt@t@~EdG]cEc@{Fm@uF]oDgAwJhAm@vMqGoAs{@dAMfG_@dE_@Ezb@ExWzBBZ?L@|DnTtAqE~CyMp@sB|@n@XUx@uBjAiApBi@lBp@hAtAzAClSjJzAkMtAl@dA}@~CVbB`@pDtAN}DxD`AdFi@vBIxBIe@aMuAgPyFwy@{Ca_@yFar@[{C_AsGuAkGqEgY_CmLqAuFuHi[m@vBq@hC\"",[72,166,96],{"class":78},[72,168,170,173,175,178],{"class":74,"line":169},8,[72,171,172],{"class":85},"      \"color\"",[72,174,89],{"class":78},[72,176,177],{"class":92},"\"333333\"",[72,179,96],{"class":78},[72,181,183,186,188],{"class":74,"line":182},9,[72,184,185],{"class":85},"      \"width\"",[72,187,89],{"class":78},[72,189,190],{"class":85},"5\n",[72,192,194],{"class":74,"line":193},10,[72,195,196],{"class":78},"    }\n",[72,198,200],{"class":74,"line":199},11,[72,201,202],{"class":78},"  ],\n",[72,204,206,209],{"class":74,"line":205},12,[72,207,208],{"class":85},"  \"markers\"",[72,210,131],{"class":78},[72,212,214],{"class":74,"line":213},13,[72,215,137],{"class":78},[72,217,219,222,224,227],{"class":74,"line":218},14,[72,220,221],{"class":85},"      \"lat\"",[72,223,89],{"class":78},[72,225,226],{"class":85},"59.436884",[72,228,96],{"class":78},[72,230,232,235,237],{"class":74,"line":231},15,[72,233,234],{"class":85},"      \"lon\"",[72,236,89],{"class":78},[72,238,239],{"class":85},"24.742595\n",[72,241,243],{"class":74,"line":242},16,[72,244,245],{"class":78},"    },\n",[72,247,249],{"class":74,"line":248},17,[72,250,137],{"class":78},[72,252,254,256,258,261],{"class":74,"line":253},18,[72,255,221],{"class":85},[72,257,89],{"class":78},[72,259,260],{"class":85},"59.441293",[72,262,96],{"class":78},[72,264,266,268,270,273],{"class":74,"line":265},19,[72,267,234],{"class":85},[72,269,89],{"class":78},[72,271,272],{"class":85},"24.747380",[72,274,96],{"class":78},[72,276,278,281,283,286],{"class":74,"line":277},20,[72,279,280],{"class":85},"      \"style\"",[72,282,89],{"class":78},[72,284,285],{"class":92},"\"custom:https:\u002F\u002Fdocs.stadiamaps.com\u002Fimg\u002Fleaf-green.png\"",[72,287,96],{"class":78},[72,289,291,294,297,300,303,306],{"class":74,"line":290},21,[72,292,293],{"class":85},"      \"anchor\"",[72,295,296],{"class":78},": [",[72,298,299],{"class":85},"-32",[72,301,302],{"class":78},", ",[72,304,305],{"class":85},"-95",[72,307,308],{"class":78},"]\n",[72,310,312],{"class":74,"line":311},22,[72,313,245],{"class":78},[72,315,317],{"class":74,"line":316},23,[72,318,137],{"class":78},[72,320,322,324,326,329],{"class":74,"line":321},24,[72,323,221],{"class":85},[72,325,89],{"class":78},[72,327,328],{"class":85},"59.435561",[72,330,96],{"class":78},[72,332,334,336,338,341],{"class":74,"line":333},25,[72,335,234],{"class":85},[72,337,89],{"class":78},[72,339,340],{"class":85},"24.747605",[72,342,96],{"class":78},[72,344,346,348,350,353],{"class":74,"line":345},26,[72,347,172],{"class":85},[72,349,89],{"class":78},[72,351,352],{"class":92},"\"red\"",[72,354,96],{"class":78},[72,356,358,361,363],{"class":74,"line":357},27,[72,359,360],{"class":85},"      \"label\"",[72,362,89],{"class":78},[72,364,365],{"class":92},"\"E\"\n",[72,367,369],{"class":74,"line":368},28,[72,370,196],{"class":78},[72,372,374],{"class":74,"line":373},29,[72,375,376],{"class":78},"  ]\n",[72,378,380],{"class":74,"line":379},30,[72,381,382],{"class":78},"}\n",[19,384,386],{"id":385},"were-not-stopping-here","We’re not stopping here!",[15,388,389],{},"Our roadmap still has more features on it (thanks to you!).\nKeep an eye out for integration with our routing API,\npolygon drawing, and more—all in a single API call.",[19,391,393],{"id":392},"accessing-the-new-functionality","Accessing the new functionality",[15,395,396,397,404,405,409],{},"We’ve updated our ",[50,398,403],{"href":399,"rel":400,"target":402},"https:\u002F\u002Fdocs.stadiamaps.com\u002Fstatic-maps\u002F?utm_campaign=custom_markers_post&utm_medium=owned&utm_source=marketing_site",[401],"external","_blank","documentation","\nwith everything you need to get started,\nincluding HTML and cURL examples.\nAnd if you have any questions, you’re just an email away from real human support.\nDrop us a note at ",[50,406,408],{"href":407},"mailto:support@stadiamaps.com","support@stadiamaps.com",".",[411,412,413],"style",{},"html pre.shiki code .sgsFI, html code.shiki .sgsFI{--shiki-default:#24292E}html pre.shiki code .sYu0t, html code.shiki .sYu0t{--shiki-default:#005CC5}html pre.shiki code .sYBdl, html code.shiki .sYBdl{--shiki-default:#032F62}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":67,"searchDepth":112,"depth":112,"links":415},[416,417,418,419],{"id":21,"depth":82,"text":22},{"id":41,"depth":82,"text":42},{"id":385,"depth":82,"text":386},{"id":392,"depth":82,"text":393},"Enhance your static maps with custom marker images, and bypass the URL length limit with POST requests.","md",[423,424,425,426],"Static Maps","Custom Markers","Map Images","API Update",{},true,"\u002Fblog\u002Fcustom-markers-in-static-map-images","2024-05-14","---\ndescription: >-\n  Enhance your static maps with custom marker images,\n  and bypass the URL length limit with POST requests.\npublished: 2024-05-14\nkeywords:\n  - Static Maps\n  - Custom Markers\n  - Map Images\n  - API Update\n---\n\n# Custom markers and POST support for Static Maps\n\nStatic Maps are the fastest ways to add maps to your website or app.\nSince each map is a single PNG or JPEG,\nthey are a lot easier to set up than interactive maps.\nYou can even add markers and lines to static maps&mdash;our servers handle the hard work.\n\n## Custom marker images\n\nToday you can add markers to a static map by including the coordinates in your request.\nWe’ll automatically select a suitable image based on the map style.\nYou can also use a labeled marker with a classic solid design for differentiation.\n\nToday, we’re letting you go even further with branding and improved differentiation.\nJust send us the image URL in your request to customize the marker image!\nThis feature is now available on all plans that have access to static maps\n(including free trials).\n\nWe’re launching with support for up to 5 custom marker images per request,\ngiving you plenty of flexibility.\nAnd the images can be up to 128px in each dimension,\nso your carefully designed icons will look great on retina and other HiDPI screens.\n\n![Static Map](https:\u002F\u002Ftiles.stadiamaps.com\u002Fstatic\u002Falidade_smooth.png?center=59.438484,24.742595&zoom=14&l=oj_kpBkhmen@vFvDlStSdIzN`BxCfMfShA`B~@|AvCrDpG`FfVfRb\\zSrBdBhZx\\pFdM~BpFn@zAxCrHrH|QjOh_@NtM|Vv@d@aHdHEfD^\\DhCh@nIjFlFvE~CfCzAzAdFjFt@t@~EdG]cEc@{Fm@uF]oDgAwJhAm@vMqGoAs{@dAMfG_@dE_@Ezb@ExWzBBZ?L@|DnTtAqE~CyMp@sB|@n@XUx@uBjAiApBi@lBp@hAtAzAClSjJzAkMtAl@dA}@~CVbB`@pDtAN}DxD`AdFi@vBIxBIe@aMuAgPyFwy@{Ca_@yFar@[{C_AsGuAkGqEgY_CmLqAuFuHi[m@vBq@hC,333333,5&m=59.436884,24.742595,,,C&m=59.437485,24.743150,,,B&m=59.434931,24.745442,,,D&m=59.441293,24.747380,custom:https%3A%2F%2Fdocs.stadiamaps.com%2Fimg%2Fleaf-green.png,,,,-32,-95&markers=59.435561,24.747605,,red,E&size=600x400@2x)\n\n## Make complex requests with ease\n\nBefore today, the Static Maps API was configurable\nvia query string parameters.\nWe occasionally heard from customers having issues though,\nbecause web browsers and servers place limits on URL length.\nThis limited the level of detail and customization.\n\nThat’s why we’re now accepting POST requests\nto the [cacheable static maps endpoint](\u002Fblog\u002Fannouncing-cacheable-static-map-images\u002F).\nPOST parameters are sent via a JSON body,\nmaking it easier to specify complex requests.\nAnd when we add new features&mdash;like polygons &mdash;\nyou won’t have to worry about URL length.\n\nAs far as we know, we’re the first provider to offer this!\n\nHere’s an example request body:\n\n```json\n{\n  \"center\": \"59.438484,24.742595\",\n  \"size\": \"600x400@2x\",\n  \"zoom\": 14,\n  \"lines\": [\n    {\n      \"shape\": \"oj_kpBkhmen@vFvDlStSdIzN`BxCfMfShA`B~@|AvCrDpG`FfVfRb\\\\zSrBdBhZx\\\\pFdM~BpFn@zAxCrHrH|QjOh_@NtM|Vv@d@aHdHEfD^\\\\DhCh@nIjFlFvE~CfCzAzAdFjFt@t@~EdG]cEc@{Fm@uF]oDgAwJhAm@vMqGoAs{@dAMfG_@dE_@Ezb@ExWzBBZ?L@|DnTtAqE~CyMp@sB|@n@XUx@uBjAiApBi@lBp@hAtAzAClSjJzAkMtAl@dA}@~CVbB`@pDtAN}DxD`AdFi@vBIxBIe@aMuAgPyFwy@{Ca_@yFar@[{C_AsGuAkGqEgY_CmLqAuFuHi[m@vBq@hC\",\n      \"color\": \"333333\",\n      \"width\": 5\n    }\n  ],\n  \"markers\": [\n    {\n      \"lat\": 59.436884,\n      \"lon\": 24.742595\n    },\n    {\n      \"lat\": 59.441293,\n      \"lon\": 24.747380,\n      \"style\": \"custom:https:\u002F\u002Fdocs.stadiamaps.com\u002Fimg\u002Fleaf-green.png\",\n      \"anchor\": [-32, -95]\n    },\n    {\n      \"lat\": 59.435561,\n      \"lon\": 24.747605,\n      \"color\": \"red\",\n      \"label\": \"E\"\n    }\n  ]\n}\n```\n\n## We’re not stopping here!\n\nOur roadmap still has more features on it (thanks to you!).\nKeep an eye out for integration with our routing API,\npolygon drawing, and more&mdash;all in a single API call.\n\n## Accessing the new functionality\n\nWe’ve updated our [documentation](https:\u002F\u002Fdocs.stadiamaps.com\u002Fstatic-maps\u002F?utm_campaign=custom_markers_post&utm_medium=owned&utm_source=marketing_site)\nwith everything you need to get started,\nincluding HTML and cURL examples.\nAnd if you have any questions, you’re just an email away from real human support.\nDrop us a note at [support@stadiamaps.com](mailto:support@stadiamaps.com).\n",{"title":5,"description":420},"blog\u002Fcustom-markers-in-static-map-images","8r3elZWFWvGVnLxEhRNPX9PR2Cd8DFjAqw-5ePC2M8I",[436,444,453],{"title":437,"description":438,"path":439,"published":440,"keywords":441,"rawbody":443},"Announcing Improved Static Maps with Customizable Lines","Improved Static Maps with Customizable Lines: Add polylines to static maps and improved performance in India","\u002Fblog\u002Fstatic-maps-with-polylines","2022-09-09",[423,442,425,426],"Polylines","---\ndescription: \"Improved Static Maps with Customizable Lines: Add polylines to static maps and improved performance in India\"\npublished: 2022-09-09\nkeywords:\n  - Static Maps\n  - Polylines\n  - Map Images\n  - API Update\n---\n\n# Announcing Improved Static Maps with Customizable Lines\n\nWe are excited to announce the release of our improved static maps product! [Static maps](\u002Fproducts\u002Fmaps\u002Fstatic-maps\u002F) enable\ndevelopers to quickly and easily include maps in their applications as images. Included in this release are many\nperformance improvements, the ability to directly draw lines on the map, and overhauled documentation.\n\n## Polyline Support for Static Maps\n\nSince the static maps product launched, customers have requested\nthe ability to draw lines directly on static maps, and today, we\nare officially announcing support for rendering polylines. With our\nupdated API, developers can save time and resources by using static maps\nto solve problems where previously interactive maps or some other\npostprocessing was required.\n\n![a map of markers and a line in Tallinn, Estonia](https:\u002F\u002Fstadiamaps.com\u002Fstatic\u002Falidade_smooth?center=59.438484,24.742595&zoom=13&l=oj_kpBkhmen@vFvDlStSdIzN`BxCfMfShA`B~@|AvCrDpG`FfVfRb\\zSrBdBhZx\\pFdM~BpFn@zAxCrHrH|QjOh_@NtM|Vv@d@aHdHEfD^\\DhCh@nIjFlFvE~CfCzAzAdFjFt@t@~EdG]cEc@{Fm@uF]oDgAwJhAm@vMqGoAs{@dAMfG_@dE_@Ezb@ExWzBBZ?L@|DnTtAqE~CyMp@sB|@n@XUx@uBjAiApBi@lBp@hAtAzAClSjJzAkMtAl@dA}@~CVbB`@pDtAN}DxD`AdFi@vBIxBIe@aMuAgPyFwy@{Ca_@yFar@[{C_AsGuAkGqEgY_CmLqAuFuHi[m@vBq@hC,333333,5&m=59.436884,24.742595&m=59.437485,24.743150&m=59.434931,24.745442&m=59.441293,24.747380&m=59.435561,24.747605&size=600x250@2x)\n\n## Customizable from the Start\n\nWhether you need to visualize a navigation route, a hiking track, or your most recent flight path, adjusting the look\nand feel is key to a great static map. That&rsquo;s why we made sure you can fully customize each line to achieve\nthe perfect match to your app, just as you can already do with markers.\n\n![a map of markers and a line in Tallinn, Estonia](https:\u002F\u002Fstadiamaps.com\u002Fstatic\u002Falidade_smooth_dark?center=59.438484,24.742595&zoom=13&l=oj_kpBkhmen@vFvDlStSdIzN`BxCfMfShA`B~@|AvCrDpG`FfVfRb\\zSrBdBhZx\\pFdM~BpFn@zAxCrHrH|QjOh_@NtM|Vv@d@aHdHEfD^\\DhCh@nIjFlFvE~CfCzAzAdFjFt@t@~EdG]cEc@{Fm@uF]oDgAwJhAm@vMqGoAs{@dAMfG_@dE_@Ezb@ExWzBBZ?L@|DnTtAqE~CyMp@sB|@n@XUx@uBjAiApBi@lBp@hAtAzAClSjJzAkMtAl@dA}@~CVbB`@pDtAN}DxD`AdFi@vBIxBIe@aMuAgPyFwy@{Ca_@yFar@[{C_AsGuAkGqEgY_CmLqAuFuHi[m@vBq@hC,ffdd00,10&m=59.436884,24.742595&m=59.437485,24.743150&m=59.434931,24.745442&m=59.441293,24.747380&m=59.435561,24.747605&size=600x250@2x)\n\nWith these updates, the static maps experience is faster, smoother, and more integrated than ever before.\n\n## Get Started Today!\n\nWe've updated our [static maps documentation](https:\u002F\u002Fdocs.stadiamaps.com\u002Fstatic-maps\u002F) so it's even easier\nto get started building maps. Update your current maps or create your first static map today!\n\n## One More Thing: A new PoP Location in Mumbai\n\n![map of India with Mumbai highlighted](https:\u002F\u002Ftiles.stadiamaps.com\u002Fstatic\u002Fosm_bright?m=19.076111,72.8775&center=19.076111,72.8775&zoom=4&size=600x250@2x)\n\nAs part of our efforts to support our global customer-base with high-reliability, low-latency, and unbeatable\nperformance, we&rsquo;re always looking for ways to expand our PoP network. After some unexpected delays, we&rsquo;re\nnow able to unveil a new PoP region in Mumbai, allowing us to better serve our Indian users. We will continue expanding\nthe network in coordination with our infrastructure partners. New locations in Australia and Canada are already planned.",{"title":445,"description":446,"path":447,"published":448,"keywords":449,"rawbody":452},"Announcing Cacheable Static Maps","Cache your static maps for digital or print use with our new endpoint.","\u002Fblog\u002Fannouncing-cacheable-static-map-images","2024-03-26",[423,450,451,426],"Caching","Print Maps","---\ndescription: \"Cache your static maps for digital or print use with our new endpoint.\"\npublished: 2024-03-26\nkeywords:\n  - Static Maps\n  - Caching\n  - Print Maps\n  - API Update\n---\n\n# Announcing Cacheable Static Maps\n\nOur Static Maps API offers an easy way to add maps to your website or app. \nIf your use case doesn't require interactive maps,\nyou can push all the rendering complexity to our servers.\nWe'll even let you customize the maps with annotations like markers and lines,\nall using a simple URL!\n\n## Simpler Licensing for Printing and Caching\n\nToday, we're launching a cacheable static maps endpoint with special terms to enable new use cases.\nFor digital use, this endpoint allows storing or caching map images in your infrastructure or an image CDN \n(as long as you maintain a paid subscription).\nFor print applications, you'll no longer need to contact us for a custom license if your usage meets certain conditions.\nWith these two changes, we're making it easier for you to build solutions without having to ask us for custom pricing or terms.\n\n## Advanced Privacy Protection; Enhanced Customizing & Performance\n\nThe new digital use terms allow you to create solutions using static maps so end-user traffic never goes to our servers.\nIf you're looking for a way to enhance end-user privacy beyond our no-tracking policy,\nor have particularly strict compliance needs,\nthe new endpoint enables you to pre-generate or cache images fully under your control.\n\nFor users looking to utilize popular image CDNs or push-based deployment strategies used by some site generators,\nthis new endpoint allows you to take advantage of these enhancements and remain compliant with our terms.\n\nCacheable static maps are available using a new endpoint,\nwhich you can read about in our [documentation](https:\u002F\u002Fdocs.stadiamaps.com\u002Fstatic-maps\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=static_maps&utm_content=cacheable_static_announcement){ target=\"_blank\" }.\nThe request parameters are the same as our existing static endpoint,\nso the migration only takes a few seconds.\nWe can't offer caching on the Alidade Satellite style at this time,\nbut all other features and capabilities are identical,\nincluding access to the [map styles from Stamen Design](https:\u002F\u002Fdocs.stadiamaps.com\u002Fthemes\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=static_maps&utm_content=cacheable_static_announcement#stadia-stamen){ target=\"_blank\" }.\n\n## Learn more\n\n* Learn how to use the new endpoint from our [static maps documentation](https:\u002F\u002Fdocs.stadiamaps.com\u002Fstatic-maps\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=static_maps&utm_content=cacheable_static_announcement){ target=\"_blank\" }.\n* See our [pricing](\u002Fpricing\u002F) for cacheable static maps and all other endpoints.\n* Read our [terms for the new endpoint](\u002Fterms-of-service\u002F#cacheable-terms).\n",{"title":454,"description":455,"path":456,"published":457,"keywords":458,"rawbody":463},"Enriching Geocoding & Search: More Data, Smarter Deduplication, and Forward & Reverse v2","Our latest geocoding update includes v2 of Forward and Reverse endpoints, smarter deduplication, better multi-language support, and more Foursquare OS Places data.","\u002Fblog\u002Fgeocoding-and-autocomplete-v2-updates-continue","2025-07-01",[459,460,461,426,462],"Geocoding","Reverse Geocoding","Forward Geocoding","Foursquare","---\ndescription: \"Our latest geocoding update includes v2 of Forward and Reverse endpoints, smarter deduplication, better multi-language support, and more Foursquare OS Places data.\"\npublished: \"2025-07-01\"\nkeywords:\n  - Geocoding\n  - Reverse Geocoding\n  - Forward Geocoding\n  - API Update\n  - Foursquare\n---\n\n# Enriching Geocoding & Search: More Data, Smarter Deduplication, and Forward & Reverse v2\n\nOn the heels of our last geocoding update for our Autocomplete and Place Details endpoints, \nwe're excited to announce another major update to Geocoding & Search:\n\n* v2 of our Forward and Reverse geocoding endpoints, \n* label improvements for v1 endpoints,\n* enhancements to Autocomplete deduplication, \n* a collection of multi-language improvements, \n* and another significant Foursquare OS Places update.\n\n## New Address Delimiter Parsing in Forward Geocoding\n\nWe've improved how we handle delimiters for house and building numbers, and their different ways they are represented around the world.\n\nWith this update, \nyou can now easily and more accurately search for addresses such as `Telliskivi 60a\u002F3, Tallinn` or `Kossuth Lajos utca 20. IV\u002F15, 1053 Budapest, Hungary`.\n\n## Improved Regional Context with Reverse Geocoding\n\nFull contextual hierarchy is now available in all Reverse Geocoding responses,\nproviding a straightforward path when you care about the context rather than a specific physical feature (e.g., in coarse lookups).\n\nPreviously, \nthe `\u002Freverse` endpoint behavior depended on which layers you explicitly included.\nWhen searching for an address, street, or venue (POI),\nwe served up the full context: locality, region, country, and so on.\nBut for a coarse lookup,\nthe API only included layers you _explicitly_ specified and dropped everything else (e.g., country code).\n\nWe have fixed this in both v1 and v2, \nand all responses include a complete contextual hierarchy,\nregardless of your search.\nThis response style matches the way our other search endpoints work and does not break any assumptions about result ordering.\n\nWith v2, just like v1, you'll receive the most granular layer result first based on your query.\n\n## Better Label Responses in v1 Endpoints\n\nLabels generated from the Who's on First source are now much more sensible for places across the globe.\nFor instance, where the API used to return `Seoul, Yongsan-gu, Seoul, South Korea`,\nwe now simply return `Seoul, South Korea`.\n\nAll v1 APIs now include this improvement except `\u002Fv1\u002Fsearch\u002Fstructured`.\n\n## Deduplication and More Relevance in Autocomplete\n\nOur Autocomplete API enables seamless searching across many sources,\nincluding Foursquare OS Places, Geonames, OpenStreetMap, OpenAddresses, and Who's On First.\nWhile using such a broad range of sources ensures we have the best global coverage,\nit presents a deduplication problem when a location is present in multiple sources.\nWith our smarter deduplication process,\nwe’ve eliminated duplicate results across a range of location types:\n\n* Tighter deduplication of addresses across our datasets;  \n* Leveraging the ease of edits in OpenStreetMap, OSM addresses are now preferred over other sources when there is a collision;  \n* More relevant results for focused searches, especially when searching for dense chains like 7-Eleven or Starbucks;  \n* East Asian language deduplication improvements when comparing inconsistent naming between sources;  \n* Better deduplication of place names with exotic Unicode representation (e.g., a stylized \"𝐀𝐂𝐌𝐄, 𝐈𝐍𝐂.\" is considered the same as \"ACME, Inc.\")\n\n## Multi-Language Query Improvements\n\nWe updated the v1 and v2 `\u002Fsearch` endpoint to take into account the `lang` parameter when querying for POIs,\nimproving the quality of multilingual name searches.\nPreviously, if you were querying POI names in another language (e.g., the English name of a cafe whose primary name is Korean),\nyou would receive zero results when using Search.\n\n## Foursquare OS Places Update\n\nWe have now included an additional 8 million places from Foursquare OS Places,\nbringing the total number of available POIs from Foursquare to about 14 million.\n\n## Available Today\n\nAll of these improvements are available for you today!\nIf you're using our [SDKs](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Foverview\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=geocoding_v2_improvements_announcement&utm_content=sdk_cta),\nupdate to the latest version.\n\n## Learn More and Get Started\n\nReady to experience the power of Geocoding & Search v2?\nHere are some helpful resources to get you started:\n\n* [Autocomplete Search SDKs](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Foverview\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=geocoding_v2_improvements_announcement#autocomplete-search)  \n* [API Clients\u002FSDKs](https:\u002F\u002Fdocs.stadiamaps.com\u002Fsdks\u002Foverview\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=geocoding_v2_improvements_announcement&utm_content=sdk_reference)  \n* [v2 Migration Guide for Developers](https:\u002F\u002Fdocs.stadiamaps.com\u002Fgeocoding-search-autocomplete\u002Fv2-api-migration-guide\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=geocoding_v2_improvements_announcement)  \n* [Geocoding Documentation](https:\u002F\u002Fdocs.stadiamaps.com\u002Fgeocoding-search-autocomplete\u002Foverview\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=geocoding_v2_improvements_announcement&utm_content=foursquare_beta_next_steps)\n\nWe're confident Geocoding & Search v2 will significantly enhance your ability to build location-aware applications.\nWith more data and improved results,\nit's never been a better time to leverage the power of location with Stadia Maps.\n\nStart exploring today and unlock the full potential of location search in your current or next project!\n\n### Account and API Key\n\nIf you don’t already have an account,\n[create an account](https:\u002F\u002Fclient.stadiamaps.com\u002Fsignup\u002F?utm_source=marketing_site&utm_medium=blog&utm_campaign=geocoding_v2_improvements_announcement) to start building today—no credit card is required.\n\n---\n\n## Stadia Maps Community\n\nStay connected with Stadia Maps:\n\n* Join our community on [Discord](https:\u002F\u002Fdiscord.gg\u002FqRBy6qqtdT) or [Slack](https:\u002F\u002Fslack.openstreetmap.us\u002F) to share what you're working on or get help.  \n* Follow us on [Mastodon](https:\u002F\u002Fen.osm.town\u002F@stadiamaps), [Twitter](https:\u002F\u002Ftwitter.com\u002F@stadiamaps), [BlueSky](https:\u002F\u002Fbsky.app\u002Fprofile\u002Fstadiamaps.com), or [LinkedIn](https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fstadia-maps\u002F), or sign up for our [mailing list](https:\u002F\u002Feepurl.com\u002Fgs51fD) to stay up to date.\n",1778676026988]