Zona horaria
Las solicitudes a la API de Time Zone se construyen como una cadena de URL. La API devuelve datos de la zona horaria para un punto de la Tierra, especificado por un par de latitud y longitud. Ten en cuenta que es posible que los datos de zona horaria no estén disponibles para las ubicaciones sobre el agua, como océanos o mares.
Una solicitud de zona horaria tiene el siguiente formato:
https://maps.googleapis.com/maps/api/timezone/outputFormat?parameters
donde outputFormat puede ser cualquiera de los siguientes valores:
json(recomendado), indica el resultado en notación de objetos JavaScript (JSON).xml, indica la salida en XML, incluida dentro de un nodo<TimeZoneResponse>.
Nota: Las URLs deben estar codificadas correctamente para ser válidas y están limitadas a 16,384 caracteres para todos los servicios web. Ten en cuenta este límite cuando construyas tus URLs. Ten en cuenta que diferentes navegadores, proxies y servidores también pueden tener diferentes límites de caracteres en las URLs.
Parámetros obligatorios
-
ubicación
Una tupla separada por comas que incluye la latitud y la longitud,
location=39.6034810,-119.6822510, que representa la ubicación que se buscará. -
timestamp
Es la hora deseada en segundos desde la medianoche del 1 de enero de 1970 UTC. La API de Time Zone usa
timestamppara determinar si se debe aplicar el horario de verano, según la zona horaria delocation.Ten en cuenta que la API no tiene en cuenta las zonas horarias históricas. Es decir, si especificas una marca de tiempo pasada, la API no tiene en cuenta la posibilidad de que la ubicación haya estado anteriormente en una zona horaria diferente.
Parámetros opcionales
-
idioma
Es el idioma en el que se mostrarán los resultados.
- Consulta la lista de idiomas admitidos. Google actualiza con frecuencia los idiomas admitidos, por lo que es posible que esta lista no sea exhaustiva.
-
Si no se proporciona
language, la API intenta usar el idioma preferido especificado en el encabezadoAccept-Language. - La API hace todo lo posible para proporcionar una dirección que sea legible tanto para el usuario como para los residentes locales. Para lograr ese objetivo, devuelve direcciones de calles en el idioma local, transliteradas a una escritura que el usuario pueda leer si es necesario, y observa el idioma preferido. Todas las demás direcciones se devuelven en el idioma preferido. Todos los componentes de la dirección se devuelven en el mismo idioma, que se elige a partir del primer componente.
- Si un nombre no está disponible en el idioma preferido, la API usa la coincidencia más cercana.
- El idioma preferido tiene una pequeña influencia en el conjunto de resultados que la API elige devolver y en el orden en que se devuelven. El geocodificador interpreta las abreviaturas de manera diferente según el idioma, como las abreviaturas de los tipos de calles o los sinónimos que pueden ser válidos en un idioma, pero no en otro. Por ejemplo, utca y tér son sinónimos de calle en húngaro.
Ejemplos de zonas horarias
Esta sección incluye algunos ejemplos de consultas que demuestran funciones de la API.
La siguiente consulta realiza una solicitud de zona horaria para Nevada, EE. UU. La marca de tiempo se establece en el 5 de diciembre de 2024.
URL
https://maps.googleapis.com/maps/api/timezone/json ?location=39.6034810%2C-119.6822510 ×tamp=1733428634 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810%2C-119.6822510×tamp=1733428634&key=YOUR_API_KEY'
JSON
{ "dstOffset": 0, "rawOffset": -28800, "status": "OK", "timeZoneId": "America/Los_Angeles", "timeZoneName": "Pacific Standard Time", }
XML
<TimeZoneResponse> <status>OK</status> <raw_offset>-28800.0000000</raw_offset> <dst_offset>0.0000000</dst_offset> <time_zone_id>America/Los_Angeles</time_zone_id> <time_zone_name>Pacific Standard Time</time_zone_name> </TimeZoneResponse>
La siguiente consulta realiza una solicitud de zona horaria para Nevada, EE. UU. La ubicación es la misma que en la solicitud anterior, pero la marca de tiempo se establece en el 15 de marzo de 2024. La respuesta ahora incluye una diferencia horaria para el horario de verano.
URL
https://maps.googleapis.com/maps/api/timezone/json ?location=39.6034810%2C-119.6822510 ×tamp=1710547034 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810%2C-119.6822510×tamp=1710547034&key=YOUR_API_KEY'
JSON
{ "dstOffset": 3600, "rawOffset": -28800, "status": "OK", "timeZoneId": "America/Los_Angeles", "timeZoneName": "Pacific Daylight Time", }
XML
<TimeZoneResponse> <status>OK</status> <raw_offset>-28800.0000000</raw_offset> <dst_offset>3600.0000000</dst_offset> <time_zone_id>America/Los_Angeles</time_zone_id> <time_zone_name>Pacific Daylight Time</time_zone_name> </TimeZoneResponse>
Este ejemplo es similar a los dos anteriores, pero establece un parámetro de idioma. La respuesta ahora se localizará para España.
URL
https://maps.googleapis.com/maps/api/timezone/json ?language=es &location=39.6034810%2C-119.6822510 ×tamp=1710547034 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810%2C-119.6822510×tamp=1710547034&language=es&key=YOUR_API_KEY'
JSON
{ "dstOffset": 3600, "rawOffset": -28800, "status": "OK", "timeZoneId": "America/Los_Angeles", "timeZoneName": "hora de verano del Pacífico", }
XML
<TimeZoneResponse> <status>OK</status> <raw_offset>-28800.0000000</raw_offset> <dst_offset>3600.0000000</dst_offset> <time_zone_id>America/Los_Angeles</time_zone_id> <time_zone_name>hora de verano del Pacífico</time_zone_name> </TimeZoneResponse>
Respuestas de zona horaria
Para cada solicitud válida, la API de Time Zone devuelve una respuesta en el formato indicado en la URL de la solicitud.
TimeZoneResponse
| Campo | Obligatorio | Tipo | Descripción |
|---|---|---|---|
|
required | TimeZoneStatus | Consulta TimeZoneStatus para obtener más información. |
|
opcional | número |
Es el desfase del horario de verano en segundos. Será cero si la zona horaria no está en horario de verano durante el |
|
opcional | string |
Es información detallada sobre los motivos del código de estado proporcionado.
Se incluye si el estado no es |
|
opcional | número |
Es la diferencia con respecto a la hora UTC (en segundos) para la ubicación determinada. No tiene en cuenta el horario de verano. |
|
opcional | string |
Cadena que contiene el ID de la zona horaria, como "America/Los_Angeles" o "Australia/Sydney". Estos IDs se definen en el proyecto Unicode Common Locale Data Repository (CLDR) y actualmente están disponibles en el archivo timezone.xml. Cuando una zona horaria tiene varios IDs, se devuelve el canónico. En las respuestas XML, este es el primer alias de cada zona horaria. Por ejemplo, se devuelve "Asia/Calcutta", no "Asia/Kolkata". |
|
opcional | string |
Es el nombre completo de la zona horaria. Este campo se localizará si se configura el parámetro de idioma, p. ej.,
|
TimeZoneStatus
El campo status dentro del objeto de respuesta de la zona horaria contiene el estado de la solicitud. El campo status puede contener los siguientes valores:
-
OKindica que la solicitud se realizó correctamente. -
INVALID_REQUESTindica que la solicitud tenía un formato incorrecto. -
OVER_DAILY_LIMITindica cualquiera de las siguientes opciones:- Falta la clave de API o no es válida.
- No se habilitó la facturación en tu cuenta.
- Se superó un límite de uso autoimpuesto.
- La forma de pago proporcionada ya no es válida (por ejemplo, si venció una tarjeta de crédito).
-
OVER_QUERY_LIMITindica que el solicitante superó la cuota. -
REQUEST_DENIEDindica que la API no completó la solicitud. Confirma que la solicitud se haya enviado a través de HTTPS en lugar de HTTP. -
UNKNOWN_ERRORindica un error desconocido. -
ZERO_RESULTSindica que no se encontraron datos de zona horaria para la posición o la hora especificadas. Confirma que la solicitud sea para una ubicación en tierra y no sobre el agua.
Cómo calcular la hora local
La hora local de una ubicación determinada es la suma del parámetro timestamp y los campos dstOffset y rawOffset del resultado.