import json, requests
import pandas as pd
import plotly.express as px
import plotly.graph_objects as go

month = 8
day = 7
year = 2024
interval = 5  # minutes

uuid = "ff45e931-e60b-4da6-a844-0c103f2534d0"
url = f"https://data.solarify.ch/api/performance/interval/{uuid}/{year}/{month}/{day}/{interval}"

payload = {}
headers = {"x-api-key": "AIzaSyBaH5CpGr9HmoB6zRsco9lBUS_Iw_fgeDE"}

print(url)

response = requests.request("GET", url, headers=headers, data=payload)
data = json.loads(response.text)
df = pd.DataFrame(data)

fig = go.Figure()
fig.add_trace(
    go.Scatter(
        x=df["timestamp"], y=df["p_yield"], mode="lines+markers", name="PV Production"
    )
)
fig.update_layout(
    title="Energy Profiles", xaxis_title=f"Time [min]", yaxis_title="Power [kW]"
)
fig.show()
