> This is a page from the ElevenLabs documentation. For an index of the documentation, fetch https://elevenlabs.io/docs/llms.txt.

# कंटेंट प्रोवेनेंस API (बीटा)

ElevenLabs द्वारा जनरेट किए गए ऑडियो में, ऑडियो सैंपल्स में ही एक सुनाई न देने वाला वॉटरमार्क एम्बेड होता है। कंटेंट प्रोवेनेंस एंडपॉइंट, `POST /v1/content-provenance/watermark`, आपके अपलोड की गई फ़ाइल को पढ़ता है और बताता है कि उसमें वॉटरमार्क मिलता है या नहीं।

जब वॉटरमार्क किसी जनरेशन रिकॉर्ड से मेल खाता है, तो रिस्पॉन्स में ऑडियो बनाने वाले प्रोडक्ट और मॉडल का नाम, इसे कब जनरेट किया गया था, और उस जनरेशन की एक id होती है। इसमें कभी भी प्रॉम्प्ट, अकाउंट या जनरेशन करने वाले यूज़र की जानकारी शामिल नहीं होती।

## वॉटरमार्क से मिलने वाली जानकारी

पूरी हुई जांच में दो फ़ील्ड मिलती हैं: `is_detected` और `details`।

**`is_detected`** तब `true` होता है, जब डिकोडर फ़ाइल में ElevenLabs वॉटरमार्क पहचानता है, और जब वह नहीं पहचानता, तो `false` होता है।

**`details`** केवल तब भरा जाता है, जब वॉटरमार्क से जनरेशन की जानकारी रिकवर की जा सकती है। छोटे या बहुत अधिक बदले गए ऑडियो में ऐसा संभव नहीं हो सकता। इसमें फिर `product`, `model`, `generated_at`, और `unique_id` होते हैं। इन चारों में से कोई भी `null` हो सकता है। अगर कोई रिकॉर्ड मेल नहीं खाता या कोई वॉटरमार्क नहीं मिलता, तो `details` `null` होता है।

फ़ाइल पढ़ने के लिए कौन-सा डिकोडर इस्तेमाल होगा, यह चुनने के लिए आप `version` भी भेज सकते हैं। नवीनतम डिकोडर इस्तेमाल करने के लिए इसे न भेजें या `latest` भेजें। फ़िलहाल केवल `latest` समर्थित है।

## फ़ाइल जांचें

ऑडियो को `file` फ़ील्ड नाम वाले मल्टीपार्ट फ़ॉर्म के रूप में अपलोड करें और पार्ट का मीडिया टाइप सेट करें, जैसे `audio/mpeg`। आपकी API कुंजी के पास वॉटरमार्क की अनुमति होनी चाहिए। OAuth एक्सेस टोकन स्वीकार नहीं किए जाते।

```bash
curl -X POST https://api.elevenlabs.io/v1/content-provenance/watermark \
  -H "xi-api-key: $ELEVENLABS_API_KEY" \
  -F "file=@./example.mp3;type=audio/mpeg"
```

`version` वैकल्पिक है। इसे साफ़ तौर पर भेजने के लिए:

```bash
curl -X POST https://api.elevenlabs.io/v1/content-provenance/watermark \
  -H "xi-api-key: $ELEVENLABS_API_KEY" \
  -F "file=@./example.mp3;type=audio/mpeg" \
  -F "version=latest"
```

वॉटरमार्क वाली फ़ाइल का रिस्पॉन्स कुछ ऐसा होता है:

```json
{
  "is_detected": true,
  "details": {
    "product": "Music",
    "model": "Eleven Music v2",
    "generated_at": "2026-07-27T18:34:12+00:00",
    "unique_id": "row-123"
  }
}
```

## सीमाएं

**स्वीकार की जाने वाली फ़ाइलें।** कोई भी `audio/*` टाइप जिसे डिकोडर पढ़ सकता है, जिसमें MP3, WAV, FLAC, AAC और Ogg शामिल हैं। आप मीडिया टाइप छोड़ भी सकते हैं या `application/octet-stream` भेज सकते हैं। इमेज या किसी अन्य गैर-ऑडियो टाइप पर `invalid_file_type` स्टेटस के साथ `400` मिलता है।

**आकार और अवधि।** डिकोड होने के बाद हर फ़ाइल अधिकतम 50 MB और 0.5 सेकंड से 5 मिनट के बीच की हो सकती है। हर रिक्वेस्ट में एक फ़ाइल भेजें।

**रेट लिमिट।** हर API कुंजी यूज़र 24 घंटों में 25 जांच भेज सकता है। इस सीमा से अधिक रिक्वेस्ट पर `429` मिलता है। अगर आपको अधिक सीमा चाहिए, तो [हमसे संपर्क करें](https://elevenlabs.io/docs/help-center/other/how-can-i-contact-support)।

## त्रुटियों को संभालना

`429` मिलने पर बाद में फिर से कोशिश करें। `400` या `422` का मतलब है कि रिक्वेस्ट में बदलाव की ज़रूरत है, जैसे कोई गैर-ऑडियो फ़ाइल या `latest` के अलावा कोई `version`।

## नतीजे का इस्तेमाल

यह एंडपॉइंट केवल फ़ाइल में पहले से मौजूद वॉटरमार्क को पढ़ता है, इससे ज़्यादा कुछ नहीं। रिस्पॉन्स में कोई प्रॉम्प्ट या अकाउंट नहीं होता, इसलिए ऑडियो के स्रोत पर निर्भर किसी भी निर्णय में किसी व्यक्ति को शामिल रखें।