@urbankitstudio/atlas 0.6.9 → 0.6.11

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/dist/index.js CHANGED
@@ -13,12 +13,12 @@ var LIVE_STATUS_URL = "https://urbankitstudio.com/api/atlas/status";
13
13
  // data/index.json
14
14
  var data_default = {
15
15
  version: "0.3.0",
16
- lastUpdated: "2026-09-26",
16
+ lastUpdated: "2026-10-03",
17
17
  totals: {
18
18
  states: 51,
19
- counties: 235,
20
- endpoints: 247,
21
- countiesWithEndpoint: 229,
19
+ counties: 239,
20
+ endpoints: 251,
21
+ countiesWithEndpoint: 233,
22
22
  countiesUnprobeable: 1
23
23
  },
24
24
  states: [
@@ -26,8 +26,8 @@ var data_default = {
26
26
  slug: "alabama",
27
27
  name: "Alabama",
28
28
  abbrev: "AL",
29
- countyCount: 2,
30
- endpointCount: 2,
29
+ countyCount: 3,
30
+ endpointCount: 3,
31
31
  populated: true
32
32
  },
33
33
  {
@@ -106,8 +106,8 @@ var data_default = {
106
106
  slug: "georgia",
107
107
  name: "Georgia",
108
108
  abbrev: "GA",
109
- countyCount: 5,
110
- endpointCount: 5,
109
+ countyCount: 6,
110
+ endpointCount: 6,
111
111
  populated: true
112
112
  },
113
113
  {
@@ -322,8 +322,8 @@ var data_default = {
322
322
  slug: "oregon",
323
323
  name: "Oregon",
324
324
  abbrev: "OR",
325
- countyCount: 6,
326
- endpointCount: 5,
325
+ countyCount: 7,
326
+ endpointCount: 6,
327
327
  populated: true
328
328
  },
329
329
  {
@@ -402,8 +402,8 @@ var data_default = {
402
402
  slug: "washington",
403
403
  name: "Washington",
404
404
  abbrev: "WA",
405
- countyCount: 4,
406
- endpointCount: 4,
405
+ countyCount: 5,
406
+ endpointCount: 5,
407
407
  populated: true
408
408
  },
409
409
  {
@@ -438,7 +438,7 @@ var alabama_default = {
438
438
  stateSlug: "alabama",
439
439
  stateName: "Alabama",
440
440
  stateAbbrev: "AL",
441
- lastUpdated: "2026-06-20",
441
+ lastUpdated: "2026-10-03",
442
442
  counties: [
443
443
  {
444
444
  id: "al-shelby",
@@ -534,6 +534,48 @@ var alabama_default = {
534
534
  email: null
535
535
  },
536
536
  notes: "Jefferson County AL (Birmingham, pop. 670,000; FIPS 01073) Basemap/Parcels layer. Data maintained by Jefferson County Tax Assessor Office and updated nightly. 76 fields in live schema as of 2026-06-27: OBJECTID, Unique_ID, PID, TAX_TOWNSH, ISP_SECTION, SEC, QSECTION, BLOCK, PARCEL, PARCELID, APP_PID, DISTRICT, ESN_NUM, ADDR_PSPR, Bldg_Number, Street_Name, Street_Type, Street_Dir, APARTMENT, ADDRAPT_PS, OWNERNAME, PROP_MAIL, CITYMAIL, ZIP_MAIL, STATE_Mail, Legal_Desc, Property_City, Property_State, NEIGHBOR_N, SUBDIV_NAME, ADDR_APR, ZIP, TotalMHValue, PrevParcelLand/Imp/Total, Water, Sewer, Gas, ACRES_APR, GIS_ACRES, Remarks, Name2, Plat_Book/Page (\xD72), NbhdCd, Ownership, Topography, RoadAcc, MaintDate, CITY, NbhName, PriMunCode, SecMunCode, PriAcreage, SecAcreage, LegalRemarks, ParcelNo, Division, RecordYear, SchDist, MapNumber, Sqft, FIREDEPTNAME, Cls, BLDG_IND, TAX_CODE, OBY_IND, AssdValue, Territory, FireFee_District. NOTE 2026-06-27: ZONING_BOE is no longer in the live schema (schema drift), removed from searchFields. OWNERNAME field returns padded fixed-width strings (trim on use). Note: distinct from Jefferson County CO (FIPS 08059) and Jefferson County KY (Louisville; FIPS 21111) already in atlas. Verified 2026-06-27: metadata 200, query 200, 410K+ parcels."
537
+ },
538
+ {
539
+ id: "al-mobile",
540
+ state: "AL",
541
+ stateName: "Alabama",
542
+ stateSlug: "alabama",
543
+ county: "Mobile",
544
+ countySlug: "mobile-county",
545
+ countyFips: "01097",
546
+ hasPublicRest: true,
547
+ endpoints: [
548
+ {
549
+ url: "https://services8.arcgis.com/HND1NcQt6vgOGn1z/arcgis/rest/services/MCRC_Public_Parcels/FeatureServer/0",
550
+ serviceType: "FeatureServer",
551
+ layerIndex: 0,
552
+ layerName: "MCRC_Public_Parcels",
553
+ supportsQuery: true,
554
+ corsEnabled: true,
555
+ searchFields: [
556
+ { name: "Name1", label: "Owner Name 1", searchable: true },
557
+ { name: "Name2", label: "Owner Name 2", searchable: true },
558
+ { name: "Parcel_Number", label: "Parcel ID", searchable: true },
559
+ { name: "Account_Number", label: "Account Number", searchable: true },
560
+ { name: "PropAddr1", label: "Site Address", searchable: true },
561
+ { name: "PropCity", label: "Site City", searchable: true },
562
+ { name: "PropZip", label: "Site ZIP", searchable: false },
563
+ { name: "Acreage", label: "Acres", searchable: false }
564
+ ],
565
+ sampleQuery: "https://services8.arcgis.com/HND1NcQt6vgOGn1z/arcgis/rest/services/MCRC_Public_Parcels/FeatureServer/0/query?where=UPPER(Name1)%20LIKE%20%27SMITH%25%27&outFields=*&returnGeometry=false&resultRecordCount=10&f=json",
566
+ license: "unknown",
567
+ licenseUrl: "https://www.arcgis.com/home/item.html?id=07c93ca64bbf4fb8a8d49b7ea80ef067",
568
+ status: "live",
569
+ lastVerified: "2026-10-03",
570
+ verifiedBy: "manual"
571
+ }
572
+ ],
573
+ contact: {
574
+ department: "Mapping Department, Mobile County Revenue Commission",
575
+ url: null,
576
+ email: null
577
+ },
578
+ notes: "Mobile County, Alabama (Mobile; FIPS 01097) publishes its parcels as the 'Mobile County Alabama Tax Parcels' FeatureServer, authored by the Mobile County Revenue Commission's Mapping Department and updated 2026-09-22. 214,040 parcels, countywide. The owner is in Name1 (and Name2), the parcel id in Parcel_Number (ParcelNo is the formatted form), and the site address in PropAddr1 with PropCity and PropZip. The layer has NO owner mailing-address fields (its columns are OBJECTID, Parcel_Number, Account_Number, ParcelNo, Name1, Name2, PropAddr1, PropAddr2, PropCity, PropState, PropZip, Acreage, Sqft, KeyNum), so it serves owner names and site addresses, not mailing addresses. String fields are heavily space padded (Name1 is 255 wide), so trim them and search with UPPER(Name1) LIKE 'SMITH%', never equality. The spatial reference is wkid 102630, so send outSR=4326 if you need longitude and latitude. CORS answers Access-Control-Allow-Origin *. No open-data license is stated; the item carries only an informational-use disclaimer. Verified live 2026-10-03: owner SMITH returned rows (first owner SMITH BONNIE G, 0104430000006.000, 20240 HIGHWAY 43, Mount Vernon)."
537
579
  }
538
580
  ]
539
581
  };
@@ -710,24 +752,29 @@ var arizona_default = {
710
752
  supportsQuery: true,
711
753
  corsEnabled: null,
712
754
  searchFields: [
713
- { name: "PARCELID", label: "Parcel ID (APN)", searchable: true },
714
- { name: "LOWPARCELID", label: "Lower Parcel ID", searchable: true },
715
- { name: "OWNERNME1", label: "Owner Name (Primary)", searchable: true },
716
- { name: "OWNERNME2", label: "Owner Name (Secondary)", searchable: true },
717
- { name: "SITEADDRESS", label: "Site Address", searchable: true },
718
- { name: "CVTTXCD", label: "Converted Tax Code", searchable: false },
719
- { name: "CVTTXDSCRP", label: "Tax Code Description", searchable: false },
720
- { name: "USECD", label: "Use Code", searchable: false },
721
- { name: "USEDSCRP", label: "Use Description", searchable: false },
722
- { name: "CLASSCD", label: "Class Code", searchable: false },
723
- { name: "CLASSDSCRP", label: "Class Description", searchable: false },
724
- { name: "PRPRTYDSCRP", label: "Property Description", searchable: false }
755
+ { name: "Parcel_Identification_Number", label: "Parcel ID (APN)", searchable: true },
756
+ { name: "Lowest_Parcel_Identification_Number", label: "Lower Parcel ID", searchable: true },
757
+ { name: "First_Owner_Name", label: "Owner Name (Primary)", searchable: true },
758
+ { name: "Second_Owner_Name", label: "Owner Name (Secondary)", searchable: true },
759
+ { name: "Site_Address", label: "Site Address", searchable: true },
760
+ { name: "Postal_Address", label: "Owner Mailing Address", searchable: true },
761
+ { name: "Postal_City", label: "Owner Mailing City", searchable: true },
762
+ { name: "Postal_State", label: "Owner Mailing State", searchable: false },
763
+ { name: "Postal_Zip_Code_5", label: "Owner Mailing ZIP", searchable: false },
764
+ { name: "Postal_Zip_Code_4", label: "Owner Mailing ZIP+4", searchable: false },
765
+ { name: "Tax_District_Code", label: "Converted Tax Code", searchable: false },
766
+ { name: "Tax_District_Description", label: "Tax Code Description", searchable: false },
767
+ { name: "Assessing_Use_Code", label: "Use Code", searchable: false },
768
+ { name: "Assessing_Use_Description", label: "Use Description", searchable: false },
769
+ { name: "Property_Class_Code", label: "Class Code", searchable: false },
770
+ { name: "Property_Class", label: "Class Description", searchable: false },
771
+ { name: "Property_Description", label: "Property Description", searchable: false }
725
772
  ],
726
- sampleQuery: "https://rogue.casagrandeaz.gov/arcgis/rest/services/Pinal_County/Pinal_County_Parcels/MapServer/0/query?where=PARCELID+LIKE+'%25302%25'&outFields=PARCELID,SITEADDRESS,OWNERNME1,CLASSCD,CLASSDSCRP&returnGeometry=false&f=json&resultRecordCount=10",
773
+ sampleQuery: "https://rogue.casagrandeaz.gov/arcgis/rest/services/Pinal_County/Pinal_County_Parcels/MapServer/0/query?where=Parcel_Identification_Number+LIKE+'%25302%25'&outFields=Parcel_Identification_Number,Site_Address,First_Owner_Name,Property_Class_Code,Property_Class&returnGeometry=false&f=json&resultRecordCount=10",
727
774
  license: "public",
728
775
  licenseUrl: "https://www.pinal.gov/630/GIS",
729
776
  status: "live",
730
- lastVerified: "2026-05-15",
777
+ lastVerified: "2026-10-03",
731
778
  verifiedBy: "manual"
732
779
  }
733
780
  ],
@@ -736,7 +783,7 @@ var arizona_default = {
736
783
  url: "https://www.pinal.gov/630/GIS",
737
784
  email: null
738
785
  },
739
- notes: "74 fields confirmed including OBJECTID, LOWPARCELID, PARCELID, BUILDING, UNIT, LGLSTARTDT, CVTTXCD, CVTTXDSCRP, SCHLTXCD, SCHLDSCRP, USECD, USEDSCRP, NGHBRHDCD, CLASSCD, CLASSDSCRP, SITEADDRESS, PRPRTYDSCRP, CNVYNAME, OWNERNME1, OWNERNME2. Owner name confirmed live: PARCELID LIKE '%302%' returns OWNERNME1='FELDMEIER BRIAN' in Arizona City AZ 85123. PARCELID format is typically 9-digit numeric string. Hosted on the City of Casa Grande ArcGIS server (rogue.casagrandeaz.gov) which serves Pinal County parcel data for the Phoenix metro south area (Chandler/Gilbert/Queen Creek/Maricopa City/Casa Grande). Capabilities: Query, Map, Data. maxRecordCount=1000. Note: the gismaps.pinalcountyaz.gov server is currently not externally accessible (HTTP 000); the Casa Grande mirror is the reliable public endpoint."
786
+ notes: "74 fields confirmed including OBJECTID, Lowest_Parcel_Identification_Number, Parcel_Identification_Number, Building_Number, Unit_Number, Legal_Start_Date, Tax_District_Code, Tax_District_Description, School_District_Code, School_District_Description, Assessing_Use_Code, Assessing_Use_Description, Assessing_Neighborhood_Code, Property_Class_Code, Property_Class, Site_Address, Property_Description, Sub_or_Condo_Name, First_Owner_Name, Second_Owner_Name, Postal_Address, Postal_City, Postal_State, Postal_Zip_Code_5, Postal_Zip_Code_4. In September 2026 the county renamed every field to these long-form names (field count, ids and values unchanged; e.g. PARCELID became Parcel_Identification_Number, OWNERNME1 became First_Owner_Name, SITEADDRESS became Site_Address, CLASSCD became Property_Class_Code), which broke every declared field and the old sampleQuery; the record was re-mapped on 2026-10-03. The rename also exposed owner mailing address for the first time (Postal_Address, Postal_City, Postal_State, Postal_Zip_Code_5, Postal_Zip_Code_4). Site_Address now carries city, state and ZIP in one string (e.g. 9865 W BATTAGLIA DR ARIZONA CITY, AZ 85123). Owner name confirmed live: Parcel_Identification_Number LIKE '%302%' returns First_Owner_Name='FELDMEIER BRIAN' in Arizona City AZ 85123. Parcel_Identification_Number is typically a 9-digit numeric string; a where=1=1 probe returns a placeholder row with Parcel_Identification_Number 'NAP', which is still a valid features array. Named outFields work on this server. Hosted on the City of Casa Grande ArcGIS server (rogue.casagrandeaz.gov) which serves Pinal County parcel data for the Phoenix metro south area (Chandler/Gilbert/Queen Creek/Maricopa City/Casa Grande). Capabilities: Query, Map, Data. maxRecordCount=2000 (was 1000 before the September 2026 republish). Note: the gismaps.pinalcountyaz.gov server is currently not externally accessible (HTTP 000; last checked before 2026-10-03, not re-tested then); the Casa Grande mirror is the reliable public endpoint."
740
787
  }
741
788
  ]
742
789
  };
@@ -803,7 +850,7 @@ var arkansas_default = {
803
850
  },
804
851
  {
805
852
  name: "countyfips",
806
- label: "County FIPS (05119 = Pulaski)",
853
+ label: "County FIPS (119 = Pulaski)",
807
854
  searchable: false
808
855
  },
809
856
  {
@@ -822,13 +869,13 @@ var arkansas_default = {
822
869
  searchable: false
823
870
  }
824
871
  ],
825
- sampleQuery: "https://gis.arkansas.gov/arcgis/rest/services/FEATURESERVICES/Planning_Cadastre/FeatureServer/6/query?where=countyfips%3D'05119'+AND+UPPER(ownername)+LIKE+UPPER('%25SMITH%25')&outFields=parcelid,ownername,adrlabel,countyfips&returnGeometry=false&f=json&resultRecordCount=10",
872
+ sampleQuery: "https://gis.arkansas.gov/arcgis/rest/services/FEATURESERVICES/Planning_Cadastre/FeatureServer/6/query?where=countyfips%3D'119'+AND+UPPER(ownername)+LIKE+UPPER('%25SMITH%25')&outFields=parcelid,ownername,adrlabel,countyfips&returnGeometry=false&f=json&resultRecordCount=10",
826
873
  license: "public",
827
874
  licenseUrl: "https://gis.arkansas.gov/",
828
875
  status: "live",
829
- lastVerified: "2026-06-20",
830
- verifiedBy: "automated",
831
- scopeWhere: "countyfips = '05119'"
876
+ lastVerified: "2026-10-03",
877
+ verifiedBy: "manual",
878
+ scopeWhere: "countyfips = '119'"
832
879
  }
833
880
  ],
834
881
  contact: {
@@ -836,7 +883,7 @@ var arkansas_default = {
836
883
  url: "https://gis.arkansas.gov/",
837
884
  email: null
838
885
  },
839
- notes: "Pulaski County AR (Little Rock, pop. 400,000; state capital; county seat Little Rock; FIPS 05119) is served by the Arkansas statewide parcel layer hosted by the Arkansas GIS Office (AGISO). The Planning_Cadastre/FeatureServer/6 layer aggregates parcels from all 75 AR counties, filter by countyfips='05119' to query Pulaski County specifically. Key fields: parcelid (parcel identifier), ownername (owner name), adrnum+pstrnam+adrcity+adrzip5 (address components), adrlabel (full address string), countyfips (5-digit FIPS, '05119' for Pulaski), countyid, county (county name text), parceltype, assessvalue, impvalue, landvalue, totalvalue, subdivision, section/township/range, camakey, dataprov, pubdate. Owner-name search via UPPER(ownername) LIKE works across all AR counties. Verified 2026-06-20: countyfips='05119' AND SMITH returns Little Rock addresses. The statewide layer is compiled from county assessor data and may lag 6\u201312 months from deed recording."
886
+ notes: "Pulaski County AR (Little Rock, pop. 400,000; state capital; county seat Little Rock; FIPS 05119) is served by the Arkansas statewide parcel layer hosted by the Arkansas GIS Office (AGISO). The Planning_Cadastre/FeatureServer/6 layer aggregates parcels from all 75 AR counties, filter by countyfips='119' to query Pulaski County specifically. Key fields: parcelid (parcel identifier), ownername (owner name), adrnum+pstrnam+adrcity+adrzip5 (address components), adrlabel (full address string), countyfips (3-digit county code, '119' for Pulaski), countyid, county (county name text), parceltype, assessvalue, impvalue, landvalue, totalvalue, subdivision, section/township/range, camakey, dataprov, pubdate. Owner-name search via UPPER(ownername) LIKE works across all AR counties. Verified 2026-06-20: countyfips='05119' AND SMITH returns Little Rock addresses. 2026-10-03: the state changed countyfips from the 5-digit state+county FIPS to the 3-digit county code, so the old scope countyfips='05119' matched 0 rows and every attribute search here returned nothing without an error; countyfips='119' counts 180,229 rows, and the scope and sampleQuery now use it (SMITH returns SMITH HALLIE M, 4 OAKRIDGE DR). The statewide layer is compiled from county assessor data and may lag 6\u201312 months from deed recording."
840
887
  },
841
888
  {
842
889
  id: "ar-benton",
@@ -893,7 +940,7 @@ var arkansas_default = {
893
940
  },
894
941
  {
895
942
  name: "countyfips",
896
- label: "County FIPS (05007 = Benton)",
943
+ label: "County FIPS (007 = Benton)",
897
944
  searchable: false
898
945
  },
899
946
  {
@@ -912,13 +959,13 @@ var arkansas_default = {
912
959
  searchable: false
913
960
  }
914
961
  ],
915
- sampleQuery: "https://gis.arkansas.gov/arcgis/rest/services/FEATURESERVICES/Planning_Cadastre/FeatureServer/6/query?where=countyfips%3D'05007'+AND+UPPER(ownername)+LIKE+UPPER('%25SMITH%25')&outFields=parcelid,ownername,adrlabel,countyfips&returnGeometry=false&f=json&resultRecordCount=10",
962
+ sampleQuery: "https://gis.arkansas.gov/arcgis/rest/services/FEATURESERVICES/Planning_Cadastre/FeatureServer/6/query?where=countyfips%3D'007'+AND+UPPER(ownername)+LIKE+UPPER('%25SMITH%25')&outFields=parcelid,ownername,adrlabel,countyfips&returnGeometry=false&f=json&resultRecordCount=10",
916
963
  license: "public",
917
964
  licenseUrl: "https://gis.arkansas.gov/",
918
965
  status: "live",
919
- lastVerified: "2026-06-20",
920
- verifiedBy: "automated",
921
- scopeWhere: "countyfips = '05007'"
966
+ lastVerified: "2026-10-03",
967
+ verifiedBy: "manual",
968
+ scopeWhere: "countyfips = '007'"
922
969
  }
923
970
  ],
924
971
  contact: {
@@ -926,7 +973,7 @@ var arkansas_default = {
926
973
  url: "https://gis.arkansas.gov/",
927
974
  email: null
928
975
  },
929
- notes: "Benton County AR (Bentonville/Rogers/Fayetteville metro north; county seat Bentonville; FIPS 05007; home to Walmart HQ) is served by the Arkansas statewide parcel layer. Filter countyfips='05007' to scope to Benton County. Same schema and endpoint as Pulaski County (AR statewide FeatureServer/6). Benton County is the fastest-growing county in Arkansas. Verified 2026-06-20: SMITH query returns Bentonville-area addresses."
976
+ notes: "Benton County AR (Bentonville/Rogers/Fayetteville metro north; county seat Bentonville; FIPS 05007; home to Walmart HQ) is served by the Arkansas statewide parcel layer. Filter countyfips='007' to scope to Benton County. Same schema and endpoint as Pulaski County (AR statewide FeatureServer/6). Benton County is the fastest-growing county in Arkansas. Verified 2026-06-20: SMITH query returns Bentonville-area addresses. 2026-10-03: the state changed countyfips from the 5-digit state+county FIPS to the 3-digit county code, so the old scope countyfips='05007' matched 0 rows and every attribute search here returned nothing without an error; countyfips='007' counts 175,795 rows, and the scope and sampleQuery now use it (SMITH returns SMITH REVOCABLE TRUST, CRAIG MARTIN)."
930
977
  },
931
978
  {
932
979
  id: "ar-washington",
@@ -983,7 +1030,7 @@ var arkansas_default = {
983
1030
  },
984
1031
  {
985
1032
  name: "countyfips",
986
- label: "County FIPS (05143 = Washington)",
1033
+ label: "County FIPS (143 = Washington)",
987
1034
  searchable: false
988
1035
  },
989
1036
  {
@@ -1002,13 +1049,13 @@ var arkansas_default = {
1002
1049
  searchable: false
1003
1050
  }
1004
1051
  ],
1005
- sampleQuery: "https://gis.arkansas.gov/arcgis/rest/services/FEATURESERVICES/Planning_Cadastre/FeatureServer/6/query?where=countyfips%3D'05143'+AND+UPPER(ownername)+LIKE+UPPER('%25SMITH%25')&outFields=parcelid,ownername,adrlabel,countyfips&returnGeometry=false&f=json&resultRecordCount=10",
1052
+ sampleQuery: "https://gis.arkansas.gov/arcgis/rest/services/FEATURESERVICES/Planning_Cadastre/FeatureServer/6/query?where=countyfips%3D'143'+AND+UPPER(ownername)+LIKE+UPPER('%25SMITH%25')&outFields=parcelid,ownername,adrlabel,countyfips&returnGeometry=false&f=json&resultRecordCount=10",
1006
1053
  license: "public",
1007
1054
  licenseUrl: "https://gis.arkansas.gov/",
1008
1055
  status: "live",
1009
- lastVerified: "2026-06-20",
1010
- verifiedBy: "automated",
1011
- scopeWhere: "countyfips = '05143'"
1056
+ lastVerified: "2026-10-03",
1057
+ verifiedBy: "manual",
1058
+ scopeWhere: "countyfips = '143'"
1012
1059
  }
1013
1060
  ],
1014
1061
  contact: {
@@ -1016,7 +1063,7 @@ var arkansas_default = {
1016
1063
  url: "https://gis.arkansas.gov/",
1017
1064
  email: null
1018
1065
  },
1019
- notes: "Washington County AR (Fayetteville metro; county seat Fayetteville; FIPS 05143; home to University of Arkansas) is served by the Arkansas statewide parcel layer. Filter countyfips='05143' to scope to Washington County. Same schema and endpoint as Pulaski and Benton counties (AR statewide FeatureServer/6). Washington County AR must not be confused with Washington County in other states. Verified 2026-06-20: SMITH query returns Fayetteville-area addresses."
1066
+ notes: "Washington County AR (Fayetteville metro; county seat Fayetteville; FIPS 05143; home to University of Arkansas) is served by the Arkansas statewide parcel layer. Filter countyfips='143' to scope to Washington County. Same schema and endpoint as Pulaski and Benton counties (AR statewide FeatureServer/6). Washington County AR must not be confused with Washington County in other states. Verified 2026-06-20: SMITH query returns Fayetteville-area addresses. 2026-10-03: the state changed countyfips from the 5-digit state+county FIPS to the 3-digit county code, so the old scope countyfips='05143' matched 0 rows and every attribute search here returned nothing without an error; countyfips='143' counts 114,791 rows, and the scope and sampleQuery now use it (SMITH returns SMITH, ANNE B, 601 N HIGHLAND AVE)."
1020
1067
  }
1021
1068
  ]
1022
1069
  };
@@ -12813,7 +12860,7 @@ var georgia_default = {
12813
12860
  stateSlug: "georgia",
12814
12861
  stateName: "Georgia",
12815
12862
  stateAbbrev: "GA",
12816
- lastUpdated: "2026-08-25",
12863
+ lastUpdated: "2026-10-03",
12817
12864
  counties: [
12818
12865
  {
12819
12866
  id: "ga-fulton",
@@ -13180,6 +13227,51 @@ var georgia_default = {
13180
13227
  email: null
13181
13228
  },
13182
13229
  notes: "Savannah and Chatham County, published by SAGIS. 125,326 parcels with owner names on 124,952 rows (99.7 percent), and the fullest field set in this batch: parcel id, two owner columns, a complete mailing address, a combined situs and split situs parts. IMPORTANT for maintenance: this service holds 28 year-versioned layers, 0 to 17 being Historic Parcels 1998 to 2015 and 18 to 27 being Parcel Digest 2016 to 2025. Layer 27 is the newest today. When SAGIS publishes Parcel Digest 2026 it will be layer 28 and this entry will silently go a year stale, so the layer index needs checking whenever this record is reverified."
13230
+ },
13231
+ {
13232
+ id: "ga-dougherty",
13233
+ state: "GA",
13234
+ stateName: "Georgia",
13235
+ stateSlug: "georgia",
13236
+ county: "Dougherty",
13237
+ countySlug: "dougherty-county",
13238
+ countyFips: "13095",
13239
+ hasPublicRest: true,
13240
+ endpoints: [
13241
+ {
13242
+ url: "https://services6.arcgis.com/VKHi8CC6pMIyYUIs/arcgis/rest/services/Parcels_Public_View/FeatureServer/0",
13243
+ serviceType: "FeatureServer",
13244
+ layerIndex: 0,
13245
+ layerName: "Parcels",
13246
+ supportsQuery: true,
13247
+ corsEnabled: true,
13248
+ searchFields: [
13249
+ { name: "Name", label: "Owner Name", searchable: true },
13250
+ { name: "ParcelNum", label: "Parcel ID", searchable: true },
13251
+ { name: "Address", label: "Site Address", searchable: true },
13252
+ { name: "SiteCity", label: "Site City", searchable: true },
13253
+ { name: "SiteZip", label: "Site ZIP", searchable: false },
13254
+ { name: "MailAddress1", label: "Owner Mailing Address", searchable: true },
13255
+ { name: "MailCity", label: "Owner Mailing City", searchable: true },
13256
+ { name: "MailState", label: "Owner Mailing State", searchable: false },
13257
+ { name: "MailZip", label: "Owner Mailing ZIP", searchable: false },
13258
+ { name: "Jurisdiction", label: "Jurisdiction (City or County)", searchable: false },
13259
+ { name: "TotalAcerage", label: "Acres", searchable: false }
13260
+ ],
13261
+ sampleQuery: "https://services6.arcgis.com/VKHi8CC6pMIyYUIs/arcgis/rest/services/Parcels_Public_View/FeatureServer/0/query?where=UPPER(Name)%20LIKE%20%27SMITH%25%27&outFields=*&returnGeometry=false&resultRecordCount=10&f=json",
13262
+ license: "unknown",
13263
+ licenseUrl: "https://www.arcgis.com/home/item.html?id=9729f520dfab47fab85484908994ef1f",
13264
+ status: "live",
13265
+ lastVerified: "2026-10-03",
13266
+ verifiedBy: "manual"
13267
+ }
13268
+ ],
13269
+ contact: {
13270
+ department: "Albany GIS (Albany-Dougherty Geographic Information System)",
13271
+ url: null,
13272
+ email: null
13273
+ },
13274
+ notes: "Dougherty County, Georgia (county seat Albany) publishes its parcels as the 'Dougherty County Land Parcels Dataset' FeatureServer, maintained by Albany GIS, covering both the CITY and COUNTY jurisdictions (the Jurisdiction column says which). 38,007 parcels as of 2026-10-03. The owner is in Name, the parcel id in ParcelNum, the site address in Address (with SiteCity and SiteZip) and the owner mailing address in MailAddress1/MailCity/MailState/MailZip; MailAddress1 was empty on the first rows sampled. String fields are space padded to their full width, so trim them and search with UPPER(Name) LIKE 'SMITH%', never equality. The layer's spatial reference is wkid 102667 (latestWkid 2240), so send outSR=4326 if you need longitude and latitude. CORS answers Access-Control-Allow-Origin *. No open-data license is stated; the item carries only a disclaimer that Albany GIS makes every effort at accuracy and that all data is subject to change. A third-party count of 39,443 parcels is slightly higher than the layer's, so the public view may be a subset. Verified live 2026-10-03: owner SMITH returned rows (first owner SMITH SHIRLEY PEARL, 0000S/00003/03A, 2803 ELTON ST, Albany)."
13183
13275
  }
13184
13276
  ]
13185
13277
  };
@@ -14593,12 +14685,12 @@ var maryland_default = {
14593
14685
  hasPublicRest: true,
14594
14686
  endpoints: [
14595
14687
  {
14596
- url: "https://gis.princegeorgescountymd.gov/arcgis/rest/services/Property/Property_Flattened/MapServer/0",
14597
- serviceType: "MapServer",
14688
+ url: "https://services1.arcgis.com/qS7AYixGtf3sv8B6/arcgis/rest/services/Property_Flattened_Py/FeatureServer/0",
14689
+ serviceType: "FeatureServer",
14598
14690
  layerIndex: 0,
14599
- layerName: "Property Flattened",
14691
+ layerName: "Property_Flattened_Py",
14600
14692
  supportsQuery: true,
14601
- corsEnabled: null,
14693
+ corsEnabled: true,
14602
14694
  searchFields: [
14603
14695
  {
14604
14696
  name: "ACCOUNT",
@@ -14661,12 +14753,12 @@ var maryland_default = {
14661
14753
  searchable: false
14662
14754
  }
14663
14755
  ],
14664
- sampleQuery: "https://gis.princegeorgescountymd.gov/arcgis/rest/services/Property/Property_Flattened/MapServer/0/query?where=UPPER(OWNER_NAME)+LIKE+UPPER('%25SMITH%25')&outFields=ACCOUNT,PROPERTY_ID,OWNER_NAME,HOUSE_NUMBER,STREET_NAME,STREET_TYPE,MAIL_STREET,MAIL_CITY,MAIL_ZIP5&returnGeometry=false&f=json&resultRecordCount=10",
14756
+ sampleQuery: "https://services1.arcgis.com/qS7AYixGtf3sv8B6/arcgis/rest/services/Property_Flattened_Py/FeatureServer/0/query?where=UPPER(OWNER_NAME)+LIKE+UPPER('%25SMITH%25')&outFields=ACCOUNT,PROPERTY_ID,OWNER_NAME,HOUSE_NUMBER,STREET_NAME,STREET_TYPE,MAIL_STREET,MAIL_CITY,MAIL_ZIP5&returnGeometry=false&f=json&resultRecordCount=10",
14665
14757
  license: "public",
14666
14758
  licenseUrl: "https://www.princegeorgescountymd.gov/665/Geographic-Information-Systems-GIS",
14667
14759
  status: "live",
14668
- lastVerified: "2026-06-05",
14669
- verifiedBy: "automated"
14760
+ lastVerified: "2026-10-03",
14761
+ verifiedBy: "manual"
14670
14762
  }
14671
14763
  ],
14672
14764
  contact: {
@@ -14674,7 +14766,7 @@ var maryland_default = {
14674
14766
  url: "https://www.princegeorgescountymd.gov/665/Geographic-Information-Systems-GIS",
14675
14767
  email: null
14676
14768
  },
14677
- notes: "Prince George's County is Maryland's second-most populous county (pop. 910,000; county seat Upper Marlboro). The Property_Flattened MapServer on gis.princegeorgescountymd.gov (ArcGIS Server 11.5) is the county's canonical public property layer with 112 fields and 352,791 parcels. Live query confirmed OWNER_NAME exposure. Key fields: ACCOUNT (county account number, 7 digits), PROPERTY_ID (prefixed as '12' + ACCOUNT for the full 9-digit SDAT account number), OWNER_NAME, ICO_NAME (in-care-of), HOUSE_NUMBER (zero-padded 6-digit, e.g. '002909'), STREET_NAME, STREET_TYPE, STREET_DIRECTION, MAIL_STREET/CITY/STATE/ZIP5 (owner mailing address), ASSESS_DIST (assessment district), LAND_AREA_ACRE, LAND_AREA_SQFT, LIBER, FOLIO, SUB_NAME, CONDO_UNIT_NUMBER, TAXMAPGRID. The situs address is split across HOUSE_NUMBER + STREET_NAME + STREET_TYPE. There is no single combined site address field on this layer. The county belongs to the M-NCPPC (Maryland-National Capital Park and Planning Commission) planning region and uses Maryland SDAT for the authoritative ownership record. Prince George's County borders DC and contains the University of Maryland (College Park) and Joint Base Andrews."
14769
+ notes: "Prince George's County is Maryland's second-most populous county (pop. 910,000; county seat Upper Marlboro). The Property_Flattened MapServer on gis.princegeorgescountymd.gov (ArcGIS Server 11.5) is the county's canonical public property layer with 112 fields and 352,791 parcels. Live query confirmed OWNER_NAME exposure. Key fields: ACCOUNT (county account number, 7 digits), PROPERTY_ID (prefixed as '12' + ACCOUNT for the full 9-digit SDAT account number), OWNER_NAME, ICO_NAME (in-care-of), HOUSE_NUMBER (zero-padded 6-digit, e.g. '002909'), STREET_NAME, STREET_TYPE, STREET_DIRECTION, MAIL_STREET/CITY/STATE/ZIP5 (owner mailing address), ASSESS_DIST (assessment district), LAND_AREA_ACRE, LAND_AREA_SQFT, LIBER, FOLIO, SUB_NAME, CONDO_UNIT_NUMBER, TAXMAPGRID. The situs address is split across HOUSE_NUMBER + STREET_NAME + STREET_TYPE. There is no single combined site address field on this layer. The county belongs to the M-NCPPC (Maryland-National Capital Park and Planning Commission) planning region and uses Maryland SDAT for the authoritative ownership record. Prince George's County borders DC and contains the University of Maryland (College Park) and Joint Base Andrews. 2026-10-03: the registered endpoint moved from the county MapServer to the Planning Department's hosted ArcGIS Online copy of the same layer (Property_Flattened_Py FeatureServer on services1.arcgis.com, owner Planning_PGCO_MD, CORS open, maxRecordCount 2000, 353,381 parcels). The reason is a county-side defect, not a schema change: gis.princegeorgescountymd.gov is load-balanced and one backend node lacks the layers, so about every second request to any service on the host (Property_Flattened, Property_Centroids, Property, AddressPoints) answers HTTP 200 with a Layer not found error body, metadata and queries alike, whatever the where clause. The liveness cron does not retry an HTTP 200 error body, so the county flapped between live and degraded. The hosted copy has the same field names (every declared searchField present, plus MAIL_STATE) and returned the same first row as the county host on its good turns, with 18 of 18 probes answering. The old host is deliberately not kept as a second endpoint, because the cron grades a county by its worst endpoint. Caveat: the hosted copy is a periodic refresh by the Planning Department (stamped Updated 20260923), so its freshness is days, not minutes; switch back once the county host answers consistently."
14678
14770
  },
14679
14771
  {
14680
14772
  id: "md-baltimore",
@@ -16334,8 +16426,8 @@ var nevada_default = {
16334
16426
  corsEnabled: null,
16335
16427
  searchFields: [
16336
16428
  { name: "APN", label: "Assessor Parcel Number", searchable: true },
16337
- { name: "FIRSTNAME", label: "Owner First Name", searchable: true },
16338
16429
  { name: "LASTNAME", label: "Owner Last Name", searchable: true },
16430
+ { name: "FIRSTNAME", label: "Owner First Name", searchable: true },
16339
16431
  { name: "STREET", label: "Situs Street Name", searchable: true },
16340
16432
  { name: "STREETNUM", label: "Situs Street Number", searchable: false },
16341
16433
  { name: "CITY", label: "Situs City", searchable: true },
@@ -16364,7 +16456,7 @@ var nevada_default = {
16364
16456
  url: "https://explore-washoe.opendata.arcgis.com/",
16365
16457
  email: null
16366
16458
  },
16367
- notes: "71 fields confirmed including OBJECTID, APN, REGION, PIN, RECMAP, BOOK, PAGE, BLOCK, PARCEL, SUBNAME, TOWNSHIP, RANGE, SECTION_, FLOOR, MAPLINK, FLR, Shape, Shape.STArea(), STREETNUM, STREETDIR, STREET, CITY, SITUSZIP, FIRSTNAME, LASTNAME, MAILING1, MAILING2, MAILCITY, MAILSTATE, MAILZIP, LAND_USE, Zoning, WATER, SEWER, ACREAGE, TAXDIST, BEDROOMS, BATHS, YEARBLT, LANDASS, BUILDASS, TOTALASS, LANDAPR, BUILDAPR, TOTALAPR, DEPRECIATION, SALEDATE, SALEPRICE, OCCUPANCY, PROPCODE, TAXYEAR, STORIES, TOWNHOUSE, SQFEET, UNITS, AVCONSYEAR, BUILDINGTYPE, NBHD, SPECPROPCODE, QC, LAND_BASE, NBC, Fireplaces, HeatType, SecHeatType, Agency, AG_ABBR, FullAddress, ZoningWithDetail, Zoning_GIS, STRAP. Owner name available as FIRSTNAME + LASTNAME (split fields). Live query confirmed: APN 134087 returns 'MIEKO E SPAHR' in RENO 89503. maxRecordCount=1000. Covers Reno, Sparks, and unincorporated Washoe County (pop. 480,000). Note: owner name is public per Nevada law (unlike Clark County which also has a public layer but no owner). Current version 11.4."
16459
+ notes: "71 fields confirmed including OBJECTID, APN, REGION, PIN, RECMAP, BOOK, PAGE, BLOCK, PARCEL, SUBNAME, TOWNSHIP, RANGE, SECTION_, FLOOR, MAPLINK, FLR, Shape, Shape.STArea(), STREETNUM, STREETDIR, STREET, CITY, SITUSZIP, FIRSTNAME, LASTNAME, MAILING1, MAILING2, MAILCITY, MAILSTATE, MAILZIP, LAND_USE, Zoning, WATER, SEWER, ACREAGE, TAXDIST, BEDROOMS, BATHS, YEARBLT, LANDASS, BUILDASS, TOTALASS, LANDAPR, BUILDAPR, TOTALAPR, DEPRECIATION, SALEDATE, SALEPRICE, OCCUPANCY, PROPCODE, TAXYEAR, STORIES, TOWNHOUSE, SQFEET, UNITS, AVCONSYEAR, BUILDINGTYPE, NBHD, SPECPROPCODE, QC, LAND_BASE, NBC, Fireplaces, HeatType, SecHeatType, Agency, AG_ABBR, FullAddress, ZoningWithDetail, Zoning_GIS, STRAP. Owner name available as FIRSTNAME + LASTNAME (split fields). 2026-10-03: LASTNAME is now declared before FIRSTNAME, because the site's owner-field classifier and the stdio MCP server both search the FIRST owner-matching field, so a surname search was running against first names (FIRSTNAME holds values like EDWARD M III; LASTNAME holds SMITH). The sampleQuery already searched LASTNAME and still returns rows. Live query confirmed: APN 134087 returns 'MIEKO E SPAHR' in RENO 89503. maxRecordCount=1000. Covers Reno, Sparks, and unincorporated Washoe County (pop. 480,000). Note: owner name is public per Nevada law (unlike Clark County which also has a public layer but no owner). Current version 11.4."
16368
16460
  }
16369
16461
  ]
16370
16462
  };
@@ -16554,25 +16646,25 @@ var new_jersey_default = {
16554
16646
  hasPublicRest: true,
16555
16647
  endpoints: [
16556
16648
  {
16557
- url: "https://services9.arcgis.com/GCI7uwdn5grdMNX1/arcgis/rest/services/GEO_MC_Parcels/FeatureServer/9",
16649
+ url: "https://services1.arcgis.com/PsDtSYIjNsyfjwcX/arcgis/rest/services/Monmouth_County_Parcels/FeatureServer/0",
16558
16650
  serviceType: "FeatureServer",
16559
- layerIndex: 9,
16560
- layerName: "GEO.MC.Parcels",
16651
+ layerIndex: 0,
16652
+ layerName: "Parcels",
16561
16653
  supportsQuery: true,
16562
- corsEnabled: null,
16654
+ corsEnabled: true,
16563
16655
  searchFields: [
16564
16656
  {
16565
- name: "PAMS_PIN",
16657
+ name: "PAMSPIN",
16566
16658
  label: "Property Account Management System PIN",
16567
16659
  searchable: true
16568
16660
  },
16569
16661
  {
16570
- name: "OwnersName",
16662
+ name: "Owner_Name",
16571
16663
  label: "Owner Name",
16572
16664
  searchable: true
16573
16665
  },
16574
16666
  {
16575
- name: "PropertyLocation",
16667
+ name: "Location",
16576
16668
  label: "Property Location / Address",
16577
16669
  searchable: true
16578
16670
  },
@@ -16602,61 +16694,61 @@ var new_jersey_default = {
16602
16694
  searchable: true
16603
16695
  },
16604
16696
  {
16605
- name: "PropertyClass",
16697
+ name: "Class",
16606
16698
  label: "Property Class Code",
16607
16699
  searchable: false
16608
16700
  },
16609
16701
  {
16610
- name: "Acreage",
16611
- label: "Acreage",
16612
- searchable: false
16613
- },
16614
- {
16615
- name: "TotalAssmnt",
16616
- label: "Total Assessment",
16702
+ name: "Net_Value",
16703
+ label: "Net Taxable Value",
16617
16704
  searchable: false
16618
16705
  },
16619
16706
  {
16620
- name: "LandAssmnt",
16707
+ name: "Land_Value",
16621
16708
  label: "Land Assessment",
16622
16709
  searchable: false
16623
16710
  },
16624
16711
  {
16625
- name: "BuildingAssmnt",
16626
- label: "Building Assessment",
16712
+ name: "Impr_Value",
16713
+ label: "Improvement Assessment",
16627
16714
  searchable: false
16628
16715
  },
16629
16716
  {
16630
- name: "SaleDate",
16717
+ name: "Sale_Date",
16631
16718
  label: "Last Sale Date",
16632
16719
  searchable: false
16633
16720
  },
16634
16721
  {
16635
- name: "SalePrice",
16722
+ name: "Sale_Price",
16636
16723
  label: "Last Sale Price",
16637
16724
  searchable: false
16638
16725
  },
16639
16726
  {
16640
- name: "YrBuilt",
16727
+ name: "Year_Built",
16641
16728
  label: "Year Built",
16642
16729
  searchable: false
16643
16730
  },
16644
16731
  {
16645
- name: "Zone_",
16732
+ name: "Zone",
16646
16733
  label: "Zoning Code",
16647
16734
  searchable: false
16648
16735
  },
16649
16736
  {
16650
- name: "CityStateZip",
16737
+ name: "Owner_Street",
16738
+ label: "Owner Mailing Street",
16739
+ searchable: true
16740
+ },
16741
+ {
16742
+ name: "Owner_Csz",
16651
16743
  label: "Owner Mailing City/State/ZIP",
16652
16744
  searchable: false
16653
16745
  }
16654
16746
  ],
16655
- sampleQuery: "https://services9.arcgis.com/GCI7uwdn5grdMNX1/arcgis/rest/services/GEO_MC_Parcels/FeatureServer/9/query?where=UPPER(OwnersName)+LIKE+UPPER('%25SMITH%25')&outFields=PAMS_PIN,OwnersName,PropertyLocation,MUN_NAME,TotalAssmnt,SalePrice&returnGeometry=false&f=json&resultRecordCount=10",
16747
+ sampleQuery: "https://services1.arcgis.com/PsDtSYIjNsyfjwcX/arcgis/rest/services/Monmouth_County_Parcels/FeatureServer/0/query?where=UPPER(Owner_Name)+LIKE+UPPER('%25SMITH%25')&outFields=PAMSPIN,Owner_Name,Location,MUN_NAME,Net_Value,Sale_Price&returnGeometry=false&f=json&resultRecordCount=10",
16656
16748
  license: "public",
16657
16749
  licenseUrl: "https://gis-monmouthnj.opendata.arcgis.com/",
16658
16750
  status: "live",
16659
- lastVerified: "2026-05-15",
16751
+ lastVerified: "2026-10-03",
16660
16752
  verifiedBy: "manual"
16661
16753
  }
16662
16754
  ],
@@ -16665,7 +16757,7 @@ var new_jersey_default = {
16665
16757
  url: "https://gis-monmouthnj.opendata.arcgis.com/",
16666
16758
  email: null
16667
16759
  },
16668
- notes: "Monmouth County (pop. 643,000; Jersey Shore and inland suburbs) uses a county-direct FeatureServer separate from the NJOGIS statewide layer. The service at services9.arcgis.com (GEO_MC_Parcels, layer 9) reflects Monmouth County GIS's own MOD-IV data pull. PAMS_PIN is the statewide identifier, structured as county code + municipality code + block + lot + qualifier code (QCODE). OwnersName is public and queryable. Assessment fields include TotalAssmnt, LandAssmnt, BuildingAssmnt, SaleDate, SalePrice, and YrBuilt. CityStateZip is a single concatenated field for owner mailing address. The MUN and MUN_NAME fields identify the 53-municipality breakdown within the county (e.g., Freehold Borough, Long Branch, Red Bank, Asbury Park). Note: NJ Daniel's Law (P.L. 2021, c.371) allows protected individuals -- judges, law enforcement, domestic-violence victims -- to suppress their address from public records; the county layer may return null or redacted values for mailing addresses on affected parcels. For unredacted deed and transfer records, the Monmouth County Clerk's office portal at mcgifts.co.monmouth.nj.us is the authoritative source."
16760
+ notes: "Monmouth County (pop. 643,000; Jersey Shore and inland suburbs) uses a county-direct FeatureServer separate from the NJOGIS statewide layer, whose OWNER_NAME is blank for every Monmouth row. As of 2026-10-03 the county publishes from a new ArcGIS Online org (MonmouthNJGIS): Monmouth_County_Parcels, layer 0 (Parcels) at services1.arcgis.com, item modified 2026-09-25, CORS open, about 265,000 rows. The older services9.arcgis.com GEO_MC_Parcels service now answers Invalid URL and is gone from that org's service list, and the services6.arcgis.com monmouth_county_nj_parcels copy the item search still lists is unshared (Token Required); neither should be re-registered. The layer is Monmouth County GIS's own MOD-IV data pull. PAMSPIN is the statewide identifier, structured as county code + municipality code + block + lot + qualifier code (QCODE). Owner_Name is public and queryable. Assessment fields include Net_Value, Land_Value, Impr_Value, Sale_Date, Sale_Price, and Year_Built; every one of them is a STRING on this layer (Sale_Date reads like 12/09/99), so numeric compares and sorts will not behave. Owner mailing address is split into Owner_Street and Owner_Csz, a single padded city/state/ZIP string; the separate City/State/Zip columns appear to hold a situs postal city and are not declared as mailing fields. The old Acreage field has no reliable twin (Lot_Size read 0.0000 on a sampled row) and was dropped. The layer carries Duplicate and Error flag columns and has more rows than the state composite (265,259 vs 249,796), so duplicate parcels exist and pickers should expect tied rows. The MUN and MUN_NAME fields identify the 53-municipality breakdown within the county (e.g., Freehold Borough, Long Branch, Red Bank, Asbury Park). Note: NJ Daniel's Law (P.L. 2021, c.371) allows protected individuals -- judges, law enforcement, domestic-violence victims -- to suppress their address from public records; the county layer may return null or redacted values for mailing addresses on affected parcels. For unredacted deed and transfer records, the Monmouth County Clerk's office portal at mcgifts.co.monmouth.nj.us is the authoritative source."
16669
16761
  },
16670
16762
  {
16671
16763
  id: "nj-ocean",
@@ -19367,7 +19459,7 @@ var oregon_default = {
19367
19459
  stateSlug: "oregon",
19368
19460
  stateName: "Oregon",
19369
19461
  stateAbbrev: "OR",
19370
- lastUpdated: "2026-09-26",
19462
+ lastUpdated: "2026-10-03",
19371
19463
  counties: [
19372
19464
  {
19373
19465
  id: "or-multnomah",
@@ -19615,6 +19707,51 @@ var oregon_default = {
19615
19707
  email: "gisquestions@clackamas.us"
19616
19708
  },
19617
19709
  notes: "No public REST parcel layer with owner names was found for Clackamas County (county seat Oregon City) as of 2026-09-26. The county states that it does not publish property owner names online and directs owner-information requests to Assessment and Taxation, and its GIS shapefile downloads require accepting a data licensing agreement. No county-hosted ArcGIS REST catalog was found; the public tools, CMap and AscendWeb, are interactive viewers. Two statewide layers cover the county but neither can serve an owner search: the Oregon Department of Forestry's taxlot layer named 'Clackamas County' declares owner fields but has query disabled, and the Oregon Department of Transportation's taxlot layer is queryable but carries only map and taxlot numbers. Metro's regional RLIS 'Taxlots (Public)' dataset, per its listing, excludes ownership."
19710
+ },
19711
+ {
19712
+ id: "or-malheur",
19713
+ state: "OR",
19714
+ stateName: "Oregon",
19715
+ stateSlug: "oregon",
19716
+ county: "Malheur",
19717
+ countySlug: "malheur-county",
19718
+ countyFips: "41045",
19719
+ hasPublicRest: true,
19720
+ endpoints: [
19721
+ {
19722
+ url: "https://services5.arcgis.com/ZfBm5CKxbEBYLP3J/arcgis/rest/services/County_GIS_Portal_WFL1/FeatureServer/16",
19723
+ serviceType: "FeatureServer",
19724
+ layerIndex: 16,
19725
+ layerName: "TL Jun2026",
19726
+ supportsQuery: true,
19727
+ corsEnabled: true,
19728
+ searchFields: [
19729
+ { name: "OWNERSNAME", label: "Owner Name", searchable: true },
19730
+ { name: "MapTaxlot", label: "Map and Taxlot ID", searchable: true },
19731
+ { name: "Taxlot", label: "Taxlot", searchable: false },
19732
+ { name: "SITUSADD", label: "Site Address", searchable: true },
19733
+ { name: "CITY", label: "Site City", searchable: true },
19734
+ { name: "ADD1", label: "Owner Mailing Address Line 1", searchable: true },
19735
+ { name: "ADD2", label: "Owner Mailing Address Line 2", searchable: false },
19736
+ { name: "CITYSTATE", label: "Owner Mailing City and State", searchable: true },
19737
+ { name: "ZIP", label: "Owner Mailing ZIP", searchable: false },
19738
+ { name: "ZONING", label: "Zoning", searchable: false },
19739
+ { name: "TOTACRE", label: "Total Acres", searchable: false }
19740
+ ],
19741
+ sampleQuery: "https://services5.arcgis.com/ZfBm5CKxbEBYLP3J/arcgis/rest/services/County_GIS_Portal_WFL1/FeatureServer/16/query?where=UPPER(OWNERSNAME)%20LIKE%20'SMITH%25'&outFields=MapTaxlot,OWNERSNAME,ADD1,CITYSTATE,SITUSADD,CITY&returnGeometry=false&resultRecordCount=10&f=json",
19742
+ license: "unknown",
19743
+ licenseUrl: "https://www.malheurco.org/gis/",
19744
+ status: "live",
19745
+ lastVerified: "2026-10-03",
19746
+ verifiedBy: "manual"
19747
+ }
19748
+ ],
19749
+ contact: {
19750
+ department: "Malheur County GIS (GIS Specialist), 251 B St W #2, Vale, OR 97918, (541) 473-5574",
19751
+ url: "https://www.malheurco.org/gis/",
19752
+ email: null
19753
+ },
19754
+ notes: "Malheur County, Oregon (county seat Vale) publishes its tax lots as a layer of the County_GIS_Portal_WFL1 FeatureServer, the data source of the county's public Malheur County Tax Lot Map experience (linked from malheurco.org/gis). 20,570 features as of 2026-10-03. The owner is OWNERSNAME, the parcel id MapTaxlot (for example 15S47E28B04702), the site address SITUSADD with CITY, and the owner mailing address ADD1/ADD2/CITYSTATE/ZIP. SITUSADD is sometimes a bare zero and ADD1 is often null. MAINTENANCE QUIRK: the layer name and index are month-stamped (currently layer 16, 'TL Jun2026'; the siblings are 'NonTL Jun2026' at 17 and Zoning_2026 at 25) and the county republishes monthly, so the name or index can change. When the liveness probe flags this record, re-resolve it: list the FeatureServer's layers, pick the one whose name starts with 'TL ' and which carries an OWNERSNAME field, then update layerIndex, layerName and the url. Do not hard-code 16 forever. Named outFields are accepted. CORS answers Access-Control-Allow-Origin *. The layer states no license; the county GIS page links a Data Licensing Agreement for bulk data. The statewide ODF layer for Malheur has an owner line but query disabled, and Malheur is not in the OWRD layer, so there is no usable fallback. Verified live 2026-10-03: owner SMITH returned rows (first owner SMITH, JAMIE LEE, 15S47E28B04702, Ontario)."
19618
19755
  }
19619
19756
  ]
19620
19757
  };
@@ -19965,7 +20102,7 @@ var south_carolina_default = {
19965
20102
  url: "https://www.gcgis.org/",
19966
20103
  email: "gis@greenvillecounty.org"
19967
20104
  },
19968
- notes: `MARKED UNREACHABLE 2026-08-29 after 25 days down (297 consecutive liveness failures since 2026-08-04). The registered service answers verbatim "Service GreenvilleJS/Map_Layers_JS/MapServer not started"; the county's own iMAP service (imap/iMAP/MapServer) is also not started; the GreenvilleJS and imap folders list no services; the one visible service (GCGIA/Greenville_Base, 61 layers) has no parcel layer; ArcGIS Hub lists no county-owned parcel feature service. The county has taken its map services down and nothing replaces them yet. Liveness keeps probing; flip back to live when it recovers. Owner search remains available at the county's non-GIS Real Property Search. Prior 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.`
20105
+ notes: `RECHECKED 2026-10-03, STILL UNREACHABLE, now for a structural reason. The GreenvilleJS folder has been deleted, not just stopped: the registered layer now answers Service GreenvilleJS/Map_Layers_JS/MapServer not found (it said not started on 08-29) and the folder itself returns Folder not found. The services root (www.gcgis.org/arcgis/rest/services) lists only a GVL_COMPOSITE_LOC geocoder and a Utilities folder of geoprocessing, geometry and print tools; GCGIA/Greenville_Base is gone too. The county rebuilt its viewer (www.gcgis.org/apps/greenvillenj/) on a private, undocumented ASP.NET web API (apps/GreenvilleNJ_webapi/asp/webAPI) that accepts POST only and is not an ArcGIS REST service the atlas can register. Candidates checked and rejected: the Greenville-Pickens transportation study's TaxParcel02172021_gdb FeatureServer (countywide with the county schema and owner search, but a February 2021 snapshot, too stale for mailed notices); the GreenvilleCountyBaseData FeatureServer by mwassonfigis (current schema but only about 33,000 of about 228,000 parcels, a partial extract); the City of Greenville Parcels with Ownership layer on citygis.greenvillesc.gov (city jurisdiction only); and a utility.arcgis.com proxy of the county's GCGIA feature service (Item does not exist or is inaccessible). No South Carolina statewide owner-bearing parcel layer was found. Status stays unreachable; recheck the services root periodically for a new parcel service and re-register from it. Earlier history: MARKED UNREACHABLE 2026-08-29 after 25 days down (297 consecutive liveness failures since 2026-08-04). The registered service answers verbatim "Service GreenvilleJS/Map_Layers_JS/MapServer not started"; the county's own iMAP service (imap/iMAP/MapServer) is also not started; the GreenvilleJS and imap folders list no services; the one visible service (GCGIA/Greenville_Base, 61 layers) has no parcel layer; ArcGIS Hub lists no county-owned parcel feature service. The county has taken its map services down and nothing replaces them yet. Liveness keeps probing; flip back to live when it recovers. Owner search remains available at the county's non-GIS Real Property Search. Prior 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.`
19969
20106
  },
19970
20107
  {
19971
20108
  id: "sc-charleston",
@@ -21013,7 +21150,7 @@ var washington_default = {
21013
21150
  stateSlug: "washington",
21014
21151
  stateName: "Washington",
21015
21152
  stateAbbrev: "WA",
21016
- lastUpdated: "2026-06-06",
21153
+ lastUpdated: "2026-10-03",
21017
21154
  counties: [
21018
21155
  {
21019
21156
  id: "wa-king",
@@ -21189,6 +21326,52 @@ var washington_default = {
21189
21326
  email: null
21190
21327
  },
21191
21328
  notes: "45 fields confirmed including PARCEL_NO, ADDRESS1, ADDRESS2, CITY, STATE, ZIP, COUNTRY, SITUS_STRE, SITUS_CITY, SITUS_ZIP, SD_NAME, LEGAL_DESC, TOTAL_ACRES, BLDG_VALUE, LAND_VALUE, TOTAL_VALUE, ANNUAL_TAX, STATUS_IND, PROP_SUBTY, O_NEIGHBOR, PROP_TYPE, INSPCT_CYC, REGION, MULT_PARCL, SALE_DATE, SALE_PRICE, SALE_VRFY, USE_CODE, SIGMA_YEAR, TAXABLE, EXEMPT_TY, LOCAL_IND, TCA, CURR_USE, INCORP, YEAR_BUILT, EFF_YR_BUI, RES_QUAL, RES_COND, REC_VOLPAG, SECTTIE, PARENT, MapSource, GlobalID. Live query confirmed: PARCEL_NO LIKE '%21820%' returns Thurston County parcels with mailing address and value data. NOTE: Owner name is NOT on this public layer per WA State law; ADDRESS1/2 is the mailing address (generally owner's address). Data from ASCEND and SIGMA databases. Item ID: 4ca0091703b345f8a72f68a4d173d9be. maxRecordCount=1000."
21329
+ },
21330
+ {
21331
+ id: "wa-island",
21332
+ state: "WA",
21333
+ stateName: "Washington",
21334
+ stateSlug: "washington",
21335
+ county: "Island",
21336
+ countySlug: "island-county",
21337
+ countyFips: "53029",
21338
+ hasPublicRest: true,
21339
+ endpoints: [
21340
+ {
21341
+ url: "https://maps.islandcountywa.gov/arcgis/rest/services/Geocortex/Base/MapServer/0",
21342
+ serviceType: "MapServer",
21343
+ layerIndex: 0,
21344
+ layerName: "Parcels",
21345
+ supportsQuery: true,
21346
+ corsEnabled: true,
21347
+ searchFields: [
21348
+ { name: "taxpayer", label: "Owner Name (Taxpayer)", searchable: true },
21349
+ { name: "ParcelNo", label: "Parcel ID", searchable: true },
21350
+ { name: "physical_addr", label: "Site Address", searchable: true },
21351
+ { name: "physical_addr_city", label: "Site City", searchable: true },
21352
+ { name: "physical_addr_zip", label: "Site ZIP", searchable: false },
21353
+ { name: "mailing_addr1", label: "Owner Mailing Address Line 1", searchable: true },
21354
+ { name: "mailing_addr2", label: "Owner Mailing Address Line 2", searchable: false },
21355
+ { name: "mailing_addr_city", label: "Owner Mailing City", searchable: true },
21356
+ { name: "mailing_addr_state", label: "Owner Mailing State", searchable: false },
21357
+ { name: "mailing_addr_zip", label: "Owner Mailing ZIP", searchable: false },
21358
+ { name: "property_land_use_code", label: "Land Use Code", searchable: false },
21359
+ { name: "legal_acreage", label: "Legal Acreage", searchable: false }
21360
+ ],
21361
+ sampleQuery: "https://maps.islandcountywa.gov/arcgis/rest/services/Geocortex/Base/MapServer/0/query?where=UPPER(taxpayer)%20LIKE%20'SMITH%25'&outFields=ParcelNo,taxpayer,physical_addr,mailing_addr1&returnGeometry=false&resultRecordCount=10&f=json",
21362
+ license: "unknown",
21363
+ licenseUrl: "https://maps.islandcountywa.gov",
21364
+ status: "live",
21365
+ lastVerified: "2026-10-03",
21366
+ verifiedBy: "manual"
21367
+ }
21368
+ ],
21369
+ contact: {
21370
+ department: "Island County Assessor / GIS",
21371
+ url: "https://maps.islandcountywa.gov",
21372
+ email: null
21373
+ },
21374
+ notes: "Island County, Washington (county seat Coupeville) serves its parcels from the Assessor's own ArcGIS Server, joined to the PACS assessor data and exported nightly per the service description. The owner field is called taxpayer, the parcel id ParcelNo (for example R03213-384-4950), the site address physical_addr with its city, state and ZIP parts, and the owner mailing address mailing_addr1 to mailing_addr3 with city, state and ZIP. ParcelNo and taxpayer values carry trailing spaces, so trim on display, and some parcels (vacant land) have a blank physical_addr. Named outFields are accepted. CORS reflects the request Origin and sends Access-Control-Allow-Credentials true, so it is not a wildcard. maxRecordCount is 60000. The layer's copyright text reads DO NOT USE AS LEGAL DOCUMENT and no license is stated. Two sibling services carry the same data and serve as fallbacks: SmartGov/Parcels MapServer and Auditor/BaseMap MapServer layer 0. The contact URL is the county map server root, which answered HTTP 200 on 2026-10-03; no separate Assessor contact page was retrieved. Verified live 2026-10-03: owner SMITH returned rows (first owner SMITH, COLIN, R13334-372-1430)."
21192
21375
  }
21193
21376
  ]
21194
21377
  };