OpenAPI JSON-validerare

Klistra in innehållet i din openapi.json- eller swagger.json-fil och få en strukturkontroll på några sekunder. Validerraren bekräftar att JSON går att läsa, att versionsfältet finns, att info har en title och en version samt att paths finns. Sedan varnar den för ovanliga sökvägsnamn och okända operationsnycklar.

Så validerar du en OpenAPI JSON-fil

  1. 1

    Kopiera filen

    Öppna din `openapi.json` och kopiera hela dokumentet, från den inledande klammern till den avslutande.

  2. 2

    Klistra in den i rutan

    Klistra in den i fältet för OpenAPI- eller Swagger-dokument. Du behöver inte ta bort blanksteg eller formatera om den.

  3. 3

    Kör kontrollen

    Gå vidare till resultatsteget för att köra valideringen.

  4. 4

    Rätta och kör om

    Redigera filen för varje fel, klistra in den igen och kör om tills rapporten inte visar några fel.

Vanliga JSON-fel som ger ett underkänt resultat

JSON är striktare än YAML, så de flesta misslyckanden i en handredigerad fil beror på syntax snarare än på API-designen. De vanligaste orsakerna är ett kommatecken efter sista egenskapen, enkla citattecken i stället för dubbla, en kommentar (JSON tillåter inte kommentarer) eller en saknad avslutande klammer efter ett långt paths-objekt. En trasig fil slutar oftast med meddelandet “Could not parse as JSON or YAML” eller med fält som saknas, eftersom ingenting användbart kunde läsas.

Om du bara ser ett tolkningsfel, leta först efter syntaxfelet. Strukturkontrollerna körs först när dokumentet kan läsas som ett objekt.

Ett genomgånget exempel

Ta det här lilla dokumentet:

{
  "openapi": "3.0.3",
  "info": { "title": "Orders API" },
  "paths": {
    "orders": { "get": { "summary": "List orders" } }
  }
}

Det går att läsa, och fältet openapi och objektet paths finns. Rapporten visar ändå:

Resultat Typ Varför
info.version is required. Fel info har en title men ingen version
Path ‘orders’ should start with ‘/’. Varning Sökvägsnyckeln saknar inledande snedstreck

Eftersom det finns ett fel anses dokumentet inte giltigt. Lägg till "version": "1.0.0" i info och byt namn på nyckeln till /orders. En ny körning rensar båda resultaten.

Vad ett godkänt resultat betyder och inte betyder

En ren rapport betyder att skelettet är rätt. Den följer inte $ref-länkar, kontrollerar inte scheman och bekräftar inte att varje operation har svar. Se den som en snabb grind innan du checkar in filen, och kör sedan en fullständig linter för de djupare reglerna.

En praktisk arbetsgång för JSON-specifikationer

Förvara specifikationen i versionshantering och klistra in den här före varje commit som ändrar paths. Eftersom kontrollen är snabb fungerar den som en förnuftskoll efter att ändringar från flera personer har slagits ihop, när dubblerade nycklar eller en felplacerad klammer är som mest sannolika. Om din JSON genereras av ett byggskript ska du klistra in den genererade utdatan i stället för mallen, så att du testar det läsarna faktiskt får. När rapporten är ren kan du dela filen eller ge den till ett dokumentationsverktyg med större säkerhet om att strukturen på översta nivån är sund.

Vanliga frågor

Nej. Blanksteg och indrag spelar ingen roll. Klistra in filen som den är.

Standard-JSON tillåter inget kommatecken efter sista elementet i ett objekt eller en lista, så dokumentet går inte att läsa som JSON. Ta bort kommatecknet och kör kontrollen igen.

Ja. Versionskontrollen godkänner antingen ett openapi-fält eller ett swagger-fält, så både Swagger 2.0- och OpenAPI 3.x-JSON-filer går genom samma strukturkontroll.

Nej. Resultaten visas som meddelanden, till exempel ett saknat fält eller ett sökvägsnamn, utan radnummer. Sök i filen efter nyckeln som nämns i meddelandet.

Relaterade verktyg

Verktyget finns på andra språk

Guider och användningsområden