Skip to main content
This page covers the mental model for how Leaf works. If you understand the pipeline and the terms on this page, the rest of the docs will make sense.

The data pipeline

Data moves through Leaf in a fixed sequence: Providers → Machine files → Conversion → Field operations
  1. Data enters Leaf. Either through a provider connection (John Deere, Climate FieldView, CNHi, CNHI FieldOps, Trimble, AgLeader) or through direct file upload. Provider connections sync automatically; uploads are processed on receipt.
  2. Machine file conversion. Leaf takes proprietary machine file formats (ISOXML, GEN4, .DAT, etc.) and converts them into a standard canonical format. The converted data is available as either GeoJSON or GeoParquet — same structure, your choice of format. Conversion happens in stages:
    • Standard GeoJSON: Cleaned and standardized into Leaf’s common schema. Property names, units, and structure are consistent regardless of source.
    • Filtered GeoJSON (optional): Invalid data points removed based on configurable rules. Enabled via configuration.
  3. Field operation creation. Leaf takes the converted machine files and merges them with field boundaries to produce field operations. A single planting or harvest event might be spread across dozens of machine files from different swath passes. Leaf identifies which files belong together, merges them, and clips them to field boundaries. This produces field operations for planting, harvest, application, and tillage activities.
  4. Summaries and images. For each machine file and field operation, Leaf generates a summary (averages, min/max, standard deviations for key properties) and optionally produces property map images.
Field operations require field boundaries. Without a boundary, Leaf still converts machine files and produces file summaries, but cannot create field operations. Boundaries can come from a provider or be created manually through the API.

Key terminology

Account structure

The hierarchy is: API owner → Leaf users → Fields, Machine files, Field operations. Most implementations use one API owner per environment, with one Leaf user per grower. A Leaf user can be connected to multiple providers but only one credential set per provider. Configurations cascade: settings on the API owner apply to all Leaf users unless a Leaf user has its own override. Configuration changes are not retroactive.

What to do next

Last modified on April 13, 2026