[{"data":1,"prerenderedAt":248},["ShallowReactive",2],{"blog-list":3},[4,182],{"id":5,"title":6,"author":7,"body":8,"category":168,"date":169,"description":170,"draft":171,"extension":172,"image":168,"meta":173,"navigation":174,"path":175,"readTime":168,"seo":176,"stem":177,"tags":178,"__hash__":181},"blog\u002Fblog\u002Fwhy-agents-shouldnt-manage-api-keys.md","Why agents shouldn't manage API keys","Monid",{"type":9,"value":10,"toc":163},"minimark",[11,16,20,23,27,30,126,129,133,156,159],[12,13,15],"h2",{"id":14},"the-problem","The problem",[17,18,19],"p",{},"Agents today juggle dozens of vendor keys. Each provider has its own\nsignup, its own dashboard, its own rate limits, and its own billing\ncycle. The moment your agent needs a second data source, you're back in\na procurement loop — create an account, copy a key, paste it into a\nsecret store, hope the free tier covers your usage.",[17,21,22],{},"That doesn't scale to autonomous workflows.",[12,24,26],{"id":25},"a-better-abstraction","A better abstraction",[17,28,29],{},"Monid brokers the call on the agent's behalf. The agent describes what\nit needs, Monid routes to the right endpoint, meters the usage, and\ndebits a single shared balance. No per-vendor keys, no subscriptions,\nno human in the loop.",[31,32,37],"pre",{"className":33,"code":34,"language":35,"meta":36,"style":36},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","const result = await monid.run(\"exa\", \"\u002Fsearch\", { query: \"openai news\" })\n\u002F\u002F → 18 articles · $0.01 debited from balance\n","ts","",[38,39,40,119],"code",{"__ignoreMap":36},[41,42,45,49,53,57,61,64,67,71,74,77,81,83,86,89,92,94,96,99,103,106,108,111,113,116],"span",{"class":43,"line":44},"line",1,[41,46,48],{"class":47},"spNyl","const",[41,50,52],{"class":51},"sTEyZ"," result ",[41,54,56],{"class":55},"sMK4o","=",[41,58,60],{"class":59},"s7zQu"," await",[41,62,63],{"class":51}," monid",[41,65,66],{"class":55},".",[41,68,70],{"class":69},"s2Zo4","run",[41,72,73],{"class":51},"(",[41,75,76],{"class":55},"\"",[41,78,80],{"class":79},"sfazB","exa",[41,82,76],{"class":55},[41,84,85],{"class":55},",",[41,87,88],{"class":55}," \"",[41,90,91],{"class":79},"\u002Fsearch",[41,93,76],{"class":55},[41,95,85],{"class":55},[41,97,98],{"class":55}," {",[41,100,102],{"class":101},"swJcz"," query",[41,104,105],{"class":55},":",[41,107,88],{"class":55},[41,109,110],{"class":79},"openai news",[41,112,76],{"class":55},[41,114,115],{"class":55}," }",[41,117,118],{"class":51},")\n",[41,120,122],{"class":43,"line":121},2,[41,123,125],{"class":124},"sHwdD","\u002F\u002F → 18 articles · $0.01 debited from balance\n",[17,127,128],{},"The agent never sees a provider key. We hold them, rotate them, and\npool capacity across providers so a throttle on one vendor falls through\nto the next-best option.",[12,130,132],{"id":131},"what-you-get-back","What you get back",[134,135,136,144,150],"ul",{},[137,138,139,143],"li",{},[140,141,142],"strong",{},"One balance"," for every tool, every provider.",[137,145,146,149],{},[140,147,148],{},"Pay-per-call"," pricing with no minimums.",[137,151,152,155],{},[140,153,154],{},"Typed, normalized responses"," so your agent can compare results by\nquality instead of by API quirk.",[17,157,158],{},"That's the whole pitch: stop managing keys, start shipping agents.",[160,161,162],"style",{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":36,"searchDepth":121,"depth":121,"links":164},[165,166,167],{"id":14,"depth":121,"text":15},{"id":25,"depth":121,"text":26},{"id":131,"depth":121,"text":132},null,"2026-06-15","Handing an agent a drawer full of vendor keys is the wrong abstraction. One balance, brokered calls, and metered usage is the right one.",false,"md",{},true,"\u002Fblog\u002Fwhy-agents-shouldnt-manage-api-keys",{"title":6,"description":170},"blog\u002Fwhy-agents-shouldnt-manage-api-keys",[179,180],"agents","infrastructure","ioBYrMqXo7-E5hGjyHrG5-JUl7jIeFX0RZYu8WZ1itE",{"id":183,"title":184,"author":7,"body":185,"category":168,"date":239,"description":240,"draft":171,"extension":172,"image":168,"meta":241,"navigation":174,"path":242,"readTime":168,"seo":243,"stem":244,"tags":245,"__hash__":247},"blog\u002Fblog\u002Fpay-per-call-pricing-for-agents.md","Pay-per-call pricing is the only model that fits agents",{"type":9,"value":186,"toc":234},[187,191,194,198,201,207,211,231],[12,188,190],{"id":189},"subscriptions-are-a-human-abstraction","Subscriptions are a human abstraction",[17,192,193],{},"A monthly seat assumes a person evaluates value, remembers the renewal,\nand cancels when it stops being worth it. Agents do none of that. Point\nan autonomous workflow at a seat-based tool and you either over-pay for\nidle capacity or hit a cliff mid-task.",[12,195,197],{"id":196},"meter-the-call-not-the-month","Meter the call, not the month",[17,199,200],{},"Monid prices every endpoint per call — sometimes per result. The agent\npays for exactly what it used, debited from one balance:",[202,203,204],"blockquote",{},[17,205,206],{},"If a provider fails to deliver, you aren't charged. We only meter\ncalls that return usable data to your agent.",[12,208,210],{"id":209},"why-this-matters-for-builders","Why this matters for builders",[134,212,213,219,225],{},[137,214,215,218],{},[140,216,217],{},"No idle spend."," An agent that runs twice this week costs you two\ncalls, not a month of seats.",[137,220,221,224],{},[140,222,223],{},"Composability."," Mixing ten providers in one workflow is ten line\nitems on one balance, not ten subscriptions to reconcile.",[137,226,227,230],{},[140,228,229],{},"Honest economics."," Per-qualified-lead, per-enriched-contact,\nper-scraped-page — the unit of billing matches the unit of work.",[17,232,233],{},"Agents are software that spends money on your behalf. The billing model\nshould be built for software, not for a human with a calendar reminder.",{"title":36,"searchDepth":121,"depth":121,"links":235},[236,237,238],{"id":189,"depth":121,"text":190},{"id":196,"depth":121,"text":197},{"id":209,"depth":121,"text":210},"2026-06-10","Subscriptions assume a human remembers to cancel. Agents don't. Metered, per-call pricing is the native billing model for autonomous software.",{},"\u002Fblog\u002Fpay-per-call-pricing-for-agents",{"title":184,"description":240},"blog\u002Fpay-per-call-pricing-for-agents",[246,179],"pricing","_qbqy8cVpPY_YGZILtYjAwpxzJELDMc6L2AQPf9vNow",1781653333571]