Sida 1 av 1

Skillnad API pre/post Highland?

Postat: 28 dec 2023 15:07
av Gr1pen
Har knappat ihop en riktigt bra smart-laddning som styrs av NodeRed som jag har använt i över 4 år till Model 3 LR (2019).
Har fungerat riktigt bra hela tiden.

Nu har jag en ny Model 3 LR Highland och har upptäckt att API anrop som skriver/gör inställningar (som att starta laddning tex) inte fungerar. Enbart läsa/hämta information från bilen fungerar.
Det är samma sak ifrån Node Red, Home Assistant och tex Tibbers integration smartladdning.

Enda skillnaden jag kan hitta är att Highland har API-version 71 och min tidigare bil har API-version 67.

Nån som lyckats styra Highland ifrån 3:e parts app?

Re: Skillnad API pre/post Highland?

Postat: 28 dec 2023 21:56
av kemahe
Aha. Här skulle kunna förklara varför jag har problem med min Highland och Tibber/Gridio. Jag la ett inlägg om det för någon dag sedan. Tyvärr har jag inget annat vettigt att säga än att nej, det funkar riktigt dåligt med tredjepartsappar för min del också.

Re: Skillnad API pre/post Highland?

Postat: 29 dec 2023 15:17
av marcusw
Det har inget att göra med det nya officiella APIet? Jag har fått gå över till det nya i både TeslaFi och Watch for Tesla. Man måste då logga in hos Tesla och utöver det godkänna tre olika saker som appen ska ha access till, bla möjligheten att skicka kommandon till bilen.

Re: Skillnad API pre/post Highland?

Postat: 03 jan 2024 08:52
av MiatoEleanor
Det stämmer att API-version 71 har ändrat hur man startar laddning. Istället för att skicka ett anrop till /api/1/vehicle/command/charge_start måste du nu skicka ett anrop till /api/1/vehicle/command/start_charging.

Här är ett exempel på hur du kan ändra ditt Node-Red-flöde för att stödja API-version 71:

function startLading() {
const response = await fetch("/api/1/vehicle/command/start_charging", {
method: "POST",
headers: {
Authorization: "Bearer <ditt-token>",
},
});

if (response.status === 200) {
// Laddning startad
} else {
// Fel uppstod
}
}
Du kan också använda en annan funktion, som startCharge(), som tillhandahålls av Tesla-API-klienten för Node-Red.

function startLading() {
const api = new TeslaAPI("<ditt-token>");
api.startCharge();
}
Jag hoppas att detta hjälper!

Re: Skillnad API pre/post Highland?

Postat: 03 jan 2024 17:39
av Gr1pen
MiatoEleanor skrev: 03 jan 2024 08:52
Det stämmer att API-version 71 har ändrat hur man startar laddning. Istället för att skicka ett anrop till /api/1/vehicle/command/charge_start måste du nu skicka ett anrop till /api/1/vehicle/command/start_charging.

Här är ett exempel på hur du kan ändra ditt Node-Red-flöde för att stödja API-version 71:

function startLading() {
const response = await fetch("/api/1/vehicle/command/start_charging", {
method: "POST",
headers: {
Authorization: "Bearer <ditt-token>",
},
});

if (response.status === 200) {
// Laddning startad
} else {
// Fel uppstod
}
}
Du kan också använda en annan funktion, som startCharge(), som tillhandahålls av Tesla-API-klienten för Node-Red.

function startLading() {
const api = new TeslaAPI("<ditt-token>");
api.startCharge();
}
Jag hoppas att detta hjälper!
Tack för svar.
Använder jag felaktikt command så får jag "Invalid command" och om jag använder det rätta kommandot så får jag "Forbidden". Det går som sagt att läsa alla parametrar och värden ifrån bilen men inte att anropa något som gör en "ändring" (starta laddning, tuta, blinka med ljuset etc). Hela API:et är alltså Read Only....

Det är samma ifrån Node Red, HA Tibber och Gridio. Tänte först att det var nån man måste godkänna i bilen eller i Tesla-appen att man för göra ändringan, men hittar inget sådant...

Re: Skillnad API pre/post Highland?

Postat: 05 jan 2024 09:46
av marcusw
Gr1pen skrev: 03 jan 2024 17:39
Tack för svar.
Använder jag felaktikt command så får jag "Invalid command" och om jag använder det rätta kommandot så får jag "Forbidden". Det går som sagt att läsa alla parametrar och värden ifrån bilen men inte att anropa något som gör en "ändring" (starta laddning, tuta, blinka med ljuset etc). Hela API:et är alltså Read Only....

Det är samma ifrån Node Red, HA Tibber och Gridio. Tänte först att det var nån man måste godkänna i bilen eller i Tesla-appen att man för göra ändringan, men hittar inget sådant...
Tror att det som sagt kan ha att göra med Teslas nya API.

Detta tas upp i bla Teslamates "Issues" på GitHub: https://github.com/teslamate-org/teslamate/issues/3364

Tesla skriver själva om det här: https://github.com/teslamotors/vehicle- ... m-overview
So in order to send a command to a vehicle, a third-party application must obtain a valid OAuth token from the user, and the user must enroll the application's public key in the vehicle.
Some developers may be familiar with Tesla's Owner API. Owner API will stop working as vehicles begin requiring end-to-end command authentication.

Re: Skillnad API pre/post Highland?

Postat: 05 jan 2024 12:24
av Gr1pen
marcusw skrev: 05 jan 2024 09:46

Tror att det som sagt kan ha att göra med Teslas nya API.

Detta tas upp i bla Teslamates "Issues" på GitHub: https://github.com/teslamate-org/teslamate/issues/3364

Tesla skriver själva om det här: https://github.com/teslamotors/vehicle- ... m-overview
So in order to send a command to a vehicle, a third-party application must obtain a valid OAuth token from the user, and the user must enroll the application's public key in the vehicle.
Some developers may be familiar with Tesla's Owner API. Owner API will stop working as vehicles begin requiring end-to-end command authentication.
Jo det måste vara så. Jag fick till svar från Gridios support nu att de kommer ha support för det nya API:et troligen nästa vecka.
Får använda den sålänge för laddningen i väntan på att Node-Red också förhoppningsvis får stöd för det nya API:et.

Re: Skillnad API pre/post Highland?

Postat: 11 jan 2024 15:02
av Gr1pen
Har haft lite korrespondans med Gridio och tillsammans testat och nu har de fått till smartladdningen i deras app mot Teslas nya API.
Antar att de publicerar instruktioner där man laddar ner appen.
Man måste skanna en QR-kod för appen som läggs till som en "extranyckel" i bilen.

Re: Skillnad API pre/post Highland?

Postat: 12 jan 2024 17:10
av kemahe
Gr1pen skrev:
Har haft lite korrespondans med Gridio och tillsammans testat och nu har de fått till smartladdningen i deras app mot Teslas nya API.
Antar att de publicerar instruktioner där man laddar ner appen.
Man måste skanna en QR-kod för appen som läggs till som en "extranyckel" i bilen.
Härligt att det är på gång med en lösning där. Jag antar att det är samma lösning som Tessie har med en ”fleet key” som läggs till i bilen. Vet du något om när dom planerar släppa ut det här?

Re: Skillnad API pre/post Highland?

Postat: 12 jan 2024 22:55
av Gr1pen
Skulle gissa att det blir vilken dag som helst.