As of January 2020 GLTG has 32,122,836 datapoints. Please don't fetch all of them at once.
The best way to get datapoints by sensor id in the example below.
Jupyter Notebook
Create an Account
- go to: https://greatlakestogulf.org/geostreams
- Click "Sign Up"
- Fill out form
- Ignore check email
Authentication session for API use
task | curl | inputs | instructions |
---|---|---|---|
get all sensors | curl -X GET -H 'Accept: */*' -H 'Accept-Encoding: gzip, deflate' -H 'Connection: keep-alive' -H 'User-Agent: python-requests/2.19.1' --compressed https://greatlakestogulf.org/geostreams/api/sensors | ||
authenticate | curl -X POST -H 'Accept: */*' -H 'Accept-Encoding: gzip, deflate' -H 'Connection: keep-alive' -H 'Content-Length: 63' -H 'Content-Type: application/json' -H 'User-Agent: python-requests/2.19.1' -d '{"password": "****", "identifier": "email"}' --compressed -i https://greatlakestogulf.org/geostreams/api/authenticate |
| In the response will be X-Auth-Token: followed by the alphanumeric security token |
get all datapoints for a single sensor | curl -X GET -H 'Accept: */*' -H 'Accept-Encoding: gzip, deflate' -H 'Connection: keep-alive' -H 'Content-Encoding: application/json' -H 'User-Agent: python-requests/2.19.1' -H 'x-auth-token: token' --compressed 'https://greatlakestogulf.org/geostreams/api/datapoints?sensor_id=22' |
| Use token from authentication |
Authentication session for API use
task | step | details | description | curl | python example |
---|---|---|---|---|---|
authenticate | create user | user = {'identifier': 'email', 'password': '******'} | r = requests.post(api_server + '/api/authenticate', data=json.dumps(user), headers={'Content-Type': 'application/json'} | ||
create headers | headers={'Content-Type': 'application/json'} | ||||
request | https://greatlakestogulf.org/geostreams/api/authenticate | add user and headers to request | |||
get token | headers = {"x-auth-token": r.headers["x-auth-token"], "Content-Encoding": "application/json"} | headers = {"x-auth-token": r.headers["x-auth-token"], "Content-Encoding": "application/json"} | |||
add headers to api requests | |||||