[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"api-page:youtube-to-telegram-uploader-api":3},{"status":4,"api":5,"seo":481},"success",{"blocked":6,"description":7,"about":8,"stats":9,"name":11,"title":12,"slug":13,"logo":14,"created_at":15,"agent":16,"user":28,"endpoint_groups":31,"faqs":423,"features":430,"periodic_plans":431,"payasyougo_plans":480},false,"Enterprise-grade media bridge: Seamlessly transfer video and audio from global platforms to Telegram. Features advanced restriction bypass, high-speed streaming, and background task processing.","## 🚀 The Ultimate Cloud-to-Cloud Media Bridge\n\nElevate your Telegram automation with a robust API designed to handle complex media transfers. This solution acts as a high-performance middleware, retrieving content from major video platforms and delivering it directly to Telegram clouds without consuming your local bandwidth.\n\n### 🌟 Why This API?\n\n#### 🛡️ Advanced Access Technology (Restriction Bypass)\nStruggling with server-side blocks or regional restrictions? Our API utilizes a **proprietary routing engine** that navigates through complex anti-bot protections. It ensures high success rates even on datacenter IPs typically flagged by content providers.\n\n#### ⚡ Smart Cloud Transfer\nDon't waste resources downloading files locally. The API performs **direct cloud-to-cloud streaming**. It processes video and audio chunks in real-time, handling large files (up to 2GB) efficiently while maintaining the highest available quality.\n\n#### 🔒 Private & Secure Access\nBeyond public videos, our architecture supports **Authenticated Sessions**. This allows your application to securely access private playlists, age-gated content, and premium formats on behalf of the user, strictly adhering to privacy standards.\n\n#### 📡 Universal Metadata Extraction\nGet more than just the file. The API serves as a unified gateway to fetch detailed metadata (titles, thumbnails, duration, and stream formats) from multiple platforms using a single, consistent JSON structure.\n\n#### ⚙️ Asynchronous Task Management\nBuilt for scalability. Submit upload requests and receive a `Job ID` instantly. Our system processes heavy media tasks in the background, allowing you to **monitor progress in real-time**, ensuring your application remains responsive even during heavy loads.\n\n---\n\n### 🎯 Ideal Use Cases:\n* **Content Aggregation Bots:** Automatically mirror channels to Telegram.\n* **Media Archiving Services:** Backup streams and playlists.\n* **Cross-Platform Sharing:** Repost content seamlessly.\n* **Enterprise Monitoring:** Track and relay video content.\n\n### 💻 Developer Ready\n* **Simple Integration:** Standard RESTful endpoints.\n* **Reliable Uptime:** Optimized for 24/7 operation.\n* **Clean JSON Output:** No parsing headaches.",{"score":10},"2.19","YouTube to Telegram Uploader","YouTube to Telegram Uploader API","youtube-to-telegram-uploader-api","https://cdn.jojapi.com/api/e0207e08-f007-4251-bce0-2589d0254edf","2026-08-31 13:31:09",{"enabled":17,"closed":18,"request_enabled":6,"catalog_url":19,"discovery_url":20,"directory_url":21,"rails":22,"networks":25,"docs":27},true,null,"https://you2tele.jojapi.net/_jojapi/agent/plans","https://you2tele.jojapi.net/.well-known/x402","https://agents.jojapi.net/apis/youtube-to-telegram-uploader-api",[23,24],"x402","mpp",[26],"eip155:8453","https://docs.jojapi.com/consumers/agents",{"nick":29,"name":30,"verified":6,"website":18},"ahmed-ayyad","Ahmed Ayyad",[32,99,257,375],{"endpoints":33,"name":98,"description":40,"ungrouped":6},[34],{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":35,"description":42,"method":43,"name":44,"url_path":45,"root_url":46,"parameters":47,"responses":67,"result_stats":92},[36],{"name":37,"slug":38,"cost":39,"label":40,"avg":41},"Requests","requests","1","",0.94,"If `query` is a URL, returns full video metadata (same as `/video_info`).\n\nOtherwise, searches YouTube and returns a list of matching results.\n\nResults are **cached for 1 hour** — identical queries return instantly.\n\nEach result includes title, video ID, URL, thumbnail, channel info, duration, and view count.","GET","search","/search","https://you2tele.jojapi.net",{"url":48,"header":58,"post":64,"body":65,"path":66},[49,55],{"key":50,"example":51,"schema":18,"example_disabled":6,"example_type":52,"value_type":53,"enum_values":18,"default_value":51,"required":6,"name":40,"description":54},"limit","10","string","number","Maximum number of results to return when searching (1–50). Ignored when query is a URL.",{"key":56,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":17,"name":40,"description":57},"query","Search query string, or a full video URL to fetch its metadata directly",[59],{"key":60,"is_auth":17,"example":61,"example_disabled":17,"example_type":52,"name":62,"description":61,"required":17,"always_error":63},"X-JoJAPI-Key","You must log in to get API key","JoJ API Key","Please log in to get API key",[],[],[],[68,76,84],{"status":69,"status_code":70,"description":71,"schema":18,"examples":72,"example":75},"200",200,"Search results, or single video info when a URL is provided",[73],{"name":74,"summary":40,"description":40,"example":75},"Example_1","[{\"id\":\"dQw4w9WgXcQ\",\"title\":\"Rick Astley - Never Gonna Give You Up (Official Video)\",\"description\":\"The official video for Never Gonna Give You Up by Rick Astley.\",\"duration_seconds\":213,\"duration_string\":\"03:33\",\"view_count\":1767304003,\"thumbnail\":\"https:\\/\\/i.ytimg.com\\/vi\\/dQw4w9WgXcQ\\/hq720.jpg\",\"webpage_url\":\"https:\\/\\/www.youtube.com\\/watch?v=dQw4w9WgXcQ\",\"webpage_url_domain\":\"youtube.com\",\"uploader_info\":{\"name\":\"Rick Astley\"}}]",{"status":77,"status_code":78,"description":79,"schema":80,"examples":81,"example":83},"403",403,"Access denied","{\"properties\":{\"message\":{\"type\":\"string\",\"title\":\"Message\",\"description\":\"Human-readable error message\"}},\"type\":\"object\",\"required\":[\"message\"],\"title\":\"ErrorResponse\",\"description\":\"Error response format returned by all endpoints\"}",[82],{"name":74,"summary":40,"description":40,"example":83},"{\"message\":\"Forbidden: Access denied.\"}",{"status":85,"status_code":86,"description":87,"schema":88,"examples":89,"example":91},"422",422,"Validation Error","{\"properties\":{\"detail\":{\"items\":{\"properties\":{\"loc\":{\"items\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"integer\"}]},\"type\":\"array\",\"title\":\"Location\"},\"msg\":{\"type\":\"string\",\"title\":\"Message\"},\"type\":{\"type\":\"string\",\"title\":\"Error Type\"},\"input\":{\"title\":\"Input\"},\"ctx\":{\"type\":\"object\",\"title\":\"Context\"}},\"type\":\"object\",\"required\":[\"loc\",\"msg\",\"type\"],\"title\":\"ValidationError\"},\"type\":\"array\",\"title\":\"Detail\"}},\"type\":\"object\",\"title\":\"HTTPValidationError\"}",[90],{"name":74,"summary":40,"description":40,"example":91},"{\"detail\":[{\"loc\":[],\"msg\":\"\",\"type\":\"\",\"ctx\":{}}]}",{"x2":93,"x3":94,"x4":95,"x5":93,"uptime":96,"avg_latency":97,"avg_credits":94},"6.25","0.00","87.50","93.75","465","YouTube",{"endpoints":100,"name":256,"description":40,"ungrouped":6},[101,201],{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":102,"description":104,"method":43,"name":105,"url_path":106,"root_url":46,"parameters":107,"responses":135,"result_stats":18},[103],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Extracts a direct streaming URL from YouTube and returns a temporary playback link valid for **10 minutes**.\n\nThe playback link (`/youtube_video_stream_play`) streams the file in real time. If video and audio are separate tracks, they are merged on-the-fly.\n\n**Cookies**: Send your YouTube account cookies via the `X-Cookies` header to access private videos, personal playlists, or members-only content.","youtube_video_stream","/youtube_video_stream",{"url":108,"header":127,"post":132,"body":133,"path":134},[109,117,120,124],{"key":110,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":111,"enum_values":112,"default_value":113,"required":6,"name":40,"description":116},"file_format","enum",[113,114,115],"mp4","m4a","mp3","Output file format:\n- `mp4` – Video, MP4\n- `m4a` – Audio, M4A\n- `mp3` – Audio, MP3",{"key":118,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":17,"name":40,"description":119},"video_id","YouTube video ID (10–12 alphanumeric characters, e.g. `dQw4w9WgXcQ`)",{"key":121,"example":122,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":122,"required":6,"name":40,"description":123},"quality","best","Output quality (applied to the chosen format):\n- `best` – Best available quality\n- `worst` – Lowest quality\n- `1080p / 720p / 480p / 360p` – Video at specific resolution\n- `256k / 128k` – Audio at specific bitrate",{"key":125,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":126},"format","**Deprecated** — use `file_format` instead. Accepted values: `audio`, `video`.",[128,129],{"key":60,"is_auth":17,"example":61,"example_disabled":17,"example_type":52,"name":62,"description":61,"required":17,"always_error":63},{"key":130,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":131},"X-Cookies","Netscape-format cookie string from your YouTube account session, used to access content available only to your account (private videos, personal playlists, members-only content, etc.).",[],[],[],[136,142,156,165,172,175,183,190],{"status":69,"status_code":70,"description":137,"schema":138,"examples":139,"example":141},"Successful Response","{\"properties\":{\"url\":{\"type\":\"string\",\"title\":\"Url\",\"description\":\"Temporary streaming\\/playback URL (valid 10 minutes)\"},\"warning\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Warning\",\"description\":\"Deprecation notice if a deprecated parameter was used\"}},\"type\":\"object\",\"required\":[\"url\"],\"title\":\"StreamResponse\",\"description\":\"Response model for streaming URL endpoints\"}",[140],{"name":74,"summary":40,"description":40,"example":141},"{\"url\":\"https:\\/\\/api.example.com\\/youtube_video_stream_play?key=abc123xyz456\"}",{"status":143,"status_code":144,"description":145,"schema":80,"examples":146,"example":149},"400",400,"Invalid input",[147,150,153],{"name":148,"summary":40,"description":40,"example":149},"not_supported_site","{\"message\":\"Unsupported website. This API currently supports: Youtube, Facebook, Tiktok, Instagram, Twitter, Soundcloud.\"}",{"name":151,"summary":40,"description":40,"example":152},"live_not_supported","{\"message\":\"Live videos are not supported. Only pre-recorded videos can be downloaded.\"}",{"name":154,"summary":40,"description":40,"example":155},"invalid_video_id","{\"message\":\"Invalid video_id format.\"}",{"status":77,"status_code":78,"description":157,"schema":80,"examples":158,"example":161},"Access restricted",[159,162],{"name":160,"summary":40,"description":40,"example":161},"age_restricted","{\"message\":\"Age-restricted content requires authentication.\"}",{"name":163,"summary":40,"description":40,"example":164},"premiere_not_started","{\"message\":\"Video premiere has not started yet.\"}",{"status":166,"status_code":167,"description":168,"schema":80,"examples":169,"example":171},"404",404,"Video not found",[170],{"name":74,"summary":40,"description":40,"example":171},"{\"message\":\"Invalid video ID.\"}",{"status":85,"status_code":86,"description":87,"schema":88,"examples":173,"example":91},[174],{"name":74,"summary":40,"description":40,"example":91},{"status":176,"status_code":177,"description":178,"schema":179,"examples":180,"example":182},"425",425,"Download in progress — poll `progress_url` for status","{\"properties\":{\"status\":{\"type\":\"string\",\"title\":\"Status\",\"description\":\"`processing` while download runs in background\",\"default\":\"processing\"},\"download_url\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Download Url\",\"description\":\"Download URL (youtube_to_server only)\"},\"job_id\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Job Id\",\"description\":\"Job ID to track progress (youtube_to_telegram only)\"}},\"type\":\"object\",\"title\":\"TryAfterResponse\",\"description\":\"Response returned when download is queued for background processing\"}",[181],{"name":74,"summary":40,"description":40,"example":182},"{\"job_id\":\"abc123xyz789\",\"status\":\"processing\"}",{"status":184,"status_code":185,"description":186,"schema":80,"examples":187,"example":189},"500",500,"Could not extract stream URLs",[188],{"name":74,"summary":40,"description":40,"example":189},"{\"message\":\"Could not extract video URLs\"}",{"status":191,"status_code":192,"description":193,"schema":80,"examples":194,"example":197},"503",503,"Service temporarily unavailable",[195,198],{"name":196,"summary":40,"description":40,"example":197},"geo_bypass_unavailable","{\"message\":\"Regional bypass service temporarily unavailable.\"}",{"name":199,"summary":40,"description":40,"example":200},"proxy_unavailable","{\"message\":\"Proxy service unavailable. Please try again later.\"}",{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":202,"description":204,"method":43,"name":205,"url_path":206,"root_url":46,"parameters":207,"responses":222,"result_stats":18},[203],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Validates that the video is currently live, then returns a temporary playback link valid for **10 minutes**.\n\nThe playback link (`/youtube_live_hls_play`) delivers the stream as **segmented chunks** with adaptive bitrate — ideal for web players and most streaming clients.\n\n**Adaptive vs MP4**: Use this endpoint for web players and modern streaming clients. Use `/youtube_live_mp4` when you need a format compatible with standard media players that don't support adaptive streaming.\n\nUse `audio_only=true` to receive an audio-only stream.\n\n**Cookies**: Send your YouTube account cookies via the `X-Cookies` header to access private videos, personal playlists, or members-only content.","youtube_live_hls","/youtube_live_hls",{"url":208,"header":216,"post":219,"body":220,"path":221},[209,211],{"key":118,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":17,"name":40,"description":210},"YouTube live stream video ID (10–12 alphanumeric characters)",{"key":212,"example":213,"schema":18,"example_disabled":6,"example_type":52,"value_type":214,"enum_values":18,"default_value":213,"required":6,"name":40,"description":215},"audio_only","false","boolean","Stream audio track only (no video).",[217,218],{"key":60,"is_auth":17,"example":61,"example_disabled":17,"example_type":52,"name":62,"description":61,"required":17,"always_error":63},{"key":130,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":131},[],[],[],[223,226,229,241,244,247,252],{"status":69,"status_code":70,"description":137,"schema":138,"examples":224,"example":141},[225],{"name":74,"summary":40,"description":40,"example":141},{"status":143,"status_code":144,"description":145,"schema":80,"examples":227,"example":149},[228],{"name":148,"summary":40,"description":40,"example":149},{"status":77,"status_code":78,"description":157,"schema":80,"examples":230,"example":161},[231,232,235,237,240],{"name":160,"summary":40,"description":40,"example":161},{"name":233,"summary":40,"description":40,"example":234},"members_only","{\"message\":\"This video is available to this channel's members\"}",{"name":236,"summary":40,"description":40,"example":83},"access_denied",{"name":238,"summary":40,"description":40,"example":239},"country_blocked","{\"message\":\"This video cannot be downloaded because it is not available in the country where the API server is located.\"}",{"name":163,"summary":40,"description":40,"example":164},{"status":166,"status_code":167,"description":168,"schema":80,"examples":242,"example":171},[243],{"name":74,"summary":40,"description":40,"example":171},{"status":85,"status_code":86,"description":87,"schema":88,"examples":245,"example":91},[246],{"name":74,"summary":40,"description":40,"example":91},{"status":184,"status_code":185,"description":248,"schema":80,"examples":249,"example":251},"Failed to start stream",[250],{"name":74,"summary":40,"description":40,"example":251},"{\"message\":\"Failed to start live process\"}",{"status":191,"status_code":192,"description":193,"schema":80,"examples":253,"example":197},[254,255],{"name":196,"summary":40,"description":40,"example":197},{"name":199,"summary":40,"description":40,"example":200},"Stream",{"endpoints":258,"name":374,"description":40,"ungrouped":6},[259,322],{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":260,"description":262,"method":43,"name":263,"url_path":264,"root_url":46,"parameters":265,"responses":282,"result_stats":18},[261],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Downloads a YouTube video or audio track and uploads it to a Telegram channel.\n\n**Caching**: All formats and qualities are cached — subsequent requests for the same video, format, and quality return instantly.\n\n**Webhook**: Supply `webhook_url` to receive a POST notification when the upload completes. The payload will be:\n```json\n{\"job_id\": \"abc123\", \"status\": \"completed\", \"video_id\": \"dQw4w9WgXcQ\", \"result\": {...}, \"timestamp\": 1700000000.0}\n```\n\n**Cookies**: Send your YouTube account cookies via the `X-Cookies` header to access private videos, personal playlists, or members-only content.","youtube_to_telegram","/youtube_to_telegram",{"url":266,"header":276,"post":279,"body":280,"path":281},[267,270,273,274,275],{"key":268,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":269},"webhook_url","Optional URL to receive a POST callback when the download completes.",{"key":110,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":111,"enum_values":271,"default_value":114,"required":6,"name":40,"description":272},[114,115,113],"Output file format:\n- `m4a` – Audio, M4A (result cached)\n- `mp3` – Audio, MP3 (never cached)\n- `mp4` – Video, MP4 (result cached)",{"key":125,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":126},{"key":118,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":17,"name":40,"description":119},{"key":121,"example":122,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":122,"required":6,"name":40,"description":123},[277,278],{"key":60,"is_auth":17,"example":61,"example_disabled":17,"example_type":52,"name":62,"description":61,"required":17,"always_error":63},{"key":130,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":131},[],[],[],[283,288,292,297,300,303,307,316],{"status":69,"status_code":70,"description":137,"schema":284,"examples":285,"example":287},"{\"properties\":{\"file_url\":{\"type\":\"string\",\"title\":\"File Url\",\"description\":\"Telegram message link\"},\"message_id\":{\"type\":\"integer\",\"title\":\"Message Id\",\"description\":\"Telegram message ID\"},\"chat_username\":{\"type\":\"string\",\"title\":\"Chat Username\",\"description\":\"Telegram channel username with @\"},\"status\":{\"description\":\"Upload status\",\"default\":\"completed\",\"type\":\"string\",\"enum\":[\"initializing\",\"downloading\",\"background_processing\",\"completed\",\"failed\"],\"title\":\"JobStatus\"},\"warning\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Warning\",\"description\":\"Deprecation notice if a deprecated parameter was used\"}},\"type\":\"object\",\"required\":[\"file_url\",\"message_id\",\"chat_username\"],\"title\":\"TelegramResponse\",\"description\":\"Response model for \\/youtube_to_telegram endpoint\"}",[286],{"name":74,"summary":40,"description":40,"example":287},"{\"chat_username\":\"@storingayyadmusicbots\",\"file_url\":\"https:\\/\\/t.me\\/storingayyadmusicbots\\/1234\",\"message_id\":1234,\"status\":\"completed\"}",{"status":143,"status_code":144,"description":145,"schema":80,"examples":289,"example":149},[290,291],{"name":148,"summary":40,"description":40,"example":149},{"name":151,"summary":40,"description":40,"example":152},{"status":77,"status_code":78,"description":157,"schema":80,"examples":293,"example":83},[294,295,296],{"name":236,"summary":40,"description":40,"example":83},{"name":160,"summary":40,"description":40,"example":161},{"name":163,"summary":40,"description":40,"example":164},{"status":166,"status_code":167,"description":168,"schema":80,"examples":298,"example":171},[299],{"name":74,"summary":40,"description":40,"example":171},{"status":85,"status_code":86,"description":87,"schema":88,"examples":301,"example":91},[302],{"name":74,"summary":40,"description":40,"example":91},{"status":176,"status_code":177,"description":304,"schema":179,"examples":305,"example":182},"Download in progress — retry the returned URL",[306],{"name":74,"summary":40,"description":40,"example":182},{"status":184,"status_code":185,"description":308,"schema":80,"examples":309,"example":312},"Download failed",[310,313],{"name":311,"summary":40,"description":40,"example":312},"download_failed","{\"message\":\"Timeout while downloading video info\"}",{"name":314,"summary":40,"description":40,"example":315},"format_unavailable","{\"message\":\"Requested video format is not available.\"}",{"status":191,"status_code":192,"description":193,"schema":80,"examples":317,"example":197},[318,319],{"name":196,"summary":40,"description":40,"example":197},{"name":320,"summary":40,"description":40,"example":321},"cache_unavailable","{\"message\":\"Cache service temporarily unavailable. Please try again in a moment.\"}",{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":323,"description":325,"method":43,"name":326,"url_path":327,"root_url":46,"parameters":328,"responses":342,"result_stats":18},[324],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Downloads a YouTube video or audio track to the server and returns a temporary download link valid for **10 minutes**.\n\n**MEGA subscribers** have no file size limit; others are limited to 5 GB.\n\n**Webhook**: Supply `webhook_url` to receive a POST callback when the download completes. The payload will be:\n```json\n{\"job_id\": \"abc123\", \"status\": \"completed\", \"video_id\": \"dQw4w9WgXcQ\", \"result\": {...}, \"timestamp\": 1700000000.0}\n```\n\n**Cookies**: Send your YouTube account cookies via the `X-Cookies` header to access private videos, personal playlists, or members-only content.","youtube_to_server","/youtube_to_server",{"url":329,"header":336,"post":339,"body":340,"path":341},[330,331,332,333,334],{"key":121,"example":122,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":122,"required":6,"name":40,"description":123},{"key":125,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":126},{"key":118,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":17,"name":40,"description":119},{"key":268,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":269},{"key":110,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":111,"enum_values":335,"default_value":113,"required":6,"name":40,"description":116},[113,114,115],[337,338],{"key":60,"is_auth":17,"example":61,"example_disabled":17,"example_type":52,"name":62,"description":61,"required":17,"always_error":63},{"key":130,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":131},[],[],[],[343,348,353,357,360,363,366,369],{"status":69,"status_code":70,"description":137,"schema":344,"examples":345,"example":347},"{\"properties\":{\"download_url\":{\"type\":\"string\",\"title\":\"Download Url\",\"description\":\"Temporary download URL (valid 10 minutes)\"},\"key\":{\"type\":\"string\",\"title\":\"Key\",\"description\":\"Temporary download key\"},\"video_id\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Video Id\",\"description\":\"YouTube video ID\"},\"video_title\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Video Title\",\"description\":\"Video title\"},\"duration\":{\"anyOf\":[{\"type\":\"integer\"},{\"type\":\"null\"}],\"title\":\"Duration\",\"description\":\"Video duration in seconds\"},\"status\":{\"description\":\"Download status\",\"default\":\"completed\",\"type\":\"string\",\"enum\":[\"initializing\",\"downloading\",\"background_processing\",\"completed\",\"failed\"],\"title\":\"JobStatus\"},\"warning\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Warning\",\"description\":\"Deprecation notice if a deprecated parameter was used\"}},\"type\":\"object\",\"required\":[\"download_url\",\"key\"],\"title\":\"ServerResponse\",\"description\":\"Response model for \\/youtube_to_server endpoint\"}",[346],{"name":74,"summary":74,"description":40,"example":347},"{\"download_url\":\"https:\\/\\/api.example.com\\/youtube_to_server_download?key=abc123xyz456\",\"duration\":212,\"key\":\"abc123xyz456\",\"status\":\"completed\",\"video_id\":\"dQw4w9WgXcQ\",\"video_title\":\"Rick Astley - Never Gonna Give You Up\"}",{"status":143,"status_code":144,"description":145,"schema":80,"examples":349,"example":155},[350,351,352],{"name":154,"summary":154,"description":40,"example":155},{"name":151,"summary":151,"description":40,"example":152},{"name":148,"summary":148,"description":40,"example":149},{"status":77,"status_code":78,"description":157,"schema":80,"examples":354,"example":83},[355,356],{"name":236,"summary":236,"description":40,"example":83},{"name":163,"summary":163,"description":40,"example":164},{"status":166,"status_code":167,"description":168,"schema":80,"examples":358,"example":171},[359],{"name":74,"summary":74,"description":40,"example":171},{"status":85,"status_code":86,"description":87,"schema":88,"examples":361,"example":91},[362],{"name":74,"summary":74,"description":40,"example":91},{"status":176,"status_code":177,"description":178,"schema":179,"examples":364,"example":182},[365],{"name":74,"summary":74,"description":40,"example":182},{"status":184,"status_code":185,"description":308,"schema":80,"examples":367,"example":312},[368],{"name":311,"summary":311,"description":40,"example":312},{"status":191,"status_code":192,"description":193,"schema":80,"examples":370,"example":197},[371,372,373],{"name":196,"summary":196,"description":40,"example":197},{"name":320,"summary":320,"description":40,"example":321},{"name":199,"summary":199,"description":40,"example":200},"Download",{"endpoints":376,"name":422,"description":40,"ungrouped":6},[377],{"blocked":6,"hidden":6,"agent_price":18,"credits":18,"flexible_credits_description":18,"consumptions":378,"description":380,"method":43,"name":381,"url_path":382,"root_url":46,"parameters":383,"responses":394,"result_stats":18},[379],{"name":37,"slug":38,"cost":39,"label":40,"avg":18},"Fetches metadata for any supported video URL (YouTube, TikTok, Instagram, Facebook, SoundCloud, and more), including title, duration, view count, thumbnail, subtitles, available formats, and uploader info.\n\nResults are **cached for 1 hour** — subsequent requests for the same URL return instantly. Requests with cookies bypass the cache.\n\n**Cookies**: Send your account cookies via the `X-Cookies` header to access private content.","video_info","/video_info",{"url":384,"header":388,"post":391,"body":392,"path":393},[385],{"key":386,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":17,"name":40,"description":387},"video_url","Full video URL from any supported site (YouTube, TikTok, Instagram, Facebook, etc.)",[389,390],{"key":60,"is_auth":17,"example":61,"example_disabled":17,"example_type":52,"name":62,"description":61,"required":17,"always_error":63},{"key":130,"example":40,"schema":18,"example_disabled":6,"example_type":52,"value_type":52,"enum_values":18,"default_value":40,"required":6,"name":40,"description":131},[],[],[],[395,400,404,411,414,417],{"status":69,"status_code":70,"description":137,"schema":396,"examples":397,"example":399},"{\"properties\":{\"id\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Id\",\"description\":\"Video ID\"},\"title\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Title\",\"description\":\"Video title\"},\"description\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Description\",\"description\":\"Video description\"},\"duration_seconds\":{\"anyOf\":[{\"type\":\"integer\"},{\"type\":\"null\"}],\"title\":\"Duration Seconds\",\"description\":\"Duration in seconds\"},\"duration_string\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Duration String\",\"description\":\"Duration as HH:MM:SS\"},\"upload_date\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Upload Date\",\"description\":\"Upload date (YYYYMMDD)\"},\"view_count\":{\"anyOf\":[{\"type\":\"integer\"},{\"type\":\"null\"}],\"title\":\"View Count\",\"description\":\"View count\"},\"concurrent_view_count\":{\"anyOf\":[{\"type\":\"integer\"},{\"type\":\"null\"}],\"title\":\"Concurrent View Count\",\"description\":\"Current concurrent viewer count (live streams)\"},\"thumbnail\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Thumbnail\",\"description\":\"Best thumbnail URL\"},\"language\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Language\",\"description\":\"Video language code\"},\"has_subtitles\":{\"anyOf\":[{\"type\":\"boolean\"},{\"type\":\"null\"}],\"title\":\"Has Subtitles\",\"description\":\"Whether automatic subtitles exist\"},\"subtitle_languages\":{\"anyOf\":[{\"items\":{\"type\":\"string\"},\"type\":\"array\"},{\"type\":\"null\"}],\"title\":\"Subtitle Languages\",\"description\":\"Available automatic subtitle language codes (e.g. 'en', 'ar', 'fr')\"},\"webpage_url\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Webpage Url\",\"description\":\"Full video URL\"},\"webpage_url_domain\":{\"anyOf\":[{\"type\":\"string\"},{\"type\":\"null\"}],\"title\":\"Webpage Url Domain\",\"description\":\"Domain of the video URL (e.g. youtube.com)\"},\"uploader_info\":{\"anyOf\":[{\"additionalProperties\":true,\"type\":\"object\"},{\"type\":\"null\"}],\"title\":\"Uploader Info\",\"description\":\"Uploader\\/channel info\"},\"formats\":{\"anyOf\":[{\"items\":{\"additionalProperties\":true,\"type\":\"object\"},\"type\":\"array\"},{\"type\":\"null\"}],\"title\":\"Formats\",\"description\":\"Available download formats\"}},\"type\":\"object\",\"title\":\"VideoInfoResponse\",\"description\":\"Response model for \\/video_info endpoint\"}",[398],{"name":74,"summary":40,"description":40,"example":399},"{\"id\":{},\"title\":{},\"description\":{},\"duration_seconds\":{},\"duration_string\":{},\"upload_date\":{},\"view_count\":{},\"concurrent_view_count\":{},\"thumbnail\":{},\"language\":{},\"has_subtitles\":{},\"subtitle_languages\":{},\"webpage_url\":{},\"webpage_url_domain\":{},\"uploader_info\":{},\"formats\":{}}",{"status":143,"status_code":144,"description":401,"schema":80,"examples":402,"example":149},"Unsupported site",[403],{"name":74,"summary":40,"description":40,"example":149},{"status":77,"status_code":78,"description":157,"schema":80,"examples":405,"example":83},[406,407,410],{"name":236,"summary":40,"description":40,"example":83},{"name":408,"summary":40,"description":40,"example":409},"geo_blocked","{\"message\":\"This video is not available in your region.\"}",{"name":238,"summary":40,"description":40,"example":239},{"status":166,"status_code":167,"description":168,"schema":80,"examples":412,"example":171},[413],{"name":74,"summary":40,"description":40,"example":171},{"status":85,"status_code":86,"description":87,"schema":88,"examples":415,"example":91},[416],{"name":74,"summary":40,"description":40,"example":91},{"status":184,"status_code":185,"description":418,"schema":80,"examples":419,"example":421},"Failed to fetch metadata",[420],{"name":74,"summary":40,"description":40,"example":421},"{\"message\":\"Failed to fetch video information.\"}","Metadata",[424,427],{"question":425,"answer":426},"What is the maximum file size I can upload to Telegram using this API?","You can upload videos up to 2 GB per request directly from YouTube to your Telegram chat or channel.",{"question":428,"answer":429},"Can I download videos to my own server instead of Telegram?","Yes, the API supports both options: you can either upload videos directly to Telegram or download them directly to your own server using the provided endpoints.",[],[432,448,460,469],{"type":433,"slug":434,"blocked":6,"period":435,"currency":436,"pricing":437,"rate_limit":441,"objects":442,"name":446,"display_name":18,"features":447},"periodic","e2go6n6j2t2nxzciblgdrw9d","1 MONTH","usd",{"price":438,"credits":438,"past_due_timeout_num":439,"past_due_timeout_type":440},0,3,"DAY",{"max_requests":18,"time_window":18},[443],{"id":444,"name":37,"slug":38,"quota":445,"tiers":18},"n35332c22",30,"30 Requests",[],{"type":433,"slug":449,"blocked":6,"period":435,"currency":436,"pricing":450,"rate_limit":452,"objects":455,"name":458,"display_name":18,"features":459},"vx79qyrkeqhxlgmacna7fiso",{"price":451,"credits":438,"past_due_timeout_num":439,"past_due_timeout_type":440},7,{"max_requests":453,"time_window":454},15,1,[456],{"id":444,"name":37,"slug":38,"quota":457,"tiers":18},20000,"20,000 Requests",[],{"type":433,"slug":461,"blocked":6,"period":435,"currency":436,"pricing":462,"rate_limit":463,"objects":464,"name":467,"display_name":18,"features":468},"s31o8gnxg0u32rwcnm4rgxzk",{"price":453,"credits":438,"past_due_timeout_num":439,"past_due_timeout_type":440},{"max_requests":445,"time_window":454},[465],{"id":444,"name":37,"slug":38,"quota":466,"tiers":18},50000,"50,000 Requests",[],{"type":433,"slug":470,"blocked":6,"period":435,"currency":436,"pricing":471,"rate_limit":473,"objects":475,"name":478,"display_name":18,"features":479},"serbror6a67ntlfexrf9xcgu",{"price":472,"credits":438,"past_due_timeout_num":439,"past_due_timeout_type":440},28,{"max_requests":474,"time_window":454},60,[476],{"id":444,"name":37,"slug":38,"quota":477,"tiers":18},120000,"120,000 Requests",[],[],{"canonical":482,"page_title":483,"meta":484},"https://jojapi.com/hub/api/youtube-to-telegram-uploader-api","YouTube to Telegram Uploader API Documentation & Playground - JoJ API",{"description":7,"keywords":485},"API,API Documentation,API Playground,Plans & Pricing,YouTube to Telegram Uploader,ahmed-ayyad"]