बस अपनी expected JSON Schema definition को left में और actual API response JSON को right में paste करें। Tool automatically दोनों structures को compare करता है, data types, required fields, regex patterns और more को precisely validate करता है। यह API contract testing और frontend-backend data structure consistency सुनिश्चित करने के लिए एक essential step है।
Tool पूरी तरह से JSON Schema Draft-07 standard को follow करता है। यह basic type checking (type), required fields (required), property definitions (properties), regex pattern matching (pattern), format validation (format), enum values (enum) और powerful combination logic validation (allOf, anyOf, oneOf, not) को support करता है।
जब JSON data schema से match नहीं करता, तो tool एक extremely detailed error report generate करता है। यह precisely failing JSON path, specific error type (जैसे type mismatch या missing required field) और corresponding schema rule को point out करता है — backend development और data cleaning के लिए debugging efficiency को greatly improve करता है।
ETL data cleaning या data ingestion से पहले, आप इस tool का उपयोग यह verify करने के लिए कर सकते हैं कि data predefined schema specifications को conform करता है या नहीं। यह effectively dirty data और anomalies को intercept करता है, databases या downstream systems में entering data quality को ensure करता है — robust data pipelines बनाने के लिए एक crucial step।
नहीं। सारा JSON Schema Validator processing पूरी तरह से आपके browser में locally होता है। चाहे यह enterprise के core API data structures हों या personal business data, कुछ भी कभी भी किसी server पर upload नहीं होता, आपके data के लिए enterprise-level privacy protection ensure करता है।
नीचे दी गई तालिका JSON Schema विनिर्देशन में सबसे अधिक उपयोग किए जाने वाले सत्यापन कीवर्ड को श्रेणी के अनुसार व्यवस्थित करती है, त्वरित संदर्भ के लिए।
| कीवर्ड | विवरण |
|---|---|
| मूल प्रकार | |
type | डेटा प्रकार निर्दिष्ट करें: string, number, integer, boolean, array, object, null. एकल प्रकार या प्रकारों की array को सपोर्ट करता है। |
| ऑब्जेक्ट सत्यापन | |
properties | ऑब्जेक्ट properties के लिए sub-schemas परिभाषित करें। |
required | कौन सी properties आवश्यक हैं यह निर्दिष्ट करने वाली string array। |
additionalProperties | नियंत्रित करें कि properties में परिभाषित नहीं की गई अतिरिक्त properties की अनुमति है या नहीं; false या एक schema हो सकता है। |
propertyNames | Schema जिससे property names मेल खाने चाहिए (आमतौर पर pattern regex का उपयोग करता है)। |
minProperties | किसी ऑब्जेक्ट में होने वाली properties की न्यूनतम संख्या। |
maxProperties | किसी ऑब्जेक्ट में होने वाली properties की अधिकतम संख्या। |
| Enum और कॉन्स्टेंट | |
enum | अनुमत मानों की array; डेटा array से बिल्कुल एक मान होना चाहिए। |
const | स्थिर मान; डेटा इस मान के साथ सख्ती से बराबर होना चाहिए। |
| संख्यात्मक बाधाएं | |
minimum | न्यूनतम संख्यात्मक मान (समावेशी)। |
maximum | अधिकतम संख्यात्मक मान (समावेशी)। |
exclusiveMinimum | मान इससे सख्ती से बड़ा होना चाहिए (अपवर्जी)। |
exclusiveMaximum | मान इससे सख्ती से छोटा होना चाहिए (अपवर्जी)। |
multipleOf | मान निर्दिष्ट संख्या का गुणज होना चाहिए। |
| स्ट्रिंग बाधाएं | |
minLength | न्यूनतम स्ट्रिंग लंबाई। |
maxLength | अधिकतम स्ट्रिंग लंबाई। |
pattern | रेगुलर एक्सप्रेशन; स्ट्रिंग इस पैटर्न से मेल खानी चाहिए। |
format | सिमेंटिक फॉर्मेट सत्यापन: email, uri, date-time, uuid, ipv4, ipv6, hostname आदि। |
| ऐरे बाधाएं | |
items | ऐरे एलिमेंट्स के लिए schema (एक ही schema सभी एलिमेंट्स पर लागू होता है)। |
minItems | ऐरे एलिमेंट्स की न्यूनतम संख्या। |
maxItems | ऐरे एलिमेंट्स की अधिकतम संख्या। |
uniqueItems | क्या ऐरे एलिमेंट्स अद्वितीय होने चाहिए। |
contains | कम से कम एक ऐरे एलिमेंट इस schema से मेल खाना चाहिए। |
| कॉम्बिनेटरियल लॉजिक | |
allOf | डेटा सभी sub-schemas से मेल खाना चाहिए (तार्किक AND)। |
anyOf | डेटा कम से कम एक sub-schema से मेल खाना चाहिए (तार्किक OR)। |
oneOf | डेटा बिल्कुल एक sub-schema से मेल खाना चाहिए (XOR)। |
not | डेटा इस schema से मेल नहीं खाना चाहिए (तार्किक NOT)। |
| सशर्त सत्यापन | |
if | सशर्त schema; यदि डेटा if से मेल खाता है, तो then को पूरा करना होगा; अन्यथा else को पूरा करना होगा। |
then | Schema जिसे if शर्त पूरी होने पर संतुष्ट करना होगा। |
else | Schema जिसे if शर्त पूरी नहीं होने पर संतुष्ट करना होगा। |
| संदर्भ और पुन: उपयोग | |
$ref | अन्य schema परिभाषाओं को संदर्भित करें; स्थानीय संदर्भों (#/$defs/xxx) और दूरस्थ संदर्भों को सपोर्ट करता है। |
$defs | पुन: प्रयोज्य sub-schemas परिभाषित करें (Draft 2019-09+; पुराने संस्करण definitions का उपयोग करते हैं)। |
definitions | Draft 4-7 में पुन: प्रयोज्य sub-schemas के लिए कीवर्ड। |
| मेटाडेटा | |
title | Schema शीर्षक (एनोटेशन, सत्यापित नहीं किया जाता)। |
description | Schema विवरण (एनोटेशन, सत्यापित नहीं किया जाता)। |
default | डिफ़ॉल्ट मान (एनोटेशन, सत्यापित नहीं किया जाता)। |
examples | उदाहरण मानों की array (एनोटेशन, सत्यापित नहीं किया जाता)। |
$schema | उपयोग में JSON Schema विनिर्देशन संस्करण निर्दिष्ट करें। |
| निर्भरताएं | |
dependentRequired | प्रॉपर्टी निर्भरता: जब कोई प्रॉपर्टी मौजूद हो, तो अन्य प्रॉपर्टी भी मौजूद होनी चाहिए (Draft 2019-09+)। |
dependencies | Draft 4-7 में निर्भरता कीवर्ड जो प्रॉपर्टी और schema निर्भरता दोनों को कवर करता है। |
JSON Schema कई Draft संस्करणों के माध्यम से विकसित हुआ है। Draft 7 वर्तमान में सबसे व्यापक रूप से उपयोग किया जाने वाला संस्करण है; Draft 2020-12 नवीनतम स्थिर रिलीज है।
| फीचर | Draft 4 | Draft 6 | Draft 7 | 2019-09 | 2020-12 |
|---|---|---|---|---|---|
| प्रकार सत्यापन | ✓ | ✓ | ✓ | ✓ | ✓ |
| आवश्यक फ़ील्ड | ✓ | ✓ | ✓ | ✓ | ✓ |
| enum/const | ✓ enum | ✓ | ✓ | ✓ | ✓ |
| minimum/maximum | ✓ | ✓ | ✓ | ✓ | ✓ |
| exclusiveMinimum/Maximum | बूलियन | संख्या | संख्या | संख्या | संख्या |
| multipleOf | ✓ | ✓ | ✓ | ✓ | ✓ |
| minLength/maxLength | ✓ | ✓ | ✓ | ✓ | ✓ |
| pattern regex | ✓ | ✓ | ✓ | ✓ | ✓ |
| फॉर्मेट सत्यापन | ✓ | ✓ | ✓ | डिफ़ॉल्ट रूप से एनोटेशन | डिफ़ॉल्ट रूप से एनोटेशन |
| ऐरे items | ✓ | ✓ | ✓ | ✓ | ✓ |
| contains | ✗ | ✓ | ✓ | ✓ | ✓ |
| minItems/maxItems | ✓ | ✓ | ✓ | ✓ | ✓ |
| uniqueItems | ✓ | ✓ | ✓ | ✓ | ✓ |
| additionalProperties | ✓ | ✓ | ✓ | ✓ | ✓ |
| propertyNames | ✗ | ✓ | ✓ | ✓ | ✓ |
| allOf/anyOf/oneOf/not | ✓ | ✓ | ✓ | ✓ | ✓ |
| if/then/else | ✗ | ✗ | ✓ | ✓ | ✓ |
| $ref संदर्भ | ✓ | ✓ | ✓ | ✓ | ✓ |
| $defs पुन: उपयोग | definitions | definitions | definitions | $defs | $defs |
| dependentRequired | ✗ | ✗ | ✗ | ✓ | ✓ |
| prefixItems टपल | ऐरे फॉर्म | ऐरे फॉर्म | ऐरे फॉर्म | ऐरे फॉर्म | prefixItems |
| unevaluatedProperties | ✗ | ✗ | ✗ | ✓ | ✓ |
| $dynamicRef/$anchor | ✗ | ✗ | ✗ | ✓ $recursiveRef | ✓ dynamicRef |