Swagger Codegen Utilities API

Template rendering and intermediate model generation

OpenAPI Specification

swagger-codegen-utilities-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Swagger Generator Generation Utilities API
  description: The Swagger Generator online REST API at generator3.swagger.io provides endpoints for generating client SDKs, server stubs, and documentation artifacts from OpenAPI V2 and V3 specifications. Supports 40+ client languages and 20+ server frameworks with configurable generation options.
  version: 3.0.75
  contact:
    name: Swagger
    url: https://swagger.io/tools/swagger-codegen/
  license:
    name: Apache 2.0
    url: https://github.com/swagger-api/swagger-codegen/blob/master/LICENSE
  x-logo:
    url: https://kinlane-images.s3.amazonaws.com/shared/apis-json/apis-json-logo.jpg
servers:
- url: https://generator3.swagger.io
  description: Swagger Generator V3 online service
tags:
- name: Utilities
  description: Template rendering and intermediate model generation
paths:
  /model:
    post:
      operationId: generateModel
      summary: Generate Intermediate Model
      description: Generates and returns the intermediate representation (bundle/model) of the code generation process as a JSON object. Useful for debugging and template development.
      tags:
      - Utilities
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GenerationRequest'
      responses:
        '200':
          description: Intermediate model as a JSON object
          content:
            application/json:
              schema:
                type: object
        '400':
          description: Invalid request
  /render:
    post:
      operationId: renderTemplate
      summary: Render Template
      description: Render a Mustache template using provided data. Useful for testing custom generator templates without running a full code generation pass.
      tags:
      - Utilities
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RenderRequest'
      responses:
        '200':
          description: Rendered template output
        '400':
          description: Invalid template or data
components:
  schemas:
    RenderRequest:
      type: object
      description: Request body for template rendering
      properties:
        template:
          type: string
          description: Mustache template string to render
        data:
          type: object
          description: Data object to apply to the template
          additionalProperties: true
    GenerationRequest:
      type: object
      required:
      - lang
      description: Request body for code generation operations
      properties:
        lang:
          type: string
          description: The generator language/framework identifier (e.g., python, java, spring)
        type:
          type: string
          enum:
          - CLIENT
          - SERVER
          - DOCUMENTATION
          - CONFIG
          description: Generator type
        codegenVersion:
          type: string
          enum:
          - V2
          - V3
          default: V3
          description: Codegen version — V2 for OpenAPI 2.x specs, V3 for OpenAPI 3.x
        spec:
          type: object
          description: Inline OpenAPI specification as a JSON object
          additionalProperties: true
        specURL:
          type: string
          format: uri
          description: URL to a remote OpenAPI specification file
        options:
          $ref: '#/components/schemas/Options'
    Options:
      type: object
      description: Configurable code generation options. Available options vary per language. Retrieve available options for a language via GET /options.
      properties:
        packageName:
          type: string
          description: Package/module name for the generated code
        packageVersion:
          type: string
          description: Version to set in the generated package metadata
        groupId:
          type: string
          description: Maven groupId for Java-based generators
        artifactId:
          type: string
          description: Maven artifactId for Java-based generators
        artifactVersion:
          type: string
          description: Maven artifact version
        sourceFolder:
          type: string
          description: Source code folder path within the generated project
        modelPackage:
          type: string
          description: Package name for generated model classes
        apiPackage:
          type: string
          description: Package name for generated API client classes
        invokerPackage:
          type: string
          description: Package name for generated invoker/entry-point classes
        httpUserAgent:
          type: string
          description: User-Agent string set in generated HTTP client code
        gitUserId:
          type: string
          description: GitHub user ID for SCM metadata in generated packages
        gitRepoId:
          type: string
          description: GitHub repository ID for SCM metadata in generated packages
        hideGenerationTimestamp:
          type: boolean
          description: Omit generation timestamp from generated file headers
        dateLibrary:
          type: string
          description: Date/time library to use in generated code
        useRxJS6:
          type: boolean
          description: Use RxJS 6 in TypeScript Angular generators
        npmName:
          type: string
          description: npm package name for JavaScript/TypeScript generators
        npmVersion:
          type: string
          description: npm package version
        npmRepository:
          type: string
          description: npm registry URL
        withSeparateModelsAndApi:
          type: boolean
          description: Put models and API in separate source folders