API स्कीमा वैलिडेटर कैसे इस्तेमाल करें
- JSON Schema या पूरा OpenAPI/Swagger डॉक्युमेंट पेस्ट करें।
- OpenAPI के लिए उस रिस्पॉन्स का path (जैसे /orders/{id}), method और स्टेटस कोड डालें जिसे जाँचना है।
- एक रिस्पॉन्स पेस्ट करें, या batch के लिए हर लाइन में एक।
- जाँचें और सूचीबद्ध उल्लंघन ठीक करें (या अगर 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 से पढ़े जाते हैं।