{"id":2125692,"date":"2023-10-27T09:00:10","date_gmt":"2023-10-27T16:00:10","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=2125692"},"modified":"2024-04-12T01:10:59","modified_gmt":"2024-04-12T08:10:59","slug":"timestamp-offsets-exposed","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed","title":{"rendered":"Time Traveler&#8217;s Guide: Timestamp-offsets Exposed"},"author":5981,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[738191,22941],"tags":[772152,32551,31081,772142],"industry":[],"product":[761642,36831],"class_list":["post-2125692","blog","type-blog","status-publish","format-standard","hentry","category-developers","category-mapping","tag-4-28","tag-arcade","tag-date","tag-timestamp-offset","product-platform","product-js-api-arcgis"],"acf":{"short_description":"Learn more about how timestamp-offset fields can be used for visualization and analysis.","flexible_content":[{"acf_fc_layout":"content","content":"<p><a class=\"external-link\" href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/\" rel=\"nofollow\">Version 4.28<\/a>\u00a0of the\u00a0<a class=\"external-link\" href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/\" rel=\"nofollow\">ArcGIS Maps SDK for JavaScript<\/a> (JS API) introduced three new date-focused field types \u2014 <code>date-only<\/code>, <code>time-only<\/code>, and <code>timestamp-offset<\/code> \u2014 to represent different levels of information when working with date and time values, and the values stored in these fields adhere to ISO8601 compliant formats. To learn more about these fields check out <a class=\"external-link\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/time-is-on-your-side-with-new-field-types-in-arcgis-online\/\" rel=\"nofollow\">Emily\u2019s blog<\/a>. These new field types are supported on <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-FeatureLayer.html\">FeatureLayer<\/a> and <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-MapImageLayer.html\">MapImageLayers<\/a>, with plans to extend their support to other layers in future releases. The timestamp-offset field type efficiently stores both date and time along with the corresponding time zone offset in the following format: <code>YYYY-MM-DDTHH:MM:SS.sss+\/-UTC offset.<\/code><\/p>\n<p>Before the introduction of these fields, date and time values were stored as epoch values in the <code>date<\/code> field type. Epoch values represent a point in time as the number of seconds that have passed since January 1st, 1970, at 00:00:00 (the Unix epoch). For example, October 19, 2021, at midnight in UTC is represented as 1634630400 in epoch value. However, epoch values do not store time zone information, so all values stored in date fields are in the same time zone. This behavior makes it challenging to perform time-based analysis spanning multiple time zones. This is where timestamp-offset fields prove to be invaluable. They are particularly useful for mapping events that occur across various time zones. Practical applications for timestamp-offset values are diverse and varied including flight departure and arrivals, crime statistics or whenever it is advantageous to persist the local time of an event.<\/p>\n<h2 id=\"Dateandtimeenhancementsblog-Let\u2019sseethetimestamp-offsetinaction!\">Let\u2019s see the timestamp-offset in action!<\/h2>\n<p>This blog will explore the power of timestamp-offset field values for visualization and analysis. Below are two sample applications that demonstrate the advantages of using the new timestamp-offset field.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/timestamp-offset-field\/\" target=\"_blank\" rel=\"noopener\">View the app<\/a> | <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/sandbox\/?sample=timestamp-offset-field\" target=\"_blank\" rel=\"noopener\">Source code<\/a><\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2129192,"id":2129192,"title":"tso-field-sample","filename":"tso-field-sample.gif","filesize":928834,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\/tso-field-sample","alt":"","author":"5981","description":"","caption":"Visualizing all 2021 fatal car accidents across time zones in the United States","name":"tso-field-sample","status":"inherit","uploaded_to":2125692,"date":"2023-10-30 18:48:00","modified":"2023-11-07 17:41:30","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":640,"height":402,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample.gif","medium-width":416,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample.gif","medium_large-width":640,"medium_large-height":402,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample.gif","large-width":640,"large-height":402,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample.gif","1536x1536-width":640,"1536x1536-height":402,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample.gif","2048x2048-width":640,"2048x2048-height":402,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample.gif","card_image-width":640,"card_image-height":402,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-field-sample.gif","wide_image-width":640,"wide_image-height":402}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/timestamp-offset-field\/"},{"acf_fc_layout":"content","content":"<p>This application displays all 2021 fatal car accidents that occurred in the United States. The data is color coded by in one by the time of day, that is, morning, afternoon, evening, and night. This data was obtained from Fatality Analysis Reporting System <a title=\"http:\/\/www.cnn.com\/\" href=\"https:\/\/www.nhtsa.gov\/research-data\/fatality-analysis-reporting-system-fars\">here<\/a>.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2131392,"id":2131392,"title":"tso-sample-legend2","filename":"tso-sample-legend2.png","filesize":440901,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\/tso-sample-legend2","alt":"","author":"5981","description":"","caption":"","name":"tso-sample-legend2","status":"inherit","uploaded_to":2125692,"date":"2023-10-31 02:10:36","modified":"2023-10-31 02:10:36","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":851,"height":617,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2.png","medium-width":360,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2.png","medium_large-width":768,"medium_large-height":557,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2.png","large-width":851,"large-height":617,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2.png","1536x1536-width":851,"1536x1536-height":617,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2.png","2048x2048-width":851,"2048x2048-height":617,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2-641x465.png","card_image-width":641,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-sample-legend2.png","wide_image-width":851,"wide_image-height":617}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<h2 id=\"Dateandtimeenhancementsblog-Let\u2019sseethetimestamp-offsetinaction!\">Visualizing accidents by time of day<\/h2>\n<p>Let&#8217;s examine how the <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-renderers-UniqueValueRenderer.html\">unique value renderer<\/a> is created for the accidents layer. It utilizes an <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/arcade\/\">Arcade<\/a> expression to extract the local time, specially the <a href=\"https:\/\/developers.arcgis.com\/arcade\/function-reference\/date_functions\/#hour\">hour<\/a>, that each car accidents occurred. For the purpose of this map, the four named time periods were defined as:<\/p>\n<ul>\n<li><code>night<\/code> for hours between midnight and 6 AM,<\/li>\n<li><code>morning<\/code> for hours between 6:01 AM and noon,<\/li>\n<li><code>afternoon<\/code> for hours between 12:01 PM and 6 PM, and<\/li>\n<li><code>evening<\/code> for hours between 6:01 PM and midnight.<\/li>\n<\/ul>\n<p>The process of obtaining the local time from a timestamp-offset field is relatively simple as demonstrated below. The Arcade expression below uses the <a title=\"https:\/\/developers.arcgis.com\/arcade\/function-reference\/date_functions\/#hour\" href=\"https:\/\/developers.arcgis.com\/arcade\/function-reference\/date_functions\/#hour\">hour<\/a> function to extract the hour an incident occurred. F<span class=\"ui-provider md cie bxh cif cig cih cii cij cik cil cim cin cio cip ciq cir cis cit ciu civ ciw cix ciy ciz cja cjb cjc cjd cje cjf cjg cjh cji cjj cjk\" dir=\"ltr\">or example, data captured at 8AM in Hawaii and data captured at 8AM in New York would both be classified as &#8216;morning&#8217; because both were captured in the morning relative to their time zone.<\/span> Had these incidents been stored in a traditional date field then we would have had to infer each location\u2019s time zone. For national or global datasets this can be difficult or impossible.<\/p>\n<pre><code style=\"padding: 0.5em; color: #333; background: #f8f8f8;\">\r\nlayer.renderer = {\r\n   type: \"unique-value\",\r\n   valueExpression: `\r\n     <span style=\"color: #d14;\">var d = $feature.TSODate;\r\n     var h = Hour(d);\r\n\r\n     When(\r\n       h &lt;= 6, \"night\",\r\n       h &lt;= 12, \"morning\",\r\n       h &lt;= 18, \"afternoon\",\r\n       \"evening\"\r\n     );`, <\/span>\r\n   uniqueValueInfos: [\r\n     {\r\n       value: \"morning\",\r\n       symbol: createSymbol(\"purple\")\r\n     },\r\n     {\r\n       value: \"afternoon\",\r\n       symbol: createSymbol(\"orange\")\r\n     },\r\n     {\r\n       value: \"evening\",\r\n       symbol: createSymbol(\"blue\")\r\n     },\r\n     {\r\n       value: \"night\",\r\n       symbol: createSymbol(\"black\")\r\n     }\r\n   ],\r\n   defaultSymbol: createSymbol(\"gray\")\r\n};\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<h2 id=\"Dateandtimeenhancementsblog-Let\u2019sseethetimestamp-offsetinaction!\">Visualizations depicting the distribution of accidents on charts<\/h2>\n<p>The charts displayed on the right side of the application offer a breakdown of the total number of accidents based on time of day, weekdays, and months. In the weekday chart, you can explore accident data by hours for the selected day of the week, while the monthly chart provides a breakdown of accidents by days within the chosen month.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2129392,"id":2129392,"title":"tso-weekday","filename":"tso-weekday.png","filesize":485149,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\/tso-weekday","alt":"","author":"5981","description":"The chart depicting accidents by hours on weekdays reveals a notable surge in accidents during late-night and early morning hours on weekends.","caption":"The Accidents by Hours on Weekdays chart highlights a noticable increase in accidents during late-night and early morning hours, particularly on weekends.","name":"tso-weekday","status":"inherit","uploaded_to":2125692,"date":"2023-10-30 19:21:43","modified":"2023-10-30 19:28:55","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":1283,"height":854,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday.png","medium-width":392,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday.png","medium_large-width":768,"medium_large-height":511,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday.png","large-width":1283,"large-height":854,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday.png","1536x1536-width":1283,"1536x1536-height":854,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday.png","2048x2048-width":1283,"2048x2048-height":854,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday-699x465.png","card_image-width":699,"card_image-height":465,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/tso-weekday.png","wide_image-width":1283,"wide_image-height":854}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>These charts are generated by querying the dataset to obtain accident counts. The <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-rest-support-Query.html\">query<\/a> involves extracting information about the hour, day, and month from the timestamp-offset field available in the service.\u00a0 For example, the <code>Total accidents by time of day<\/code> chart data is efficiently prepared using timestamp-offset values. This approach enables seamless time-based analysis across multiple time zones. For example, we can compare data captured at 8 AM in Hawaii with data captured at 8 AM in New York because both were recorded in the morning relative to their respective time zones. While it may have been possible to generate this information using a traditional date field, it would have required additional information such as the state, in order to determine the localized time offset and ultimately the local time of each accident. This is complicated by the fact that some dates honor daylight savings while others do not. The following code demonstrates how the data for the <code>Total accidents by time of day<\/code> chart is prepared. It involves querying the accident data, extracting the hours from the timestamp-offset field values, and obtaining the total count of accidents grouped by the hours.<\/p>\n<pre><code style=\"padding: 0.5em; color: #333; background: #f8f8f8;\">\r\nconst query = layer.createQuery();\r\nquery.where = \"1=1;\r\nquery.outStatistics = [\r\n  {\r\n    statisticType: \"count\",\r\n    onStatisticField: \"*\",\r\n    outStatisticFieldName: \"count\"\r\n  }\r\n];\r\nquery.groupByFieldsForStatistics = [<span style=\"color: #d14;\">\"extract(hour from tsodate)<\/span>];\r\nquery.orderByFields = [<span style=\"color: #d14;\">\"extract(hour from tsodate)<\/span>];\r\nconst hourResult = await layer.queryFeatures(query);\r\n\r\nfor (let feature of hourResult.features) {\r\n  hourData.push(feature.attributes[\"count\"]);\r\n  hourLabels.push(feature.attributes[\"EXPR_1\"]);\r\n}\r\n\/\/ create a bar chart showing total number of accidents by time of day\r\nupdateChart(\"chart-day\", hourData, hourLabels, false, 3000);\r\n<\/code><\/pre>\n"},{"acf_fc_layout":"content","content":"<h2 id=\"Dateandtimeenhancementsblog-Let\u2019sseethetimestamp-offsetinaction!\">Aggregation based on timestamp-offset field<\/h2>\n<p>In the example above, a unique value renderer is assigned to the accidents layer to show what time of day accidents occurred. We can change the visualization further by aggregating the accidents based on time of the accident.<\/p>\n<p>The application below demonstrates how accidents data can be presented as <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-support-FeatureReductionCluster.html\">clustered<\/a> <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-renderers-PieChartRenderer.html\">pie charts<\/a>. Once again this demonstrates the benefit of using timestamp-offset with data that spans multiple time zones. Chart size corresponds to the overall number of fatal car incidents whereas the size of each slice illustrates when during the day or night the accidents occurred. \u00a0You can vary the size of each pie based on data with any other field value or Arcade expression using <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-renderers-PieChartRenderer.html#visualVariables\">visualVariables<\/a>. Check out Kristian&#8217;s blog on <a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/8-ways-to-style-point-clusters-on-the-web\/\">8 ways to style point clusters on the web<\/a> to dive into clustering. The <code>Total Accidents by Time of Day<\/code> chart automatically updates as the user zooms or pans the map. The chart updates dynamically by re-processing in-memory data without requesting additional content from the server. This technique is called client-side query, check out <a title=\"http:\/\/www.cnn.com\/\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/turbo-charge-your-web-apps-with-client-side-queries\/\">this<\/a> blog for additional information on ultra-fast maps, charts and visualization.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/codepen.io\/U_B_U\/pen\/bGzEwae\" target=\"_blank\" rel=\"noopener\">View the app<\/a><\/p>\n"},{"acf_fc_layout":"image","image":{"ID":2128652,"id":2128652,"title":"accidents-within-view","filename":"accidents-within-view.gif","filesize":950936,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\/accidents-within-view","alt":"","author":"5981","description":"","caption":"","name":"accidents-within-view","status":"inherit","uploaded_to":2125692,"date":"2023-10-30 17:53:07","modified":"2023-10-30 17:53:07","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":640,"height":438,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view.gif","medium-width":381,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view.gif","medium_large-width":640,"medium_large-height":438,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view.gif","large-width":640,"large-height":438,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view.gif","1536x1536-width":640,"1536x1536-height":438,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view.gif","2048x2048-width":640,"2048x2048-height":438,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view.gif","card_image-width":640,"card_image-height":438,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/10\/accidents-within-view.gif","wide_image-width":640,"wide_image-height":438}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/codepen.io\/U_B_U\/pen\/bGzEwae"},{"acf_fc_layout":"content","content":"<h2 id=\"Dateandtimeenhancementsblog-Let\u2019sseethetimestamp-offsetinaction!\">Summary<\/h2>\n<p>If you are working with temporal data spanning multiple time zones, then the timestamp-offset may be advantageous for certain time-based queries.<\/p>\n<ol>\n<li><strong><b>Trans-time zone comparison<\/b>:<\/strong> Storing event instances in timestamp-offset fields allows for easy inter-time zone comparison and analysis. For example, what time of day has the most accidents across the US? Based on national store transactions, what is the best operating hours for a new coffee stop in Los Angeles?<\/li>\n<li><strong>Temporal Aggregation: <\/strong>Aggregate data irrespective of time zone to see higher-level trends and make comparisons. The samples above that aggregate data by local hour, day, week and month is a great example of this advantage over traditional. Another example, what if a coffee chain wanted to know which store sold the most on Christmas day. It would be unfair to base statistics in a specific time zone. Instead, the local time zone of each store could be used.<\/li>\n<\/ol>\n"}],"authors":[{"ID":5981,"user_firstname":"Undral","user_lastname":"Batsukh","nickname":"Undral","user_nicename":"undr3986","display_name":"Undral Batsukh","user_email":"ubatsukh@esri.com","user_url":"","user_registered":"2018-03-02 00:17:50","user_description":"Undral is a Product Engineer at Esri, working on the ArcGIS Maps SDK for JavaScript.","user_avatar":"<img alt='' src='https:\/\/secure.gravatar.com\/avatar\/c1405160351c3e4722c0c72071122fe10e812710bb886abf9e09701c7c219563?s=96&#038;d=blank&#038;r=g' srcset='https:\/\/secure.gravatar.com\/avatar\/c1405160351c3e4722c0c72071122fe10e812710bb886abf9e09701c7c219563?s=192&#038;d=blank&#038;r=g 2x' class='avatar avatar-96 photo' height='96' width='96' loading='lazy' decoding='async'\/>"}],"related_articles":"","card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/11\/Resize.jpg","wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/11\/banner-clocks.jpg"},"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>Time Traveler&#039;s Guide: Timestamp-offsets Exposed<\/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\/mapping\/timestamp-offsets-exposed\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Time Traveler&#039;s Guide: Timestamp-offsets Exposed\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\" \/>\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=\"2024-04-12T08:10:59+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\/mapping\/timestamp-offsets-exposed#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\"},\"author\":{\"name\":\"Undral Batsukh\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/e42c26b3a6a3ad517ec6148b1f8d4f6a\"},\"headline\":\"Time Traveler&#8217;s Guide: Timestamp-offsets Exposed\",\"datePublished\":\"2023-10-27T16:00:10+00:00\",\"dateModified\":\"2024-04-12T08:10:59+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\"},\"wordCount\":6,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"4.28\",\"arcade\",\"date\",\"timestamp-offset\"],\"articleSection\":[\"Developers\",\"Mapping\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\",\"name\":\"Time Traveler's Guide: Timestamp-offsets Exposed\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2023-10-27T16:00:10+00:00\",\"dateModified\":\"2024-04-12T08:10:59+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Time Traveler&#8217;s Guide: Timestamp-offsets Exposed\"}]},{\"@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\/e42c26b3a6a3ad517ec6148b1f8d4f6a\",\"name\":\"Undral Batsukh\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c1405160351c3e4722c0c72071122fe10e812710bb886abf9e09701c7c219563?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c1405160351c3e4722c0c72071122fe10e812710bb886abf9e09701c7c219563?s=96&d=blank&r=g\",\"caption\":\"Undral Batsukh\"},\"description\":\"Undral is a Product Engineer at Esri, working on the ArcGIS Maps SDK for JavaScript.\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/undr3986\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Time Traveler's Guide: Timestamp-offsets Exposed","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\/mapping\/timestamp-offsets-exposed","og_locale":"en_US","og_type":"article","og_title":"Time Traveler's Guide: Timestamp-offsets Exposed","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2024-04-12T08:10:59+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\/mapping\/timestamp-offsets-exposed#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed"},"author":{"name":"Undral Batsukh","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/e42c26b3a6a3ad517ec6148b1f8d4f6a"},"headline":"Time Traveler&#8217;s Guide: Timestamp-offsets Exposed","datePublished":"2023-10-27T16:00:10+00:00","dateModified":"2024-04-12T08:10:59+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed"},"wordCount":6,"commentCount":0,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["4.28","arcade","date","timestamp-offset"],"articleSection":["Developers","Mapping"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed","name":"Time Traveler's Guide: Timestamp-offsets Exposed","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2023-10-27T16:00:10+00:00","dateModified":"2024-04-12T08:10:59+00:00","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/mapping\/timestamp-offsets-exposed#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"Time Traveler&#8217;s Guide: Timestamp-offsets Exposed"}]},{"@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\/e42c26b3a6a3ad517ec6148b1f8d4f6a","name":"Undral Batsukh","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c1405160351c3e4722c0c72071122fe10e812710bb886abf9e09701c7c219563?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c1405160351c3e4722c0c72071122fe10e812710bb886abf9e09701c7c219563?s=96&d=blank&r=g","caption":"Undral Batsukh"},"description":"Undral is a Product Engineer at Esri, working on the ArcGIS Maps SDK for JavaScript.","url":"https:\/\/www.esri.com\/arcgis-blog\/author\/undr3986"}]}},"text_date":"October 27, 2023","author_name":"Undral Batsukh","author_page":"https:\/\/www.esri.com\/arcgis-blog\/author\/undr3986","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2023\/11\/banner-clocks.jpg","primary_product":"ArcGIS Maps SDK for JavaScript","tag_data":[{"term_id":772152,"name":"4.28","slug":"4-28","term_group":0,"term_taxonomy_id":772152,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":32551,"name":"arcade","slug":"arcade","term_group":0,"term_taxonomy_id":32551,"taxonomy":"post_tag","description":"","parent":0,"count":113,"filter":"raw"},{"term_id":31081,"name":"date","slug":"date","term_group":0,"term_taxonomy_id":31081,"taxonomy":"post_tag","description":"","parent":0,"count":10,"filter":"raw"},{"term_id":772142,"name":"timestamp-offset","slug":"timestamp-offset","term_group":0,"term_taxonomy_id":772142,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"}],"category_data":[{"term_id":738191,"name":"Developers","slug":"developers","term_group":0,"term_taxonomy_id":738191,"taxonomy":"category","description":"","parent":0,"count":422,"filter":"raw"},{"term_id":22941,"name":"Mapping","slug":"mapping","term_group":0,"term_taxonomy_id":22941,"taxonomy":"category","description":"","parent":0,"count":2690,"filter":"raw"}],"product_data":[{"term_id":761642,"name":"ArcGIS Location Platform","slug":"platform","term_group":0,"term_taxonomy_id":761642,"taxonomy":"product","description":"","parent":36601,"count":213,"filter":"raw"},{"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":362,"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\/2125692","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\/5981"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=2125692"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/2125692\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=2125692"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=2125692"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=2125692"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=2125692"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=2125692"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}