Einige Anforderungen, die neue Daten erstellen (z. B. das Erstellen eines neuen Commits), ermöglichen es Ihnen, Zeitzoneninformationen bereitzustellen, wenn Sie Zeitstempel angeben oder generieren.
Beachten Sie, dass diese Regeln nur für Daten gelten, die an die API übergeben werden, und nicht für Daten, die von der API zurückgegeben werden. Von der API zurückgegebene Zeitstempel liegen gemäß ISO 8601 im UTC-Zeitformat vor.
Bestimmen der Zeitzone für eine Anforderung
Wir wenden die folgenden Regeln in der Reihenfolge ihrer Priorität an, um Zeitzoneninformationen für solche API-Aufrufe zu ermitteln:
- Explizites Bereitstellen eines ISO 8601-Zeitstempels mit Zeitzoneninformationen
- Verwenden des
Time-Zone
-Headers - Verwenden der letzten bekannten Zeitzone für Benutzer*innen
- Standardmäßiges Festlegen auf UTC ohne andere Zeitzoneninformationen
Explizites Bereitstellen eines ISO 8601-Zeitstempels mit Zeitzoneninformationen
API-Aufrufe, die das Angeben eines Zeitstempels ermöglichen, wird dieser genaue Zeitstempel verwendet. Diese Zeitstempel sehen in etwa wie 2014-02-27T15:05:06+01:00
aus.
Ein Beispiel hierfür ist die API zum Verwalten von Commits. Weitere Informationen findest du unter REST-API-Endpunkte für Git-Commits.
Verwenden des Time-Zone
-Headers
Es ist möglich, einen Time-Zone
-Header zu geben, der eine Zeitzone gemäß der Liste der Namen aus der Olson-Datenbank definiert.
curl -H "Time-Zone: Europe/Amsterdam" -X POST https://api.github.com/repos/github-linguist/linguist/contents/new_file.md
Dies bedeutet, dass wir einen Zeitstempel für den Zeitpunkt generieren, zu dem Ihr API-Aufruf in der Zeitzone erfolgt, die dieser Header definiert.
Die API zum Verwalten von Inhalten generiert beispielsweise einen Git-Commit für jede Ergänzung oder Änderung und verwendet die aktuelle Zeit als Zeitstempel. Weitere Informationen findest du unter REST-API-Endpunkte für Repositoryinhalt. Der Time-Zone
-Header bestimmt die Zeitzone, die zum Generieren dieses aktuellen Zeitstempels verwendet wird.
Verwenden der letzten bekannten Zeitzone für Benutzer*innen
Wenn kein Time-Zone
-Header angegeben ist und du einen authentifizierten Aufruf der API vornimmst, verwende die letzte bekannte Zeitzone für die authentifizierten Benutzer*innen. Die letzte bekannte Zeitzone wird aktualisiert, wenn du die GitHub-Website durchsuchst.
Standardmäßiges Festlegen auf UTC ohne andere Zeitzoneninformationen
Wenn die obigen Schritte keine Informationen ergeben, verwenden wir UTC als Zeitzone.