LogicMachine Forum
Tibber API - Printable Version

+- LogicMachine Forum (https://forum.logicmachine.net)
+-- Forum: LogicMachine eco-system (https://forum.logicmachine.net/forumdisplay.php?fid=1)
+--- Forum: Scripting (https://forum.logicmachine.net/forumdisplay.php?fid=8)
+--- Thread: Tibber API (/showthread.php?tid=2185)

Pages: 1 2 3


RE: Tibber API - CarlS - 25.02.2024

(23.02.2024, 11:35)admin Wrote: Can you send your token and home ID via PM?

Thank's for your answer admin.

I restored the LM with a backup from January, and Tibber is working again.
Lost some loggings, but everything else seems ok.

Best regards, 
Carl


RE: Tibber API - davidkoch29 - 23.04.2024

Hey, i'm trying to get the current price. But i dont have a subscription or a home in tibber. So is it possible to read the current price? And want to write it in a GA.
Here is my code and what i get, but i dont understand why.


RE: Tibber API - Jørn - 23.04.2024

(23.04.2024, 06:16)davidkoch29 Wrote: Hey, i'm trying to get the current price. But i dont have a subscription or a home in tibber. So is it possible to read the current price? And want to write it in a GA.
Here is my code and what i get, but i dont understand why.

You need a Tibber account with a token.


RE: Tibber API - davidkoch29 - 23.04.2024

Hi Jorn, i have a Tibber account and token.

I deleted the token for the picture


RE: Tibber API - admin - 23.04.2024

Try this query:
Code:
query = [[ {   viewer {     homes {       currentSubscription {         priceInfo {           current {             total           }         }       }     }   } } ]]

I suppose you need to create a currentSubscription/home before using queries.


RE: Tibber API - Odd Egil Aasheim - 22.01.2025

Is this method working anymore?
My script suddenly stopped working 8 jan.

i now returns code 400


Code:
os.sleep(1) https = require('ssl.https') json = require('json') ltn12 = require('ltn12') token = '5K4MVS-OjfWhK_4yrjOlFe1F6kJXPVf7eQYggo8ebAE' -- demotoken data = json.encode({   query = '{viewer {homes {currentSubscription {priceInfo}}}}' --kwh pris med avgifter }) tbl = {} res, code = https.request({ url = 'https://api.tibber.com/v1-beta/gql',   method = 'POST',   headers = {     ['authorization'] = 'Bearer ' .. token,     ['content-type']  = 'application/json',     ['content-length'] = #data,   },   source = ltn12.source.string(data),   sink = ltn12.sink.table(tbl), }) if res and code == 200 then   resp = table.concat(tbl)   resp = json.pdecode(resp) homes = resp.data.viewer.homes info = homes[ 1 ].currentSubscription.priceInfo.current log(res, code, info.total, info.level)   grp.write('33/0/51', info.total*100)   grp.write('33/0/53', info.level) else   log(res, code, homes, info) end



RE: Tibber API - admin - 23.01.2025

You are missing priceInfo fields that API should return.

Code:
data = json.encode({   query = [[     { viewer       { homes         { currentSubscription           { priceInfo             { current { total level startsAt } }           }         }       }     }   ]] })

Error logging can be improved because the server response contains a useful error message.
Code:
resp = table.concat(tbl) if res and code == 200 then   resp = json.pdecode(resp)   homes = resp.data.viewer.homes   info = homes[ 1 ].currentSubscription.priceInfo.current      log(res, code, info.total, info.level)   grp.write('33/0/51', info.total*100)   grp.write('33/0/53', info.level) else   log(res, code, resp) end



RE: Tibber API - Odd Egil Aasheim - 23.01.2025

Thanks for your quick reply.

I still got the error but ran the pieces of code on https://developer.tibber.com/explorer and it worked there.

Then I remembered that I some weeks ago I added Melcloud powerup in the Tibber-APP..
In my Melcloud-account I have inserted one extra heatpump at another location.
For some reason this has bumped my mainhome to home #2.

So then i had to change the line 
info = homes[ 1 ].currentSubscription.priceInfo.current
to 
info = homes[ 2 ].currentSubscription.priceInfo.current

and then we are back up and running.

Thank you again for sharing your knowledge  Cool