Most carriers don't provide a timezone for their event and ETA timestamps. So, we must interpret them as "local time", which is resolvable by Google's timezone api, using a geolocated lat/lng for each tracking event. Unfortunately, this support can't be optimally built into this API because it'll require numerous calls to Google's APIs. Clients may want to cache those responses instead of hitting Google every single time, incurring costs. Therefore, timestamps from the carrier are always interpreted as UTC timestamps, and it is up to the client to override the timezone to the location specific one.
Most carriers don't provide a timezone for their event and ETA timestamps. So, we must interpret them as "local time", which is resolvable by Google's timezone api, using a geolocated lat/lng for each tracking event. Unfortunately, this support can't be optimally built into this API because it'll require numerous calls to Google's APIs. Clients may want to cache those responses instead of hitting Google every single time, incurring costs. Therefore, timestamps from the carrier are always interpreted as UTC timestamps, and it is up to the client to override the timezone to the location specific one.