{"id":295342,"date":"2018-08-09T10:29:10","date_gmt":"2018-08-09T17:29:10","guid":{"rendered":"http:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=295342"},"modified":"2018-08-30T10:31:39","modified_gmt":"2018-08-30T17:31:39","slug":"migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript","title":{"rendered":"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript"},"author":4271,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[37101],"tags":[27491],"industry":[],"product":[36831,36601],"class_list":["post-295342","blog","type-blog","status-publish","format-standard","hentry","category-announcements","tag-jsapi4","product-js-api-arcgis","product-developers"],"acf":{"short_description":"Learn how you can migrate your app built with the Google Maps JavaScript API to the ArcGIS API for JavaScript.","flexible_content":[{"acf_fc_layout":"content","content":"<p>Have your costs to display a map in your web app drastically increased with Google\u2019s recent <a href=\"https:\/\/cloud.google.com\/maps-platform\/user-guide\/pricing-changes\/\">pricing changes<\/a>? If so, you aren\u2019t alone. This pricing update has driven many developers that were using the Google Maps API to explore web mapping alternatives and move to ArcGIS. There are a couple of reasons for this.<\/p>\n<p>First, the ArcGIS API for JavaScript is a state of the art web mapping API with powerful developer tools for <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/guide\/visualization-overview\/index.html\">exploring data and creating visualizations<\/a> in both 2D and 3D, <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/index.html?search=widgets\">widgets<\/a> for building compelling user experiences, and <a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/turbo-charge-your-web-apps-with-client-side-queries\/\">client-side processing<\/a> for creating interactive apps using the latest browser technology.<\/p>\n<p>Second, with an <a href=\"https:\/\/developers.arcgis.com\/\">ArcGIS Developer Subscription<\/a> you can do a lot for free:<\/p>\n<ul>\n<li>Use of all of Esri\u2019s APIs and SDKs for web, native, and mobile platforms<\/li>\n<li>1,000,000 basemaps and geosearch transactions per month<\/li>\n<li>Credits towards generating routes<\/li>\n<li>Unlimited non-revenue generating apps<\/li>\n<li>Unlimited users<\/li>\n<li>Access to a wide selection of rich content and services hosted in ArcGIS Online<\/li>\n<li>Style basemaps and manage your map content<\/li>\n<li>Host, query and analyze geographic content<\/li>\n<\/ul>\n<p>If you\u2019re ready to migrate your web app from the Google Maps JavaScript API to the ArcGIS API for JavaScript, here\u2019s a quick overview on some of the basic concepts.<\/p>\n<p><strong>Get going developing with the API<\/strong><\/p>\n<p>Get started by signing up for the <a href=\"https:\/\/developers.arcgis.com\/sign-up\">ArcGIS Developer Program<\/a> at no cost. This will give you access to everything listed above, plus quite a bit more (see the <a href=\"https:\/\/developers.arcgis.com\/\">Developer website<\/a> to learn more).<\/p>\n<p>To load the Google JavaScript Maps API you reference the API and include your Google API key like this:<\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\"><span style=\"color: #000080; font-weight: normal;\">&lt;<span style=\"color: #000080; font-weight: normal;\">script<\/span> <span style=\"color: #008080;\">async<\/span> <span style=\"color: #008080;\">defer<\/span>\r\n   <span style=\"color: #008080;\">src<\/span>=<span style=\"color: #d14;\">\"https:\/\/maps.googleapis.com\/maps\/api\/js?key=YOUR_API_KEY&amp;callback=initMap\"<\/span>&gt;<\/span>\r\n<span style=\"color: #000080; font-weight: normal;\">&lt;\/<span style=\"color: #000080; font-weight: normal;\">script<\/span>&gt;<\/span>\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<p>With the ArcGIS API for JavaScript you won\u2019t need an API key; you can simply reference the API and stylesheet like this:<\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\"><span style=\"color: #000080; font-weight: normal;\">&lt;<span style=\"color: #000080; font-weight: normal;\">link<\/span> <span style=\"color: #008080;\">rel<\/span>=<span style=\"color: #d14;\">\"stylesheet\"<\/span> <span style=\"color: #008080;\">href<\/span>=<span style=\"color: #d14;\">\"https:\/\/js.arcgis.com\/4.8\/esri\/css\/main.css\"<\/span>&gt;<\/span>\r\n<span style=\"color: #000080; font-weight: normal;\">&lt;<span style=\"color: #000080; font-weight: normal;\">script<\/span> <span style=\"color: #008080;\">src<\/span>=<span style=\"color: #d14;\">\"https:\/\/js.arcgis.com\/4.8\/\"<\/span>&gt;<\/span><span style=\"color: #000080; font-weight: normal;\">&lt;\/<span style=\"color: #000080; font-weight: normal;\">script<\/span>&gt;<\/span>\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<p><strong>Display a map<\/strong><\/p>\n<p>Here\u2019s how you initialize a new map with Google:<\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\"><span style=\"color: #333; font-weight: bold;\">const<\/span> map = <span style=\"color: #333; font-weight: bold;\">new<\/span> google.maps.Map(<span style=\"color: #0086b3;\">document<\/span>.getElementById(<span style=\"color: #d14;\">'mapDiv'<\/span>), {\r\n  mapTypeId: <span style=\"color: #d14;\">'roadmap'<\/span>,\r\n  center: { lat: <span style=\"color: #008080;\">32.7353<\/span>, lng: -<span style=\"color: #008080;\">117.1490<\/span>},\r\n  zoom: <span style=\"color: #008080;\">12<\/span>\r\n});\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<p>With ArcGIS, a new map is initialized in this way. Notice that you create both a map and a view. A view enables separation between the map data from visualization of the data in either 2D or 3D (or both).<\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\"><span style=\"color: #0086b3;\">require<\/span>([<span style=\"color: #d14;\">\"esri\/Map\"<\/span>, <span style=\"color: #d14;\">\"esri\/views\/MapView\"<\/span>], <span style=\"color: #333; font-weight: bold;\">function<\/span>(Map, MapView) {\r\n  <span style=\"color: #333; font-weight: bold;\">const<\/span> map = <span style=\"color: #333; font-weight: bold;\">new<\/span> <span style=\"color: #0086b3;\">Map<\/span>({\r\n    basemap: <span style=\"color: #d14;\">\"streets-navigation-vector\"<\/span>\r\n  });\r\n\r\n  <span style=\"color: #333; font-weight: bold;\">const<\/span> view = <span style=\"color: #333; font-weight: bold;\">new<\/span> MapView({\r\n    container: <span style=\"color: #d14;\">\"viewDiv\"<\/span>,\r\n    map: map,\r\n    zoom: <span style=\"color: #008080;\">12<\/span>,\r\n    center: {\r\n      latitude: <span style=\"color: #008080;\">32.7353<\/span>,\r\n      longitude: -<span style=\"color: #008080;\">117.1490<\/span>\r\n    }\r\n  });\r\n});\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<p>This code will create a map with Esri\u2019s World Navigation vector basemap. If you\u2019d like, you can choose another basemap from the ArcGIS Online <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-Map.html#basemap\">basemaps<\/a> such as satellite imagery, topographic, dark gray canvas, or another basemap you have access to.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":295852,"id":295852,"title":"basemaps2","filename":"basemaps2.png","filesize":115362,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\/basemaps2","alt":"","author":"4271","description":"","caption":"","name":"basemaps2","status":"inherit","uploaded_to":295342,"date":"2018-08-09 00:41:50","modified":"2018-08-09 00:41:50","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1446,"height":464,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","thumbnail-width":213,"thumbnail-height":68,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","medium-width":464,"medium-height":149,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","medium_large-width":768,"medium_large-height":246,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","large-width":1446,"large-height":464,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","1536x1536-width":1446,"1536x1536-height":464,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","2048x2048-width":1446,"2048x2048-height":464,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","card_image-width":826,"card_image-height":265,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/basemaps2.png","wide_image-width":1446,"wide_image-height":464}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/livingatlas.arcgis.com\/en\/browse\/#d=2&type=maps&categories=Basemaps:11111"},{"acf_fc_layout":"content","content":"<p><strong>Adding a marker<\/strong><\/p>\n<p>Adding a marker with Google is done in the following way:<\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\"><span style=\"color: #333; font-weight: bold;\">const<\/span> marker = <span style=\"color: #333; font-weight: bold;\">new<\/span> google.maps.Marker({\r\n  position: { lat: <span style=\"color: #008080;\">32.7353<\/span>, lng: -<span style=\"color: #008080;\">117.1490<\/span> },\r\n  title: <span style=\"color: #d14;\">\"San Diego Zoo\"<\/span>,\r\n  map: map\r\n});\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<p>To add a marker with ArcGIS, a new graphic is added to the view\u2019s graphics collection.<\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\">view.graphics.add({\r\n  symbol: {\r\n    type: <span style=\"color: #d14;\">\"simple-marker\"<\/span>,\r\n    color: <span style=\"color: #d14;\">\"cyan\"<\/span>\r\n  },\r\n  geometry: {\r\n    type: <span style=\"color: #d14;\">\"point\"<\/span>,\r\n     longitude: -<span style=\"color: #008080;\">117.1490<\/span>,\r\n     latitude: <span style=\"color: #008080;\">32.7353<\/span>   \r\n  }\r\n});\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<p>The code above creates a cyan colored circle \u201csimple marker\u201d symbol, but there are more ways in which you can symbolize your marker. For example, you can select a symbol from <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/guide\/esri-icon-font\/index.html#esri-icon-fonts\">Esri Icon Font<\/a>. Here is an example of using a map pin icon:<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":295792,"id":295792,"title":"icon","filename":"icon.png","filesize":735,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\/icon","alt":"","author":"4271","description":"","caption":"","name":"icon","status":"inherit","uploaded_to":295342,"date":"2018-08-09 00:30:12","modified":"2018-08-09 00:30:12","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":42,"height":43,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","thumbnail-width":42,"thumbnail-height":43,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","medium-width":42,"medium-height":43,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","medium_large-width":42,"medium_large-height":43,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","large-width":42,"large-height":43,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","1536x1536-width":42,"1536x1536-height":43,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","2048x2048-width":42,"2048x2048-height":43,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","card_image-width":42,"card_image-height":43,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/icon.png","wide_image-width":42,"wide_image-height":43}},"image_position":"left-center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\">view.graphics.add({\r\n  symbol: {\r\n    type: <span style=\"color: #d14;\">\"text\"<\/span>,\r\n    color: <span style=\"color: #d14;\">\"#7A003C\"<\/span>,\r\n    text: <span style=\"color: #d14;\">\"\\ue61d\"<\/span>, <span style=\"color: #998; font-style: italic;\">\/\/ esri-icon-map-pin<\/span>\r\n    font: {\r\n      size: <span style=\"color: #008080;\">30<\/span>,\r\n      family: <span style=\"color: #d14;\">\"CalciteWebCoreIcons\"<\/span>\r\n    }\r\n  },\r\n  geometry: {\r\n    type: <span style=\"color: #d14;\">\"point\"<\/span>,\r\n    longitude: -<span style=\"color: #008080;\">117.1490<\/span>,\r\n    latitude: <span style=\"color: #008080;\">32.7353<\/span>   \r\n  }\r\n});\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"image","image":{"ID":295492,"id":295492,"title":"marker","filename":"marker.png","filesize":185749,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\/marker","alt":"","author":"4271","description":"","caption":"","name":"marker","status":"inherit","uploaded_to":295342,"date":"2018-08-08 22:59:13","modified":"2018-08-08 22:59:13","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1119,"height":538,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","thumbnail-width":213,"thumbnail-height":102,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","medium-width":464,"medium-height":223,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","medium_large-width":768,"medium_large-height":369,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","large-width":1119,"large-height":538,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","1536x1536-width":1119,"1536x1536-height":538,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","2048x2048-width":1119,"2048x2048-height":538,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","card_image-width":826,"card_image-height":397,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/marker.png","wide_image-width":1119,"wide_image-height":538}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>In ArcGIS, a more dynamic option for selecting a symbol is using your data\u2019s attributes to drive the color, size, and opacity of the symbol. To see this in action, have a look at this sample showing how you can <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/layers-featurelayer-collection\/index.html\">create graphics from GeoJSON<\/a> earthquake data, and dynamically set the size of each graphic\u2019s symbol according to the magnitude of the earthquake.<\/p>\n<p><strong>Use a popup<\/strong><\/p>\n<p>Google\u2019s InfoWindow is used for displaying content in a popup window, and is attached to a marker in this way:<\/p>\n"},{"acf_fc_layout":"content","content":"<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\"><span style=\"color: #333; font-weight: bold;\">const<\/span> map = <span style=\"color: #333; font-weight: bold;\">new<\/span> google.maps.Map(<span style=\"color: #0086b3;\">document<\/span>.getElementById(<span style=\"color: #d14;\">\"mapDiv\"<\/span>), {\r\n  mapTypeId: <span style=\"color: #d14;\">\"roadmap\"<\/span>,\r\n  center: {\r\n    lat: <span style=\"color: #008080;\">32.7353<\/span>,\r\n    lng: -<span style=\"color: #008080;\">117.1490<\/span>\r\n  },\r\n  zoom: <span style=\"color: #008080;\">14<\/span>\r\n});\r\n\r\n<span style=\"color: #333; font-weight: bold;\">const<\/span> marker = <span style=\"color: #333; font-weight: bold;\">new<\/span> google.maps.Marker({\r\n  position: {\r\n    lat: <span style=\"color: #008080;\">32.7353<\/span>,\r\n    lng: -<span style=\"color: #008080;\">117.1490<\/span>\r\n  },\r\n  title: <span style=\"color: #d14;\">\"San Diego Zoo\"<\/span>,\r\n  map: map\r\n});\r\n\r\n<span style=\"color: #333; font-weight: bold;\">const<\/span> contentString = <span style=\"color: #d14;\">\"&lt;h1&gt;San Diego Zoo&lt;\/h1&gt;\"<\/span> +\r\n  <span style=\"color: #d14;\">\"The &lt;a href='http:\/\/zoo.sandiegozoo.org\/'&gt;San Diego Zoo&lt;\/a&gt; \"<\/span> +\r\n  <span style=\"color: #d14;\">\" in Balboa Park houses over 3,700 animals.&lt;p&gt;&lt;p&gt;\"<\/span> +\r\n  <span style=\"color: #d14;\">\"&lt;img src='https:\/\/visitoceanside.org\/wp-content\/uploads\/2013\/01\/SanDiegoZoo.jpg' alt='San Diego Zoo' height='150'&gt;\"<\/span>;\r\n\r\n<span style=\"color: #333; font-weight: bold;\">const<\/span> infowindow = <span style=\"color: #333; font-weight: bold;\">new<\/span> google.maps.InfoWindow({\r\n  content: contentString\r\n});\r\n\r\nmarker.addListener(<span style=\"color: #d14;\">'click'<\/span>, <span style=\"color: #333; font-weight: bold;\">function<\/span>() {\r\n  infowindow.open(map, marker);\r\n});\r\n<\/code><\/pre>\n<p>You can add a popup with the ArcGIS API for JavaScript by creating a popup \u201ctemplate.\u201d Templates define the content of the popup. Here are all steps combined to create the map and view, add a marker with a pin icon, and attach a popup:<\/p>\n<pre><code style=\"display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; -webkit-text-size-adjust: none;\"><span style=\"color: #0086b3;\">require<\/span>([ <span style=\"color: #d14;\">\"esri\/Map\"<\/span>, <span style=\"color: #d14;\">\"esri\/views\/MapView\"<\/span> ], <span style=\"color: #333; font-weight: bold;\">function<\/span>(\r\n  Map, MapView\r\n) {\r\n  <span style=\"color: #333; font-weight: bold;\">const<\/span> map = <span style=\"color: #333; font-weight: bold;\">new<\/span> <span style=\"color: #0086b3;\">Map<\/span>({\r\n    basemap: <span style=\"color: #d14;\">\"streets-navigation-vector\"<\/span>\r\n  });\r\n\r\n  <span style=\"color: #333; font-weight: bold;\">const<\/span> view = <span style=\"color: #333; font-weight: bold;\">new<\/span> MapView({\r\n    container: <span style=\"color: #d14;\">\"viewDiv\"<\/span>,\r\n    map: map,\r\n    zoom: <span style=\"color: #008080;\">12<\/span>,\r\n    center: {\r\n      latitude: <span style=\"color: #008080;\">32.7353<\/span>,\r\n      longitude: -<span style=\"color: #008080;\">117.1490<\/span>\r\n    }\r\n  });\r\n  \r\n  <span style=\"color: #333; font-weight: bold;\">const<\/span> contentString = <span style=\"color: #d14;\">\"The &lt;a href='http:\/\/zoo.sandiegozoo.org\/'&gt;San Diego Zoo&lt;\/a&gt; \"<\/span> + \r\n    <span style=\"color: #d14;\">\" in Balboa Park houses over 3,700 animals.\"<\/span> +\r\n    <span style=\"color: #d14;\">\"&lt;p&gt;&lt;p&gt;&lt;img src='https:\/\/visitoceanside.org\/wp-content\/uploads\/2013\/01\/SanDiegoZoo.jpg' alt='San Diego Zoo' height='150'&gt;\"<\/span>; \r\n  \r\n  view.graphics.add({\r\n    symbol: {\r\n      type: <span style=\"color: #d14;\">\"text\"<\/span>,\r\n      color: <span style=\"color: #d14;\">\"#7A003C\"<\/span>,\r\n      text: <span style=\"color: #d14;\">\"\\ue61d\"<\/span>, <span style=\"color: #998; font-style: italic;\">\/\/ esri-icon-map-pin<\/span>\r\n      font: {\r\n        size: <span style=\"color: #008080;\">30<\/span>,\r\n        family: <span style=\"color: #d14;\">\"CalciteWebCoreIcons\"<\/span>\r\n      }\r\n    },\r\n    geometry: {\r\n      type: <span style=\"color: #d14;\">\"point\"<\/span>,\r\n      longitude: -<span style=\"color: #008080;\">117.1490<\/span>,\r\n      latitude: <span style=\"color: #008080;\">32.7353<\/span>\r\n    },\r\n    popupTemplate: {\r\n      title: <span style=\"color: #d14;\">\"San Diego Zoo\"<\/span>,\r\n      content: contentString\r\n    }\r\n  });\r\n});\r\n<\/code><\/pre>\n<p>View this app in <a href=\"https:\/\/codepen.io\/julie_powell\/pen\/NBLaaw\">codepen<\/a>.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":296112,"id":296112,"title":"popup2","filename":"popup2.png","filesize":560617,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\/popup2","alt":"","author":"4271","description":"","caption":"","name":"popup2","status":"inherit","uploaded_to":295342,"date":"2018-08-09 17:13:00","modified":"2018-08-09 17:13:00","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1914,"height":914,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","thumbnail-width":213,"thumbnail-height":102,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","medium-width":464,"medium-height":222,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","medium_large-width":768,"medium_large-height":367,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","large-width":1914,"large-height":914,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","1536x1536-width":1536,"1536x1536-height":733,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","2048x2048-width":1914,"2048x2048-height":914,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","card_image-width":826,"card_image-height":394,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/popup2.png","wide_image-width":1914,"wide_image-height":914}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/codepen.io\/julie_powell\/full\/NBLaaw\/"},{"acf_fc_layout":"content","content":"<p>For fun, you can play around with the same app in 3D by simply using a \u201cSceneView\u201d rather than a &#8220;MapView.&#8221; See the code and live 3D app <a href=\"https:\/\/codepen.io\/andygup\/pen\/ZjmyoN\">here<\/a>.<\/p>\n"},{"acf_fc_layout":"content","content":"<p><strong>Next steps &amp; more resources<\/strong><\/p>\n<p>Check out the following tutorials on migrating web apps from Google to ArcGIS:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-web-apps-from-google-to-arcgis-directions-and-routing\/\">Getting directions and displaying a route<\/a><\/li>\n<li><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-web-apps-from-google-to-arcgis-searching-and-geocoding\/\">Searching &amp; geocoding<\/a><\/li>\n<li><a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-web-apps-from-google-to-arcgis-adding-a-shape\/\">Adding a shape<\/a><\/li>\n<\/ul>\n<p>There are a variety of resources for learning about the ArcGIS API for JavaScript and maximizing your productivity when building your web apps:<\/p>\n<ul>\n<li>Explore hundreds of <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/index.html\">samples<\/a> in a live sandbox for playing around with the code<\/li>\n<li>A helpful <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/guide\/index.html\">guide<\/a> focused on key topics about developing with the API<\/li>\n<li>Searchable <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/index.html\">API reference<\/a>.<\/li>\n<li>ArcGIS API for JavaScript <a href=\"https:\/\/developers.arcgis.com\/labs\/browse\/?topic=any&amp;product=JavaScript\">dev labs<\/a>, which are step by step tutorials for learning how to develop with the API, for example:\n<ul>\n<li style=\"padding-left: 30px; list-style-type: none;\"><a href=\"https:\/\/developers.arcgis.com\/labs\/javascript\/find-places\/\">Find places<\/a><\/li>\n<li style=\"padding-left: 30px; list-style-type: none;\"><a href=\"https:\/\/developers.arcgis.com\/labs\/javascript\/display-point-line-and-polygon-graphics\/\">Display point, line, and polygon graphics<\/a><\/li>\n<li style=\"padding-left: 30px; list-style-type: none;\"><a href=\"https:\/\/developers.arcgis.com\/labs\/javascript\/display-and-track-your-location\/\">Display and track your location<\/a><\/li>\n<li style=\"padding-left: 30px; list-style-type: none;\"><a href=\"https:\/\/developers.arcgis.com\/labs\/javascript\/get-a-route-and-directions\/\">Get a route and directions<\/a><\/li>\n<li style=\"padding-left: 30px; list-style-type: none;\"><a href=\"https:\/\/developers.arcgis.com\/labs\/javascript\/search-for-an-address\/\">Search for an address<\/a><\/li>\n<li style=\"padding-left: 30px; list-style-type: none;\"><a href=\"https:\/\/developers.arcgis.com\/labs\/arcgisonline\/style-a-vector-basemap\/\">Style a vector basemap<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n"}],"authors":[{"ID":4271,"user_firstname":"Julie","user_lastname":"Powell","nickname":"Julie Powell","user_nicename":"julie-powell","display_name":"Julie Powell","user_email":"julie_powell@esri.com","user_url":"","user_registered":"2018-03-02 00:15:51","user_description":"Julie Powell is Principal Product Manager for Esri's web development technologies. She works to ensure developers can be successful in building state of the art, purposeful solutions using ArcGIS software. \r\nJulie brings 20 years of experience working with global leaders such as Hewlett-Packard and Esri, delivering a variety of software solutions for both the enterprise and consumer markets.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"},{"ID":3801,"user_firstname":"Andy","user_lastname":"Gup","nickname":"andygup","user_nicename":"andygup","display_name":"Andy Gup","user_email":"agup@esri.com","user_url":"http:\/\/www.andygup.net","user_registered":"2018-03-02 00:15:25","user_description":"I spend a ton of time outdoors and when not on a mountain somewhere I'm a Sr. Product Engineer for the ArcGIS Maps SDK for JavaScript. I work on ES modules, 3rd party JavaScript frameworks, and other cool mapping-related goodies.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/07\/andy_gup_thumb4-1.png' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"}],"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/zoo_banner.png","wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/zoo_streets_nav.png","related_articles":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2018-08-30T17:31:39+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\"},\"author\":{\"name\":\"Julie Powell\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/3ef71df36f6aacca26eb2c7f65f15e88\"},\"headline\":\"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript\",\"datePublished\":\"2018-08-09T17:29:10+00:00\",\"dateModified\":\"2018-08-30T17:31:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\"},\"wordCount\":11,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"jsapi4\"],\"articleSection\":[\"Announcements\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\",\"name\":\"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2018-08-09T17:29:10+00:00\",\"dateModified\":\"2018-08-30T17:31:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/3ef71df36f6aacca26eb2c7f65f15e88\",\"name\":\"Julie Powell\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png\",\"caption\":\"Julie Powell\"},\"description\":\"Julie Powell is Principal Product Manager for Esri's web development technologies. She works to ensure developers can be successful in building state of the art, purposeful solutions using ArcGIS software. Julie brings 20 years of experience working with global leaders such as Hewlett-Packard and Esri, delivering a variety of software solutions for both the enterprise and consumer markets.\",\"sameAs\":[\"https:\/\/x.com\/JuliePowellGIS\"],\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/julie-powell\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript","og_locale":"en_US","og_type":"article","og_title":"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2018-08-30T17:31:39+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript"},"author":{"name":"Julie Powell","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/3ef71df36f6aacca26eb2c7f65f15e88"},"headline":"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript","datePublished":"2018-08-09T17:29:10+00:00","dateModified":"2018-08-30T17:31:39+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript"},"wordCount":11,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["jsapi4"],"articleSection":["Announcements"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript","name":"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2018-08-09T17:29:10+00:00","dateModified":"2018-08-30T17:31:39+00:00","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Migrating from Google Maps JavaScript API to ArcGIS API for JavaScript"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/3ef71df36f6aacca26eb2c7f65f15e88","name":"Julie Powell","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png","caption":"Julie Powell"},"description":"Julie Powell is Principal Product Manager for Esri's web development technologies. She works to ensure developers can be successful in building state of the art, purposeful solutions using ArcGIS software. Julie brings 20 years of experience working with global leaders such as Hewlett-Packard and Esri, delivering a variety of software solutions for both the enterprise and consumer markets.","sameAs":["https:\/\/x.com\/JuliePowellGIS"],"url":"https:\/\/www.esri.com\/arcgis-blog\/author\/julie-powell"}]}},"text_date":"August 9, 2018","author_name":"Multiple Authors","author_page":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/migrating-from-google-maps-javascript-api-to-arcgis-api-for-javascript","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/08\/zoo_streets_nav.png","primary_product":"ArcGIS Maps SDK for JavaScript","tag_data":[{"term_id":27491,"name":"jsapi4","slug":"jsapi4","term_group":0,"term_taxonomy_id":27491,"taxonomy":"post_tag","description":"","parent":0,"count":111,"filter":"raw"}],"category_data":[{"term_id":37101,"name":"Announcements","slug":"announcements","term_group":0,"term_taxonomy_id":37101,"taxonomy":"category","description":"","parent":0,"count":1974,"filter":"raw"}],"product_data":[{"term_id":36831,"name":"ArcGIS Maps SDK for JavaScript","slug":"js-api-arcgis","term_group":0,"term_taxonomy_id":36831,"taxonomy":"product","description":"","parent":36601,"count":363,"filter":"raw"},{"term_id":36601,"name":"Developers","slug":"developers","term_group":0,"term_taxonomy_id":36601,"taxonomy":"product","description":"","parent":0,"count":765,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=js-api-arcgis","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/295342","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/4271"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=295342"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/295342\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=295342"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=295342"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=295342"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=295342"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=295342"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}