API कॉन्ट्रैक्ट टेस्टिंग क्या है?
API कॉन्ट्रैक्ट किसी इंटरफ़ेस का सहमत विवरण है — उसके एंडपॉइंट, पैरामीटर, रिक्वेस्ट व रिस्पॉन्स स्कीमा और स्टेटस कोड — जो आमतौर पर OpenAPI दस्तावेज़ के रूप में लिखा जाता है। कॉन्ट्रैक्ट टेस्टिंग सर्विस के वास्तविक रिस्पॉन्स की उस विवरण से तुलना करती है, ताकि बदला हुआ फ़ील्ड नाम या टाइप दूसरी तरफ़ को तोड़ने से पहले प्रोड्यूसर या कंज़्यूमर के पास पकड़ा जाए।
गाइड पढ़ें: API टेस्टिंग क्या है? REST API कैसे टेस्ट करें
AI API कॉन्ट्रैक्ट रिस्क एनालाइज़र कैसे इस्तेमाल करें
- OpenAPI या Swagger spec पेस्ट करें — या वह हिस्सा जिसकी समीक्षा चाहिए — या endpoints का लिखित विवरण।
- चाहें तो संदर्भ जोड़ें: API कौन इस्तेमाल करता है, authentication मॉडल और आपकी versioning नीति।
- आउटपुट भाषा चुनें और «विश्लेषण करें» दबाएँ।
- पहले Critical और High जोखिम ठीक करें — हर एक सटीक जगह और ठोस बदलाव बताता है — फिर रिपोर्ट CSV, Markdown या JSON में डाउनलोड करें।
AI API कॉन्ट्रैक्ट रिस्क एनालाइज़र की खूबियाँ
- naming, versioning, error responses, authentication, authorisation, pagination, validation, breaking changes, idempotency, rate limiting, डेटा एक्सपोज़र और डॉक्युमेंटेशन की समीक्षा करता है
- हर जोखिम के लिए गंभीरता, सटीक जगह (path + method या schema) और ठोस सुधार
- डिज़ाइन गुणवत्ता स्कोर और मज़बूत पक्ष
- Markdown, CSV और JSON में एक्सपोर्ट
AI API कॉन्ट्रैक्ट रिस्क एनालाइज़र का उदाहरण
Contract समीक्षा
इनपुट:
openapi 3.0 with GET/DELETE /lookups/{lookup}/values, no securitySchemesआउटपुट:
RISK-1 authentication (Critical, global): no securitySchemes → add bearer JWT scheme
RISK-2 pagination (High, GET …/values): unbounded list → add page/pageSizeAI API कॉन्ट्रैक्ट रिस्क एनालाइज़र के बारे में अक्सर पूछे जाने वाले सवाल
क्या यह OpenAPI Validator की जगह ले लेता है?
नहीं। Validator संरचनात्मक शुद्धता को डिटरमिनिस्टिक ढंग से जाँचता है; यह टूल डिज़ाइन गुणवत्ता और जोखिम की समीक्षा करता है। दोनों चलाएँ।
गंभीरता कैसे तय होती है?
Critical सुरक्षा या डेटा की अखंडता की खामी है, High ऐसी चीज़ जो clients को तोड़ देगी या टेस्टिंग रोक देगी, Medium गुणवत्ता या एकरूपता की समस्या है, और Low सिर्फ़ निखार।
क्या यह endpoints के सादे टेक्स्ट विवरण की समीक्षा कर सकता है?
हाँ। OpenAPI या Swagger दस्तावेज़ हो तो वह पेस्ट करें; endpoints का लिखित विवरण भी चलता है, और हर जोखिम फिर भी उसी सटीक path, method या schema की ओर इशारा करता है जिससे वह जुड़ा है।
तकनीकी नोट्स
हर जोखिम में एक ID, क्षेत्र (naming, versioning, error responses, authentication, authorization, pagination, validation, breaking change, idempotency, rate limiting, data exposure, documentation या consistency), गंभीरता, सटीक जगह (path और method, schema का नाम या "global"), finding, उसका असर और ठोस सुधार होता है — जैसे जोड़ने वाला status code, header या schema बदलाव। रिपोर्ट में 0–100 का design-quality स्कोर और contract की खूबियाँ भी होती हैं, और यह कभी ऐसा endpoint नहीं बताती जो contract में नहीं है।
संदर्भ
- OpenAPI SpecificationREST API के वर्णन का मानक: पाथ, ऑपरेशन, पैरामीटर, स्कीमा, रिस्पॉन्स और सिक्योरिटी स्कीम।
- JSON Schema SpecificationJSON दस्तावेज़ की संरचना का वर्णन और वैलिडेशन करने की शब्दावली (टाइप, आवश्यक प्रॉपर्टी, फ़ॉर्मेट)।
- RFC 9110: HTTP SemanticsHTTP मेथड, हेडर फ़ील्ड, स्टेटस कोड और कंटेंट निगोशिएशन के अर्थ, वायर वर्ज़न से स्वतंत्र।