curl:
curl --location --request POST "https://api.netatmo.com/oauth2/token" \ --form "grant_type=password" \ --form "client_id=5a*******21175d8b45ec" \ --form "client_secret=NR*******bYylIAigYvaO" \ --form "username=be*******eb.de" \ --form "password=***111***"
jQuery:
var form = new FormData(); form.append("grant_type", "password"); form.append("client_id", "5a*******21175d8b45ec"); form.append("client_secret", "NR*******bYylIAigYvaO"); form.append("username", "be*******eb.de"); form.append("password", "***111***"); var settings = { "url": "https://api.netatmo.com/oauth2/token", "method": "POST", "timeout": 0, "processData": false, "mimeType": "multipart/form-data", "contentType": false, "data": form }; $.ajax(settings).done(function (response) { console.log(response); });
Ruby:
require "uri" require "net/http" url = URI("https://api.netatmo.com/oauth2/token") https = Net::HTTP.new(url.host, url.port) https.use_ssl = true request = Net::HTTP::Post.new(url) request["content-type"] = 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW' request.body = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"grant_type\"\r\n\r\npassword\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\n5a*******21175d8b45ec\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"client_secret\"\r\n\r\nNR*******bYylIAigYvaO\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"username\"\r\n\r\nbe*******eb.de\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"password\"\r\n\r\n***111***\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--" response = https.request(request) puts response.read_body
Python
import requests url = 'https://api.netatmo.com/oauth2/token' payload = {'grant_type': 'password', 'client_id': '5a*******21175d8b45ec', 'client_secret': 'NR*******bYylIAigYvaO', 'username': 'be*******eb.de', 'password': '***111***'} files = {} headers = {} response = requests.request('POST', url, headers = headers, data = payload, files = files, allow_redirects=False, timeout=undefined, allow_redirects=false) print(response.text)
Node
var https = require('https'); var options = { 'method': 'POST', 'hostname': 'api.netatmo.com', 'path': '/oauth2/token', 'headers': { } }; var req = https.request(options, function (res) { var chunks = []; res.on("data", function (chunk) { chunks.push(chunk); }); res.on("end", function (chunk) { var body = Buffer.concat(chunks); console.log(body.toString()); }); res.on("error", function (error) { console.error(error); }); }); var postData = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"grant_type\"\r\n\r\npassword\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"client_id\"\r\n\r\n5a*******21175d8b45ec\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"client_secret\"\r\n\r\nNR*******bYylIAigYvaO\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"username\"\r\n\r\nbe*******eb.de\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"password\"\r\n\r\n***111***\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--"; req.setHeader('content-type', 'multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW'); req.write(postData); req.end();
PHP:
<?php $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => "https://api.netatmo.com/oauth2/token", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => false, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => array('grant_type' => 'password','client_id' => '5a*******21175d8b45ec','client_secret' => 'NR*******bYylIAigYvaO','username' => 'be*******eb.de','password' => '***111***'), )); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } ?>