Page 1 of 1

API Response Body

Posted: Mon Apr 12, 2021 10:05 am
by Thomas.James
I am new to this forum, however I am trying to download information via API calls, which was easily achieved. Well done to whoever set this up. I am looking to perform a fast/coarse presentation graphic linking wind with electricity outputs. It started as an Excel exercise but became clear within an hour that this was inappropriate given the quantity of information available. Again, well done, this is NOT normally the problem!!

My specific query is to the API "format", which provides the options:
    JSON
    CSV
I can 'reverse engineer' the CSV to ingest the data but the traditional "JSON response body deserialization" isn't a option. The JSON format provided, gives a download link within the response body, which initially I found confusing, as this isn't the normal method to obtain data via a JSON response.

The question:
Are there any plans provide the JSON as classic 'deserialized' content (possibly XML too)? For clarity, the following is the equivalent JSON response content to the example CSV provided by yourselves:

Code: Select all

{
  "SiteID": 189730,
  "Longitude": 55.79272461,
  "Latitude": 46.02188492,
  "Local Time Zone": 5,
  "Data Time Zone": 5,
  "Elevation": 35,
  "data": [
    {
      "Year": 2015,
      "Month": 1,
      "Day": 1,
      "Hour": 0,
      "Minute": 0,
      "Temperature at 100m (C)": 4.46,
      "Temperature at 120m (C)": 4.32,
      "Temperature at 80m (C)": 4.59,
      "Wind Direction at 100m (Degrees)": 118.51,
      "Wind Direction at 120m (Degrees)": 118.88,
      "Wind Direction at 80m (Degrees)": 118.14,
      "Wind Speed at 100m (m/s)": 19.27,
      "Wind Speed at 120m (m/s)": 19.78,
      "Wind Speed at 80m (m/s)": 18.76,
      "Pressure at 200m (atm)": 0.96955,
      "Pressure at 100m (atm)": 0.98149,
      "Pressure at 0m (atm)": 0.99393
    },
    {
      "Year": 2015,
      "Month": 1,
      "Day": 1,
      "Hour": 0,
      "Minute": 15,
      "Temperature at 100m (C)": 4.53,
      "Temperature at 120m (C)": 4.39,
      "Temperature at 80m (C)": 4.67,
      "Wind Direction at 100m (Degrees)": 120.06,
      "Wind Direction at 120m (Degrees)": 120.4,
      "Wind Direction at 80m (Degrees)": 119.72,
      "Wind Speed at 100m (m/s)": 18.73,
      "Wind Speed at 120m (m/s)": 19.25,
      "Wind Speed at 80m (m/s)": 18.19,
      "Pressure at 200m (atm)": 0.96955,
      "Pressure at 100m (atm)": 0.98159,
      "Pressure at 0m (atm)": 0.99393
    },
    {
      "Year": 2015,
      "Month": 1,
      "Day": 1,
      "Hour": 0,
      "Minute": 30,
      "Temperature at 100m (C)": 4.63,
      "Temperature at 120m (C)": 4.5,
      "Temperature at 80m (C)": 4.76,
      "Wind Direction at 100m (Degrees)": 117.59,
      "Wind Direction at 120m (Degrees)": 118.07,
      "Wind Direction at 80m (Degrees)": 117.11,
      "Wind Speed at 100m (m/s)": 19.9,
      "Wind Speed at 120m (m/s)": 20.46,
      "Wind Speed at 80m (m/s)": 19.34,
      "Pressure at 200m (atm)": 0.96886,
      "Pressure at 100m (atm)": 0.9808,
      "Pressure at 0m (atm)": 0.99304
    }
  ]
}

Re: API Response Body

Posted: Tue Apr 13, 2021 4:13 pm
by Caroline.Draxl
We do not plan on supporting a JSON response type in the manner you are asking about. Our use of the JSON response type is tied to the fact that some download requests are so large that they may take several hours to complete. In this workflow the user will receive an email with a link to a downloadable zip file when the file is ready. In all cases the end product is a CSV file. More details at the docs https://developer.nrel.gov/docs/wind/wi ... -download/