आपको एक API की आवश्यकता है ताकि आप प्रोग्रामेटिक रूप से एक YouTube वीडियो को एक ऑडियो फ़ाइल में बदल सकें और इसे इस सप्ताह भेज सकें। इस लेख के अंत तक आपके पास कार्यशील curl और Python कोड होगा जो एक YouTube URL या ID से एक सीधा MP3 डाउनलोड लिंक लौटाता है, और आप जानेंगे कि इसे Zyla API Hub का उपयोग करके अपने मीडिया पाइपलाइन में कैसे एकीकृत किया जाए।
यह API क्या करती है (और मीडिया एकीकरण के लिए यह क्यों महत्वपूर्ण है)
YouTube to Audio API एक YouTube वीडियो को एक ऑडियो फ़ाइल में बदलती है और एक सीधा डाउनलोड लिंक और उपयोगी मेटाडेटा (शीर्षक, अवधि, फ़ाइल आकार) लौटाती है। यह दो सरल एंडपॉइंट्स को उजागर करती है: एक YouTube वीडियो ID स्वीकार करता है; दूसरा एक पूर्ण YouTube URL स्वीकार करता है। यह निम्नलिखित के लिए आदर्श है:
- पॉडकास्ट या व्याख्यान इनजेशन: डाउनस्ट्रीम ट्रांसक्रिप्शन या संक्षेपण के लिए MP3 निकालें।
- ऑडियो क्लिपिंग वर्कफ़्लो: खंडों को काटने, सामान्यीकृत करने या मिश्रण करने के लिए ऑडियो लाएँ।
- सामग्री प्रबंधन: आंतरिक खोज या अनुपालन के लिए वीडियो सामग्री के ऑडियो संस्करणों का संग्रह करें।
- एजेंटिक उपकरण: जब उपयोगकर्ता एक YouTube लिंक छोड़ता है तो एक AI एजेंट को ऑडियो खींचने दें।
आप एक ही कुंजी का उपयोग करके Zyla API Hub पर HTTPS के माध्यम से एंडपॉइंट्स को कॉल करेंगे, जिसे आप मार्केटप्लेस में पुन: उपयोग कर सकते हैं।
Zyla API Hub पर शुरू करना
YouTube to Audio API के लिए API पृष्ठ खोलें और सदस्यता लें। हब एक सदस्यता + कोटा मॉडल का उपयोग करता है, न कि प्रति-कॉल भुगतान। कोई मुफ्त योजना नहीं है; पहला API आमतौर पर आपको अनब्लॉक करने के लिए 7-दिन का परीक्षण या 50 अनुरोध प्रदान करता है। सदस्यता लेने के बाद आपको एक API कुंजी प्राप्त होगी। इस लेख में सभी अनुरोध Authorization: Bearer YOUR_API_KEY हेडर का उपयोग करते हैं।
यहाँ शुरू करने के लिए जाएँ: YouTube to Audio API पर 7-दिन का परीक्षण शुरू करें. आप एक खाते और एक API कुंजी के साथ Zyla API Hub मार्केटप्लेस पर 10,000 से अधिक सार्वजनिक APIs को भी ब्राउज़ कर सकते हैं।
आप जिन एंडपॉइंट्स का उपयोग करेंगे
API Zyla API Hub पर दो GET एंडपॉइंट्स को उजागर करती है। दोनों को Authorization हेडर की आवश्यकता होती है। केवल नीचे सूचीबद्ध पैरामीटर समर्थित हैं।
1) ऑडियो प्राप्त करें (YouTube वीडियो ID द्वारा)
- विधि: GET
- URL: https://zylalabs.com/api/381/youtube-to-audio-api/8884/get-audio
- आवश्यक पैरामीटर: id (string) — YouTube वीडियो ID।
- विवरण: एक YouTube वीडियो ID प्रदान करें ताकि एक सीधा MP3 लिंक और मेटाडेटा प्राप्त किया जा सके।
curl उदाहरण (कॉपी-पेस्ट):
curl -s -X GET "https://zylalabs.com/api/381/youtube-to-audio-api/8884/get-audio?id=xFYQQPAOz7Y" \
-H "Authorization: Bearer YOUR_API_KEY"
आधिकारिक नमूना प्रतिक्रिया:
{
"msg": "success",
"link": "https://theta.123tokyo.xyz/get.php/d/fa/xFYQQPAOz7Y.mp3?n=Eminem%20-%20Lose%20Yourself&uT=R&uN=QWxlam9aeWxhTGFicw%3D%3D&h=TcO7xrzRPZ9cGbw2wXP93w&s=1784312338&uT=R&uN=QWxlam9aeWxhTGFicw%3D%3D",
"status": "ok",
"duration": 327.49718169275,
"title": "Eminem - Lose Yourself",
"progress": 100,
"pc": 0,
"filesize": 4181397
}
आप जिन फ़ील्ड नोट्स का वास्तव में उपयोग करेंगे:
- link: उत्पन्न MP3 के लिए सीधा URL; आप इसे स्ट्रीम या डाउनलोड कर सकते हैं।
- title: वीडियो शीर्षक (फ़ाइल नाम डिफ़ॉल्ट के लिए सहायक)।
- duration: ऑडियो की लंबाई सेकंड में (फ्लोटिंग पॉइंट)।
- filesize: ऑडियो फ़ाइल का आकार बाइट्स में।
- status और msg: संचालनात्मक स्थिति; सरल सफलता जांच के लिए सहायक।
2) ऑडियो डाउनलोड करें (पूर्ण YouTube URL द्वारा)
- विधि: GET
- URL: https://zylalabs.com/api/381/youtube-to-audio-api/22174/download-audio
- आवश्यक पैरामीटर: url (string) — पूर्ण YouTube URL।
- विवरण: एक डाउनलोड करने योग्य ऑडियो URL प्राप्त करने के लिए एक पूर्ण YouTube URL प्रदान करें।
curl उदाहरण (कॉपी-पेस्ट):
आधिकारिक नमूना प्रतिक्रिया:
फ़ील्ड नोट्स:
- downloadUrl: एक URL जिसे आप प्रदान किए गए YouTube वीडियो के लिए ऑडियो डाउनलोड करने के लिए GET कर सकते हैं।
कब प्रत्येक एंडपॉइंट का उपयोग करें
- क्या आपके पास पहले से वीडियो ID है (जैसे, “xFYQQPAOz7Y”)? ऑडियो प्राप्त करें का उपयोग करें। आपको एक सीधा MP3 लिंक मिलेगा साथ ही अवधि, शीर्षक, प्रगति, और फ़ाइल आकार।
- क्या आपके पास एक पूर्ण YouTube URL है (जैसे, https://www.youtube.com/watch?v=_Yhyp-_hX2s)? ऑडियो डाउनलोड करें का उपयोग करें। आपको उस संसाधन के लिए एक डाउनलोड करने योग्य URL मिलेगा।
यदि आपको लिंक के साथ मेटाडेटा (अवधि/शीर्षक/फ़ाइल आकार) की आवश्यकता है, तो ID के साथ ऑडियो प्राप्त करें को प्राथमिकता दें। यदि आपके इनपुट उपयोगकर्ता-पेस्ट किए गए URLs हैं, तो न्यूनतम पूर्व-प्रसंस्करण के लिए ऑडियो डाउनलोड करें से शुरू करें।
एक कार्यशील Python उदाहरण
यह Python नमूना ऑडियो प्राप्त करें एंडपॉइंट को कॉल करने, प्रतिक्रिया को मान्य करने और लौटाए गए लिंक का उपयोग करके MP3 को डिस्क पर डाउनलोड करने का प्रदर्शन करता है। YOUR_API_KEY को API पृष्ठ से अपनी कुंजी के साथ बदलें।
import os
import sys
import json
import time
import urllib.parse
import requests
API_KEY = os.getenv("ZYLALABS_API_KEY", "YOUR_API_KEY")
VIDEO_ID = "xFYQQPAOz7Y" # उदाहरण ID; उत्पादन में बदलें
def get_audio_by_id(video_id: str):
url = "https://zylalabs.com/api/381/youtube-to-audio-api/8884/get-audio"
params = {"id": video_id}
headers = {"Authorization": f"Bearer {API_KEY}"}
resp = requests.get(url, headers=headers, params=params, timeout=60)
resp.raise_for_status()
return resp.json()
def download_file(file_url: str, out_path: str):
with requests.get(file_url, stream=True, timeout=300) as r:
r.raise_for_status()
with open(out_path, "wb") as f:
for chunk in r.iter_content(chunk_size=1_048_576): # 1MB
if chunk:
f.write(chunk)
def main():
data = get_audio_by_id(VIDEO_ID)
# दस्तावेज़ित फ़ील्ड के आधार पर बुनियादी जांच
if data.get("status") != "ok" or data.get("msg") != "success":
print("परिवर्तन सफल नहीं हुआ:", json.dumps(data, indent=2))
sys.exit(1)
link = data.get("link")
title = data.get("title") or VIDEO_ID
duration = data.get("duration")
size_bytes = data.get("filesize")
if not link:
print("कोई डाउनलोड लिंक नहीं लौटा:", json.dumps(data, indent=2))
sys.exit(1)
# एक सुरक्षित फ़ाइल नाम बनाएं
safe_title = "".join(c for c in title if c.isalnum() or c in (" ", "-", "_")).strip()
filename = f"{safe_title or VIDEO_ID}.mp3"
print(f"डाउनलोड कर रहे हैं: {title} ({duration:.2f}s, {size_bytes} bytes)")
download_file(link, filename)
print(f"{filename} में सहेजा गया")
if __name__ == "__main__":
main()
नोट्स:
- दोनों एंडपॉइंट्स के लिए Authorization हेडर आवश्यक है।
- अवधि सेकंड में एक फ्लोटिंग-पॉइंट संख्या है।
- filesize बाइट्स में है; प्रगति बार या डिस्क कोटा जांच के लिए इसका उपयोग करें।
- बड़े डाउनलोड स्ट्रीम करें ताकि पूरी फ़ाइल को RAM में लोड करने से बचा जा सके।
व्यावहारिक सुझाव और एकीकरण विवरण
- पुनः प्रयास रणनीति: तीसरे पक्ष के डाउनलोड लिंक पर नेटवर्क हॉप्स में अंतराल हो सकते हैं। अंतिम फ़ाइल डाउनलोड को पुनः प्रयास में लपेटें जिसमें वृद्धि के साथ वापस जाना हो।
- फ़ाइल नाम सुरक्षा: लौटाए गए शीर्षक का उपयोग करें, लेकिन अवैध फ़ाइल सिस्टम वर्णों से बचने के लिए इसे साफ करें।
- कैशिंग: यदि आप बार-बार एक ही YouTube संसाधन को संसाधित करते हैं, तो समय और कोटा बचाने के लिए वीडियो ID द्वारा की गई अंतिम MP3 को अपनी ओर कैश करें।
- मेटाडेटा स्थिरता: उपयोगकर्ता अनुभव तत्वों जैसे अनुमानित डाउनलोड समय को शक्ति देने के लिए अपनी संपत्ति रिकॉर्ड के साथ अवधि और फ़ाइल आकार संग्रहीत करें।
- पृष्ठभूमि कार्य: API विलंबताओं को अपने अनुरोध पथ से दूर रखने के लिए रूपांतरण और डाउनलोड को असिंक्रोनस रूप से चलाएँ।
सामान्य मीडिया वर्कफ़्लो जिन्हें आप इस सप्ताह भेज सकते हैं
- ट्रांसक्रिप्शन पाइपलाइन: एक पेस्ट किए गए YouTube URL पर ऑडियो डाउनलोड करें, MP3 प्राप्त करें, फिर इसे अपने स्पीच-टू-टेक्स्ट टूल को सौंपें।
- स्निपेट जनरेटर: ऑडियो और मेटाडेटा खींचने के लिए ऑडियो प्राप्त करें का उपयोग करें, फिर सामाजिक वितरण के लिए 30–60 सेकंड के टीज़र काटें।
- ज्ञान इनजेशन: नियमित रूप से लंबे शैक्षिक सामग्री को MP3 में परिवर्तित करें ताकि डाउनस्ट्रीम अनुक्रमण और अर्थपूर्ण खोज के लिए।
- एजेंट हैंडऑफ: एक चैटबॉट को एक YouTube URL स्वीकार करने दें, API को कॉल करें, और उपयोगकर्ता को डाउनलोड करने के लिए एक ऑडियो लिंक लौटाएँ।
MCP के माध्यम से AI एजेंट से इस API को कॉल करना
हर Zyla API को AI एजेंटों से कॉल किया जा सकता है जो मॉडल संदर्भ प्रोटोकॉल (MCP) का समर्थन करते हैं। अपने MCP-संगत क्लाइंट को अपने कुंजी के साथ क्वेरी पैरामीटर के रूप में MCP एंडपॉइंट पर इंगित करें: https://mcp.zylalabs.com/mcp?apikey=YOUR_API_KEY। वहां से, आपका एजेंट ऊपर संदर्भित YouTube to Audio API एंडपॉइंट्स पर समान HTTPS कॉल कर सकता है। एजेंट कॉन्फ़िगरेशन विवरण के लिए, MCP संसाधन देखें।
एजेंटों के लिए सामान्य प्रवाह:
- उपयोगकर्ता इनपुट स्वीकार करें (YouTube URL या ID)।
- संबंधित एंडपॉइंट चुनें (IDs के लिए ऑडियो प्राप्त करें; पूर्ण URLs के लिए ऑडियो डाउनलोड करें)।
- अंतिम MP3 डाउनलोड लिंक को उपयोगकर्ता या श्रृंखला में अगले उपकरण को लौटाएँ।
समस्या निवारण
- 401 अनधिकृत: सुनिश्चित करें कि Authorization हेडर मौजूद है और बियरर टोकन आपके सक्रिय कुंजी है जो मार्केटप्लेस से है।
- गायब या अमान्य पैरामीटर: प्रत्येक एंडपॉइंट को ठीक एक पैरामीटर की आवश्यकता होती है (ऑडियो प्राप्त करने के लिए id, ऑडियो डाउनलोड करने के लिए url)। फ़ॉर्मेटिंग और क्वेरी स्ट्रिंग के लिए URL-कोडिंग की पुष्टि करें।
- धीमे डाउनलोड: फ़ाइल को स्ट्रीम करें और यदि कई उपयोगकर्ताओं को संपत्तियों का पुनर्वितरण कर रहे हैं तो अपनी ओर एक CDN पर विचार करें।
- कोटा योजना: मार्केटप्लेस सदस्यता + कोटा का उपयोग करता है। अपने उपयोग की निगरानी करें और एक योजना चुनें जो आपके साप्ताहिक रूपांतरण मात्रा को कवर करती है। वर्तमान पहुंच विकल्पों और मूल्य निर्धारण के लिए API पृष्ठ की जांच करें।
सुरक्षा और अनुपालन अनुस्मारक
- ऑडियो को परिवर्तित और संग्रहीत करते समय सामग्री अधिकारों और शर्तों का सम्मान करें।
- तीसरे पक्ष के URLs को हार्डकोड करने के बजाय मांग पर डाउनलोड लिंक को फिर से उत्पन्न करें जो समाप्त हो सकते हैं।
- केवल वही स्टोर करें जो आपको चाहिए: अपने उपयोग के मामले के लिए ऑडियो और न्यूनतम मेटाडेटा (शीर्षक, अवधि, फ़ाइल आकार) को कैश करें।
कॉपी-पेस्ट: न्यूनतम JavaScript फ़ेच स्निपेट
यदि आप JavaScript पसंद करते हैं, तो यहाँ एक छोटा उदाहरण है जो ID द्वारा ऑडियो प्राप्त करने का लक्ष्य रखता है और सीधे MP3 लिंक को लॉग करता है:
const API_KEY = "YOUR_API_KEY";
const videoId = "xFYQQPAOz7Y";
async function getAudioLinkById(id) {
const url = new URL("https://zylalabs.com/api/381/youtube-to-audio-api/8884/get-audio");
url.searchParams.set("id", id);
const resp = await fetch(url.toString(), {
method: "GET",
headers: { "Authorization": `Bearer ${API_KEY}` }
});
if (!resp.ok) {
throw new Error(`HTTP ${resp.status}`);
}
const data = await resp.json();
if (data.status !== "ok" || data.msg !== "success" || !data.link) {
throw new Error(`परिवर्तन तैयार नहीं है या विफल: ${JSON.stringify(data)}`);
}
return {
mp3Url: data.link,
title: data.title,
durationSec: data.duration,
sizeBytes: data.filesize
};
}
getAudioLinkById(videoId)
.then(info => {
console.log("MP3 URL:", info.mp3Url);
console.log("शीर्षक:", info.title);
console.log("अवधि (सेकंड):", info.durationSec);
console.log("आकार (बाइट्स):", info.sizeBytes);
})
.catch(err => {
console.error("त्रुटि:", err);
});
शिपिंग चेकलिस्ट
एक बैच इनजेशन कार्य के लिए
- इनपुट सामान्यीकरण: जब आपको मेटाडेटा (ऑडियो प्राप्त करें) की आवश्यकता हो, तो किसी भी पेस्ट किए गए YouTube URL को ID में परिवर्तित करें, या URL को जैसा है वैसा पास करें (ऑडियो डाउनलोड करें)।
- समानांतरता: अपने कंप्यूट और नेटवर्क क्षमता के अनुसार समवर्ती रूपांतरण और डाउनलोड को थ्रॉटल करें।
- स्टोरेज कुंजी: अपने सिस्टम में कैनोनिकल एसेट कुंजी के रूप में YouTube वीडियो ID का उपयोग करें।
- त्रुटि हैंडलिंग: अस्थायी विफलताओं पर अंतिम फ़ाइल डाउनलोड को पुनः प्रयास करें; 4xx त्रुटियों पर, लॉग करें और छोड़ें।
एक उपयोगकर्ता-प्रेरित डाउनलोड बटन के लिए
- सर्वर कॉल: अपने API कुंजी की सुरक्षा के लिए एंडपॉइंट को सर्वर-साइड पर हिट करें, न कि ब्राउज़र से।
- अस्थायी URLs: पुराने URLs से बचने के लिए क्लिक पर एक ताजा लिंक प्राप्त करें।
- प्रगति UI: प्रगति और अवधि की गणना के लिए फ़ाइल आकार का उपयोग करें ताकि "समय शेष" का अनुमान लगाया जा सके।
सारांश: उपयोग करने के लिए सटीक एंडपॉइंट्स
- GET https://zylalabs.com/api/381/youtube-to-audio-api/8884/get-audio?id=YOUR_VIDEO_ID — लिंक, शीर्षक, अवधि, प्रगति, फ़ाइल आकार लौटाता है।
- GET https://zylalabs.com/api/381/youtube-to-audio-api/22174/download-audio?url=YOUR_YOUTUBE_URL — प्रदान किए गए वीडियो URL के लिए downloadUrl लौटाता है।
दोनों के लिए प्रमाणीकरण हेडर: Authorization: Bearer YOUR_API_KEY।
अक्सर पूछे जाने वाले प्रश्न
प्रश्न: क्या मुझे पूर्ण URL की आवश्यकता है या केवल वीडियो ID?
उत्तर: यदि आपके पास वीडियो ID है और MP3 लिंक के साथ मेटाडेटा चाहते हैं, तो ऑडियो प्राप्त करें का उपयोग करें। यदि आपके पास पूर्ण YouTube URL है, तो ऑडियो डाउनलोड करें का उपयोग करें।
प्रश्न: फ़ाइल आकार क्या दर्शाता है?
उत्तर: यह बाइट्स में MP3 का आकार है। इसका उपयोग बैंडविड्थ आवश्यकताओं का अनुमान लगाने और प्रगति बार को रेंडर करने के लिए करें।
प्रश्न: क्या मैं इसे AI एजेंट से कॉल कर सकता हूँ?
उत्तर: हाँ। अपने MCP-संगत क्लाइंट को MCP एंडपॉइंट (https://mcp.zylalabs.com/mcp?apikey=YOUR_API_KEY) पर इंगित करें और एजेंट को ऊपर दिखाए गए समान API URLs को कॉल करने दें।
प्रश्न: बिलिंग कैसे संभाली जाती है?
उत्तर: Zyla एक सदस्यता + कोटा मॉडल का उपयोग करता है, न कि प्रति-कॉल भुगतान। कोई मुफ्त योजना नहीं है। पहला API आमतौर पर आपको शुरू करने के लिए 7-दिन का परीक्षण या 50 अनुरोध प्रदान करता है। वर्तमान पहुंच विकल्पों और मूल्य निर्धारण के लिए API पृष्ठ की जांच करें।
प्रश्न: मुझे कौन से हेडर की आवश्यकता है?
उत्तर: हर अनुरोध में Authorization: Bearer YOUR_API_KEY शामिल करें।
क्या आप अपने मीडिया प्रवाह को लागू करने के लिए तैयार हैं? अपनी कुंजी प्राप्त करें और अब वीडियो को MP3 में परिवर्तित करना शुरू करें: YouTube to Audio API पर 7-दिन का परीक्षण शुरू करें.