Skip to main content

Zonas horarias y la API de REST

Algunos puntos de conexión de la API de REST permiten especificar información de zona horaria con la solicitud.

Algunas solicitudes que crean datos nuevos, tales como aquellas para crear una confirmación nueva, te permiten proporcionar información sobre la zona horaria cuando especificas o generas marcas de tiempo.

Toma en cuenta que estas reglas se aplican únicamente a los datos que se pasan a la API y no a los que esta devuelve. Las marcas de tiempo devueltas por la API están en hora UTC, en formato ISO 8601.

Determinación de la zona horaria de una solicitud

Aplicamos las siguientes reglas, en orden de prioridad, para determinar la información de la zona horaria para las llamadas a la API:

  1. Proporcionar explícitamente una marca de tiempo ISO 8601 con la información de zona horaria
  2. Uso del encabezado Time-Zone
  3. Uso de la última zona horaria conocida para el usuario
  4. Uso predeterminado de UTC cuando no existe información sobre otra zona horaria

Proporcionar explícitamente una marca de tiempo de tipo ISO 8601 con la información de la zona horaria

Para las llamadas a la API que permitan que se especifique una marca de tiempo, utilizamos esa marca de tiempo exacta. Estas marcas de tiempo son similares a 2014-02-27T15:05:06+01:00.

Un ejemplo de esto es la API para administrar confirmaciones. Para más información, consulta Puntos de conexión de la API de REST para confirmaciones de Git.

Uso del encabezado Time-Zone

Es posible proporcionar un encabezado Time-Zone que defina una zona horaria según la lista de nombres de la base de datos Olson.

curl -H "Time-Zone: Europe/Amsterdam" -X POST https://api.github.com/repos/github-linguist/linguist/contents/new_file.md

Esto significa que generamos una marca de tiempo para el momento en el se haga la llamada a la API en la zona horaria que defina este encabezado.

Por ejemplo, la API de administración de contenido genera una confirmación de Git para cada adición o cambio, y usa la hora actual como marca de tiempo. Para más información, consulta Puntos de conexión de la API de REST para el contenido del repositorio. El encabezado Time-Zone determinará la zona horaria que se utiliza para generar la marca de tiempo actual.

Utilizar la última zona horaria conocida para el usuario

Si no se especifica ningún encabezado Time-Zone y realiza una llamada autenticada a la API, se usa la última zona horaria conocida para el usuario autenticado. La última zona horaria conocida se actualiza cuando sea que busques el sitio web de GitHub.

Predeterminarse en UTC cuando no existe otra información sobre la zona horaria

Si los pasos anteriores no dan como resultado ninguna información, utilizaremos UTC como la zona horaria.