Seit Juni 2024 weitet Tesla eine Beschränkung der Fleet-API aus.
Diese Beschränkung führt zur Blockierung der API-Aufrufe und damit der Datenabrufe vom Fahrzeug.
Welche Fahrzeuge sind betroffen?
Es ist nicht klar, welche Fahrzeuge betroffen sind. Tesla gibt datüber keine Auskunft.
Anscheinend wird das Rate Limit schrittweise ausgeweitet.
Eventuell wird das Limit auch mit der Software Version 2024.20 aktiviert.
Welche Limits sind aktuell gültig?
Aktuell verwendet Tesla ein Limit von 300 Abrufen täglich.
Das Limit wird jeweils 00:00 Uhr UTC zurückgesetzt.
Wurden die 300 Abrufe überschritten, dann sind keine weiteren Abrufe mehr möglich bis zum Ablauf des 24 Stunden-Zeitfensters beginnen um 00:00 Uhr UTC.
Warum tritt das Problem jetzt auf?
Mit Fahrzeugsoftware 2024.20 änderte Tesla die Rückmeldung des Fahrzeugstatus über die API. Statt „schlafend“ wird nun nur noch „offline“ geliefert. So ist der „schlafend“ Zustand nicht mehr vom „offline“ Zustand unterscheidbar, wo das Fahrzeug kurzzeitig keinen Mobilfunkempfang hat.
Die App prüft zuerst den Status über die API (gepufferte API-Daten).
Bei „schlafend“ wurde kein Fahrzeugabruf ausgeführt und es wird aus das Offline-Intervall gewechselt. Bei „offline“ wurde ein Fahrzeugabruf durchgeführt und das Online-Intervall wird beibehalten, um nach Wiederherstellen der LTE-Verbindung die Fahrzeugdaten abzurufen.
Dieses App-Verhalten wurde nun angepasst, so dass im Offline-Zustand (der nun schlafend und offline zusammenfasst) kein Fahrzeugabruf ausgeführt wird und das Offline-Intervall verwendet wird.
Damit werden dauerhafte API-Aufrufe vermieden während das Fahrzeug nicht erreichbar ist. Je nach Anteil von Online- und Offline-Zeit kann damit das Online-Intervall auf einen Wert unter 5 Minuten gesenkt werden.
Tritt ein Rate-Limit auf, dann wird dies im Fahrzeugstatus angezeigt mit dem Wert „Rate-Limit“.
Übersicht der Tesla-API-Nutzung
Die App zählt die API-Aufrufe und setzt den Zähler jeweils 00:00 Uhr UTC zurück.
Dieser Zähler wird in den Fahrzeug-Geräteeinstellungen angezeigt.
Dieser Zähler wird App-intern verwendet und stimmt ggf. nicht zu 100% mit dem Tesla-internen Zähler überein.
Ist ein Rate-Limit aktiv, dann werden zusätzlich angezeigt:
- Datum und lokale Zeit, zu der das Limit zurückgesetzt wird
- Dauer in Stunden und Minuten bis zum Zurücksetzen
Übersicht der Kommando-API-Nutzung
Die App verwendet zusätzlich ein App-internes Rate-Limit für Kommandos, um den Command-Proxyserver vor zu hoher Last zu schützen. Dafür wird ein 10-minütiges Zeitfenster verwendet, in dem maximal 60 Aufrufe erfolgen dürfen. Das entspricht im Druchschnitt einem Kommando alle 10 Sekunden. Spitzen sind erlaubt. Bei Überschreiben des Limit werden weitere Aufrufe blockiert, bis das 10-minütige Maximum wieder unterschritten wird.
Die aktuelle Nutzung wird auch in den Geräteeinstellungen angezeigt.
Ab eimem Wert über 100% tritt das Limit in Kraft.
Insights
Die Anzahl der Tesla-API-Aufrufe sowie die Command-API-Nutzung werden auch als Capability zur Verfügung gestellt, womit Insights für diese Werte auswertbar sind.