Vaskeklut Skrevet 24. november 2021 Skrevet 24. november 2021 Jeg ble frustrert over dårlig dokumentasjon på Elvia sine API, så jeg tenkte jeg skulle prøve å hjelpe andre som eventuelt sitter fast. grid-tariff vil gi deg de variable nettleieprisene når det trer i kraft, nå får du bare flate priser. Logg inn på https://elvia.portal.azure-api.net/ Trykk på Products Trykk på Grid Tariff Trykk på Add subscription Vent en stund, og gå inn på profil og finn din primary key Function setter du opp slik: msg.headers = {}; msg.headers['Content-Type'] = 'application/json' msg.headers['Cache-Control'] = 'no-cache' msg.headers['Ocp-Apim-Subscription-Key'] = '' // Her limer du inn "Primary key" msg.payload = { "meteringPointIds": [""] // Her skriver du inn målepunkt-id for din måler } return msg; http request noden settes opp med Method: POST URL: https://elvia.azure-api.net/grid-tariff/api/1/tariffquery/meteringpointsgridtariffs maxhours gir deg timene med størst forbruk siste to månedene (spesifikt fra starten av forrige måned frem til i dag). Dette kan kanskje være nyttig for å ha noe å regulere etter når man skal prøve å holde effektleddet så lavt som mulig. Logg inn på min side på elvia.no Gå til Tilganger Trykk Opprett token og kopier teksten Function setter du opp slik: msg.headers = {}; msg.headers['Content-Type'] = 'application/json' msg.headers['Cache-Control'] = 'no-cache' msg.headers['Authorization'] = 'Bearer '; // etter Bearer og mellomrom limer du inn token fra elvia.no msg.url = "https://elvia.azure-api.net/customer/metervalues/api/v1/maxhours?meteringPointIds=" // Legg inn målepunkt-id på slutten return msg; http request noden settes opp med Method: GET Ellers ingenting. Flow: [{"id":"44491cbe5bb02246","type":"tab","label":"Elvia","disabled":false,"info":"","env":[]},{"id":"5f476984c1923aaa","type":"inject","z":"44491cbe5bb02246","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":180,"y":200,"wires":[["25e9320fbe0b8566"]]},{"id":"25e9320fbe0b8566","type":"function","z":"44491cbe5bb02246","name":"","func":"msg.headers = {};\nmsg.headers['Content-Type'] = 'application/json'\nmsg.headers['Cache-Control'] = 'no-cache'\nmsg.headers['Ocp-Apim-Subscription-Key'] = '' // Her limer du inn \"Primary key\"\n\nmsg.payload = {\n \"meteringPointIds\": [\"\"] // Her skriver du inn målepunkt-id for din måler\n}\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":340,"y":200,"wires":[["129b285ee4decfba"]]},{"id":"129b285ee4decfba","type":"http request","z":"44491cbe5bb02246","name":"grid-tariff","method":"POST","ret":"txt","paytoqs":"ignore","url":"https://elvia.azure-api.net/grid-tariff/api/1/tariffquery/meteringpointsgridtariffs","tls":"","persist":false,"proxy":"","authType":"","senderr":false,"credentials":{},"x":500,"y":200,"wires":[["39d9fcb35f100f4b"]]},{"id":"d6a1d6ea472c5df2","type":"function","z":"44491cbe5bb02246","name":"","func":"msg.headers = {};\nmsg.headers['Content-Type'] = 'application/json'\nmsg.headers['Cache-Control'] = 'no-cache'\nmsg.headers['Authorization'] = 'Bearer '; // etter Bearer og mellomrom limer du inn token fra elvia.no\n\nmsg.url = \"https://elvia.azure-api.net/customer/metervalues/api/v1/maxhours?meteringPointIds=\" // Legg inn målepunkt-id på slutten\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":340,"y":300,"wires":[["54605a746a3db653"]]},{"id":"4a08797ef340b7a1","type":"inject","z":"44491cbe5bb02246","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payloadType":"date","x":180,"y":300,"wires":[["d6a1d6ea472c5df2"]]},{"id":"54605a746a3db653","type":"http request","z":"44491cbe5bb02246","name":"maxhours","method":"GET","ret":"txt","paytoqs":"ignore","url":"","tls":"","persist":false,"proxy":"","authType":"","senderr":false,"credentials":{},"x":500,"y":300,"wires":[["e9a0fb61354f0f30"]]},{"id":"62c9cb26f7da09ec","type":"debug","z":"44491cbe5bb02246","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":830,"y":300,"wires":[]},{"id":"e9a0fb61354f0f30","type":"json","z":"44491cbe5bb02246","name":"","property":"payload","action":"","pretty":false,"x":670,"y":300,"wires":[["62c9cb26f7da09ec"]]},{"id":"9abc072770e37797","type":"debug","z":"44491cbe5bb02246","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":830,"y":200,"wires":[]},{"id":"39d9fcb35f100f4b","type":"json","z":"44491cbe5bb02246","name":"","property":"payload","action":"","pretty":false,"x":670,"y":200,"wires":[["9abc072770e37797"]]}] 1 Siter
Christopher Stenersen Skrevet 1. desember 2021 Skrevet 1. desember 2021 Takk for god informasjon @Vaskeklut Jeg greier å få ut tarifftyper og priser pr. tariff. Men får ikke helt dreisen på å få informasjon om pris og tarifftype Har du bedre hell enn meg? Kjører denne i function node: msg.headers = {}; msg.headers['Ocp-Apim-Subscription-Key'] = 'xxxxxxxxxxxxxxxxxxxxxxxxxx' // Her limer du inn "Primary key" msg.payload = { "range": "today", "meteringPointIds": ["xxxxxxxxxxxxxxxxxxxxxxx"] // Her skriver du inn målepunkt-id for din måler } return msg; slik i http request node: men får bare dette i retur: Ser ut som jeg får ok på min request men ingen fornuftig informasjon følger i payload. Siter
Gjelsvik Skrevet 10. desember 2021 Skrevet 10. desember 2021 Har trøbbel med denne jeg også.. Her feiler den på at målepunktid`n min tydeligvis ikke er i rett format. ( Har redigert de siste tallene i den til bare "0" for anonymisering..) Quote 10.12.2021, 15:33:45node: 62c9cb26f7da09ecmsg : Object object _msgid: "675687fc807529af" payload: object type: "https://tools.ietf.org/html/rfc7231#section-6.5.1" title: "One or more validation errors occurred." status: 400 traceId: "00-7d62625aa97bfc40b9816b70c6b574c0-c68c52c3203ae143-00" errors: object MeteringPointIds: array[1] 0: "The list contain items that fail the validation pattern '^[0-9]{18}$'." topic: "" headers: object transfer-encoding: "chunked" content-type: "application/json; charset=utf-8" vary: "Accept-Encoding" request-context: "appId=cid-v1:0784aec0-42b5-4d24-8f2d-595561dff4d9" strict-transport-security: "max-age=63072000; includeSubDomains; preload" date: "Fri, 10 Dec 2021 14:33:45 GMT" connection: "close" x-node-red-request-node: "ab9c0d88" url: "https://elvia.azure-api.net/customer/metervalues/api/v1/maxhours?meteringPointIds=7359992800000000" statusCode: 400 responseUrl: "https://elvia.azure-api.net/customer/metervalues/api/v1/maxhours?meteringPointIds=735999280000000 Siter
Anbefalte innlegg
Bli med i samtalen
Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.