58 lines
113 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<meta name="generator" content="Docusaurus">
<link rel="preconnect" href="https://www.google-analytics.com">
<script>window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-132927057-1","auto"),ga("send","pageview")</script>
<script async src="https://www.google-analytics.com/analytics.js"></script>
<link rel="preconnect" href="https://www.google-analytics.com">
<script>window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-132927057-1","auto"),ga("send","pageview")</script>
<script async src="https://www.google-analytics.com/analytics.js"></script>
<script src="https://buttons.github.io/buttons.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script>
<script src="/js/code-block-buttons.js"></script>
<title data-react-helmet="true">Usage</title>
<meta data-react-helmet="true" http-equiv="x-ua-compatible" content="ie=edge"><meta data-react-helmet="true" property="og:title" content="OpenAPI Generator · Generate clients, servers, and documentation from OpenAPI 2.0/3.x documents"><meta data-react-helmet="true" property="og:image" content="https://openapi-generator.tech/img/docusaurus.png"><meta data-react-helmet="true" property="twitter:image" content="https://openapi-generator.tech/img/docusaurus.png"><meta data-react-helmet="true" name="twitter:image:alt" content="Image for OpenAPI Generator · Generate clients, servers, and documentation from OpenAPI 2.0/3.x documents"><meta data-react-helmet="true" name="twitter:card" content="summary"><meta data-react-helmet="true" name="description" content="Options for OpenAPI Generator are the same whether you&#x27;re using the CLI, Maven/Gradle Plugins, or Online generation options."><meta data-react-helmet="true" property="og:description" content="Options for OpenAPI Generator are the same whether you&#x27;re using the CLI, Maven/Gradle Plugins, or Online generation options."><meta data-react-helmet="true" property="og:url" content="https://openapi-generator.tech/docs/usage">
<link data-react-helmet="true" rel="shortcut icon" href="/img/favicon.png">
<link rel="stylesheet" href="/styles.ec5417b5.css">
</head>
<body>
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}function e(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}var n=window.matchMedia("(prefers-color-scheme: dark)");n.addListener((function(n){null===e()&&t(n.matches?"dark":"")}));var a=e();null!==a?t(a):n.matches&&t("dark")}()</script>
<div id="__docusaurus">
<nav class="navbar navbar--light navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><div aria-label="Navigation bar toggle" class="navbar__toggle" role="button" tabindex="0"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></div><a aria-current="page" class="navbar__brand active" href="/"><img class="navbar__logo" src="/img/mono-logo.svg" alt="OpenAPI Tools logo"><strong>OpenAPI Generator</strong></a><a class="navbar__item navbar__link" href="/docs/installation">Getting Started</a><a class="navbar__item navbar__link" href="/docs/generators">Generators</a><a class="navbar__item navbar__link" href="/docs/roadmap">Roadmap</a><a class="navbar__item navbar__link" href="/docs/faq">FAQ</a><a class="navbar__item navbar__link" href="/team">Team</a><a class="navbar__item navbar__link" href="/blog">Blog</a><a class="navbar__item navbar__link" activeclassname="navbar__link--active" to="https://api.openapi-generator.tech" href="https://api.openapi-generator.tech">API</a></div><div class="navbar__items navbar__items--right"><div class="react-toggle react-toggle--disabled displayOnlyInLargeViewport_1gtM"><div class="react-toggle-track"><div class="react-toggle-track-check"><span class="toggle_keGJ moon_1gwN"></span></div><div class="react-toggle-track-x"><span class="toggle_keGJ sun_3CPA"></span></div></div><div class="react-toggle-thumb"></div><input type="checkbox" disabled="" aria-label="Dark mode toggle" class="react-toggle-screenreader-only"></div><div class="navbar__search"><span aria-label="expand searchbar" role="button" class="search-icon" tabindex="0"></span><input type="search" id="search_input_react" placeholder="Search" aria-label="Search" class="navbar__search-input search-bar"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div><div class="navbar-sidebar"><div class="navbar-sidebar__brand"><a aria-current="page" class="navbar__brand active" href="/"><img class="navbar__logo" src="/img/mono-logo.svg" alt="OpenAPI Tools logo"><strong>OpenAPI Generator</strong></a></div><div class="navbar-sidebar__items"><div class="menu"><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" href="/docs/installation">Getting Started</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/generators">Generators</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/roadmap">Roadmap</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/faq">FAQ</a></li><li class="menu__list-item"><a class="menu__link" href="/team">Team</a></li><li class="menu__list-item"><a class="menu__link" href="/blog">Blog</a></li><li class="menu__list-item"><a class="menu__link" activeclassname="navbar__link--active" to="https://api.openapi-generator.tech" href="https://api.openapi-generator.tech">API</a></li></ul></div></div></div></nav><div class="main-wrapper"><div class="docPage_1kjD"><div class="docSidebarContainer_1cYp"><div class="sidebar_1kLs"><div class="menu menu--responsive"><button aria-label="Open Menu" class="button button--secondary button--sm menu__button" type="button"><svg class="sidebarMenuIcon_2vk4" xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 32 32" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><ul class="menu__list"><li class="menu__list-item"><a class="menu__link menu__link--sublist menu__link--active" href="#!">Getting Started</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" href="/docs/installation">CLI Installation</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/plugins">Plugins</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/online">Online</a></li><li class="menu__list-item"><a aria-current="page" class="menu__link menu__link--active" href="/docs/usage">Usage</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/globals">Global Properties</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/configuration">Configuration Options</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/file-post-processing">File post-processing</a></li></ul></li><li class="menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#!">Extending</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" href="/docs/templating">Using Templates</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/customization">Customization</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/debugging">Debugging</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/integrations">Workflow Integrations</a></li></ul></li><li class="menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#!">Contributing</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" href="/docs/contributing">Guidelines</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/code-of-conduct">Code of Conduct</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/contribute-building">Building the code</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/new-generator">Create a New Generator</a></li></ul></li><li class="menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#!">About</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" href="/docs/roadmap">Roadmap</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/swagger-codegen-migration">Migrating from Swagger Codegen</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/fork-qna">Swagger Codegen Fork: Q&amp;A</a></li></ul></li><li class="menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#!">Releases</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" href="/docs/release-summary">Release Summary</a></li><li class="menu__list-item"><a class="menu__link" href="/docs/release-3-0-0">Release Notes: 3.0.0</a></li></ul></li><li class="menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#!">API</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" href="/docs/generators">Generators List</a></li></ul></li></ul></div></div></div><main class="docMainContainer_FFX1"><div class="padding-vert--lg"><div class="container"><div class="row"><div class="col"><div class="docItemContainer_2cwg"><article><header><h1 class="docTitle_1vWb">Usage</h1></header><div class="markdown"><p>Options for OpenAPI Generator are the same whether you&#x27;re using the CLI, Maven/Gradle Plugins, or Online generation options.
This page demonstrates navigating the options via CLI. Commands are presented here in a logical progression as a tutorial, but you&#x27;re welcome to skip directly to the <a href="#generate">generate</a> command.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="help"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#help" title="Direct link to heading">#</a>help</h2><p>The <code>help</code> option lists all commands available to the CLI.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">usage: openapi-generator-cli &lt;command&gt; [&lt;args&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">The most commonly used openapi-generator-cli commands are:</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> author Utilities for authoring generators or customizing templates.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> batch Generate code in batch via external configs.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> config-help Config help for chosen lang</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generate Generate code with the specified generator.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> help Display help information about openapi-generator</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> list Lists the available generators</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> meta MetaGenerator. Generator for creating a new template set and configuration for Codegen. The output will be based on the language you specify, and includes default templates to include.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> validate Validate specification</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> version Show version information used in tooling</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">See &#x27;openapi-generator-cli help &lt;command&gt;&#x27; for more information on a specific</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">command.</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="version"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#version" title="Direct link to heading">#</a>version</h2><p>The version command provides version information, returning either the version by default, the git commit sha when passed <code>--sha</code>, or verbose output when passed <code>--full</code>.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli version - Show version information used in tooling</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli version [--full] [--sha]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --full</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Full version details</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --sha</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Git commit SHA version</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="list"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#list" title="Direct link to heading">#</a>list</h2><p>The <code>list</code> command outputs a formatted list of every available generator. Pass the <code>-s/--short</code> option if you would like a CSV output for easy parsing.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help list</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli list - Lists the available generators</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli list [(-i &lt;include&gt; | --include &lt;include&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-s | --short)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -i &lt;include&gt;, --include &lt;include&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> comma-separated list of stability indexes to include (value:</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> all,beta,stable,experimental,deprecated). Excludes deprecated by</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> default.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -s, --short</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> shortened output (suitable for scripting)</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Example:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli list -s </span><span class="token operator">|</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">tr</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;,&#x27;</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;</span><span class="token string entity" style="color:rgb(255, 121, 198)">\n</span><span class="token string" style="color:rgb(255, 121, 198)">&#x27;</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>For the full list of generators, refer to the <a href="/docs/generators">Generators List</a>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="config-help"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#config-help" title="Direct link to heading">#</a>config-help</h2><p>The <code>config-help</code> option provides details about </p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help config-help</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli config-help - Config help for chosen lang</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli config-help</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-f &lt;output format&gt; | --format &lt;output format&gt;)] [--feature-set]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--full-details]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-g &lt;generator name&gt; | --generator-name &lt;generator name&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--import-mappings] [--instantiation-types]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--language-specific-primitive] [--markdown-header] [--named-header]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-o &lt;output location&gt; | --output &lt;output location&gt;)] [--reserved-words]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -f &lt;output format&gt;, --format &lt;output format&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Write output files in the desired format. Options are &#x27;text&#x27;,</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> &#x27;markdown&#x27; or &#x27;yamlsample&#x27;. Default is &#x27;text&#x27;.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --feature-set</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> displays feature set as supported by the generator</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --full-details</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> displays CLI options as well as other configs/mappings (implies</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --instantiation-types, --reserved-words,</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --language-specific-primitives, --import-mappings,</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --supporting-files)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -g &lt;generator name&gt;, --generator-name &lt;generator name&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generator to get config help for</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --import-mappings</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> displays the default import mappings (types and aliases, and what</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> imports they will pull into the template)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --instantiation-types</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> displays types used to instantiate simple type/alias names</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --language-specific-primitive</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> displays the language specific primitives (types which require no</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> additional imports, or which may conflict with user defined model</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> names)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --markdown-header</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> When format=markdown, include this option to write out markdown</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> headers (e.g. for docusaurus).</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --named-header</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Header includes the generator name, for clarity in output</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -o &lt;output location&gt;, --output &lt;output location&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Optionally write help to this location, otherwise default is</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> standard output</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --reserved-words</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> displays the reserved words which may result in renamed model or</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> property names</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>The option of note is <code>-g/--generator-name</code> (other options are exposed for tooling).</p><p>You may pass any generator name (see <a href="#list">list</a> command) to <code>-g</code>, and options specific to that generator will be displayed. Some generators have <em>many</em> options, while others may have only a few.</p><p>Example:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli config-help -g go</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Outputs:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">CONFIG OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> packageName</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Go package name (convention: lowercase). (Default: openapi)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> hideGenerationTimestamp</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Hides the generation timestamp when files are generated. (Default: true)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> packageVersion</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Go package version. (Default: 1.0.0)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> withGoCodegenComment</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> whether to include Go codegen comment to disable Go Lint and collapse by default in GitHub PRs and diffs (Default: false)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> withXml</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> whether to include support for application/xml content type and include XML annotations in the model (works with libraries that provide support for JSON and XML) (Default: false)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> prependFormOrBodyParameters</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Add form or body parameters to the beginning of the parameter list. (Default: false)</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>To pass these go client generator-specific options to the <code>generate</code> command for a go client, use the <code>--additional-properties</code> option. See the <a href="#generate">generate</a> command section for an example.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="meta"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#meta" title="Direct link to heading">#</a>meta</h2><p>The <code>meta</code> command creates a new Java class and template files, used for creating your own custom templates.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help meta</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli meta - MetaGenerator. Generator for creating a new</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> template set and configuration for Codegen. The output will be based on</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> the language you specify, and includes default templates to include.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli meta [(-l &lt;language&gt; | --language &lt;language&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-n &lt;name&gt; | --name &lt;name&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-o &lt;output directory&gt; | --output &lt;output directory&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-p &lt;package&gt; | --package &lt;package&gt;)] [(-t &lt;type&gt; | --type &lt;type&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -l &lt;language&gt;, --language &lt;language&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> the implementation language for the generator class</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -n &lt;name&gt;, --name &lt;name&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> the human-readable name of the generator</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -o &lt;output directory&gt;, --output &lt;output directory&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> where to write the generated files (current dir by default)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -p &lt;package&gt;, --package &lt;package&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> the package to put the main class into (defaults to</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> org.openapitools.codegen)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -t &lt;type&gt;, --type &lt;type&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> the type of generator that is created</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>For an in-depth example of using the <code>meta</code> command, see <a href="/docs/customization">Customization</a>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="validate"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#validate" title="Direct link to heading">#</a>validate</h2><p>The <code>validate</code> command allows you to validate an input specification, optionally providing recommendations for error fixes or other improvements (if available).</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help validate</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli validate - Validate specification</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli validate</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> (-i &lt;spec file&gt; | --input-spec &lt;spec file&gt;) [--recommend]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -i &lt;spec file&gt;, --input-spec &lt;spec file&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> location of the OpenAPI spec, as URL or file (required)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --recommend</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Valid Spec Example (using <a href="https://raw.githubusercontent.com/OpenAPITools/openapi-generator/master/modules/openapi-generator-gradle-plugin/samples/local-spec/petstore-v3.0.yaml">petstore-v3.0.yaml</a>)</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli validate -i petstore-v3.0.yaml</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">Validating spec (petstore-v3.0.yaml)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">No validation issues detected.</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Invalid Spec Example (using <a href="https://raw.githubusercontent.com/OpenAPITools/openapi-generator/master/modules/openapi-generator-gradle-plugin/samples/local-spec/petstore-v3.0-invalid.yaml">petstore-v3.0-invalid.yaml</a>):</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli validate -i petstore-v3.0-invalid.yaml</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">Validating spec (petstore-v3.0-invalid.yaml)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">Errors:</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -attribute info is missing</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">[error] Spec has 1 errors.</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="completion"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#completion" title="Direct link to heading">#</a>completion</h2><p>Although not documented in the <code>help</code> output, the CLI offers a <code>completion</code> command, which can be used for auto-completion.</p><p>This command takes one or more parameters representing the args list you would otherwise pass to <code>openapi-generator</code>. For example:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli completion config-help</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">-o</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">--output</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">--named-header</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">-g</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">--generator-name</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">-f</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">--format</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">--markdown-header</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>An example bash completion script can be found in the repo at <a href="https://github.com/OpenAPITools/openapi-generator/blob/master/scripts/openapi-generator-cli-completion.bash">scripts/openapi-generator-cli-completion.bash</a>.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="generate"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#generate" title="Direct link to heading">#</a>generate</h2><p>The <code>generate</code> command is the workhorse of the generator toolset. As such, it has <em>many</em> more options available than the previous commands. The abbreviated options are below, but you may expand the full descriptions.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help generate</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli generate - Generate code with the specified</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generator.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli generate</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-a &lt;authorization&gt; | --auth &lt;authorization&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--api-name-suffix &lt;api name suffix&gt;] [--api-package &lt;api package&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--artifact-id &lt;artifact id&gt;] [--artifact-version &lt;artifact version&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-c &lt;configuration file&gt; | --config &lt;configuration file&gt;)] [--dry-run]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-e &lt;templating engine&gt; | --engine &lt;templating engine&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--enable-post-process-file]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-g &lt;generator name&gt; | --generator-name &lt;generator name&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--generate-alias-as-model] [--git-host &lt;git host&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--git-repo-id &lt;git repo id&gt;] [--git-user-id &lt;git user id&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--global-property &lt;global properties&gt;...] [--group-id &lt;group id&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--http-user-agent &lt;http user agent&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-i &lt;spec file&gt; | --input-spec &lt;spec file&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--ignore-file-override &lt;ignore file override location&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--import-mappings &lt;import mappings&gt;...]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--instantiation-types &lt;instantiation types&gt;...]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--invoker-package &lt;invoker package&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--language-specific-primitives &lt;language specific primitives&gt;...]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--legacy-discriminator-behavior] [--library &lt;library&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--log-to-stderr] [--minimal-update]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--model-name-prefix &lt;model name prefix&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--model-name-suffix &lt;model name suffix&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--model-package &lt;model package&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-o &lt;output directory&gt; | --output &lt;output directory&gt;)] [(-p &lt;additional properties&gt; | --additional-properties &lt;additional properties&gt;)...]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--package-name &lt;package name&gt;] [--release-note &lt;release note&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--remove-operation-id-prefix]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--reserved-words-mappings &lt;reserved word mappings&gt;...]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-s | --skip-overwrite)] [--server-variables &lt;server variables&gt;...]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--skip-operation-example] [--skip-validate-spec]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--strict-spec &lt;true/false strict behavior&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-t &lt;template directory&gt; | --template-dir &lt;template directory&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--type-mappings &lt;type mappings&gt;...] [(-v | --verbose)]</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><details><summary>generate OPTIONS</summary><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -a &lt;authorization&gt;, --auth &lt;authorization&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> adds authorization headers when fetching the OpenAPI definitions</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> remotely. Pass in a URL-encoded string of name:header with a comma</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> separating multiple values</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --api-name-suffix &lt;api name suffix&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Suffix that will be appended to all API names (&#x27;tags&#x27;). Default:</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Api. e.g. Pet =&gt; PetApi. Note: Only ruby, python, jaxrs generators</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> support this feature at the moment.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --api-package &lt;api package&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> package for generated api classes</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --artifact-id &lt;artifact id&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> artifactId in generated pom.xml. This also becomes part of the</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generated library&#x27;s filename</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --artifact-version &lt;artifact version&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> artifact version in generated pom.xml. This also becomes part of the</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generated library&#x27;s filename</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -c &lt;configuration file&gt;, --config &lt;configuration file&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Path to configuration file. It can be JSON or YAML. If file is JSON,</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> the content should have the format {&quot;optionKey&quot;:&quot;optionValue&quot;,</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> &quot;optionKey1&quot;:&quot;optionValue1&quot;...}. If file is YAML, the content should</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> have the format optionKey: optionValue. Supported options can be</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> different for each language. Run config-help -g {generator name}</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> command for language-specific config options.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --dry-run</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Try things out and report on potential changes (without actually</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> making changes).</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -e &lt;templating engine&gt;, --engine &lt;templating engine&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> templating engine: &quot;mustache&quot; (default) or &quot;handlebars&quot; (beta)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --enable-post-process-file</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Enable post-processing file using environment variables.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -g &lt;generator name&gt;, --generator-name &lt;generator name&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generator to use (see list command for list)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --generate-alias-as-model</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Generate model implementation for aliases to map and array schemas.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> An &#x27;alias&#x27; is an array, map, or list which is defined inline in a</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> OpenAPI document and becomes a model in the generated code. A &#x27;map&#x27;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> schema is an object that can have undeclared properties, i.e. the</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> &#x27;additionalproperties&#x27; attribute is set on that object. An &#x27;array&#x27;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> schema is a list of sub schemas in a OAS document</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --git-host &lt;git host&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Git host, e.g. gitlab.com.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --git-repo-id &lt;git repo id&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Git repo ID, e.g. openapi-generator.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --git-user-id &lt;git user id&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Git user ID, e.g. openapitools.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --global-property &lt;global properties&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> sets specified global properties (previously called &#x27;system</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> properties&#x27;) in the format of name=value,name=value (or multiple</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> options, each with name=value)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --group-id &lt;group id&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> groupId in generated pom.xml</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --http-user-agent &lt;http user agent&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> HTTP user agent, e.g. codegen_csharp_api_client, default to</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> &#x27;OpenAPI-Generator/{packageVersion}/{language}&#x27;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -i &lt;spec file&gt;, --input-spec &lt;spec file&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> location of the OpenAPI spec, as URL or file (required if not loaded</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> via config using -c)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --ignore-file-override &lt;ignore file override location&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Specifies an override location for the .openapi-generator-ignore</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> file. Most useful on initial generation.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --import-mappings &lt;import mappings&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> specifies mappings between a given class and the import that should</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> be used for that class in the format of type=import,type=import. You</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> can also have multiple occurrences of this option.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --instantiation-types &lt;instantiation types&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> sets instantiation type mappings in the format of</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> type=instantiatedType,type=instantiatedType.For example (in Java):</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> array=ArrayList,map=HashMap. In other words array types will get</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> instantiated as ArrayList in generated code. You can also have</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> multiple occurrences of this option.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --invoker-package &lt;invoker package&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> root package for generated code</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --language-specific-primitives &lt;language specific primitives&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> specifies additional language specific primitive types in the format</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> of type1,type2,type3,type3. For example:</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> String,boolean,Boolean,Double. You can also have multiple</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> occurrences of this option.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --legacy-discriminator-behavior</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Set to false for generators with better support for discriminators.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> (Python, Java, Go, PowerShell, C#have this enabled by default).</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --library &lt;library&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> library template (sub-template)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --log-to-stderr</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> write all log messages (not just errors) to STDOUT. Useful for</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> piping the JSON output of debug options (e.g. `--global-property</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> debugOperations`) to an external parser directly while testing a</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generator.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --minimal-update</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Only write output files that have changed.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --model-name-prefix &lt;model name prefix&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Prefix that will be prepended to all model names.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --model-name-suffix &lt;model name suffix&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Suffix that will be appended to all model names.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --model-package &lt;model package&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> package for generated models</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -o &lt;output directory&gt;, --output &lt;output directory&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> where to write the generated files (current dir by default)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -p &lt;additional properties&gt;, --additional-properties &lt;additional</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> properties&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> sets additional properties that can be referenced by the mustache</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> templates in the format of name=value,name=value. You can also have</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> multiple occurrences of this option.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --package-name &lt;package name&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> package for generated classes (where supported)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --release-note &lt;release note&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Release note, default to &#x27;Minor update&#x27;.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --remove-operation-id-prefix</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Remove prefix of operationId, e.g. config_getId =&gt; getId</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --reserved-words-mappings &lt;reserved word mappings&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> specifies how a reserved name should be escaped to. Otherwise, the</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> default _&lt;name&gt; is used. For example id=identifier. You can also</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> have multiple occurrences of this option.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -s, --skip-overwrite</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> specifies if the existing files should be overwritten during the</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generation.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --server-variables &lt;server variables&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> sets server variables overrides for spec documents which support</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> variable templating of servers.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --skip-operation-example</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Skip examples defined in operations to avoid out of memory errors.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --skip-validate-spec</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Skips the default behavior of validating an input specification.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --strict-spec &lt;true/false strict behavior&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> &#x27;MUST&#x27; and &#x27;SHALL&#x27; wording in OpenAPI spec is strictly adhered to.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> e.g. when false, no fixes will be applied to documents which pass</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> validation but don&#x27;t follow the spec.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -t &lt;template directory&gt;, --template-dir &lt;template directory&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> folder containing the template files</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --type-mappings &lt;type mappings&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> sets mappings between OpenAPI spec types and generated code types in</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> the format of OpenAPIType=generatedType,OpenAPIType=generatedType.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> For example: array=List,map=Map,string=String. You can also have</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> multiple occurrences of this option.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -v, --verbose</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> verbose mode</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre></details><p>At a minimum, <code>generate</code> requires:</p><ul><li><code>-g</code> to specify the generator</li><li><code>-o</code> to specify a meaningful output directory (defaults to the current directory!)</li><li><code>-i</code> to specify the input OpenAPI document</li></ul><blockquote><p><strong>NOTE</strong> You may also pass <code>-Dcolor</code> as a system property to colorize terminal outputs.</p></blockquote><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="examples"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#examples" title="Direct link to heading">#</a>Examples</h3><p>The following examples use <a href="https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml">petstore.yaml</a>.</p><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="additional-properties"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#additional-properties" title="Direct link to heading">#</a>Additional Properties</h4><p>Generator-specific options should be passed as <code>--additional-properties</code>:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli generate -g go --additional-properties</span><span class="token operator">=</span><span class="token plain">prependFormOrBodyParameters</span><span class="token operator">=</span><span class="token plain">true </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -o out -i petstore.yaml</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Pass more options via comma delimited key/value pairs:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">--additional-properties</span><span class="token operator">=</span><span class="token plain">key1</span><span class="token operator">=</span><span class="token plain">value1,key2</span><span class="token operator">=</span><span class="token plain">value2</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>For the full list of generator-specific parameters, refer to <a href="/docs/generators">generators docs</a>.</p><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="type-mappings-and-import-mappings"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#type-mappings-and-import-mappings" title="Direct link to heading">#</a>Type Mappings and Import Mappings</h4><p>Most generators allow for types bound to the OpenAPI Specification&#x27;s types to be remapped to a user&#x27;s desired types. Not <em>all</em> type mappings can be reassigned, as some generators define mappings which are tightly coupled to the built-in templates.</p><p>If you&#x27;re not using your own templates with star/glob package imports, you will most likely need to combine <code>--type-mappings</code> and <code>--import-mappings</code> together.</p><ul><li><code>--type-mappings</code> Defines the user&#x27;s target type</li><li><code>--import-mappings</code> Informs the template of the type to be imported</li></ul><p>Here&#x27;s how one might change the <code>kotlin-spring</code> server generator&#x27;s default of <code>OffsetDateTime</code> to <code>LocalDateTime</code>:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli generate </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -i petstore.yaml </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -g kotlin-spring </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -o out </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --additional-properties</span><span class="token operator">=</span><span class="token plain">library</span><span class="token operator">=</span><span class="token plain">spring-boot,beanValidations</span><span class="token operator">=</span><span class="token plain">true,swaggerAnnotations</span><span class="token operator">=</span><span class="token plain">true,serviceImplementation</span><span class="token operator">=</span><span class="token plain">true </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --import-mappings</span><span class="token operator">=</span><span class="token plain">DateTime</span><span class="token operator">=</span><span class="token plain">java.time.LocalDateTime </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --type-mappings</span><span class="token operator">=</span><span class="token plain">DateTime</span><span class="token operator">=</span><span class="token plain">java.time.LocalDateTime</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><blockquote><p>NOTE: mappings are applied to <code>DateTime</code>, as this is the representation of the primitive type. See <a href="https://github.com/OpenAPITools/openapi-generator/blob/7cee999543fcc00b7c1eb9f70f0456b707c7f9e2/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java#L1431">DefaultCodegen</a>.</p></blockquote><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="file-post-processing"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#file-post-processing" title="Direct link to heading">#</a>File Post-Processing</h4><p>The <code>--enable-post-process-file</code> option enables specific generators to invoke some external language-specific formatting script. Each filename is passed <em>individually</em> to this external script, allowing for linting, formatting, or other custom clean-up.</p><p>For more details, see <a href="/docs/file-post-processing">File Post-Processing</a>.</p><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="target-external-models"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#target-external-models" title="Direct link to heading">#</a>Target External Models</h3><p>Sometimes you don&#x27;t want the codegen to make a model for you--you might want to just include one that already exists in your codebase. Say you already have a <code>User</code> object and want to reuse that, which has a different model package from the other generated files:</p><p>First, indicate that the class is already included by default. This will keep the codegen from trying to generate the class.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">--language-specific-primitives</span><span class="token operator">=</span><span class="token plain">Pet</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>This command line option will tell the generator to consider <code>Pet</code> a &quot;primitive&quot; type.</p><p>Next, if the <code>Pet</code> class is a different package, add an <code>--import-mapping</code> to tell the generator to include that import wherever <code>Pet</code> is used:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">--import-mappings</span><span class="token operator">=</span><span class="token plain">Pet</span><span class="token operator">=</span><span class="token plain">com.yourpackage.models.Pet</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Now the codegen will know what to import from that specific package.</p><p>NOTE: <code>import-mappings</code> is assigned a key-value pair in this example, but multiple values can be comma-separate. For instance:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">--import-mappings</span><span class="token operator">=</span><span class="token plain">Pet</span><span class="token operator">=</span><span class="token plain">com.yourpackage.models.Pet,User</span><span class="token operator">=</span><span class="token plain">com.yourpackage.models.User</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><h4><a aria-hidden="true" tabindex="-1" class="anchor" id="configuration-file"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#configuration-file" title="Direct link to heading">#</a>Configuration File</h4><p>Rather than passing generator options in a CSV of <code>--additional-properties</code>, you may also provide the settings via JSON file or YAML file.</p><p>For example, one of our typescript samples has the following configuration file:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-json codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token punctuation" style="color:rgb(248, 248, 242)">{</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;npmName&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;@swagger/typescript-fetch-petstore&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;npmVersion&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;1.0.0&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;npmRepository&quot;</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;https://skimdb.npmjs.com/registry&quot;</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;snapshot&quot;</span><span class="token plain"> </span><span class="token operator">:</span><span class="token plain"> </span><span class="token boolean">false</span><span class="token punctuation" style="color:rgb(248, 248, 242)">,</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> </span><span class="token property">&quot;supportsES6&quot;</span><span class="token operator">:</span><span class="token plain"> </span><span class="token boolean">true</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token punctuation" style="color:rgb(248, 248, 242)">}</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>These settings can be passed via <code>-c filename</code>. Here, we&#x27;ve saved the above as <code>config.json</code>:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli generate -i petstore.yaml -g typescript-fetch -o out </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -c config.json</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Same configuration file can be passed into YAML format having following equivalent content:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-yaml codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token key atrule">npmName</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;@swagger/typescript-fetch-petstore&quot;</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token key atrule">npmVersion</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;1.0.0&quot;</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token key atrule">npmRepository</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token string" style="color:rgb(255, 121, 198)">&quot;https://skimdb.npmjs.com/registry&quot;</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token key atrule">snapshot</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token boolean important">false</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token key atrule">supportsES6</span><span class="token punctuation" style="color:rgb(248, 248, 242)">:</span><span class="token plain"> </span><span class="token boolean important">true</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>The settings are passed exactly the same as for <code>config.json</code>. The most important part is the file extension. Supported values are <code>yml</code> or <code>yaml</code>.
The name of the file should be <code>config.yml</code> or <code>config.yaml</code> (in our example it will be <code>config.yaml</code>.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli generate -i petstore.yaml -g typescript-fetch -o out </span><span class="token punctuation" style="color:rgb(248, 248, 242)">\</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -c config.yaml</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="batch"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#batch" title="Direct link to heading">#</a>batch</h2><p>The <code>batch</code> command allows you to move all CLI arguments supported by the <code>generate</code> command into a YAML or JSON file.</p><p><em>NOTE</em>: This command supports an additional <code>!include</code> property which may point to another &quot;shared&quot; file, the base path to which can be
modified by <code>--includes-base-dir</code>. Starting with 5.0.0, the <code>!batch</code> command supports multiple <code>!include</code> properties, either sequential or nested. In order to support multiple <code>!include</code> properties in a JSON file, the property name can have a suffix, e.g. <code>!include1</code>, <code>!include2</code>, etc. The suffix have no meaning other than providing unique property names.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help batch</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli batch - Generate code in batch via external</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> configs.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli batch [--clean] [--fail-fast]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--includes-base-dir &lt;includes&gt;] [(-r &lt;threads&gt; | --threads &lt;threads&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--root-dir &lt;root&gt;] [--timeout &lt;timeout&gt;] [(-v | --verbose)] [--]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> &lt;configs&gt;...</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --clean</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> clean output of previously written files before generation</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --fail-fast</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> fail fast on any errors</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --includes-base-dir &lt;includes&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> base directory used for includes</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -r &lt;threads&gt;, --threads &lt;threads&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> thread count</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --root-dir &lt;root&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> root directory used output/includes (includes can be overridden)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --timeout &lt;timeout&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> execution timeout (minutes)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -v, --verbose</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> verbose mode</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> This option can be used to separate command-line options from the</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> list of argument, (useful when arguments might be mistaken for</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> command-line options</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> &lt;configs&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Generator configuration files.</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Example:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token comment" style="color:rgb(98, 114, 164)"># create &quot;shared&quot; config</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">mkdir</span><span class="token plain"> shared </span><span class="token operator">&amp;&amp;</span><span class="token plain"> </span><span class="token function" style="color:rgb(80, 250, 123)">cat</span><span class="token plain"> </span><span class="token operator">&gt;</span><span class="token plain"> shared/common.yaml </span><span class="token operator">&lt;&lt;</span><span class="token string" style="color:rgb(255, 121, 198)">EOF</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">inputSpec: https://raw.githubusercontent.com/OpenAPITools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">additionalProperties:</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)"> x-ext-name: &quot;Your Name&quot;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">EOF</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># create &quot;standard&quot; configs</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">cat</span><span class="token plain"> </span><span class="token operator">&gt;</span><span class="token plain"> kotlin.yaml </span><span class="token operator">&lt;&lt;</span><span class="token string" style="color:rgb(255, 121, 198)">EOF</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">&#x27;!include&#x27;: &#x27;shared/common.yaml&#x27;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">outputDir: out/kotlin</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">generatorName: kotlin</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">artifactId: kotlin-petstore-string</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">additionalProperties:</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)"> dateLibrary: string</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)"> serializableModel: &quot;true&quot;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">EOF</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token function" style="color:rgb(80, 250, 123)">cat</span><span class="token plain"> </span><span class="token operator">&gt;</span><span class="token plain"> csharp.yaml </span><span class="token operator">&lt;&lt;</span><span class="token string" style="color:rgb(255, 121, 198)">EOF</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">&#x27;!include&#x27;: &#x27;shared/common.yaml&#x27;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">outputDir: out/csharp-netcore</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">generatorName: csharp-netcore</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">additionalProperties:</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)"> packageGuid: &quot;{321C8C3F-0156-40C1-AE42-D59761FB9B6C}&quot;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)"> useCompareNetObjects: &quot;true&quot;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token string" style="color:rgb(255, 121, 198)">EOF</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"></span><span class="token comment" style="color:rgb(98, 114, 164)"># Generate them</span><span class="token plain"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli batch *.yaml</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><h2><a aria-hidden="true" tabindex="-1" class="anchor" id="author"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#author" title="Direct link to heading">#</a>author</h2><p>This command group contains utilities for authoring generators or customizing templates.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help author</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli author - Utilities for authoring generators or</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> customizing templates.</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli author</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli author template [--library &lt;library&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-v | --verbose)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-o &lt;output directory&gt; | --output &lt;output directory&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> (-g &lt;generator name&gt; | --generator-name &lt;generator name&gt;)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --help</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Display help about the tool</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --version</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Display full version output</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">COMMANDS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> With no arguments, Display help information about openapi-generator</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> template</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> Retrieve templates for local modification</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> With --library option, library template (sub-template)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> With --verbose option, verbose mode</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> With --output option, where to write the template files (defaults to</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> &#x27;out&#x27;)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> With --generator-name option, generator to use (see list command for</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> list)</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><h3><a aria-hidden="true" tabindex="-1" class="anchor" id="template"></a><a aria-hidden="true" tabindex="-1" class="hash-link" href="#template" title="Direct link to heading">#</a>template</h3><p>This command allows user to extract templates from the CLI jar which simplifies customization efforts.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-text codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli help author template</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">NAME</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli author template - Retrieve templates for local</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> modification</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">SYNOPSIS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> openapi-generator-cli author template</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> (-g &lt;generator name&gt; | --generator-name &lt;generator name&gt;)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [--library &lt;library&gt;]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-o &lt;output directory&gt; | --output &lt;output directory&gt;)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> [(-v | --verbose)]</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain">OPTIONS</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -g &lt;generator name&gt;, --generator-name &lt;generator name&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> generator to use (see list command for list)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> --library &lt;library&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> library template (sub-template)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -o &lt;output directory&gt;, --output &lt;output directory&gt;</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> where to write the template files (defaults to &#x27;out&#x27;)</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain" style="display:inline-block"></span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> -v, --verbose</span></div><div class="token-line" style="color:#F8F8F2"><span class="token plain"> verbose mode</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Example:</p><p>Extract Java templates, limiting to the <code>webclient</code> library.</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli author template -g java --library webclient</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre><p>Extract all Java templates:</p><pre class="mdxCodeBlock_iHAB"><div class="codeBlockWrapper_2QGZ"><pre class="prism-code language-bash codeBlock_19pQ" style="color:#F8F8F2;background-color:#282A36"><div class="token-line" style="color:#F8F8F2"><span class="token plain">openapi-generator-cli author template -g java</span></div></pre><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button></div></pre></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/OpenAPITools/openapi-generator/edit/master/website/../docs/usage.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 40 40" style="margin-right:0.3em;vertical-align:sub"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col text--right"><em><small>Last updated on <time datetime="2021-11-20T17:25:45.000Z" class="docLastUpdatedAt_1sqk">2021-11-20</time> by <strong>Kevin Chen</strong></small></em></div></div></div><div class="margin-vert--lg"><nav class="pagination-nav"><div class="pagination-nav__item"><a class="pagination-nav__link" href="/docs/online"><h5 class="pagination-nav__link--sublabel">Previous</h5><h4 class="pagination-nav__link--label">« Online</h4></a></div><div class="pagination-nav__item pagination-nav__item--next"><a class="pagination-nav__link" href="/docs/globals"><h5 class="pagination-nav__link--sublabel">Next</h5><h4 class="pagination-nav__link--label">Global Properties »</h4></a></div></nav></div></div></div><div class="col col--3"><div class="tableOfContents_TbNY"><ul class="contents contents__left-border"><li><a href="#help" class="contents__link">help</a></li><li><a href="#version" class="contents__link">version</a></li><li><a href="#list" class="contents__link">list</a></li><li><a href="#config-help" class="contents__link">config-help</a></li><li><a href="#meta" class="contents__link">meta</a></li><li><a href="#validate" class="contents__link">validate</a></li><li><a href="#completion" class="contents__link">completion</a></li><li><a href="#generate" class="contents__link">generate</a><ul><li><a href="#examples" class="contents__link">Examples</a></li><li><a href="#target-external-models" class="contents__link">Target External Models</a></li></ul></li><li><a href="#batch" class="contents__link">batch</a></li><li><a href="#author" class="contents__link">author</a><ul><li><a href="#template" class="contents__link">template</a></li></ul></li></ul></div></div></div></div></div></main></div></div><footer class="footer footer--dark"><div class="container"><div class="row footer__links"><div class="col footer__col"><h4 class="footer__title">Docs</h4><ul class="footer__items"><li class="footer__item"><a class="footer__link-item" href="/docs/customization">Customizing Generators</a></li><li class="footer__item"><a class="footer__link-item" href="/docs/installation">Installation</a></li><li class="footer__item"><a class="footer__link-item" href="/docs/integrations">Workflow Integrations</a></li></ul></div><div class="col footer__col"><h4 class="footer__title">Community</h4><ul class="footer__items"><li class="footer__item"><a class="footer__link-item" href="/users">User Showcase</a></li><li class="footer__item"><a class="footer__link-item" target="_blank" rel="noopener noreferrer" href="https://stackoverflow.com/questions/tagged/openapi-generator">Stack Overflow</a></li><li class="footer__item"><a class="footer__link-item" target="_blank" rel="noopener noreferrer" href="https://join.slack.com/t/openapi-generator/shared_invite/enQtNzAyNDMyOTU0OTE1LTY5ZDBiNDI5NzI5ZjQ1Y2E5OWVjMjZkYzY1ZGM2MWQ4YWFjMzcyNDY5MGI4NjQxNDBiMTlmZTc5NjY2ZTQ5MGM">Chat Room</a></li><li class="footer__item"><a class="footer__link-item" target="_blank" rel="noopener noreferrer" href="https://twitter.com/oas_generator">Twitter</a></li></ul></div><div class="col footer__col"><h4 class="footer__title">More</h4><ul class="footer__items"><li class="footer__item"><a class="footer__link-item" href="/blog">Blog</a></li><li class="footer__item"><a class="footer__link-item" target="_blank" rel="noopener noreferrer" href="https://github.com/OpenAPITools/openapi-generator">GitHub</a></li></ul></div></div><div class="text--center"><div class="margin-bottom--sm"><a href="https://openapi-generator.tech/" target="_blank" rel="noopener noreferrer" class="footerLogoLink_1Wg7"><img class="footer__logo" alt="OpenAPI Tools" src="/img/mono-logo.svg"></a></div>Copyright © 2021 OpenAPI-Generator Contributors (https://openapi-generator.tech)</div></div></footer>
</div>
<script src="/styles.38be54b8.js"></script>
<script src="/runtime~main.f7c11631.js"></script>
<script src="/main.a437a66b.js"></script>
<script src="/1.df107477.js"></script>
<script src="/2.575ca174.js"></script>
<script src="/3.eada3617.js"></script>
<script src="/1be78505.3e977af1.js"></script>
<script src="/20ac7829.be2ad927.js"></script>
<script src="/17896441.60782a44.js"></script>
<script src="/912fe03d.5500c3c6.js"></script>
</body>
</html>