Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.
Machine data enters Leaf two ways: through a connected provider or via manual file upload. This page covers the manual upload path using the batch API.Manual upload is useful when growers aren’t connected to a cloud provider. They can pull files from a USB drive or monitor, ZIP them, and upload to Leaf. You can also use Leaf Link’s pre-built upload widget or a Magic Link to give end users a no-code upload experience.
All uploads go through the batch API (/batch endpoint). Every upload must be a ZIP file, maximum 3 GB. Leaf extracts and processes the contents automatically.You can optionally specify which provider the files came from. If you don’t know or the ZIP contains files from multiple providers, Leaf auto-detects, splits, and processes each format independently.After uploading, Leaf assigns a batchId you can use to track processing status for all files in that upload.
ZIP the folder directly from the monitor or USB drive. Each manufacturer uses specific folder names and directory structures that Leaf expects to find intact.
Keep folder names exactly as they appear (e.g., TASKDATA, RCD, AgData)
Preserve the complete folder hierarchy
Don’t create new folders, rename existing ones, or move files around
Don’t manually collect individual files into a new folder
Leaf searches up to two levels deep inside nested ZIPs. You can upload a ZIP containing other ZIPs.
Upload files directly from the monitor when possible. Original monitor files contain richer data and process more reliably than exported shapefiles. If you’re using Ag Leader SMS, export the original .agdata, .ilf, or .yld files rather than creating shapefile exports.
GeoJSON files exported from Farmobile. ZIP the exported files and upload. Since GeoJSON files don’t contain unit information, Leaf assumes Farmobile’s default units.
Generic shapefiles can be uploaded from SMS (Ag Leader), Raven Slingshot, Topcon, and other systems. Original monitor files are strongly preferred when available.
All four required files must be present and share the same base name (e.g., field_harvest.shp, field_harvest.dbf, field_harvest.shx, field_harvest.prj). Place all files at the root level of the ZIP.
In SMS Project Workspace, right-click the operation to export
Select Export → paper icon → “Export to a Generic File Format”
Choose Generic and Shape as the file type
Click Export Selections and Settings to configure columns. You can rename columns here. For example, to include Crop in harvest files: select Property → Product Management Item Type → add Crop Type → rename to “Crop”
Save, then select all four output files (.shp, .dbf, .prj, .shx), compress into a ZIP, and upload
File Conversion — What happens to files after they’re uploaded.
Field Operations — How converted files become merged field operations.
API Reference: Files — Full endpoint reference for file uploads and batch management.
Last modified on March 24, 2026
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Leaf Documentation","colors":{"primary":"#00886b","light":"#07C983","dark":"#00886b"},"logo":{"light":"https://mintcdn.com/leaf-3ed5893a/to88HRn_L8ezHDrX/logo/light.png?fit=max\u0026auto=format\u0026n=to88HRn_L8ezHDrX\u0026q=85\u0026s=8ce24e422c9bf087336b65351eb51f4c","dark":"https://mintcdn.com/leaf-3ed5893a/to88HRn_L8ezHDrX/logo/dark.png?fit=max\u0026auto=format\u0026n=to88HRn_L8ezHDrX\u0026q=85\u0026s=7c5b24b746c2c02501ac6fea486c3a51","href":"https://withleaf.io/"},"favicon":"https://mintcdn.com/leaf-3ed5893a/to88HRn_L8ezHDrX/favicon.png?fit=max\u0026auto=format\u0026n=to88HRn_L8ezHDrX\u0026q=85\u0026s=a435f8f25c1ed914dc32b03c92d844cd","appearance":{"default":"light"},"background":{"color":{"light":"#ffffff","dark":"#18191a"}},"navbar":{"links":[{"icon":"github","href":"https://status.withleaf.io","label":"API Status"},{"href":"https://dashboard.withleaf.io","label":"Log In"}],"primary":{"type":"button","label":"Request Demo","href":"https://withleaf.io/account/get-a-demo"}},"footer":{"socials":{"instagram":"https://www.instagram.com/withleaf_","linkedin":"https://www.linkedin.com/company/leaf-agriculture","x":"https://twitter.com/LeafAgriculture","youtube":"https://www.youtube.com/@leafagriculture7933"}},"seo":{"metatags":{"robots":"noindex"},"indexing":"navigable"},"fonts":{"heading":{"family":"Satoshi","source":"https://cdn.fontshare.com/wf/P2LQKHE6KA6ZP4AAGN72KDWMHH6ZH3TA/ZC32TK2P7FPS5GFTL46EU6KQJA24ZYDB/7AHDUZ4A7LFLVFUIFSARGIWCRQJHISQP.woff2","format":"woff2"},"body":{"family":"Inter"}},"integrations":{"mixpanel":{"projectToken":"2aa8982706dc53402184ef7b6e555d32"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"About Us","icon":"circle-user","href":"https://withleaf.io/company"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"leaf-3ed5893a","hasAudioNarration":false,"actualSubdomain":"leaf-3ed5893a","customDomains":["docs.withleaf.io"],"gitSource":{"type":"github","owner":"leaf-agriculture","repo":"docs-v2","deployBranch":"master","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aea55583593d9bacc3250df","collectionId":"c5ff0339-6713-4bbb-8aca-078af8401d84","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aea55583593d9bacc3250df"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aea55583593d9bacc3250df","clientVersion":"0.0.4064","searchFilterCounts":[{"language":"default","tag":"Documentation","count":58},{"language":"default","tag":"API Reference","count":25},{"language":"default","tag":"Guides","count":21},{"language":"default","tag":"Tutorials","count":16},{"language":"default","tag":"Connecting Providers","count":16},{"language":"default","tag":"Beta","count":10},{"language":"default","tag":"Data Hierarchy","count":9},{"language":"default","tag":"OEM and Provider Integrations","count":8},{"language":"default","tag":"Machine Data","count":6},{"language":"default","tag":"Resources","count":6}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"help@withleaf.io","showHelpButton":true}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles/globals.css","content":".get,.post,.put,.patch,.delete{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;font-family:monospace}.get{background-color:#00866d;color:white}.post{background-color:#edc043;color:white}.patch{background-color:#edc043;color:white}.delete{background-color:#f25925;color:white}.put{background-color:#edc043;color:white}"}],"page":{"pagePath":"machine-data/uploading-files","slug":"/machine-data/uploading-files","pageMetadata":{"title":"Uploading Files","sidebarTitle":"Uploading Files","description":"Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.","href":"/machine-data/uploading-files"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Tip}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Tip)_missingMdxReference(`Tip`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Machine data enters Leaf two ways: through a connected provider or via manual file upload. This page covers the manual upload path using the batch API.`}),`\n`,_jsx(_components.p,{children:`Manual upload is useful when growers aren’t connected to a cloud provider. They can pull files from a USB drive or monitor, ZIP them, and upload to Leaf. You can also use Leaf Link’s pre-built upload widget or a Magic Link to give end users a no-code upload experience.`}),`\n`,_jsx(Heading,{level:`2`,id:`upload-basics`,children:`Upload basics`}),`\n`,_jsxs(_components.p,{children:[`All uploads go through the batch API (`,_jsx(_components.code,{children:`/batch`}),` endpoint). Every upload must be a `,_jsx(_components.strong,{children:`ZIP file`}),`, maximum 3 GB. Leaf extracts and processes the contents automatically.`]}),`\n`,_jsx(_components.p,{children:`You can optionally specify which provider the files came from. If you don’t know or the ZIP contains files from multiple providers, Leaf auto-detects, splits, and processes each format independently.`}),`\n`,_jsxs(_components.p,{children:[`After uploading, Leaf assigns a `,_jsx(_components.code,{children:`batchId`}),` you can use to track processing status for all files in that upload.`]}),`\n`,_jsx(Heading,{level:`2`,id:`folder-structure-rules`,children:`Folder structure rules`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`ZIP the folder directly from the monitor or USB drive.`}),` Each manufacturer uses specific folder names and directory structures that Leaf expects to find intact.`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Keep folder names exactly as they appear (e.g., `,_jsx(_components.code,{children:`TASKDATA`}),`, `,_jsx(_components.code,{children:`RCD`}),`, `,_jsx(_components.code,{children:`AgData`}),`)`]}),`\n`,_jsx(_components.li,{children:`Preserve the complete folder hierarchy`}),`\n`,_jsx(_components.li,{children:`Don’t create new folders, rename existing ones, or move files around`}),`\n`,_jsx(_components.li,{children:`Don’t manually collect individual files into a new folder`}),`\n`]}),`\n`,_jsx(_components.p,{children:`Leaf searches up to two levels deep inside nested ZIPs. You can upload a ZIP containing other ZIPs.`}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Upload files directly from the monitor when possible. Original monitor files contain richer data and process more reliably than exported shapefiles. If you’re using Ag Leader SMS, export the original `,_jsx(_components.code,{children:`.agdata`}),`, `,_jsx(_components.code,{children:`.ilf`}),`, or `,_jsx(_components.code,{children:`.yld`}),` files rather than creating shapefile exports.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`preparing-files-by-equipment-type`,children:`Preparing files by equipment type`}),`\n`,_jsx(Heading,{level:`3`,id:`john-deere`,children:`John Deere`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`GreenStar 2 (2600)`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`RCD`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── *.fdd`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.fdl`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`Locate the `,_jsx(_components.code,{children:`RCD`}),` folder on the USB drive, ZIP it, and upload.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`GreenStar 3 (2630)`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`9`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`9`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`GS3_2630`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── RCD`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── EIC`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── global.ver`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── documentation`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── ...`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` ├── *.fdd`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── *.fdl`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`Locate the `,_jsx(_components.code,{children:`GS3_2630`}),` or `,_jsx(_components.code,{children:`RCD`}),` folder, ZIP it with the complete hierarchy, and upload.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`GreenStar 4 (Gen 4 — 4600/4630)`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`JD-Data`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── log`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── *.jdl`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`Locate the `,_jsx(_components.code,{children:`JD-Data`}),` folder, ZIP it, and upload.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`MyJohnDeere shapefile exports`}),` — Supported, but native monitor files are preferred.`]}),`\n`,_jsx(Heading,{level:`3`,id:`climate-fieldview-/-precision-planting`,children:`Climate FieldView / Precision Planting`}),`\n`,_jsx(_components.p,{children:`These are the same 20|20 monitors listed under both brands.`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`20|20 SeedSense Generation 1 and 2`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── harvest_*.dat`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── field_map_*.dat`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── liquid_map_*.dat`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`20|20 SeedSense Generation 3`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.2020`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:`Locate the folder containing these files, ZIP it, and upload.`}),`\n`,_jsx(Heading,{level:`3`,id:`cnhi-case-ih-/-new-holland`,children:`CNHi (Case IH / New Holland)`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Pro 700 / IntelliView IV (Voyager 2)`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`\u003cname>.cn1/`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── index.vy1`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── (other data files)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.code,{children:`.cn1`}),` folder contains all operation data. ZIP the entire folder and upload.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Pro 1200 / IntelliView 12 (ISOXML)`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`TASKDATA`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── TASKDATA.XML`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.bin`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`Locate the `,_jsx(_components.code,{children:`TASKDATA`}),` folder, ZIP it keeping the folder name, and upload.`]}),`\n`,_jsx(Heading,{level:`3`,id:`ag-leader`,children:`Ag Leader`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`INTEGRA (v3.5+), VERSA, or COMPASS`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`3`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── *.agdata`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.agsetup`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:`Both files must be present together. ZIP the folder containing both and upload.`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Edge, Insight, or INTEGRA (v3.4)`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.ilf`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`PF Advantage, PF 3000, PF 3000 Pro, YM2000`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.yld`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(_components.p,{children:`ZIP the folder containing these files and upload.`}),`\n`,_jsx(Heading,{level:`3`,id:`trimble`,children:`Trimble`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`FMX or CFX monitors (AgData format)`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`8`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`AgData`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── Fields/ └── *.agf`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── implements/ └── *.agi`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── prescriptions/ └── *.agm`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── Tasks/ └── *.agt`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── Users/ └── *.agu`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── vehicles/ └── *.agv`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`Locate the `,_jsx(_components.code,{children:`AgData`}),` folder, ZIP it with the complete structure, and upload.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`GFX-750, TMX-2050 monitors (AgGPS format — shapefiles)`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`11`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`11`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`AgGPS`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── Data`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── \"Grower\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── Farm`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── field`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── \"Task\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` ├── *.cpg`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` ├── *.dbf`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` ├── *.shp`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:` └── *.shx`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(Heading,{level:`3`,id:`raven-slingshot`,children:`Raven Slingshot`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Raven FMIS`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`3`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`3`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── *.xml`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.tab`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`Both `,_jsx(_components.code,{children:`.xml`}),` and `,_jsx(_components.code,{children:`.tab`}),` files should be present. ZIP the folder and upload.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Raven JDP`})}),`\n`,_jsx(CodeBlock,{numberOfLines:`2`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`2`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.jdp`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsx(Heading,{level:`3`,id:`isoxml-equipment`,children:`ISOXML equipment`}),`\n`,_jsx(_components.p,{children:`Supported brands: CLAAS, Kuhn, Kverneland Group, Müller-Elektronik, Teknomika, Topcon.`}),`\n`,_jsx(CodeBlock,{numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`TASKDATA`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── *.XML`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.bin`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`The folder `,_jsx(_components.strong,{children:`must`}),` be named `,_jsx(_components.code,{children:`TASKDATA`}),`. Do not rename it.`]}),`\n`,_jsx(Heading,{level:`3`,id:`farmobile`,children:`Farmobile`}),`\n`,_jsx(_components.p,{children:`GeoJSON files exported from Farmobile. ZIP the exported files and upload. Since GeoJSON files don’t contain unit information, Leaf assumes Farmobile’s default units.`}),`\n`,_jsx(Heading,{level:`2`,id:`shapefile-uploads`,children:`Shapefile uploads`}),`\n`,_jsx(_components.p,{children:`Generic shapefiles can be uploaded from SMS (Ag Leader), Raven Slingshot, Topcon, and other systems. Original monitor files are strongly preferred when available.`}),`\n`,_jsx(Heading,{level:`3`,id:`requirements`,children:`Requirements`}),`\n`,_jsx(CodeBlock,{numberOfLines:`7`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`7`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`shapefile.zip`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── *.shp (required — geometry)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── *.dbf (required — attributes)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── *.shx (required — shape index)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`├── *.prj (required — projection)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`└── *.cpg (optional — encoding)`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`All four required files must be present and share the same base name (e.g., `,_jsx(_components.code,{children:`field_harvest.shp`}),`, `,_jsx(_components.code,{children:`field_harvest.dbf`}),`, `,_jsx(_components.code,{children:`field_harvest.shx`}),`, `,_jsx(_components.code,{children:`field_harvest.prj`}),`). Place all files at the root level of the ZIP.`]}),`\n`,_jsx(Heading,{level:`3`,id:`recognized-column-names`,children:`Recognized column names`}),`\n`,_jsxs(_components.p,{children:[`Shapefile column names are often truncated to 10 characters. Leaf recognizes the following names in `,_jsx(_components.code,{children:`.dbf`}),` files:`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Harvest:`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Crop: `,_jsx(_components.code,{children:`Crop`}),`, `,_jsx(_components.code,{children:`Crop_Type`}),`, `,_jsx(_components.code,{children:`Product_Pr`})]}),`\n`,_jsxs(_components.li,{children:[`Moisture: `,_jsx(_components.code,{children:`Moisture`}),`, `,_jsx(_components.code,{children:`Moisture__`}),`, `,_jsx(_components.code,{children:`MOISTURE`})]}),`\n`,_jsxs(_components.li,{children:[`Yield (volume/area): `,_jsx(_components.code,{children:`Yld_Vol_We`}),`, `,_jsx(_components.code,{children:`Yield__Wet`}),`, `,_jsx(_components.code,{children:`WET_YIELD`})]}),`\n`,_jsxs(_components.li,{children:[`Yield (mass/area): `,_jsx(_components.code,{children:`Yield_Mass`}),`, `,_jsx(_components.code,{children:`Yld_Mass_W`}),` (wet), `,_jsx(_components.code,{children:`Yld_Mass_D`}),`, `,_jsx(_components.code,{children:`dryyldlba`}),` (dry)`]}),`\n`,_jsxs(_components.li,{children:[`Yield (total wet mass): `,_jsx(_components.code,{children:`WetMass`}),`, `,_jsx(_components.code,{children:`wetMass`}),`, `,_jsx(_components.code,{children:`Harvest_We`})]}),`\n`,_jsxs(_components.li,{children:[`Yield (total wet volume): `,_jsx(_components.code,{children:`wetVolume`})]}),`\n`,_jsxs(_components.li,{children:[`Yield (dry volume/area): `,_jsx(_components.code,{children:`Yld_Vol_Dr`}),`, `,_jsx(_components.code,{children:`DryYldbuac`})]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Leaf calculates missing dry/wet yield properties automatically when a crop column is present.`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Planting:`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Crop: `,_jsx(_components.code,{children:`Crop`}),`, `,_jsx(_components.code,{children:`Crop_Type`}),`, `,_jsx(_components.code,{children:`Product_Pr`})]}),`\n`,_jsxs(_components.li,{children:[`Seed rate: `,_jsx(_components.code,{children:`seedRate`}),`, `,_jsx(_components.code,{children:`SeedCount`}),`, `,_jsx(_components.code,{children:`Rt_Apd_Ct_`})]}),`\n`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Application:`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Applied rate: `,_jsx(_components.code,{children:`AppliedRat`}),`, `,_jsx(_components.code,{children:`Rt_Apd_Liq`}),`, `,_jsx(_components.code,{children:`actualRate`})]}),`\n`,_jsxs(_components.li,{children:[`Product: `,_jsx(_components.code,{children:`Product`}),`, `,_jsx(_components.code,{children:`product`}),`, `,_jsx(_components.code,{children:`Products`})]}),`\n`]}),`\n`,_jsx(_components.p,{children:`If your column names don’t match any recognized name, contact Leaf support.`}),`\n`,_jsx(Heading,{level:`3`,id:`exporting-from-sms-ag-leader`,children:`Exporting from SMS (Ag Leader)`}),`\n`,_jsx(_components.p,{children:`If original monitor files aren’t available:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`In SMS Project Workspace, right-click the operation to export`}),`\n`,_jsxs(_components.li,{children:[`Select `,_jsx(_components.strong,{children:`Export`}),` → paper icon → “Export to a Generic File Format”`]}),`\n`,_jsxs(_components.li,{children:[`Choose `,_jsx(_components.strong,{children:`Generic`}),` and `,_jsx(_components.strong,{children:`Shape`}),` as the file type`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Export Selections and Settings`}),` to configure columns. You can rename columns here. For example, to include Crop in harvest files: select Property → Product Management Item Type → add Crop Type → rename to “Crop”`]}),`\n`,_jsxs(_components.li,{children:[`Save, then select all four output files (`,_jsx(_components.code,{children:`.shp`}),`, `,_jsx(_components.code,{children:`.dbf`}),`, `,_jsx(_components.code,{children:`.prj`}),`, `,_jsx(_components.code,{children:`.shx`}),`), compress into a ZIP, and upload`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`troubleshooting-uploads`,children:`Troubleshooting uploads`}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`“Upload failed” errors:`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Confirm the file is a ZIP (all uploads must be ZIP files)`}),`\n`,_jsx(_components.li,{children:`Check that the ZIP contains all required components for the file type`}),`\n`,_jsx(_components.li,{children:`Verify file size is under 3 GB`}),`\n`,_jsxs(_components.li,{children:[`For shapefiles, confirm the `,_jsx(_components.code,{children:`.dbf`}),` includes recognized columns for the operation type`]}),`\n`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Missing or incomplete data:`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Verify the original folder structure from the monitor is intact`}),`\n`,_jsxs(_components.li,{children:[`Don’t rename folders (`,_jsx(_components.code,{children:`TASKDATA`}),`, `,_jsx(_components.code,{children:`RCD`}),`, `,_jsx(_components.code,{children:`AgData`}),` must keep their original names)`]}),`\n`,_jsxs(_components.li,{children:[`For ISOXML, the `,_jsx(_components.code,{children:`TASKDATA`}),` folder must contain both `,_jsx(_components.code,{children:`*.XML`}),` and `,_jsx(_components.code,{children:`*.bin`}),` files`]}),`\n`,_jsxs(_components.li,{children:[`For Ag Leader INTEGRA, both `,_jsx(_components.code,{children:`*.agdata`}),` and `,_jsx(_components.code,{children:`*.agsetup`}),` must be present`]}),`\n`,_jsx(_components.li,{children:`Check nesting depth (Leaf looks up to 2 levels deep in nested ZIPs)`}),`\n`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Processing errors:`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Double-check that the folder structure matches what’s expected for the equipment`}),`\n`,_jsx(_components.li,{children:`Make sure files haven’t been manually reorganized or flattened`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`what-to-do-next`,children:`What to do next`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/machine-data/file-conversion`,children:`File Conversion`}),` — What happens to files after they’re uploaded.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/machine-data/field-operations`,children:`Field Operations`}),` — How converted files become merged field operations.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/api-reference/files`,children:`API Reference: Files`}),` — Full endpoint reference for file uploads and batch management.`]}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Uploading Files","sidebarTitle":"Uploading Files","description":"Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.","href":"/machine-data/uploading-files"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Upload basics","slug":"upload-basics","depth":2,"children":[]},{"title":"Folder structure rules","slug":"folder-structure-rules","depth":2,"children":[]},{"title":"Preparing files by equipment type","slug":"preparing-files-by-equipment-type","depth":2,"children":[{"title":"John Deere","slug":"john-deere","depth":3,"children":[]},{"title":"Climate FieldView / Precision Planting","slug":"climate-fieldview-/-precision-planting","depth":3,"children":[]},{"title":"CNHi (Case IH / New Holland)","slug":"cnhi-case-ih-/-new-holland","depth":3,"children":[]},{"title":"Ag Leader","slug":"ag-leader","depth":3,"children":[]},{"title":"Trimble","slug":"trimble","depth":3,"children":[]},{"title":"Raven Slingshot","slug":"raven-slingshot","depth":3,"children":[]},{"title":"ISOXML equipment","slug":"isoxml-equipment","depth":3,"children":[]},{"title":"Farmobile","slug":"farmobile","depth":3,"children":[]}]},{"title":"Shapefile uploads","slug":"shapefile-uploads","depth":2,"children":[{"title":"Requirements","slug":"requirements","depth":3,"children":[]},{"title":"Recognized column names","slug":"recognized-column-names","depth":3,"children":[]},{"title":"Exporting from SMS (Ag Leader)","slug":"exporting-from-sms-ag-leader","depth":3,"children":[]}]},{"title":"Troubleshooting uploads","slug":"troubleshooting-uploads","depth":2,"children":[]},{"title":"What to do next","slug":"what-to-do-next","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"leaf-3ed5893a","siteName":"Leaf Documentation","title":"Uploading Files - Leaf Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-03-24T13:10:53.908Z","gitLastModified":"2026-03-24T13:08:04.000Z","originalFileLocation":"machine-data/uploading-files.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Leaf Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"noindex\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Uploading Files - Leaf Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Leaf Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.withleaf.io/machine-data/uploading-files\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://leaf-3ed5893a.mintlify.app/_mintlify/api/og/v2?division=Machine+Data\u0026amp;title=Uploading+Files\u0026amp;description=Upload+machine+files+to+Leaf+using+the+batch+API.+Covers+supported+formats%2C+ZIP+requirements%2C+and+folder+structure+rules+by+equipment+manufacturer.\u0026amp;theme=df28ea0c62b563cc8e5aedca\u0026amp;signature=748a7e21c3bf0cc8d40581683504a7615ecd5e6a7ff31355cad305157cb66d4c\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Uploading Files - Leaf Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://leaf-3ed5893a.mintlify.app/_mintlify/api/og/v2?division=Machine+Data\u0026amp;title=Uploading+Files\u0026amp;description=Upload+machine+files+to+Leaf+using+the+batch+API.+Covers+supported+formats%2C+ZIP+requirements%2C+and+folder+structure+rules+by+equipment+manufacturer.\u0026amp;theme=df28ea0c62b563cc8e5aedca\u0026amp;signature=748a7e21c3bf0cc8d40581683504a7615ecd5e6a7ff31355cad305157cb66d4c\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/leaf-3ed5893a/IA--hOPjRaQAEcyW/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Leaf Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#00886b\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.withleaf.io/machine-data/uploading-files\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/machine-data/uploading-files.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.withleaf.io/#organization\",\"name\":\"Leaf Documentation\",\"url\":\"https://docs.withleaf.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/leaf-3ed5893a/to88HRn_L8ezHDrX/logo/light.png?fit=max\u0026auto=format\u0026n=to88HRn_L8ezHDrX\u0026q=85\u0026s=8ce24e422c9bf087336b65351eb51f4c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.withleaf.io#website\",\"name\":\"Leaf Documentation\",\"url\":\"https://docs.withleaf.io\",\"publisher\":{\"@id\":\"https://docs.withleaf.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.withleaf.io/machine-data/uploading-files#webpage\",\"url\":\"https://docs.withleaf.io/machine-data/uploading-files\",\"name\":\"Uploading Files\",\"description\":\"Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.\",\"dateModified\":\"2026-03-24T13:08:04.000Z\",\"isPartOf\":{\"@id\":\"https://docs.withleaf.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.withleaf.io/machine-data/uploading-files#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.withleaf.io/machine-data/uploading-files#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Machine Data\",\"item\":\"https://docs.withleaf.io/machine-data/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Uploading Files\",\"item\":\"https://docs.withleaf.io/machine-data/uploading-files\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.withleaf.io/machine-data/uploading-files#article\",\"headline\":\"Uploading Files\",\"name\":\"Uploading Files\",\"description\":\"Upload machine files to Leaf using the batch API. Covers supported formats, ZIP requirements, and folder structure rules by equipment manufacturer.\",\"url\":\"https://docs.withleaf.io/machine-data/uploading-files\",\"mainEntityOfPage\":{\"@id\":\"https://docs.withleaf.io/machine-data/uploading-files#webpage\"},\"dateModified\":\"2026-03-24T13:08:04.000Z\",\"publisher\":{\"@id\":\"https://docs.withleaf.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.withleaf.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Leaf Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Leaf Documentation","nav":{"global":{"anchors":[{"anchor":"About Us","icon":"circle-user","href":"https://withleaf.io/company"}]},"tabs":[{"tab":"Home","icon":"house","pages":[{"title":"Home","href":""}]},{"tab":"Documentation","icon":"book-open","pages":[{"group":"Getting Started","pages":[{"title":"Welcome to Leaf","sidebarTitle":"Welcome","href":"/getting-started/welcome"},{"title":"Quickstart","sidebarTitle":"Quickstart","href":"/getting-started/quickstart"},{"title":"Core Concepts","sidebarTitle":"Core Concepts","href":"/getting-started/core-concepts"},{"title":"Authentication","sidebarTitle":"Authentication","href":"/getting-started/authentication"}]},{"group":"Configuration","pages":[{"title":"Configurations","sidebarTitle":"Overview","href":"/configuration/overview"},{"title":"Configuration Reference","sidebarTitle":"Reference","href":"/configuration/reference"}]},{"group":"Alerts","pages":[{"title":"Alerts Overview","sidebarTitle":"Overview","href":"/alerts/overview"},{"title":"Alert Events","sidebarTitle":"Events","href":"/alerts/events"},{"title":"Alert Authentication","sidebarTitle":"Authentication","href":"/alerts/authentication"}]},{"group":"Leaf Users","pages":[{"title":"Leaf Users","sidebarTitle":"Overview","href":"/leaf-users/overview"}]},{"group":"Connecting Providers","pages":[{"title":"Provider Authentication","sidebarTitle":"Overview","href":"/providers/overview"},{"title":"John Deere","sidebarTitle":"John Deere","href":"/providers/john-deere"},{"title":"Climate FieldView","sidebarTitle":"Climate FieldView","href":"/providers/climate-fieldview"},{"title":"CLAAS","sidebarTitle":"CLAAS","href":"/providers/claas"},{"title":"CNHi (AFS Connect)","sidebarTitle":"CNHI (AFS Connect - Legacy)","href":"/providers/cnhi"},{"title":"CNHI FieldOps","sidebarTitle":"CNHI FieldOps","href":"/providers/cnhi-fieldops"},{"title":"Trimble","sidebarTitle":"Trimble","href":"/providers/trimble"},{"title":"AgLeader","sidebarTitle":"AgLeader","href":"/providers/agleader"},{"title":"Raven","sidebarTitle":"Raven","href":"/providers/raven"},{"title":"Raven Slingshot","sidebarTitle":"Raven Slingshot","href":"/providers/raven-slingshot"},{"title":"Stara","sidebarTitle":"Stara","href":"/providers/stara"},{"title":"Sentera","sidebarTitle":"Sentera","href":"/providers/sentera"},{"title":"Agvance","sidebarTitle":"Agvance","href":"/providers/agvance"},{"title":"Precision Planting Panorama","sidebarTitle":"Panorama","href":"/providers/panorama"},{"title":"Lindsay","sidebarTitle":"Lindsay","href":"/providers/lindsay"},{"title":"Valley","sidebarTitle":"Valley","href":"/providers/valley"}]},{"group":"Data Hierarchy","pages":[{"title":"Fields Overview","sidebarTitle":"Overview","href":"/fields/overview"},{"title":"Provider Organizations","sidebarTitle":"Organizations","href":"/providers/organizations"},{"title":"Growers","sidebarTitle":"Growers","href":"/fields/growers"},{"title":"Managing Fields","sidebarTitle":"Fields","href":"/fields/managing-fields"},{"title":"Uploading Boundaries","sidebarTitle":"Boundaries","href":"/fields/uploading-boundaries"}]},{"group":"Machine Data","pages":[{"title":"Machine Data Overview","sidebarTitle":"Overview","description":"How Leaf processes raw machine data into standardized files and merged field operations: ingestion, conversion, cleanup, and allocation to field boundaries.","href":"/machine-data/overview"},{"title":"Uploading Files","sidebarTitle":"Uploading Files","href":"/machine-data/uploading-files"},{"title":"File Conversion","sidebarTitle":"File Conversion","description":"How Leaf converts raw machine files into standard GeoJSON or GeoParquet, including pipeline stages, status tracking, summaries, and cleanup rules.","href":"/machine-data/file-conversion"},{"title":"Field Operations","sidebarTitle":"Field Operations","href":"/machine-data/field-operations"},{"title":"Sample Output","sidebarTitle":"Sample Output","href":"/machine-data/sample-output"},{"title":"Units","sidebarTitle":"Units","href":"/machine-data/units"}]},{"group":"Satellite Imagery","pages":[{"title":"Satellite Imagery Overview","sidebarTitle":"Overview","href":"/satellite/overview"},{"title":"Sentinel-2","sidebarTitle":"Sentinel-2","href":"/satellite/sentinel"},{"title":"PlanetScope","sidebarTitle":"PlanetScope","href":"/satellite/planet"},{"title":"Satellite Images v2","sidebarTitle":"Images v2","href":"/satellite/images-v2"}]},{"group":"Weather","pages":[{"title":"Weather Overview","sidebarTitle":"Overview","href":"/weather/overview"}]},{"group":"Soil Sampling","pages":[{"title":"Soil Sampling Overview","sidebarTitle":"Overview","href":"/soil/overview"},{"title":"Supported Soil Formats","sidebarTitle":"Supported Formats","href":"/soil/supported-formats"}]},{"group":"Leaf Lake","pages":[{"title":"Leaf Lake Overview","sidebarTitle":"Overview","href":"/leaf-lake/overview"},{"title":"Querying Leaf Lake","sidebarTitle":"Schema \u0026 Queries","href":"/leaf-lake/querying"}]},{"group":"UI Components","pages":[{"title":"Leaf Link","sidebarTitle":"Leaf Link","href":"/components/leaf-link"},{"title":"Magic Link","sidebarTitle":"Magic Link","href":"/components/magic-link"}]},{"group":"MCP Server","pages":[{"title":"MCP Server","sidebarTitle":"Overview","href":"/mcp/overview"},{"title":"MCP Tools Reference","sidebarTitle":"Tools Reference","href":"/mcp/tools-reference"}]},{"group":"Irrigation","pages":[{"title":"Irrigation Overview","sidebarTitle":"Overview","href":"/irrigation/overview"}]},{"group":"Beta","pages":[{"title":"Beta Features","sidebarTitle":"Overview","href":"/beta/overview"},{"title":"Assets","sidebarTitle":"Assets","href":"/beta/assets"},{"title":"Prescriptions","sidebarTitle":"Prescriptions","href":"/beta/prescriptions"},{"title":"Layers","sidebarTitle":"Layers","href":"/beta/layers"},{"title":"Input Validator","sidebarTitle":"Input Validator","href":"/beta/input-validator"},{"title":"Operations Planning","sidebarTitle":"Operations Planning","href":"/beta/operations-planning"}]},{"group":"Administration","pages":[{"title":"Usage Tracking","sidebarTitle":"Usage Tracking","href":"/billing/overview"}]},{"group":"Sharing Data","hidden":true,"pages":[{"title":"Leaf Connect","sidebarTitle":"Leaf Connect","href":"/components/leaf-connect"}]}]},{"tab":"Guides","icon":"lightbulb","pages":[{"title":"Guides","href":"/guides/by-use-case/managed-service-provider"}]},{"tab":"API Reference","icon":"code-simple","pages":[{"title":"API Reference","href":"/api-reference/authentication"}]},{"tab":"Resources","icon":"books","pages":[{"title":"Resources","href":"/resources/glossary"}]}]},"basePath":"","title":"Uploading Files - Leaf Documentation","buildId":"dpl_2gSLkbMoF5kkLsBqYzq9KWtDyJRo","deploymentId":"dpl_2gSLkbMoF5kkLsBqYzq9KWtDyJRo","dynamics":[],"chunks":[]}