Search code examples
rapioauthaccess-token

Get data via Netatmo API within R


I tried to get data from a netatmo station I have access to via API. The following code I used in R.

myapp   <- oauth_app("my_netatmo",key="my_netatmo_client_id",secret="my_netatmo_client_secret")
ep      <- oauth_endpoint(authorize = "http://api.netatmo.net/oauth2/authorize",access = "http://api.netatmo.net/oauth2/token")
sig_tok <- oauth2.0_token(ep,myapp, scope="read_station")

#after that I get redirected to my browser to log in and after that sig_tok contains an access token
sig     <- config(token = sig_tok)
html_get<-GET("http://api.netatmo.net/api/devicelist",sig)

html_get contains this:

html_get
Response [http://api.netatmo.net/api/devicelist]
    Status: 400
    Content-type: application/json; charset=utf-8
    {"error":{"code":1,"message":"Access token is missing"}} 

What am I doing wrong since "sig" seems to contain a token:

sig$token$credentials$access_token
[1] "5**********************f|3**********************a"

There are two tokens or am I wrong (because of "|" in between)?


Solution

  • The '|' inside the access_token is part of it, it is only one access token.

    From the documentation: http://dev.netatmo.com/doc/methods/devicelist, the parameter name is: "access_token". I don't know the R language, but it seems you are sending "token" as a parameter, and not "access_token". It may explain the issue.