📜
API Versioning & Docs

API Contracts

Consumer-Driven Design
💡 API contract, EK LEGAL AGREEMENT hai, DO PARTIES (API PROVIDER aur CONSUMER) ke BEECH — DONO, PEHLE SE, TAY karte hain, KYA EXPECT karna hai (REQUEST/RESPONSE SHAPE), TAAKI, BAAD mein, KOI "SURPRISE" NA HO.

API CONTRACT, EK FORMAL AGREEMENT hai, KI, API, KYA REQUEST ACCEPT karegi, aur, KYA RESPONSE RETURN karegi — OpenAPI SPECIFICATION, ISI CONTRACT ko, MACHINE-READABLE FORMAT mein, DOCUMENT karta hai. CONSUMER-DRIVEN CONTRACTS (jaise Pact) mein, API CONSUMERS, APNI EXPECTATIONS, EXPLICITLY, DEFINE karte hain, aur PROVIDER, INKE AGAINST, TEST hota hai.

API-FIRST DESIGN, EK APPROACH hai, JAHA, CONTRACT (OpenAPI SPEC), CODE LIKHNE SE, PEHLE, DESIGN kiya jaata hai — FRONTEND aur BACKEND TEAMS, EK SAATH, CONTRACT PAR, AGREE karके, PARALLEL mein, KAAM SHURU kar sakti hain, BINA, EK-DUSRE ka, WAIT KIYE.

# OpenAPI spec (contract-first) — API design SE, code SE, PEHLE:
openapi: 3.0.0
paths:
  /products/{id}:
    get:
      parameters:
        - name: id
          in: path
          required: true
          schema: { type: integer }
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'

# Is CONTRACT SE, Java interfaces, AUTOMATICALLY, GENERATE ki ja sakti hain
# (openapi-generator tool se), aur developers, INHE IMPLEMENT karte hain
📜
API contract, EK LEGAL AGREEMENT hai, DO PARTIES (API PROVIDER aur CONSUMER) ke BEECH — DONO, PEHLE SE, TAY karte hain, KYA EXPECT karna hai (REQUEST/RESPONSE SHAPE), TAAKI, BAAD mein, KOI "SURPRISE" NA HO.
1 / 2
⚡ Quick Recap
  • API contract = formal agreement, request/response shape ke baare mein
  • Consumer-driven contracts (Pact) = consumer expectations, EXPLICITLY test hoती hain
  • API-first design = contract, code se PEHLE — teams, PARALLEL kaam kar sakti hain
Is page mein (2 subtopics)

openapi-generator-maven-plugin jaise, TOOLS SE, OpenAPI SPEC (YAML/JSON) SE, CLIENT SDKs (jaise, TypeScript, Java, Python CLIENTS), AUTOMATICALLY, GENERATE ki ja sakti hain — FRONTEND/CONSUMER TEAMS ko, MANUALLY, API CALLS, LIKHNE ki, ZAROORAT NAHI.

💡Tip: Contract-first, WORKFLOW mein, OpenAPI SPEC, "SOURCE OF TRUTH" hai — CODE (SERVER, aur, CLIENT, DONO), ISI SPEC SE, GENERATE/VALIDATE hota hai.

SCHEMA VALIDATION (jaise, JSON Schema SE, RESPONSE, VALIDATE karna), EK, SIMPLER, ALTERNATIVE hai, CONTRACT TESTING (Pact) SE — LESS, POWERFUL (CONSUMER-SPECIFIC, EXPECTATIONS, EXPRESS NAHI kar sakta), LEKIN, SETUP karna, EASIER hai.

  • Schema validation = SIMPLER, response structure CHECK karta hai
  • Contract testing (Pact) = MORE powerful, consumer-specific expectations