OAuth2 Access Token mit PHP

Hallo Community,

ich versuch im Moment meine Fitbit-Daten mit IP-Symcon abzurufen bzw. ist das mein Ziel. Ich versuche mich da gerade Schritt für Schritt heranzutasten. Eine Fitbit-APP ist erstellt. Jetzt kommt es zu der ersten Baustelle, denn OAuth2 Access Token mit einem PHP Skript abzurufen. Ich kenne mich mit der Materie leider noch gar nicht aus. HAbe zwar gelsen was OAuth ist und wie es unfähr funktioniert. Ich komme aber treotzdem nicht an meine Daten. Ich hoffe jemand kann mir Tipp, Beispiel-Code oder sogar eine Lösung zeigen. Mein Versuch sah so aus (hat nicht so ganz funktioniert :confused::frowning: ):

<?php
$endpoint = "https://www.fitbit.com/oauth2/authorize";


$params = array(
  "client_id" => "XXXXXX",
  "client_secret" => "xxxxxxxxxxxxxxxxxxxxxxxxxx",
  "grant_type" => "WAS_MUSS_HIER_REIN?");

$curl = curl_init($endpoint);
curl_setopt($curl, CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_HEADER,'Content-Type: application/x-www-form-urlencoded');


$postData = "";


foreach($params as $k => $v)
{
   $postData .= $k . '='.urlencode($v).'&';
}

$postData = rtrim($postData, '&');

curl_setopt($curl, CURLOPT_POSTFIELDS, $postData);
echo "Performing Request...";

$json_response = curl_exec($curl);

$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);


if ($status != 200) {
  throw new Exception("Error: call to URL $endpoint failed with status $status, response $json_response, curl_error " . curl_error($curl) . ", curl_errno " . curl_errno($curl) . "
");
}
curl_close($curl);

return $json_response;

?>

Beste Grüße,
Snook

hallo snook
es gibt ein fitbit-Modul
im post #5 findest du den link
du musst dann nur über einen webhook regelmässig eine Aktivierung schicken damit der Token erneuert wird
sieht dann so aus: https://f00xxxxxxxxxxxxxxxxxxxxxxxxd91.ipmagic.de/hook/fitbit

Hi Axel,

Danke für deine Antwortet diese Modul habe ich sogar schon in IPS. Aber ich weiß nicht was ich jetzt genau machen muss damit? Deswegen wollte ich es selber machen um es zu verstehen, aber ich denke dafür bin ich einfach nicht gut genug im programmieren :slight_smile:

Wenn ich das Modul drin habe, benötige ich dann noch ein Skript oder Variablen wo ich meine Daten abspeichern kann?

LG

Varis um zu loggen
ich habe es wieder komplett gelöscht. da die Daten bei fitbit eh geloggt werden. welche modell hast du ?
hatte erst alta hr jetzt charger2

Super ich habe es jetzt hinbekommen. Ich habe die Charge 2 HR, deswegen noch die Frage, ob man auch an die Puls-Daten kommen kann?

LG
Snook

nein leider nicht, ist im Modul nicht hinterlegt. Ausserdem werden die HR-Daten von Fitbit stiefmütterlich behandelt.
Es gibt keinerlei Exportmöglichkeiten