[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"blog-\u002Fblog\u002Fdrone-surveying-plss-uav-legal-land-descriptions":3},{"id":4,"title":5,"body":6,"cover":794,"date":795,"description":796,"draft":797,"extension":798,"meta":799,"navigation":465,"path":802,"seo":803,"stem":804,"tags":805,"__hash__":813},"blog\u002Fblog\u002Fdrone-surveying-plss-uav-legal-land-descriptions.md","Drone Surveying and PLSS: Connecting UAV Data to Legal Land Descriptions",{"type":7,"value":8,"toc":786},"minimark",[9,13,16,19,24,33,36,65,68,72,75,78,99,102,110,114,117,122,125,130,133,138,141,149,152,157,160,165,168,172,180,183,232,235,427,435,438,723,727,730,738,741,749,752,758,761,764,768,771,782],[10,11,12],"p",{},"Drone flights produce coordinates. Land records need legal descriptions. Bridging that gap — accurately and at scale — is where drone surveying and PLSS intersect, and where a lot of time gets lost.",[10,14,15],{},"A UAV mission over an agricultural parcel in eastern Nebraska generates georeferenced orthophotos with precise GPS extents. The permit application, the title record, and the survey report all need those extents expressed as Section, Township, and Range. That translation step is not complicated in principle, but when you are processing dozens of flight boundaries or running automated pipelines, doing it by hand is not sustainable.",[10,17,18],{},"This guide walks through the drone surveying PLSS workflow: what the connection looks like in practice, how to structure the conversion, and how to automate it using the Township America API.",[20,21,23],"h2",{"id":22},"why-plss-still-anchors-modern-drone-surveys","Why PLSS Still Anchors Modern Drone Surveys",[10,25,26,27,32],{},"The ",[28,29,31],"a",{"href":30},"\u002Flearn\u002Fplss","Public Land Survey System"," divides roughly 1.5 billion acres across 30 states into a grid of Townships (6×6-mile blocks), Ranges (columns east or west of a principal meridian), and Sections (the 36 one-square-mile parcels within each Township). That grid has been the legal framework for land ownership, permits, and mineral rights in the American West since the 18th century. Technology has changed; the underlying records have not.",[10,34,35],{},"When a surveyor delivers a drone-derived topographic map, the client often needs the output tied to a legal description for:",[37,38,39,47,53,59],"ul",{},[40,41,42,46],"li",{},[43,44,45],"strong",{},"Permit filings"," — FAA Part 107 waivers and state environmental permits reference parcel boundaries by legal description",[40,48,49,52],{},[43,50,51],{},"Title and deed records"," — Property transactions require PLSS-anchored descriptions, not decimal degrees",[40,54,55,58],{},[43,56,57],{},"Construction and infrastructure"," — Pipeline right-of-way documents, utility easements, and agricultural leases all reference Section-Township-Range",[40,60,61,64],{},[43,62,63],{},"GIS integration"," — Overlaying UAV-derived layers against existing cadastral data requires consistent PLSS indexing",[10,66,67],{},"GPS coordinates describe where you were. Legal descriptions describe what you were on. For any work that feeds into a record, a permit, or a deed, you need both.",[20,69,71],{"id":70},"reverse-lookup-from-gps-flight-boundary-to-section-township-range","Reverse Lookup: From GPS Flight Boundary to Section-Township-Range",[10,73,74],{},"A drone flight boundary is typically a bounding box or polygon in WGS84 — four corners expressed as latitude\u002Flongitude pairs. Converting that to a PLSS legal description is a reverse lookup: you feed coordinates in and get a Section-Township-Range back.",[10,76,77],{},"For a single point this is straightforward. For a flight covering multiple sections, you need to decide what you are representing:",[79,80,81,87,93],"ol",{},[40,82,83,86],{},[43,84,85],{},"Centroid method"," — Run a reverse lookup on the centroid of the flight area. Gives you the primary Section for the survey area. Fast and appropriate when the flight is mostly within one Section.",[40,88,89,92],{},[43,90,91],{},"Bounding box corners"," — Run reverse lookups on all four corners, then list all unique Section-Township-Range combinations. Best for surveys that cross Section lines, which is common with 40+ acre parcels.",[40,94,95,98],{},[43,96,97],{},"Polygon intersection"," — Clip the flight polygon against the PLSS grid and enumerate all Sections with non-trivial overlap. The most precise method for regulatory filings.",[10,100,101],{},"For most field workflows, method 2 strikes the right balance. You capture all Sections in the survey area without needing a full spatial analysis pipeline.",[10,103,104,105,109],{},"A detailed walkthrough of the coordinate-to-legal-description process is covered in the ",[28,106,108],{"href":107},"\u002Fblog\u002Fgps-to-legal-description-reverse-plss-lookup","reverse PLSS lookup guide",", which is worth reading before building a production pipeline.",[20,111,113],{"id":112},"integrating-uav-outputs-with-plss-a-step-by-step-workflow","Integrating UAV Outputs with PLSS: A Step-by-Step Workflow",[10,115,116],{},"Here is the practical sequence for connecting drone survey data to legal land descriptions:",[10,118,119],{},[43,120,121],{},"Step 1 — Export flight extents from your photogrammetry software",[10,123,124],{},"Most UAV processing platforms (Pix4D, DroneDeploy, Agisoft Metashape) can export the survey boundary as a GeoJSON or KML file. Pull the bounding coordinates of your area of interest as decimal degrees in WGS84.",[10,126,127],{},[43,128,129],{},"Step 2 — Run a reverse PLSS lookup on each corner",[10,131,132],{},"For a rectangular flight area, that means four API calls — one per corner coordinate. Each call returns the Section, Township, Range, and principal meridian for that point.",[10,134,135],{},[43,136,137],{},"Step 3 — Deduplicate and format the legal description",[10,139,140],{},"Collect the unique Section-Township-Range combinations from your corner lookups. A flight that spans two Sections in the same Township might return:",[37,142,143,146],{},[40,144,145],{},"Section 22, T15N R2E, Sixth Principal Meridian",[40,147,148],{},"Section 23, T15N R2E, Sixth Principal Meridian",[10,150,151],{},"Format these as comma-separated or listed entries depending on the target document.",[10,153,154],{},[43,155,156],{},"Step 4 — Validate against cadastral data",[10,158,159],{},"Cross-check your output against the BLM Master Title Plats or state cadastral layers for the area. The Township America API returns sub-meter centroid accuracy, but ground-truthing against authoritative parcel data is good practice before filing.",[10,161,162],{},[43,163,164],{},"Step 5 — Embed in deliverables",[10,166,167],{},"Drop the legal descriptions into your survey report cover page, FAA waiver application, or project metadata file. GIS deliverables should include PLSS attributes in the feature layer schema.",[20,169,171],{"id":170},"using-the-township-america-api-for-automated-coordinate-conversion","Using the Township America API for Automated Coordinate Conversion",[10,173,174,175,179],{},"Manual lookups work for one-off surveys. Production workflows need automation. The ",[28,176,178],{"href":177},"\u002Fapi","Township America API"," accepts a latitude\u002Flongitude pair and returns a full PLSS legal description including Section, Township, Range, meridian, state, and aliquot parts.",[10,181,182],{},"A basic reverse lookup call:",[184,185,190],"pre",{"className":186,"code":187,"language":188,"meta":189,"style":189},"language-bash shiki shiki-themes material-theme-lighter github-light github-dark","curl \"https:\u002F\u002Fapi.townshipamerica.com\u002Fv1\u002Freverse?lat=40.4233&lng=-96.6621\" \\\n  -H \"Authorization: Bearer YOUR_API_KEY\"\n","bash","",[191,192,193,217],"code",{"__ignoreMap":189},[194,195,198,202,206,210,213],"span",{"class":196,"line":197},"line",1,[194,199,201],{"class":200},"sbgvK","curl",[194,203,205],{"class":204},"sjJ54"," \"",[194,207,209],{"class":208},"s_sjI","https:\u002F\u002Fapi.townshipamerica.com\u002Fv1\u002Freverse?lat=40.4233&lng=-96.6621",[194,211,212],{"class":204},"\"",[194,214,216],{"class":215},"s_hVV"," \\\n",[194,218,220,224,226,229],{"class":196,"line":219},2,[194,221,223],{"class":222},"stzsN","  -H",[194,225,205],{"class":204},[194,227,228],{"class":208},"Authorization: Bearer YOUR_API_KEY",[194,230,231],{"class":204},"\"\n",[10,233,234],{},"Response:",[184,236,240],{"className":237,"code":238,"language":239,"meta":189,"style":189},"language-json shiki shiki-themes material-theme-lighter github-light github-dark","{\n  \"section\": 22,\n  \"township\": \"15N\",\n  \"range\": \"2E\",\n  \"meridian\": \"Sixth Principal\",\n  \"state\": \"NE\",\n  \"legal_description\": \"Sec 22 T15N R2E Sixth Principal Meridian, NE\",\n  \"centroid\": { \"lat\": 40.4192, \"lng\": -96.6578 }\n}\n","json",[191,241,242,248,270,291,312,333,354,375,421],{"__ignoreMap":189},[194,243,244],{"class":196,"line":197},[194,245,247],{"class":246},"sP7_E","{\n",[194,249,250,254,258,260,263,267],{"class":196,"line":219},[194,251,253],{"class":252},"s39Yj","  \"",[194,255,257],{"class":256},"sseR_","section",[194,259,212],{"class":252},[194,261,262],{"class":246},":",[194,264,266],{"class":265},"srdBf"," 22",[194,268,269],{"class":246},",\n",[194,271,273,275,278,280,282,284,287,289],{"class":196,"line":272},3,[194,274,253],{"class":252},[194,276,277],{"class":256},"township",[194,279,212],{"class":252},[194,281,262],{"class":246},[194,283,205],{"class":204},[194,285,286],{"class":208},"15N",[194,288,212],{"class":204},[194,290,269],{"class":246},[194,292,294,296,299,301,303,305,308,310],{"class":196,"line":293},4,[194,295,253],{"class":252},[194,297,298],{"class":256},"range",[194,300,212],{"class":252},[194,302,262],{"class":246},[194,304,205],{"class":204},[194,306,307],{"class":208},"2E",[194,309,212],{"class":204},[194,311,269],{"class":246},[194,313,315,317,320,322,324,326,329,331],{"class":196,"line":314},5,[194,316,253],{"class":252},[194,318,319],{"class":256},"meridian",[194,321,212],{"class":252},[194,323,262],{"class":246},[194,325,205],{"class":204},[194,327,328],{"class":208},"Sixth Principal",[194,330,212],{"class":204},[194,332,269],{"class":246},[194,334,336,338,341,343,345,347,350,352],{"class":196,"line":335},6,[194,337,253],{"class":252},[194,339,340],{"class":256},"state",[194,342,212],{"class":252},[194,344,262],{"class":246},[194,346,205],{"class":204},[194,348,349],{"class":208},"NE",[194,351,212],{"class":204},[194,353,269],{"class":246},[194,355,357,359,362,364,366,368,371,373],{"class":196,"line":356},7,[194,358,253],{"class":252},[194,360,361],{"class":256},"legal_description",[194,363,212],{"class":252},[194,365,262],{"class":246},[194,367,205],{"class":204},[194,369,370],{"class":208},"Sec 22 T15N R2E Sixth Principal Meridian, NE",[194,372,212],{"class":204},[194,374,269],{"class":246},[194,376,378,380,383,385,387,390,392,396,398,400,403,406,408,411,413,415,418],{"class":196,"line":377},8,[194,379,253],{"class":252},[194,381,382],{"class":256},"centroid",[194,384,212],{"class":252},[194,386,262],{"class":246},[194,388,389],{"class":246}," {",[194,391,205],{"class":252},[194,393,395],{"class":394},"sZMiF","lat",[194,397,212],{"class":252},[194,399,262],{"class":246},[194,401,402],{"class":265}," 40.4192",[194,404,405],{"class":246},",",[194,407,205],{"class":252},[194,409,410],{"class":394},"lng",[194,412,212],{"class":252},[194,414,262],{"class":246},[194,416,417],{"class":265}," -96.6578",[194,419,420],{"class":246}," }\n",[194,422,424],{"class":196,"line":423},9,[194,425,426],{"class":246},"}\n",[10,428,429,430,434],{},"For bulk processing — multiple flight boundaries or an entire project's worth of survey polygons — the batch endpoint accepts up to 1,000 coordinate pairs in a single request. The ",[28,431,433],{"href":432},"\u002Fguides\u002Fapi-integration","API integration guide"," covers authentication, rate limits, error handling, and output formats including GeoJSON, KML, and CSV.",[10,436,437],{},"The Python SDK handles this cleanly in post-processing scripts:",[184,439,443],{"className":440,"code":441,"language":442,"meta":189,"style":189},"language-python shiki shiki-themes material-theme-lighter github-light github-dark","from townshipamerica import Client\n\nclient = Client(api_key=\"YOUR_API_KEY\")\n\n# Four corners of a drone survey boundary\ncorners = [\n    (40.4291, -96.6701),\n    (40.4291, -96.6541),\n    (40.4175, -96.6541),\n    (40.4175, -96.6701),\n]\n\nsections = set()\nfor lat, lng in corners:\n    result = client.reverse(lat=lat, lng=lng)\n    sections.add(result[\"legal_description\"])\n\nprint(\"Survey covers:\", sections)\n","python",[191,444,445,461,467,499,503,509,519,538,553,568,583,589,594,608,631,667,695,700],{"__ignoreMap":189},[194,446,447,451,455,458],{"class":196,"line":197},[194,448,450],{"class":449},"sVHd0","from",[194,452,454],{"class":453},"su5hD"," townshipamerica ",[194,456,457],{"class":449},"import",[194,459,460],{"class":453}," Client\n",[194,462,463],{"class":196,"line":219},[194,464,466],{"emptyLinePlaceholder":465},true,"\n",[194,468,469,472,476,480,483,487,489,491,494,496],{"class":196,"line":272},[194,470,471],{"class":453},"client ",[194,473,475],{"class":474},"smGrS","=",[194,477,479],{"class":478},"slqww"," Client",[194,481,482],{"class":246},"(",[194,484,486],{"class":485},"s99_P","api_key",[194,488,475],{"class":474},[194,490,212],{"class":204},[194,492,493],{"class":208},"YOUR_API_KEY",[194,495,212],{"class":204},[194,497,498],{"class":246},")\n",[194,500,501],{"class":196,"line":293},[194,502,466],{"emptyLinePlaceholder":465},[194,504,505],{"class":196,"line":314},[194,506,508],{"class":507},"sutJx","# Four corners of a drone survey boundary\n",[194,510,511,514,516],{"class":196,"line":335},[194,512,513],{"class":453},"corners ",[194,515,475],{"class":474},[194,517,518],{"class":246}," [\n",[194,520,521,524,527,529,532,535],{"class":196,"line":356},[194,522,523],{"class":246},"    (",[194,525,526],{"class":265},"40.4291",[194,528,405],{"class":246},[194,530,531],{"class":474}," -",[194,533,534],{"class":265},"96.6701",[194,536,537],{"class":246},"),\n",[194,539,540,542,544,546,548,551],{"class":196,"line":377},[194,541,523],{"class":246},[194,543,526],{"class":265},[194,545,405],{"class":246},[194,547,531],{"class":474},[194,549,550],{"class":265},"96.6541",[194,552,537],{"class":246},[194,554,555,557,560,562,564,566],{"class":196,"line":423},[194,556,523],{"class":246},[194,558,559],{"class":265},"40.4175",[194,561,405],{"class":246},[194,563,531],{"class":474},[194,565,550],{"class":265},[194,567,537],{"class":246},[194,569,571,573,575,577,579,581],{"class":196,"line":570},10,[194,572,523],{"class":246},[194,574,559],{"class":265},[194,576,405],{"class":246},[194,578,531],{"class":474},[194,580,534],{"class":265},[194,582,537],{"class":246},[194,584,586],{"class":196,"line":585},11,[194,587,588],{"class":246},"]\n",[194,590,592],{"class":196,"line":591},12,[194,593,466],{"emptyLinePlaceholder":465},[194,595,597,600,602,605],{"class":196,"line":596},13,[194,598,599],{"class":453},"sections ",[194,601,475],{"class":474},[194,603,604],{"class":394}," set",[194,606,607],{"class":246},"()\n",[194,609,611,614,617,619,622,625,628],{"class":196,"line":610},14,[194,612,613],{"class":449},"for",[194,615,616],{"class":453}," lat",[194,618,405],{"class":246},[194,620,621],{"class":453}," lng ",[194,623,624],{"class":449},"in",[194,626,627],{"class":453}," corners",[194,629,630],{"class":246},":\n",[194,632,634,637,639,642,645,648,650,652,654,656,658,661,663,665],{"class":196,"line":633},15,[194,635,636],{"class":453},"    result ",[194,638,475],{"class":474},[194,640,641],{"class":453}," client",[194,643,644],{"class":246},".",[194,646,647],{"class":478},"reverse",[194,649,482],{"class":246},[194,651,395],{"class":485},[194,653,475],{"class":474},[194,655,395],{"class":478},[194,657,405],{"class":246},[194,659,660],{"class":485}," lng",[194,662,475],{"class":474},[194,664,410],{"class":478},[194,666,498],{"class":246},[194,668,670,673,675,678,680,683,686,688,690,692],{"class":196,"line":669},16,[194,671,672],{"class":453},"    sections",[194,674,644],{"class":246},[194,676,677],{"class":478},"add",[194,679,482],{"class":246},[194,681,682],{"class":478},"result",[194,684,685],{"class":246},"[",[194,687,212],{"class":204},[194,689,361],{"class":208},[194,691,212],{"class":204},[194,693,694],{"class":246},"])\n",[194,696,698],{"class":196,"line":697},17,[194,699,466],{"emptyLinePlaceholder":465},[194,701,703,707,709,711,714,716,718,721],{"class":196,"line":702},18,[194,704,706],{"class":705},"sptTA","print",[194,708,482],{"class":246},[194,710,212],{"class":204},[194,712,713],{"class":208},"Survey covers:",[194,715,212],{"class":204},[194,717,405],{"class":246},[194,719,720],{"class":478}," sections",[194,722,498],{"class":246},[20,724,726],{"id":725},"real-example-converting-a-drone-survey-extent-to-legal-description","Real Example: Converting a Drone Survey Extent to Legal Description",[10,728,729],{},"A GIS analyst processes a drone survey of farmland near Beatrice, Nebraska. The orthomosaic output covers approximately 320 acres. Flight extents from the project metadata:",[37,731,732,735],{},[40,733,734],{},"SW corner: 40.4175°N, 96.6701°W",[40,736,737],{},"NE corner: 40.4291°N, 96.6541°W",[10,739,740],{},"Running a reverse lookup on each corner against the Sixth Principal Meridian returns:",[37,742,743,746],{},[40,744,745],{},"SW corner → Section 22, T15N R2E, Sixth Principal Meridian, NE",[40,747,748],{},"NE corner → Section 15, T15N R2E, Sixth Principal Meridian, NE",[10,750,751],{},"The survey spans the eastern portion of Section 22 and the southeastern corner of Section 15, both in T15N R2E. The legal description for the project record reads:",[753,754,755],"blockquote",{},[10,756,757],{},"Portions of Sec 15 and Sec 22, T15N R2E, Sixth Principal Meridian, Gage County, Nebraska",[10,759,760],{},"That description goes into the survey report cover sheet, the delivery metadata, and the title company's review packet — three documents, one lookup sequence.",[10,762,763],{},"For analysts processing 50 or 100 survey boundaries per month, running this automatically at the end of a photogrammetry pipeline eliminates a manual step that commonly introduces transcription errors.",[20,765,767],{"id":766},"fitting-plss-into-your-uav-post-processing-pipeline","Fitting PLSS Into Your UAV Post-Processing Pipeline",[10,769,770],{},"Drone surveying and PLSS are not separate workflows — one produces the data, the other provides the legal anchor for that data. Building the coordinate-to-legal-description conversion into your post-processing pipeline means your deliverables are complete from the start, without a manual lookup step before filing.",[10,772,26,773,777,778,781],{},[28,774,776],{"href":775},"\u002Fplss-converter","PLSS converter"," handles individual lookups. The API handles everything at scale. If you are processing UAV survey data regularly and need to automate PLSS conversion, ",[28,779,780],{"href":177},"see the API docs"," for rate limits, batch options, and output formats.",[783,784,785],"style",{},"html pre.shiki code .sP7_E, html code.shiki .sP7_E{--shiki-light:#39ADB5;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s39Yj, html code.shiki .s39Yj{--shiki-light:#39ADB5;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sseR_, html code.shiki .sseR_{--shiki-light:#9C3EDA;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .srdBf, html code.shiki .srdBf{--shiki-light:#F76D47;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sjJ54, html code.shiki .sjJ54{--shiki-light:#39ADB5;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .s_sjI, html code.shiki .s_sjI{--shiki-light:#91B859;--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sZMiF, html code.shiki .sZMiF{--shiki-light:#E2931D;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sVHd0, html code.shiki .sVHd0{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#D73A49;--shiki-default-font-style:inherit;--shiki-dark:#F97583;--shiki-dark-font-style:inherit}html pre.shiki code .su5hD, html code.shiki .su5hD{--shiki-light:#90A4AE;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .smGrS, html code.shiki .smGrS{--shiki-light:#39ADB5;--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .slqww, html code.shiki .slqww{--shiki-light:#6182B8;--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s99_P, html code.shiki .s99_P{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#E36209;--shiki-default-font-style:inherit;--shiki-dark:#FFAB70;--shiki-dark-font-style:inherit}html pre.shiki code .sutJx, html code.shiki .sutJx{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#6A737D;--shiki-default-font-style:inherit;--shiki-dark:#6A737D;--shiki-dark-font-style:inherit}html pre.shiki code .sptTA, html code.shiki .sptTA{--shiki-light:#6182B8;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sbgvK, html code.shiki .sbgvK{--shiki-light:#E2931D;--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .s_hVV, html code.shiki .s_hVV{--shiki-light:#90A4AE;--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .stzsN, html code.shiki .stzsN{--shiki-light:#91B859;--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":189,"searchDepth":219,"depth":219,"links":787},[788,789,790,791,792,793],{"id":22,"depth":219,"text":23},{"id":70,"depth":219,"text":71},{"id":112,"depth":219,"text":113},{"id":170,"depth":219,"text":171},{"id":725,"depth":219,"text":726},{"id":766,"depth":219,"text":767},"https:\u002F\u002Fhswwubqgpp6hnvaz.public.blob.vercel-storage.com\u002Fimages\u002Fblog\u002F2026-04\u002Fdf07da40-20cd-4908-ad17-8f7cdee86429.jpeg","2026-04-14T08:00:00Z","How GIS analysts and surveyors convert drone flight boundaries to Section-Township-Range legal descriptions using reverse PLSS lookup and the Township America API.",false,"md",{"author":800,"category":801},"Township America","surveying","\u002Fblog\u002Fdrone-surveying-plss-uav-legal-land-descriptions",{"title":5,"description":796},"blog\u002Fdrone-surveying-plss-uav-legal-land-descriptions",[806,807,808,809,810,811,812],"PLSS","Drone Surveying","UAV","GIS","Legal Description","Reverse Lookup","API","Dvx4VW4zfRjDqWzdBkrwooLpTNqWEDm524v4QhHQ3-I"]