[{"data":1,"prerenderedAt":345},["ShallowReactive",2],{"docs-nav-titles":3,"page-docs_id-\u002Freference":52},{"en":4,"id":39},{"\u002Fauthentication":5,"\u002Fchangelog":6,"\u002Fguides\u002Fbilling":7,"\u002Fguides\u002Ferrors":8,"\u002Fguides\u002Fjson-output":9,"\u002Fguides\u002Frate-limits":10,"\u002Fguides\u002Freasoning":11,"\u002Fguides\u002Fstreaming":12,"\u002Fguides\u002Ftool-calling":13,"\u002Fguides\u002Ftop-up":14,"\u002F":15,"\u002Fintegrations\u002Faider":16,"\u002Fintegrations\u002Fclaude-code":17,"\u002Fintegrations\u002Fcline":18,"\u002Fintegrations\u002Fcontinue":19,"\u002Fintegrations\u002Fgoose":20,"\u002Fintegrations\u002Fhermes":21,"\u002Fintegrations":22,"\u002Fintegrations\u002Fkilo-code":23,"\u002Fintegrations\u002Flangchain":24,"\u002Fintegrations\u002Foh-my-pi":25,"\u002Fintegrations\u002Fopenai-sdk":26,"\u002Fintegrations\u002Fopenclaw":27,"\u002Fintegrations\u002Fopencode":28,"\u002Fintegrations\u002Fpi":29,"\u002Fintegrations\u002Fvercel-ai-sdk":30,"\u002Fintegrations\u002Fzed":31,"\u002Fmodels":32,"\u002Fquickstart":33,"\u002Freference\u002Fchat-completions":34,"\u002Freference":22,"\u002Freference\u002Fmessages":35,"\u002Freference\u002Fmodels":36,"\u002Freference\u002Fmodels-retrieve":37,"\u002Fsupport":38},"Authentication","Changelog","Billing","Errors & retries","JSON output","Rate limits","Reasoning content","Streaming","Tool calling","Topping up with QRIS","Introduction","Aider","Claude Code","Cline","Continue","Goose","Hermes Agent","Overview","Kilo Code","LangChain (Python)","Oh My Pi","OpenAI SDKs","OpenClaw","OpenCode","Pi","Vercel AI SDK","Zed","Models","Quickstart","Chat completions","Messages","List models","Retrieve a model","Support",{"\u002Fauthentication":40,"\u002Fchangelog":6,"\u002Fguides\u002Fbilling":7,"\u002Fguides\u002Ferrors":41,"\u002Fguides\u002Fjson-output":42,"\u002Fguides\u002Frate-limits":43,"\u002Fguides\u002Freasoning":44,"\u002Fguides\u002Fstreaming":12,"\u002Fguides\u002Ftool-calling":13,"\u002Fguides\u002Ftop-up":45,"\u002F":46,"\u002Fintegrations\u002Faider":16,"\u002Fintegrations\u002Fclaude-code":17,"\u002Fintegrations\u002Fcline":18,"\u002Fintegrations\u002Fcontinue":19,"\u002Fintegrations\u002Fgoose":20,"\u002Fintegrations\u002Fhermes":21,"\u002Fintegrations":47,"\u002Fintegrations\u002Fkilo-code":23,"\u002Fintegrations\u002Flangchain":24,"\u002Fintegrations\u002Foh-my-pi":25,"\u002Fintegrations\u002Fopenai-sdk":48,"\u002Fintegrations\u002Fopenclaw":27,"\u002Fintegrations\u002Fopencode":28,"\u002Fintegrations\u002Fpi":29,"\u002Fintegrations\u002Fvercel-ai-sdk":30,"\u002Fintegrations\u002Fzed":31,"\u002Fmodels":49,"\u002Fquickstart":33,"\u002Freference\u002Fchat-completions":34,"\u002Freference":47,"\u002Freference\u002Fmessages":35,"\u002Freference\u002Fmodels":50,"\u002Freference\u002Fmodels-retrieve":51,"\u002Fsupport":38},"Autentikasi","Error & retry","Output JSON","Rate limit","Konten reasoning","Isi saldo dengan QRIS","Pengantar","Ringkasan","OpenAI SDK","Model","Daftar model","Ambil satu model",{"id":53,"title":54,"body":55,"description":336,"extension":337,"eyebrow":338,"meta":339,"navTitle":47,"navigation":340,"path":341,"seo":342,"stem":343,"__hash__":344},"docs_id\u002Freference\u002Findex.md","Referensi API",{"type":56,"value":57,"toc":328},"minimark",[58,67,72,82,97,100,103,110,118,122,125,129,146,239,243,250,253,259,263,306,310,324],[59,60,61,62,66],"p",{},"API publik mengikuti format OpenAI Chat Completions, jadi SDK resmi OpenAI dan sebagian besar klien yang kompatibel dengan OpenAI bisa langsung dipakai tanpa perubahan. API ini juga melayani format Anthropic Messages di ",[63,64,65],"code",{},"POST \u002Fv1\u002Fmessages",", untuk Claude Code dan SDK Anthropic.",[68,69,71],"h2",{"id":70},"base-url","Base URL",[73,74,80],"pre",{"className":75,"code":77,"language":78,"meta":79},[76],"language-text","https:\u002F\u002Fapi.larasrouter.com\u002Fv1\n","text","",[63,81,77],{"__ignoreMap":79},[59,83,84,85,88,89,92,93,96],{},"Semua request memakai HTTPS. Body request dan respons berformat JSON (",[63,86,87],{},"application\u002Fjson","); respons streaming memakai Server-Sent Events (",[63,90,91],{},"text\u002Fevent-stream","). Prompt besar didukung hingga batas ukuran request; body yang lebih besar ditolak dengan ",[63,94,95],{},"413 request_too_large",".",[68,98,40],{"id":99},"autentikasi",[59,101,102],{},"Kirim API key Anda di salah satu header berikut:",[73,104,108],{"className":105,"code":106,"filename":107,"language":78,"meta":79},[76],"Authorization: Bearer lr_live_…\nx-api-key: lr_live_…\n","Header",[63,109,106],{"__ignoreMap":79},[59,111,112,113,117],{},"Lihat ",[114,115,40],"a",{"href":116},"\u002Fid\u002Fauthentication"," untuk pengelolaan kunci.",[68,119,121],{"id":120},"endpoint","Endpoint",[123,124],"api-operations",{},[68,126,128],{"id":127},"error","Error",[59,130,131,132,134,135,138,139,142,143,96],{},"Setiap error memakai format error OpenAI, kecuali error dari ",[63,133,65],{}," yang memakai format Anthropic (lihat ",[114,136,35],{"href":137},"\u002Fid\u002Freference\u002Fmessages","). Buat logika berdasarkan ",[63,140,141],{},"error.code",", jangan berdasarkan teks pesan: pesan berbahasa Inggris secara default dan berbahasa Indonesia jika request membawa ",[63,144,145],{},"Accept-Language: id",[73,147,152],{"className":148,"code":149,"filename":150,"language":151,"meta":79,"style":79},"language-json shiki shiki-themes github-dark-default github-light-default","{\n  \"error\": {\n    \"message\": \"Saldo tidak mencukupi. Isi ulang saldo untuk melanjutkan.\",\n    \"type\": \"insufficient_quota\",\n    \"code\": \"insufficient_credit\",\n    \"param\": null\n  }\n}\n","Respons error","json",[63,153,154,163,173,189,202,215,227,233],{"__ignoreMap":79},[155,156,159],"span",{"class":157,"line":158},"line",1,[155,160,162],{"class":161},"sUq8j","{\n",[155,164,166,170],{"class":157,"line":165},2,[155,167,169],{"class":168},"sGSaJ","  \"error\"",[155,171,172],{"class":161},": {\n",[155,174,176,179,182,186],{"class":157,"line":175},3,[155,177,178],{"class":168},"    \"message\"",[155,180,181],{"class":161},": ",[155,183,185],{"class":184},"sHdZ9","\"Saldo tidak mencukupi. Isi ulang saldo untuk melanjutkan.\"",[155,187,188],{"class":161},",\n",[155,190,192,195,197,200],{"class":157,"line":191},4,[155,193,194],{"class":168},"    \"type\"",[155,196,181],{"class":161},[155,198,199],{"class":184},"\"insufficient_quota\"",[155,201,188],{"class":161},[155,203,205,208,210,213],{"class":157,"line":204},5,[155,206,207],{"class":168},"    \"code\"",[155,209,181],{"class":161},[155,211,212],{"class":184},"\"insufficient_credit\"",[155,214,188],{"class":161},[155,216,218,221,223],{"class":157,"line":217},6,[155,219,220],{"class":168},"    \"param\"",[155,222,181],{"class":161},[155,224,226],{"class":225},"sYnYM","null\n",[155,228,230],{"class":157,"line":229},7,[155,231,232],{"class":161},"  }\n",[155,234,236],{"class":157,"line":235},8,[155,237,238],{"class":161},"}\n",[240,241],"api-fields",{"part":242},[127],[59,244,245,246,249],{},"Selain error yang tercantum di setiap endpoint, semua path ",[63,247,248],{},"\u002Fv1"," juga bisa mengembalikan error gateway berikut:",[251,252],"api-gateway-errors",{},[59,254,112,255,258],{},[114,256,41],{"href":257},"\u002Fid\u002Fguides\u002Ferrors"," untuk langkah yang perlu diambil pada setiap kode.",[68,260,262],{"id":261},"header-respons","Header respons",[264,265,266,278],"table",{},[267,268,269],"thead",{},[270,271,272,275],"tr",{},[273,274,107],"th",{},[273,276,277],{},"Deskripsi",[279,280,281,292],"tbody",{},[270,282,283,289],{},[284,285,286],"td",{},[63,287,288],{},"X-Laras-Request-ID",[284,290,291],{},"Identitas penagihan request. Ada di respons untuk request yang sudah sampai ke tahap billing; sertakan saat Anda menghubungi support soal tagihan.",[270,293,294,299],{},[284,295,296],{},[63,297,298],{},"Retry-After",[284,300,301,302,305],{},"Di respons ",[63,303,304],{},"429",": jumlah detik yang perlu ditunggu sebelum mencoba lagi.",[68,307,309],{"id":308},"belum-tersedia","Belum tersedia",[59,311,312,313,316,317,319,320,323],{},"API ini melayani ",[63,314,315],{},"POST \u002Fv1\u002Fchat\u002Fcompletions",", ",[63,318,65],{},", dan ",[63,321,322],{},"GET \u002Fv1\u002Fmodels",". Endpoint OpenAI lainnya — seperti embeddings, images, audio, dan Responses API — belum tersedia. Responses API (dipakai Codex CLI) sedang dalam pengembangan.",[325,326,327],"style",{},"html pre.shiki code .sUq8j, html code.shiki .sUq8j{--shiki-default:#E6EDF3;--shiki-light:#1F2328}html pre.shiki code .sGSaJ, html code.shiki .sGSaJ{--shiki-default:#7EE787;--shiki-light:#116329}html pre.shiki code .sHdZ9, html code.shiki .sHdZ9{--shiki-default:#A5D6FF;--shiki-light:#0A3069}html pre.shiki code .sYnYM, html code.shiki .sYnYM{--shiki-default:#79C0FF;--shiki-light:#0550AE}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 .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);}",{"title":79,"searchDepth":175,"depth":175,"links":329},[330,331,332,333,334,335],{"id":70,"depth":165,"text":71},{"id":99,"depth":165,"text":40},{"id":120,"depth":165,"text":121},{"id":127,"depth":165,"text":128},{"id":261,"depth":165,"text":262},{"id":308,"depth":165,"text":309},"API publik Laras Router, dibuat dari kontrak OpenAPI kami. Kompatibel dengan OpenAI dan diautentikasi dengan API key.","md",null,{},true,"\u002Freference",{"title":54,"description":336},"reference\u002Findex","4q7YE3AzCzRZ3cS_4j3ELOs6Tl9u8iThEQlOIYxKCcs",1793333618961]