How to Look Up Any Tax Assessment Record in New York State by Coordinate

How to Look Up Any Tax Assessment Record in New York State by Coordinate

I was studying the various data services available and discovered a handy little website put out by the state for public use to find out tax assessment records for all counties in New York State.

https://gisservices.its.ny.gov/arcgis/rest/services/NYSTaxAssessmentLookup/GPServer/TaxAssessment/execute

Required Fields:

Y = Latitude

X = Longitude

SpatialReference = 4326 if you want to use latitude and longitude

Kind of a handy endpoint, for your use. It returns a json string. You can also automate the process by using a GET or POST request. For example to pull the tax record for a point at Cole Hill State Forest and get the data back as a JSON text string.

https://gisservices.its.ny.gov/arcgis/rest/services/NYSTaxAssessmentLookup/GPServer/TaxAssessment/execute?X=-74.10192&Y=42.59518&SpatialReference=4326&env%3AoutSR=&env%3AprocessSR=&returnZ=false&returnM=false&returnTrueCurves=false&returnFeatureCollection=false&context=&f=json

Here is what that URL will output it when you request it.

{"results":[{"paramName":"OBJECTID","dataType":"GPString","value":"30986"},
{"paramName":"COUNTY_NAME","dataType":"GPString","value":"Albany"},
{"paramName":"MUNI_NAME","dataType":"GPString","value":"Berne"},
{"paramName":"SWIS","dataType":"GPString","value":"012000"},
{"paramName":"PARCEL_ADDR","dataType":"GPString","value":"Willsie Rd"},
{"paramName":"PRINT_KEY","dataType":"GPString","value":"90.-1-14"},
{"paramName":"SBL","dataType":"GPString","value":"09000000010140000000"},
{"paramName":"CITYTOWN_NAME","dataType":"GPString","value":"Berne"},
{"paramName":"CITYTOWN_SWIS","dataType":"GPString","value":"012000"},
{"paramName":"LOC_ST_NBR","dataType":"GPString","value":"Null"},
{"paramName":"LOC_STREET","dataType":"GPString","value":"Willsie Rd"},
{"paramName":"LOC_UNIT","dataType":"GPString","value":"Null"},
{"paramName":"LOC_ZIP","dataType":"GPString","value":"Null"},
{"paramName":"PROP_CLASS","dataType":"GPString","value":"941"},
{"paramName":"ROLL_SECTION","dataType":"GPString","value":"3"},
{"paramName":"LAND_AV","dataType":"GPString","value":"579885"},
{"paramName":"TOTAL_AV","dataType":"GPString","value":"579885"},
{"paramName":"FULL_MARKET_VAL","dataType":"GPString","value":"982856"},
{"paramName":"YR_BLT","dataType":"GPString","value":"Null"},
{"paramName":"FRONT","dataType":"GPString","value":"0"},
{"paramName":"DEPTH","dataType":"GPString","value":"0"},
{"paramName":"SQ_FT","dataType":"GPString","value":"0"},
{"paramName":"ACRES","dataType":"GPString","value":"506.28"},
{"paramName":"SCHOOL_CODE","dataType":"GPString","value":"012001"},
{"paramName":"SCHOOL_NAME","dataType":"GPString","value":"Berne-Knox-Westerlo"},
{"paramName":"SEWER_TYPE","dataType":"GPString","value":"1"},
{"paramName":"SEWER_DESC","dataType":"GPString","value":"None"},
{"paramName":"WATER_SUPP","dataType":"GPString","value":"1"},
{"paramName":"WATER_DESC","dataType":"GPString","value":"None"},
{"paramName":"UTILITIES","dataType":"GPString","value":"3"},
{"paramName":"UTILITIES_DESC","dataType":"GPString","value":"Electric"},
{"paramName":"BLDG_STYLE","dataType":"GPString","value":"Null"},
{"paramName":"BLDG_STYLE_DESC","dataType":"GPString","value":"Null"},
{"paramName":"HEAT_TYPE","dataType":"GPString","value":"Null"},
{"paramName":"HEAT_TYPE_DESC","dataType":"GPString","value":"Null"},
{"paramName":"FUEL_TYPE","dataType":"GPString","value":"Null"},
{"paramName":"FUEL_TYPE_DESC","dataType":"GPString","value":"Null"},
{"paramName":"SQFT_LIVING","dataType":"GPString","value":"Null"},
{"paramName":"NBR_KITCHENS","dataType":"GPString","value":"Null"},
{"paramName":"NBR_FULL_BATHS","dataType":"GPString","value":"Null"},
{"paramName":"NBR_BEDROOMS","dataType":"GPString","value":"Null"},
{"paramName":"USED_AS_CODE","dataType":"GPString","value":"Null"},
{"paramName":"USED_AS_DESC","dataType":"GPString","value":"Null"},
{"paramName":"AG_DIST_CODE","dataType":"GPString","value":"Null"},
{"paramName":"AG_DIST_NAME","dataType":"GPString","value":"Null"},
{"paramName":"PRIMARY_OWNER","dataType":"GPString","value":"NYS Reforestation Land"},
{"paramName":"MAIL_ADDR","dataType":"GPString","value":"112 State St Rm 810"},
{"paramName":"PO_BOX","dataType":"GPString","value":"Null"},
{"paramName":"MAIL_CITY","dataType":"GPString","value":"Albany"},
{"paramName":"MAIL_STATE","dataType":"GPString","value":"NY"},
{"paramName":"MAIL_ZIP","dataType":"GPString","value":"12207"},
{"paramName":"ADD_OWNER","dataType":"GPString","value":"Null"},
{"paramName":"ADD_MAIL_ADDR","dataType":"GPString","value":""},
{"paramName":"ADD_MAIL_PO_BOX","dataType":"GPString","value":"Null"},
{"paramName":"ADD_MAIL_CITY","dataType":"GPString","value":"Null"},
{"paramName":"ADD_MAIL_STATE","dataType":"GPString","value":"Null"},
{"paramName":"ADD_MAIL_ZIP","dataType":"GPString","value":"Null"},
{"paramName":"BOOK","dataType":"GPString","value":"Null"},
{"paramName":"PAGE","dataType":"GPString","value":"Null"},
{"paramName":"GRID_EAST","dataType":"GPString","value":"561180"},
{"paramName":"GRID_NORTH","dataType":"GPString","value":"945822"},
{"paramName":"MUNI_PARCEL_ID","dataType":"GPString","value":"0120001026"},
{"paramName":"SWIS_SBL_ID","dataType":"GPString","value":"01200009000000010140000000"},
{"paramName":"SWIS_PRINT_KEY_ID","dataType":"GPString","value":"01200090.-1-14"},
{"paramName":"ROLL_YR","dataType":"GPString","value":"2019"},
{"paramName":"SPATIAL_YR","dataType":"GPString","value":"2019"},
{"paramName":"OWNER_TYPE","dataType":"GPString","value":"2"},
{"paramName":"NYS_NAME","dataType":"GPString","value":"New York State- DEC"},
{"paramName":"NYS_NAME_SOURCE","dataType":"GPString","value":"1-2-SA-a"},
{"paramName":"DUP_GEO","dataType":"GPString","value":"Null"},
{"paramName":"CALC_ACRES","dataType":"GPString","value":"498.300342"},
{"paramName":"ServiceMessage","dataType":"GPString","value":"Match found for entered X:-74.10192 & Y:42.59518."}],"messages":[]}

I found this handy enough, I wrote short PHP script that I can execute as needed to pull up property data and output it into a CSV spreadsheet format for bringing up in OpenOffice Calc. If you enter more then two words, it searches by address, otherwise it uses the first and second parameters as coordinates.

if ($argc > 2) {
	$address = "";
	for ($i = 1; $i <= $argc; $i++) 
		$address .= "$argv[$i] ";
		
	$address = urlencode($address);
	
	$json = file_get_contents("https://gisservices.its.ny.gov/arcgis/rest/services/Locators/Street_and_Address_Composite/GeocodeServer/findAddressCandidates?Street=&City=&State=&ZIP=&SingleLine={$address}&outFields=&maxLocations=1&matchOutOfRange=true&langCode=&locationType=&sourceCountry=&category=&location=&distance=&searchExtent=&outSR=4326&magicKey=&f=pjson");
	$coord = json_decode($json);
	
	$lat = $coord->candidates[0]->location->y;
	$lng = $coord->candidates[0]->location->x;
}

else {
	$lat = $argv[1];
	$lng = $argv[2];
}

if ($lng > 0) $lng *= -1;

$json = file_get_contents("https://gisservices.its.ny.gov/arcgis/rest/services/NYSTaxAssessmentLookup/GPServer/TaxAssessment/execute?X={$lng}&Y={$lat}&SpatialReference=4326&env%3AoutSR=&env%3AprocessSR=&returnZ=false&returnM=false&returnTrueCurves=false&returnFeatureCollection=false&context=&f=json");

$prop = json_decode($json);

foreach ($prop->results as $line) {
	echo '"'.addslashes($line->paramName).'","'.addslashes($line->value).""n";
}

With this script, you can load a nice version of tax record in your favorite spreadsheet.

OBJECTID 30986
COUNTY_NAME Albany
MUNI_NAME Berne
SWIS 12000
PARCEL_ADDR Willsie Rd
PRINT_KEY 90.-1-14
SBL 9.00000001014E+018
CITYTOWN_NAME Berne
CITYTOWN_SWIS 12000
LOC_ST_NBR Null
LOC_STREET Willsie Rd
LOC_UNIT Null
LOC_ZIP Null
PROP_CLASS 941
ROLL_SECTION 3
LAND_AV 579885
TOTAL_AV 579885
FULL_MARKET_VAL 982856
YR_BLT Null
FRONT 0
DEPTH 0
SQ_FT 0
ACRES 506.28
SCHOOL_CODE 12001
SCHOOL_NAME Berne-Knox-Westerlo
SEWER_TYPE 1
SEWER_DESC None
WATER_SUPP 1
WATER_DESC None
UTILITIES 3
UTILITIES_DESC Electric
BLDG_STYLE Null
BLDG_STYLE_DESC Null
HEAT_TYPE Null
HEAT_TYPE_DESC Null
FUEL_TYPE Null
FUEL_TYPE_DESC Null
SQFT_LIVING Null
NBR_KITCHENS Null
NBR_FULL_BATHS Null
NBR_BEDROOMS Null
USED_AS_CODE Null
USED_AS_DESC Null
AG_DIST_CODE Null
AG_DIST_NAME Null
PRIMARY_OWNER NYS Reforestation Land
MAIL_ADDR 112 State St Rm 810
PO_BOX Null
MAIL_CITY Albany
MAIL_STATE NY
MAIL_ZIP 12207
ADD_OWNER Null
ADD_MAIL_ADDR
ADD_MAIL_PO_BOX Null
ADD_MAIL_CITY Null
ADD_MAIL_STATE Null
ADD_MAIL_ZIP Null
BOOK Null
PAGE Null
GRID_EAST 561180
GRID_NORTH 945822
MUNI_PARCEL_ID 120001026
SWIS_SBL_ID 1.20000900000001E+024
SWIS_PRINT_KEY_ID 01200090.-1-14
ROLL_YR 2019
SPATIAL_YR 2019
OWNER_TYPE 2
NYS_NAME New York State- DEC
NYS_NAME_SOURCE 1-2-SA-a
DUP_GEO Null
CALC_ACRES 498.300342
ServiceMessage Match found for entered X:-74.08836 & Y:42.59480.

Leave a Reply

Your email address will not be published. Required fields are marked *