From 75d4f4e51fbb8c830d1fb5d31d7408c816122924 Mon Sep 17 00:00:00 2001 From: msherman32 <35711675+msherman32@users.noreply.github.com> Date: Wed, 13 Nov 2024 12:48:08 -0700 Subject: [PATCH] NSRDB - 8469 - 2023 Data Ingestion (V4.0.0) Documentation (#365) * adding nsrdb-GOES-aggregated-v4-0-0-download.html.md.erb * adding nsrdb-GOES-full-disc-v4-0-0 * adding nsrdb-GOES-conus-v4-0-0 * adding nsrdb-GOES-tmy-v4-0-0-download.html.md.erb Co-authored-by: Michael Sherman --- ...OES-aggregated-v4-0-0-download.html.md.erb | 312 ++++++++++++++++++ ...rdb-GOES-conus-v4-0-0-download.html.md.erb | 312 ++++++++++++++++++ ...GOES-full-disc-v4-0-0-download.html.md.erb | 312 ++++++++++++++++++ ...nsrdb-GOES-tmy-v4-0-0-download.html.md.erb | 312 ++++++++++++++++++ 4 files changed, 1248 insertions(+) create mode 100755 source/docs/solar/nsrdb/nsrdb-GOES-aggregated-v4-0-0-download.html.md.erb create mode 100755 source/docs/solar/nsrdb/nsrdb-GOES-conus-v4-0-0-download.html.md.erb create mode 100755 source/docs/solar/nsrdb/nsrdb-GOES-full-disc-v4-0-0-download.html.md.erb create mode 100755 source/docs/solar/nsrdb/nsrdb-GOES-tmy-v4-0-0-download.html.md.erb diff --git a/source/docs/solar/nsrdb/nsrdb-GOES-aggregated-v4-0-0-download.html.md.erb b/source/docs/solar/nsrdb/nsrdb-GOES-aggregated-v4-0-0-download.html.md.erb new file mode 100755 index 00000000..80b0e566 --- /dev/null +++ b/source/docs/solar/nsrdb/nsrdb-GOES-aggregated-v4-0-0-download.html.md.erb @@ -0,0 +1,312 @@ +--- +title: "NSRDB GOES Aggregated V4.0.0" +summary: "Collect and download, as CSV, a configurable set of solar and meteorological data fields from The NSRDB. The National Solar Radiation Database [(NSRDB)](https://nsrdb.nrel.gov/) is a serially complete collection of satellite-derived measurements of solar radiation—global horizontal, direct normal, and diffuse horizontal irradiance—and meteorological data. These data have been collected at a sufficient number of locations and temporal and spatial scales to accurately represent regional solar radiation climates. The data are publicly available at no cost to the user. These API provide access to downloading the data. Other options are detailed [here](https://nsrdb.nrel.gov/data-sets/how-to-access-data). Read more about the datasets at [https://nsrdb.nrel.gov](https://nsrdb.nrel.gov)" +detail: "This API is capable of creating very large downloadable archives. Unlike a typical API, the response to this provides a request acknowledgement. The real work of creating the requested downloadable archive will continue to run on the server side. When complete, and email will be sent to the email address provided in the initial request with a link to a file to download. In addition to this two step workflow, there is also an option for users who wish to download a single CSV file in direct response to an API request. The .csv format may be used to download a CSV directly. This feature is restricted to use with only a single POINT, for a single YEAR at a time." +url: /api/nsrdb/v2/solar/nsrdb-GOES-aggregated-v4-0-0-download +--- + +# <%= current_page.data.title %> (<%= current_page.data.url %>) +<%= current_page.data.summary %> + +<%= current_page.data.detail %> + + + +## Request URL + +
GET|POST <%= current_page.data.url %>.format?parameters
+ +## Request Parameters +_NOTE: when using POST to submit a request the api_key must still be included as a query parameter in the url. All other parameters may be included in a POST request as part of the payload._ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterRequiredValueDescription
api_keyYes +
Type: string
+
Default: None
+
+

Your developer API key. See API keys for more information.

+
wktYes +
Type: well-known text string
+
Default: None
+
+ A well-known text (WKT) representation of the geometry for which to extract data. May be a point, multipoint, or polygon geometry. When a point is passed the site nearest to that point is used. When a multipoint is passed the site nearest each point is used. This can be useful for downloading multiple sites in a single request when those sites are geographically distant from each other. When a polygon is passed all sites that intersect with the given polygon are used. +
attributesNo +
Type: comma delimited string array
+
Default: Returns ALL
+
Options: dew_point, dhi, dni, ghi, surface_albedo, surface_pressure, air_temperature, wind_direction, wind_speed.
+
+ Each specified attribute(*) will be returned as a column in the resultant CSV download. +
namesYes +
Type: comma delimited string array
+
Default: None
+
Options: 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023.
+
The year(s) for which data should be extracted.
utcNo +
Type: true or false
+
Default: true
+
+ Pass true to retrieve data with timestamps in UTC. Pass false to retrieve data with timestamps converted to local time of data point (without daylight savings time). +
leap_dayNo +
Type: true or false
+
Default: false
+
+ Pass true to retrieve data including leap day (where appropriate). Pass false to retrieve data excluding leap day. +
intervalYes +
Type:30, 60
+
Default: None
+
+ This value determines data resolution. Either 30, 60 minute intervals are available. +
full_nameNo +
Type: string
+
Default: None
+
The full name of the user requesting data.
emailYes +
Type: email string
+
Default: None
+
+ An active email for the user requesting data. This email will be used to deliver the extracted data. +
affiliationNo +
Type: string
+
Default: None
+
+ The organization with which the user requesting the data is affiliated. +
reasonNo +
Type: string
+
Default: None
+
The reason that the user is requesting the data.
mailing_listNo +
Type: true or false
+
Default: false
+
+ Pass true to add the email address to our list of recipients for the NSRDB mailing list. +
+ +## Response Fields + +The response is composed of service-related informational fields and the results of the data query. + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldValueDescription
errors +
Type: string array
+
+

A list of error messages

+
inputs +
Type: Object Hash
+
Key: Value pairs representing all input parameters
outputs +
Type: Object Hash
+
Upon successful completion a message will be returned informing the user that file generation is in progress and an email will be sent to the address provided in the email input field when the download is ready
+ +## Data File Format + +Generated data files are formatted in accordance with the Standard Time Series Data File Format. This file format has been developed to support [SAM](https://sam.nrel.gov/) and other NREL models and is documented fully in [this PDF](https://sam.nrel.gov/sites/default/files/content/documents/pdf/wfcsv.pdf). More information on SAM file formats available on [the SAM weather page](https://sam.nrel.gov/weather). + +## Examples +Examples may not reflect this specific dataset. + +### JSON Output Format + +
GET <%= current_page.data.url %>.json?wkt=POLYGON((-130.756145509839060 48.75520578942107,-130.75571635639668 48.75520578942107,-130.75571635639668 48.75485477666326,-130.75614550983906 48.75485477666326,-130.75614550983906 48.75520578942107))&attributes=winddirection_180m&names=2017&utc=false&leap_day=true&email=user@company.com
+ +```JSON +{ + "inputs": { + "query": { + "attributes": "winddirection_180m", + "names": "2017", + "utc": "false", + "leap_day": "true", + "email": "user@company.com", + "wkt": "POLYGON((-130.756145509839060 48.75520578942107,-130.75571635639668 48.75520578942107,-130.75571635639668 48.75485477666326,-130.75614550983906 48.75485477666326,-130.75614550983906 48.75520578942107))" + } + }, + "metadata": { + "version": "2.0.0", + "resultset": { + "count": 1 + } + }, + "status": 200, + "outputs": { + "message": "File generation in progress. An email will be sent to user@company.com when the download is ready.", + "downloadUrl": "https://mapfiles.nrel.gov/data/wind/ebc9bbbc34f91c65ac50707d43176c6c.zip" + }, + "errors": [] +} +``` + +### CSV Output Format +Direct streaming of CSV data is supported for single location, single year only. The following response example is truncated after the first few rows of data. + +
GET <%= current_page.data.url %>.csv?wkt=POINT(-179.99 -15.94)&attributes=winddirection_180m&names=2017&utc=false&leap_day=true&email=user@company.com&api_key=DEMO_KEY
+ +```csv +SiteID,Site Timezone,Data Timezone,Longitude,Latitude,Country +80,-9,-9,-130.756,48.75498,b'Canada' +Year,Month,Day,Hour,Minute,wind direction at 180m (deg) +2017,1,1,0,0,347.18 +2017,1,1,0,5,347.3 +2017,1,1,0,10,347.40000000000003 +2017,1,1,0,15,347.52 +2017,1,1,0,20,347.66 +2017,1,1,0,25,347.79 +2017,1,1,0,30,348 +2017,1,1,0,35,348.18 +2017,1,1,0,40,348.35 +``` + +### POST request example in Python + +```python +import requests + +url = "http://developer.nrel.gov<%= current_page.data.url %>.json?api_key=yourapikeygoeshere" + +payload = "api_key={{API_KEY}}&attributes=winddirection_180m&names=2017&utc=true&leap_day=true&interval=60&email=user@company.com&wkt=POINT(-179.99 -15.94)" + +headers = { + 'content-type': "application/x-www-form-urlencoded", + 'cache-control': "no-cache" +} + +response = requests.request("POST", url, data=payload, headers=headers) + +print(response.text) +``` + +

Rate Limits

+ +Rate limits for this application are significantly less than the [standard rate limits](/docs/rate-limits){:target="_blank"} for developer.nrel.gov. This decrease in the limit is required as the data provided through this service is significantly more computationally intensive to generate and provide. These rate limits are carefully calculated to allow all users the maximum throughput that our servers can sustain. + +There are several levels of rate limiting for this service. The first limit determines how many requests a given user can make per 24 hour period. For requests utilizing the .csv format this rate limit is set at 5000 a day at a frequency of no more than 1 per second. For all other requests this limit is set at 1000 requests per day at a frequency of no more than 1 every 2 seconds. + +Secondly each user is limited to 20 in-flight requests at any given time. + +In addition, the service has a fail-safe mechanism to prevent significant performance decreases that can be caused by unexpectedly high usage of the service. This limit will cause the service to stop accepting requests when the queue reaches a point where additional requests will significantly lower server performance. When this limit is hit, the service will error with a message describing that the request queue is full. + +For some tips and tricks to maximize data downloads please read the guide [here](/docs/solar/nsrdb/guide/). + +

Contact

+ +

For questions about the API or the data models please contact nsrdb@nrel.gov

+ +

Errors

+ +

Standard errors may be returned. In addition, the following service-specific errors may be returned:

+ + + + + + + + + + + + + + +
HTTP Status CodeDescription
400Bad Request: When required parameters are missing.
diff --git a/source/docs/solar/nsrdb/nsrdb-GOES-conus-v4-0-0-download.html.md.erb b/source/docs/solar/nsrdb/nsrdb-GOES-conus-v4-0-0-download.html.md.erb new file mode 100755 index 00000000..2795b3d4 --- /dev/null +++ b/source/docs/solar/nsrdb/nsrdb-GOES-conus-v4-0-0-download.html.md.erb @@ -0,0 +1,312 @@ +--- +title: "NSRDB GOES Conus V4.0.0" +summary: "Collect and download, as CSV, a configurable set of solar and meteorological data fields from The NSRDB. The National Solar Radiation Database [(NSRDB)](https://nsrdb.nrel.gov/) is a serially complete collection of satellite-derived measurements of solar radiation—global horizontal, direct normal, and diffuse horizontal irradiance—and meteorological data. These data have been collected at a sufficient number of locations and temporal and spatial scales to accurately represent regional solar radiation climates. The data are publicly available at no cost to the user. These API provide access to downloading the data. Other options are detailed [here](https://nsrdb.nrel.gov/data-sets/how-to-access-data). Read more about the datasets at [https://nsrdb.nrel.gov](https://nsrdb.nrel.gov)" +detail: "This API is capable of creating very large downloadable archives. Unlike a typical API, the response to this provides a request acknowledgement. The real work of creating the requested downloadable archive will continue to run on the server side. When complete, and email will be sent to the email address provided in the initial request with a link to a file to download. In addition to this two step workflow, there is also an option for users who wish to download a single CSV file in direct response to an API request. The .csv format may be used to download a CSV directly. This feature is restricted to use with only a single POINT, for a single YEAR at a time." +url: /api/nsrdb/v2/solar/nsrdb-GOES-conus-v4-0-0-download +--- + +# <%= current_page.data.title %> (<%= current_page.data.url %>) +<%= current_page.data.summary %> + +<%= current_page.data.detail %> + + + +## Request URL + +
GET|POST <%= current_page.data.url %>.format?parameters
+ +## Request Parameters +_NOTE: when using POST to submit a request the api_key must still be included as a query parameter in the url. All other parameters may be included in a POST request as part of the payload._ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterRequiredValueDescription
api_keyYes +
Type: string
+
Default: None
+
+

Your developer API key. See API keys for more information.

+
wktYes +
Type: well-known text string
+
Default: None
+
+ A well-known text (WKT) representation of the geometry for which to extract data. May be a point, multipoint, or polygon geometry. When a point is passed the site nearest to that point is used. When a multipoint is passed the site nearest each point is used. This can be useful for downloading multiple sites in a single request when those sites are geographically distant from each other. When a polygon is passed all sites that intersect with the given polygon are used. +
attributesNo +
Type: comma delimited string array
+
Default: Returns ALL
+
Options: dew_point, dhi, dni, ghi, surface_albedo, surface_pressure, air_temperature, wind_direction, wind_speed.
+
+ Each specified attribute(*) will be returned as a column in the resultant CSV download. +
namesYes +
Type: comma delimited string array
+
Default: None
+
Options: 2021, 2022, 2023.
+
The year(s) for which data should be extracted.
utcNo +
Type: true or false
+
Default: true
+
+ Pass true to retrieve data with timestamps in UTC. Pass false to retrieve data with timestamps converted to local time of data point (without daylight savings time). +
leap_dayNo +
Type: true or false
+
Default: false
+
+ Pass true to retrieve data including leap day (where appropriate). Pass false to retrieve data excluding leap day. +
intervalYes +
Type:5, 15, 30, 60
+
Default: None
+
+ This value determines data resolution. Either 5, 15, 30, 60 minute intervals are available. +
full_nameNo +
Type: string
+
Default: None
+
The full name of the user requesting data.
emailYes +
Type: email string
+
Default: None
+
+ An active email for the user requesting data. This email will be used to deliver the extracted data. +
affiliationNo +
Type: string
+
Default: None
+
+ The organization with which the user requesting the data is affiliated. +
reasonNo +
Type: string
+
Default: None
+
The reason that the user is requesting the data.
mailing_listNo +
Type: true or false
+
Default: false
+
+ Pass true to add the email address to our list of recipients for the NSRDB mailing list. +
+ +## Response Fields + +The response is composed of service-related informational fields and the results of the data query. + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldValueDescription
errors +
Type: string array
+
+

A list of error messages

+
inputs +
Type: Object Hash
+
Key: Value pairs representing all input parameters
outputs +
Type: Object Hash
+
Upon successful completion a message will be returned informing the user that file generation is in progress and an email will be sent to the address provided in the email input field when the download is ready
+ +## Data File Format + +Generated data files are formatted in accordance with the Standard Time Series Data File Format. This file format has been developed to support [SAM](https://sam.nrel.gov/) and other NREL models and is documented fully in [this PDF](https://sam.nrel.gov/sites/default/files/content/documents/pdf/wfcsv.pdf). More information on SAM file formats available on [the SAM weather page](https://sam.nrel.gov/weather). + +## Examples +Examples may not reflect this specific dataset. + +### JSON Output Format + +
GET <%= current_page.data.url %>.json?wkt=POLYGON((-130.756145509839060 48.75520578942107,-130.75571635639668 48.75520578942107,-130.75571635639668 48.75485477666326,-130.75614550983906 48.75485477666326,-130.75614550983906 48.75520578942107))&attributes=winddirection_180m&names=2017&utc=false&leap_day=true&email=user@company.com
+ +```JSON +{ + "inputs": { + "query": { + "attributes": "winddirection_180m", + "names": "2017", + "utc": "false", + "leap_day": "true", + "email": "user@company.com", + "wkt": "POLYGON((-130.756145509839060 48.75520578942107,-130.75571635639668 48.75520578942107,-130.75571635639668 48.75485477666326,-130.75614550983906 48.75485477666326,-130.75614550983906 48.75520578942107))" + } + }, + "metadata": { + "version": "2.0.0", + "resultset": { + "count": 1 + } + }, + "status": 200, + "outputs": { + "message": "File generation in progress. An email will be sent to user@company.com when the download is ready.", + "downloadUrl": "https://mapfiles.nrel.gov/data/wind/ebc9bbbc34f91c65ac50707d43176c6c.zip" + }, + "errors": [] +} +``` + +### CSV Output Format +Direct streaming of CSV data is supported for single location, single year only. The following response example is truncated after the first few rows of data. + +
GET <%= current_page.data.url %>.csv?wkt=POINT(-179.99 -15.94)&attributes=winddirection_180m&names=2017&utc=false&leap_day=true&email=user@company.com&api_key=DEMO_KEY
+ +```csv +SiteID,Site Timezone,Data Timezone,Longitude,Latitude,Country +80,-9,-9,-130.756,48.75498,b'Canada' +Year,Month,Day,Hour,Minute,wind direction at 180m (deg) +2017,1,1,0,0,347.18 +2017,1,1,0,5,347.3 +2017,1,1,0,10,347.40000000000003 +2017,1,1,0,15,347.52 +2017,1,1,0,20,347.66 +2017,1,1,0,25,347.79 +2017,1,1,0,30,348 +2017,1,1,0,35,348.18 +2017,1,1,0,40,348.35 +``` + +### POST request example in Python + +```python +import requests + +url = "http://developer.nrel.gov<%= current_page.data.url %>.json?api_key=yourapikeygoeshere" + +payload = "api_key={{API_KEY}}&attributes=winddirection_180m&names=2017&utc=true&leap_day=true&interval=60&email=user@company.com&wkt=POINT(-179.99 -15.94)" + +headers = { + 'content-type': "application/x-www-form-urlencoded", + 'cache-control': "no-cache" +} + +response = requests.request("POST", url, data=payload, headers=headers) + +print(response.text) +``` + +

Rate Limits

+ +Rate limits for this application are significantly less than the [standard rate limits](/docs/rate-limits){:target="_blank"} for developer.nrel.gov. This decrease in the limit is required as the data provided through this service is significantly more computationally intensive to generate and provide. These rate limits are carefully calculated to allow all users the maximum throughput that our servers can sustain. + +There are several levels of rate limiting for this service. The first limit determines how many requests a given user can make per 24 hour period. For requests utilizing the .csv format this rate limit is set at 5000 a day at a frequency of no more than 1 per second. For all other requests this limit is set at 1000 requests per day at a frequency of no more than 1 every 2 seconds. + +Secondly each user is limited to 20 in-flight requests at any given time. + +In addition, the service has a fail-safe mechanism to prevent significant performance decreases that can be caused by unexpectedly high usage of the service. This limit will cause the service to stop accepting requests when the queue reaches a point where additional requests will significantly lower server performance. When this limit is hit, the service will error with a message describing that the request queue is full. + +For some tips and tricks to maximize data downloads please read the guide [here](/docs/solar/nsrdb/guide/). + +

Contact

+ +

For questions about the API or the data models please contact nsrdb@nrel.gov

+ +

Errors

+ +

Standard errors may be returned. In addition, the following service-specific errors may be returned:

+ + + + + + + + + + + + + + +
HTTP Status CodeDescription
400Bad Request: When required parameters are missing.
diff --git a/source/docs/solar/nsrdb/nsrdb-GOES-full-disc-v4-0-0-download.html.md.erb b/source/docs/solar/nsrdb/nsrdb-GOES-full-disc-v4-0-0-download.html.md.erb new file mode 100755 index 00000000..d5b03e9e --- /dev/null +++ b/source/docs/solar/nsrdb/nsrdb-GOES-full-disc-v4-0-0-download.html.md.erb @@ -0,0 +1,312 @@ +--- +title: "NSRDB GOES Full Disc V4.0.0" +summary: "Collect and download, as CSV, a configurable set of solar and meteorological data fields from The NSRDB. The National Solar Radiation Database [(NSRDB)](https://nsrdb.nrel.gov/) is a serially complete collection of satellite-derived measurements of solar radiation—global horizontal, direct normal, and diffuse horizontal irradiance—and meteorological data. These data have been collected at a sufficient number of locations and temporal and spatial scales to accurately represent regional solar radiation climates. The data are publicly available at no cost to the user. These API provide access to downloading the data. Other options are detailed [here](https://nsrdb.nrel.gov/data-sets/how-to-access-data). Read more about the datasets at [https://nsrdb.nrel.gov](https://nsrdb.nrel.gov)" +detail: "This API is capable of creating very large downloadable archives. Unlike a typical API, the response to this provides a request acknowledgement. The real work of creating the requested downloadable archive will continue to run on the server side. When complete, and email will be sent to the email address provided in the initial request with a link to a file to download. In addition to this two step workflow, there is also an option for users who wish to download a single CSV file in direct response to an API request. The .csv format may be used to download a CSV directly. This feature is restricted to use with only a single POINT, for a single YEAR at a time." +url: /api/nsrdb/v2/solar/nsrdb-GOES-full-disc-v4-0-0-download +--- + +# <%= current_page.data.title %> (<%= current_page.data.url %>) +<%= current_page.data.summary %> + +<%= current_page.data.detail %> + + + +## Request URL + +
GET|POST <%= current_page.data.url %>.format?parameters
+ +## Request Parameters +_NOTE: when using POST to submit a request the api_key must still be included as a query parameter in the url. All other parameters may be included in a POST request as part of the payload._ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterRequiredValueDescription
api_keyYes +
Type: string
+
Default: None
+
+

Your developer API key. See API keys for more information.

+
wktYes +
Type: well-known text string
+
Default: None
+
+ A well-known text (WKT) representation of the geometry for which to extract data. May be a point, multipoint, or polygon geometry. When a point is passed the site nearest to that point is used. When a multipoint is passed the site nearest each point is used. This can be useful for downloading multiple sites in a single request when those sites are geographically distant from each other. When a polygon is passed all sites that intersect with the given polygon are used. +
attributesNo +
Type: comma delimited string array
+
Default: Returns ALL
+
Options: dew_point, dhi, dni, ghi, surface_albedo, surface_pressure, air_temperature, wind_direction, wind_speed.
+
+ Each specified attribute(*) will be returned as a column in the resultant CSV download. +
namesYes +
Type: comma delimited string array
+
Default: None
+
Options: 2018, 2019, 2020, 2021, 2022, 2023.
+
The year(s) for which data should be extracted.
utcNo +
Type: true or false
+
Default: true
+
+ Pass true to retrieve data with timestamps in UTC. Pass false to retrieve data with timestamps converted to local time of data point (without daylight savings time). +
leap_dayNo +
Type: true or false
+
Default: false
+
+ Pass true to retrieve data including leap day (where appropriate). Pass false to retrieve data excluding leap day. +
intervalYes +
Type:10, 30, 60
+
Default: None
+
+ This value determines data resolution. Either 10, 30, 60 minute intervals are available. +
full_nameNo +
Type: string
+
Default: None
+
The full name of the user requesting data.
emailYes +
Type: email string
+
Default: None
+
+ An active email for the user requesting data. This email will be used to deliver the extracted data. +
affiliationNo +
Type: string
+
Default: None
+
+ The organization with which the user requesting the data is affiliated. +
reasonNo +
Type: string
+
Default: None
+
The reason that the user is requesting the data.
mailing_listNo +
Type: true or false
+
Default: false
+
+ Pass true to add the email address to our list of recipients for the NSRDB mailing list. +
+ +## Response Fields + +The response is composed of service-related informational fields and the results of the data query. + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldValueDescription
errors +
Type: string array
+
+

A list of error messages

+
inputs +
Type: Object Hash
+
Key: Value pairs representing all input parameters
outputs +
Type: Object Hash
+
Upon successful completion a message will be returned informing the user that file generation is in progress and an email will be sent to the address provided in the email input field when the download is ready
+ +## Data File Format + +Generated data files are formatted in accordance with the Standard Time Series Data File Format. This file format has been developed to support [SAM](https://sam.nrel.gov/) and other NREL models and is documented fully in [this PDF](https://sam.nrel.gov/sites/default/files/content/documents/pdf/wfcsv.pdf). More information on SAM file formats available on [the SAM weather page](https://sam.nrel.gov/weather). + +## Examples +Examples may not reflect this specific dataset. + +### JSON Output Format + +
GET <%= current_page.data.url %>.json?wkt=POLYGON((-130.756145509839060 48.75520578942107,-130.75571635639668 48.75520578942107,-130.75571635639668 48.75485477666326,-130.75614550983906 48.75485477666326,-130.75614550983906 48.75520578942107))&attributes=winddirection_180m&names=2017&utc=false&leap_day=true&email=user@company.com
+ +```JSON +{ + "inputs": { + "query": { + "attributes": "winddirection_180m", + "names": "2017", + "utc": "false", + "leap_day": "true", + "email": "user@company.com", + "wkt": "POLYGON((-130.756145509839060 48.75520578942107,-130.75571635639668 48.75520578942107,-130.75571635639668 48.75485477666326,-130.75614550983906 48.75485477666326,-130.75614550983906 48.75520578942107))" + } + }, + "metadata": { + "version": "2.0.0", + "resultset": { + "count": 1 + } + }, + "status": 200, + "outputs": { + "message": "File generation in progress. An email will be sent to user@company.com when the download is ready.", + "downloadUrl": "https://mapfiles.nrel.gov/data/wind/ebc9bbbc34f91c65ac50707d43176c6c.zip" + }, + "errors": [] +} +``` + +### CSV Output Format +Direct streaming of CSV data is supported for single location, single year only. The following response example is truncated after the first few rows of data. + +
GET <%= current_page.data.url %>.csv?wkt=POINT(-179.99 -15.94)&attributes=winddirection_180m&names=2017&utc=false&leap_day=true&email=user@company.com&api_key=DEMO_KEY
+ +```csv +SiteID,Site Timezone,Data Timezone,Longitude,Latitude,Country +80,-9,-9,-130.756,48.75498,b'Canada' +Year,Month,Day,Hour,Minute,wind direction at 180m (deg) +2017,1,1,0,0,347.18 +2017,1,1,0,5,347.3 +2017,1,1,0,10,347.40000000000003 +2017,1,1,0,15,347.52 +2017,1,1,0,20,347.66 +2017,1,1,0,25,347.79 +2017,1,1,0,30,348 +2017,1,1,0,35,348.18 +2017,1,1,0,40,348.35 +``` + +### POST request example in Python + +```python +import requests + +url = "http://developer.nrel.gov<%= current_page.data.url %>.json?api_key=yourapikeygoeshere" + +payload = "api_key={{API_KEY}}&attributes=winddirection_180m&names=2017&utc=true&leap_day=true&interval=60&email=user@company.com&wkt=POINT(-179.99 -15.94)" + +headers = { + 'content-type': "application/x-www-form-urlencoded", + 'cache-control': "no-cache" +} + +response = requests.request("POST", url, data=payload, headers=headers) + +print(response.text) +``` + +

Rate Limits

+ +Rate limits for this application are significantly less than the [standard rate limits](/docs/rate-limits){:target="_blank"} for developer.nrel.gov. This decrease in the limit is required as the data provided through this service is significantly more computationally intensive to generate and provide. These rate limits are carefully calculated to allow all users the maximum throughput that our servers can sustain. + +There are several levels of rate limiting for this service. The first limit determines how many requests a given user can make per 24 hour period. For requests utilizing the .csv format this rate limit is set at 5000 a day at a frequency of no more than 1 per second. For all other requests this limit is set at 1000 requests per day at a frequency of no more than 1 every 2 seconds. + +Secondly each user is limited to 20 in-flight requests at any given time. + +In addition, the service has a fail-safe mechanism to prevent significant performance decreases that can be caused by unexpectedly high usage of the service. This limit will cause the service to stop accepting requests when the queue reaches a point where additional requests will significantly lower server performance. When this limit is hit, the service will error with a message describing that the request queue is full. + +For some tips and tricks to maximize data downloads please read the guide [here](/docs/solar/nsrdb/guide/). + +

Contact

+ +

For questions about the API or the data models please contact nsrdb@nrel.gov

+ +

Errors

+ +

Standard errors may be returned. In addition, the following service-specific errors may be returned:

+ + + + + + + + + + + + + + +
HTTP Status CodeDescription
400Bad Request: When required parameters are missing.
diff --git a/source/docs/solar/nsrdb/nsrdb-GOES-tmy-v4-0-0-download.html.md.erb b/source/docs/solar/nsrdb/nsrdb-GOES-tmy-v4-0-0-download.html.md.erb new file mode 100755 index 00000000..f61bd74f --- /dev/null +++ b/source/docs/solar/nsrdb/nsrdb-GOES-tmy-v4-0-0-download.html.md.erb @@ -0,0 +1,312 @@ +--- +title: "NSRDB GOES Tmy V4.0.0" +summary: "Collect and download, as CSV, a configurable set of solar and meteorological data fields from The NSRDB. The National Solar Radiation Database [(NSRDB)](https://nsrdb.nrel.gov/) is a serially complete collection of satellite-derived measurements of solar radiation—global horizontal, direct normal, and diffuse horizontal irradiance—and meteorological data. These data have been collected at a sufficient number of locations and temporal and spatial scales to accurately represent regional solar radiation climates. The data are publicly available at no cost to the user. These API provide access to downloading the data. Other options are detailed [here](https://nsrdb.nrel.gov/data-sets/how-to-access-data). Read more about the datasets at [https://nsrdb.nrel.gov](https://nsrdb.nrel.gov)" +detail: "This API is capable of creating very large downloadable archives. Unlike a typical API, the response to this provides a request acknowledgement. The real work of creating the requested downloadable archive will continue to run on the server side. When complete, and email will be sent to the email address provided in the initial request with a link to a file to download. In addition to this two step workflow, there is also an option for users who wish to download a single CSV file in direct response to an API request. The .csv format may be used to download a CSV directly. This feature is restricted to use with only a single POINT, for a single YEAR at a time." +url: /api/nsrdb/v2/solar/nsrdb-GOES-tmy-v4-0-0-download +--- + +# <%= current_page.data.title %> (<%= current_page.data.url %>) +<%= current_page.data.summary %> + +<%= current_page.data.detail %> + + + +## Request URL + +
GET|POST <%= current_page.data.url %>.format?parameters
+ +## Request Parameters +_NOTE: when using POST to submit a request the api_key must still be included as a query parameter in the url. All other parameters may be included in a POST request as part of the payload._ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterRequiredValueDescription
api_keyYes +
Type: string
+
Default: None
+
+

Your developer API key. See API keys for more information.

+
wktYes +
Type: well-known text string
+
Default: None
+
+ A well-known text (WKT) representation of the geometry for which to extract data. May be a point, multipoint, or polygon geometry. When a point is passed the site nearest to that point is used. When a multipoint is passed the site nearest each point is used. This can be useful for downloading multiple sites in a single request when those sites are geographically distant from each other. When a polygon is passed all sites that intersect with the given polygon are used. +
attributesNo +
Type: comma delimited string array
+
Default: Returns ALL
+
Options: dew_point, dhi, dni, ghi, surface_albedo, surface_pressure, air_temperature, wind_direction, wind_speed.
+
+ Each specified attribute(*) will be returned as a column in the resultant CSV download. +
namesYes +
Type: comma delimited string array
+
Default: None
+
Options: 2022, 2023.
+
The year(s) for which data should be extracted.
utcNo +
Type: true or false
+
Default: true
+
+ Pass true to retrieve data with timestamps in UTC. Pass false to retrieve data with timestamps converted to local time of data point (without daylight savings time). +
leap_dayNo +
Type: true or false
+
Default: false
+
+ Pass true to retrieve data including leap day (where appropriate). Pass false to retrieve data excluding leap day. +
intervalYes +
Type:60
+
Default: None
+
+ This value determines data resolution. Either 60 minute intervals are available. +
full_nameNo +
Type: string
+
Default: None
+
The full name of the user requesting data.
emailYes +
Type: email string
+
Default: None
+
+ An active email for the user requesting data. This email will be used to deliver the extracted data. +
affiliationNo +
Type: string
+
Default: None
+
+ The organization with which the user requesting the data is affiliated. +
reasonNo +
Type: string
+
Default: None
+
The reason that the user is requesting the data.
mailing_listNo +
Type: true or false
+
Default: false
+
+ Pass true to add the email address to our list of recipients for the NSRDB mailing list. +
+ +## Response Fields + +The response is composed of service-related informational fields and the results of the data query. + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldValueDescription
errors +
Type: string array
+
+

A list of error messages

+
inputs +
Type: Object Hash
+
Key: Value pairs representing all input parameters
outputs +
Type: Object Hash
+
Upon successful completion a message will be returned informing the user that file generation is in progress and an email will be sent to the address provided in the email input field when the download is ready
+ +## Data File Format + +Generated data files are formatted in accordance with the Standard Time Series Data File Format. This file format has been developed to support [SAM](https://sam.nrel.gov/) and other NREL models and is documented fully in [this PDF](https://sam.nrel.gov/sites/default/files/content/documents/pdf/wfcsv.pdf). More information on SAM file formats available on [the SAM weather page](https://sam.nrel.gov/weather). + +## Examples +Examples may not reflect this specific dataset. + +### JSON Output Format + +
GET <%= current_page.data.url %>.json?wkt=POLYGON((-130.756145509839060 48.75520578942107,-130.75571635639668 48.75520578942107,-130.75571635639668 48.75485477666326,-130.75614550983906 48.75485477666326,-130.75614550983906 48.75520578942107))&attributes=winddirection_180m&names=2017&utc=false&leap_day=true&email=user@company.com
+ +```JSON +{ + "inputs": { + "query": { + "attributes": "winddirection_180m", + "names": "2017", + "utc": "false", + "leap_day": "true", + "email": "user@company.com", + "wkt": "POLYGON((-130.756145509839060 48.75520578942107,-130.75571635639668 48.75520578942107,-130.75571635639668 48.75485477666326,-130.75614550983906 48.75485477666326,-130.75614550983906 48.75520578942107))" + } + }, + "metadata": { + "version": "2.0.0", + "resultset": { + "count": 1 + } + }, + "status": 200, + "outputs": { + "message": "File generation in progress. An email will be sent to user@company.com when the download is ready.", + "downloadUrl": "https://mapfiles.nrel.gov/data/wind/ebc9bbbc34f91c65ac50707d43176c6c.zip" + }, + "errors": [] +} +``` + +### CSV Output Format +Direct streaming of CSV data is supported for single location, single year only. The following response example is truncated after the first few rows of data. + +
GET <%= current_page.data.url %>.csv?wkt=POINT(-179.99 -15.94)&attributes=winddirection_180m&names=2017&utc=false&leap_day=true&email=user@company.com&api_key=DEMO_KEY
+ +```csv +SiteID,Site Timezone,Data Timezone,Longitude,Latitude,Country +80,-9,-9,-130.756,48.75498,b'Canada' +Year,Month,Day,Hour,Minute,wind direction at 180m (deg) +2017,1,1,0,0,347.18 +2017,1,1,0,5,347.3 +2017,1,1,0,10,347.40000000000003 +2017,1,1,0,15,347.52 +2017,1,1,0,20,347.66 +2017,1,1,0,25,347.79 +2017,1,1,0,30,348 +2017,1,1,0,35,348.18 +2017,1,1,0,40,348.35 +``` + +### POST request example in Python + +```python +import requests + +url = "http://developer.nrel.gov<%= current_page.data.url %>.json?api_key=yourapikeygoeshere" + +payload = "api_key={{API_KEY}}&attributes=winddirection_180m&names=2017&utc=true&leap_day=true&interval=60&email=user@company.com&wkt=POINT(-179.99 -15.94)" + +headers = { + 'content-type': "application/x-www-form-urlencoded", + 'cache-control': "no-cache" +} + +response = requests.request("POST", url, data=payload, headers=headers) + +print(response.text) +``` + +

Rate Limits

+ +Rate limits for this application are significantly less than the [standard rate limits](/docs/rate-limits){:target="_blank"} for developer.nrel.gov. This decrease in the limit is required as the data provided through this service is significantly more computationally intensive to generate and provide. These rate limits are carefully calculated to allow all users the maximum throughput that our servers can sustain. + +There are several levels of rate limiting for this service. The first limit determines how many requests a given user can make per 24 hour period. For requests utilizing the .csv format this rate limit is set at 5000 a day at a frequency of no more than 1 per second. For all other requests this limit is set at 1000 requests per day at a frequency of no more than 1 every 2 seconds. + +Secondly each user is limited to 20 in-flight requests at any given time. + +In addition, the service has a fail-safe mechanism to prevent significant performance decreases that can be caused by unexpectedly high usage of the service. This limit will cause the service to stop accepting requests when the queue reaches a point where additional requests will significantly lower server performance. When this limit is hit, the service will error with a message describing that the request queue is full. + +For some tips and tricks to maximize data downloads please read the guide [here](/docs/solar/nsrdb/guide/). + +

Contact

+ +

For questions about the API or the data models please contact nsrdb@nrel.gov

+ +

Errors

+ +

Standard errors may be returned. In addition, the following service-specific errors may be returned:

+ + + + + + + + + + + + + + +
HTTP Status CodeDescription
400Bad Request: When required parameters are missing.