Running this by hand? Deploy an agent in 30s → Start
← All builds

YouTube Music API Replacement

Built by MeterCall Team · 2026-04-16

YouTube Music API replacement. Search, playlists, recommendations, and library access metered per call instead of locked YouTube Data quotas. Built on MeterCall.

Node.js REST OAuth 2.0 Cache
See more builds
Pay per call. ~99% cheaper than the SaaS it replaces.
No seats. No subscription. Bring your own API keys or use MeterCall's — live rates in the workspace.
This module has earned $6,270 this month for its builder.
70% of every call goes to the builder · Fork and compete →

Try it live — no signup

Type what you want this module to do. Watch it build in real time. ⌘/Ctrl + Enter to run.
Your module's ready — tell us what you need
Use it, host it, give it a home, or keep building. You pick.

Built on MeterCall

5,000,000+ APIs. 25+ AI models. Pay per call. Bring your own credentials.

Build yours →

Related modules

0x API Replacement1inch API Replacement23andMe API Replacement311 API Aggregator ReplacementAAA APIs ReplacementAdobe Stock API ReplacementAdvancedMD API ReplacementAdvent API Replacement
'; runEl.disabled = true; fetch('https://metercall-claude.patrickjameslinden.workers.dev', { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-MC-Token': (window.__mcToken || '') }, body: JSON.stringify({ prompt: prompt, module_id: slug, history: history }) }).then(async function(res){ if (!res.ok) throw new Error('gateway_'+res.status); var reader = res.body.getReader(); var decoder = new TextDecoder(); var buf = ''; var acc = ''; var last = 0; while (true) { var chunk = await reader.read(); if (chunk.done) break; buf += decoder.decode(chunk.value, {stream:true}); var parts = buf.split('\n\n'); buf = parts.pop(); for (var i=0;i 400 && acc.indexOf('/, '').trim(); if (htmlPart.indexOf(' 20) history.splice(0, history.length - 20); runEl.disabled = false; }).catch(function(err){ statusEl.textContent = 'Error: ' + err.message + ' — try again.'; runEl.disabled = false; }); } })(); '; runEl.disabled = true; fetch('https://metercall-claude.patrickjameslinden.workers.dev', { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-MC-Token': (window.__mcToken || '') }, body: JSON.stringify({ prompt: prompt, module_id: slug, history: history }) }).then(async function(res){ if (!res.ok) throw new Error('gateway_'+res.status); var reader = res.body.getReader(); var decoder = new TextDecoder(); var buf = ''; var acc = ''; var last = 0; while (true) { var chunk = await reader.read(); if (chunk.done) break; buf += decoder.decode(chunk.value, {stream:true}); var parts = buf.split('\n\n'); buf = parts.pop(); for (var i=0;i 400 && acc.indexOf('/, '').trim(); if (htmlPart.indexOf(' 20) history.splice(0, history.length - 20); runEl.disabled = false; }).catch(function(err){ statusEl.textContent = 'Error: ' + err.message + ' — try again.'; runEl.disabled = false; }); } })();