Postman کیا ہے: API ٹیسٹنگ اور درخواستوں کے ساتھ کام کرنا

مصنف: IT Sectr اشاعت: 2026-05-08 مطالعے کا وقت: 9 منٹ

Postman — گرافیکل انٹرفیس کے ساتھ API ٹیسٹنگ کا ایک پلیٹ فارم ہے، جو REST، GraphQL، WebSocket اور gRPC پروٹوکول کو سپورٹ کرتا ہے۔ یہ ٹول HTTP درخواستیں بنانے اور بھیجنے، انہیں کلیکشنز میں ترتیب دینے، اسکرپٹ کے ذریعے ٹیسٹنگ کو خودکار بنانے اور اینڈ پوائنٹس کے لیے دستاویزات تیار کرنے کی سہولت دیتا ہے۔ Postman Learning Center (2026) کے مطابق، دنیا بھر میں 25 ملین سے زیادہ ڈویلپرز اس پلیٹ فارم کو استعمال کرتے ہیں۔

اہم نکات

  • Postman — بصری درخواست ایڈیٹر، کلیکشنز اور ماحولیاتی متغیرات کے ساتھ ایک ورسٹائل API کلائنٹ ہے۔
  • Collections JavaScript جانچوں کے ساتھ Collection Runner کے ذریعے چلانے کی سہولت کے ساتھ درخواستوں کو گروہوں میں شامل کرتی ہیں۔
  • ماحولیاتی متغیرات آپ کو درخواستیں دستی طور پر تبدیل کیے بغیر dev، staging اور production کے درمیان سوئچ کرنے کی اجازت دیتے ہیں۔
  • ٹیسٹ خودکاری غیر متزامن جانچوں کے ساتھ JavaScript میں Pre-request Scripts اور Tests کے ذریعے نافذ کی جاتی ہے۔
  • دستاویزات Markdown سپورٹ اور مختلف زبانوں میں کوڈ مثالوں کے ساتھ کلیکشن کی بنیاد پر خودکار طور پر تیار ہوتی ہیں۔

Postman کیا ہے اور اہم خصوصیات

Postman API تیار کرنے اور ٹیسٹ کرنے کا ایک پلیٹ فارم ہے، جو ڈیسک ٹاپ ایپلیکیشن (Windows، macOS، Linux) اور ویب ورژن کے طور پر دستیاب ہے۔ 2012 میں Chrome ایکسٹینشن کے طور پر بنایا گیا، Postman مانیٹرنگ، mock-سرورز اور کلائنٹ کوڈ جنریشن کی سپورٹ کے ساتھ ایک مکمل ایکو سسٹم بن گیا ہے۔

درخواست اور جواب کی شکل

Postman تمام HTTP طریقے سپورٹ کرتا ہے: GET، POST، PUT، PATCH، DELETE، HEAD، OPTIONS۔ درخواست کا باڈی JSON، XML، form-data، x-www-form-urlencoded اور binary شکل میں ہو سکتا ہے۔ جواب نحو کی ہائی لائٹنگ، Pretty-print اور خام ہیڈرز دیکھنے کی صلاحیت کے ساتھ دکھایا جاتا ہے۔

تصدیق کی سپورٹ

بلٹ ان تصدیق کی اقسام میں Bearer Token، Basic Auth، Digest Auth، OAuth 1.0، OAuth 2.0، API Key اور AWS Signature شامل ہیں۔ Postman منتخب قسم کے مطابق Authorization ہیڈرز خودکار طور پر شامل کرتا ہے، جس سے ٹوکنز کو دستی طور پر کاپی کیے بغیر محفوظ اینڈ پوائنٹس کی ٹیسٹنگ تیز ہوتی ہے۔

Postman انٹرفیس اور نیویگیشن

Postman انٹرفیس سائیڈ پینل (Collections، APIs، Environments)، ورک ایریا (Request Builder/Response Viewer) اور نچلے پینل (Console، Runner) پر مشتمل ہے۔ Params ٹیب آپ کو URL کے query-پیرامیٹرز کو ٹیبل ویو میں ترمیم کرنے دیتا ہے، اور Headers ٹیب HTTP ہیڈرز کا انتظام کرتا ہے۔

Postman Console

Console (View → Show Postman Console) تمام نیٹ ورک درخواستوں اور جوابات کو تاریخ وار ترتیب میں لاگ کرتا ہے، بشمول درمیانی ری ڈائریکٹس اور ہیڈرز۔ پیچیدہ OAuth فلو اور ری ڈائریکٹ چینز کو ڈیبگ کرتے وقت یہ ایک ناگزیر ٹول ہے، جب معیاری Response Viewer صرف حتمی نتیجہ دکھاتا ہے۔

Workspaces اور ٹیم ورک

Postman Fork اور Merge کے ذریعے کلیکشن ورژننگ کے ساتھ ٹیم ورک اسپیس کو سپورٹ کرتا ہے۔ ٹیم کے ارکان درخواستوں پر تبصرہ کر سکتے ہیں، تبدیلیاں تجویز کر سکتے ہیں اور ریئل ٹائم میں کلیکشنز کو ہم آہنگ کر سکتے ہیں۔ Public Workspace آپ کو بیرونی ڈویلپرز کے لیے API دستاویزات شائع کرنے کی اجازت دیتا ہے۔

HTTP درخواستیں بنانا اور بھیجنا

Postman میں بنیادی درخواست HTTP طریقہ منتخب کرکے اور ایڈریس بار میں URL داخل کرکے بنائی جاتی ہے۔ بھیجنے کے بعد، جواب نچلے پینل میں اسٹیٹس کوڈ، عملدرآمد کا وقت اور سائز کے ساتھ دکھایا جاتا ہے۔ درخواست کے پیرامیٹرز ٹائپ کرتے وقت خودکار طور پر انکوڈ ہوتے ہیں۔

متحرک متغیرات اور اسنیپٹس

URL اور درخواست کے باڈی میں {{$variable}} فارمیٹ کے متحرک متغیرات استعمال کیے جا سکتے ہیں۔ بلٹ ان متغیرات {{$guid}}، {{$timestamp}} اور {{$randomInt}} ہر درخواست کے لیے منفرد قدریں پیدا کرتے ہیں۔ کوڈ اسنیپٹس Code بٹن () کے ذریعے دستیاب ہیں، جو cURL، Python، JavaScript، Kotlin، Swift اور دیگر زبانوں میں مساوی درخواست تیار کرتا ہے۔

javascript
// Pre-request میں اسکرپٹ کی مثال: HMAC دستخط تیار کرنا
const timestamp = Date.now().toString();
const secret = pm.environment.get("api_secret");
const hash = CryptoJS.HmacSHA256(timestamp, secret);
pm.request.headers.add({
    key: "X-Signature",
    value: hash.toString()
});

کلیکشنز اور ماحولیاتی متغیرات

کلیکشنز متعلقہ درخواستوں کے گروہ ہیں، جو پروجیکٹ یا فعال ماڈیول کے مطابق اکٹھے کیے جاتے ہیں۔ ہر کلیکشن میں نیسٹڈ فولڈرز، مشترکہ ہیڈرز اور Pre-request اسکرپٹس شامل ہو سکتی ہیں، جو کلیکشن کی ہر درخواست سے پہلے چلتی ہیں۔ درخواستوں کی ترتیب گھسیٹ کر طے کی جاتی ہے۔

ماحولیاتی متغیرات اور عالمی متغیرات

Postman متغیرات کی پانچ سطحیں سپورٹ کرتا ہے: global، collection، environment، data اور local۔ تنازعات کے حل کی ترجیح — مقامی سے عالمی تک۔ ماحولیاتی فائلوں میں مختلف ماحول کے لیے key-value جوڑے ہوتے ہیں: development، staging، production۔ ماحول تبدیل کرنے سے تمام URLs اور ٹوکنز خودکار طور پر بدل جاتے ہیں۔

سطح دائرہ ترجیح
Local موجودہ درخواست 1 (سب سے زیادہ)
Data Collection Runner (CSV/JSON سے) 2
Environment فعال ماحول 3
Collection پوری کلیکشن 4
Global پورا ورک اسپیس 5

اسکرپٹ کے ذریعے API ٹیسٹنگ کو خودکار بنانا

Postman آپ کو Tests ٹیب میں JavaScript میں ٹیسٹ لکھنے کی اجازت دیتا ہے، جو جواب موصول ہونے کے بعد چلتے ہیں۔ ٹیسٹ اسٹیٹس کوڈ، جواب کا باڈی، ہیڈرز اور عملدرآمد کا وقت جانچتے ہیں۔ نتائج رنگین پاس انڈیکیٹرز کے ساتھ Test Results پینل میں دکھائے جاتے ہیں۔

pm لائبریری اور درخواست چیننگ

pm آبجیکٹ جواب کے ساتھ کام کرنے کے طریقے فراہم کرتا ہے: pm.response، pm.expect، pm.variables۔ درخواست چیننگ ایک درخواست کے جواب سے ڈیٹا کو متغیر میں محفوظ کرکے اور اگلی درخواست میں استعمال کرکے نافذ کی جاتی ہے۔ یہ انٹیگریشن ٹیسٹ بنانے اور API کالز کی ترتیب کے ذریعے کاروباری منطق کی جانچ کی بنیاد ہے۔

javascript
// ٹیسٹ: جواب کی ساخت کی جانچ اور ٹوکن محفوظ کرنا
pm.test("Status code is 200", () => {
    pm.response.to.have.status(200);
});

const json = pm.response.json();
pm.environment.set("auth_token", json.data.token);

Collection Runner اور Newman

Collection Runner کلیکشن کی تمام درخواستوں کو ترتیب وار چلاتا ہے، ہر مرحلے پر ٹیسٹ انجام دیتا ہے۔ Newman CI/CD پائپ لائنز (Jenkins، GitHub Actions، GitLab CI) کے لیے Postman کا کنسول ورژن ہے۔ Newman مانیٹرنگ سسٹمز کے ساتھ انٹیگریشن کے لیے JSON، JUnit اور HTML فارمیٹس میں رپورٹس ایکسپورٹ کرتا ہے۔

GraphQL اور WebSocket کے ساتھ کام کرنا

Postman میں GraphQL درخواستیں JSON فارمیٹ کے باڈی کے ساتھ ایک ہی اینڈ پوائنٹ پر POST کے ذریعے بھیجی جاتی ہیں۔ GraphQL (Beta) ٹیب نحو کی ہائی لائٹنگ، فیلڈ آٹو کمپلیشن اور اسکیما کے ساتھ بصری ایڈیٹر فراہم کرتا ہے۔ درخواست کے متغیرات الگ Variables پینل میں بھیجے جاتے ہیں۔

WebSocket اور Socket.IO ٹیسٹنگ

Postman پیغام پینل کے ساتھ ایک الگ انٹرفیس کے ذریعے WebSocket کنکشنز کو سپورٹ کرتا ہے۔ آپ ٹیکسٹ اور بائنری پیغامات بھیج سکتے ہیں، کنکشن کی تاریخ دیکھ سکتے ہیں اور منقطع ہونے پر خودکار طور پر دوبارہ جڑ سکتے ہیں۔ Socket.IO کلائنٹ Engine.IO پروٹوکول کے ساتھ مطابقت موڈ میں کام کرتا ہے۔

javascript
// pm API کے ذریعے Postman میں WebSocket ٹیسٹ
const ws = new WebSocket("wss://echo.websocket.org");
ws.onmessage = (event) => {
    pm.test("Echo response received", () => {
        pm.expect(event.data).to.eql("Hello");
    });
};

Postman میں Mock-سرورز اور مانیٹرنگ

Postman کے Mock-سرورز موجودہ کلیکشنز کی بنیاد پر API اینڈ پوائنٹس کی تقلید کرنے کی اجازت دیتے ہیں۔ یہ اس وقت مفید ہے جب بیک اینڈ ابھی تیار نہ ہو، لیکن فرنٹ اینڈ یا موبائل ایپ پہلے سے تیار ہو رہی ہو۔ Mock-سرور صحیح ہیڈرز اور اسٹیٹس کوڈ کے ساتھ کلیکشن سے نمونہ جواب واپس کرتا ہے۔

Mock-سرور بنانا

Mock-سرور ایک کلک میں کلیکشن سے بنایا جاتا ہے: کلیکشن منتخب کریں → Mock Servers → Add a new mock server۔ Postman ایک منفرد URL تیار کرتا ہے، جو حقیقی API کی بجائے ایپلیکیشن کوڈ میں استعمال کیا جا سکتا ہے۔ کلیکشن کی ہر درخواست کے لیے، موک محفوظ شدہ Example Response واپس کرتا ہے، جس سے بیک اینڈ مکمل ہونے سے پہلے UI کو جانچا جا سکتا ہے۔

Postman Monitors کے ذریعے API مانیٹرنگ

Monitors کلیکشن کو شیڈول کے مطابق چلاتے ہیں (ہر 5 منٹ، گھنٹے یا دن میں) اور API کی دستیابی اور درستگی کی جانچ کرتے ہیں۔ ٹیسٹ ناکام ہونے پر، مانیٹر ای میل یا Slack پر اطلاع بھیجتا ہے۔ مانیٹرنگ Postman کلاؤڈ سے کام کرتی ہے، الگ سرور کی ضرورت نہیں ہوتی اور مفت پلان پر ماہانہ 10,000 تک درخواستوں کو سپورٹ کرتی ہے۔

javascript
// مانیٹرنگ کے لیے ٹیسٹ: جواب کا وقت جانچنا
pm.test("Response time < 2000ms", () => {
    pm.expect(pm.response.responseTime).to.be.below(2000);
});

pm.test("Content-Type is JSON", () => {
    pm.response.to.have.header("Content-Type");
});

سیکیورٹی اور سیکریٹ مینجمنٹ

Postman API کلیدوں کے ساتھ محفوظ کام کے لیے میکانزم فراہم کرتا ہے۔ Secret قسم کے متغیرات انکرپٹ ہوتے ہیں اور انٹرفیس میں ظاہر نہیں ہوتے۔ ٹیم ورک کے لیے Admin، Editor اور Viewer رولز کے ساتھ Workspace استعمال کریں۔

متغیرات کو انکرپٹ کرنا

ماحولیاتی متغیر بناتے وقت Secret قسم منتخب کریں — تمام انٹرفیسز میں قدر ستاروں سے چھپی ہوتی ہے۔ سیکریٹ شیئرنگ کے وقت کلیکشن میں ایکسپورٹ نہیں ہوتے اور Newman لاگز میں ظاہر نہیں ہوتے۔ پاس ورڈز اور ٹوکنز کو صرف Secret متغیرات میں ذخیرہ کرنے کی سفارش کی جاتی ہے۔

Vault انٹیگریشن

Postman HashiCorp Vault اور AWS Secrets Manager کے ساتھ انٹیگریشن کو سپورٹ کرتا ہے۔ Pre-request اسکرپٹس بیرونی اسٹوریج سے سیکریٹ کو متحرک طور پر طلب کر سکتی ہیں، جس سے کلیکشن ماحولیاتی فائلوں میں حساس ڈیٹا ذخیرہ کرنے سے بچا جا سکتا ہے۔

سیکیورٹی اور سیکریٹ مینجمنٹ

Postman API کلیدوں کے ساتھ محفوظ کام کے لیے میکانزم فراہم کرتا ہے۔ Secret قسم کے متغیرات انکرپٹ ہوتے ہیں اور انٹرفیس میں ظاہر نہیں ہوتے۔ ٹیم ورک کے لیے Admin، Editor اور Viewer رولز کے ساتھ Workspace استعمال کریں۔

متغیرات کو انکرپٹ کرنا

ماحولیاتی متغیر بناتے وقت Secret قسم منتخب کریں — تمام انٹرفیسز میں قدر ستاروں سے چھپی ہوتی ہے۔ سیکریٹ شیئرنگ کے وقت کلیکشن میں ایکسپورٹ نہیں ہوتے اور Newman لاگز میں ظاہر نہیں ہوتے۔ پاس ورڈز اور ٹوکنز کو صرف Secret متغیرات میں ذخیرہ کرنے کی سفارش کی جاتی ہے۔

Vault انٹیگریشن

Postman HashiCorp Vault اور AWS Secrets Manager کے ساتھ انٹیگریشن کو سپورٹ کرتا ہے۔ Pre-request اسکرپٹس بیرونی اسٹوریج سے سیکریٹ کو متحرک طور پر طلب کر سکتی ہیں، جس سے کلیکشن ماحولیاتی فائلوں میں حساس ڈیٹا ذخیرہ کرنے سے بچا جا سکتا ہے۔

اکثر پوچھے جانے والے سوالات

Postman، Insomnia سے کیسے مختلف ہے؟

Postman ایک وسیع تر ایکو سسٹم پیش کرتا ہے: کلیکشنز، ماحول، مانیٹرنگ، mock-سرورز اور CI/CD کے لیے Newman۔ Insomnia کم میموری استعمال کے ساتھ ہلکا پن اور رفتار پر فوکس کرتا ہے۔ Postman ٹیم ورک کے لیے بہتر ہے، Insomnia انفرادی استعمال کے لیے۔

درخواستوں کے درمیان تصدیقی ٹوکن کیسے بھیجیں؟

پہلی درخواست کے Tests میں، ٹوکن کو ماحول میں محفوظ کریں: pm.environment.set("token", pm.response.json().token)۔ دوسری درخواست میں، Authorization ہیڈر میں متغیر {{$token}} استعمال کریں۔ ترتیب وار چلانے پر Runner خودکار طور پر قدر بدل دے گا۔

کیا Postman میں cURL کمانڈ درآمد کی جا سکتی ہے؟

ہاں، Import → Raw Text بٹن کے ذریعے۔ Postman cURL کمانڈ کو خودکار طور پر پارس کرتا ہے اور ہیڈرز، طریقہ اور باڈی کے ساتھ درخواست بناتا ہے۔ -H، -d، -F اور -u سمیت تمام cURL فلیگ سپورٹ ہیں۔ ریورس کنورژن Code بٹن () کے ذریعے دستیاب ہے۔

Postman میں GraphQL کو کیسے ٹیسٹ کریں؟

JSON باڈی کے ساتھ POST درخواست استعمال کریں: {"query": "..."}۔ GraphQL ٹیب Introspection Query کے ذریعے اسکیما لوڈنگ کے ساتھ بصری ایڈیٹر فراہم کرتا ہے۔ درخواست کے متغیرات اسی JSON آبجیکٹ کے variables فیلڈ میں بھیجے جاتے ہیں۔

Newman کیا ہے اور اس کی ضرورت کیوں ہے؟

Newman CI/CD میں کلیکشنز چلانے کے لیے Postman کا کنسول ورژن ہے۔ یہ npm کے ذریعے انسٹال ہوتا ہے، HTML رپورٹس اور Jenkins، GitHub Actions اور GitLab CI کے ساتھ انٹیگریشن کو سپورٹ کرتا ہے۔ یہ گرافیکل انٹرفیس کے بغیر API ریگریشن ٹیسٹنگ کو خودکار کرنے کی اجازت دیتا ہے۔

خلاصہ

  • Postman 25 ملین صارفین کے ساتھ REST، GraphQL، WebSocket اور gRPC API ٹیسٹنگ کے لیے ایک عالمگیر پلیٹ فارم ہے۔
  • کلیکشنز نیسٹڈ فولڈرز اور مشترکہ اسکرپٹس کی سپورٹ کے ساتھ درخواستوں کو پروجیکٹ کے مطابق گروپ کرتی ہیں۔
  • ماحولیاتی متغیرات دستی ترمیم کے بغیر dev، staging اور production کے درمیان ہموار سوئچنگ کو یقینی بناتے ہیں۔
  • ٹیسٹ خودکاری بیچ چلانے کے لیے pm آبجیکٹ اور Collection Runner کے ساتھ JavaScript اسکرپٹس کے ذریعے نافذ کی جاتی ہے۔
  • Newman ہر ڈپلائے پر API ریگریشن ٹیسٹنگ کے لیے CI/CD پائپ لائنز میں ضم ہوتا ہے۔
  • متحرک متغیرات $guid، $timestamp اور $randomInt کے ذریعے منفرد ڈیٹا کے ساتھ ٹیسٹنگ کو آسان بناتے ہیں۔
  • WebSocket اور GraphQL سپورٹ Postman کے دائرے کو کلاسک REST درخواستوں سے آگے بڑھاتی ہے۔

ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے

IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔

پروجیکٹ پر بحث کریں

مزید پڑھیں