> ## Documentation Index
> Fetch the complete documentation index at: https://docs.youka.io/llms.txt
> Use this file to discover all available pages before exploring further.

# ग्लोबल विकल्प

> हर Youka CLI कमांड पर उपलब्ध फ़्लैग

हर `youka` कमांड एक ही सेट के ग्लोबल फ़्लैग स्वीकार करता है। ये आउटपुट मोड, इनपुट हैंडलिंग, वेटिंग व्यवहार, और टारगेट API को नियंत्रित करते हैं।

## फ़्लैग

| फ़्लैग                    | विवरण                                                                                                                                                     |
| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--json`                  | मशीन मोड: stdout पर ठीक एक JSON एनवलप प्रिंट करें। लॉग और प्रोग्रेस दबा दिए जाते हैं।                                                                     |
| `--body <file\|->`        | किसी फ़ाइल या stdin से एक JSON ऑब्जेक्ट मर्ज करें। CLI फ़्लैग `--body` से मेल खाने वाले फ़ील्ड्स को ओवरराइड करते हैं।                                     |
| `--wait`                  | बनाए गए रिसोर्स को तब तक पोल करें जब तक वह टर्मिनल स्टेट तक न पहुँच जाए। `project create`, `project sync`, `project separate`, और `export create` में आम। |
| `--idempotency-key <key>` | write operations पर API को एक idempotency key फ़ॉरवर्ड करें।                                                                                              |
| `--quiet`                 | `--wait` के साथ मिलाने पर non-JSON प्रोग्रेस आउटपुट दबाएँ।                                                                                                |
| `--no-color`              | ANSI कलर आउटपुट निष्क्रिय करें।                                                                                                                           |
| `--api <url>`             | API base URL को ओवरराइड करें। ज़रूरत होने पर `/hi/api/v1` suffix अपने-आप जोड़ दिया जाता है।                                                               |

## JSON एनवलप

`--json` के साथ, CLI stdout पर ठीक एक एनवलप लिखता है और इसके अलावा कुछ नहीं।

सफलता:

```json theme={null}
{
  "ok": true,
  "data": {
    /* command result */
  }
}
```

विफलता:

```json theme={null}
{
  "ok": false,
  "error": {
    "code": "UNAUTHORIZED",
    "message": "Missing or invalid API key.",
    "details": null
  }
}
```

एग्ज़िट कोड:

| कोड | अर्थ                                          |
| --- | --------------------------------------------- |
| `0` | सफलता।                                        |
| `1` | रनटाइम त्रुटि (network, API, rendering)।      |
| `2` | अमान्य इनपुट (bad flags, unreadable payload)। |

<Tip>
  स्क्रिप्टिंग के लिए एनवलप को `jq` से पाइप करें: `youka project show $ID --json |
      jq '.data.state'`.
</Tip>

## JSON बॉडी पास करना

किसी भी create या update कमांड में पूरे request body के लिए `--body` स्वीकार किया जाता है। कमांड लाइन पर बड़े JSON को escape करने की बजाय इसे इस्तेमाल करें।

<CodeGroup>
  ```bash from-file theme={null}
  youka preset create --body ./preset.json --json
  ```

  ```bash from-stdin theme={null}
  cat preset.json | youka preset create --body - --json
  ```

  ```bash override-with-flag theme={null}
  # CLI flag takes priority over matching fields from --body
  youka preset create --body ./preset.json --name "Override name" --json
  ```
</CodeGroup>

## async jobs के लिए प्रतीक्षा

`--wait` आपकी तरफ से बनाए गए रिसोर्स को पोल करता है और अंतिम स्टेट लौटाता है। `--wait` के बिना, जॉब queued होते ही कमांड लौट आते हैं।

```bash theme={null}
youka project create ./song.mp3 --wait --json
youka export create $ID --wait --download --output ./out.mp4
```

स्क्रिप्ट्स में प्रोग्रेस बार को दबाने के लिए `--wait` को `--quiet` के साथ पेयर करें, जबकि JSON रिज़ल्ट फिर भी प्रिंट होता रहे।

## Idempotency

write कमांड्स को सुरक्षित रूप से retry करने योग्य बनाने के लिए `--idempotency-key` पास करें। उसी payload के साथ वही key दोबारा उपयोग करने पर डुप्लिकेट बनाने की बजाय मूल परिणाम लौटाया जाता है।

```bash theme={null}
youka project create ./song.mp3 \
  --idempotency-key "import-2026-04-08-song-001" \
  --json
```

जब भी किसी timeout के बाद कोई agent retry कर सकता हो, idempotency keys का उपयोग करें।

## Environment variables

| वेरिएबल              | उद्देश्य                                                        |
| -------------------- | --------------------------------------------------------------- |
| `YOUKA_API_KEY`      | `youka login` के जरिए सेट न होने पर उपयोग की जाने वाली API key। |
| `YOUKA_API_BASE_URL` | वैकल्पिक API base URL। `--api` द्वारा ओवरराइड होता है।          |

## आगे क्या

* [Account](/hi/cli/account) - अपनी API key सेव करें
* [Projects](/hi/cli/projects) - आपका पहला scripted workflow
* [AI agents](/hi/agents) - agent authors के लिए operating rules
