Swagger Codegen Online Generators
One can also generate API client or server using the online generators (https://generator.swagger.io)
For example, to generate Ruby API client, simply send the following HTTP request using curl:
curl -X POST -H "content-type:application/json" -d '{"swaggerUrl":"https://petstore.swagger.io/v2/swagger.json"}' https://generator.swagger.io/api/gen/clients/rubyThen you will receive a JSON response with the URL to download the zipped code.
To customize the SDK, you can POST to https://generator.swagger.io/api/gen/clients/{language} with the following HTTP body:
{ "options": {}, "swaggerUrl": "https://petstore.swagger.io/v2/swagger.json"}in which the options for a language can be obtained by submitting a GET request to https://generator.swagger.io/api/gen/clients/{language}:
For example, curl https://generator.swagger.io/api/gen/clients/python returns
{ "packageName": { "opt": "packageName", "description": "python package name (convention: snake_case).", "type": "string", "default": "swagger_client" }, "packageVersion": { "opt": "packageVersion", "description": "python package version.", "type": "string", "default": "1.0.0" }, "sortParamsByRequiredFlag": { "opt": "sortParamsByRequiredFlag", "description": "Sort method arguments to place required parameters before optional parameters.", "type": "boolean", "default": "true" }}To set package name to pet_store, the HTTP body of the request is as follows:
{ "options": { "packageName": "pet_store" }, "swaggerUrl": "https://petstore.swagger.io/v2/swagger.json"}and here is the curl command:
curl -H "Content-type: application/json" -X POST -d '{"options": {"packageName": "pet_store"},"swaggerUrl": "https://petstore.swagger.io/v2/swagger.json"}' https://generator.swagger.io/api/gen/clients/pythonInstead of using swaggerUrl with an URL to the OpenAPI/Swagger spec, one can include the spec in the JSON payload with spec, e.g.
{ "options": {}, "spec": { "swagger": "2.0", "info": { "version": "1.0.0", "title": "Test API" }, ... }}