FIRST CH TOOLS / 開発 / 73 OPENAPI DOC GENERATOR
OpenAPI → 日本語ドキュメント&TypeScript型定義
OpenAPI / Swagger の仕様書(JSON・YAML)から、日本語のAPIドキュメント(Markdown)とTypeScript の型定義(.ts)を作ります。エンドポイント一覧・パラメータの表・リクエストとレスポンスの例・スキーマの表を書き出し、どちらもコピーかファイルで保存できます。仕様書はこのページの中だけで読み、端末の外へ送りません。
1 — 仕様書(OpenAPI / Swagger)
2 — APIドキュメント(Markdown)
3 — TypeScript 型定義
- 仕様書を貼り付けるか、「サンプルを入れる」を押してください。
仕様書の解析もドキュメント・型定義の組み立ても、すべてこのページの中で動きます。貼り付けた仕様書・選んだファイルはサーバーへ送信しません(社内APIの仕様書でもそのまま使えます)。URLパラメータでは受け取りません。
How to Use
- 仕様書を入れるopenapi.yaml や swagger.json の中身を貼り付けるか、ファイルを開く・ドロップします。OpenAPI 3.0 / 3.1 と Swagger 2.0 の、JSON と YAML のどちらでも読めます。
- 言語と出力を選ぶドキュメントを日本語か英語か、レスポンス例を自動で作るか、エンドポイントごとの型も出すかを選びます。入れた時点で自動で生成されます。
- コピーか保存Markdown は .md、型定義は .ts で保存できます。型定義はフロントエンドの src/types/ などに置いて import します。
About This Tool
バックエンドが書いた OpenAPI(旧 Swagger)の仕様書から、読む人のための日本語のAPIドキュメントと、フロントエンドで使う TypeScript の型定義を一度に作るツールです。英語の Swagger UI を社内・取引先にそのまま渡しにくい、仕様書を外部のサービスにアップロードしたくない、という制作現場の事情に合わせ、解析から文字列の組み立てまでをこのページの中だけで行います。
ドキュメント(Markdown)には、ベースURL・エンドポイント一覧・認証方式に続けて、エンドポイントごとにパラメータの表(名前・場所・型・必須・説明)、リクエストボディ、レスポンスの表と例を並べ、最後に各スキーマのプロパティ表を付けます。タグがあればタグごとにまとめます。例は仕様書に書かれた example / examples を優先し、無ければスキーマの型・format・enum・default から作ります(その旨を見出しに書きます)。表の見出しや「必須」などの定型句が日本語になり、説明文そのものは仕様書の原文のままです(翻訳はしません)。
TypeScript の型定義は、components.schemas(Swagger 2.0 は definitions)を1件ずつ export interface か export type にします。required に無いプロパティは ? 付き、enum は "a" | "b"、allOf は &、oneOf / anyOf は |、nullable(3.1 は type: [..., "null"])は | null、readOnly は readonly、format: binary は Blob です。説明・format・既定値・非推奨は JSDoc コメントで残るので、エディターの補完に出ます。エンドポイントごとの型は operationId(無ければメソッドとパス)から …Params・…RequestBody・…Response の名前で作ります。出力は TypeScript の --strict で型エラーが出ないことを、GitHub・Stripe の公開仕様書を含む実在の仕様書で確かめています。
できないこと: 別ファイル・URLを指す $ref(./schemas/user.yaml など)は読みに行かず、型を unknown にして知らせます。1ファイルにまとめた仕様書(bundle 済み)を入れてください。各言語のSDKや、実際にAPIを呼び出すクライアントコードは作りません(型の宣言だけです)。YAML は YAML 1.2 として読み、アンカー・エイリアス・マージキーにも対応します。書き方の誤りは行と桁を示して止まります。YAMLとJSONの変換・整形そのものは JSON ⇄ YAML 相互変換、JSONのレスポンスを表にするなら CSV/TSV ⇄ JSON 相互変換、Markdown の表の整形は Markdownテーブル整形 が対応します。
Other Tools
- 01画像→WebP一括変換WebP Converter
- 02白背景の透過White BG Remover
- 03コントラスト比チェッカーContrast Checker
- 04文字数カウントCharacter Counter
- 05llms.txt ジェネレーターllms.txt Generator
- 06JSON-LD構造化データ生成JSON-LD Generator
- 07Markdown→PDF変換MD → PDF
- 08OGPメタタグ生成ウィザードOGP Wizard
- 09faviconジェネレーターFavicon Generator
- 10TikTok投稿ツールTikTok Publisher
- 11文字コード・改行コード変換Encoding Converter
- 12画像→AVIF変換+picture生成AVIF Converter
- 13テストデータ生成Test Data Generator
- 14Marp Markdown→スライドMarp Slides
- 15テキスト・コード差分チェッカーDiff Checker
- 16Cron式ビジュアル解説Cron Explainer
- 17Base64 & Data URI変換Base64 & Data URI
- 18URLパラメータ分解・UTMタグ編集URL Parameters
- 19HTMLエンティティ・特殊文字エスケープHTML Escape
- 20JSON ⇄ YAML 相互変換&整形JSON ⇄ YAML
- 21PX ⇄ REM / EM 単位変換&スケール表PX ⇄ REM / EM
- 22Colorコード変換&アルファ透過Color Converter
- 23MD5 / SHA-256 ハッシュ生成Hash Generator
- 24JWTデコーダー&有効期限チェッカーJWT Decoder
- 25User-Agent解析&デバイス判定User-Agent Parser
- 26UUID (v4) & ULID 一括生成UUID & ULID Generator
- 27アスペクト比計算&レスポンシブサイズAspect Ratio Calculator
- 28Markdownテーブル整形&CSV/TSV変換Markdown Table
- 29SQLクエリフォーマッター&整形SQL Formatter
- 30QRコード生成QR Code Generator
- 31正規表現テスターRegex Tester
- 32UNIXタイムスタンプ⇄日時変換Unix Time Converter
- 33新規タブメモ帳New Tab Memo
- 34画像リサイズ&クロップImage Resizer
- 35EXIF情報の確認&除去EXIF Viewer
- 36robots.txt ジェネレーターrobots.txt Generator
- 37安全なパスワード生成Password Generator
- 38文字列ケース変換Case Converter
- 39CSV/TSV ⇄ JSON 相互変換CSV ⇄ JSON
- 40PDF結合・分割・ページ抽出PDF Merge & Split
- 41全角⇄半角変換&テキストクリーナーZenkaku ⇄ Hankaku
- 42X(Twitter)投稿の文字ウェイト計算X Post Counter
- 43CSS clamp() フルイドタイポグラフィ計算機CSS clamp() Calculator
- 44CSSグラデーションジェネレーターCSS Gradient Generator
- 45画像からカラーパレット抽出Palette Extractor
- 46QRコード読み取りQR Code Reader
- 47SVG最適化&data URI化SVG Optimizer
- 48リダイレクトルール ジェネレーターRedirect Generator
- 49IPアドレス・CIDR計算機CIDR Calculator
- 50カレンダー予定(.ics)ジェネレーターICS Generator
- 51イージング(cubic-bezier)プレビュー&比較Easing Preview
- 52box-shadow ジェネレーターbox-shadow Generator
- 53和文ダミーテキスト生成Japanese Dummy Text
- 54SNS画像サイズ一括書き出しSocial Image Sizes
- 55タイムゾーン変換・世界時計Timezone Converter
- 56日数・営業日計算Business Day Calculator
- 57HTML→Markdown変換HTML → Markdown
- 58HEIC→JPEG/PNG変換HEIC Converter
- 59印刷サイズ・DPI計算機Print DPI Calculator
- 60色覚シミュレーターColor Blindness Simulator
- 61SERPプレビュー&メタタグ文字数チェックSERP Preview
- 62Flexbox / CSS Grid ジェネレーターFlexbox & CSS Grid
- 63テキスト行操作ツールLine Tools
- 64スクリーンショット枠装飾Screenshot Frame
- 65和暦 ⇄ 西暦変換Japanese Era Converter
- 66URLスラッグ生成(日本語→ローマ字)URL Slug Generator
- 67htpasswd ジェネレーターhtpasswd Generator
- 68OGP画像ジェネレーターOGP Image Generator
- 69スタンプ形ジェネレーターStamp Shape Generator
- 70スリープ防止(画面の消灯を止める)Stay Awake
- 71画面録画+クリック自動ズームScreen Recorder with Auto-Zoom
- 723Dデバイスモックアップジェネレーター3D Device Mockup Generator