OpenAPI naar TypeScript types
Zet een OpenAPI- of Swagger-document om in TypeScript interfaces en types.
OpenAPI naar TypeScript types
Plak een OpenAPI 3- of Swagger 2-document (JSON of YAML) in en deze tool genereert overeenkomstige TypeScript interfaces voor elk schema in components/schemas, plus één type per endpoint voor de path en query parameters, request body en responses. Dit bespaart het handmatig schrijven van API types telkens wanneer de specificatie verandert, en houdt de client in sync met wat de server werkelijk retourneert.
De opties bepalen de vorm van de output. Kies tussen interface of type declaraties, en bepaal hoe nullable velden worden weergegeven: als optioneel property (x?: string) of als union met null (x: string | null). $ref referenties kunnen zowel als benoemde types blijven staan die naar de overeenkomstige interface verwijzen, als inline worden uitgebreid waar ze ook gebruikt worden. Zet "Path-, parameter- en response types genereren" uit om alleen de component schemas te krijgen, of zet statuscodeunion aan om elke response code die een endpoint kan retourneren als één type te zien. Beschrijvingen uit de spec worden JSDoc-opmerkingen boven elk veld, en een naamprefix voorkomt dat gegenereerde types in botsing komen met je eigen types wanneer je ze in een grotere codebase plakt.
De parser leest standaard OpenAPI-constructen — object en array schemas, enums, oneOf/anyOf/allOf, nullable, additionalProperties — en volgt lokale $ref-verwijzingen binnen hetzelfde document. Endpoints gemarkeerd als verouderd kunnen volledig worden overgeslagen, en een document dat niet op OpenAPI lijkt (geen components/schemas of paths section) produceer een duidelijke foutmelding in plaats van lege output.
Alles draait lokaal in je browser — je API-specificatie, die een ongereleased product of intern systeem kan beschrijven, wordt nooit ergens heen geüpload. Kopieer de gegenereerde types, download ze als .txt-bestand om in een .ts-bestand te plakken, of stuur de output rechtstreeks terug naar de input om deze verder aan te scherpen.