URBANKIT/STUDIO
    Sign inFREE TOOLS · NO SIGNUP
    URBANKIT/STUDIO · EST. 2026 · ONLINEFREE TOOLS · NO SIGNUP
    ATLAS · STATE·NC

    North Carolina county
    parcel REST APIs.

    100 counties indexed. ArcGIS FeatureServer and MapServer URLs, with supported search fields per layer.

    Endpoint URLs · 100 counties
    • Wake County, NChttps://maps.wake.gov/arcgis/rest/services/Property/Parcels/MapServer/0
    • Mecklenburg County, NChttps://gis.charlottenc.gov/arcgis/rest/services/CountyData/Parcels/MapServer/0
    • Forsyth County, NChttps://services.nconemap.gov/secure/rest/services/NC1Map_Parcels/MapServer/1
    • Guilford County, NChttps://services.nconemap.gov/secure/rest/services/NC1Map_Parcels/MapServer/1
    • Durham County, NChttps://webgis.durhamnc.gov/server/rest/services/PublicServices/Property/MapServer/4
    • Cumberland County, NChttps://services.nconemap.gov/secure/rest/services/NC1Map_Parcels/MapServer/1
    • Buncombe County, NChttps://gis.buncombecounty.org/arcgis/rest/services/property_bc_dis/MapServer/1
    • Montgomery County, NChttps://services.nconemap.gov/secure/rest/services/NC1Map_Parcels/MapServer/1
    • Gaston County, NChttps://gis.gastoncountync.gov/publicgis/rest/services/PublicGIS/Parcels/MapServer/11
    • New Hanover County, NChttps://services.nconemap.gov/secure/rest/services/NC1Map_Parcels/MapServer/1
    • Iredell County, NChttps://services.nconemap.gov/secure/rest/services/NC1Map_Parcels/MapServer/1
    • Union County, NChttps://services.nconemap.gov/secure/rest/services/NC1Map_Parcels/MapServer/1

    + 88 more counties in the table below.

    Looking for one property instead of an endpoint? Type a North Carolina street address into Find My Parcel Number and it returns the parcel number from the county's own records.

    Counties indexed in this state, with endpoint counts, supported fields, and the registry's listing status. The registry listing is a curation record, not a live check — see the status page for what the liveness probe last observed.
    CountyEndpointsSearchable fieldsRegistry listingAction
    Alamance County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Alexander County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Alleghany County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Anson County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Ashe County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Avery County1Parcel Number · Owner Name LISTED LIVEOpen
    Beaufort County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Bertie County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Bladen County1Parcel Number · Owner Name LISTED LIVEOpen
    Brunswick County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Buncombe County1PIN Number (Parcel ID) · PIN · Owner Name LISTED LIVEOpen
    Burke County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Cabarrus County1Parcel Number · Owner Name LISTED LIVEOpen
    Caldwell County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Camden County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Carteret County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Caswell County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Catawba County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Chatham County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Cherokee County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Chowan County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Clay County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Cleveland County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Columbus County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Craven County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Cumberland County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Currituck County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Dare County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Davidson County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Davie County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Duplin County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Durham County1Parcel Identification Number · Real Estate ID · Property Owner Name +1 LISTED LIVEOpen
    Edgecombe County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Forsyth County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Franklin County1Parcel Number · Owner Name LISTED LIVEOpen
    Gaston County1Parcel Identification Number (PIN) · Owner Name (current) · Situs Address +3 LISTED LIVEOpen
    Gates County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Graham County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Granville County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Greene County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Guilford County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Halifax County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Harnett County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Haywood County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Henderson County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Hertford County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Hoke County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Hyde County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Iredell County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Jackson County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Johnston County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Jones County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Lee County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Lenoir County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Lincoln County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Macon County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Madison County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Martin County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    McDowell County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Mecklenburg County1NC Parcel Identification Number · Parcel ID LISTED LIVEOpen
    Mitchell County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Montgomery County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Moore County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Nash County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    New Hanover County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Northampton County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Onslow County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Orange County1Parcel Number · Owner Name LISTED LIVEOpen
    Pamlico County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Pasquotank County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Pender County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Perquimans County1Parcel Number · Owner Name LISTED LIVEOpen
    Person County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Pitt County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Polk County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Randolph County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Richmond County1Parcel Number · Owner Name LISTED LIVEOpen
    Robeson County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Rockingham County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Rowan County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Rutherford County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Sampson County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Scotland County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Stanly County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Stokes County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Surry County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Swain County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Transylvania County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Tyrrell County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Union County1Parcel Number · Owner Name · Site Address +1 LISTED LIVEOpen
    Vance County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Wake County1Parcel Identification Number · Real Estate ID · Owner Name +2 LISTED LIVEOpen
    Warren County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Washington County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Watauga County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Wayne County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Wilkes County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Wilson County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Yadkin County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    Yancey County1Parcel Number · Owner Name · Site Address LISTED LIVEOpen
    County index · 100 counties

    All 100 North Carolina counties

    Each county links to its atlas entry, endpoint URL, searchable fields, and a sample query where one is published.

    About North Carolina county parcel data

    State overview

    North Carolina has the strongest statewide GIS coordination of any state in the atlas. The NC Geographic Information Coordinating Council (GICC) operates NC OneMap, which aggregates county-submitted parcel data into a single public REST endpoint, NC1Map_Parcels. The atlas carries all 100 of North Carolina's counties. Of those, 93 are served from this statewide layer and 7 from the county's own service: Buncombe, Durham, Gaston, Hoke, Mecklenburg, Swain and Wake. Hoke and Swain are not on the statewide layer because it carries no owner or address values for Hoke and no parcel numbers for Swain; each is registered on its own county's layer (since atlas 0.6.40). The NC1Map parcel layer uses a standardized schema with consistent field names across all participating counties, which makes multi-county queries practical in a way that is rare at this scale.

    Regional coordination

    NC OneMap is managed by the NC GICC under the Office of the State Chief Information Officer. The NC1Map_Parcels layer at services.nconemap.gov serves parcel polygons and attributes for all counties that submit data to the statewide system. Participating counties share a common schema: parno (parcel number), ownname, siteadd, scity, cntyfips (3-digit county FIPS as a string), parval, landval, improvval, and 60+ additional fields. County FIPS is the filter key for single-county queries. Wake County publishes separately via maps.wake.gov with a distinct schema, and Durham via webgis.durhamnc.gov. Mecklenburg (Charlotte) exposes only geometry and NC_PIN on its own public layer. Its owner names are on the statewide layer, under cntyname = 'Mecklenburg'.

    Common data quirks

    NC1Map requires cntyfips as a filter parameter

    The NC1Map_Parcels/MapServer/1 endpoint covers the entire state in a single layer. Without a county filter, a query against it will scan all submitted counties and return results from anywhere in North Carolina. The cntyfips field is a 3-digit zero-padded string (not an integer): Forsyth is '067', Guilford is '081', Cumberland is '051', Buncombe is '021'. To query a single county, always include cntyfips='067' (or equivalent) as the first WHERE clause predicate before the LIKE pattern on ownname. Omitting it is a query that will time out or return random-county records.

    Mecklenburg public REST layer does not expose owner names

    Mecklenburg County (Charlotte, pop. 1.2 million) is the most populous county in the atlas's NC set, but its public ArcGIS REST layer at gis.charlottenc.gov exposes only 13 fields: geometry, NC_PIN, PID, map book/page, and a few administrative flags. Owner name and address are not on this layer. The county's POLARIS system at polaris3g.mecklenburgcountync.gov provides owner-name lookups by NC_PIN but does not offer a public REST or JSON endpoint. NC OneMap's statewide layer does carry Mecklenburg's owner names, on 442,275 of its 442,287 Mecklenburg rows when measured on 2026-10-17.

    Durham uses semicolons to delimit co-owners

    Durham County's PROPERTY_OWNER field concatenates all co-owners with semicolons rather than splitting into OWNER1/OWNER2 fields (e.g., 'SMITH, CAROLYN D;SMITH, FRANK Q'). A LIKE query on PROPERTY_OWNER will match any record where any co-owner's name matches the pattern, which is usually the desired behavior. Durham's endpoint also exposes deed book, deed page, sale date, and sale price in the same layer, a richer attribute set than most NC counties provide publicly.

    Key counties

    Wake County

    Contains Raleigh, Cary, and Apex (pop. 1.1 million). Published via the county's own maps.wake.gov endpoint, not NC1Map. Uses PIN_NUM (10-digit) and REID (Real Estate ID) as dual identifiers. 435,382 polygon parcels. Owner query via UPPER(OWNER) LIKE pattern.

    Mecklenburg County

    Contains Charlotte (pop. 1.2 million). The county's public REST layer exposes NC_PIN and geometry only. For owner names, query NC OneMap's statewide layer with cntyname = 'Mecklenburg'.

    Forsyth County

    Contains Winston-Salem (pop. 385,000). Served via NC1Map statewide layer; filter cntyfips='067'. Full 60+ field schema including parval, landval, improvval, saledate, and legal description.

    Durham County

    Contains Durham city (pop. 330,000). Joint City/County GIS at webgis.durhamnc.gov. 75+ fields including TOTAL_PROP_VALUE, DEED_DATE, PKG_SALE_PRICE, and ZONING. Co-owner names are semicolon-delimited in the PROPERTY_OWNER field.

    Buncombe County

    Contains Asheville (pop. 275,000 county). Self-hosted at gis.buncombecounty.org via the property_bc_dis service. Owner field is lowercase 'owner'; pinnum is a 15-digit parcel identifier. Deed book/page and subdivision name are exposed.

    Common search patterns

    NC1Map multi-county owner query (Forsyth example): ?where=cntyfips='067'+AND+UPPER(ownname)+LIKE+UPPER('%25SMITH%25')&outFields=parno,ownname,siteadd,scity,parval,cntyfips&f=json. Wake County: ?where=UPPER(OWNER)+LIKE+UPPER('%25SMITH%25')&outFields=PIN_NUM,REID,OWNER,SITE_ADDRESS&f=json. Durham: ?where=UPPER(PROPERTY_OWNER)+LIKE+UPPER('%25SMITH%25')&outFields=PIN,PROPERTY_OWNER,LOCATION_ADDR,TOTAL_PROP_VALUE,DEED_DATE&f=json. All queries: append returnGeometry=false&resultRecordCount=10.

    Related articles

    Last updated 2026-10-18.

    Questions, with answers

    North Carolina parcel REST API, common questions

    Which North Carolina counties publish a public parcel ArcGIS REST API?

    100 North Carolina counties are indexed in the UrbanKit atlas with verified public REST endpoints: Wake, Mecklenburg, Forsyth, Guilford, Durham, Cumberland, Buncombe, Montgomery, Gaston, New Hanover, Iredell, Union, Onslow, Johnston, Brunswick, Alamance, Alexander, Alleghany, Anson, Ashe, Avery, Beaufort, Bertie, Bladen, Burke, Cabarrus, Caldwell, Camden, Carteret, Caswell, Catawba, Chatham, Cherokee, Chowan, Clay, Cleveland, Columbus, Craven, Currituck, Dare, Davidson, Davie, Duplin, Edgecombe, Franklin, Gates, Graham, Granville, Greene, Halifax, Harnett, Haywood, Henderson, Hertford, Hyde, Jackson, Jones, Lee, Lenoir, Lincoln, Macon, Madison, Martin, McDowell, Mitchell, Moore, Nash, Northampton, Orange, Pamlico, Pasquotank, Pender, Perquimans, Person, Pitt, Polk, Randolph, Richmond, Robeson, Rockingham, Rowan, Rutherford, Sampson, Scotland, Stanly, Stokes, Surry, Transylvania, Tyrrell, Vance, Warren, Washington, Watauga, Wayne, Wilkes, Wilson, Yadkin, Yancey, Hoke, and Swain. Wake, Forsyth, Guilford, Durham, Cumberland, Buncombe, Montgomery, Gaston, New Hanover, Iredell, Union, Onslow, Johnston, Brunswick, Alamance, Alexander, Alleghany, Anson, Ashe, Avery, Beaufort, Bertie, Bladen, Burke, Cabarrus, Caldwell, Camden, Carteret, Caswell, Catawba, Chatham, Cherokee, Chowan, Clay, Cleveland, Columbus, Craven, Currituck, Dare, Davidson, Davie, Duplin, Edgecombe, Franklin, Gates, Graham, Granville, Greene, Halifax, Harnett, Haywood, Henderson, Hertford, Hyde, Jackson, Jones, Lee, Lenoir, Lincoln, Macon, Madison, Martin, McDowell, Mitchell, Moore, Nash, Northampton, Orange, Pamlico, Pasquotank, Pender, Perquimans, Person, Pitt, Polk, Randolph, Richmond, Robeson, Rockingham, Rowan, Rutherford, Sampson, Scotland, Stanly, Stokes, Surry, Transylvania, Tyrrell, Vance, Warren, Washington, Watauga, Wayne, Wilkes, Wilson, Yadkin, Yancey, Hoke, and Swain expose owner-name search; Mecklenburg indexes by parcel ID and address only.

    How do I search North Carolina parcels by owner name?

    Wake, Forsyth, Guilford, Durham, Cumberland, Buncombe, Montgomery, Gaston, New Hanover, Iredell, Union, Onslow, Johnston, Brunswick, Alamance, Alexander, Alleghany, Anson, Ashe, Avery, Beaufort, Bertie, Bladen, Burke, Cabarrus, Caldwell, Camden, Carteret, Caswell, Catawba, Chatham, Cherokee, Chowan, Clay, Cleveland, Columbus, Craven, Currituck, Dare, Davidson, Davie, Duplin, Edgecombe, Franklin, Gates, Graham, Granville, Greene, Halifax, Harnett, Haywood, Henderson, Hertford, Hyde, Jackson, Jones, Lee, Lenoir, Lincoln, Macon, Madison, Martin, McDowell, Mitchell, Moore, Nash, Northampton, Orange, Pamlico, Pasquotank, Pender, Perquimans, Person, Pitt, Polk, Randolph, Richmond, Robeson, Rockingham, Rowan, Rutherford, Sampson, Scotland, Stanly, Stokes, Surry, Transylvania, Tyrrell, Vance, Warren, Washington, Watauga, Wayne, Wilkes, Wilson, Yadkin, Yancey, Hoke, and Swain expose an owner-name field on the public REST layer. Wake, for example, uses the OWNER field. A case-insensitive search is ?where=UPPER(OWNER)%20LIKE%20UPPER('%25SMITH%25')&outFields=*&f=json. Mecklenburg indexes by parcel ID and address only, so owner lookups there go through the county assessor or appraiser. Open a county's page here for its full field list and a ready-to-run sample query.

    What is the ArcGIS REST URL for parcels in Wake, North Carolina?

    Wake publishes parcels at https://maps.wake.gov/arcgis/rest/services/Property/Parcels/MapServer/0, a MapServer (layer 0). It indexes by Parcel Identification Number, Real Estate ID, Owner Name, and Site Address. Owner-name search: UPPER(OWNER) LIKE UPPER('%25SMITH%25').

    Do North Carolina parcel layers use ArcGIS FeatureServer or MapServer?

    Both. North Carolina uses a mix: Swain publish ArcGIS FeatureServer layers, while Wake, Mecklenburg, Forsyth, Guilford, Durham, Cumberland, Buncombe, Montgomery, Gaston, New Hanover, Iredell, Union, Onslow, Johnston, Brunswick, Alamance, Alexander, Alleghany, Anson, Ashe, Avery, Beaufort, Bertie, Bladen, Burke, Cabarrus, Caldwell, Camden, Carteret, Caswell, Catawba, Chatham, Cherokee, Chowan, Clay, Cleveland, Columbus, Craven, Currituck, Dare, Davidson, Davie, Duplin, Edgecombe, Franklin, Gates, Graham, Granville, Greene, Halifax, Harnett, Haywood, Henderson, Hertford, Hyde, Jackson, Jones, Lee, Lenoir, Lincoln, Macon, Madison, Martin, McDowell, Mitchell, Moore, Nash, Northampton, Orange, Pamlico, Pasquotank, Pender, Perquimans, Person, Pitt, Polk, Randolph, Richmond, Robeson, Rockingham, Rowan, Rutherford, Sampson, Scotland, Stanly, Stokes, Surry, Transylvania, Tyrrell, Vance, Warren, Washington, Watauga, Wayne, Wilkes, Wilson, Yadkin, Yancey, and Hoke use MapServer. Both support /query, so the same owner, parcel-ID, and address lookups work against either.

    Listing missing or moved? and include its current URL if you have it. A full four-shard sweep checks every endpoint every two hours, with degraded endpoints re-checked every 30 minutes.