NSF Awards

The NSF Awards API allows users to build a query based on any of the parameters below.

Notice: Notifications of scheduled downtime, service disruption, or unexpected downtime can be found at http://www.research.gov. NSF uses reasonable efforts to minimize any disruption, inaccessibility or inoperability of the services in connection with the scheduled downtime or other interruptions of service. Scheduled downtime is typically on weekends starting at 10PM Friday through 12PM Sunday. When additional maintenance time is required by NSF, the maintenance window will be extended.

Request URLs

GET http://api.nsf.gov/services/v1/awards.{format}?parameters
GET http://api.nsf.gov/services/v1/awards/{id}.{format}
GET http://api.nsf.gov/services/v1/awards/{id}/projectoutcomes.{format}

Sample Requests

  1. Searches for all awards containing the keyword term 'water' [XML Format]:
    http://api.nsf.gov/services/v1/awards.xml?keyword=water
  2. Searches for all awards containing the keyword term 'water' [JSON Format]:
    http://api.nsf.gov/services/v1/awards.json?keyword=water
  3. Searches for all awards containing the keyword term 'water' [JSONP Format]:
    http://api.nsf.gov/services/v1/awards.json?callback=processJson&keyword=water
  4. Retrieves a specific award information using unique award identifier [XML Format]:
    http://api.nsf.gov/services/v1/awards/1052893.xml
  5. Retrieves a specific award information using unique award identifier [JSON Format]:
    http://api.nsf.gov/services/v1/awards/1052893.json
  6. Retrieves a specific award information using unique award identifier [JSONP Format]:
    http://api.nsf.gov/services/v1/awards/1052893.json?callback=processJson
  7. Retrieves Project Outcomes Report for an award [XML Format]:
    http://api.nsf.gov/services/v1/awards/1052893/projectoutcomes.xml
  8. Retrieves Project Outcomes Report for an award [JSON Format]:
    http://api.nsf.gov/services/v1/awards/1052893/projectoutcomes.json
  9. Retrieves Project Outcomes Report for an award [JSONP Format]:
    http://api.nsf.gov/services/v1/awards/1052893/projectoutcomes.json?callback=processJson

Resource Parameters

Parameter Required Variable Name Value
Output Format Yes {format} Enter the output format. Supported values are "xml" and "json"
Award Unique Identifier Yes {id} Enter the award unique identifier number.

Request Parameters

Parameter Required Argument Value
Keyword No keyword Free text search across all the available awards data
Results Per Page No rpp Value in the range of 1 to 25. Default Value is set to 25 & it's the upper limit as well.
Record Offset No offset Enter the record offset (always starts with 1). This is used in conjunction with results per page to fetch large data sets in chunks. For example, if a search produces 82 results and the result per page is set to 25, this will generate 4 set of pages. 3 pages will have 25 results and the last page will have 7 results. Record offset value will be
Page 1: offset=1
Page 2: offset=26
Page 3: offset=51
Page 4: offset=76

JSONP Callback No callback Provide the name of the callback function (ex. processJson)
Print Fields No printFields Comma separated output print field names required in the output (ex. awardeeName,id,pdPIName). Click Output Fields to see the complete list of print fields
Award Unique Identifier No id An award unique identifier to retrieve the information (ex. 1336650). This field is required, if ProjectOutcomes is requested for an award resource.
Agency Name No agency NSF
NASA
Awardee City Name No awardeeCity Awardee city name(ex. Arlington)
Awardee Country Code No awardeeCountryCode AU
BD
BR
CA
GM
SW
SZ
UK
US
USA
Awardee County Name No awardeeCounty Awardee county name (ex. Henrico)
Awardee Congressional District Code No awardeeDistrictCode Awardee congressional district code. Appended value of state abbreviation and congressional district code (ex. VA01,NY22)
Awardee Name No awardeeName Name of the entity receiving award (ex, "university+of+south+florida")

Instructions to narrow your results: Description Notes
Awardee State Code No awardeeStateCode Abbreviation of the awardee state (ex. VA)
Awardee Zip Code No awardeeZipCode 9 digit awardee zip code with the pattern of 5 digit + 4. This is an exact match search (ex. 231730001)
Catalog of Federal Domestic Assistance (CFDA) No cfdaNumber Catalog of Federal Domestic Assistance (CFDA) number is the classification of the Federal agency providing the award.

43.001
43.002
43.003
43.007
43.008
43.009
47.041
47.049
47.050
47.070
47.074
47.075
47.076
47.078
47.079
47.080
47.081
Co- Principal Investigator Name No coPDPI Co- Principal Investigator Name (ex. Christopher)
Start Date For Award Date No dateStart Start date for award date to search. Accepted date format is mm/dd/yyyy (ex.12/31/2012)
End Date for Award Date No dateEnd End date for award date to search. Accepted date format is mm/dd/yyyy (ex.12/31/2012)
Start Date for Award Start Date No startDateStart Start date for award start date to search. Accepted date format is mm/dd/yyyy (ex.12/31/2012)
End Date For Award Start Date No startDateEnd End date for award start date to search. Accepted date format is mm/dd/yyyy (ex.12/31/2012)
Start Date for Award Expiration Date No expDateStart Start date for award expiration date to search. Accepted date format is mm/dd/yyyy (ex.12/31/2012)
End Date For Award Expiration Date No expDateEnd End date for award expiration date to search. Accepted date format is mm/dd/yyyy (ex.12/31/2012)
Estimated Total From Amount No estimatedTotalAmtFrom Estimated total from amount. This implies that you are searching for values greater than this amount. Results returned will be for values GREATER than the specified estimated amount (ex. 50000). For a range, you need to specify both the estimatedTotalAmtFrom and estimatedTotalAmtTo parameters
Estimated Total To Amount No estimatedTotalAmtTo Estimated total to amount. This implies that you are searching for values less than this amount. Results returned will be for values LESS than the specified estimated amount (ex. 500000). For a range, you need to specify both the estimatedTotalAmtFrom and estimatedTotalAmtTo parameters
Funds Obligated From Amount No fundsObligatedAmtFrom Funds obligated from amount. This implies that you are searching for values greater than this amount. Results returned will be for values GREATER than the specified obligated amount (ex. 50000). For a range, you need to specify both the fundsObligatedAmtFrom and fundsObligatedAmtTo parameters
Funds Obligated To Amount No fundsObligatedAmtTo Funds obligated to amount. This implies that you are searching for values less than this amount. Results returned will be for values LESS than the specified obligated amount (ex. 500000). For a range, you need to specify both the fundsObligatedAmtFrom and fundsObligatedAmtTo parameters
DUNS Number No dunsNumber Unique Identifier of Entity
Fund Program Name No fundProgramName Fund Program Name (ex. "ANTARCTIC+COORDINATION")

Instructions to narrow your results: Description Notes
Parent DUNS Number No parentDunsNumber Unique Identifier of Parent Entity (if applicable)
Project Director/Principal Investigator Name No pdPIName Project Director - Program Director, a CSREES term equivalent to an NSF Principal Investigator (PI) PI - Principal Investigator or Project Director (ex. "SUMNET+STARFIELD")

Instructions to narrow your results: Description Notes
Performance City No perfCity Performance City Name (ex. Arlington)
Performance Country Code No perfCountryCode AU
BD
BR
CA
GM
SW
SZ
UK
US
USA
Performance County Name No perfCounty Performance county name (ex. Henrico)
Performance Congressional District Code No perfDistrictCode Performance congressional district code. Appended value of state abbreviation and congressional district code (ex. VA01,NY22)
Performance Location No perfLocation Performance location name (ex. "university+of+south+florida")

Instructions to narrow your results: Description Notes
Performance State Code No perfStateCode Performance State Code (ex. VA)
Performance Zip Code No perfZipCode 9 digit performance zip code with the pattern of 5 digit + 4. This is an exact match search (ex. 231730001)
Program Officer Name No poName Program Officer Name (ex. "Hamos+Rick")

Instructions to narrow your results: Description Notes
Primary Program Source No primaryProgram Comma separated numbers from the below list (ex. 490100,490101)
490100 - NSF Research & Related Activities (R&RA)
490101 - NSF R&RA Recovery Act
490106 - NSF Education & Human Resources (EHR)
490107 - NSF EHR Recovery Act
490150 - NSF Academic Research Facilities
490180 - NSF Agency Operations and Award Management
490551 - NSF Major Research Equipment & Facilities Construction (MREFC)
490552 - NSF MREFC Recovery Act
491014 - NSF Development Fund for Africa, A.I.D
491021 - NSF Agency for International Development
495176 - NSF H-1B Fund, EHR, NSF
498960 - NSF Trust Fund
49T566 - NSF US India Fund (RUPEES) (P&I)
Project Outcomes Only No projectOutcomesOnly Boolean value to only display awards information that has associated project outcomes report (ex. true). Default value is false.
Recovery Act Only No recoveryActOnly Boolean value to only display the awards information that has associated Recovery Act (ex. true). Default value is false.
Transaction Type No transType
Grant
coopagrmnt
Other

Output Print Fields

Parameter Required Variable Name Value
Print Fields No printFields Comma separated print field names expected in the response.

Fields marked as (*) are default print fields

rpp
offset
id (*)
agency (*)
awardeeCity (*)
awardeeCountryCode
awardeeCounty
awardeeDistrictCode
awardeeName (*)
awardeeStateCode (*)
awardeeZipCode
cfdaNumber
coPDPI
date (*)
startDate
expDate
estimatedTotalAmt
fundsObligatedAmt (*)
dunsNumber
fundProgramName
parentDunsNumber
pdPIName
perfCity
perfCountryCode
perfCounty
perfDistrictCode
perfLocation
perfStateCode
perfZipCode
poName
primaryProgram
transType
title (*)
awardee
poPhone
poEmail
awardeeAddress
perfAddress
publicationResearch
publicationConference
fundAgencyCode
awardAgencyCode
projectOutComesReport
abstractText
piFirstName (*)
piMiddeInitial
piLastName (*)
piPhone
piEmail

Request Parameters - Description Notes

For free text searches, there are different ways to search.
1) Use + sign for the spaces (ex. university+of+south+florida) 2) To match all the words in the phrase, use double quotes in the value (ex. "university+of+south+florida") 3) For single word you can use the word as is, however it is recommended to use phrases to narrow down the search.

Sample Output: XML


	<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
	<response>
		<award>
			<agency>NSF</agency>
			<awardeeCity>MISSOULA</awardeeCity>
			<awardeeName>University of Montana</awardeeName>
			<awardeeStateCode>MT</awardeeStateCode>
			<date>09/20/2010</date>
			<fundsObligatedAmt>99911</fundsObligatedAmt>
			<id>1052893</id>
			<piFirstName>Penelope</piFirstName>
			<piLastName>Kukuk</piLastName>
			<title>Indigenous Women in Science Network (IWSN) Third Annual Meeting</title>
		</award>
	</response>
	
	

Sample Output: JSON

{
  "response" : {
          "award" : [ {
		"agency" : "NSF",
		"awardeeCity" : "MISSOULA",
		"awardeeName" : "University of Montana",
		"awardeeStateCode" : "MT",
		"fundsObligatedAmt" : "99911",
		"id" : "1052893",
		"piFirstName" : "Penelope",
		"piLastName" : "Kukuk",
		"date" : "09/20/2010",
		"title" : "Indigenous Women in Science Network (IWSN) Third Annual Meeting"
      } ]
    }
  }

Sample Output: JSONP

processJson({
  "response" : {
          "award" : [ {
		"agency" : "NSF",
		"awardeeCity" : "MISSOULA",
		"awardeeName" : "University of Montana",
		"awardeeStateCode" : "MT",
		"fundsObligatedAmt" : "99911",
		"id" : "1052893",
		"piFirstName" : "Penelope",
		"piLastName" : "Kukuk",
		"date" : "09/20/2010",
		"title" : "Indigenous Women in Science Network (IWSN) Third Annual Meeting"
      } ]
    }
  });

Sample Error Output: XML


	<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
	<response>
		<serviceNotification>
		<notificationCode>AwardAPI-004</notificationCode>
		<notificationMessage>There was an error processing your request. If the problem persists, go to www.research.gov 
		and click Contact Us link and report to NSF Help Desk for further assistance.
		</notificationMessage>
		<notificationType>FATAL</notificationType>
		</serviceNotification>
	</response>
	
	

Sample Error Output: JSON

	{
	"response" : {
		  "serviceNotification" : [ {
		"notificationType" : "ERROR",
		"notificationCode" : "AwardAPI-002",
		"notificationMessage" : "Invalid parameter(s) sent in the request. Invalid Parameter(s) {keyword1}"
		} ]
	}
	}

Sample Error Output: JSONP

	processJson({
	"response" : {
		  "serviceNotification" : [ {
		"notificationType" : "ERROR",
		"notificationCode" : "AwardAPI-002",
		"notificationMessage" : "Invalid parameter(s) sent in the request. Invalid Parameter(s) {keyword1}"
		} ]
	}
	});