{"id":79671,"date":"2017-09-29T10:40:43","date_gmt":"2017-09-29T10:40:43","guid":{"rendered":"http:\/\/www.esri.com\/arcgis-blog\/products\/product\/uncategorized\/arcgis-api-for-javascript-versions-4-5-and-3-22-released\/"},"modified":"2018-05-31T19:53:06","modified_gmt":"2018-05-31T19:53:06","slug":"arcgis-api-for-javascript-versions-4-5-and-3-22-released","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released","title":{"rendered":"ArcGIS API for JavaScript versions 4.5 and 3.22 released"},"author":6561,"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":[24921,27491,34581,23571,34591],"industry":[],"product":[36831,36601],"class_list":["post-79671","blog","type-blog","status-publish","format-standard","hentry","category-announcements","tag-javascript","tag-jsapi4","tag-september-2017-release","tag-whats-new","tag-whats-new-september-2017","product-js-api-arcgis","product-developers"],"acf":{"short_description":"Version 4.5 of the ArcGIS API for JavaScript adds some key capabilities and several smaller (but sweet) enhancements that will come in ha...","flexible_content":[{"acf_fc_layout":"content","content":"<p>Version 4.5 of the ArcGIS API for JavaScript adds some key capabilities and several smaller (but sweet) enhancements that will come in handy. Here are the highlights in <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/guide\/release-notes\/index.html\">4.5<\/a> (as well as <a href=\"https:\/\/developers.arcgis.com\/javascript\/3\/jshelp\/whats_new.html\">3.22<\/a>); a full overview detailing new features can be found in the <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/guide\/release-notes\/index.html\">release notes<\/a>.<!--more--><\/p>\n<h2>Fast feature layers: Interact with more than a million features<\/h2>\n<p>Now you can display <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-FeatureLayer.html#fetching-improvements\">more data<\/a> and dynamically visualize features <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-FeatureLayer.html#faster-rendering\">more rapidly<\/a>, such as <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/visualization-vv-color-animate\/index.html\">this layer<\/a> with more than 1 million building footprints. This is achieved by enabling the <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-FeatureLayer.html#webgl-rendering\">WebGL option (beta)<\/a> now available for FeatureLayers in a 2D map.<\/p>\n<p><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/visualization-vv-color-animate\/index.html\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full\" src=\"https:\/\/developers.arcgis.com\/javascript\/latest\/assets\/img\/guide\/whats-new\/45\/featurelayer-webgl-fast-updates.gif\" alt=\"\" width=\"640\" height=\"364\" \/><\/a><\/p>\n<p>FeatureLayer will be rendered with WebGL by default in a future release.<\/p>\n<h2>Drawing: it&#8217;s here!<\/h2>\n<p>You now can enable <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-widgets-Sketch-SketchViewModel.html\">drawing<\/a> in your 4.x apps. In this initial release of sketching tools, you can <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/sketch-geometries\/index.html\">sketch<\/a> new geometries in a 2D map.\u00a0Full support for drawing and editing will become available incrementally in future releases, which will include the following:<\/p>\n<ul>\n<li>Editing existing geometries<\/li>\n<li>Creating and editing new geometries including (but not limited to) multipoint geometries.<\/li>\n<li>Sketching\/editing widgets<\/li>\n<li>Support for drawing in a 3D Scene<\/li>\n<li>Full editing support, including the ability to enable common geometry validation rules, such as preventing self intersecting lines.<\/li>\n<\/ul>\n<p>Check out this new <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/sketch-geometries\/index.html\">sketching sample<\/a> and play around with the current capabilities.<\/p>\n<p><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/sketch-geometries\/index.html\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full\" src=\"https:\/\/developers.arcgis.com\/javascript\/latest\/assets\/img\/guide\/whats-new\/45\/sketch-geometries.gif\" alt=\"\" width=\"640\" height=\"349\" \/><\/a><\/p>\n<h2>OGC enhancements<\/h2>\n<p><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-WMSLayer.html\">WMS<\/a> and <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-WMTSLayer.html\">WMTS<\/a> layers can now be visualized in a 3D scene. Also, <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-KMLLayer.html\">KML<\/a> support has been added for 2D maps. Support for KML in 3D scenes will be available in a future release.<\/p>\n<h2>New options for vertical placement of 3D objects<\/h2>\n<p>The vertical placement of buildings and other 3D Objects can be set using a field value, z-value, or an expression. An example of when this would be useful is when placing objects that are either below ground or are flying above ground.<\/p>\n<p><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/scene-elevationinfo\/index.html\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full\" src=\"https:\/\/developers.arcgis.com\/javascript\/latest\/assets\/img\/guide\/whats-new\/45\/elevation-options-sample.png\" alt=\"\" width=\"639\" height=\"365\" \/><\/a><\/p>\n<h2>Clustering with version 3.22<\/h2>\n<p>If your map has a layer with a large number of points, configuring <a href=\"https:\/\/blogs.esri.com\/esri\/arcgis\/2017\/09\/20\/clustering-now-available-in-arcgis-online\/\">point clustering<\/a> makes it easier to visually extract information from your data. When you <a href=\"https:\/\/developers.arcgis.com\/javascript\/3\/jsapi\/featurelayer-amd.html#setfeaturereduction\">enable clustering<\/a>, point features within a certain distance are grouped into one symbol. You can enable clustering in your JavaScript app using either of the following methods:<\/p>\n<ul>\n<li>Apply clustering <a href=\"https:\/\/blogs.esri.com\/esri\/arcgis\/2017\/09\/20\/clustering-now-available-in-arcgis-online\/\">in ArcGIS Online&#8217;s Map Viewer<\/a>, save your web map, and then load into your JavaScript app<\/li>\n<li>Configure clustering directly on FeatureLayers or CSVLayers <a href=\"https:\/\/developers.arcgis.com\/javascript\/3\/jsapi\/featurelayer-amd.html#setfeaturereduction\">in your JavaScript code<\/a>.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/developers.arcgis.com\/javascript\/3\/jssamples\/fl_clustering_toggle.html\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full\" src=\"https:\/\/developers.arcgis.com\/javascript\/3\/jshelp\/images\/whats_new\/3.22\/clustering-toggle.png\" alt=\"\" width=\"600\" height=\"393\" \/><\/a><\/p>\n<p>Clustering is currently only available in <a href=\"https:\/\/developers.arcgis.com\/javascript\/3\/jshelp\/whats_new.html\">version 3.22<\/a>, but will be added to 4.x in early 2018. This <a href=\"https:\/\/blogs.esri.com\/esri\/arcgis\/2017\/09\/20\/clustering-now-available-in-arcgis-online\/\">blog<\/a> discusses how clustering enables data exploration.<\/p>\n<h2>There&#8217;s more&#8230;<\/h2>\n<p>Explore the release notes and new samples to learn about more updates such as support for vertical coordinate systems, pop-up improvements, and time-saving enhancements such as expanded autocasting support.<\/p>\n<p><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/guide\/release-notes\/index.html\">Version 4.5 release notes<\/a><br \/>\n<a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/index.html?search=4.5\">Version 4.5 samples<\/a><br \/>\n<a href=\"https:\/\/developers.arcgis.com\/javascript\/3\/jshelp\/whats_new.html\">Version 3.22 release notes<\/a><br \/>\n<a href=\"https:\/\/developers.arcgis.com\/javascript\/3\/jssamples\/#latest_samples\">Version 3.22 samples<\/a><\/p>\n"}],"authors":[{"ID":6561,"user_firstname":"Kristian","user_lastname":"Ekenes","nickname":"Kristian Ekenes","user_nicename":"kekenes","display_name":"Kristian Ekenes","user_email":"KEkenes@esri.com","user_url":"https:\/\/github.com\/ekenes","user_registered":"2018-03-02 00:18:32","user_description":"Kristian Ekenes is a Principal Product Engineer at Esri specializing in data visualization on the web. He works on the ArcGIS Maps SDK for JavaScript, ArcGIS Arcade, and Map Viewer in ArcGIS Online. Kristian's work focuses on researching and developing new and innovative data visualization capabilities of geospatial data in web maps, Arcade integration in web maps, and applications of generative AI assistants in web maps. Prior to joining Esri, he worked as a GIS Specialist for an environmental consulting company. Kristian has degrees from Brigham Young University and Arizona State University.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/10\/ekenes-zurich-213x200.png' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"},{"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'\/>"}],"related_articles":"","card_image":false,"wide_image":false},"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>ArcGIS API for JavaScript versions 4.5 and 3.22 released<\/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\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ArcGIS API for JavaScript versions 4.5 and 3.22 released\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released\" \/>\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-05-31T19:53:06+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\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released\"},\"author\":{\"name\":\"Kristian Ekenes\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/5469f723fbfb78138efbb1da56e6aa9b\"},\"headline\":\"ArcGIS API for JavaScript versions 4.5 and 3.22 released\",\"datePublished\":\"2017-09-29T10:40:43+00:00\",\"dateModified\":\"2018-05-31T19:53:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released\"},\"wordCount\":7,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"JavaScript\",\"jsapi4\",\"september 2017 release\",\"what's new\",\"whats new september 2017\"],\"articleSection\":[\"Announcements\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released\",\"name\":\"ArcGIS API for JavaScript versions 4.5 and 3.22 released\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2017-09-29T10:40:43+00:00\",\"dateModified\":\"2018-05-31T19:53:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ArcGIS API for JavaScript versions 4.5 and 3.22 released\"}]},{\"@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\/5469f723fbfb78138efbb1da56e6aa9b\",\"name\":\"Kristian Ekenes\",\"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\/2021\/10\/ekenes-zurich-213x200.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/10\/ekenes-zurich-213x200.png\",\"caption\":\"Kristian Ekenes\"},\"description\":\"Kristian Ekenes is a Principal Product Engineer at Esri specializing in data visualization on the web. He works on the ArcGIS Maps SDK for JavaScript, ArcGIS Arcade, and Map Viewer in ArcGIS Online. Kristian's work focuses on researching and developing new and innovative data visualization capabilities of geospatial data in web maps, Arcade integration in web maps, and applications of generative AI assistants in web maps. Prior to joining Esri, he worked as a GIS Specialist for an environmental consulting company. Kristian has degrees from Brigham Young University and Arizona State University.\",\"sameAs\":[\"https:\/\/github.com\/ekenes\",\"https:\/\/www.linkedin.com\/in\/kristian-ekenes\/\",\"https:\/\/x.com\/kekenes\"],\"gender\":\"male\",\"jobTitle\":\"Principal Product Engineer\",\"worksFor\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/kekenes\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"ArcGIS API for JavaScript versions 4.5 and 3.22 released","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\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released","og_locale":"en_US","og_type":"article","og_title":"ArcGIS API for JavaScript versions 4.5 and 3.22 released","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2018-05-31T19:53:06+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\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released"},"author":{"name":"Kristian Ekenes","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/5469f723fbfb78138efbb1da56e6aa9b"},"headline":"ArcGIS API for JavaScript versions 4.5 and 3.22 released","datePublished":"2017-09-29T10:40:43+00:00","dateModified":"2018-05-31T19:53:06+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released"},"wordCount":7,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["JavaScript","jsapi4","september 2017 release","what's new","whats new september 2017"],"articleSection":["Announcements"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released","name":"ArcGIS API for JavaScript versions 4.5 and 3.22 released","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2017-09-29T10:40:43+00:00","dateModified":"2018-05-31T19:53:06+00:00","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"ArcGIS API for JavaScript versions 4.5 and 3.22 released"}]},{"@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\/5469f723fbfb78138efbb1da56e6aa9b","name":"Kristian Ekenes","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\/2021\/10\/ekenes-zurich-213x200.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2021\/10\/ekenes-zurich-213x200.png","caption":"Kristian Ekenes"},"description":"Kristian Ekenes is a Principal Product Engineer at Esri specializing in data visualization on the web. He works on the ArcGIS Maps SDK for JavaScript, ArcGIS Arcade, and Map Viewer in ArcGIS Online. Kristian's work focuses on researching and developing new and innovative data visualization capabilities of geospatial data in web maps, Arcade integration in web maps, and applications of generative AI assistants in web maps. Prior to joining Esri, he worked as a GIS Specialist for an environmental consulting company. Kristian has degrees from Brigham Young University and Arizona State University.","sameAs":["https:\/\/github.com\/ekenes","https:\/\/www.linkedin.com\/in\/kristian-ekenes\/","https:\/\/x.com\/kekenes"],"gender":"male","jobTitle":"Principal Product Engineer","worksFor":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/author\/kekenes"}]}},"text_date":"September 29, 2017","author_name":"Multiple Authors","author_page":"https:\/\/www.esri.com\/arcgis-blog\/products\/announcements\/announcements\/arcgis-api-for-javascript-versions-4-5-and-3-22-released","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2025\/08\/Newsroom-Keyart-Wide-1920-x-1080.jpg","primary_product":"ArcGIS Maps SDK for JavaScript","tag_data":[{"term_id":24921,"name":"JavaScript","slug":"javascript","term_group":0,"term_taxonomy_id":24921,"taxonomy":"post_tag","description":"","parent":0,"count":151,"filter":"raw"},{"term_id":27491,"name":"jsapi4","slug":"jsapi4","term_group":0,"term_taxonomy_id":27491,"taxonomy":"post_tag","description":"","parent":0,"count":111,"filter":"raw"},{"term_id":34581,"name":"september 2017 release","slug":"september-2017-release","term_group":0,"term_taxonomy_id":34581,"taxonomy":"post_tag","description":"","parent":0,"count":18,"filter":"raw"},{"term_id":23571,"name":"what's new","slug":"whats-new","term_group":0,"term_taxonomy_id":23571,"taxonomy":"post_tag","description":"","parent":0,"count":587,"filter":"raw"},{"term_id":34591,"name":"whats new september 2017","slug":"whats-new-september-2017","term_group":0,"term_taxonomy_id":34591,"taxonomy":"post_tag","description":"","parent":0,"count":7,"filter":"raw"}],"category_data":[{"term_id":37101,"name":"Announcements","slug":"announcements","term_group":0,"term_taxonomy_id":37101,"taxonomy":"category","description":"","parent":0,"count":1980,"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\/79671","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\/6561"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=79671"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/79671\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=79671"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=79671"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=79671"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=79671"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=79671"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}