openai / openai/openai-openapi

error: openapi.yaml can't pass the openapi-generator-cli validate

Open
#453 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug specification
Dominant language
No language data
Stars
2.5k
Forks
527
Avg merge
1h 46m
Merged PRs (30d)
2

Description

openai-api$ openapi-generator-cli validate -i openapi.yaml
Validating spec (openapi.yaml)
[main] ERROR o.o.codegen.utils.ModelUtils - Undefined array inner type for null. Default to String.
[main] ERROR o.o.codegen.utils.ModelUtils - Undefined array inner type for null. Default to String.
[main] ERROR o.o.codegen.utils.ModelUtils - Undefined array inner type for null. Default to String.
[main] ERROR o.o.codegen.utils.ModelUtils - Undefined array inner type for null. Default to String.
Errors:
- attribute components.schemas.EvalScoreModelGrader.max_items is unexpected
- attribute components.schemas.TranscriptTextDeltaEvent.items is missing
- attribute components.schemas.Eval.default is not of type array
- attribute components.schemas.TranscriptionInclude.default is not of type string
- attribute components.schemas.ChatCompletionStreamOptions.default is not of type object
- attribute components.schemas.RealtimeSessionCreateRequest.default is not of type object
- attribute components.schemas.VectorStoreFileAttributes.propertyNames is unexpected
- attribute components.schemas.CreateTranscriptionResponseJson.optional is unexpected
- attribute components.schemas.RealtimeSession.default is not of type object
- paths.'/organization/certificates/{certificate_id}'. Declared path parameter
certificate_id needs to be defined as a path parameter in path or operation level
- attribute components.schemas.TranscriptTextDoneEvent.items is missing
- attribute components.schemas.RealtimeTranscriptionSessionCreateRequest.default is not of
type object
- attribute components.schemas.CompoundFilter.$recursiveRef is unexpected
- paths.'/organization/projects/{project_id}/certificates/activate'. Declared path parameter
project_id needs to be defined as a path parameter in path or operation level
- paths.'/organization/projects/{project_id}/certificates'. Declared path parameter
project_id needs to be defined as a path parameter in path or operation level
- attribute components.schemas.EvalScoreModelGrader.min_items is unexpected
- attribute components.schemas.CompoundFilter.$recursiveAnchor is unexpected
- attribute components.schemas.CreateChatCompletionRequest.default is not of type object
- attribute components.schemas.CreateCompletionRequest.default is not of type object
- paths.'/organization/projects/{project_id}/certificates/deactivate'. Declared path
parameter project_id needs to be defined as a path parameter in path or operation level
Warnings:
- Unused model: RealtimeServerEventResponseDone
- Unused model: OutputAudio
- Unused model: MessageDeltaContentTextObject
- Unused model: RealtimeServerEventResponseOutputItemAdded
- Unused model: RunStepDeltaStepDetailsToolCallsFunctionObject
- Unused model: RealtimeClientEventSessionUpdate
- Unused model: RealtimeServerEventConversationItemInputAudioTranscriptionFailed
- Unused model: FineTunePreferenceRequestInput
- Unused model: RunStepDeltaStepDetailsToolCallsFileSearchObject
- Unused model: ModelIds
- Unused model: RealtimeConversationItem
- Unused model: BatchRequestOutput
- Unused model: RealtimeServerEventResponseOutputItemDone
- Unused model: RealtimeServerEventResponseTextDelta
- Unused model: RealtimeServerEventConversationItemInputAudioTranscriptionCompleted
- Unused model: BatchRequestInput
- Unused model: LogProbProperties
- Unused model: RealtimeClientEventInputAudioBufferClear
- Unused model: RealtimeServerEventInputAudioBufferCleared
- Unused model: RealtimeResponseCreateParams
- Unused model: RealtimeServerEvent
- Unused model: RealtimeServerEventConversationCreated
- Unused model: RealtimeServerEventError
- Unused model: RunStepDeltaStepDetailsMessageCreationObject
- Unused model: RealtimeClientEventConversationItemCreate
- Unused model: ChatCompletionRole
- Unused model: ErrorEvent
- Unused model: MessageDeltaContentImageUrlObject
- Unused model: RunStepDeltaStepDetailsToolCallsObject
- Unused model: RealtimeClientEventConversationItemRetrieve
- Unused model: RealtimeClientEventInputAudioBufferCommit
- Unused model: RealtimeServerEventOutputAudioBufferCleared
- Unused model: RealtimeClientEventConversationItemTruncate
- Unused model: MessageDeltaContentTextAnnotationsFilePathObject
- Unused model: RealtimeServerEventInputAudioBufferCommitted
- Unused model: RealtimeClientEventInputAudioBufferAppend
- Unused model: RealtimeServerEventConversationItemCreated
- Unused model: RealtimeServerEventTranscriptionSessionUpdated
- Unused model: RunStepDeltaObject
- Unused model: AssistantStreamEvent
- Unused model: RunStepDeltaStepDetailsToolCallsCodeObject
- Unused model: ThreadStreamEvent
- Unused model: RealtimeServerEventResponseTextDone
- Unused model: Content
- Unused model: DoneEvent
- Unused model: RealtimeServerEventInputAudioBufferSpeechStarted
- Unused model: MessageDeltaContentRefusalObject
- Unused model: RealtimeServerEventResponseContentPartDone
- Unused model: RealtimeServerEventConversationItemRetrieved
- Unused model: RunStepDeltaStepDetailsToolCallsCodeOutputLogsObject
- Unused model: RealtimeClientEventResponseCancel
- Unused model: RealtimeServerEventResponseCreated
- Unused model: MessageDeltaObject
- Unused model: RealtimeServerEventResponseAudioTranscriptDone
- Unused model: RealtimeServerEventSessionUpdated
- Unused model: FineTuneCompletionRequestInput
- Unused model: RealtimeClientEventTranscriptionSessionUpdate
- Unused model: RunStepStreamEvent
- Unused model: RealtimeServerEventResponseAudioDelta
- Unused model: RealtimeServerEventResponseAudioTranscriptDelta
- Unused model: RealtimeResponse
- Unused model: RealtimeServerEventInputAudioBufferSpeechStopped
- Unused model: RealtimeServerEventConversationItemTruncated
- Unused model: MessageDeltaContentTextAnnotationsFileCitationObject
- Unused model: RealtimeClientEventResponseCreate
- Unused model: RealtimeConversationItemWithReference
- Unused model: ChatCompletionModalities
- Unused model: FineTuneChatCompletionRequestAssistantMessage
- Unused model: RealtimeServerEventRateLimitsUpdated
- Unused model: RealtimeClientEventOutputAudioBufferClear
- Unused model: FineTuneChatRequestInput
- Unused model: MessageStreamEvent
- Unused model: RealtimeServerEventResponseAudioDone
- Unused model: MessageDeltaContentImageFileObject
- Unused model: RealtimeServerEventConversationItemDeleted
- Unused model: RealtimeServerEventSessionCreated
- Unused model: RealtimeServerEventResponseContentPartAdded
- Unused model: InputAudio
- Unused model: RealtimeServerEventOutputAudioBufferStarted
- Unused model: RealtimeServerEventOutputAudioBufferStopped
- Unused model: RunStreamEvent
- Unused model: RealtimeServerEventConversationItemInputAudioTranscriptionDelta
- Unused model: RealtimeClientEventConversationItemDelete
- Unused model: RealtimeServerEventResponseFunctionCallArgumentsDone
- Unused model: RealtimeServerEventResponseFunctionCallArgumentsDelta
- Unused model: RealtimeSession
- Unused model: RunStepDeltaStepDetailsToolCallsCodeOutputImageObject
- Unused model: RealtimeClientEvent

[error] Spec has 20 errors.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by running openapi-generator-cli validate -i openapi.yaml and inspect the listed schema and path-parameter errors in openapi.yaml. Check each of the 20 reported errors, including invalid defaults, missing array items, unexpected attributes, and undefined path parameters. Done means validation completes without errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
openapi
Domain
api, backend-api-design
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.