Thank you so much for the help!!!
I guess it makes sense to read error messages >.>
If anyone else is looking to do something similar this is my final code, with a WebHook widget in the app attached to V8.
#include <ArduinoJson.h>
#define BLYNK_PRINT Serial
#define BLYNK_MAX_READBYTES 1024
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
char auth[] = "___AUTH TOKEN___";
char ssid[] = "___SSID___";
char pass[] = "___PSWD___";
void setup() {
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
Blynk.virtualWrite(V8, "http://api.openweathermap.org/data/2.5/weather?id=7290688&APPID=1f7238a8c0f08b401922637efe12****");
}
void loop() {
Blynk.run();
}
BLYNK_WRITE(V8)
{
StaticJsonDocument<1024> doc;
String json = param.asStr();
Serial.println("WebHook data:");
Serial.println(json);
deserializeJson(doc, json);
float windSpeed = doc["wind"]["speed"];
Serial.println(windSpeed);
}
This will print the raw JSON and then the wind speed - the piece of data I was looking for.
[57] Connecting to SSID
[561] Connected to WiFi
[561] IP: 192.168.1.102
[561]
___ __ __
/ _ )/ /_ _____ / /__
/ _ / / // / _ \/ '_/
/____/_/\_, /_//_/_/\_\
/___/ v0.6.1 on NodeMCU
[635] Connecting to blynk-cloud.com:80
[1106] Ready (ping: 28ms).
WebHook data:
{"coord":{"lon":0.01,"lat":50.88},"weather":[{"id":800,"main":"Clear","description":"clear sky","icon":"01n"}],"base":"stations","main":{"temp":296.05,"pressure":1011,"humidity":60,"temp_min":292.59,"temp_max":299.26},"visibility":10000,"wind":{"speed":1.5},"clouds":{"all":0},"dt":1561845593,"sys":{"type":1,"id":1413,"message":0.0102,"country":"GB","sunrise":1561780133,"sunset":1561839453},"timezone":3600,"id":7290688,"name":"Lewes District","cod":200}
1.50
Thank you soo much for your help and time, I am blown away by how fast and inciteful you have been. <3