आपको एक विशेष YouTube वीडियो या ऑडियो प्रारूप के लिए डाउनलोड करने योग्य लिंक को प्रोग्रामेटिक रूप से प्राप्त करने की आवश्यकता है और इसे इस सप्ताह भेजना है। इस लेख के अंत तक, आप YouTube डाउनलोड और जानकारी API का उपयोग करके एक तैयार-से-उपयोग डाउनलोड कार्य (प्रगति लिंक और थंबनेल के साथ) प्राप्त करने के लिए एक प्रमाणित अनुरोध करेंगे, इसे अपने बैकएंड या स्वचालन में वायर करेंगे, और इसे MCP के माध्यम से एक AI एजेंट से सक्रिय करेंगे।
यह API आपको क्या देती है
YouTube डाउनलोड और जानकारी API एक एकल, केंद्रित एंडपॉइंट को उजागर करती है जो आपके द्वारा चुने गए प्रारूप में दिए गए YouTube URL के लिए एक डाउनलोड करने योग्य संपत्ति को प्रारंभ करती है। यह नियमित YouTube वीडियो (सीधे स्ट्रीम नहीं) का समर्थन करती है, और लौटाती है:
- एक सफलता ध्वज जो इंगित करता है कि क्या अनुरोध स्वीकार किया गया था।
- अनुरोधित डाउनलोड के लिए एक अपारदर्शी आईडी।
- एक छवि URL (वीडियो का थंबनेल) जिसे आप तुरंत अपने UI में प्रदर्शित कर सकते हैं।
- यदि आवश्यक हो तो आपके ऐप के बाहर कार्य की प्रगति की निगरानी के लिए एक progress_url।
सामान्य उपयोगों में शामिल हैं:
- अनुपालन समीक्षाओं या सामग्री QA के लिए एक आंतरिक मीडिया डाउनलोडर बनाना।
- अपने उत्पाद के अंदर “पुस्तकालय में सहेजें” या “ऑफलाइन क्लिप” सुविधाएँ जोड़ना।
- प्रतिलिपि या विश्लेषण पाइपलाइनों के लिए ऑडियो ट्रैक निकालना।
सब कुछ आपके Zyla खाते और एकल API कुंजी के माध्यम से चलता है। Zyla API Hub सभी APIs के लिए एक खाता, एक API कुंजी, और एक सदस्यता मॉडल प्रदान करता है। आप zylalabs.com पर 10,000 से अधिक सार्वजनिक APIs ब्राउज़ कर सकते हैं और एक ही कुंजी के पीछे कई सेवाओं को एकीकृत कर सकते हैं।
Zyla API Hub पर शुरुआत करना
शुरू करने के लिए:
- Zyla पर API की लिस्टिंग खोलें: YouTube डाउनलोड और जानकारी API पर 7-दिन का परीक्षण शुरू करें.
- सदस्यता लें या मुफ्त परीक्षण शुरू करें (जब उपलब्ध हो) और अपनी API कुंजी प्राप्त करें।
- हर अनुरोध पर प्राधिकरण हेडर में उस कुंजी का उपयोग करें।
बिलिंग सदस्यता + कोटा है (पे-पर-कॉल नहीं)। पहली बार उपयोग के लिए, यह API अपनी वस्तु पृष्ठ पर 7-दिन का परीक्षण प्रदान करती है। वर्तमान पहुंच विकल्पों और मूल्य निर्धारण के लिए API पृष्ठ की जांच करें।
एंडपॉइंट अवलोकन और प्रारूप
API वर्तमान में एक डाउनलोड एंडपॉइंट प्रदान करती है। आप एक YouTube वीडियो URL और एक प्रारूप प्रदान करते हैं, और यह एक कार्य पहचानकर्ता, थंबनेल, और एक प्रगति लिंक के साथ प्रतिक्रिया करता है।
- विधि: GET
- URL: https://zylalabs.com/api/11016/youtube-download-and-info-api/20761/download
- पैरामीटर:
- url (string, आवश्यक): पूरा YouTube देखने का URL (नीचे उदाहरण दिया गया है)।
- format (string, आवश्यक): नीचे दिए गए अनुमत वीडियो या ऑडियो प्रारूपों में से एक।
उपलब्ध प्रारूप
वीडियो प्रारूप:
- 360p
- 480p
- 720p
- 1080p
- 1440p
- 2160p
ऑडियो प्रारूप:
- mp3
- m4a
- flac
- opus
- wav
उत्पादन में महत्वपूर्ण नोट्स:
- ऑडियो डाउनलोड लिंक 2 घंटे बाद समाप्त हो जाते हैं। पुराने लिंक से बचने के लिए इसे अपने UX में शामिल करें।
- यह एंडपॉइंट केवल नियमित वीडियो डाउनलोड का समर्थन करता है (सीधे स्ट्रीम नहीं)।
cURL अनुरोध जिसे आप कॉपी और चल सकते हैं
नीचे एक आधिकारिक, कॉपी-पेस्ट करने योग्य अनुरोध है जो एक YouTube URL और 720p वीडियो प्रारूप का उपयोग करता है। YOUR_API_KEY को Zyla से अपनी कुंजी के साथ बदलें:
curl -s -X GET "https://zylalabs.com/api/11016/youtube-download-and-info-api/20761/download?url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DaGSKrC7dGcY&format=720" \
-H "Authorization: Bearer YOUR_API_KEY"
नमूना JSON प्रतिक्रियाएँ
यह आधिकारिक उदाहरण प्रतिक्रिया है। इसमें एक सफलता ध्वज, इस अनुरोध के लिए एक स्थिर आईडी, वीडियो थंबनेल के लिए एक छवि URL, और एक प्रगति URL शामिल है जिसका उपयोग आप कार्य की स्थिति की जांच करने के लिए कर सकते हैं:
{
"success": true,
"id": "2ec15939807689549d3f3115f168be6b9c868105",
"image": "https://i.ytimg.com/vi/aGSKrC7dGcY/hqdefault.jpg",
"progress_url": "https://youtube-api-progress-copy-development.up.railway.app/api/progress?id=2ec15939807689549d3f3115f168be6b9c868105"
}
अन्य मान्य अनुरोधों के लिए आपको जो संरचना अपेक्षित है (मान रनटाइम पर भिन्न होंगे):
{
"success": true,
"id": "2ec15939807689549d3f3115f168be6b9c868105",
"image": "https://i.ytimg.com/vi/aGSKrC7dGcY/hqdefault.jpg",
"progress_url": "https://youtube-api-progress-copy-development.up.railway.app/api/progress?id=2ec15939807689549d3f3115f168be6b9c868105"
}
अपनी पार्सिंग लॉजिक को वायर करने के लिए इस स्कीमा का उपयोग करें। उदाहरण के लिए, डाउनलोड कार्य शुरू होने पर तुरंत अपने UI में छवि दिखाएँ, और उपयोगकर्ता की कार्रवाई को कार्य से लिंक करने के लिए आईडी को बनाए रखें:
{
"success": true,
"id": "2ec15939807689549d3f3115f168be6b9c868105",
"image": "https://i.ytimg.com/vi/aGSKrC7dGcY/hqdefault.jpg",
"progress_url": "https://youtube-api-progress-copy-development.up.railway.app/api/progress?id=2ec15939807689549d3f3115f168be6b9c868105"
}
प्रतिक्रिया फ़ील्ड की व्याख्या करना
- success: true का अर्थ है कि अनुरोध स्वीकार किया गया था और एक कार्य बनाया गया था।
- id: परिणामी कार्य के लिए एक अद्वितीय पहचानकर्ता। ट्रेसबिलिटी के लिए इसे अपनी उपयोगकर्ता कार्रवाई के साथ स्टोर करें।
- image: वीडियो के थंबनेल के लिए एक सीधा URL। UI प्लेसहोल्डर्स और कतार दृश्य के लिए सहायक।
- progress_url: एक लिंक जिसका आप बाहरी रूप से प्रसंस्करण प्रगति की जांच करने के लिए उपयोग कर सकते हैं। इसका उपयोग उपयोगकर्ता के सामने प्रगति अपडेट प्रदान करने या आंतरिक निगरानी के लिए करें। ऑडियो डाउनलोड में समय-संवेदनशील लिंक होते हैं (2 घंटे बाद समाप्त होते हैं), इसलिए उपयोगकर्ता प्रवाह को तदनुसार समन्वयित करें।
Python उदाहरण: अनुरोध और पार्स
निम्नलिखित Python स्निपेट दिखाता है कि डाउनलोड एंडपॉइंट को कैसे कॉल करें, प्रतिक्रिया को मान्य करें, और उन फ़ील्ड को निकालें जिनका आप वास्तव में अपने ऐप में उपयोग करेंगे। यह cURL उदाहरण में दिखाए गए समान अनुरोध से मेल खाता है:
import os
import urllib.parse
import requests
API_KEY = os.environ.get("ZYLA_API_KEY", "YOUR_API_KEY")
BASE_URL = "https://zylalabs.com/api/11016/youtube-download-and-info-api/20761/download"
def request_download(youtube_url: str, fmt: str):
params = {
"url": youtube_url,
"format": fmt
}
headers = {
"Authorization": f"Bearer {API_KEY}"
}
# यदि आपका URL विशेष वर्णों को शामिल करता है, तो मैन्युअल URLs बनाते समय इसे URL एन्कोड करें;
# अनुरोध params dict को सही ढंग से संभालेगा।
resp = requests.get(BASE_URL, params=params, headers=headers, timeout=30)
resp.raise_for_status()
data = resp.json()
# मजबूती के लिए न्यूनतम आकार जांचें
if not isinstance(data, dict) or "success" not in data:
raise ValueError("Unexpected response shape")
if not data.get("success"):
# API अमान्य इनपुट के लिए success=false वापस कर सकती है; इसे सुचारू रूप से संभालें।
# आप निदान के लिए डेटा लॉग कर सकते हैं।
raise RuntimeError(f"Request not successful: {data}")
# उन फ़ील्ड को निकालें जिनका आपका ऐप उपयोग करेगा:
job_id = data.get("id")
thumbnail = data.get("image")
progress_link = data.get("progress_url")
return job_id, thumbnail, progress_link
if __name__ == "__main__":
video_url = "https://www.youtube.com/watch?v=aGSKrC7dGcY"
format_choice = "720" # कोई भी समर्थित प्रारूप उपयोग करें: 360p, 480p, 720p, 1080p, 1440p, 2160p, mp3, m4a, flac, opus, wav
job_id, thumbnail, progress_link = request_download(video_url, format_choice)
print("Job ID:", job_id)
print("Thumbnail:", thumbnail)
print("Progress URL:", progress_link)
संदर्भ के लिए, यहाँ वह आधिकारिक JSON है जिसे कोड पार्स करने की उम्मीद करता है:
{
"success": true,
"id": "2ec15939807689549d3f3115f168be6b9c868105",
"image": "https://i.ytimg.com/vi/aGSKrC7dGcY/hqdefault.jpg",
"progress_url": "https://youtube-api-progress-copy-development.up.railway.app/api/progress?id=2ec15939807689549d3f3115f168be6b9c868105"
}
फॉर्मेट चयन और उपयोगकर्ता अनुभव टिप्स
जब आप अपना UI या CLI बना रहे हों, तो केवल उन प्रारूपों को प्रस्तुत करें जिन्हें आपका वर्कफ़्लो डाउनस्ट्रीम संभाल सकता है। कुछ व्यावहारिक दिशानिर्देश:
- सबसे तेज़ वीडियो पूर्वावलोकनों के लिए, 360p या 480p ठीक हैं। आर्काइविंग या संपादन के लिए, 1080p और ऊपर।
- ऑडियो-केवल प्रतिलिपि के लिए, m4a या wav सामान्य विकल्प हैं। याद रखें: ऑडियो डाउनलोड लिंक 2 घंटे बाद समाप्त होते हैं—जब आप कार्य जानकारी प्राप्त करते हैं तो अंतिम फ़ेच तुरंत करें।
- यदि उपयोगकर्ता एक बहुत उच्च संकल्प (1440p/2160p) का चयन करता है, तो उन्हें सूचित करें कि प्रसंस्करण और फ़ाइल आकार बड़े होंगे।
- डाउनलोड समाप्त होने से पहले सही वीडियो की पुष्टि करने के लिए छवि फ़ील्ड से तुरंत छवि प्रदर्शित करें।
ऑपरेशनल तत्परता: विश्वसनीयता, आइडेम्पोटेंसी, और कोटा
इस सप्ताह बिना किसी आश्चर्य के भेजने के लिए:
- वापस किए गए आईडी को अपने स्वयं के डेटाबेस पंक्ति से बांधें जो उपयोगकर्ता कार्रवाई का प्रतिनिधित्व करता है (जैसे, "DownloadRequest" तालिका)। यह आपको ट्रेसबिलिटी देता है।
- यदि आप एक ही वीडियो/फॉर्मेट जोड़ी के लिए कई अनुरोधों को कतारबद्ध करते हैं, तो नए API कॉल करने से पहले अपने पक्ष पर YouTube URL + प्रारूप द्वारा डुप्लिकेट करने पर विचार करें।
- गैर-200 HTTP प्रतिक्रियाओं को संभालें, प्रतिक्रिया शरीर को लॉग करें और केवल तब पुनः प्रयास करें जब उचित हो। अंधाधुंध पुनः प्रयास न करें।
- Zyla पर सदस्यता + कोटा मॉडल को याद रखें। अपने Zyla डैशबोर्ड से अपने शेष कोटा की निगरानी करें और यदि आप पैमाने पर काम करते हैं तो बैकप्रेशर पर विचार करें।
- क्योंकि ऑडियो डाउनलोड लिंक 2 घंटे बाद समाप्त होते हैं, या तो:
- आपने स्टोरेज तैयार करने के बाद तुरंत अपने बैकएंड में अंतिम फ़ाइल फ़ेच शुरू करें, या
- उपयोगकर्ता को समय सीमा के भीतर डाउनलोड करने के लिए प्रेरित करें और यदि आवश्यक हो तो API को फिर से सक्रिय करने के लिए एक-क्लिक रिफ्रेश प्रवाह प्रदान करें।
Zyla APIs के बीच प्रमाणीकरण और पहुंच को एकीकृत करता है, इसलिए आप बाद में संबंधित उपकरण जोड़ सकते हैं बिना नई कुंजियों के। zylalabs.com पर अधिक मीडिया सेवाओं का अन्वेषण करें।
वास्तविक दुनिया के एकीकरण पैटर्न
- आंतरिक समीक्षा कतार: एक छोटा सेवा बनाएं जो एक YouTube URL और लक्षित प्रारूप स्वीकार करती है। सबमिशन पर, डाउनलोड एंडपॉइंट को कॉल करें, आईडी स्टोर करें, और तुरंत छवि दिखाएँ। एक बैकग्राउंड वर्कर समय-समय पर प्रगति URL की जांच कर सकता है और संपत्ति तैयार होने पर समीक्षक को सूचित कर सकता है।
- पॉडकास्ट ऑडियो निष्कर्षण: विकल्प के रूप में mp3 या m4a की पेशकश करें। उपयोगकर्ता द्वारा लिंक चिपकाने के तुरंत बाद डाउनलोड एंडपॉइंट को ट्रिगर करें; जब फ़ाइल आपके डाउनस्ट्रीम प्रवाह में तैयार हो जाए, तो इसे तुरंत अपने ट्रांसक्रिप्शन इंजन को भेजें। 2-घंटे के ऑडियो लिंक विंडो के कारण, इन चरणों को निकटता से जोड़ें।
- LMS में ऑफ़लाइन मॉड्यूल: एक पाठ्यक्रम के लिए जिसमें एम्बेडेड YouTube पाठ हैं, 480p या 720p संस्करणों के लिए पूर्व-अनुरोध करें। कार्य आईडी स्टोर करें और पाठ सूची में छवि थंबनेल को प्रदर्शित करें जबकि डाउनलोड बैकग्राउंड में पूरा होते हैं।
MCP के माध्यम से AI एजेंट से API कॉल करना
यदि आप एक MCP-संगत क्लाइंट (जैसे, Claude Code, Cursor, Windsurf) का उपयोग करते हैं, तो आप एजेंट को MCP गेटवे के माध्यम से Zyla APIs कॉल करने दे सकते हैं। MCP एंडपॉइंट में अपनी Zyla API कुंजी प्रदान करें और एजेंट को हब URL पर प्रमाणित GET करने के लिए निर्देशित करें:
- MCP एंडपॉइंट: MCP
- अपनी API कुंजी पास करें: https://mcp.zylalabs.com/mcp?apikey=YOUR_API_KEY
- एजेंट को सक्रिय करें:
- GET https://zylalabs.com/api/11016/youtube-download-and-info-api/20761/download
- क्वेरी पैरामीटर: url, format
- हेडर: Authorization: Bearer YOUR_API_KEY
स्वाभाविक भाषा में, आप अपने एजेंट से कह सकते हैं: “इस YouTube URL और प्रारूप 720 के साथ YouTube डाउनलोड और जानकारी API के डाउनलोड एंडपॉइंट को कॉल करें, Authorization: Bearer शामिल करें, और आईडी, छवि, और progress_url लौटाएँ।” आधिकारिक नमूने के समान आकार लागू होता है। अपने एजेंट कार्यप्रवाह में बाद के चरणों को टैग करने के लिए लौटाई गई आईडी का उपयोग करें।
समस्या निवारण और मान्यता चेकलिस्ट
- प्रमाणन त्रुटियाँ: सुनिश्चित करें कि प्राधिकरण हेडर बिल्कुल "Bearer YOUR_API_KEY" है जिसमें आपके Zyla डैशबोर्ड से एक मान्य कुंजी है।
- खराब इनपुट: सत्यापित करें कि url एक पूरा YouTube देखने का URL है। सुनिश्चित करें कि प्रारूप सूचीबद्ध मूल्यों में से एक है और यदि URL से जोड़ा गया है तो सही ढंग से एन्कोड किया गया है।
- समय-संवेदनशील ऑडियो लिंक: यदि कोई उपयोगकर्ता 2 घंटे बाद ऑडियो ऑब्जेक्ट लाने का प्रयास करता है, तो अनुरोध को फिर से चलाएं और तुरंत डाउनलोड शुरू करें।
- समर्थित सामग्री प्रकार नहीं: यह एंडपॉइंट केवल नियमित वीडियो को संभालता है। यदि स्रोत एक सीधा स्ट्रीम है, तो उपयोगकर्ता को सूचित करें और कार्रवाई की अनुमति न दें।
- नेटवर्क विश्वसनीयता: डिबगिंग को तेज करने के लिए गैर-2xx प्रतिक्रियाओं के लिए सरल बैकऑफ जोड़ें और शरीर को लॉग करें।
सुरक्षा विचार
- अपनी Zyla API कुंजी को अपने सीक्रेट्स प्रबंधक या पर्यावरण चर में स्टोर करें; इसे कभी भी क्लाइंट-साइड कोड में हार्डकोड न करें।
- API को भेजने से पहले उपयोगकर्ता द्वारा प्रस्तुत YouTube URLs को साफ़ और मान्य करें।
- कभी भी अपने API कुंजी को अविश्वसनीय फ्रंटएंड पर प्रॉक्सी न करें। विश्वसनीय वातावरण में सर्वर-साइड कॉल या एजेंट-साइड उपकरणों को प्राथमिकता दें।
संदर्भ: आधिकारिक अनुरोध और प्रतिक्रिया
सुविधा के लिए, यहाँ त्वरित कॉपी/पेस्ट के लिए आधिकारिक ब्लॉक्स फिर से हैं।
अनुरोध
curl -s -X GET "https://zylalabs.com/api/11016/youtube-download-and-info-api/20761/download?url=https%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DaGSKrC7dGcY&format=720" \
-H "Authorization: Bearer YOUR_API_KEY"
प्रतिक्रिया
{
"success": true,
"id": "2ec15939807689549d3f3115f168be6b9c868105",
"image": "https://i.ytimg.com/vi/aGSKrC7dGcY/hqdefault.jpg",
"progress_url": "https://youtube-api-progress-copy-development.up.railway.app/api/progress?id=2ec15939807689549d3f3115f168be6b9c868105"
}
अक्सर पूछे जाने वाले प्रश्न
मैं कौन से प्रारूप अनुरोध कर सकता हूँ?
वीडियो: 360p, 480p, 720p, 1080p, 1440p, 2160p। ऑडियो: mp3, m4a, flac, opus, wav।
मैं प्रमाणीकरण कैसे करूँ?
प्रत्येक अनुरोध पर हेडर Authorization: Bearer YOUR_API_KEY शामिल करें। सदस्यता लेने के बाद API की Zyla लिस्टिंग पर अपनी कुंजी प्राप्त करें।
क्या ऑडियो लिंक समाप्त होते हैं?
हाँ। ऑडियो डाउनलोड लिंक 2 घंटे बाद समाप्त होते हैं। अपने अंतिम डाउनलोड को तुरंत शुरू करें या यदि आवश्यक हो तो API को फिर से सक्रिय करें।
क्या सीधे स्ट्रीम का समर्थन किया जाता है?
नहीं। यह एंडपॉइंट केवल नियमित वीडियो डाउनलोड का समर्थन करता है।
मैं परीक्षण कैसे शुरू करूँ?
Zyla पर वस्तु पृष्ठ का उपयोग करके अपने 7-दिन के परीक्षण को शुरू करें: YouTube डाउनलोड और जानकारी API पर 7-दिन का परीक्षण शुरू करें.
इसे भेजें
आप YouTube डाउनलोड और जानकारी API को एक घंटे के भीतर एकीकृत कर सकते हैं: URL और प्रारूप के साथ डाउनलोड एंडपॉइंट को कॉल करें, id/image/progress_url पढ़ें, और अपने कार्यप्रवाह को अंतिम रूप देने के लिए एक छोटा बैकग्राउंड कार्य वायर करें। Zyla पर अपना खाता बनाएं और API कुंजी प्राप्त करने के लिए लिस्टिंग से 7-दिन का परीक्षण शुरू करें और इस सप्ताह लाइव जाएं।