TimeZone issue in GET API

I am facing a challenge in displaying the dateTime field in local time zone.

When I filter the data in kibana 'Discover' I am getting the date and time in local time zone.
But when I query using the GET API in dev tools, I am not getting the results in local time zone but in UTC.

Below is the API I am running to fetch the data from 2020-08-25T00:00:00 to 2020-08-26T00:00:00.
GET systemload-log/_search
"size": 10000,
"aggs": {
"range": {
"date_range": {
"field": "generateTime_readable",
"ranges": [

Below is the first hit and the generateTime_readable value is 2020-08-25T14:40:00.000Z.
The records from 2020-08-25T00:00:00 to 2020-08-25T14:39:00 are missing though it exists.

    "hits" : [
            "_index" : "systemload-log",
            "_type" : "_doc",
            "_id" : "aJcPJnQBBTV2xJn45Ksl",
            "_score" : 1.0,
            "_source" : {
              "host" : "xxx"
              "memLoad" : "23",
              "message" : "hidden",
              "tenantId" : "2",
              "diskLoad" : "6",
              "port" : 56514,
              "timestamp" : "2020-08-25T14:39:49+0000",
              "Type" : "systemLoadLog",
              "vsnId" : "0",
              "cpuLoad" : "0",
              "sessLoad" : "135",
              "@timestamp" : "2020-08-25T14:40:09.617Z",
              "applianceName" : "xxxx",
              "@version" : "1",
              "generateTime_readable" : **"2020-08-25T14:40:00.000Z"**,
              "tenantName" : "test",
              "applianceId" : "0",
              "generateTime" : "1598366400"
Please help me to show the results in local time zone.

Hello @subash

Discover converts time fields in documents to the local time. If you are consuming a raw api request then you must perform the conversion yourself.

1 Like

This is a bit of a UX break in my opinion, I've created https://github.com/elastic/kibana/issues/76050 to see what we can do here :slight_smile:

I have given "time_zone":"Asia/Calcutta" in the API but still getting the results in UTC.
I am not sure whether it is the correct way of doing.

Please suggest, how to do the time_zone conversion in API.

time_zone is used as an argument for the date range aggregation and is not used to format the resulting document. Relevant docs - https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations-bucket-daterange-aggregation.html

Please suggest, how to do the time_zone conversion in API.

This isn't possible. You would need to covert the value with whatever code is consuming the API response.


This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.