शुरुआत करेंगाइड
VS Code में पहला API अनुरोध: एक .http फ़ाइल, .env से कुंजी
REST Client एक्सटेंशन के साथ VS Code से CheapTokens को अपना पहला chat completion भेजें, कुंजी को git से बाहर रखें, और उत्तर तथा टोकन उपयोग खोजें।

इस पृष्ठ पर
आप VS Code छोड़े बिना CheapTokens को अपना पहला अनुरोध भेज सकते हैं: REST Client एक्सटेंशन इंस्टॉल करें, एक .http फ़ाइल लिखें, कुंजी को उसके बगल में .env में रखें और Ctrl+Alt+R दबाएँ। उत्तर फ़ाइल के बगल में एक पैनल में खुलता है, और टेक्स्ट तथा टोकन गणना दो फ़ील्ड हैं जिन्हें आप एक नज़र में देख सकते हैं।
अगर आपके पास पहले से एक एडिटर खुला है, तो यह किसी मॉडल को "Hello" कहने के लिए एक और ऐप इंस्टॉल करने से बेहतर है। और अनुरोध एक सादे टेक्स्ट फ़ाइल में रहता है, इसलिए आप इसे कल फिर से चला सकते हैं या किसी साथी के लिए इसे (कुंजी के बिना) कमिट कर सकते हैं। वही अनुरोध भेजने के अन्य तरीके First request with HTTPie और Your first API request with CheapTokens में हैं।
एक्सटेंशन इंस्टॉल करें और कुंजी को .env में लाएँ#
REST Client एक्सटेंशन humao. है। VS Code में F1 दबाएँ, ext install टाइप करें, rest-client खोजें और इसे इंस्टॉल करें। (9 नवंबर 2026 को एक्सटेंशन के README के अनुसार जाँचा गया।)
अब कुंजी। README {{$dotenv NAME}} का वर्णन करता है: यह उसी डायरेक्टरी में स्थित .env फ़ाइल से एक मान पढ़ता है जहाँ आपकी .http फ़ाइल है। यह ठीक वही है जो हम चाहते हैं, क्योंकि कुंजी कभी अनुरोध फ़ाइल में नहीं दिखती। प्रयोग के लिए एक फ़ोल्डर बनाएँ और उसमें दो फ़ाइलें रखें।
.env:
CHEAPTOKENS_API_KEY=paste-your-key-here.gitignore:
.envअपने CheapTokens खाते में कुंजी बनाएँ और प्लेसहोल्डर के बजाय उसे पेस्ट करें। ignore लाइन क्यों मायने रखती है, और अगर कोई कुंजी कभी किसी कमिट में चली जाए तो क्या करें, यह Store an API key safely में है।
क्रम में लगाएँ
सेटअप को सही क्रम में रखें
आइटम खींचें या तीरों का उपयोग करें
- REST Client एक्सटेंशन इंस्टॉल करें
- .env को .gitignore में जोड़ें
- कुंजी को .http फ़ाइल के बगल में .env में रखें
- अनुरोध पर Ctrl+Alt+R दबाएँ
.http फ़ाइल लिखें#
उसी फ़ोल्डर में first.http बनाएँ। सिंटैक्स छोटा है: एक अनुरोध पंक्ति (POST URL HTTP/, मेथड वैकल्पिक है और डिफ़ॉल्ट GET है), हेडर पंक्तियाँ Name: value पहली खाली पंक्ति तक, फिर एक खाली पंक्ति के बाद बॉडी। अनुरोधों को तीन या अधिक # की एक पंक्ति से अलग किया जाता है।
### First request
POST https://api.cheaptokens.dev/v1/chat/completions
Authorization: Bearer {{$dotenv CHEAPTOKENS_API_KEY}}
Content-Type: application/json
{
"model": "zai-org/GLM-5.3-Flash",
"messages": [{ "role": "user", "content": "Hello" }]
}तीन बातें ध्यान दें। पता CheapTokens API बेस, https:/, प्लस / है। मॉडल अपनी पूरी id के साथ लिखा गया है, zai-: एक 390K-कॉन्टेक्स्ट मॉडल जो प्रति उत्तर अधिकतम 8,192 टोकन लिख सकता है। और कुंजी केवल एक {{$dotenv …}} प्लेसहोल्डर है, इसलिए यह फ़ाइल कमिट करने के लिए सुरक्षित है।

अगर आपका सेटअप .env फ़ाइल नहीं उठाता, तो README {{$processEnv NAME}} का भी वर्णन करता है, जो इसके बजाय आपकी मशीन के एनवायरनमेंट से एक वेरिएबल पढ़ता है।
इसे भेजें और उत्तर खोजें#
अनुरोध पंक्ति के ऊपर "Send Request" पर क्लिक करें, या Ctrl+Alt+R दबाएँ (macOS पर Cmd+Alt+R)। आप राइट-क्लिक भी कर सकते हैं या F1 का उपयोग कर सकते हैं। प्रतिक्रिया एक अलग पैनल में खुलती है। अगर आप एक सामान्य एडिटर टैब पसंद करते हैं जिसे आप खोज और फ़ोल्ड कर सकें, तो सेटिंग्स में rest- को true पर सेट करें।
प्रतिक्रिया मानक chat-completions JSON है। पहले दिन दो जगहें मायने रखती हैं:
choices[0].उत्तर का टेक्स्ट है। उसके बगल में,message. content finish_reasonबताता है कि मॉडल क्यों रुका।lengthका अर्थ है कि उत्तर टोकन सीमा से कट गया।usageइस अनुरोध के टोकन गणनाएँ रखता है: आपके भेजे गए टोकन और मॉडल द्वारा लिखे गए टोकन। आप इसी के लिए भुगतान करते हैं, इसलिए हर बार इसे देखें।

स्वयं आज़माएँइसे आज़माएँ: आप कैसे देखेंगे कि कोई उत्तर कट गया?उत्तर दिखाएँ
प्रतिक्रिया में finish_reason देखें। अगर यह length कहता है, तो मॉडल समाप्त होने से पहले टोकन सीमा तक पहुँच गया। बॉडी में एक "max_tokens" पंक्ति जोड़ें, या इसे बढ़ाएँ, और फिर से भेजें।
पैसे का अंदाज़ा लगाने के लिए: मान लें कि आप यह अनुरोध 100 बार भेजते हैं जिसमें लगभग 1,000 टोकन इन और 300 आउट हैं (उदाहरण के लिए एक अनुमान, कोई माप नहीं)।
| मॉडल | इनपुट $/1M | आउटपुट $/1M | प्रति अनुरोध | 100 अनुरोध | OpenRouter, 100 अनुरोध |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.000032 | $0.0032 | $0.0058 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.000045 | $0.0045 | $0.0112 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.000095 | $0.0095 | $0.114 |
प्रति अनुरोध 1,000 इनपुट और 300 आउटपुट टोकन। प्रति 1M टोकन की कीमतें वर्तमान हैं और हमारे टैरिफ के साथ बदलती रहती हैं; OpenRouter कॉलम समान कार्यभार के लिए संदर्भ कीमतें दिखाता है।
तालिका प्रत्येक मॉडल पर उस वर्कलोड की लाइव कीमत दिखाती है, तुलना के लिए एक OpenRouter कॉलम के साथ। एक छोटा "Hello" बहुत कम खर्च करता है।
मॉडल को एक पंक्ति में बदलें#
सादे टेक्स्ट फ़ाइल का सुविधाजनक हिस्सा: एक पंक्ति बदलें और फिर से भेजें। मॉडल id को deepseek- से बदलें (380K कॉन्टेक्स्ट, प्रति उत्तर अधिकतम 32,768 टोकन, दिन के किसी भी समय एक ही कीमत, इनपुट और आउटपुट को मिलाकर कुल मिलाकर OpenRouter से सस्ता) और एक बार फिर Ctrl+Alt+R दबाएँ। वही बॉडी, वही कुंजी, एक अलग उत्तर, और एक अलग usage।
दोनों रखना चाहते हैं? दूसरे मॉडल id के साथ ### पंक्ति के नीचे एक दूसरा अनुरोध पेस्ट करें। प्रत्येक अनुरोध को अपना Send Request लिंक मिलता है, इसलिए आप उन्हें एक के बाद एक चला सकते हैं और तुलना कर सकते हैं। किसी id के बारे में निश्चित नहीं? List models with GET /v1/models सटीक स्ट्रिंग दिखाता है।
अगर यह काम न करे#
जोड़े मिलाएँ
लक्षण को कारण से मिलाएँ
बाईं ओर एक आइटम पर टैप करें, फिर उसका जोड़ा
- 401 Unauthorizedकुंजी खाली या गलत है, अक्सर इसलिए क्योंकि .env .http फ़ाइल के समान फ़ोल्डर में नहीं है
- 404 Not FoundURL पथ या मॉडल id में टाइपो
- उत्तर वाक्य के बीच में रुक जाता है, finish_reason length हैटोकन सीमा पहुँच गई, max_tokens बढ़ाएँ
पहले दो के लिए, API 401 or 404: wrong key, base URL or model id जाँचों के माध्यम से ले जाता है। पूर्ण अनुरोध विवरण CheapTokens docs में हैं, और वर्तमान कीमतें pricing page पर हैं।
यही पूरा वर्कफ़्लो है: एक फ़ाइल, .env में एक कुंजी, एक शॉर्टकट। यहाँ से आप एक सिस्टम संदेश जोड़ सकते हैं, max_tokens बदल सकते हैं, या उसी बॉडी को किसी भी भाषा में कोड में बदल सकते हैं।



