aWhere has implemented a number of models in its API that can be used for crop tracking.
suppressWarnings(suppressMessages(library(aWhereAPI)))
httr::set_config(httr::config( ssl_verifypeer = 0L ))
library(magrittr)
library(httr)
library(png)
awhere_endpoints <- httr::oauth_endpoint(base_url = "https://api.awhere.com/v2",
access = "https://api.awhere.com/oauth/token",
authorize = NULL,
fields = "fields",
plantings = "agronomics/plantings",
weather = "weather/fields",
imagery = "imagery/weathermaps",
agronomics = "agronomics/fields",
crops = "agronomics/crops",
models = "agronomics/models",
batch = "jobs")
awhere_endpoints$imagery
api_key = "yizhexu@awhere.com"
api_secret = "********"
get_token(api_key, api_secret)Warning message:
: package ‘magrittr’ was built under R version 3.2.4Warning message:
: package ‘png’ was built under R version 3.2.4
'https://api.awhere.com/v2/imagery/weathermaps'
To retrieve a list of all the models available, send a query to the "models" endpoint URL, as you did with the crops endpoint in the previous lesson.
query <- file.path(awhere_endpoints$models)
query
request <- GET(query, add_headers(Authorization = paste0("Bearer ",awhereEnv75247$token))) %>% content()
request$models %>% jsonlite::toJSON(pretty = TRUE) %>% jsonlite::fromJSON(flatten = TRUE)'https://api.awhere.com/v2/agronomics/models'
| id | name | description | type | source.name | source.link | _links.curies | _links.awhere:crop | _links.self.href | _links.awhere:modelDetails.href | |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | BarleyGenericMSU | Barley (Montana State University) | Barley (Montana State University) | GrowthStage | Montana State University Extension Service | http://store.msuextension.org/publications/AgandNaturalResources/MT200103AG.pdf | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/barley-generic | /v2/agronomics/models/BarleyGenericMSU | /v2/agronomics/models/BarleyGenericMSU/details |
| 2 | BarleyGenericNDAWN | Barley (North Dakota Agricultural Weather Network) | Barley (North Dakota Agricultural Weather Network) | GrowthStage | North Dakota Agricultural Weather Network | http://ndawn.ndsu.nodak.edu/help-canola-growing-degree-days.html | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/barley-generic | /v2/agronomics/models/BarleyGenericNDAWN | /v2/agronomics/models/BarleyGenericNDAWN/details |
| 3 | CanolaBNapusMSU | Canola, B. Napus (Montana State University) | Canola, B. Napus (Montana State University) | GrowthStage | Montana State University Extension Service | http://store.msuextension.org/publications/AgandNaturalResources/MT200103AG.pdf | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/canola-b-napus | /v2/agronomics/models/CanolaBNapusMSU | /v2/agronomics/models/CanolaBNapusMSU/details |
| 4 | CanolaBRapaMSU | Canola, B. Rapa (Montana State University) | Canola, B. Rapa (Montana State University) | GrowthStage | Montana State University Extension Service | http://store.msuextension.org/publications/AgandNaturalResources/MT200103AG.pdf | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/canola-b-rapa | /v2/agronomics/models/CanolaBRapaMSU | /v2/agronomics/models/CanolaBRapaMSU/details |
| 5 | CanolaGenericNDAWN | Canola (North Dakota Agricultural Weather Network) | Canola (North Dakota Agricultural Weather Network) | GrowthStage | North Dakota Agricultural Weather Network | http://ndawn.ndsu.nodak.edu/help-canola-growing-degree-days.html | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/canola-generic | /v2/agronomics/models/CanolaGenericNDAWN | /v2/agronomics/models/CanolaGenericNDAWN/details |
| 6 | Cotton2600UGCE | Cotton, 2600 GDD (University of Georgia) | Cotton, 2600 GDD (University of Georgia) | GrowthStage | University of Georgia Cooperative Extension | http://cotton.tamu.edu/General%20Production/Georgia%20Cotton%20Growth%20and%20Development%20B1252-1.pdf | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/cotton-2600-gdd | /v2/agronomics/models/Cotton2600UGCE | /v2/agronomics/models/Cotton2600UGCE/details |
| 7 | Cotton2200NCCA | Cotton, 2200-2400 GDD (National Cotton Council of | Cotton, 2200-2400 GDD (National Cotton Council of | GrowthStage | National Cotton Council of America | http://www.cotton.org/tech/ace/growth-and-development.cfm | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/cotton-2200-gdd | /v2/agronomics/models/Cotton2200NCCA | /v2/agronomics/models/Cotton2200NCCA/details |
| 8 | OatGenericMSU | Oat (Montana State University) | Oat (Montana State University) | GrowthStage | Montana State University Extension Service | http://store.msuextension.org/publications/AgandNaturalResources/MT200103AG.pdf | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/oat-generic | /v2/agronomics/models/OatGenericMSU | /v2/agronomics/models/OatGenericMSU/details |
| 9 | SugarbeetGenericNDAWN | Sugarbeet (North Dakota Agricultural Weather Netwo | Sugarbeet (North Dakota Agricultural Weather Netwo | GrowthStage | North Dakota Agricultural Weather Network | http://ndawn.ndsu.nodak.edu/help-sugarbeet-growing-degree-days.html | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/sugarbeet-generic | /v2/agronomics/models/SugarbeetGenericNDAWN | /v2/agronomics/models/SugarbeetGenericNDAWN/details |
| 10 | SunflowerEarlyDwarfMSU | Sunflower, Early-Emerging Dwarf (Montana State Uni | Sunflower, Early-Emerging Dwarf (Montana State Uni | GrowthStage | Montana State University Extension Service | http://store.msuextension.org/publications/AgandNaturalResources/MT200103AG.pdf | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/sunflower-early-dwarf | /v2/agronomics/models/SunflowerEarlyDwarfMSU | /v2/agronomics/models/SunflowerEarlyDwarfMSU/details |
| 11 | SunflowerGenericNDAWN | Sunflower (North Dakota Agricultural Weather Netwo | Sunflower (North Dakota Agricultural Weather Netwo | GrowthStage | North Dakota Agricultural Weather Network | http://ndawn.ndsu.nodak.edu/help-sunflower-growing-degree-days.html | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/sunflower-generic | /v2/agronomics/models/SunflowerGenericNDAWN | /v2/agronomics/models/SunflowerGenericNDAWN/details |
| 12 | WheatHardRedMSU | Wheat, Hard Red (Montana State University) | Wheat, Hard Red (Montana State University) | GrowthStage | Montana State University Extension Service | http://store.msuextension.org/publications/AgandNaturalResources/MT200103AG.pdf | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/wheat-hardred | /v2/agronomics/models/WheatHardRedMSU | /v2/agronomics/models/WheatHardRedMSU/details |
| 13 | WheatGenericMAWG | Wheat (Minnesota Association of Wheat Growers) | Wheat (Minnesota Association of Wheat Growers) | GrowthStage | Minnesota Association of Wheat Growers | http://mawg.cropdisease.com/?config_id=growth_information | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/wheat-generic | /v2/agronomics/models/WheatGenericMAWG | /v2/agronomics/models/WheatGenericMAWG/details |
| 14 | WheatGenericNDAWN | Wheat (North Dakota Agricultural Weather Network) | Wheat (North Dakota Agricultural Weather Network) | GrowthStage | North Dakota Agricultural Weather Network | http://ndawn.ndsu.nodak.edu/help-canola-growing-degree-days.html | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/wheat-generic | /v2/agronomics/models/WheatGenericNDAWN | /v2/agronomics/models/WheatGenericNDAWN/details |
| 15 | WheatGenericOSU | Wheat (Oregon State University) | Wheat (Oregon State University) | GrowthStage | Oregon State University Extension Service | https://ir.library.oregonstate.edu/xmlui/bitstream/handle/1957/24398/EM8578.pdf?sequence=1 | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/wheat-generic | /v2/agronomics/models/WheatGenericOSU | /v2/agronomics/models/WheatGenericOSU/details |
| 16 | WheatGenericVCE | Wheat (Virgina Cooperative Extension) | Wheat (Virgina Cooperative Extension) | GrowthStage | Virginia Cooperative Extension, Publication 424-004 | http://pubs.ext.vt.edu/424/424-004/424-004.html | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/wheat-generic | /v2/agronomics/models/WheatGenericVCE | /v2/agronomics/models/WheatGenericVCE/details |
| 17 | Corn2300ISUAbendroth | Corn, 2300 GDD (Iowa State University, Abendroth) | Corn, 2300 GDD (Iowa State University, Abendroth) | GrowthStage | Model based on Corn Growth and Development Abendroth et al. 2011 ISU Publication PMR 1009 | NULL | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/corn-2300-gdd | /v2/agronomics/models/Corn2300ISUAbendroth | /v2/agronomics/models/Corn2300ISUAbendroth/details |
| 18 | Corn2500ISUAbendroth | Corn, 2500 GDD (Iowa State University, Abendroth) | Corn, 2500 GDD (Iowa State University, Abendroth) | GrowthStage | Model based on Corn Growth and Development Abendroth et al. 2011 ISU Publication PMR 1009 | NULL | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/corn-2500-gdd | /v2/agronomics/models/Corn2500ISUAbendroth | /v2/agronomics/models/Corn2500ISUAbendroth/details |
| 19 | Corn2700ISUAbendroth | Corn, 2700 GDD (Iowa State University) | Corn, 2700 GDD (Iowa State University) | GrowthStage | Model based on Corn Growth and Development Abendroth et al. 2011 ISU Publication PMR 1009 | NULL | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/corn-2700-gdd | /v2/agronomics/models/Corn2700ISUAbendroth | /v2/agronomics/models/Corn2700ISUAbendroth/details |
| 20 | Corn2900ISUAbendroth | Corn, 2900 GDD (Iowa State University) | Corn, 2900 GDD (Iowa State University) | GrowthStage | Model based on Corn Growth and Development Abendroth et al. 2011 ISU Publication PMR 1009 | NULL | awhere, http://awhere.com/rels/{rel}, TRUE | /v2/agronomics/crops/corn-2800-gdd | /v2/agronomics/models/Corn2900ISUAbendroth | /v2/agronomics/models/Corn2900ISUAbendroth/details |
The output above is metadata, information about each model, the crop it deals with, who developed it, and the specific URL in the API to access it. You can also retrieve metadata for a specific model by exact name.
query <- file.path(awhere_endpoints$models, "Cotton2600UGCE")
query
request <- GET(query, add_headers(Authorization = paste0("Bearer ",awhereEnv75247$token))) %>% content()
request %>% jsonlite::toJSON(pretty = TRUE) %>% jsonlite::fromJSON(flatten = TRUE)'https://api.awhere.com/v2/agronomics/models/Cotton2600UGCE'
Error in vapply(seq_along(mapped), function(i) {: values must be length 1,
but FUN(X[[2]]) result is length 0
- $id
- 'Cotton2600UGCE'
- $name
- 'Cotton, 2600 GDD (University of Georgia) '
- $description
- 'Cotton, 2600 GDD (University of Georgia) '
- $type
- 'GrowthStage'
- $source
- $name
- 'University of Georgia Cooperative Extension'
- $link
- 'http://cotton.tamu.edu/General%20Production/Georgia%20Cotton%20Growth%20and%20Development%20B1252-1.pdf'
- $_links
- $self
- $href = '/v2/agronomics/models/Cotton2600UGCE'
- $curies
name href templated 1 awhere http://awhere.com/rels/{rel} TRUE - $awhere:crop
href 1 /v2/agronomics/crops/cotton-2600-gdd - $awhere:modelDetails
- $href = '/v2/agronomics/models/Cotton2600UGCE/details'