Skip to main content

Edit Item

Modifies item fields by adding, changing, or removing values.

Overview

The Edit Item node transforms each item by applying field edits. Use it to:

  • Add new calculated fields
  • Rename or restructure fields
  • Remove unwanted fields
  • Transform values with expressions

Parameters

ParameterDescriptionRequired
Field ModeKeep all existing fields or start freshYes
EditsList of field modificationsYes

Field Mode Options

ModeBehavior
Keep all fieldsStart with all existing fields, then apply edits
Keep no fieldsStart with empty item, only include edited fields

Edits

Each edit specifies:

PropertyDescription
FieldDot notation path to set, or * to replace entire object
ValueThe value to set (supports expressions)

Field Paths

Use dot notation to set nested fields:

  • name - Sets top-level field
  • address.city - Sets nested field
  • * - Replaces the entire item with the value

Output

Items with the specified modifications applied.

Input:

{
"name": "John",
"price": 100,
"quantity": 5
}

Edits:

  • Field: total, Value: {{\$item.data.price * \$item.data.quantity}}
  • Field: status, Value: pending

Output (Keep all fields):

{
"name": "John",
"price": 100,
"quantity": 5,
"total": 500,
"status": "pending"
}

Examples

Add Calculated Fields

Calculate line item totals:

  1. Set Field Mode: Keep all fields
  2. Add Edit:
    • Field: lineTotal
    • Value: {{\$item.data.unitPrice * \$item.data.quantity}}

Restructure for Output

Prepare data for export with specific structure:

  1. Set Field Mode: Keep no fields
  2. Add Edits:
    • Field: Customer Name, Value: {{\$item.data.firstName}} {{\$item.data.lastName}}
    • Field: Order Total, Value: {{\$item.data.subtotal + \$item.data.tax}}
    • Field: Date, Value: {{\$item.data.orderDate}}

Transform Values

Normalize status values:

  1. Set Field Mode: Keep all fields
  2. Add Edit:
    • Field: status
    • Value: {{\$item.data.status.toLowerCase().trim()}}

Replace Entire Item

Use * field to completely replace:

  1. Add Edit:
    • Field: *
    • Value: {{\$item.data.nested}} (extracts nested data to top level)

Set Nested Fields

Build nested structures:

  1. Add Edits:
    • Field: metadata.processedAt, Value: {{new Date().toISOString()}}
    • Field: metadata.source, Value: workflow

Expression Examples

// String manipulation
{{$item.data.name.toUpperCase()}}
{{$item.data.email.split('@')[0]}}
{{`\${$item.data.firstName} \${$item.data.lastName}`}}

// Math operations
{{$item.data.price * 1.1}}
{{Math.round($item.data.value * 100) / 100}}

// Conditional values
{{$item.data.amount > 1000 ? 'High' : 'Low'}}

// Date formatting
{{new Date($item.data.timestamp).toISOString()}}

// Array operations
{{$item.data.tags.join(', ')}}
{{$item.data.items.length}}

// Reference a specific node
{{$("Get Table").item.data.name}}

Tips

  • Use "Keep no fields" to create clean output structures
  • Expressions have access to the full \$item object via \$item.data
  • Field names are case-sensitive
  • New fields overwrite existing fields with the same name
  • Order of edits matters when edits reference each other
  • Use * field to completely reshape an item