API स्कीमा वैलिडेटर

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

किसी OpenAPI डॉक्युमेंट से स्कीमा चुनें (path, method और स्टेटस से) या JSON Schema पेस्ट करें, फिर एक या कई रिस्पॉन्स नमूने जाँचें और उल्लंघनों की रिपोर्ट पाएँ।

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

JSON Schema क्या है?

JSON Schema स्वयं JSON में लिखी एक शब्दावली है जो JSON दस्तावेज़ के अपेक्षित आकार का वर्णन करती है: कौन-सी प्रॉपर्टी हैं, उनके टाइप, कौन-सी आवश्यक हैं, और फ़ॉर्मेट, पैटर्न व रेंज जैसी शर्तें। स्कीमा के विरुद्ध पेलोड की जाँच कॉन्ट्रैक्ट के बहाव को यूज़र तक पहुँचने से पहले पकड़ लेती है।

गाइड पढ़ें: JSON क्या है?

API स्कीमा वैलिडेटर कैसे इस्तेमाल करें

  1. JSON Schema या पूरा OpenAPI/Swagger डॉक्युमेंट पेस्ट करें।
  2. OpenAPI के लिए उस रिस्पॉन्स का path (जैसे /orders/{id}), method और स्टेटस कोड डालें जिसे जाँचना है।
  3. एक रिस्पॉन्स पेस्ट करें, या batch के लिए हर लाइन में एक।
  4. जाँचें और सूचीबद्ध उल्लंघन ठीक करें (या अगर API सही है तो contract ठीक करें)।

API स्कीमा वैलिडेटर की खूबियाँ

  • एक या कई JSON रिस्पॉन्स (JSON Lines) को JSON Schema के आधार पर जाँचें
  • या OpenAPI 3 / Swagger 2 डॉक्युमेंट से path, method और स्टेटस के अनुसार स्कीमा चुनें
  • लोकल $ref रिज़ॉल्यूशन (components, definitions, $defs), allOf/oneOf/anyOf, format, nullable
  • नमूना संख्या, path, keyword और संदेश सहित उल्लंघनों की तालिका
  • इस्तेमाल हुई सटीक स्कीमा दिखाता है, जिसे JSON में डाउनलोड किया जा सकता है

API स्कीमा वैलिडेटर का उदाहरण

तीन ऑर्डर की batch जाँच

इनपुट:

OpenAPI: GET /orders/{id} → 200 → Order
Samples:
{ "id": "ord_1001", "status": "paid", "total": 149.5, "items": [ { "sku": "A-1", "qty": 2 } ] }
{ "id": "1002", "status": "refunded", "total": -5, "items": [] }

आउटपुट:

FAIL · Samples 2 · Valid 1 · Violations 4
Sample 2  $.id      pattern  String does not match pattern ^ord_.
Sample 2  $.status  enum     Value must be one of: "pending", "paid", "shipped", "cancelled".
Sample 2  $.total   minimum  Value must be ≥ 0.
Sample 2  $.items   minItems Array has fewer than 1 items.

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

OpenAPI रिस्पॉन्स के आधार पर कैसे जाँचूँ?

OpenAPI/Swagger डॉक्युमेंट पेस्ट करें, फिर path, method और स्टेटस कोड भरें — रिस्पॉन्स स्कीमा ($ref सहित) हल कर ली जाती है और जाँच में इस्तेमाल होती है।

क्या मैं एक साथ कई नमूने जाँच सकता हूँ?

हाँ। एक JSON डॉक्युमेंट पेस्ट करें, या पूरे batch की जाँच के लिए हर लाइन में एक (JSON Lines); उल्लंघनों की तालिका नमूना संख्या दिखाती है।

कौन-से JSON Schema draft सपोर्ट किए जाते हैं?

draft-07, 2019-09 और 2020-12 के आम keyword, साथ में nullable जैसे OpenAPI के अतिरिक्त keyword।

कोई $ref हल क्यों नहीं हो पाता?

सिर्फ़ लोकल reference (#/components/schemas/X, #/definitions/X, #/$defs/X) सपोर्ट किए जाते हैं; बाहरी फ़ाइलें फ़ेच नहीं की जातीं।

तकनीकी नोट्स

यह validator अपना engine JSON Schema वैलिडेटर टूल के साथ साझा करता है और draft-07/2019-09/2020-12 के आम keyword सपोर्ट करता है। Swagger 2.0 के रिस्पॉन्स स्कीमा responses[code].schema से और OpenAPI 3 के responses[code].content[application/json].schema से पढ़े जाते हैं।

संदर्भ

  • JSON Schema SpecificationJSON SchemaJSON दस्तावेज़ की संरचना का वर्णन और वैलिडेशन करने की शब्दावली (टाइप, आवश्यक प्रॉपर्टी, फ़ॉर्मेट)।
  • RFC 8259: The JavaScript Object Notation (JSON) Data Interchange FormatIETF · 2017JSON का व्याकरण: ऑब्जेक्ट, ऐरे, स्ट्रिंग, नंबर, तीन लिटरल और इंटरचेंज एन्कोडिंग के रूप में UTF-8।
  • RFC 9110: HTTP SemanticsIETF · 2022HTTP मेथड, हेडर फ़ील्ड, स्टेटस कोड और कंटेंट निगोशिएशन के अर्थ, वायर वर्ज़न से स्वतंत्र।