IPUMS NHGIS Shapefile Metadata

An NHGIS shapefile is a geometry file for geographic information systems (GIS) in shapefile format. An in-depth introduction is availble on the NHGIS website.

Get a List of All Shapefiles

This API call will return a list of all available shapefiles.

my_headers = {"Authorization": my_key}
url = "https://api.ipums.org/metadata/nhgis/shapefiles?version=v1"
nhgis_metadata = requests.get(url, headers=my_headers)
pprint(nhgis_metadata.json())
      
# Results
[{'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'State',
  'name': 'us_state_1790_tl2000',
  'sequence': 1,
  'year': '1790'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1790_tl2000',
  'sequence': 2,
  'year': '1790'},
 {'basis': '2008 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1790_tl2008',
  'sequence': 3,
  'year': '1790'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'State',
  'name': 'us_state_1800_tl2000',
  'sequence': 4,
  'year': '1800'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1800_tl2000',
  'sequence': 5,
  'year': '1800'},
 {'basis': '2008 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1800_tl2008',
  'sequence': 6,
  'year': '1800'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'State',
  'name': 'us_state_1810_tl2000',
  'sequence': 7,
  'year': '1810'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1810_tl2000',
  'sequence': 8,
  'year': '1810'},
 {'basis': '2008 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1810_tl2008',
  'sequence': 9,
  'year': '1810'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'State',
  'name': 'us_state_1820_tl2000',
  'sequence': 10,
  'year': '1820'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1820_tl2000',
  'sequence': 11,
  'year': '1820'},
 {'basis': '2008 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1820_tl2008',
  'sequence': 12,
  'year': '1820'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'State',
  'name': 'us_state_1830_tl2000',
  'sequence': 13,
  'year': '1830'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1830_tl2000',
  'sequence': 14,
  'year': '1830'},
 {'basis': '2008 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1830_tl2008',
  'sequence': 15,
  'year': '1830'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'State',
  'name': 'us_state_1840_tl2000',
  'sequence': 16,
  'year': '1840'},
 {'basis': '2000 TIGER/Line +',
  'extent': 'United States',
  'geographic_level': 'County',
  'name': 'us_county_1840_tl2000',
  'sequence': 17,
...
url <- "https://api.ipums.org/metadata/nhgis/shapefiles?version=v1"
result <- GET(url, add_headers(Authorization = my_key))
res_df <- content(result, "parsed", simplifyDataFrame = TRUE)
head(res_df, n = 20L) # Contains metadata
      
# Results
                    name year geographic_level        extent             basis
1   us_state_1790_tl2000 1790            State United States 2000 TIGER/Line +
2  us_county_1790_tl2000 1790           County United States 2000 TIGER/Line +
3  us_county_1790_tl2008 1790           County United States 2008 TIGER/Line +
4   us_state_1800_tl2000 1800            State United States 2000 TIGER/Line +
5  us_county_1800_tl2000 1800           County United States 2000 TIGER/Line +
6  us_county_1800_tl2008 1800           County United States 2008 TIGER/Line +
7   us_state_1810_tl2000 1810            State United States 2000 TIGER/Line +
8  us_county_1810_tl2000 1810           County United States 2000 TIGER/Line +
9  us_county_1810_tl2008 1810           County United States 2008 TIGER/Line +
10  us_state_1820_tl2000 1820            State United States 2000 TIGER/Line +
11 us_county_1820_tl2000 1820           County United States 2000 TIGER/Line +
12 us_county_1820_tl2008 1820           County United States 2008 TIGER/Line +
13  us_state_1830_tl2000 1830            State United States 2000 TIGER/Line +
14 us_county_1830_tl2000 1830           County United States 2000 TIGER/Line +
15 us_county_1830_tl2008 1830           County United States 2008 TIGER/Line +
16  us_state_1840_tl2000 1840            State United States 2000 TIGER/Line +
17 us_county_1840_tl2000 1840           County United States 2000 TIGER/Line +
18 us_county_1840_tl2008 1840           County United States 2008 TIGER/Line +
19  us_state_1850_tl2000 1850            State United States 2000 TIGER/Line +
20 us_county_1850_tl2000 1850           County United States 2000 TIGER/Line +
   sequence
1         1
2         2
3         3
4         4
5         5
6         6
7         7
8         8
9         9
10       10
11       11
12       12
13       13
14       14
15       15
16       16
17       17
18       18
19       19
20       20
curl -X GET \
  https://api.ipums.org/metadata/nhgis/shapefiles?version=v1 \
  -H 'Content-Type: application/json' \
  -H "Authorization: $MY_KEY"
      
# Results
[
  {
    "name": "us_state_1790_tl2000",
    "year": "1790",
    "geographic_level": "State",
    "extent": "United States",
    "basis": "2000 TIGER/Line +",
    "sequence": 1
  },
  {
    "name": "us_county_1790_tl2000",
    "year": "1790",
    "geographic_level": "County",
    "extent": "United States",
    "basis": "2000 TIGER/Line +",
    "sequence": 2
  },
  {
    "name": "us_county_1790_tl2008",
    "year": "1790",
    "geographic_level": "County",
    "extent": "United States",
    "basis": "2008 TIGER/Line +",
    "sequence": 3
  },
  {
    "name": "us_state_1800_tl2000",
    "year": "1800",
    "geographic_level": "State",
    "extent": "United States",
    "basis": "2000 TIGER/Line +",
    "sequence": 4
  },
  {
    "name": "us_county_1800_tl2000",
    "year": "1800",
    "geographic_level": "County",
    "extent": "United States",
    "basis": "2000 TIGER/Line +",
    "sequence": 5
  },
  {
    "name": "us_county_1800_tl2008",
    "year": "1800",
    "geographic_level": "County",
    "extent": "United States",
    "basis": "2008 TIGER/Line +",
    "sequence": 6
  },
  {
    "name": "us_state_1810_tl2000",
    "year": "1810",
    "geographic_level": "State",
    "extent": "United States",
    "basis": "2000 TIGER/Line +",
    "sequence": 7
  },
  {
    "name": "us_county_1810_tl2000",
    "year": "1810",
    "geographic_level": "County",
    "extent": "United States",
    "basis": "2000 TIGER/Line +",
    "sequence": 8
  },
  {
    "name": "us_county_1810_tl2008",
    "year": "1810",
    "geographic_level": "County",
    "extent": "United States",
    "basis": "2008 TIGER/Line +",
    "sequence": 9
  },
  {
    "name": "us_state_1820_tl2000",
    "year": "1820",
    "geographic_level": "State",
    "extent": "United States",
    "basis": "2000 TIGER/Line +",
    "sequence": 10
  },
  {
    "name": "us_county_1820_tl2000",
    "year": "1820",
    "geographic_level": "County",
    "extent": "United States",
    "basis": "2000 TIGER/Line +",
    "sequence": 11
  },
  {
    "name": "us_county_1820_tl2008",
    "year": "1820",
    "geographic_level": "County",
    "extent": "United States",
    "basis": "2008 TIGER/Line +",
    "sequence": 12
  },
  {
    "name": "us_state_1830_tl2000",
    "year": "1830",
    "geographic_level": "State",
...

Shapefile Attributes

  • name: The unique identifier of the time series table.
  • year: The survey year in which the file’s represented areas were used for tabulations, which may be different than the vintage of the represented areas. See .
  • geographic_level: The geographic level of the shapefile.
  • extent: The geographic extent which is covered by the shapefile.
  • basis: The derivation source of the shapefile.
  • sequence: The order the shapefile in which appears in the metadata API.