API पेलोड जेनरेटर

ब्राउज़र में चलता है API टेस्टिंग

स्कीमा से मान्य उदाहरण पेलोड (और negative टेस्ट के लिए वैकल्पिक अमान्य वेरिएंट) बनाएँ — type, format, enum, रेंज और ज़रूरी फ़ील्ड का पालन करते हुए। सारा डेटा स्पष्ट रूप से टेस्ट डेटा है।

गोपनीयता: यह टूल पूरी तरह आपके ब्राउज़र में चलता है। आपका इनपुट कभी आपके डिवाइस से बाहर नहीं जाता।
टूल लोड हो रहा है…

API टेस्टिंग क्या है?

API टेस्टिंग किसी सर्विस को उसकी स्क्रीन के बजाय उसके इंटरफ़ेस से जाँचती है: चुने हुए मेथड, हेडर और बॉडी के साथ रिक्वेस्ट भेजें, फिर स्टेटस कोड, रिस्पॉन्स हेडर, बॉडी की संरचना और वैल्यू, और लगा समय सत्यापित करें। UI के नीचे चलने के कारण यह तेज़ और स्थिर है और इंटीग्रेशन दोष पहले पकड़ती है — इसीलिए रिग्रेशन सूट API-फ़र्स्ट बनाए जाते हैं।

गाइड पढ़ें: API टेस्टिंग क्या है? REST API कैसे टेस्ट करें

API पेलोड जेनरेटर कैसे इस्तेमाल करें

  1. JSON Schema, OpenAPI/Swagger डॉक्युमेंट (JSON या YAML) या नमूना बॉडी पेस्ट करें।
  2. OpenAPI इनपुट के लिए component स्कीमा का नाम या "POST /path" टाइप करके बॉडी स्कीमा चुनें।
  3. तय करें कि कितने मान्य पेलोड चाहिए, वैकल्पिक फ़ील्ड शामिल करने हैं या नहीं, और अमान्य वेरिएंट चाहिए या नहीं।
  4. बनाएँ, फिर पेलोड अपने टेस्ट में कॉपी करें या वेरिएंट JSON/CSV में डाउनलोड करें।

API पेलोड जेनरेटर की खूबियाँ

  • JSON Schema, OpenAPI request body/component या नमूना ऑब्जेक्ट से मान्य उदाहरण पेलोड बनाता है
  • type, format, enum, रेंज, लंबाई, pattern, ज़रूरी फ़ील्ड, $ref, allOf/oneOf और example वैल्यू का पालन करता है
  • फ़ील्ड के नामों से चुनी गई यथार्थवादी सिंथेटिक वैल्यू (email, phone, city, price, createdAt…)
  • negative टेस्ट के लिए अमान्य वेरिएंट, हर एक ठीक एक नियम तोड़ता है और अपेक्षित API व्यवहार बताता है
  • दोहराए जा सकने वाले टेस्ट डेटा के लिए seed वाला आउटपुट; एक साथ कई पेलोड

API पेलोड जेनरेटर का उदाहरण

साइनअप स्कीमा से

इनपुट:

{ "type": "object", "required": ["email", "plan"], "properties": { "email": { "type": "string", "format": "email" }, "age": { "type": "integer", "minimum": 18 }, "plan": { "enum": ["free", "pro"] } } }

आउटपुट:

{ "email": "test.user157@example.com", "age": 42, "plan": "pro" }
Invalid variants: Missing required "email" · Wrong type at age (string) · Below minimum at age (17) · Invalid enum at plan · Empty body …

API पेलोड जेनरेटर के बारे में अक्सर पूछे जाने वाले सवाल

कौन-से इनपुट स्वीकार किए जाते हैं?

JSON Schema, OpenAPI/Swagger डॉक्युमेंट (JSON या YAML — कोई component स्कीमा चुनें या "POST /users" जैसा request body) या सादा नमूना ऑब्जेक्ट, जिससे स्कीमा अनुमानित कर ली जाती है।

कौन-से स्कीमा keyword का पालन होता है?

type, enum, const, format, pattern (सरल pattern), minimum/maximum, multipleOf, minLength/maxLength, minItems/maxItems, uniqueItems, required, properties, additionalProperties, allOf/oneOf/anyOf, $ref, nullable और example/default वैल्यू।

अमान्य वेरिएंट किस काम के हैं?

negative टेस्ट के: हर वेरिएंट ठीक एक नियम तोड़ता है (ज़रूरी फ़ील्ड ग़ायब, ग़लत type, रेंज से बाहर, बहुत लंबा, ख़ाली, अमान्य format/enum, null, अतिरिक्त फ़ील्ड) और बताता है कि सही API को क्या रिस्पॉन्स देना चाहिए।

क्या आउटपुट दोहराया जा सकता है?

हर बार वही पेलोड पाने के लिए seed डालें; नई random वैल्यू चाहिए तो इसे ख़ाली छोड़ दें। सभी वैल्यू सिंथेटिक टेस्ट डेटा हैं।

तकनीकी नोट्स

pattern से बँधे स्ट्रिंग एक छोटे regex जेनरेटर से बनाए जाते हैं (character class, quantifier, सरल alternation)। जो pattern सपोर्ट नहीं होते, उनके लिए नाम-आधारित वैल्यू इस्तेमाल होती हैं। seed देने पर generation नियतात्मक होता है और साझा seeded PRNG इस्तेमाल करता है।

संदर्भ

  • RFC 9110: HTTP SemanticsIETF · 2022HTTP मेथड, हेडर फ़ील्ड, स्टेटस कोड और कंटेंट निगोशिएशन के अर्थ, वायर वर्ज़न से स्वतंत्र।
  • OpenAPI SpecificationOpenAPI InitiativeREST API के वर्णन का मानक: पाथ, ऑपरेशन, पैरामीटर, स्कीमा, रिस्पॉन्स और सिक्योरिटी स्कीम।
  • OWASP Cheat Sheet Series: REST SecurityOWASP FoundationREST API के सुरक्षा नियम: HTTPS, हर रिक्वेस्ट पर ऑथेंटिकेशन, इनपुट वैलिडेशन, सुरक्षित एरर रिस्पॉन्स, रेट लिमिटिंग।