# Edit Fields (Set) और Expressions — n8n के साथ AI Automation

Source: https://www.geekswithgeeks.com/hi/n8n-ai-automation/data-set-node

> Edit Fields node से fields बनाएँ, नाम बदलें और सुरक्षित expressions लिखें।

## सटीक payload बनाएँ

**Edit Fields** (Set) node fields बनाता, नाम बदलता या हटाता है ताकि अगला system ठीक वही आकार पाए जो वह चाहता है। API calls से पहले request body बनाने और बाद में सिर्फ़ ज़रूरी fields रखने के लिए इसका उपयोग करें, जिससे execution डेटा भी छोटा रहता है। Expressions में `?.` और `??` से ग़ायब मानों से बचाव करें।

## डेटा को आकार दें

Automation का ज़्यादातर काम दो systems के बीच डेटा साफ़ करना, उसका आकार बदलना और जाँचना है।

![चार चरण: साफ़ करना, जाँचना, आकार बदलना, batch।](assets/figures/n8n-ai-automation/section-3-map.svg) — चित्र 3.1 — साफ़ करना, जाँचना, आकार बदलना और batch।

## सुरक्षित expressions

`?.` के बिना ग़ायब object का nested field पढ़ने पर error आता है और item रुक जाता है। `??` डिफ़ॉल्ट देता है।

```text
full_name : {{ $json.first_name }} {{ $json.last_name }}
city      : {{ $json.address?.city ?? "Unknown" }}
total_inr : {{ Number($json.total) || 0 }}
is_big    : {{ $json.total > 5000 }}
```

## सिर्फ़ ज़रूरी रखें

अनावश्यक fields जल्दी हटाने से बाद के nodes सरल होते हैं और ऐसी services को निजी डेटा भेजने से बचाव होता है जिन्हें उसकी ज़रूरत नहीं।

**Quiz:** address ग़ायब हो तो `$json.address?.city ?? "Unknown"` क्या करता है?

- [ ] Error देता है
- [ ] Item हटा देता है
- [x] "Unknown" लौटाता है
- [ ] address object लौटाता है

*Answer:* "Unknown" लौटाता है. Optional chaining error से बचाती है, और nullish डिफ़ॉल्ट वैकल्पिक मान भर देता है।
