[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-3923":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":25,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":39,"readmeContent":40,"aiSummary":41,"trendingCount":16,"starSnapshotCount":16,"syncStatus":42,"lastSyncTime":43,"discoverSource":44},3923,"openapi-generator","OpenAPITools\u002Fopenapi-generator","OpenAPITools","OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)","https:\u002F\u002Fopenapi-generator.tech",null,"Java",26390,7562,220,5126,0,8,64,160,52,45,"Apache License 2.0",false,"master",true,[27,28,29,30,31,32,5,33,34,35,36,37,38],"api","api-client","api-server","generator","hacktoberfest","openapi","openapi3","rest","rest-api","rest-client","restful-api","sdk","2026-06-12 02:00:56","\u003Ch1 align=\"center\">OpenAPI Generator\u003C\u002Fh1>\n\n\n\u003Cdiv align=\"center\">\n\n[![Stable releases in Maven Central](https:\u002F\u002Fimg.shields.io\u002Fmaven-metadata\u002Fv\u002Fhttps\u002Frepo1.maven.org\u002Fmaven2\u002Forg\u002Fopenapitools\u002Fopenapi-generator\u002Fmaven-metadata.xml.svg)](http:\u002F\u002Fsearch.maven.org\u002F#search%7Cgav%7C1%7Cg%3A%22org.openapitools%22%20AND%20a%3A%22openapi-generator%22)\n[![Apache 2.0 License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-Apache%202.0-orange)](.\u002FLICENSE)\n[![Open Collective backers](https:\u002F\u002Fimg.shields.io\u002Fopencollective\u002Fbackers\u002Fopenapi_generator?color=orange&label=OpenCollective%20Backers)](https:\u002F\u002Fopencollective.com\u002Fopenapi_generator)\n[![Join the Slack chat room](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FSlack-Join%20the%20chat%20room-orange)](https:\u002F\u002Fjoin.slack.com\u002Ft\u002Fopenapi-generator\u002Fshared_invite\u002Fzt-36ucx4ybl-jYrN6euoYn6zxXNZdldoZA)\n[![Follow OpenAPI Generator Twitter account to get the latest update](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Foas_generator.svg?style=social&label=Follow)](https:\u002F\u002Ftwitter.com\u002Foas_generator)\n[![Contribute with Gitpod](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FContribute%20with-Gitpod-908a85?logo=gitpod)](https:\u002F\u002Fgitpod.io\u002F#https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator)\n[![Conan Center](https:\u002F\u002Fshields.io\u002Fconan\u002Fv\u002Fopenapi-generator)](https:\u002F\u002Fconan.io\u002Fcenter\u002Frecipes\u002Fopenapi-generator)\n[![Revved up by Develocity](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FRevved%20up%20by-Develocity-06A0CE?logo=Gradle&labelColor=02303A)](https:\u002F\u002Fge.openapi-generator.tech\u002Fscans)\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n\n[Master](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Ftree\u002Fmaster) (`7.23.0`):\n[![Integration Test2](https:\u002F\u002Fcircleci.com\u002Fgh\u002FOpenAPITools\u002Fopenapi-generator.svg?style=shield)](https:\u002F\u002Fcircleci.com\u002Fgh\u002FOpenAPITools\u002Fopenapi-generator)\n[![Bitrise](https:\u002F\u002Fimg.shields.io\u002Fbitrise\u002F4a2b10a819d12b67\u002Fmaster?label=bitrise%3A%20Swift+4,5&token=859FMDR8QHwabCzwvZK6vQ)](https:\u002F\u002Fapp.bitrise.io\u002Fapp\u002F4a2b10a819d12b67)\n\n\u003C\u002Fdiv>\n\n\u003Cdiv align=\"center\">\n\n:star::star::star: If you would like to contribute, please refer to [guidelines](CONTRIBUTING.md) and a list of [open tasks](https:\u002F\u002Fgithub.com\u002Fopenapitools\u002Fopenapi-generator\u002Fissues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22). :star::star::star:\n\n:bangbang: To migrate from Swagger Codegen to OpenAPI Generator, please refer to the [migration guide](docs\u002Fmigration-from-swagger-codegen.md) :bangbang:\n\n:notebook_with_decorative_cover: For more information, please refer to the [Wiki page](https:\u002F\u002Fgithub.com\u002Fopenapitools\u002Fopenapi-generator\u002Fwiki) and [FAQ](https:\u002F\u002Fgithub.com\u002Fopenapitools\u002Fopenapi-generator\u002Fwiki\u002FFAQ) :notebook_with_decorative_cover:\n\n:notebook_with_decorative_cover: The eBook [A Beginner's Guide to Code Generation for REST APIs](https:\u002F\u002Fgum.co\u002Fopenapi_generator_ebook) is a good starting point for beginners :notebook_with_decorative_cover:\n\n:warning: If the OpenAPI spec, templates or any input (e.g. options, environment variables) is obtained from an untrusted source or environment, please make sure you've reviewed these inputs before using OpenAPI Generator to generate the API client, server stub or documentation to avoid potential security issues (e.g. [code injection](https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FCode_injection)). For security vulnerabilities, please contact [team@openapitools.org](mailto:team@openapitools.org). :warning:\n\n:bangbang: Both \"OpenAPI Tools\" (https:\u002F\u002FOpenAPITools.org - the parent organization of OpenAPI Generator) and \"OpenAPI Generator\" are not affiliated with OpenAPI Initiative (OAI) :bangbang:\n\n\u003C\u002Fdiv>\n\n## Sponsors\n\nIf you find OpenAPI Generator useful for work, please consider asking your company to support this Open Source project by [becoming a sponsor](https:\u002F\u002Fopencollective.com\u002Fopenapi_generator). You can also individually sponsor the project by [becoming a backer](https:\u002F\u002Fopencollective.com\u002Fopenapi_generator).\n\n#### Thank you to our bronze sponsors!\n\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fnamsor.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.namsor.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Flightbow.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.lightbow.net\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fdocspring.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fdocspring.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fdatadog.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fdatadoghq.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fthales.jpg\" width=\"128\" height=\"128\">](https:\u002F\u002Fcpl.thalesgroup.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fapideck.jpg\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.apideck.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fpexa.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.pexa.com.au\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fnumary.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.numary.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fonesignal.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.onesignal.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fvirtualansoftware.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.virtualansoftware.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fmergedev.jpeg\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.merge.dev\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fburkert.jpg\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.burkert.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Ffinbourne.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.finbourne.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fbumpsh.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fbump.sh\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fbileto.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.bileto.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fbairesdev.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.bairesdev.com\u002Fsponsoring-open-source-projects\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fdmtech.jpeg\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.dmtech.de\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fadyen.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fadyen.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Ffornex.png\" width=\"128\" height=\"128\">](https:\u002F\u002Ffornex.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Falloyautomation.png\" width=\"128\" height=\"128\">](https:\u002F\u002Frunalloy.com\u002Fsignup?utm_source=github&utm_medium=referral&utm_campaign=1524_openapigenerator)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fssstwitter.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fssstwitter.com\u002F?utm_source=github&utm_medium=referral&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fsvix.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.svix.com\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Flitslink.png\" width=\"128\" height=\"128\">](https:\u002F\u002Flitslink.com\u002Fservices\u002Fartificial-intelligence?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fdesignli.jpg\" width=\"128\" height=\"128\">](https:\u002F\u002Fdesignli.co?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fitm.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fopensource.muenchen.de?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fkong.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fkonghq.com\u002Fproducts\u002Fkong-konnect?utm_medium=referral&utm_source=github&utm_campaign=platform&utm_content=openapi-generator)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Froute4me.png\" width=\"128\" height=\"128\">](https:\u002F\u002Froute4me.com\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fdm.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.dotcom-monitor.com\u002Fsponsoring-open-source-projects\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fclickit.jpg\" width=\"128\" height=\"128\">](https:\u002F\u002Fwww.clickittech.com\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Funified_to.jpg\" width=\"128\" height=\"128\">](https:\u002F\u002Funified.to\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship) [\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fsavetwt.jpg\" width=\"128\" height=\"128\">](https:\u002F\u002Fsavetwt.com\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fserpapi.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fserpapi.com\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fsocialwick.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fsocialwick.com\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Ffbpostlikes.png\" width=\"128\" height=\"128\">](https:\u002F\u002Ffbpostlikes.com\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fbuyfans.png\" width=\"128\" height=\"128\">](https:\u002F\u002Fbuy.fans\u002Fbuy-tiktok-likes\u002F?utm_source=openapi-generator&utm_medium=sponsorship&utm_campaign=oss-sponsorship)\n\n\u003Cbr clear=\"left\">\n\n#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS, Checkly for sponsoring the API monitoring and Gradle for sponsoring Develocity\n\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fopenapi-generator.tech\u002Fimg\u002Fcompanies\u002Fgodaddy.png\" width=\"150\">](https:\u002F\u002Fwww.godaddy.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fwww.linode.com\u002Fmedia\u002Fimages\u002Flogos\u002Fstandard\u002Flight\u002Flinode-logo_standard_light_small.png\" width=\"150\">](https:\u002F\u002Fwww.linode.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fencrypted-tbn0.gstatic.com\u002Fimages?q=tbn%3AANd9GcRAhEYadUyZYzGUotZiSdXkVMqqLGuohyixLl4eUpUV6pAbUULL\" width=\"150\">](https:\u002F\u002Fchecklyhq.com\u002F?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n[\u003Cimg align=\"left\" src=\"https:\u002F\u002Fupload.wikimedia.org\u002Fwikipedia\u002Fcommons\u002Fthumb\u002Fc\u002Fcb\u002FGradle_logo.png\u002F320px-Gradle_logo.png\" width=\"150\">](https:\u002F\u002Fgradle.org?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)\n\n\u003Cbr clear=\"left\">\n\n## Overview\n\nOpenAPI Generator allows generation of API client libraries (SDK generation), server stubs,  documentation and configuration automatically given an [OpenAPI Spec](https:\u002F\u002Fgithub.com\u002FOAI\u002FOpenAPI-Specification) (both 2.0 and 3.0 are supported). Currently, the following languages\u002Fframeworks are supported:\n\n|                                  | Languages\u002FFrameworks                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |\n| -------------------------------- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **API clients**                  | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.1, .NET Core 3.1, .NET 5.0. Libraries: RestSharp, GenericHost, HttpClient), **C++** (Arduino, cpp-restsdk, Qt5, Tizen, Unreal Engine 4), **Clojure**, **Crystal**, **Dart**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Apache HttpClient 4.x, Apache HttpClient 5.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, Spring 6 RestClient, MicroProfile Rest Client, Helidon), **Jetbrains HTTP Client**, **Julia**, **k6**, **Kotlin**, **Lua**, **N4JS**, **Nim**, **Node.js\u002FJavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types, Apollo GraphQL DataStore), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (hyper, reqwest, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient, pekko), **Swift** (2.x, 3.x, 4.x, 5.x, 6.x), **Typescript** (AngularJS, Angular (9.x - 19.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs), **XoJo**, **Zapier** |\n| **Server stubs**                 | **Ada**, **C#** (ASP.NET Core, Azure Functions), **C++** (Httplib, Oat++, Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net\u002Fhttp, Gin, Echo), **Haskell** (Servant, Yesod), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https:\u002F\u002Fgithub.com\u002FProKarma-Inc\u002Fpkmst-getting-started-examples), [Vert.x](https:\u002F\u002Fvertx.io\u002F), [Apache Camel](https:\u002F\u002Fcamel.apache.org\u002F), [Helidon](https:\u002F\u002Fhelidon.io\u002F)), **Julia**, **Kotlin** (Spring Boot, [Ktor](https:\u002F\u002Fgithub.com\u002Fktorio\u002Fktor), [Vert.x](https:\u002F\u002Fvertx.io\u002F)), **PHP** ([Flight](https:\u002F\u002Fdocs.flightphp.com\u002F), Laravel, Lumen, [Mezzio (fka Zend Expressive)](https:\u002F\u002Fgithub.com\u002Fmezzio\u002Fmezzio), Slim, Silex, [Symfony](https:\u002F\u002Fsymfony.com\u002F)), **Python** (FastAPI, Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** ([rust-server](https:\u002F\u002Fopenapi-generator.tech\u002Fdocs\u002Fgenerators\u002Frust-server\u002F)), **Scala** (Akka, [Finch](https:\u002F\u002Fgithub.com\u002Ffinagle\u002Ffinch), [Lagom](https:\u002F\u002Fgithub.com\u002Flagom\u002Flagom), [Play](https:\u002F\u002Fwww.playframework.com\u002F), [Cask](https:\u002F\u002Fgithub.com\u002Fcom-lihaoyi\u002Fcask), Scalatra)                                                                                                                                                    |\n| **API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc**, **Markdown**, **PlantUML**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |\n| **Configuration files**          | [**Apache2**](https:\u002F\u002Fhttpd.apache.org\u002F)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |\n| **Others**                       | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Postman Collection**, **Protocol Buffer**, **WSDL**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |\n\n## Table of contents\n\n- [Sponsors](#sponsors)\n    - [Thank you to our bronze sponsors!](#thank-you-to-our-bronze-sponsors)\n    - [Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS, Checkly for sponsoring the API monitoring and Gradle for sponsoring Develocity](#thank-you-godaddy-for-sponsoring-the-domain-names-linode-for-sponsoring-the-vps-checkly-for-sponsoring-the-api-monitoring-and-gradle-for-sponsoring-develocity)\n- [Overview](#overview)\n- [Table of contents](#table-of-contents)\n- [1 - Installation](#1---installation)\n  - [1.1 - Compatibility](#11---compatibility)\n- [1.2 - Artifacts on Maven Central](#12---artifacts-on-maven-central)\n  - [1.3 - Download JAR](#13---download-jar)\n  - [Launcher Script](#launcher-script)\n  - [1.4 - Build Projects](#14---build-projects)\n    - [Nix users](#nix-users)\n  - [1.5 - Homebrew](#15---homebrew)\n  - [1.6 - Docker](#16---docker)\n    - [Public Pre-built Docker images](#public-pre-built-docker-images)\n    - [OpenAPI Generator CLI Docker Image](#openapi-generator-cli-docker-image)\n    - [OpenAPI Generator Online Docker Image](#openapi-generator-online-docker-image)\n    - [Development in docker](#development-in-docker)\n      - [Troubleshooting](#troubleshooting)\n    - [Run Docker in Vagrant](#run-docker-in-vagrant)\n  - [1.7 - NPM](#17---npm)\n  - [1.8 - pip](#18---pip)\n- [2 - Getting Started](#2---getting-started)\n- [3 - Usage](#3---usage)\n  - [To generate a sample client library](#to-generate-a-sample-client-library)\n  - [3.1 - Customization](#31---customization)\n  - [3.2 - Workflow Integration (Maven, Gradle, Github, CI\u002FCD)](#32---workflow-integration-maven-gradle-github-cicd)\n  - [3.3 - Online OpenAPI generator](#33---online-openapi-generator)\n  - [3.4 - License information on Generated Code](#34---license-information-on-generated-code)\n  - [3.5 - IDE Integration](#35---ide-integration)\n- [4 - Companies\u002FProjects using OpenAPI Generator](#4---companiesprojects-using-openapi-generator)\n- [5 - Presentations\u002FVideos\u002FTutorials\u002FBooks](#5---presentationsvideostutorialsbooks)\n- [6 - About Us](#6---about-us)\n  - [6.1 - OpenAPI Generator Core Team](#61---openapi-generator-core-team)\n    - [Core Team Members](#core-team-members)\n    - [Template Creator](#template-creator)\n    - [How to join the core team](#how-to-join-the-core-team)\n  - [6.2 - OpenAPI Generator Technical Committee](#62---openapi-generator-technical-committee)\n    - [Members of Technical Committee](#members-of-technical-committee)\n  - [6.3 - History of OpenAPI Generator](#63---history-of-openapi-generator)\n    - [Founding Members (alphabetical order):](#founding-members-alphabetical-order)\n- [7 - License](#7---license)\n\n## [1 - Installation](#table-of-contents)\n\n### [1.1 - Compatibility](#table-of-contents)\n\nThe OpenAPI Specification has undergone 3 revisions since initial creation in 2010.  The openapi-generator project has the following compatibilities with the OpenAPI Specification:\n\n| OpenAPI Generator Version                                                                                                                                 | Release Date | Notes                                             |\n| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |\n| 7.23.0 (upcoming minor release) [SNAPSHOT](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Fwiki\u002FFAQ#how-to-test-with-the-latest-master-of-openapi-generator) | 28.05.2026   | Minor release with breaking changes (with fallback) |\n| [7.22.0](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Freleases\u002Ftag\u002Fv7.22.0) (latest stable release)                                                    | 28.04.2026   | Minor release with breaking changes (with fallback) |\n| [6.6.0](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Freleases\u002Ftag\u002Fv6.6.0)                                                    | 11.05.2023   | Minor release with breaking changes (with fallback) |\n| [5.4.0](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Freleases\u002Ftag\u002Fv5.4.0)                                                    | 31.01.2022   | Minor release with breaking changes (with fallback) |\n| [4.3.1](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Freleases\u002Ftag\u002Fv4.3.1)                                                    | 06.05.2020   | Patch release (enhancements, bug fixes, etc)                       |\n\nOpenAPI Spec compatibility: 1.0, 1.1, 1.2, 2.0, 3.0, 3.1 (beta support)\n\n(We do not publish daily\u002Fnightly build. Please use SNAPSHOT instead)\n\nFor old releases, please refer to the [**Release**](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Freleases) page.\n\nFor decommissioned generators\u002Flibraries\u002Fframeworks, please refer to [the \"Decommission\" label](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Fissues?q=label%3ADecommission+is%3Amerged+) in the pull request page.\n\n## [1.2 - Artifacts on Maven Central](#table-of-contents)\n\nYou can find our released artifacts on maven central:\n\n**Core:**\n```xml\n\u003Cdependency>\n    \u003CgroupId>org.openapitools\u003C\u002FgroupId>\n    \u003CartifactId>openapi-generator\u003C\u002FartifactId>\n    \u003Cversion>${openapi-generator-version}\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\nSee the different versions of the [openapi-generator](https:\u002F\u002Fsearch.maven.org\u002Fartifact\u002Forg.openapitools\u002Fopenapi-generator) artifact available on maven central.\n\n**Cli:**\n```xml\n\u003Cdependency>\n    \u003CgroupId>org.openapitools\u003C\u002FgroupId>\n    \u003CartifactId>openapi-generator-cli\u003C\u002FartifactId>\n    \u003Cversion>${openapi-generator-version}\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\nSee the different versions of the [openapi-generator-cli](https:\u002F\u002Fsearch.maven.org\u002Fartifact\u002Forg.openapitools\u002Fopenapi-generator-cli) artifact available on maven central.\n\n**Maven plugin:**\n```xml\n\u003Cdependency>\n    \u003CgroupId>org.openapitools\u003C\u002FgroupId>\n    \u003CartifactId>openapi-generator-maven-plugin\u003C\u002FartifactId>\n    \u003Cversion>${openapi-generator-version}\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n* See the different versions of the [openapi-generator-maven-plugin](https:\u002F\u002Fsearch.maven.org\u002Fartifact\u002Forg.openapitools\u002Fopenapi-generator-maven-plugin) artifact available on maven central.\n* [Readme](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Fblob\u002Fmaster\u002Fmodules\u002Fopenapi-generator-maven-plugin\u002FREADME.md)\n\n**Gradle plugin:**\n```xml\n\u003Cdependency>\n    \u003CgroupId>org.openapitools\u003C\u002FgroupId>\n    \u003CartifactId>openapi-generator-gradle-plugin\u003C\u002FartifactId>\n    \u003Cversion>${openapi-generator-version}\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n* See the different versions of the [openapi-generator-gradle-plugin](https:\u002F\u002Fsearch.maven.org\u002Fartifact\u002Forg.openapitools\u002Fopenapi-generator-gradle-plugin) artifact available on maven central.\n* [Readme](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Fblob\u002Fmaster\u002Fmodules\u002Fopenapi-generator-gradle-plugin\u002FREADME.adoc)\n\n### [1.3 - Download JAR](#table-of-contents)\n\u003C!-- RELEASE_VERSION -->\nIf you're looking for the latest stable version, you can grab it directly from Maven.org (Java 11 runtime at a minimum):\n\nJAR location: `https:\u002F\u002Frepo1.maven.org\u002Fmaven2\u002Forg\u002Fopenapitools\u002Fopenapi-generator-cli\u002F7.22.0\u002Fopenapi-generator-cli-7.22.0.jar`\n\nFor **Mac\u002FLinux** users:\n```sh\nwget https:\u002F\u002Frepo1.maven.org\u002Fmaven2\u002Forg\u002Fopenapitools\u002Fopenapi-generator-cli\u002F7.22.0\u002Fopenapi-generator-cli-7.22.0.jar -O openapi-generator-cli.jar\n```\n\nFor **Windows** users, you will need to install [wget](http:\u002F\u002Fgnuwin32.sourceforge.net\u002Fpackages\u002Fwget.htm) or you can use Invoke-WebRequest in PowerShell (3.0+), e.g.\n```\nInvoke-WebRequest -OutFile openapi-generator-cli.jar https:\u002F\u002Frepo1.maven.org\u002Fmaven2\u002Forg\u002Fopenapitools\u002Fopenapi-generator-cli\u002F7.22.0\u002Fopenapi-generator-cli-7.22.0.jar\n```\n\nAfter downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.\n\nFor Mac users, please make sure Java 11 is installed (Tips: run `java -version` to check the version), and export `JAVA_HOME` in order to use the supported Java version:\n```sh\nexport JAVA_HOME=`\u002Fusr\u002Flibexec\u002Fjava_home -v 1.11`\nexport PATH=${JAVA_HOME}\u002Fbin:$PATH\n```\n\n\u003C!-- \u002FRELEASE_VERSION -->\n### Launcher Script\n\nOne downside to manual jar downloads is that you don't keep up-to-date with the latest released version. We have a Bash launcher script at [bin\u002Futils\u002Fopenapi-generator.cli.sh](.\u002Fbin\u002Futils\u002Fopenapi-generator-cli.sh) which resolves this issue.\n\nTo install the launcher script, copy the contents of the script to a location on your path and make the script executable.\n\nAn example of setting this up (NOTE: Always evaluate scripts curled from external systems before executing them).\n\n```\nmkdir -p ~\u002Fbin\u002Fopenapitools\ncurl https:\u002F\u002Fraw.githubusercontent.com\u002FOpenAPITools\u002Fopenapi-generator\u002Fmaster\u002Fbin\u002Futils\u002Fopenapi-generator-cli.sh > ~\u002Fbin\u002Fopenapitools\u002Fopenapi-generator-cli\nchmod u+x ~\u002Fbin\u002Fopenapitools\u002Fopenapi-generator-cli\nexport PATH=$PATH:~\u002Fbin\u002Fopenapitools\u002F\n```\n\nNow, `openapi-generator-cli` is \"installed\". On invocation, it will query the GitHub repository for the most recently released version. If this matches the last downloaded jar,\nit will execute as normal. If a newer version is found, the script will download the latest release and execute it.\n\nIf you need to invoke an older version of the generator, you can define the variable `OPENAPI_GENERATOR_VERSION` either ad hoc or globally. You can export this variable if you'd like to persist a specific release version.\n\nExamples:\n\n```\n# Execute latest released openapi-generator-cli\nopenapi-generator-cli version\n\n# Execute version 4.1.0 for the current invocation, regardless of the latest released version\nOPENAPI_GENERATOR_VERSION=4.1.0 openapi-generator-cli version\n\n# Execute version 4.1.0-SNAPSHOT for the current invocation\nOPENAPI_GENERATOR_VERSION=4.1.0-SNAPSHOT openapi-generator-cli version\n\n# Execute version 4.0.2 for every invocation in the current shell session\nexport OPENAPI_GENERATOR_VERSION=4.0.2\nopenapi-generator-cli version # is 4.0.2\nopenapi-generator-cli version # is also 4.0.2\n\n# To \"install\" a specific version, set the variable in .bashrc\u002F.bash_profile\necho \"export OPENAPI_GENERATOR_VERSION=4.0.2\" >> ~\u002F.bashrc\nsource ~\u002F.bashrc\nopenapi-generator-cli version # is always 4.0.2, unless any of the above overrides are done ad hoc\n```\n\n### [1.4 - Build Projects](#table-of-contents)\n\nTo build from source, you need the following installed and available in your `$PATH:`\n\n* [Java 11](https:\u002F\u002Fadoptium.net\u002F)\n\n* [Apache Maven 3.8.8 or greater](https:\u002F\u002Fmaven.apache.org\u002F) (optional)\n\nAfter cloning the project, you can build it from source using [maven wrapper](https:\u002F\u002Fmaven.apache.org\u002Fwrapper\u002F):\n\n- Linux: `.\u002Fmvnw clean install`\n- Windows: `mvnw.cmd clean install`\n\n#### Nix users\n\nIf you're a nix user, you can enter OpenAPI Generator shell, by typing:\n```sh\nnix develop\n```\nIt will enter a shell with Java 11 installed.\n\nDirenv supports automatically loading of the nix developer shell, so if you're using direnv too, type:\n```sh\ndirenv allow\n```\nand have `java` and `mvn` set up with correct versions each time you enter project directory.\n\nThe default build contains minimal static analysis (via CheckStyle). To run your build with PMD and Spotbugs, use the `static-analysis` profile:\n\n- Linux: `.\u002Fmvnw -Pstatic-analysis clean install`\n- Windows: `mvnw.cmd -Pstatic-analysis clean install`\n\n### [1.5 - Homebrew](#table-of-contents)\n\nTo install, run `brew install openapi-generator`\n\nHere is an example usage to generate a Ruby client:\n```sh\nopenapi-generator generate -i https:\u002F\u002Fraw.githubusercontent.com\u002Fopenapitools\u002Fopenapi-generator\u002Fmaster\u002Fmodules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml -g ruby -o \u002Ftmp\u002Ftest\u002F\n```\n\nTo reinstall with the latest master, run `brew uninstall openapi-generator && brew install --HEAD openapi-generator`\n\nTo install OpenJDK (pre-requisites), please run\n```sh\nbrew tap AdoptOpenJDK\u002Fopenjdk\nbrew install --cask adoptopenjdk11\nexport JAVA_HOME=`\u002Fusr\u002Flibexec\u002Fjava_home -v 1.11`\n```\n\nor download installer via https:\u002F\u002Fadoptium.net\u002F\n\nTo install Maven (optional), please run\n```sh\nbrew install maven\n```\n\n### [1.6 - Docker](#table-of-contents)\n\n#### Public Pre-built Docker images\n\n - [https:\u002F\u002Fhub.docker.com\u002Fr\u002Fopenapitools\u002Fopenapi-generator-cli\u002F](https:\u002F\u002Fhub.docker.com\u002Fr\u002Fopenapitools\u002Fopenapi-generator-cli\u002F) (official CLI)\n - [https:\u002F\u002Fhub.docker.com\u002Fr\u002Fopenapitools\u002Fopenapi-generator-online\u002F](https:\u002F\u002Fhub.docker.com\u002Fr\u002Fopenapitools\u002Fopenapi-generator-online\u002F) (official web service)\n\n\n#### OpenAPI Generator CLI Docker Image\n\nThe OpenAPI Generator image acts as a standalone executable. It can be used as an alternative to installing via homebrew, or for developers who are unable to install Java or upgrade the installed version.\n\nTo generate code with this image, you'll need to mount a local location as a volume.\n\nExample:\n\n```sh\ndocker run --rm -v \"${PWD}:\u002Flocal\" openapitools\u002Fopenapi-generator-cli generate \\\n    -i https:\u002F\u002Fraw.githubusercontent.com\u002Fopenapitools\u002Fopenapi-generator\u002Fmaster\u002Fmodules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml \\\n    -g go \\\n    -o \u002Flocal\u002Fout\u002Fgo\n```\n\nThe generated code will be located under `.\u002Fout\u002Fgo` in the current directory.\n\n#### OpenAPI Generator Online Docker Image\n\nThe openapi-generator-online image can act as a self-hosted web application and API for generating code. This container can be incorporated into a CI pipeline, and requires at least two HTTP requests and some docker orchestration to access generated code.\n\nExample usage:\n\n```sh\n# Start container at port 8888 and save the container id\n> CID=$(docker run -d -p 8888:8080 openapitools\u002Fopenapi-generator-online)\n\n# allow for startup\n> sleep 10\n\n# Get the IP of the running container (optional)\nGEN_IP=$(docker inspect --format '{{.NetworkSettings.IPAddress}}'  $CID)\n\n# Execute an HTTP request to generate a Ruby client\n> curl -X POST --header 'Content-Type: application\u002Fjson' --header 'Accept: application\u002Fjson' \\\n-d '{\"openAPIUrl\": \"https:\u002F\u002Fraw.githubusercontent.com\u002Fopenapitools\u002Fopenapi-generator\u002Fmaster\u002Fmodules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml\"}' \\\n'http:\u002F\u002Flocalhost:8888\u002Fapi\u002Fgen\u002Fclients\u002Fruby'\n\n{\"code\":\"c2d483.3.4672-40e9-91df-b9ffd18d22b8\",\"link\":\"http:\u002F\u002Flocalhost:8888\u002Fapi\u002Fgen\u002Fdownload\u002Fc2d483.3.4672-40e9-91df-b9ffd18d22b8\"}\n\n# Download the generated zip file\n> wget http:\u002F\u002Flocalhost:8888\u002Fapi\u002Fgen\u002Fdownload\u002Fc2d483.3.4672-40e9-91df-b9ffd18d22b8\n\n# Unzip the file\n> unzip c2d483.3.4672-40e9-91df-b9ffd18d22b8\n\n# Shutdown the openapi generator image\n> docker stop $CID && docker rm $CID\n```\n\n#### Development in docker\n\nYou can use `run-in-docker.sh` to do all development. This script maps your local repository to `\u002Fgen`\nin the docker container. It also maps `~\u002F.m2\u002Frepository` to the appropriate container location.\n\nTo execute `mvn package`:\n\n```sh\ngit clone https:\u002F\u002Fgithub.com\u002Fopenapitools\u002Fopenapi-generator\ncd openapi-generator\n.\u002Frun-in-docker.sh mvn package\n```\n\nBuild artifacts are now accessible in your working directory.\n\nOnce built, `run-in-docker.sh` will act as an executable for openapi-generator-cli. To generate code, you'll need to output to a directory under `\u002Fgen` (e.g. `\u002Fgen\u002Fout`). For example:\n\n```sh\n.\u002Frun-in-docker.sh help # Executes 'help' command for openapi-generator-cli\n.\u002Frun-in-docker.sh list # Executes 'list' command for openapi-generator-cli\n.\u002Frun-in-docker.sh generate -i modules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml \\\n    -g go -o \u002Fgen\u002Fout\u002Fgo-petstore -p packageName=petstore # generates go client, outputs locally to .\u002Fout\u002Fgo-petstore\n```\n\n##### Troubleshooting\n\nIf an error like this occurs, just execute the **mvn clean install -U** command:\n\n> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project openapi-generator: A type incompatibility occurred while executing org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test: java.lang.ExceptionInInitializerError cannot be cast to java.io.IOException\n\n```sh\n.\u002Frun-in-docker.sh mvn clean install -U\n```\n\n> Failed to execute goal org.fortasoft:gradle-maven-plugin:1.0.8:invoke (default) on project openapi-generator-gradle-plugin-mvn-wrapper: org.gradle.tooling.BuildException: Could not execute build using Gradle distribution 'https:\u002F\u002Fservices.gradle.org\u002Fdistributions\u002Fgradle-4.7-bin.zip'\n\nRight now: no solution for this one :|\n\n#### Run Docker in Vagrant\nPrerequisite: install [Vagrant](https:\u002F\u002Fwww.vagrantup.com\u002Fdownloads.html) and [VirtualBox](https:\u002F\u002Fwww.virtualbox.org\u002Fwiki\u002FDownloads).\n ```sh\ngit clone https:\u002F\u002Fgithub.com\u002Fopenapitools\u002Fopenapi-generator.git\ncd openapi-generator\nvagrant up\nvagrant ssh\ncd \u002Fvagrant\n.\u002Frun-in-docker.sh mvn package\n```\n\n### [1.7 - NPM](#table-of-contents)\n\nThere is also an [NPM package wrapper](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002F@openapitools\u002Fopenapi-generator-cli) available for different platforms (e.g. Linux, Mac, Windows). (JVM is still required)\nPlease see the [project's README](https:\u002F\u002Fgithub.com\u002Fopenapitools\u002Fopenapi-generator-cli) there for more information.\n\nInstall it globally to get the CLI available on the command line:\n\n```sh\nnpm install @openapitools\u002Fopenapi-generator-cli -g\nopenapi-generator-cli version\n```\n\n\u003C!-- RELEASE_VERSION -->\nTo use a specific version of \"openapi-generator-cli\"\n\n```sh\nopenapi-generator-cli version-manager set 7.22.0\n```\n\nOr install it as dev-dependency:\n\n```sh\nnpm install @openapitools\u002Fopenapi-generator-cli -D\n```\n\u003C!-- \u002FRELEASE_VERSION -->\n\nYou can use [locally built JARs](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator-cli?tab=readme-ov-file#use-locally-built-jar) or [`SNAPSHOT` versions](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator-cli?tab=readme-ov-file#use-nightly-snapshot-build) as well.\n\n### [1.8 - pip](#table-of-contents)\n\n\n> **Platform(s)**: Linux, macOS, Windows\n**Install** via [PyPI](https:\u002F\u002Fpypi.org\u002F) (`java` executable is needed to run):\n\n```\npip install openapi-generator-cli\n```\n\nTo install a specific version\n```\npip install openapi-generator-cli==7.22.0\n```\n\nYou can also install with [jdk4py](https:\u002F\u002Fgithub.com\u002Factiveviam\u002Fjdk4py) instead of java binary. (python>=3.10 is required)\n\n```\npip install openapi-generator-cli[jdk4py]\n```\n\nRef: https:\u002F\u002Fgithub.com\u002FopenAPITools\u002Fopenapi-generator-pip\n\n## [2 - Getting Started](#table-of-contents)\n\nTo generate a PHP client for [petstore.yaml](https:\u002F\u002Fraw.githubusercontent.com\u002Fopenapitools\u002Fopenapi-generator\u002Fmaster\u002Fmodules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml), please run the following\n```sh\ngit clone https:\u002F\u002Fgithub.com\u002Fopenapitools\u002Fopenapi-generator\ncd openapi-generator\n.\u002Fmvnw clean package\njava -jar modules\u002Fopenapi-generator-cli\u002Ftarget\u002Fopenapi-generator-cli.jar generate \\\n   -i https:\u002F\u002Fraw.githubusercontent.com\u002Fopenapitools\u002Fopenapi-generator\u002Fmaster\u002Fmodules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml \\\n   -g php \\\n   -o \u002Fvar\u002Ftmp\u002Fphp_api_client\n```\n(if you're on Windows, replace the last command with `java -jar modules\\openapi-generator-cli\\target\\openapi-generator-cli.jar generate -i https:\u002F\u002Fraw.githubusercontent.com\u002Fopenapitools\u002Fopenapi-generator\u002Fmaster\u002Fmodules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml -g php -o c:\\temp\\php_api_client`)\n\n\u003C!-- RELEASE_VERSION -->\nYou can also download the JAR (latest release) directly from [maven.org](https:\u002F\u002Frepo1.maven.org\u002Fmaven2\u002Forg\u002Fopenapitools\u002Fopenapi-generator-cli\u002F7.22.0\u002Fopenapi-generator-cli-7.22.0.jar)\n\u003C!-- \u002FRELEASE_VERSION -->\n\nTo get a list of **general** options available, please run `java -jar modules\u002Fopenapi-generator-cli\u002Ftarget\u002Fopenapi-generator-cli.jar help generate`\n\nTo get a list of PHP specified options (which can be passed to the generator with a config file via the `-c` option), please run `java -jar modules\u002Fopenapi-generator-cli\u002Ftarget\u002Fopenapi-generator-cli.jar config-help -g php`\n\n## [3 - Usage](#table-of-contents)\n\n### To generate a sample client library\nYou can build a client against the [Petstore API](https:\u002F\u002Fraw.githubusercontent.com\u002Fopenapitools\u002Fopenapi-generator\u002Fmaster\u002Fmodules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml) as follows:\n\n```sh\n.\u002Fbin\u002Fgenerate-samples.sh .\u002Fbin\u002Fconfigs\u002Fjava-okhttp-gson.yaml\n```\n\n(On Windows, please install [GIT Bash for Windows](https:\u002F\u002Fgitforwindows.org\u002F) to run the command above)\n\nThis script uses the default library, which is `okhttp-gson`. It will run the generator with this command:\n\n```sh\njava -jar modules\u002Fopenapi-generator-cli\u002Ftarget\u002Fopenapi-generator-cli.jar generate \\\n  -i https:\u002F\u002Fraw.githubusercontent.com\u002Fopenapitools\u002Fopenapi-generator\u002Fmaster\u002Fmodules\u002Fopenapi-generator\u002Fsrc\u002Ftest\u002Fresources\u002F3_0\u002Fpetstore.yaml \\\n  -g java \\\n  -t modules\u002Fopenapi-generator\u002Fsrc\u002Fmain\u002Fresources\u002FJava \\\n  --additional-properties artifactId=petstore-okhttp-gson,hideGenerationTimestamp=true \\\n  -o samples\u002Fclient\u002Fpetstore\u002Fjava\u002Fokhttp-gson\n```\n\nwith a number of options. [The java options are documented here.](docs\u002Fgenerators\u002Fjava.md)\n\nYou can also get the options with the `help generate` command (below only shows partial results):\n\n```\nNAME\n        openapi-generator-cli generate - Generate code with the specified\n        generator.\n\nSYNOPSIS\n        openapi-generator-cli generate\n                [(-a \u003Cauthorization> | --auth \u003Cauthorization>)]\n                [--api-name-suffix \u003Capi name suffix>] [--api-package \u003Capi package>]\n                [--artifact-id \u003Cartifact id>] [--artifact-version \u003Cartifact version>]\n                [(-c \u003Cconfiguration file> | --config \u003Cconfiguration file>)] [--dry-run]\n                [(-e \u003Ctemplating engine> | --engine \u003Ctemplating engine>)]\n                [--enable-post-process-file]\n                [(-g \u003Cgenerator name> | --generator-name \u003Cgenerator name>)]\n                [--generate-alias-as-model] [--git-host \u003Cgit host>]\n                [--git-repo-id \u003Cgit repo id>] [--git-user-id \u003Cgit user id>]\n                [--global-property \u003Cglobal properties>...] [--group-id \u003Cgroup id>]\n                [--http-user-agent \u003Chttp user agent>]\n                [(-i \u003Cspec file> | --input-spec \u003Cspec file>)]\n                [--ignore-file-override \u003Cignore file override location>]\n                [--import-mappings \u003Cimport mappings>...]\n                [--instantiation-types \u003Cinstantiation types>...]\n                [--invoker-package \u003Cinvoker package>]\n                [--language-specific-primitives \u003Clanguage specific primitives>...]\n                [--legacy-discriminator-behavior] [--library \u003Clibrary>]\n                [--log-to-stderr] [--minimal-update]\n                [--model-name-prefix \u003Cmodel name prefix>]\n                [--model-name-suffix \u003Cmodel name suffix>]\n                [--model-package \u003Cmodel package>]\n                [(-o \u003Coutput directory> | --output \u003Coutput directory>)] [(-p \u003Cadditional properties> | --additional-properties \u003Cadditional properties>)...]\n                [--package-name \u003Cpackage name>] [--release-note \u003Crelease note>]\n                [--remove-operation-id-prefix]\n                [--reserved-words-mappings \u003Creserved word mappings>...]\n                [(-s | --skip-overwrite)] [--server-variables \u003Cserver variables>...]\n                [--skip-validate-spec] [--strict-spec \u003Ctrue\u002Ffalse strict behavior>]\n                [(-t \u003Ctemplate directory> | --template-dir \u003Ctemplate directory>)]\n                [--type-mappings \u003Ctype mappings>...] [(-v | --verbose)]\n\nOPTIONS\n        -a \u003Cauthorization>, --auth \u003Cauthorization>\n            adds authorization headers when fetching the OpenAPI definitions\n            remotely. Pass in a URL-encoded string of name:header with a comma\n            separating multiple values\n\n...... (results omitted)\n\n        -v, --verbose\n            verbose mode\n\n```\n\nYou can then compile and run the client, as well as unit tests against it:\n\n```sh\ncd samples\u002Fclient\u002Fpetstore\u002Fjava\u002Fokhttp-gson\nmvn package\n```\n\nOther generators have [samples](https:\u002F\u002Fgithub.com\u002FOpenAPITools\u002Fopenapi-generator\u002Ftree\u002Fmaster\u002Fsamples) too.\n\n### [3.1 - Customization](#table-of-contents)\n\nPlease refer to [customization.md](docs\u002Fcustomization.md) on how to customize the output (e.g. package name, version)\n\n### [3.2 - Workflow Integration (Maven, Gradle, Github, CI\u002FCD)](#table-of-contents)\n\nPlease refer to [integration.md](docs\u002Fintegration.md) on how to integrate OpenAPI generator with Maven, Gradle, sbt, Bazel, Github and CI\u002FCD.\n\n### [3.3 - Online OpenAPI generator](#table-of-contents)\n\nHere are the public online services:\n\n- latest stable version: https:\u002F\u002Fapi.openapi-generator.tech\n- latest master: https:\u002F\u002Fapi-latest-master.openapi-generator.tech (updated with latest master every hour)\n\nThe server is sponsored by [Linode](https:\u002F\u002Fwww.linode.com\u002F) [![Linode Logo](https:\u002F\u002Fwww.linode.com\u002Fmedia\u002Fimages\u002Flogos\u002Fstandard\u002Flight\u002Flinode-logo_standard_light_small.png)](https:\u002F\u002Fwww.linode.com\u002F)\n\n(These services are beta and do not have any guarantee on service level)\n\nPlease refer to [online.md](docs\u002Fonline.md) on how to run and use the `openapi-generator-online` - a web service for `openapi-generator`.\n\n### [3.4 - License information on Generated Code](#table-of-contents)\n\nThe OpenAPI Generator project is intended as a benefit for users of the Open API Specification.  The project itself has the [License](#7---license) as specified. In addition, please understand the following points:\n\n* The templates included with this project are subject to the [License](#7---license).\n* Generated code is intentionally _not_ subject to the parent project license\n\nWhen code is generated from this project, it shall be considered **AS IS** and owned by the user of the software.  There are no warranties--expressed or implied--for generated code.  You can do what you wish with it, and once generated, the code is your responsibility and subject to the licensing terms that you deem appropriate.\n\n### [3.5 - IDE Integration](#table-of-contents)\n\nHere is a list of community-contributed IDE plug-ins that integrate with OpenAPI Generator:\n\n- Eclipse: [Codewind OpenAPI Tools for Eclipse](https:\u002F\u002Fwww.eclipse.org\u002Fcodewind\u002Fopen-api-tools-for-eclipse.html) by [IBM](https:\u002F\u002Fwww.ibm.com)\n- IntelliJ IDEA: [OpenAPI Generator](https:\u002F\u002Fplugins.jetbrains.com\u002Fplugin\u002F8433-openapi-generator) by [Jim Schubert](https:\u002F\u002Fjimschubert.us\u002F#\u002F)\n- IntelliJ IDEA: [Senya Editor](https:\u002F\u002Fplugins.jetbrains.com\u002Fplugin\u002F10690-senya-editor) by [senya.io](https:\u002F\u002Fsenya.io)\n- [RepreZen API Studio](https:\u002F\u002Fwww.reprezen.com\u002F)\n- Visual Studio: [REST API Client Code Generator](https:\u002F\u002Fmarketplace.visualstudio.com\u002Fitems?itemName=ChristianResmaHelle.ApiClientCodeGenerator) by [Christian Resma Helle](https:\u002F\u002Fchristian-helle.blogspot.com\u002F)\n- Visual Studio Code: [Codewind OpenAPI Tools](https:\u002F\u002Fmarketplace.visualstudio.com\u002Fitems?itemName=IBM.codewind-openapi-tools) by [IBM](https:\u002F\u002Fmarketplace.visualstudio.com\u002Fpublishers\u002FIBM)\n\n\n## [4 - Companies\u002FProjects using OpenAPI Generator](#table-of-contents)\nHere are some companies\u002Fprojects (alphabetical order) using OpenAPI Generator in production. To add your company\u002Fproject to the list, please visit [README.md](README.md) and click on the icon to edit the page.\n\n- [Aalborg University](https:\u002F\u002Fwww.aau.dk)\n- [act coding](https:\u002F\u002Fgithub.com\u002Factcoding)\n- [Adaptant Solutions AG](https:\u002F\u002Fwww.adaptant.io\u002F)\n- [adesso SE](https:\u002F\u002Fwww.adesso.de\u002F)\n- [adorsys GmbH & Co.KG](https:\u002F\u002Fadorsys.com\u002F)\n- [Adyen](https:\u002F\u002Fwww.adyen.com\u002F)\n- [Agoda](https:\u002F\u002Fwww.agoda.com\u002F)\n- [Airthings](https:\u002F\u002Fwww.airthings.com\u002F)\n- [Aleri Solutions Gmbh](https:\u002F\u002Fwww.aleri.de\u002F)\n- [Allianz](https:\u002F\u002Fwww.allianz.com)\n- [Angular.Schule](https:\u002F\u002Fangular.schule\u002F)\n- [Aqovia](https:\u002F\u002Faqovia.com\u002F)\n- [Australia and New Zealand Banking Group (ANZ)](http:\u002F\u002Fwww.anz.com\u002F)\n- [Arduino](https:\u002F\u002Fwww.arduino.cc\u002F)\n- [ASKUL](https:\u002F\u002Fwww.askul.co.jp)\n- [Amazon Web Services (AWS)](https:\u002F\u002Faws.amazon.com\u002F)\n- [b\u003C>com](https:\u002F\u002Fb-com.com\u002Fen)\n- [百度营销](https:\u002F\u002Fe.baidu.com)\n- [Bandwidth](https:\u002F\u002Fdev.bandwidth.com)\n- [Banzai Cloud](https:\u002F\u002Fbanzaicloud.com)\n- [BIMData.io](https:\u002F\u002Fbimdata.io)\n- [Bithost GmbH](https:\u002F\u002Fwww.bithost.ch)\n- [Bosch Connected Industry](https:\u002F\u002Fwww.bosch-connected-industry.com)\n- [Boxever](https:\u002F\u002Fwww.boxever.com\u002F)\n- [Brevy](https:\u002F\u002Fwww.brevy.com)\n- [Bunker Holding Group](https:\u002F\u002Fwww.bunker-holding.com\u002F)\n- [California State University, Northridge](https:\u002F\u002Fwww.csun.edu)\n- [CAM](https:\u002F\u002Fwww.cam-inc.co.jp\u002F)\n- [Camptocamp](https:\u002F\u002Fwww.camptocamp.com\u002Fen)\n- [Carlsberg Group](https:\u002F\u002Fwww.carlsberggroup.com\u002F)\n- [CERN](https:\u002F\u002Fhome.cern\u002F)\n- [Christopher Queen Consulting](https:\u002F\u002Fwww.christopherqueenconsulting.com\u002F)\n- [Cisco](https:\u002F\u002Fwww.cisco.com\u002F)\n- [codecentric AG](https:\u002F\u002Fwww.codecentric.de\u002F)\n- [CoinAPI](https:\u002F\u002Fwww.coinapi.io\u002F)\n- [Commencis](https:\u002F\u002Fwww.commencis.com\u002F)\n- [ConfigCat](https:\u002F\u002Fconfigcat.com\u002F)\n- [cronn GmbH](https:\u002F\u002Fwww.cronn.de\u002F)\n- [Crossover Health](https:\u002F\u002Fcrossoverhealth.com\u002F)\n- [Cupix](https:\u002F\u002Fwww.cupix.com\u002F)\n- [Datadog](https:\u002F\u002Fwww.datadoghq.com)\n- [DB Systel](https:\u002F\u002Fwww.dbsystel.de)\n- [Deeporute.ai](https:\u002F\u002Fwww.deeproute.ai\u002F)\n- [Devsupply](https:\u002F\u002Fwww.devsupply.com\u002F)\n- [dmTECH GmbH](https:\u002F\u002Fwww.dmTECH.de)\n- [DocSpring](https:\u002F\u002Fdocspring.com\u002F)\n- [dwango](https:\u002F\u002Fdwango.co.jp\u002F)\n- [Edge Impulse](https:\u002F\u002Fwww.edgeimpulse.com\u002F)\n- [Element AI](https:\u002F\u002Fwww.elementai.com\u002F)\n- [Embotics](https:\u002F\u002Fwww.embotics.com\u002F)\n- [emineo](https:\u002F\u002Fwww.emineo.ch)\n- [fastly](https:\u002F\u002Fwww.fastly.com\u002F)\n- [Fenergo](https:\u002F\u002Fwww.fenergo.com\u002F)\n- [freee](https:\u002F\u002Fcorp.freee.co.jp\u002Fen\u002F)\n- [FreshCells](https:\u002F\u002Fwww.freshcells.de\u002F)\n- [Fuse](https:\u002F\u002Fwww.fuse.no\u002F)\n- [Gantner](https:\u002F\u002Fwww.gantner.com)\n- [GenFlow](https:\u002F\u002Fgithub.com\u002FRepreZen\u002FGenFlow)\n- [GetYourGuide](https:\u002F\u002Fwww.getyourguide.com\u002F)\n- [Glovo](https:\u002F\u002Fglovoapp.com\u002F)\n- [GMO Pepabo](https:\u002F\u002Fpepabo.com\u002Fen\u002F)\n- [GoDaddy](https:\u002F\u002Fgodaddy.com)\n- [Gumtree](https:\u002F\u002Fgumtree.com)\n- [Here](https:\u002F\u002Fdeveloper.here.com\u002F)\n- [IBM](https:\u002F\u002Fwww.ibm.com\u002F)\n- [Instana](https:\u002F\u002Fwww.instana.com)\n- [Interxion](https:\u002F\u002Fwww.interxion.com)\n- [Inquisico](https:\u002F\u002Finquisico.com)\n- [JustStar](https:\u002F\u002Fwww.juststarinfo.com)\n- [k6.io](https:\u002F\u002Fk6.io\u002F)\n- [Klarna](https:\u002F\u002Fwww.klarna.com\u002F)\n- [Kronsoft Development](https:\u002F\u002Fwww.kronsoft.ro\u002Fhome\u002F)\n- [Kubernetes](https:\u002F\u002Fkubernetes.io)\n- [Landeshauptstadt München - it@M](https:\u002F\u002Fmuenchen.digital\u002Fit-at-m\u002F)\n- [Linode](https:\u002F\u002Fwww.linode.com\u002F)\n- [Logicdrop](https:\u002F\u002Fwww.logicdrop.com)\n- [Lumeris](https:\u002F\u002Fwww.lumeris.com)\n- [LVM Versicherungen](https:\u002F\u002Fwww.lvm.de)\n- [MailSlurp](https:\u002F\u002Fwww.mailslurp.com)\n- [Manticore Search](https:\u002F\u002Fmanticoresearch.com)\n- [Mastercard](https:\u002F\u002Fdevelopers.mastercard.com)\n- [Médiavision](https:\u002F\u002Fwww.mediavision.fr\u002F)\n- [Metaswitch](https:\u002F\u002Fwww.metaswitch.com\u002F)\n- [MoonVision](https:\u002F\u002Fwww.moonvision.io\u002F)\n- [Myworkout](https:\u002F\u002Fmyworkout.com)\n- [NamSor](https:\u002F\u002Fwww.namsor.com\u002F)\n- [Neverfail](https:\u002F\u002Fwww.neverfail.com\u002F)\n- [NeuerEnergy](https:\u002F\u002Fneuerenergy.com)\n- [Nokia](https:\u002F\u002Fwww.nokia.com\u002F)\n- [OneSignal](https:\u002F\u002Fwww.onesignal.com\u002F)\n- [Options Clearing Corporation (OCC)](https:\u002F\u002Fwww.theocc.com\u002F)\n- [Openet](https:\u002F\u002Fwww.openet.com\u002F)\n- [openVALIDATION](https:\u002F\u002Fopenvalidation.io\u002F)\n- [Oracle](https:\u002F\u002Fwww.oracle.com\u002F)\n- [Paxos](https:\u002F\u002Fwww.paxos.com)\n- [Plaid](https:\u002F\u002Fplaid.com)\n- [PLAID, Inc.](https:\u002F\u002Fplaid.co.jp\u002F)\n- [Pinterest](https:\u002F\u002Fwww.pinterest.com)\n- [Ponicode](https:\u002F\u002Fponicode.dev\u002F)\n- [Pricefx](https:\u002F\u002Fwww.pricefx.com\u002F)\n- [PrintNanny](https:\u002F\u002Fwww.print-nanny.com\u002F)\n- [Prometheus\u002FAlertmanager](https:\u002F\u002Fgithub.com\u002Fprometheus\u002Falertmanager)\n- [Qavar](https:\u002F\u002Fwww.qavar.com)\n- [QEDIT](https:\u002F\u002Fqed-it.com)\n- [Qovery](https:\u002F\u002Fqovery.com)\n- [Qulix Systems](https:\u002F\u002Fwww.qulix.com)\n- [Raksul](https:\u002F\u002Fcorp.raksul.com)\n- [Raiffeisen Schweiz Genossenschaft](https:\u002F\u002Fwww.raiffeisen.ch)\n- [RedHat](https:\u002F\u002Fwww.redhat.com)\n- [RepreZen API Studio](https:\u002F\u002Fwww.reprezen.com\u002Fswagger-openapi-code-generation-api-first-microservices-enterprise-development)\n- [REST United](https:\u002F\u002Frestunited.com)\n- [Robocorp](https:\u002F\u002Fwww.robocorp.com)\n- [Robotinfra](https:\u002F\u002Fwww.robotinfra.com)\n- [Sarvika Technologies Pvt. Ltd.](https:\u002F\u002Fwww.sarvika.com)\n- [SearchApi](https:\u002F\u002Fwww.searchapi.io\u002F)\n- [SmartHR](https:\u002F\u002Fsmarthr.co.jp\u002F)\n- [Sony Interactive Entertainment](https:\u002F\u002Fwww.sie.com\u002Fen\u002Findex.html)\n- [Splitit](https:\u002F\u002Fwww.splitit.com\u002F)\n- [Stingray](http:\u002F\u002Fwww.stingray.com)\n- [Suva](https:\u002F\u002Fwww.suva.ch\u002F)\n- [Svix](https:\u002F\u002Fwww.svix.com\u002F)\n- [Telstra](https:\u002F\u002Fdev.telstra.com)\n- [Tencent](https:\u002F\u002Fwww.tencent.com)\n- [The University of Aizu](https:\u002F\u002Fwww.u-aizu.ac.jp\u002Fen\u002F)\n- [TINQIN](https:\u002F\u002Fwww.tinqin.com\u002F)\n- [Translucent ApS](https:\u002F\u002Fwww.translucent.dk)\n- [TravelTime platform](https:\u002F\u002Fwww.traveltimeplatform.com\u002F)\n- [TribalScale](https:\u002F\u002Fwww.tribalscale.com)\n- [Trifork](https:\u002F\u002Ftrifork.com)\n- [TUI InfoTec GmbH](http:\u002F\u002Fwww.tui-infotec.com\u002F)\n- [Twilio](https:\u002F\u002Fwww.twilio.com\u002F)\n- [Twitter](https:\u002F\u002Ftwitter.com)\n- [unblu inc.](https:\u002F\u002Fwww.unblu.com\u002F)\n- [Veamly](https:\u002F\u002Fwww.veamly.com\u002F)\n- [VMWare](https:\u002F\u002Fwww.vmware.com\u002F)\n- [wbt-solutions](https:\u002F\u002Fwww.wbt-solutions.de\u002F)\n- [Woleet](https:\u002F\u002Fwww.woleet.io\u002F)\n- [WSO2](https:\u002F\u002Fwso2.com\u002F)\n- [Vouchery.io](https:\u002F\u002Fvouchery.io)\n- [Xero](https:\u002F\u002Fwww.xero.com\u002F)\n- [Yahoo Japan](https:\u002F\u002Fwww.yahoo.co.jp\u002F)\n- [viadee](https:\u002F\u002Fwww.viadee.de\u002F)\n- [Vonage](https:\u002F\u002Fvonage.com)\n- [YITU Technology](https:\u002F\u002Fwww.yitutech.com\u002F)\n- [Yelp](https:\u002F\u002Fwww.yelp.com\u002F)\n- [Zalando](https:\u002F\u002Fwww.zalando.com)\n- [3DS Outscale](https:\u002F\u002Fwww.outscale.com\u002F)\n\n## [5 - Presentations\u002FVideos\u002FTutorials\u002FBooks](#table-of-contents)\n\n- 2018\u002F05\u002F12 - [OpenAPI Generator - community drivenで成長するコードジェネレータ](https:\u002F\u002Fackintosh.github.io\u002Fblog\u002F2018\u002F05\u002F12\u002Fopenapi-generator\u002F) by [中野暁人](https:\u002F\u002Fgithub.com\u002Fackintosh)\n- 2018\u002F05\u002F15 - [Starting a new open-source project](http:\u002F\u002Fjmini.github.io\u002Fblog\u002F2018\u002F2018-05-15_new-open-source-project.html) by [Jeremie Bresson](https:\u002F\u002Fgithub.com\u002Fjmini)\n- 2018\u002F05\u002F15 - [REST API仕様からAPIクライアントやスタブサーバを自動生成する「OpenAPI Generator」オープンソースで公開。Swagger Codegenからのフォーク](https:\u002F\u002Fwww.publickey1.jp\u002Fblog\u002F18\u002Frest_apiapiopenapi_generatorswagger_generator.html) by [Publickey](https:\u002F\u002Fwww.publickey1.jp)\n- 2018\u002F06\u002F08 - [Swagger Codegen is now OpenAPI Generator](https:\u002F\u002Fangular.schule\u002Fblog\u002F2018-06-swagger-codegen-is-now-openapi-generator) by [JohannesHoppe](https:\u002F\u002Fgithub.com\u002FJohannesHoppe)\n- 2018\u002F06\u002F21 - [Connect your JHipster apps to the world of APIs with OpenAPI and gRPC](https:\u002F\u002Ffr.slideshare.net\u002Fchbornet\u002Fjhipster-conf-2018-connect-your-jhipster-apps-to-the-world-of-apis-with-openapi-and-grpc) by [Christophe Bornet](https:\u002F\u002Fgithub.com\u002Fcbornet) at [JHipster Conf 2018](https:\u002F\u002Fjhipster-conf.github.io\u002F)\n- 2018\u002F06\u002F22 - [OpenAPI Generator で Gatling Client を生成してみた](https:\u002F\u002Frohki.hatenablog.com\u002Fentry\u002F2018\u002F06\u002F22\u002F073000) at [ソモサン](https:\u002F\u002Frohki.hatenablog.com\u002F)\n- 2018\u002F06\u002F27 - [Lessons Learned from Leading an Open-Source Project Supporting 30+ Programming Languages](https:\u002F\u002Fspeakerdeck.com\u002Fwing328\u002Flessons-learned-from-leading-an-open-source-project-supporting-30-plus-programming-languages) - [William Cheng](https:\u002F\u002Fgithub.com\u002Fwing328) at [LinuxCon + ContainerCon + CloudOpen China 2018](http:\u002F\u002Fbit.ly\u002F2waDKKX)\n- 2018\u002F07\u002F19 - [OpenAPI Generator Contribution Quickstart - RingCentral Go SDK](https:\u002F\u002Fmedium.com\u002Fringcentral-developers\u002Fopenapi-generator-for-go-contribution-quickstart-8cc72bf37b53) by [John Wang](https:\u002F\u002Fgithub.com\u002Fgrokify)\n- 2018\u002F08\u002F22 - [OpenAPI Generatorのプロジェクト構成などのメモ](https:\u002F\u002Fyinm.info\u002F20180822\u002F) by [Yusuke Iinuma](https:\u002F\u002Fgithub.com\u002Fyinm)\n- 2018\u002F09\u002F12 - [RepreZen and OpenAPI 3.0: Now is the Time](https:\u002F\u002Fwww.reprezen.com\u002Fblog\u002Freprezen-openapi-3.0-upgrade-now-is-the-time) by [Miles Daffin](https:\u002F\u002Fwww.reprezen.com\u002Fblog\u002Fauthor\u002Fmiles-daffin)\n- 2018\u002F10\u002F31 - [A node package wrapper for openapi-generator](https:\u002F\u002Fgithub.com\u002FHarmoWatch\u002Fopenapi-generator-cli)\n- 2018\u002F11\u002F03 - [OpenAPI Generator + golang + Flutter でアプリ開発](http:\u002F\u002Fryuichi111std.hatenablog.com\u002Fentry\u002F2018\u002F11\u002F03\u002F214005) by [Ryuichi Daigo](https:\u002F\u002Fgithub.com\u002Fryuichi111)\n- 2018\u002F11\u002F15 - [基于openapi3.0的yaml文件生成java代码的一次实践](https:\u002F\u002Fblog.csdn.net\u002Fyzy199391\u002Farticle\u002Fdetails\u002F84023982) by [焱魔王](https:\u002F\u002Fme.csdn.net\u002Fyzy199391)\n- 2018\u002F11\u002F18 - [Generating PHP library code from OpenAPI](https:\u002F\u002Flornajane.net\u002Fposts\u002F2018\u002Fgenerating-php-library-code-from-openapi) by [Lorna Jane](https:\u002F\u002Flornajane.net\u002F) at [LORNAJANE Blog](https:\u002F\u002Flornajane.net\u002Fblog)\n- 2018\u002F11\u002F19 - [OpenAPIs are everywhere](https:\u002F\u002Fyoutu.be\u002F-lDot4Yn7Dg) by [Jeremie Bresson (Unblu)](https:\u002F\u002Fgithub.com\u002Fjmini) at [EclipseCon Europe 2018](https:\u002F\u002Fwww.eclipsecon.org\u002Feurope2018)\n- 2018\u002F12\u002F09 - [openapi-generator をカスタマイズする方法](https:\u002F\u002Fqiita.com\u002Fwatiko\u002Fitems\u002F0961287c02eac9211572) by [@watiko](https:\u002F\u002Fqiita.com\u002Fwatiko)\n- 2019\u002F01\u002F03 - [Calling a Swagger service from Apex using openapi-generator](https:\u002F\u002Flekkimworld.com\u002F2019\u002F01\u002F03\u002Fcalling-a-swagger-service-from-apex-using-openapi-generator\u002F) by [Mikkel Flindt Heisterberg](https:\u002F\u002Flekkimworld.com)\n- 2019\u002F01\u002F13 - [OpenAPI GeneratorでRESTful APIの定義書から色々自動生成する](https:\u002F\u002Fky-yk-d.hatenablog.com\u002Fentry\u002F2019\u002F01\u002F13\u002F234108) by [@ky_yk_d](https:\u002F\u002Ftwitter.com\u002Fky_yk_d)\n- 2019\u002F01\u002F20 - [Contract-First API Development with OpenAPI Generator and Connexion](https:\u002F\u002Fmedium.com\u002Fcommencis\u002Fcontract-first-api-development-with-openapi-generator-and-connexion-b21bbf2f9244) by [Anil Can Aydin](https:\u002F\u002Fgithub.com\u002Fanlcnydn)\n- 2019\u002F01\u002F30 - [Rapid Application Development With API First Approach Using Open-API Generator](https:\u002F\u002Fdzone.com\u002Farticles\u002Frapid-api-development-using-open-api-generator) by [Milan Sonkar](https:\u002F\u002Fdzone.com\u002Fusers\u002F828329\u002Fmilan_sonkar.html)\n- 2019\u002F02\u002F02 - [平静を保ち、コードを生成せよ 〜 OpenAPI Generator誕生の背景と軌跡 〜](https:\u002F\u002Fspeakerdeck.com\u002Fakihito_nakano\u002Fgunmaweb34) by [中野暁人](https:\u002F\u002Fgithub.com\u002Fackintosh) at [Gunma.web #34 スキーマ駆動開発](https:\u002F\u002Fgunmaweb.connpass.com\u002Fevent\u002F113974\u002F)\n- 2019\u002F02\u002F20 - [An adventure in OpenAPI V3 code generation](https:\u002F\u002Fmux.com\u002Fblog\u002Fan-adventure-in-openapi-v3-api-code-generation\u002F) by [Phil Cluff](https:\u002F\u002Fmux.com\u002Fblog\u002Fauthor\u002Fphilc\u002F)\n- 2019\u002F02\u002F26 - [Building API Services: A Beginner’s Guide](https:\u002F\u002Fmedium.com\u002Fgoogle-cloud\u002Fbuilding-api-services-a-beginners-guide-7274ae4c547f) by [Ratros Y.](https:\u002F\u002Fmedium.com\u002F@ratrosy) in [Google Cloud Platform Blog](https:\u002F\u002Fmedium.com\u002Fgoogle-cloud)\n- 2019\u002F02\u002F26 - [Building APIs with OpenAPI: Continued](https:\u002F\u002Fmedium.com\u002F@ratrosy\u002Fbuilding-apis-with-openapi-continued-5d0faaed32eb) by [Ratros Y.](https:\u002F\u002Fmedium.com\u002F@ratrosy) in [Google Cloud Platform Blog](https:\u002F\u002Fmedium.com\u002Fgoogle-cloud)\n- 2019-03-07 - [OpenAPI Generator で Spring Boot と Angular をタイプセーフに繋ぐ](https:\u002F\u002Fqiita.com\u002Fchibato\u002Fitems\u002Fe4a748db12409b40c02f) by [Tomofumi Chiba](https:\u002F\u002Fgithub.com\u002Fchibat)\n- 2019-03-16 - [A Quick introduction to manual OpenAPI V3](https:\u002F\u002Fvadosware.io\u002Fpost\u002Fquick-intro-to-manual-openapi-v3\u002F) by [vados](https:\u002F\u002Fgithub.com\u002Ft3hmrman) at [VADOSWARE](https:\u002F\u002Fvadosware.io)\n- 2019-03-25 - [Access any REST service with the SAP S\u002F4HANA Cloud SDK](https:\u002F\u002Fblogs.sap.com\u002F2019\u002F03\u002F25\u002Fintegrate-sap-s4hana-cloud-sdk-with-open-api\u002F) by [Alexander Duemont](https:\u002F\u002Fpeople.sap.com\u002Falexander.duemont)\n- 2019-03-25 - [OpenAPI generatorを試してみる](https:\u002F\u002Fqiita.com\u002Famuyikam\u002Fitems\u002Fe8a45daae59c68be0fc8) by [@amuyikam](https:\u002F\u002Ftwitter.com\u002Famuyikam)\n- 2019-03-27 - [OpenAPI3を使ってみよう！Go言語でクライアントとスタブの自動生成まで！](https:\u002F\u002Ftechblog.zozo.com\u002Fentry\u002Fopenapi3\u002Fgo) by [@gold_kou](https:\u002F\u002Ftwitter.com\u002Fgold_kou)\n- 2019-04-17 - [OpenAPIによるスキーマファースト開発の実施サンプルとCloud Runについて](https:\u002F\u002Ftech-blog.optim.co.jp\u002Fentry\u002F2019\u002F04\u002F17\u002F174000) by [@yukey1031](https:\u002F\u002Ftwitter.com\u002Fyukey1031)\n- 2019-04-18 - [How to use OpenAPI3 for API developer (RubyKaigi 2019)](https:\u002F\u002Fspeakerdeck.com\u002Fota42y\u002Fhow-to-use-openapi3-for-api-developer) by [@ota42y](https:\u002F\u002Ftwitter.com\u002Fota42y) at [RubyKaigi 2019](https:\u002F\u002Frubykaigi.org\u002F2019)\n- 2019-04-29 - [A Beginner's Guide to Code Generation for REST APIs (OpenAPI Generator)](https:\u002F\u002Fgum.co\u002Fopenapi_generator_ebook) by [William Cheng](https:\u002F\u002Ftwitter.com\u002Fwing328)\n- 2019-05-01 - [Design and generate a REST API from Swagger \u002F OpenAPI in Java, Python, C# and more](https:\u002F\u002Fsimply-how.com\u002Fdesign-and-generate-api-code-from-openapi) by [Simply How](https:\u002F\u002Fsimply-how.com\u002F)\n- 2019-05-17 - [Generate Spring Boot REST API using Swagger\u002FOpenAPI](https:\u002F\u002Fwww.47northlabs.com\u002Fknowledge-base\u002Fgenerate-spring-boot-rest-api-using-swagger-openapi\u002F) by [Antonie Zafirov](https:\u002F\u002Fwww.47northlabs.com\u002Fauthor\u002Fantonie-zafirov\u002F)\n- 2019-05-22 - [REST APIs代码生成指南(OpenAPI Generator)](https:\u002F\u002Fgum.co\u002Fopenapi_generator_ebook_gb) by [William Cheng](https:\u002F\u002Ftwitter.com\u002Fwing328), [Xin Meng](https:\u002F\u002Fgithub.com\u002Fxmeng1)\n- 2019-05-24 - [REST API 代碼生成指南 (OpenAPI Generator)](https:\u002F\u002Fgum.co\u002Fopenapi_generator_ebook_big5) by [William Cheng](https:\u002F\u002Ftwitter.com\u002Fwing328)\n- 2019-06-24 - [Kubernetes Clients and OpenAPI Generator](https:\u002F\u002Fspeakerdeck.com\u002Fwing328\u002Fkubernetes-clients-and-openapi-generator) by [William Cheng](https:\u002F\u002Ftwitter.com\u002Fwing328) at [Kubernetes Contributor Summits Shanghai 2019](https:\u002F\u002Fwww.lfasiallc.com\u002Fevents\u002Fcontributors-summit-china-2019\u002F)\n- 2019-06-28 [Codewind OpenAPI Tools](https:\u002F\u002Fmarketplace.eclipse.org\u002Fcontent\u002Fcodewind-openapi-tools) in [Eclipse Marketplace](https:\u002F\u002Fmarketplace.eclipse.org\u002F) by IBM\n- 2019-06-29 [Codewind OpenAPI Tools](https:\u002F\u002Fmarketplace.visualstudio.com\u002Fitems?itemName=IBM.codewind-openapi-tools) in [Visual Studio Marketplace](https:\u002F\u002Fmarketplace.visualstudio.com\u002F) by IBM\n- 2019-07-04 - [REST API のためのコード生成入門 (OpenAPI Generator)](https:\u002F\u002Fgum.co\u002Fopenapi_generator_ebook_big5) by [William Cheng](https:\u002F\u002Ftwitter.com\u002Fwing328), [中野暁人](https:\u002F\u002Fgithub.com\u002Fackintosh), [和田拓朗](https:\u002F\u002Fgithub.com\u002Ftaxpon)\n- 2019-07-08 - [OpenAPI Generator にコントリビュートしたら社名が載った話。(CAM) - CAM TECH BLOG](https:\u002F\u002Ftech.cam-inc.co.jp\u002Fentry\u002F2019\u002F07\u002F08\u002F140000) by [CAM, Inc.](https:\u002F\u002Fwww.cam-inc.co.jp\u002F)\n- 2019-07-14 - [OpenAPI GeneratorでPythonのクライアントライブラリを作成した](https:\u002F\u002Fqiita.com\u002Fyuji38kwmt\u002Fitems\u002Fdfb929316a1335a161c0) by [yuji38kwmt](https:\u002F\u002Fqiita.com\u002Fyuji38kwmt)\n- 2019-07-19 - [Developer Experience (DX) for Open-Source Projects: How to Engage Developers and Build a Growing Developer Community](https:\u002F\u002Fspeakerdeck.com\u002Fwing328\u002Fdeveloper-experience-dx-for-open-source-projects-english-japanese) by [William Cheng](https:\u002F\u002Ftwitter.com\u002Fwing328), [中野暁人](https:\u002F\u002Fgithub.com\u002Fackintosh) at [Open Source Summit Japan 2019](https:\u002F\u002Fevents.linuxfoundation.org\u002Fevents\u002Fopen-source-summit-japan-2019\u002F)\n- 2019-08-14 - [Our OpenAPI journey with Standardizing SDKs](https:\u002F\u002Fbitmovin.com\u002Four-openapi-journey-with-standardizing-sdks\u002F) by [Sebastian Burgstaller](https:\u002F\u002Fbitmovin.com\u002Fauthor\u002Fsburgstaller\u002F) at [Bitmovin](https:\u002F\u002Fwww.bitmovin.com)\n- 2019-08-15 - [APIのコードを自動生成させたいだけならgRPCでなくてもよくない?](https:\u002F\u002Fwww.m3tech.blog\u002Fentry\u002F2019\u002F08\u002F15\u002F110000) by [M3, Inc.](https:\u002F\u002Fcorporate.m3.com\u002F)\n- 2019-08-22 - [マイクロサービスにおけるWeb APIスキーマの管理─ GraphQL、gRPC、OpenAPIの特徴と使いどころ](https:\u002F\u002Femployment.en-japan.com\u002Fengineerhub\u002Fentry\u002F2019\u002F08\u002F22\u002F103000) by [@ota42y](https:\u002F\u002Ftwitter.com\u002Fota42y)\n- 2019-08-24 - [SwaggerドキュメントからOpenAPI Generatorを使ってモックサーバー作成](https:\u002F\u002Fqiita.com\u002Fmasayoshi0222\u002Fitems\u002F4845e4c715d04587c104) by [坂本正義](https:\u002F\u002Fqiita.com\u002Fmasayoshi0222)\n- 2019-08-29 - [OpenAPI初探](https:\u002F\u002Fcloud.tencent.com\u002Fdeveloper\u002Farticle\u002F1495986) by [peakxie](https:\u002F\u002Fcloud.tencent.com\u002Fdeveloper\u002Fuser\u002F1113152) at [腾讯云社区](https:\u002F\u002Fcloud.tencent.com\u002Fdeveloper)\n- 2019-08-29 - [全面进化：Kubernetes CRD 1.16 GA前瞻](https:\u002F\u002Fwww.servicemesher.com\u002Fblog\u002Fkubernetes-1.16-crd-ga-preview\u002F) by [Min Kim](https:\u002F\u002Fgithub.com\u002Fyue9944882) at [ServiceMesher Blog](https:\u002F\u002Fwww.servicemesher.com\u002Fblog\u002F)\n- 2019-09-01 - [Creating a PHP-Slim server using OpenAPI (Youtube video)](https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=5cJtbIrsYkg) by [Daniel Persson](https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCnG-TN23lswO6QbvWhMtxpA)\n- 2019-09-06 - [Vert.x and OpenAPI](https:\u002F\u002Fwissel.net\u002Fblog\u002F2019\u002F09\u002Fvertx-and-openapi.html) by [Stephan H Wissel](https:\u002F\u002Ftwitter.com\u002Fnotessensei) at [wissel.net blog](https:\u002F\u002Fwissel.net)\n- 2019-09-09 - [Cloud-native development - Creating RESTful microservices](https:\u002F\u002Fcloud.ibm.com\u002Fdocs\u002Fcloud-native?topic=cloud-native-rest-api) in [IBM Cloud Docs](https:\u002F\u002Fcloud","OpenAPI Generator 是一个用于根据 OpenAPI 规范（支持 v2 和 v3）自动生成 API 客户端库、服务器存根、文档和配置的工具。其核心功能包括支持多种编程语言和框架的代码生成，能够极大提升开发效率并减少手动编码错误。该项目采用 Java 编写，具有高度可扩展性和灵活性，允许用户自定义模板以满足特定需求。适用于需要快速搭建或更新 RESTful 服务及其客户端的各种软件开发场景，特别是当项目规模较大且接口频繁变动时，使用该工具可以显著降低维护成本。",2,"2026-06-11 02:57:12","top_language"]