> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/deployment/hi/monitoring-and-analytics/vision-events/upload-a-vision-event-bundle.md).

# एक Vision Event Bundle अपलोड करें

एक Vision Event बनाने के लिए air-gapped डिप्लॉयमेंट द्वारा लिखे गए tarball bundle को ingest करें।

## के बारे में

The [विजन इवेंट बंडल लिखें](https://docs.roboflow.com/workflows/blocks/blocks/data-storage/vision-event-bundle) ब्लॉक प्रति इवेंट एक टारबॉल स्थानीय डिस्क पर लिखता है, बजाय इसे Roboflow को भेजने के। इसका उपयोग तब करें जब आपका inference server ऐसी नेटवर्क में चलता हो जिसका क्लाउड तक कोई मार्ग न हो। यह endpoint उन टारबॉल्स को ज्यों का त्यों लेता है: आपका uploader हर फ़ाइल पोस्ट करता है, और Roboflow उसे अनपैक करता है, इमेज़ अपलोड करता है, और बनाता है [विजन इवेंट](/deployment/hi/monitoring-and-analytics/vision-events.md).

## HTTP API

कच्चे आर्काइव बाइट्स को request body के रूप में पोस्ट करें। JSON या multipart का उपयोग न करें। बॉडी बाइनरी है, इसलिए अपनी API key को में भेजें `Authorization: Bearer` हेडर या में `api_key` क्वेरी पैरामीटर।

**आवश्यक scope:** `vision-events:write` या `device:update`

{% openapi src="/files/84d8c4861456d267a4e6a39f6a1609041832d8bb" path="/vision-events/bundle" method="post" %}
[openapi.yaml](https://2297977984-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoksNmwps1HmYr8TqHDnX%2Fuploads%2Fgit-blob-dca3d4f164ead71d7f0d6953b9ac101065bf210f%2Fopenapi.yaml?alt=media)
{% endopenapi %}

### बंडल प्रारूप

हर बंडल में एक इवेंट होता है। ब्लॉक gzipped tar फ़ाइलें लिखता है, और plain tar भी काम करता है।

```
event_<timestamp>_<eventId>.tar.gz
├── payload.json
└── images/<file_id>.jpg
```

`payload.json` का स्वरूप उसी जैसा है जैसा [एक Vision Event बनाएँ](/deployment/hi/monitoring-and-analytics/vision-events/create-a-vision-event.md#request-body-parameters) request body, लेकिन दो अंतर हैं:

* `bundleFormatVersion` है `1`.
* `images[].file` और `images[].inputFile` आर्काइव सदस्य पथ रखते हैं (उदा.: `images/9f0c1b2a.jpg`) के स्थान पर `sourceId` और `inputSourceId`. Roboflow प्रत्येक सदस्य को अपलोड करता है और source IDs को इवेंट पर संग्रहीत करता है।

इमेज़ को के अंतर्गत होना चाहिए `images/` डायरेक्टरी। जिन सदस्यों का कोई इमेज संदर्भ नहीं देता, और शीर्ष-स्तरीय डायरेक्टरियाँ सिवाय `images/`, ingestion warning जोड़ते हैं लेकिन इवेंट को नहीं रोकते। बंडल केवल इमेज़ ले जाते हैं: एक `videos/` डायरेक्टरी को चेतावनी के साथ अनदेखा किया जाता है। एक क्लिप जोड़ने के लिए, [वीडियो अपलोड करें](/deployment/hi/monitoring-and-analytics/vision-events/upload-a-vision-event-video.md) अलग से।

के भीतर field errors `payload.json` JSON endpoint पर जैसे व्यवहार करते हैं। देखें [मान्यता और चेतावनियाँ](/deployment/hi/monitoring-and-analytics/vision-events/create-a-vision-event.md#validation-and-warnings).

### उपयोग मामला

The `useCaseId` क्वेरी पैरामीटर ओवरराइड करता है `useCaseId` में `payload.json`। यदि दोनों में से कोई भी सेट नहीं है, तो अनुरोध 400 के साथ विफल हो जाता है। Air-gapped साइटें आमतौर पर उपयोग-केस को बंडल से बाहर रखती हैं, ताकि स्थानीय नेटवर्क के भीतर कोई cloud identifiers संग्रहीत न हों, और इसके बजाय इसे upload time पर सेट करें।

### सीमाएँ

<table data-search="false"><thead><tr><th>सीमा</th><th>मान</th><th>विफलता पर स्थिति</th></tr></thead><tbody><tr><td>अनुरोध बॉडी</td><td>25 MB</td><td>413</td></tr><tr><td>डीकंप्रेस्ड आर्काइव</td><td>75 MB</td><td>413</td></tr><tr><td><code>payload.json</code></td><td>10 MB</td><td>413</td></tr><tr><td>आर्काइव प्रविष्टियाँ</td><td>217</td><td>413</td></tr><tr><td>प्रति बंडल इमेज़</td><td>100</td><td>400</td></tr><tr><td>प्रति इमेज़ पिक्सेल</td><td>80 MP</td><td>413</td></tr></tbody></table>

### पुनः प्रयास

आप असफल या अस्पष्ट अपलोड के बाद वही बंडल फिर से पोस्ट कर सकते हैं। इमेज़ का मिलान कंटेंट के आधार पर किया जाता है, और जो इवेंट दो बार आता है वह पहले वाले को बदल देता है। इसके लिए आपसे एक ही बार शुल्क लिया जाएगा।
