بلاگ پر واپس جائیں

شروعاتگائیڈ

Postman میں OpenAI-compatible API سے پہلی درخواست

Postman سے chat/completions درخواست بھیجیں جس میں Bearer key variable میں محفوظ ہو، اور جواب اور usage فیلڈ پڑھیں۔

از CheapTokens Teamشائع شدہ 5 منٹ کا مطالعہ

CheapTokens API کے لیے model id اور ایک message کے ساتھ Postman request body
اس صفحہ پر
  1. چار اقدامات میں سیٹ اپ کریں
  2. Send دبائیں اور جواب پڑھیں
  3. پہلی درخواست کی لاگت
  4. اگر یہ کام نہ کرے

آپ کے پاس API key ہے اور آپ کوڈ کی ایک لائن لکھنے سے پہلے دیکھنا چاہتے ہیں کہ اصل میں wire پر کیا جاتا ہے۔ Postman بالکل اسی کے لیے اچھا ہے: آپ URL، key اور JSON body بھرتے ہیں، Send دبائیں، اور جواب فوراً نیچے آ جاتا ہے۔ CheapTokens کے لیے درخواست POST https://api.cheaptokens.dev/v1/chat/completions ہے جس میں Authorization: Bearer key اور ایک JSON body ہے جو model کا نام بتاتی ہے۔

نیچے دیے گئے مراحل Postman کی اپنی docs کی پیروی کرتے ہیں (v12، docs سائٹ پر تازہ ترین ورژن، 31 اکتوبر 2026 کو چیک کیا گیا)۔ اگر آپ ٹرمینل پسند کرتے ہیں، تو وہی درخواست Your first API request with CheapTokens میں ہے۔

Postman میں request body: model id، ایک user message، max_tokens
پہلی درخواست کا raw JSON body

چار اقدامات میں سیٹ اپ کریں#

آپ کو صرف چند چیزیں چاہیے: base URL، آپ کی key، ایک model id اور ایک message۔ Postman پہلی دو کو variables میں رکھتا ہے، تاکہ key کبھی بھی خود درخواست میں پیسٹ نہ ہو۔

ترتیب دیں

Postman سیٹ اپ کو ترتیب دیں

  1. variables base_url اور api_key کی تعریف کریں
  2. ایک HTTP request بنائیں: {{base_url}}/chat/completions پر POST
  3. Authorization ٹیب پر Bearer Token منتخب کریں اور {{api_key}} درج کریں
  4. Body ٹیب پر raw > JSON منتخب کریں، body پیسٹ کریں، Send دبائیں

ہر اقدام کے لیے چند تفصیلات۔

درخواست بنائیں۔ بائیں سائیڈبار میں Add آئیکن پر کلک کریں اور HTTP منتخب کریں۔ method ڈراپ ڈاؤن ڈیفالٹ میں GET ہوتا ہے، اسے POST پر تبدیل کریں اور URL درج کریں۔ Postman variables {{variable_name}} کی طرح لکھے جاتے ہیں؛ docs مثال کے طور پر {{base_url}} استعمال کرتی ہیں۔ base_url کو https://api.cheaptokens.dev/v1 کے طور پر بیان کریں اور URL فیلڈ {{base_url}}/chat/completions بن جاتا ہے۔ Postman variables کو strings کے طور پر محفوظ کرتا ہے، جو یہاں ٹھیک ہے۔

key شامل کریں۔ Authorization ٹیب کھولیں، Auth Type ڈراپ ڈاؤن میں Bearer Token منتخب کریں اور Token فیلڈ میں {{api_key}} ڈالیں۔ Postman اسے Bearer فارمیٹ میں Authorization ہیڈر کے طور پر بھیجتا ہے۔ docs بالکل یہی تجویز کرتی ہیں: token کو variable میں رکھیں اور نام سے حوالہ دیں۔ یہ عادت کیوں اہم ہے، یہ Store an API key safely میں ہے۔

body لکھیں۔ Body ٹیب پر raw منتخب کریں، پھر ڈراپ ڈاؤن میں JSON۔ raw bodies کے لیے Postman خود ہی متعلقہ Content-Type سیٹ کرتا ہے، لہذا آپ وہ ہیڈر شامل نہیں کرتے۔ یہ پیسٹ کریں:

json
{
  "model": "deepseek-ai/DeepSeek-V4-Flash-0731",
  "messages": [
    { "role": "user", "content": "Explain in one sentence what a token is." }
  ],
  "max_tokens": 200
}

model id CheapTokens docs سے مکمل gateway_id ہے؛ deepseek-flash جیسا مختصر نام قبول نہیں کیا جاتا۔ max_tokens جواب کی لمبائی کو محدود کرتا ہے، تاکہ پہلا ٹیسٹ لمبا نہ چلے۔ ایک اور Postman تفصیل: JSON body میں // اور /* */ تبصرے بھیجنے سے پہلے ہٹا دیے جاتے ہیں، لہذا آپ ساتھی کے لیے body پر نوٹ لگا سکتے ہیں۔

Send دبائیں اور جواب پڑھیں#

اگر سب کچھ درست ہے، تو response پین OpenAI Chat Completions فارمیٹ میں ایک JSON آبجیکٹ دکھاتا ہے۔ دو جگہیں اہم ہیں:

  • choices[0].message.content جواب کا متن ہے۔
  • usage میں prompt_tokens (جو آپ نے بھیجا) اور completion_tokens (جو model نے لکھا) ہوتا ہے۔ آپ سے اسی کی قیمت لی جاتی ہے، لہذا پہلی ہی درخواست پر اسے دیکھیں۔

choices[0].finish_reason بھی چیک کریں۔ stop کا مطلب ہے کہ model خود ختم ہوا؛ length کا مطلب ہے کہ جواب max_tokens پر پہنچ کر کٹ گیا۔ اگر ایسا نظر آئے تو حد بڑھائیں یا AI answer cut off? Fix finish_reason "length" پڑھیں۔

جواب کھولنے سے پہلے آزمائیں:

خود آزمائیںآزمائیں: آپ max_tokens کو 5 پر سیٹ کرتے ہیں اور Send دباتے ہیں۔ finish_reason میں آپ کیا توقع کرتے ہیں؟جواب دکھائیں

آپ کو length ملتا ہے: پانچ tokens ایک مکمل جملے کے لیے کافی نہیں، اس لیے جواب کٹ جاتا ہے۔ 200 واپس رکھیں تو یہ stop بن جاتا ہے۔

پہلی درخواست کی لاگت#

فرض کریں اوپر کی درخواست تقریباً 30 input tokens استعمال کرتی ہے اور جواب میں تقریباً 100 output tokens لگتے ہیں (یہ ایک مثال ہے، پیمائش نہیں؛ آپ کا usage فیلڈ اصل اعداد دکھاتا ہے)۔ DeepSeek-V4-Flash پر یہ موجودہ قیمت پر $0.00001 ہے، اور قیمت کسی بھی وقت یکساں ہے۔ فی 1M tokens قیمتیں pricing page پر لائیو ٹیبل میں ہیں۔

وہی Postman درخواست دوسرا model آزمایا جا سکتا ہے۔ صرف model لائن تبدیل کریں، مثلاً zai-org/GLM-5.3-Flash سے (390K context، زیادہ سے زیادہ 8,192 output tokens)، اور دوبارہ Send دبائیں۔ ایک بیلنس تمام models کو کور کرتا ہے، اس لیے کچھ اور نہیں بدلتا: وہی URL، وہی key۔

اگر یہ کام نہ کرے#

Postman جواب کے ساتھ status code دکھاتا ہے۔ یہ عام suspects ہیں:

جوڑے ملائیں

علامت کو اس کی وجہ سے ملائیں

  • 401 Unauthorizedkey غائب ہے، غلط ٹائپ ہوئی ہے، یا {{api_key}} خالی ہے کیونکہ variable متعین نہیں
  • 404 Not FoundURL غلط ہے: چیک کریں کہ base_url /v1 پر ختم ہوتا ہے اور path /chat/completions ہے
  • model کا ذکر کرنے والی خرابیmodel id مختصر کر دیا گیا ہے؛ مکمل id استعمال کریں جیسے deepseek-ai/DeepSeek-V4-Flash-0731

Postman سے متعلق دو چیزیں چیک کرنے کے قابل ہیں۔ اگر آپ کو 401 ملتا ہے یا URL غلط لگتا ہے، تو چیک کریں کہ base_url اور api_key اس environment میں متعین ہیں جو آپ نے منتخب کیا ہے۔ اور اگر key درست لگتی ہے لیکن پھر بھی 401 ملتا ہے، تو Authorization ٹیب دوبارہ کھولیں: Auth Type Bearer Token ہونا چاہیے، No Auth نہیں۔ ان codes کے بارے میں مزید: API 401 or 404 error۔ یقین نہیں کہ کون سا id استعمال کریں؟ List models with GET /v1/models سب واپس کرتا ہے۔

جب آپ مطمئن ہوں، تو Save دبائیں، درخواست کو نام دیں اور ایک collection منتخب کریں۔ اگلی بار آپ صرف content فیلڈ میں ترمیم کریں گے، یا جوابات کا موازنہ کرنے کے لیے model لائن میں۔ مکمل API حوالہ the CheapTokens docs میں ہے۔