সমস্যা সমাধানগাইড
API 401 বা 404 ত্রুটি: ভুল কী, বেস URL বা মডেল আইডি
স্ট্যাটাস কোড পড়ুন, তিনটি জিনিসের মধ্যে কোনটি ভুল (কী, বেস URL, মডেল আইডি) তা খুঁজে বের করুন এবং একটি curl অনুরোধ দিয়ে সমাধান নিশ্চিত করুন।

এই পৃষ্ঠায়
আপনার অনুরোধ একটি স্ট্যাটাস কোড দিয়ে ব্যর্থ হয়েছে এবং আপনি নিশ্চিত নন প্রথমে কী ঠিক করবেন। সংক্ষিপ্ত উত্তর: 401 সাধারণত কী-এর দিকে ইঙ্গিত করে, 404 সাধারণত বোঝায় আপনি ভুল জায়গায় ধাক্কা দিচ্ছেন — হয় ঠিকানাটি (বেস URL এবং পাথ) অথবা মডেল আইডি। তিনটি জিনিস এই ক্রমে পরীক্ষা করুন, এবং একটি curl কমান্ড যা সমাধান প্রমাণ করে।
OpenAI-এর error-codes পৃষ্ঠা (২৬ অক্টোবর ২০২৬-এ যাচাই করা) দুটি 401 বার্তা তালিকাভুক্ত করে: "Invalid Authentication" এবং "Incorrect API key provided"। উভয়ের জন্য প্রদত্ত সমাধান একই: কী পরীক্ষা করুন বা নতুন একটি তৈরি করুন। পৃষ্ঠাটি API-এর জন্য কোনো 404 নথিভুক্ত করে না, তাই 404-এর জন্য নিচের নিয়মটি OpenAI-সামঞ্জস্যপূর্ণ এন্ডপয়েন্টগুলি কীভাবে কাজ করে তা থেকে আসে, সেই পৃষ্ঠা থেকে নয়।
তাদের আলাদা করার দ্রুত উপায়#
টেবিলটি ডানদিকে স্ক্রোল করুন →
| স্ট্যাটাস | সার্ভার যা বলছে | প্রথমে দেখুন |
|---|---|---|
| 401 | সাধারণত: আমি এই কী গ্রহণ করি না | কী, এবং এটি কোন প্রদানকারীর |
| প্রতিটি মডেলে 404 | সাধারণত: এই ঠিকানায় কিছু নেই | বেস URL এবং /v1 |
| শুধু একটি মডেলে 404 | সাধারণত: ঠিকানাটি ঠিক আছে, এই মডেল আইডি জানা নেই | মডেল আইডি |
বার্তার শব্দচয়ন সার্ভার এবং আপনার টুলের উপর নির্ভর করে (Cline, Aider, OpenCode এবং Continue প্রত্যেকে তাদের নিজস্ব উপায়ে ত্রুটি মোড়ায়), তাই সংখ্যা থেকে শুরু করুন, তারপর নিচের curl পরীক্ষা দিয়ে নিশ্চিত করুন।
401: কী এন্ডপয়েন্টের সাথে মেলে না#
ক্লাসিক গল্প: আপনি একটি টুল নতুন প্রদানকারীতে সরিয়েছেন, বেস URL পরিবর্তন করেছেন, এবং কনফিগে পুরানো প্রদানকারীর কী রেখে দিয়েছেন। ঠিকানাটি নতুন, কী পুরানো, এবং সার্ভার 401 উত্তর দেয়। কিছুই ভাঙা নেই; কী শুধু ভিন্ন বাড়ির।
কী পরীক্ষা করবেন:
- কী কোন প্রদানকারী জারি করেছে? এটি অবশ্যই সেই প্রদানকারী হতে হবে যার ঠিকানা আপনি কল করছেন। একটি পরিষেবার কী অন্য পরিষেবায় বৈধ নয়।
- অবাঞ্ছিত অক্ষর। কী-এর সাথে পেস্ট করা একটি স্পেস বা লাইন ব্রেক, বা মানের ভিতরে ঢুকে পড়া উদ্ধৃতি চিহ্ন।
- টুল কোথা থেকে এটি পড়ে। একটি পরিবেশ ভেরিয়েবল যা একটি টার্মিনালে সেট করা আছে কিন্তু আপনার এডিটর যে টার্মিনাল থেকে শুরু হয়েছে সেখানে নেই, এটি একটি ঘন ঘন কারণ। যদি টুলে কনফিগ ফাইল এবং পরিবেশ ভেরিয়েবল উভয়ই থাকে, কোনটি জেতে তা খুঁজে বের করুন।
- একটি প্রত্যাহার বা মুছে ফেলা কী। আপনি যে কী মুছেছেন বা প্রত্যাহার করেছেন তা কাজ করা বন্ধ করে দেয় — একটি নতুন তৈরি করুন এবং কনফিগে রাখুন।
যদি আপনি নিশ্চিত না হন কী কীভাবে কাজ করে বা কোথায় রাখবেন, একটি API কী কী এবং কীভাবে নিরাপদে সংরক্ষণ করবেন সহজ ভাষায় এটি কভার করে।
প্রতিটি মডেলে 404: ঠিকানাটি ভুল#
CheapTokens-এর বেস URL হল https:/। টুল এবং SDK নিজেরাই এন্ডপয়েন্ট পাথ যোগ করে, তাই সাধারণ ভুলগুলি /v1 সম্পর্কে:
/v1অনুপস্থিত: টুল শেষ পর্যন্তhttps:/কল করে।/ api. cheaptokens. dev/ chat/ completions - দ্বিগুণ
/v1: আপনি সম্পূর্ণ পাথ এমন একটি ফিল্ডে পেস্ট করেছেন যা ইতিমধ্যে এটি যোগ করে, এবংhttps:/পান।/ api. cheaptokens. dev/ v1/ v1/ chat/ completions - ভুল ধরন: OpenAI-স্টাইলের টুল এবং OpenAI SDK
/v1সহ ঠিকানা নেয়। Anthropic SDK এবং Claude Code ঠিকানা/v1ছাড়া নেয়:https:/।/ api. cheaptokens. dev
যদি আপনি কখনও ভেবে থাকেন বেস URL ঠিক কী এবং টুল তার কোন অংশ যোগ করে, এই ব্যাখ্যা এটি ধাপে ধাপে দেখায়। Anthropic দিকের জন্য, দেখুন CheapTokens সহ Anthropic Python SDK।
একটি মডেলে 404: মডেল আইডি#
এটি তাদের ধরে যারা একটি মূল্য সারণী বা অন্য প্রদানকারী থেকে একটি নাম কপি করে। একটি মূল্য সারণী DeepSeek- বলতে পারে; API সম্পূর্ণ গেটওয়ে আইডি চায়, ডেভেলপার প্রিফিক্স এবং রিলিজ সহ:
টেবিলটি ডানদিকে স্ক্রোল করুন →
| আপনি কোথায় দেখেছেন | API কী চায় |
|---|---|
| DeepSeek-V4-Flash | deepseek- |
| GLM-5.3-Flash | zai- |
| MiniMax-M2.7 | MiniMaxAI/ |
মূল্য লেবেল থেকে সংক্ষিপ্ত আইডি API গ্রহণ করে না, এবং বানান গুরুত্বপূর্ণ: বড় হাতের অক্ষর, স্ল্যাশ, -0731 প্রত্যয়। স্মৃতি থেকে টাইপ করার পরিবর্তে CheapTokens ডকুমেন্টেশন থেকে আইডি কপি করুন — বিভিন্ন প্রদানকারী একই মডেলের নাম ভিন্নভাবে দেয়। আপনার কী-এর জন্য উপলব্ধ সঠিক আইডি দেখতে, একই Authorization হেডার দিয়ে GET https:/ কল করুন এবং তালিকা থেকে আইডি কপি করুন:
curl https://api.cheaptokens.dev/v1/models \
-H "Authorization: Bearer YOUR_API_KEY"যদি সারণীর নামের যুক্তি অদ্ভুত দেখায়, AI মডেলের নাম কীভাবে পড়বেন অ্যালিয়াস বনাম পিন করা সংস্করণ ব্যাখ্যা করে।
একটি curl কমান্ড দিয়ে সমাধান প্রমাণ করুন#
টুলটিকে ছবির বাইরে নিন এবং সরাসরি API কল করুন। কী প্লেসহোল্ডারটি আপনার নিজের দিয়ে প্রতিস্থাপন করুন:
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-ai/DeepSeek-V4-Flash-0731",
"messages": [{"role": "user", "content": "Say hi in one word."}],
"max_tokens": 20
}'এই একটি অনুরোধে তিনটি সন্দেহভাজনই রয়েছে: হেডারে কী, প্রথম লাইনে বেস URL, বডিতে মডেল আইডি। একটি choices অ্যারে সহ JSON উত্তর মানে তিনটিই সঠিক, এবং আপনার টুল যা ভিন্নভাবে করে সেটাই সমস্যা। যদি এটি ব্যর্থ হয়, একবারে একটি জিনিস পরিবর্তন করুন:
- 401 → CheapTokens থেকে পাওয়া কী দিয়ে বদলান এবং আবার চালান।
- 404 → URL-টি উপরেরটির সাথে অক্ষর ধরে ধরে তুলনা করুন, তারপর মডেল আইডি।
curl কাজ করার পরে, একই তিনটি মান টুলে কপি করুন: কী, বেস URL (https:/, অথবা Anthropic SDK এবং Claude Code-এর জন্য /v1 ছাড়া) এবং সম্পূর্ণ মডেল আইডি।
যদি এটি এখনও কাজ না করে#
- টুলে একই ত্রুটি, curl ঠিক আছে। টুলটি অন্য কোথাও থেকে একটি পুরানো কী বা URL পড়ছে: একটি দ্বিতীয় কনফিগ ফাইল, একটি সংরক্ষিত প্রোফাইল, একটি পরিবেশ ভেরিয়েবল। পরিবর্তনের পরে টুলটি পুনরায় চালু করুন।
- মডেল আইডি সঠিক কিনা নিশ্চিত নন। আপনার কী দিয়ে
GET /v1/modelsকল করুন এবং তালিকা থেকে আইডি কপি করুন। - সংযোগ প্রত্যাখ্যাত, টাইমআউট, সার্টিফিকেট ত্রুটি। এটি 401 বা 404 নয়; দেখুন সাধারণ সংযোগ ত্রুটি।
- প্রথম অনুরোধটি কেমন হওয়া উচিত তা নিশ্চিত নন। আপনার প্রথম API অনুরোধ ধাপে ধাপে যায়, এবং ডকুমেন্টেশন-এ সম্পূর্ণ রেফারেন্স রয়েছে।
যে অভ্যাসটি রাখা মূল্যবান: যখন একটি কল ব্যর্থ হয়, প্রথমে সংখ্যাটি পড়ুন। 401 সাধারণত কী বোঝায়, 404 সাধারণত ঠিকানা বা মডেল আইডি, এবং curl এটি নিষ্পত্তি করে। এটি একটি লগ খোলার আগেই এই ত্রুটিগুলির বেশিরভাগ সমাধান করে।



