@urbankitstudio/atlas 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/data/ohio.json CHANGED
@@ -4,6 +4,89 @@
4
4
  "stateAbbrev": "OH",
5
5
  "lastUpdated": "2026-05-15",
6
6
  "counties": [
7
+ {
8
+ "id": "oh-montgomery",
9
+ "state": "OH",
10
+ "stateName": "Ohio",
11
+ "stateSlug": "ohio",
12
+ "county": "Montgomery",
13
+ "countySlug": "montgomery-county",
14
+ "countyFips": "39113",
15
+ "hasPublicRest": true,
16
+ "endpoints": [
17
+ {
18
+ "url": "https://services6.arcgis.com/EbVsqZ18sv1kVJ3k/ArcGIS/rest/services/Montgomery_County_Parcels/FeatureServer/0",
19
+ "serviceType": "FeatureServer",
20
+ "layerIndex": 0,
21
+ "layerName": "Montgomery_Parcels",
22
+ "supportsQuery": true,
23
+ "corsEnabled": null,
24
+ "searchFields": [
25
+ { "name": "PRINT_KEY", "label": "Parcel Print Key", "searchable": true },
26
+ { "name": "OWNER1", "label": "Owner Name (Primary)", "searchable": true },
27
+ { "name": "OWNER2", "label": "Owner Name 2", "searchable": true },
28
+ { "name": "OWNER", "label": "Owner (combined)", "searchable": true },
29
+ { "name": "PROP_ADDR", "label": "Property Address", "searchable": true },
30
+ { "name": "LOC_STREET", "label": "Location Street", "searchable": true },
31
+ { "name": "LOC_NUMBER", "label": "Location Number", "searchable": true }
32
+ ],
33
+ "sampleQuery": "https://services6.arcgis.com/EbVsqZ18sv1kVJ3k/ArcGIS/rest/services/Montgomery_County_Parcels/FeatureServer/0/query?where=UPPER(OWNER1)%20LIKE%20UPPER('%25SMITH%25')&outFields=PRINT_KEY,OWNER1,PROP_ADDR&returnGeometry=false&f=json&resultRecordCount=10",
34
+ "license": "public",
35
+ "licenseUrl": "https://opendata-mcgov-gis.hub.arcgis.com/",
36
+ "status": "live",
37
+ "lastVerified": "2026-05-15",
38
+ "verifiedBy": "automated"
39
+ }
40
+ ],
41
+ "contact": {
42
+ "department": "Montgomery County Auditor GIS",
43
+ "url": "https://opendata-mcgov-gis.hub.arcgis.com/",
44
+ "email": null
45
+ },
46
+ "notes": "Montgomery County OH (Dayton metro, county seat Dayton) provides parcels via ArcGIS Online FeatureServer (services6.arcgis.com). Spatial extent confirmed to cover Ohio coordinates. Key fields: PRINT_KEY (parcel key), OWNER1, OWNER2, OWNER, PROP_ADDR, LOC_NUMBER, LOC_STREET, MUNI, SBL, GISAcres, SWIS, EASTING, NORTHING, CHANGE_DAT, SECNO, ACCOUNT_NU. Query confirmed live: UPPER(OWNER1) LIKE '%SMITH%' returns real Ohio parcels (e.g., 'Smith, Gregory R' at '148 HICKORY RIDGE DR'). Montgomery County OH (FIPS 39113) must not be confused with Montgomery County MD (24031), Montgomery County PA (42091), or Montgomery County AL (01101). Open Data Hub at opendata-mcgov-gis.hub.arcgis.com. Auditor parcel viewer at gis.mcohio.org/VPCore/VP.html?config=aud."
47
+ },
48
+ {
49
+ "id": "oh-stark",
50
+ "state": "OH",
51
+ "stateName": "Ohio",
52
+ "stateSlug": "ohio",
53
+ "county": "Stark",
54
+ "countySlug": "stark-county",
55
+ "countyFips": "39151",
56
+ "hasPublicRest": true,
57
+ "endpoints": [
58
+ {
59
+ "url": "https://scgisa.starkcountyohio.gov/arcgis/rest/services/Auditor/StarkCountyParcels/MapServer/0",
60
+ "serviceType": "MapServer",
61
+ "layerIndex": 0,
62
+ "layerName": "Stark County Parcels",
63
+ "supportsQuery": true,
64
+ "corsEnabled": null,
65
+ "searchFields": [
66
+ { "name": "PIN", "label": "Parcel Identification Number", "searchable": true },
67
+ { "name": "OWNER", "label": "Owner Name", "searchable": true },
68
+ { "name": "OWNER_ADDRESS", "label": "Owner Address (combined)", "searchable": true },
69
+ { "name": "MAILING_NAME", "label": "Mailing Name", "searchable": true },
70
+ { "name": "MAILING_ADDRESS", "label": "Mailing Address", "searchable": true },
71
+ { "name": "SITE_ADDRESS", "label": "Site Address (with city/state/zip)", "searchable": true },
72
+ { "name": "TAX_DISTRICT_NAME", "label": "Tax District Name", "searchable": false },
73
+ { "name": "LAND_USE_DESCRIPTION", "label": "Land Use Description", "searchable": false }
74
+ ],
75
+ "sampleQuery": "https://scgisa.starkcountyohio.gov/arcgis/rest/services/Auditor/StarkCountyParcels/MapServer/0/query?where=UPPER(OWNER)%20LIKE%20UPPER('%25SMITH%25')&outFields=PIN,OWNER,SITE_ADDRESS&returnGeometry=false&f=json&resultRecordCount=10",
76
+ "license": "public",
77
+ "licenseUrl": "https://portal-starkcountyohio.opendata.arcgis.com/",
78
+ "status": "live",
79
+ "lastVerified": "2026-05-15",
80
+ "verifiedBy": "automated"
81
+ }
82
+ ],
83
+ "contact": {
84
+ "department": "Stark County IT / GIS",
85
+ "url": "https://www.starkcountyohio.gov/government/offices/information_technology/geographic_information_systems/",
86
+ "email": "gis@starkcountyohio.gov"
87
+ },
88
+ "notes": "Stark County OH (Canton metro, county seat Canton) provides StarkCountyParcels/MapServer/0 with 30+ fields: PIN, TAXYR, SITE_ADDRESS (full city/state/zip included), ROUTING_NUMBER, CLASSIFICATION, LAND_USE_CODE, LAND_USE_DESCRIPTION, NBHD, ACRES, TAX_DISTRICT_CODE, TAX_DISTRICT_NAME, GROSS_TAX_RATE, EFFECTIVE_TAX_RATE, OWNER_OCCUPANCY_CREDIT, OWNER, OWNER_ADDRESS, OWNER_ADDR1/2/3, MAILING_NAME, MAILING_ADDRESS, MORTGAGE_COMPANY, LEGAL_DESCRIPTION, HOMESTEAD_EXEMPTION, DISABLED_VETERAN_BENEFIT, PREVIOUS_OWNER. Query confirmed live: UPPER(OWNER) LIKE '%SMITH%' returns real results (e.g., 'SMITH LAWRENCE K JR & JODI' at '13180 PATTERSON RD NORTH LAWRENCE OH 44666 9732'). SITE_ADDRESS includes full city/state/zip in one field. Auditor/ParcelData/MapServer is an alternate service at the same host providing polygon appraisal layers. GIS Hub at portal-starkcountyohio.opendata.arcgis.com has downloads. Contact: (330) 451-7193."
89
+ },
7
90
  {
8
91
  "id": "oh-franklin",
9
92
  "state": "OH",
@@ -92,6 +175,52 @@
92
175
  "email": "gis@cuyahogacounty.us"
93
176
  },
94
177
  "notes": "80+ fields confirmed including parcel_owner, deeded_owner, grantor, grantee, transfer_date, sales_amount, par_addr_all, par_city, par_zip, tax_luc, tax_luc_description, zoning_code, zoning_use, property_class, certified_tax_land, certified_tax_building, certified_tax_total, total_acreage, total_square_ft, res_bldg_count, total_res_liv_area. Owner query tested and returning real results (par_addr_all includes city and state in one field). The MyPLACE service (WGS84 projection) is the public-facing layer backing the county's MyPlace property search portal. Layer 0 = Point Parcel, Layer 1 = Air Parcel, Layer 2 = the full polygon parcel layer. The earlier 'saledate' field was renamed 'transfer_date' in 2026 — joined record retains the same semantics."
178
+ },
179
+ {
180
+ "id": "oh-hamilton",
181
+ "state": "OH",
182
+ "stateName": "Ohio",
183
+ "stateSlug": "ohio",
184
+ "county": "Hamilton",
185
+ "countySlug": "hamilton-county",
186
+ "countyFips": "39061",
187
+ "hasPublicRest": true,
188
+ "endpoints": [
189
+ {
190
+ "url": "https://cagisonline.hamilton-co.org/arcgis/rest/services/HCE/Cadastral/MapServer/0",
191
+ "serviceType": "MapServer",
192
+ "layerIndex": 0,
193
+ "layerName": "CAGIS.Ham_Parcel_Poly",
194
+ "supportsQuery": true,
195
+ "corsEnabled": null,
196
+ "searchFields": [
197
+ { "name": "PARCELID", "label": "Parcel ID", "searchable": true },
198
+ { "name": "AUDPCLID", "label": "Auditor Parcel ID", "searchable": true },
199
+ { "name": "OWNNM1", "label": "Owner Name (Primary)", "searchable": true },
200
+ { "name": "OWNNM2", "label": "Owner Name (Secondary)", "searchable": true },
201
+ { "name": "OWNAD1", "label": "Owner Address Line 1", "searchable": true },
202
+ { "name": "OWNAD1A", "label": "Owner Address Line 1A", "searchable": true },
203
+ { "name": "OWNAD2", "label": "Owner Address Line 2 (City, State ZIP)", "searchable": false },
204
+ { "name": "TAXDST", "label": "Tax District", "searchable": false },
205
+ { "name": "LGLDS1", "label": "Legal Description Line 1", "searchable": false },
206
+ { "name": "LGLDS2", "label": "Legal Description Line 2", "searchable": false },
207
+ { "name": "BOOK", "label": "Deed Book", "searchable": false },
208
+ { "name": "PAGE", "label": "Deed Page", "searchable": false }
209
+ ],
210
+ "sampleQuery": "https://cagisonline.hamilton-co.org/arcgis/rest/services/HCE/Cadastral/MapServer/0/query?where=UPPER(OWNNM1)+LIKE+UPPER('%25SMITH%25')&outFields=PARCELID,OWNNM1,OWNNM2,OWNAD1,AUDPCLID&returnGeometry=false&f=json&resultRecordCount=10",
211
+ "license": "public",
212
+ "licenseUrl": "https://www.hamilton-co.org/auditor/maps",
213
+ "status": "live",
214
+ "lastVerified": "2026-05-15",
215
+ "verifiedBy": "manual"
216
+ }
217
+ ],
218
+ "contact": {
219
+ "department": "CAGIS (Cincinnati Area Geographic Information System) — Hamilton County Auditor",
220
+ "url": "https://www.hamilton-co.org/auditor/maps",
221
+ "email": null
222
+ },
223
+ "notes": "99 fields confirmed. This is the CAGIS (Cincinnati Area Geographic Information System) cadastral parcel polygon layer. Key fields include: PARCELID (12-digit parcel ID), AUDPCLID (auditor parcel ID), OWNNM1/OWNNM2 (owner names), OWNAD1/OWNAD1A/OWNAD2 (owner address), LGLDS1/LGLDS2/LGLDS3 (legal description), PREVOWN1/PREVOWN2 (previous owners), BOOK/PAGE (deed reference), TAXDST (tax district), MLTOWN (municipality), GRPPCLID (group parcel ID), PNTPCLID (point parcel ID), PROPTYID (property ID). Condo layers are separate (layers 5 and 6). Layer 2 (Hamilton County Parcel Attributes) joins assessment data. Layer 0 is the polygon geometry with ownership. Owner query confirmed: UPPER(OWNNM1) LIKE '%SMITH%' returns real parcels. Hamilton County, OH is the Cincinnati metropolitan area (FIPS 39061)."
95
224
  }
96
225
  ]
97
226
  }
@@ -0,0 +1,150 @@
1
+ {
2
+ "stateSlug": "oregon",
3
+ "stateName": "Oregon",
4
+ "stateAbbrev": "OR",
5
+ "lastUpdated": "2026-05-15",
6
+ "counties": [
7
+ {
8
+ "id": "or-multnomah",
9
+ "state": "OR",
10
+ "stateName": "Oregon",
11
+ "stateSlug": "oregon",
12
+ "county": "Multnomah",
13
+ "countySlug": "multnomah-county",
14
+ "countyFips": "41051",
15
+ "hasPublicRest": true,
16
+ "endpoints": [
17
+ {
18
+ "url": "https://services3.arcgis.com/tNPgIZWOB0Efvm0g/ArcGIS/rest/services/Tax_Lots/FeatureServer/0",
19
+ "serviceType": "FeatureServer",
20
+ "layerIndex": 0,
21
+ "layerName": "Tax Lots",
22
+ "supportsQuery": true,
23
+ "corsEnabled": null,
24
+ "searchFields": [
25
+ { "name": "TLID", "label": "Tax Lot ID", "searchable": true },
26
+ { "name": "account_id", "label": "Account ID", "searchable": true },
27
+ { "name": "MAILING_NA", "label": "Mailing Name (Owner)", "searchable": true },
28
+ { "name": "M_ADDRESS", "label": "Mailing Address", "searchable": true },
29
+ { "name": "M_CITY", "label": "Mailing City", "searchable": false },
30
+ { "name": "M_STATE", "label": "Mailing State", "searchable": false },
31
+ { "name": "zip", "label": "Mailing ZIP", "searchable": false },
32
+ { "name": "SITUS_HOUS", "label": "Situs House Number", "searchable": false },
33
+ { "name": "SITUS_STRE", "label": "Situs Street Name", "searchable": true },
34
+ { "name": "SITUS_CITY", "label": "Situs City", "searchable": true },
35
+ { "name": "SITUS_ZIP", "label": "Situs ZIP", "searchable": false },
36
+ { "name": "RMV_PROPER", "label": "Real Market Value (Property)", "searchable": false },
37
+ { "name": "PROP_TYPE", "label": "Property Type", "searchable": false }
38
+ ],
39
+ "sampleQuery": "https://services3.arcgis.com/tNPgIZWOB0Efvm0g/ArcGIS/rest/services/Tax_Lots/FeatureServer/0/query?where=UPPER(MAILING_NA)+LIKE+UPPER('%25SMITH%25')&outFields=TLID,MAILING_NA,M_ADDRESS,SITUS_HOUS,SITUS_STRE,SITUS_CITY&returnGeometry=false&f=json&resultRecordCount=10",
40
+ "license": "public",
41
+ "licenseUrl": "https://gis-multco.opendata.arcgis.com/",
42
+ "status": "live",
43
+ "lastVerified": "2026-05-15",
44
+ "verifiedBy": "manual"
45
+ }
46
+ ],
47
+ "contact": {
48
+ "department": "Multnomah County Department of Assessment, Recording and Taxation — GIS",
49
+ "url": "https://gis-multco.opendata.arcgis.com/",
50
+ "email": null
51
+ },
52
+ "notes": "46 fields confirmed including TLID, GlobalID, StatedArea, ID, account_id, tax_status, map_tax, MAP, Taxlot, S_I_TYPE, SI_NUMBER, MAILING_NA, IN_CARE_OF, AGENT, M_ADDRESS, M_CITY, M_STATE, zip, YEAR, ma, sa, nh, RMV_PROPER, PROPERTY_C, CODE_AREA, SUM_OF_ACR, SUM_OF_SQF, SITUS_HOUS (house number), SITUS_STRE, SITUS_ST_1, SITUS_DIRE, SITUS_UNIT, SITUS_CITY, SITUS_STAT, SITUS_ZIP, SITUS_PRE_. Owner name search via UPPER() LIKE on MAILING_NA returns real results (e.g., 'SMITH TIMOTHY BLAIR & KAREN KAY'). Hosted on ArcGIS Online (services3.arcgis.com/tNPgIZWOB0Efvm0g). Parcel boundaries are approximated — not for determining legal property boundaries. This data is from Multnomah County Assessment, Recording and Taxation, covering Portland and all of Multnomah County (pop. 830,000). Capabilities: Query, Sync."
53
+ },
54
+ {
55
+ "id": "or-lane",
56
+ "state": "OR",
57
+ "stateName": "Oregon",
58
+ "stateSlug": "oregon",
59
+ "county": "Lane",
60
+ "countySlug": "lane-county",
61
+ "countyFips": "41039",
62
+ "hasPublicRest": true,
63
+ "endpoints": [
64
+ {
65
+ "url": "http://lcmaps.lanecounty.org/arcgis/rest/services/AT/AddressParcelSales/MapServer/2",
66
+ "serviceType": "MapServer",
67
+ "layerIndex": 2,
68
+ "layerName": "Parcels",
69
+ "supportsQuery": true,
70
+ "corsEnabled": null,
71
+ "searchFields": [
72
+ { "name": "RLID", "label": "RLID (Regional Land Information Database ID)", "searchable": true },
73
+ { "name": "MAPTAXLOT", "label": "Map-Taxlot Number", "searchable": true },
74
+ { "name": "OWNNAME", "label": "Owner Name", "searchable": true },
75
+ { "name": "ADDR1", "label": "Owner Address Line 1", "searchable": true },
76
+ { "name": "ADDR2", "label": "Owner Address Line 2", "searchable": true },
77
+ { "name": "ADDR3", "label": "Owner Address Line 3", "searchable": true },
78
+ { "name": "OWNERCITY", "label": "Owner City", "searchable": false },
79
+ { "name": "OWNERPRVST", "label": "Owner State", "searchable": false },
80
+ { "name": "OWNERZIP", "label": "Owner ZIP", "searchable": false },
81
+ { "name": "SITUS", "label": "Situs Address", "searchable": true },
82
+ { "name": "GEOCITY", "label": "Geographic City", "searchable": true },
83
+ { "name": "MAPACRES", "label": "Map Acreage", "searchable": false },
84
+ { "name": "RMVLND", "label": "Real Market Value (Land)", "searchable": false },
85
+ { "name": "RMVIMP", "label": "Real Market Value (Improvements)", "searchable": false },
86
+ { "name": "RMVTOTAL", "label": "Real Market Value (Total)", "searchable": false }
87
+ ],
88
+ "sampleQuery": "http://lcmaps.lanecounty.org/arcgis/rest/services/AT/AddressParcelSales/MapServer/2/query?where=UPPER(OWNNAME)+LIKE+UPPER('%25SMITH%25')&outFields=RLID,MAPTAXLOT,OWNNAME,SITUS,GEOCITY,MAPACRES,RMVTOTAL&returnGeometry=false&f=json&resultRecordCount=10",
89
+ "license": "public",
90
+ "licenseUrl": "https://www.lanecounty.org/business/maps",
91
+ "status": "live",
92
+ "lastVerified": "2026-05-15",
93
+ "verifiedBy": "manual"
94
+ }
95
+ ],
96
+ "contact": {
97
+ "department": "Lane County Information Services — Maps & GIS",
98
+ "url": "https://www.lanecounty.org/business/maps",
99
+ "email": null
100
+ },
101
+ "notes": "24 fields confirmed including OBJECTID, RLID, PROPACCT, MAPTAXLOT, MAPNUMBER, TAXLOT, ACCTNO, OWNNAME, ADDR1, ADDR2, ADDR3, OWNERCITY, OWNERPRVST, OWNERZIP, OWNERCNTRY, MAPACRES, GEOCITY, UGB, AscendAcres, Shape_Length, Shape_Area, zoningdesc, plandesdesc. Owner name confirmed live: OWNNAME field returns real owner names (e.g., 'SMITH, BENJAMIN C 25%...'). This is Layer 2 (Parcels polygon) on the AddressParcelSales MapServer; Layer 0 is Site Address points; Layer 1 is recent sales. The base URL uses HTTP (not HTTPS) — the server redirects HTTPS to HTTP. RLID is the Regional Land Information Database identifier. Real Market Value fields are available (RMVLND, RMVIMP, RMVTOTAL). maxRecordCount=1000. Capabilities: Map, Query, Data."
102
+ },
103
+ {
104
+ "id": "or-marion",
105
+ "state": "OR",
106
+ "stateName": "Oregon",
107
+ "stateSlug": "oregon",
108
+ "county": "Marion",
109
+ "countySlug": "marion-county",
110
+ "countyFips": "41047",
111
+ "hasPublicRest": true,
112
+ "endpoints": [
113
+ {
114
+ "url": "https://gis.co.marion.or.us/arcgis/rest/services/Public/Parcels/MapServer/0",
115
+ "serviceType": "MapServer",
116
+ "layerIndex": 0,
117
+ "layerName": "Parcels",
118
+ "supportsQuery": true,
119
+ "corsEnabled": null,
120
+ "searchFields": [
121
+ { "name": "TAXLOT", "label": "Tax Lot Number", "searchable": true },
122
+ { "name": "TAXACCT", "label": "Tax Account Number", "searchable": true },
123
+ { "name": "OWNERNAME", "label": "Owner Name", "searchable": true },
124
+ { "name": "SITUS", "label": "Situs Address", "searchable": true },
125
+ { "name": "ACRES", "label": "Map Acreage", "searchable": false },
126
+ { "name": "RMVLND", "label": "Real Market Value (Land)", "searchable": false },
127
+ { "name": "RMVIMP", "label": "Real Market Value (Improvements)", "searchable": false },
128
+ { "name": "RMVTOTAL", "label": "Real Market Value (Total)", "searchable": false },
129
+ { "name": "ASSDVAL", "label": "Assessed Value", "searchable": false },
130
+ { "name": "TAXCODE", "label": "Tax Code Area", "searchable": false },
131
+ { "name": "ZONECODE", "label": "Zoning Code", "searchable": false },
132
+ { "name": "YEARBUILT", "label": "Year Built", "searchable": false }
133
+ ],
134
+ "sampleQuery": "https://gis.co.marion.or.us/arcgis/rest/services/Public/Parcels/MapServer/0/query?where=UPPER(OWNERNAME)+LIKE+UPPER('%25SMITH%25')&outFields=TAXLOT,TAXACCT,OWNERNAME,SITUS,ACRES,RMVTOTAL&returnGeometry=false&f=json&resultRecordCount=10",
135
+ "license": "public",
136
+ "licenseUrl": "https://gis.co.marion.or.us/",
137
+ "status": "live",
138
+ "lastVerified": "2026-05-15",
139
+ "verifiedBy": "manual"
140
+ }
141
+ ],
142
+ "contact": {
143
+ "department": "Marion County GIS / Marion County Assessment & Taxation",
144
+ "url": "https://gis.co.marion.or.us/",
145
+ "email": null
146
+ },
147
+ "notes": "46 fields confirmed including OBJECTID, SHAPE, TAXLOT, TAXACCT, OTHERACCTS, ALT_TAXLOT, ALT_TAXACCT, STREETNUM, PRE_DIR, STREETNAME, STREETTYPE, POST_DIR, UNITNUM, SITUS, SITUSCSZ, PLATNAME, BLOCK, LOT, ACRES, LASTUPDATE, INSTNUM, INSTTYPE, INSTDATE, SALEPRICE, OWNERNAME, OWNERADDR, OWNERCSZ, ZONECODE, ZONEAUTH, ZONEWEB, YEARBUILT, BLDGAREA, LIVINGAREA, PROPCLASS, PRPCLSDESC, RMVLND, RMVIMP, RMVTOTAL, ASSDVAL, TAXCODE, CITY, SCHLDIST, FIREDIST, REFLINK, MAPLINK, TAXLOTNS. Owner name confirmed live: OWNERNAME field returns real owner names (e.g., 'SMITH, BENJAMIN C 25% & SMITH, CYNTHIA 25%...'). Covers Salem metro and all of Marion County. SITUS is the combined situs address string; SITUSCSZ is the city-state-ZIP. Capabilities: Map, Query, Data. maxRecordCount=1000."
148
+ }
149
+ ]
150
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "stateSlug": "rhode-island",
3
+ "stateName": "Rhode Island",
4
+ "stateAbbrev": "RI",
5
+ "lastUpdated": "2026-05-15",
6
+ "counties": [
7
+ {
8
+ "id": "ri-providence",
9
+ "state": "RI",
10
+ "stateName": "Rhode Island",
11
+ "stateSlug": "rhode-island",
12
+ "county": "Providence",
13
+ "countySlug": "providence-county",
14
+ "countyFips": "44007",
15
+ "hasPublicRest": false,
16
+ "endpoints": [],
17
+ "contact": {
18
+ "department": "RIGIS (Rhode Island Geographic Information System) / RI Division of Statewide Planning",
19
+ "url": "https://www.rigis.org/",
20
+ "email": null
21
+ },
22
+ "notes": "No public queryable REST endpoint found for Providence County parcel data. Rhode Island has no county government — GIS and parcel authority rests with individual municipalities. RIGIS (risegis.ri.gov) hosts only a MuniGIS_Resources MapServer that tracks metadata (last-updated status) per municipality, not actual parcel polygons. The state GIS server at gis.ri.gov/arcgis/rest/services/RIDOA/Muni_Parcel/MapServer was unreachable at time of research. Providence City has its own GIS portal (webgis.providenceri.gov, pvdgis.maps.arcgis.com) with parcel data, but the server was refusing connections in May 2026. Fallback: download shapefiles for individual RI cities and towns from RIGIS data distribution (rigis.org). Commercial options: Regrid covers RI with full parcel attribute data."
23
+ }
24
+ ]
25
+ }
@@ -0,0 +1,102 @@
1
+ {
2
+ "stateSlug": "south-carolina",
3
+ "stateName": "South Carolina",
4
+ "stateAbbrev": "SC",
5
+ "lastUpdated": "2026-05-15",
6
+ "counties": [
7
+ {
8
+ "id": "sc-greenville",
9
+ "state": "SC",
10
+ "stateName": "South Carolina",
11
+ "stateSlug": "south-carolina",
12
+ "county": "Greenville",
13
+ "countySlug": "greenville-county",
14
+ "countyFips": "45045",
15
+ "hasPublicRest": true,
16
+ "endpoints": [
17
+ {
18
+ "url": "https://www.gcgis.org/arcgis/rest/services/GreenvilleJS/Map_Layers_JS/MapServer/52",
19
+ "serviceType": "MapServer",
20
+ "layerIndex": 52,
21
+ "layerName": "Tax Parcel",
22
+ "supportsQuery": true,
23
+ "corsEnabled": null,
24
+ "searchFields": [
25
+ { "name": "PIN", "label": "Parcel Identification Number", "searchable": true },
26
+ { "name": "OWNAM1", "label": "Owner Name 1", "searchable": true },
27
+ { "name": "OWNAM2", "label": "Owner Name 2", "searchable": false },
28
+ { "name": "STREET", "label": "Street Address", "searchable": true },
29
+ { "name": "CITY", "label": "City", "searchable": false },
30
+ { "name": "STATE", "label": "State", "searchable": false },
31
+ { "name": "ZIP5", "label": "ZIP Code", "searchable": false },
32
+ { "name": "NAMECO", "label": "County Name", "searchable": false },
33
+ { "name": "POWNNM", "label": "Previous Owner Name", "searchable": false },
34
+ { "name": "DEEDDATE", "label": "Deed Date", "searchable": false },
35
+ { "name": "DIST", "label": "Tax District", "searchable": false },
36
+ { "name": "LANDUSE", "label": "Land Use Code", "searchable": false },
37
+ { "name": "DESCR", "label": "Description", "searchable": false },
38
+ { "name": "SUBDIV", "label": "Subdivision", "searchable": false }
39
+ ],
40
+ "sampleQuery": "https://www.gcgis.org/arcgis/rest/services/GreenvilleJS/Map_Layers_JS/MapServer/52/query?where=UPPER(OWNAM1)+LIKE+UPPER('%25SMITH%25')&outFields=PIN,OWNAM1,STREET,CITY,STATE,ZIP5&returnGeometry=false&f=json&resultRecordCount=10",
41
+ "license": "public",
42
+ "licenseUrl": "https://www.gcgis.org/",
43
+ "status": "live",
44
+ "lastVerified": "2026-05-15",
45
+ "verifiedBy": "manual"
46
+ }
47
+ ],
48
+ "contact": {
49
+ "department": "Greenville County GIS Division",
50
+ "url": "https://www.gcgis.org/",
51
+ "email": "gis@greenvillecounty.org"
52
+ },
53
+ "notes": "Greenville County (pop. 530,000; seat: Greenville) Tax Parcel layer is within the Map_Layers_JS composite MapServer at layer index 52. 20 fields confirmed: PIN, OWNAM1/2, STREET, CITY, STATE, ZIP5, NAMECO, POWNNM, DEEDDATE, CUBOOK, CUPAGE, PLTBK1, PPAGE1, DIST, MKTAREA, JURIS, LANDUSE, DESCR, SUBDIV. Verified 2026-05-15: SMITH returns Greenville SC addresses (e.g., '124 MCDANIEL GREENE', '218 BUTLER AVE'). The same MapServer contains 95+ other layers (zoning, census, drainage, etc.) — layer 52 is specifically Tax Parcel. The GCGIS GreenvilleJS MapServer is the public-facing viewer service."
54
+ },
55
+ {
56
+ "id": "sc-charleston",
57
+ "state": "SC",
58
+ "stateName": "South Carolina",
59
+ "stateSlug": "south-carolina",
60
+ "county": "Charleston",
61
+ "countySlug": "charleston-county",
62
+ "countyFips": "45019",
63
+ "hasPublicRest": true,
64
+ "endpoints": [
65
+ {
66
+ "url": "https://gisccapps.charlestoncounty.org/arcgis/rest/services/GIS_VIEWER/Parcel_Search/MapServer/4",
67
+ "serviceType": "MapServer",
68
+ "layerIndex": 4,
69
+ "layerName": "Parcels",
70
+ "supportsQuery": true,
71
+ "corsEnabled": null,
72
+ "searchFields": [
73
+ { "name": "PID", "label": "Parcel ID (FEATURES.SDE.P_POLY_PARCEL.PID)", "searchable": true },
74
+ { "name": "GPIN", "label": "GIS Parcel ID (FEATURES.SDE.P_POLY_PARCEL.GPIN)", "searchable": true },
75
+ { "name": "OWNER1", "label": "Owner Name 1 (FEATURES.SDE.CAMA.OWNER1)", "searchable": true },
76
+ { "name": "OWNER2", "label": "Owner Name 2 (FEATURES.SDE.CAMA.OWNER2)", "searchable": false },
77
+ { "name": "MAIL_ST_NAME", "label": "Mailing Street Name (FEATURES.SDE.CAMA.MAIL_ST_NAME)", "searchable": false },
78
+ { "name": "MAIL_ST_NO", "label": "Mailing Street Number (FEATURES.SDE.CAMA.MAIL_ST_NO)", "searchable": false },
79
+ { "name": "MAIL_CITY", "label": "Mailing City (FEATURES.SDE.CAMA.MAIL_CITY)", "searchable": false },
80
+ { "name": "MAIL_STATE", "label": "Mailing State (FEATURES.SDE.CAMA.MAIL_STATE)", "searchable": false },
81
+ { "name": "MAIL_ZIP", "label": "Mailing ZIP (FEATURES.SDE.CAMA.MAIL_ZIP)", "searchable": false },
82
+ { "name": "TAX_DISTRICT", "label": "Tax District (FEATURES.SDE.CAMA.TAX_DISTRICT)", "searchable": false },
83
+ { "name": "LEGAL_DESCR", "label": "Legal Description (FEATURES.SDE.CAMA.LEGAL_DESCR)", "searchable": false },
84
+ { "name": "SUBDIVISION", "label": "Subdivision (FEATURES.SDE.CAMA.SUBDIVISION)", "searchable": false }
85
+ ],
86
+ "sampleQuery": "https://gisccapps.charlestoncounty.org/arcgis/rest/services/GIS_VIEWER/Parcel_Search/MapServer/4/query?where=UPPER%28%22FEATURES.SDE.CAMA.OWNER1%22%29+LIKE+UPPER%28%27%25SMITH%25%27%29&outFields=FEATURES.SDE.P_POLY_PARCEL.PID%2CFEATURES.SDE.CAMA.OWNER1%2CFEATURES.SDE.CAMA.MAIL_ST_NAME%2CFEATURES.SDE.CAMA.MAIL_CITY&returnGeometry=false&f=json&resultRecordCount=10",
87
+ "license": "public",
88
+ "licenseUrl": "https://charleston-county-gis-chascogis.hub.arcgis.com/",
89
+ "status": "live",
90
+ "lastVerified": "2026-05-15",
91
+ "verifiedBy": "manual"
92
+ }
93
+ ],
94
+ "contact": {
95
+ "department": "Charleston County GIS (BCS / Charleston County GIS)",
96
+ "url": "https://charleston-county-gis-chascogis.hub.arcgis.com/",
97
+ "email": null
98
+ },
99
+ "notes": "Charleston County (pop. 430,000; includes Charleston, North Charleston, Mount Pleasant) Parcel_Search MapServer layer 4. This layer is a spatial join of parcel geometry (FEATURES.SDE.P_POLY_PARCEL) with CAMA assessor data (FEATURES.SDE.CAMA), so field names are fully qualified with schema prefix. 20 fields confirmed: PID, GPIN, ACRES_CAL, OWNER1/2, TAX_DISTRICT, CLASS_CODE, MAIL_ST_NO/ST_NAME/ST_TYPE, MAIL_2ND_ADDR/ADDT, MAIL_CITY/STATE/ZIP/COUNTRY, LEGAL_DESCR, SUBDIVISION. IMPORTANT: field names in WHERE clause must be double-quoted due to dot notation (e.g., UPPER(\"FEATURES.SDE.CAMA.OWNER1\") LIKE ...). Verified 2026-05-15: SMITH returns Edisto Island and Spring City area addresses."
100
+ }
101
+ ]
102
+ }
@@ -0,0 +1,153 @@
1
+ {
2
+ "stateSlug": "tennessee",
3
+ "stateName": "Tennessee",
4
+ "stateAbbrev": "TN",
5
+ "lastUpdated": "2026-05-15",
6
+ "counties": [
7
+ {
8
+ "id": "tn-davidson",
9
+ "state": "TN",
10
+ "stateName": "Tennessee",
11
+ "stateSlug": "tennessee",
12
+ "county": "Davidson",
13
+ "countySlug": "davidson-county",
14
+ "countyFips": "47037",
15
+ "hasPublicRest": true,
16
+ "endpoints": [
17
+ {
18
+ "url": "https://maps.nashville.gov/arcgis/rest/services/Cadastral/Parcels/MapServer/0",
19
+ "serviceType": "MapServer",
20
+ "layerIndex": 0,
21
+ "layerName": "Ownership Parcels",
22
+ "supportsQuery": true,
23
+ "corsEnabled": null,
24
+ "searchFields": [
25
+ { "name": "ParID", "label": "Parcel ID", "searchable": true },
26
+ { "name": "Owner", "label": "Owner Name", "searchable": true },
27
+ { "name": "OwnDate", "label": "Ownership Date", "searchable": false },
28
+ { "name": "OwnInstr", "label": "Ownership Instrument", "searchable": false },
29
+ { "name": "OwnAddr1", "label": "Owner Address 1", "searchable": true },
30
+ { "name": "OwnAddr2", "label": "Owner Address 2", "searchable": false },
31
+ { "name": "OwnCity", "label": "Owner City", "searchable": false },
32
+ { "name": "OwnState", "label": "Owner State", "searchable": false },
33
+ { "name": "OwnZip", "label": "Owner ZIP", "searchable": false },
34
+ { "name": "PropAddr", "label": "Property Address", "searchable": true },
35
+ { "name": "PropHouse", "label": "Property House Number", "searchable": false },
36
+ { "name": "PropStreet", "label": "Property Street", "searchable": true },
37
+ { "name": "PropCity", "label": "Property City", "searchable": false },
38
+ { "name": "PropZip", "label": "Property ZIP", "searchable": false },
39
+ { "name": "SalePrice", "label": "Sale Price", "searchable": false },
40
+ { "name": "LandAppr", "label": "Land Appraisal Value", "searchable": false },
41
+ { "name": "TotlAppr", "label": "Total Appraisal Value", "searchable": false },
42
+ { "name": "Acres", "label": "Acreage", "searchable": false },
43
+ { "name": "LUCode", "label": "Land Use Code", "searchable": false },
44
+ { "name": "STANPAR", "label": "State Parcel Number", "searchable": true },
45
+ { "name": "APN", "label": "Assessor Parcel Number", "searchable": true }
46
+ ],
47
+ "sampleQuery": "https://maps.nashville.gov/arcgis/rest/services/Cadastral/Parcels/MapServer/0/query?where=UPPER(Owner)+LIKE+UPPER('%25SMITH%25')&outFields=ParID,Owner,PropAddr,PropCity,SalePrice,TotlAppr&returnGeometry=false&f=json&resultRecordCount=10",
48
+ "license": "public",
49
+ "licenseUrl": "https://maps.nashville.gov/",
50
+ "status": "live",
51
+ "lastVerified": "2026-05-15",
52
+ "verifiedBy": "manual"
53
+ }
54
+ ],
55
+ "contact": {
56
+ "department": "Metro Nashville GIS — Planning Department",
57
+ "url": "https://maps.nashville.gov/",
58
+ "email": null
59
+ },
60
+ "notes": "57 fields confirmed including ParID, DateEst, IsActive, FeatureType, Tract, Council, TaxDist, ParType, Owner, OwnDate, SaleCode, SaleSrc, ValidSale, OwnInstr, OwnAddr1/2/3, OwnCity, OwnState, OwnCountry, OwnZip, PropAddr, PropHouse, PropStreet, PropSuite, PropCity, PropState, PropZip, LegalDesc, PropInstr, PropDate, Front, Side, IsRegular, LUCode, LUDesc, AssessDate, PropFraction, StatedArea, SalePrice, Acres, LandAppr, ImprAppr, TotlAppr, LandAssd, ImprAssd, TotlAssd, STANPAR, DeededAcreage, APN. Owner query tested and confirmed: returns real Nashville addresses (e.g., 'SMITH, BRADLEY N JR' at '8300 SAWYER BROWN RD A-304 NASHVILLE'). Davidson County is a consolidated city-county with Nashville as the metro seat (pop. 715,000). APN is the assessor parcel number; STANPAR is the state parcel number. A separate Parcels_SP (State Plane) service exists at the same path with different spatial reference."
61
+ },
62
+ {
63
+ "id": "tn-shelby",
64
+ "state": "TN",
65
+ "stateName": "Tennessee",
66
+ "stateSlug": "tennessee",
67
+ "county": "Shelby",
68
+ "countySlug": "shelby-county",
69
+ "countyFips": "47157",
70
+ "hasPublicRest": true,
71
+ "endpoints": [
72
+ {
73
+ "url": "https://scgis.shelbycountytn.gov/serverhigh/rest/services/Parcel/CurrentParcels/MapServer/0",
74
+ "serviceType": "MapServer",
75
+ "layerIndex": 0,
76
+ "layerName": "Current Parcels",
77
+ "supportsQuery": true,
78
+ "corsEnabled": null,
79
+ "searchFields": [
80
+ { "name": "PARCELID", "label": "Parcel ID", "searchable": true },
81
+ { "name": "PARID", "label": "Parcel Account ID", "searchable": true },
82
+ { "name": "OWNER", "label": "Owner Name", "searchable": true },
83
+ { "name": "OWN_ADDR1", "label": "Owner Address 1", "searchable": false },
84
+ { "name": "OWN_ADDR2", "label": "Owner Address 2", "searchable": false },
85
+ { "name": "OWN_ADDR3", "label": "Owner Address 3", "searchable": false },
86
+ { "name": "OWN_CITY", "label": "Owner City", "searchable": false },
87
+ { "name": "OWN_STATE", "label": "Owner State", "searchable": false },
88
+ { "name": "OWN_ZIP", "label": "Owner ZIP", "searchable": false },
89
+ { "name": "PAR_ADDR1", "label": "Parcel Site Address", "searchable": true },
90
+ { "name": "MUNI", "label": "Municipality", "searchable": false },
91
+ { "name": "LUC", "label": "Land Use Code", "searchable": false },
92
+ { "name": "ZONING", "label": "Zoning", "searchable": false }
93
+ ],
94
+ "sampleQuery": "https://scgis.shelbycountytn.gov/serverhigh/rest/services/Parcel/CurrentParcels/MapServer/0/query?where=UPPER(OWNER)+LIKE+UPPER('%25SMITH%25')&outFields=PARCELID,OWNER,OWN_ADDR1,PAR_ADDR1,MUNI&returnGeometry=false&f=json&resultRecordCount=10",
95
+ "license": "public",
96
+ "licenseUrl": "https://www.shelbycountytn.gov/467/REGIS-Regional-GIS",
97
+ "status": "live",
98
+ "lastVerified": "2026-05-15",
99
+ "verifiedBy": "manual"
100
+ }
101
+ ],
102
+ "contact": {
103
+ "department": "Shelby County ReGIS (Regional Geographic Information Systems)",
104
+ "url": "https://www.shelbycountytn.gov/467/REGIS-Regional-GIS",
105
+ "email": null
106
+ },
107
+ "notes": "Shelby County (Memphis, pop. 934,000 county) ReGIS CurrentParcels layer. 47 fields confirmed including PARCELID, PARID, MAP, OWNER, OWNER_EXT, OWN_ADRNO/ADRPREDIR/ADRSTR/ADRSUF/ADRPOSTDIR, OWN_CITY/STATE/UNITDESC/UNITNO, OWN_ADDR1/2/3, OWN_ZIP/ZIP4, OWN_NOTE1/2, PAR_ADRNO/ADRSTR/ADRSUF, PAR_ADDR1, PAR_ZIP, NBHD, CLASS, LUC, LIVUNIT, ZONING, SUBDIV, SUBLOT, TPARCEL, PAID, LANDUSE, MUNI. Verified 2026-05-15: SMITH returns results from Germantown, Arlington, Unincorporated areas (MUNI field). ReGIS serves Memphis metro including Bartlett, Collierville, Germantown, Lakeland, Millington."
108
+ },
109
+ {
110
+ "id": "tn-hamilton",
111
+ "state": "TN",
112
+ "stateName": "Tennessee",
113
+ "stateSlug": "tennessee",
114
+ "county": "Hamilton",
115
+ "countySlug": "hamilton-county",
116
+ "countyFips": "47065",
117
+ "hasPublicRest": true,
118
+ "endpoints": [
119
+ {
120
+ "url": "https://mapsdev.hamiltontn.gov/hcwa03/rest/services/Live_Parcels/MapServer/0",
121
+ "serviceType": "MapServer",
122
+ "layerIndex": 0,
123
+ "layerName": "Parcels",
124
+ "supportsQuery": true,
125
+ "corsEnabled": null,
126
+ "searchFields": [
127
+ { "name": "PBA_NUM", "label": "Parcel Book Account Number", "searchable": true },
128
+ { "name": "GISLINK", "label": "GIS Link (Parcel ID)", "searchable": true },
129
+ { "name": "OWNERNAME1", "label": "Owner Name 1", "searchable": true },
130
+ { "name": "OWNERNAME2", "label": "Owner Name 2", "searchable": false },
131
+ { "name": "ADDRESS", "label": "Site Address", "searchable": true },
132
+ { "name": "STNUM", "label": "Street Number", "searchable": false },
133
+ { "name": "STNAME", "label": "Street Name", "searchable": true },
134
+ { "name": "MAP", "label": "Map Number", "searchable": false },
135
+ { "name": "PARCEL", "label": "Parcel Code", "searchable": false }
136
+ ],
137
+ "sampleQuery": "https://mapsdev.hamiltontn.gov/hcwa03/rest/services/Live_Parcels/MapServer/0/query?where=UPPER(OWNERNAME1)+LIKE+UPPER('%25SMITH%25')&outFields=PBA_NUM,OWNERNAME1,ADDRESS,GISLINK&returnGeometry=false&f=json&resultRecordCount=10",
138
+ "license": "public",
139
+ "licenseUrl": "https://gis.hamiltontn.gov/",
140
+ "status": "live",
141
+ "lastVerified": "2026-05-15",
142
+ "verifiedBy": "manual"
143
+ }
144
+ ],
145
+ "contact": {
146
+ "department": "Hamilton County Geospatial Technology",
147
+ "url": "https://gis.hamiltontn.gov/",
148
+ "email": null
149
+ },
150
+ "notes": "Hamilton County (Chattanooga, pop. 375,000) Live_Parcels layer — service name 'Live' indicates real-time feed from the assessor. Service is on mapsdev.hamiltontn.gov (hcwa03 subdirectory). 15 fields confirmed: OBJECTID, PARCEL_TYP, PBA_NUM, GISLINK, OWNERNAME1/2, STNUM, DIRPFX, STNAME, TYPESFX, ADDRESS, MAP, GROUP_, PARCEL. PBA_NUM is the full parcel book/account number (e.g., '033006 00302P000'); GISLINK is the trimmed parcel ID. Verified 2026-05-15: SMITH returns addresses like '16909 DAYTON PIKE', '703 GRAYSVILLE RD'. Note: distinct from Hamilton County OH (Cincinnati, FIPS 39061) in the atlas."
151
+ }
152
+ ]
153
+ }