Skip to main content
Every webhook payload includes a type field identifying the event and a timestamp in ISO-8601 format.
This page is comprehensive for current event names from Leaf’s EventDto enum. The payload bodies shown below are representative examples for each event family unless a producer-specific schema is separately verified.

Event summary

ServiceEvents
CredentialscredentialsLimitedPermission, credentialsUnauthenticated
FieldsfieldCreated, fieldUpdated, mergedFieldCreated, mergedFieldUpdated
Field BoundariesfieldBoundaryCreated, fieldBoundaryUpdated, fieldBoundaryDeleted
Manual File UploadbatchUploadProcessingFinished, uploadedFileProcessingFinished, uploadedFileProcessingFailed
Machine File ConversionproviderFileProcessingFinished, providerFileProcessingFailed
Field OperationsmergedFileProcessingFinished, mergedFileProcessingFailed, automergedFileProcessingFinished, automergedFileProcessingFailed, operationCreated, operationUpdated, operationProcessingFinished, operationProcessingFailed
WorkflowworkflowProcessingFinished, workflowProcessingFailed
Crop MonitoringnewSatelliteImage, satelliteSubscriptionFailed
IrrigationnewIrrigationActivity, newFieldIrrigationActivity
Assets (Beta)machineCreated, machineUpdated, machineDeleted, implementCreated, implementUpdated, operatorCreated, operatorUpdated
Provider OrganizationsproviderOrganizationCreated, providerOrganizationBlocked, providerOrganizationRemoved

Credentials events

Current event names in this family: credentialsLimitedPermission, credentialsUnauthenticated.

credentialsLimitedPermission

Fired when provider credentials lack sufficient permissions for the requested actions.
{
  "credential": "the client identification",
  "provider": "the provider name",
  "credentialId": "the credential id",
  "message": "message from the alert",
  "status": "the new status of the credential",
  "type": "credentialsLimitedPermission",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

credentialsUnauthenticated

Fired when credentials are no longer valid (expired or revoked).
{
  "credential": "the client identification",
  "provider": "the provider name",
  "credentialId": "the credential id",
  "message": "message from the alert",
  "status": "the new status of the credential",
  "type": "credentialsUnauthenticated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

Field events

fieldCreated

Fired when a new field is created in a connected provider account or directly in Leaf.
{
  "source": "SYNC",
  "leafUserId": "uuid",
  "fieldId": "uuid",
  "type": "fieldCreated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

fieldUpdated

Fired when a field is updated.
{
  "source": "SYNC",
  "leafUserId": "uuid",
  "fieldId": "uuid",
  "type": "fieldUpdated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

mergedFieldCreated

Fired when a new merged field is created. Requires fieldsAutoSync and fieldsMergeIntersection to be configured.
{
  "source": "REST",
  "leafUserId": "uuid",
  "fieldId": "uuid",
  "type": "mergedFieldCreated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

mergedFieldUpdated

Fired when a merged field is updated because one of its source field geometries changed.
{
  "source": "REST",
  "leafUserId": "uuid",
  "fieldId": "uuid",
  "type": "mergedFieldUpdated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

Field boundary events

fieldBoundaryCreated

{
  "boundaryId": "uuid",
  "leafUserId": "uuid",
  "fieldId": "uuid",
  "type": "fieldBoundaryCreated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

fieldBoundaryUpdated

{
  "boundaryId": "uuid",
  "leafUserId": "uuid",
  "fieldId": "uuid",
  "type": "fieldBoundaryUpdated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

fieldBoundaryDeleted

Current event name in this family. Payloads follow the same general field-boundary pattern.

Manual file upload events

batchUploadProcessingFinished

Fired when all machine files in a batch have been processed (converted or failed). Use the batchId to query the batch or batch status endpoints for results.
{
  "batchId": "uuid",
  "leafUserId": "uuid",
  "type": "batchUploadProcessingFinished",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

uploadedFileProcessingFinished

Fired when a manually uploaded machine file finishes all processing steps successfully.
{
  "fileId": "uuid",
  "leafUserId": "uuid",
  "type": "uploadedFileProcessingFinished",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

uploadedFileProcessingFailed

Fired when a manually uploaded machine file finishes processing but failed one or more steps.
{
  "fileId": "uuid",
  "leafUserId": "uuid",
  "message": "details of what happened. May be empty",
  "type": "uploadedFileProcessingFailed",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

Machine file conversion events

Current event names in this family: providerFileProcessingFinished, providerFileProcessingFailed.

providerFileProcessingFinished

Fired when a machine file pulled from a provider finishes processing successfully.
{
  "fileId": "uuid",
  "leafUserId": "uuid",
  "type": "providerFileProcessingFinished",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

providerFileProcessingFailed

Fired when a provider machine file finishes processing but failed one or more steps.
{
  "fileId": "uuid",
  "leafUserId": "uuid",
  "message": "details of what happened. May be empty",
  "type": "providerFileProcessingFailed",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

Field operation events

mergedFileProcessingFinished

Fired when a merged field operation file finishes processing successfully.
{
  "fileId": "uuid",
  "leafUserId": "uuid",
  "type": "mergedFileProcessingFinished",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

mergedFileProcessingFailed

{
  "fileId": "uuid",
  "leafUserId": "uuid",
  "message": "details of what happened. May be empty",
  "type": "mergedFileProcessingFailed",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

automergedFileProcessingFinished

Fired when an auto-merged field operation file finishes processing successfully.
{
  "fileId": "uuid",
  "leafUserId": "uuid",
  "type": "automergedFileProcessingFinished",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

automergedFileProcessingFailed

{
  "fileId": "uuid",
  "leafUserId": "uuid",
  "message": "details of what happened. May be empty",
  "type": "automergedFileProcessingFailed",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

operationCreated

Fired when a field operation is created. At this point, summary, images, and units may not yet be available.
{
  "operationId": "uuid",
  "leafUserId": "uuid",
  "type": "operationCreated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

operationUpdated

Fired when an existing field operation changes (e.g., new files merged in).
{
  "operationId": "uuid",
  "leafUserId": "uuid",
  "type": "operationUpdated",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

operationProcessingFinished

Fired when a field operation has fully finished processing. At this point, images, summary, and units are available.
{
  "operationId": "uuid",
  "leafUserId": "uuid",
  "type": "operationProcessingFinished",
  "timestamp": "2024-06-15T14:30:00.000000Z"
}

operationProcessingFailed

Current event name in this family. Payloads follow the same general operation-processing pattern.

Workflow events

Current event names in this family: workflowProcessingFinished, workflowProcessingFailed.

workflowProcessingFinished

Current event name in this family. Payloads are not expanded here beyond enum coverage.

workflowProcessingFailed

Current event name in this family. Payloads are not expanded here beyond enum coverage.

Crop monitoring events

newSatelliteImage

Fired when a new satellite image finishes processing for a monitored field.
{
  "externalId": "the external id of the monitored field",
  "processId": "uuid",
  "type": "newSatelliteImage",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

satelliteSubscriptionFailed

Fired when a field subscription fails on the satellite provider side.
{
  "fieldId": "the external id of the monitored field",
  "message": "error message",
  "type": "satelliteSubscriptionFailed",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

Irrigation events

newIrrigationActivity

Fired when new as-applied irrigation data is available from a supported provider.
{
  "irrigationId": "uuid",
  "leafUserId": "uuid",
  "type": "newIrrigationActivity",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

newFieldIrrigationActivity

Fired when new irrigation data is available for a specific field.
{
  "fieldIrrigationId": "uuid",
  "fieldId": "uuid",
  "leafUserId": "uuid",
  "type": "newFieldIrrigationActivity",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

Asset events

Asset events are in beta.

machineCreated

{
  "type": "machineCreated",
  "machineId": "uuid",
  "leafUserId": "uuid",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

machineUpdated

{
  "type": "machineUpdated",
  "machineId": "uuid",
  "leafUserId": "uuid",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

machineDeleted

{
  "type": "machineDeleted",
  "machineId": "uuid",
  "leafUserId": "uuid",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

implementCreated

{
  "type": "implementCreated",
  "implementId": "uuid",
  "leafUserId": "uuid",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

implementUpdated

{
  "type": "implementUpdated",
  "implementId": "uuid",
  "leafUserId": "uuid",
  "timestamp": "2024-06-15T14:30:00.000Z"
}

operatorCreated

Current event name in this family. Payloads are not expanded here beyond enum coverage.

operatorUpdated

Current event name in this family. Payloads are not expanded here beyond enum coverage.

Provider organization events

Current event names in this family: providerOrganizationCreated, providerOrganizationBlocked, providerOrganizationRemoved.

providerOrganizationCreated

Current event name in this family. Payloads are not expanded here beyond enum coverage.

providerOrganizationBlocked

Current event name in this family. Payloads are not expanded here beyond enum coverage.

providerOrganizationRemoved

Current event name in this family. Payloads are not expanded here beyond enum coverage.

What to do next

Last modified on March 19, 2026