generated: '2026-08-06' method: derived source: openapi/_original/swagger-generator-v3-openapi-original.json summary: >- A request-shaped model, not a persistent resource model. The Swagger Generator stores nothing and exposes no entity with an identifier — the schemas describe the inputs to two pure functions (generate, generateBundle) and one template renderer. Consequently there are no belongs_to relationships between records; the graph is composition only. entities: - name: GenerationRequest role: request description: The input envelope for code generation and bundle generation. required: [lang] fields: - {name: lang, type: string, description: 'Generator identifier, e.g. python, java, spring'} - {name: type, type: string, description: 'Generator type: CLIENT | SERVER | DOCUMENTATION | CONFIG'} - {name: codegenVersion, type: string, description: 'V2 | V3 — which engine generation to use'} - {name: spec, type: object, description: 'Inline OpenAPI definition'} - {name: specURL, type: string, description: 'Remote OpenAPI definition URL (alternative to spec)'} - {name: options, type: Options, description: Per-language generator options} - {name: authorizationValue, type: AuthorizationValue, description: Credential used to fetch specURL} used_by: [generate, generateFromURL, generateBundle] - name: AuthorizationValue role: value-object description: >- A single credential (header or query parameter) the generator presents when it fetches the caller's remote specURL. Not authentication to this API. used_by: [generate, generateBundle] - name: Options role: value-object description: >- Free-form map of generator options. The valid keys are language-specific and are discovered at runtime via listOptions, which returns CliOption descriptors rather than a fixed schema. used_by: [generate, generateBundle] - name: CliOption role: response description: >- Descriptor for one configurable generator option — the machine-readable form of what `config-help -l ` prints in the CLI. used_by: [listOptions] - name: RenderRequest role: request description: A Mustache template plus the data object to apply to it. used_by: [renderTemplate] - name: RenderResponse role: response description: The rendered template output. used_by: [renderTemplate] relationships: - {from: GenerationRequest, to: Options, kind: has_one, via: options} - {from: GenerationRequest, to: AuthorizationValue, kind: has_one, via: authorizationValue} - {from: Options, to: CliOption, kind: described_by, via: 'listOptions?language=', note: 'runtime discovery, not a $ref in the spec'} - {from: RenderRequest, to: RenderResponse, kind: produces, via: renderTemplate} untyped_outputs: - {operations: [generate, generateFromURL], output: 'application/octet-stream (ZIP archive)', note: 'The generated project is a binary artifact with no schema.'} - {operations: [generateBundle], output: 'application/json (free-form object)', note: 'The intermediate codegen model is returned as an untyped object.'} - {operations: [languages, languagesMulti, clientLanguages, serverLanguages, documentationLanguages], output: 'array of string', note: 'Generator identifiers are bare strings, not entities.'} identifiers: detail: >- No id fields, no id prefixes, no resource URIs. Nothing generated by this service can be fetched again later — the v3 API returns the artifact inline. (The legacy 2.x API at generator.swagger.io differs: generateClient returns a fileId that is later fetched via GET /gen/download/{fileId}. That is the only identifier anywhere in the provider's surface.)