{"data":[{"id":"chg_e8309b20b4ca67097bf3500d64d8947a8a5a003cd9867786cc39d99775222403","path":"/audio/voices","method":"POST","direction":"request","fieldPath":null,"changeType":"request-body-one-of-added","detectedAt":"2026-10-31T04:16:17.002568+00:00","classification":"non_breaking","breakKind":null,"summary":"added `subschema #2: Prompt` to the request body `oneOf` list","reasoning":"level.info: request request-body-one-of-added -> non_breaking","ruleId":"level.info","classifierVersion":"2026-10-15.2","evidenceStrength":"spec_only","detectionMethod":"openapi_diff","fragment":[{"kind":"ctx","text":"post:"},{"kind":"del","text":"  description: |"},{"kind":"del","text":"    Create a custom voice you can use for audio output (for example, in Text-to-Speech and the Realtime API). This requires an audio sample and a previously uploaded consent recording."},{"kind":"add","text":"  description: >"},{"kind":"add","text":"    Creates a voice from a text prompt or from a consent recording and an audio"},{"kind":"add","text":"    sample."},{"kind":"ctx","text":""},{"kind":"del","text":"    Send `name`, `audio_sample`, and the `consent` recording ID as multipart form data. The optional `type` defaults to `audio_sample`."},{"kind":"ctx","text":""},{"kind":"del","text":"    Returns the saved voice's metadata. See the [custom voices guide](https://developers.openai.com/api/docs/guides/text-to-speech#custom-voices) for requirements and best practices. Custom voices are limited to eligible customers."},{"kind":"add","text":"    For prompt-based creation, send `type: \"prompt\"` with a `name` and `prompt`"},{"kind":"add","text":"    as JSON or multipart form data. For creation from an audio sample, send"},{"kind":"add","text":"    `type: \"audio_sample\"` with a `name`, `audio_sample`, and `consent`"},{"kind":"add","text":"    recording ID as multipart form data. The type defaults to `audio_sample`"},{"kind":"add","text":"    when omitted."},{"kind":"add","text":""},{"kind":"add","text":""},{"kind":"add","text":"    Returns the saved voice's metadata. Voices created from text prompts are"},{"kind":"add","text":"    supported only in Live, not in Realtime or the speech endpoint. The response"},{"kind":"add","text":"    does not include preview audio."},{"kind":"ctx","text":"  operationId: createVoice"},{"kind":"ctx","text":"  requestBody:"},{"kind":"ctx","text":"    content:"},{"kind":"add","text":"      application/json:"},{"kind":"add","text":"        schema:"},{"kind":"add","text":"          additionalProperties: false"},{"kind":"add","text":"          description: Creates a synthetic voice from a text description. Supports"},{"kind":"add","text":"            application/json or multipart/form-data."},{"kind":"add","text":"          properties:"},{"kind":"add","text":"            model:"},{"kind":"add","text":"              anyOf:"},{"kind":"add","text":"                - type: string"},{"kind":"add","text":"                - enum:"},{"kind":"add","text":"                    - auto"},{"kind":"add","text":"                    - 2026-10-08"},{"kind":"add","text":"                  type: string"},{"kind":"add","text":"              default: auto"},{"kind":"add","text":"              description: The voice creation model to use. Defaults to `auto`."},{"kind":"add","text":"            name:"},{"kind":"add","text":"              description: The name of the new voice."}]},{"id":"chg_aadae80f00b1bb956925c2b60020fdf600e0a19778cab00b41407be21ec69c7d","path":"/audio/voices","method":"POST","direction":"request","fieldPath":null,"changeType":"request-body-discriminator-mapping-added","detectedAt":"2026-10-31T04:16:17.002568+00:00","classification":"non_breaking","breakKind":null,"summary":"added `prompt` mapping keys to the request discriminator","reasoning":"level.info: request request-body-discriminator-mapping-added -> non_breaking","ruleId":"level.info","classifierVersion":"2026-10-15.2","evidenceStrength":"spec_only","detectionMethod":"openapi_diff","fragment":[{"kind":"ctx","text":"post:"},{"kind":"del","text":"  description: |"},{"kind":"del","text":"    Create a custom voice you can use for audio output (for example, in Text-to-Speech and the Realtime API). This requires an audio sample and a previously uploaded consent recording."},{"kind":"add","text":"  description: >"},{"kind":"add","text":"    Creates a voice from a text prompt or from a consent recording and an audio"},{"kind":"add","text":"    sample."},{"kind":"ctx","text":""},{"kind":"del","text":"    Send `name`, `audio_sample`, and the `consent` recording ID as multipart form data. The optional `type` defaults to `audio_sample`."},{"kind":"ctx","text":""},{"kind":"del","text":"    Returns the saved voice's metadata. See the [custom voices guide](https://developers.openai.com/api/docs/guides/text-to-speech#custom-voices) for requirements and best practices. Custom voices are limited to eligible customers."},{"kind":"add","text":"    For prompt-based creation, send `type: \"prompt\"` with a `name` and `prompt`"},{"kind":"add","text":"    as JSON or multipart form data. For creation from an audio sample, send"},{"kind":"add","text":"    `type: \"audio_sample\"` with a `name`, `audio_sample`, and `consent`"},{"kind":"add","text":"    recording ID as multipart form data. The type defaults to `audio_sample`"},{"kind":"add","text":"    when omitted."},{"kind":"add","text":""},{"kind":"add","text":""},{"kind":"add","text":"    Returns the saved voice's metadata. Voices created from text prompts are"},{"kind":"add","text":"    supported only in Live, not in Realtime or the speech endpoint. The response"},{"kind":"add","text":"    does not include preview audio."},{"kind":"ctx","text":"  operationId: createVoice"},{"kind":"ctx","text":"  requestBody:"},{"kind":"ctx","text":"    content:"},{"kind":"add","text":"      application/json:"},{"kind":"add","text":"        schema:"},{"kind":"add","text":"          additionalProperties: false"},{"kind":"add","text":"          description: Creates a synthetic voice from a text description. Supports"},{"kind":"add","text":"            application/json or multipart/form-data."},{"kind":"add","text":"          properties:"},{"kind":"add","text":"            model:"},{"kind":"add","text":"              anyOf:"},{"kind":"add","text":"                - type: string"},{"kind":"add","text":"                - enum:"},{"kind":"add","text":"                    - auto"},{"kind":"add","text":"                    - 2026-10-08"},{"kind":"add","text":"                  type: string"},{"kind":"add","text":"              default: auto"},{"kind":"add","text":"              description: The voice creation model to use. Defaults to `auto`."},{"kind":"add","text":"            name:"},{"kind":"add","text":"              description: The name of the new voice."}]},{"id":"chg_873563767d8fbef8dfcb43cfbf95eeb5f0a2947339c3e29795fba84f84f5ad67","path":"/audio/voices","method":"POST","direction":"response","fieldPath":null,"changeType":"response-property-enum-value-added","detectedAt":"2026-10-31T04:16:17.002568+00:00","classification":"non_breaking","breakKind":null,"summary":"added the new `prompt` enum value to the `type` response property for the response status `200`","reasoning":"response.added: response response-property-enum-value-added -> non_breaking","ruleId":"response.added","classifierVersion":"2026-10-15.2","evidenceStrength":"spec_only","detectionMethod":"openapi_diff","fragment":[{"kind":"ctx","text":"post:"},{"kind":"del","text":"  description: |"},{"kind":"del","text":"    Create a custom voice you can use for audio output (for example, in Text-to-Speech and the Realtime API). This requires an audio sample and a previously uploaded consent recording."},{"kind":"add","text":"  description: >"},{"kind":"add","text":"    Creates a voice from a text prompt or from a consent recording and an audio"},{"kind":"add","text":"    sample."},{"kind":"ctx","text":""},{"kind":"del","text":"    Send `name`, `audio_sample`, and the `consent` recording ID as multipart form data. The optional `type` defaults to `audio_sample`."},{"kind":"ctx","text":""},{"kind":"del","text":"    Returns the saved voice's metadata. See the [custom voices guide](https://developers.openai.com/api/docs/guides/text-to-speech#custom-voices) for requirements and best practices. Custom voices are limited to eligible customers."},{"kind":"add","text":"    For prompt-based creation, send `type: \"prompt\"` with a `name` and `prompt`"},{"kind":"add","text":"    as JSON or multipart form data. For creation from an audio sample, send"},{"kind":"add","text":"    `type: \"audio_sample\"` with a `name`, `audio_sample`, and `consent`"},{"kind":"add","text":"    recording ID as multipart form data. The type defaults to `audio_sample`"},{"kind":"add","text":"    when omitted."},{"kind":"add","text":""},{"kind":"add","text":""},{"kind":"add","text":"    Returns the saved voice's metadata. Voices created from text prompts are"},{"kind":"add","text":"    supported only in Live, not in Realtime or the speech endpoint. The response"},{"kind":"add","text":"    does not include preview audio."},{"kind":"ctx","text":"  operationId: createVoice"},{"kind":"ctx","text":"  requestBody:"},{"kind":"ctx","text":"    content:"},{"kind":"add","text":"      application/json:"},{"kind":"add","text":"        schema:"},{"kind":"add","text":"          additionalProperties: false"},{"kind":"add","text":"          description: Creates a synthetic voice from a text description. Supports"},{"kind":"add","text":"            application/json or multipart/form-data."},{"kind":"add","text":"          properties:"},{"kind":"add","text":"            model:"},{"kind":"add","text":"              anyOf:"},{"kind":"add","text":"                - type: string"},{"kind":"add","text":"                - enum:"},{"kind":"add","text":"                    - auto"},{"kind":"add","text":"                    - 2026-10-08"},{"kind":"add","text":"                  type: string"},{"kind":"add","text":"              default: auto"},{"kind":"add","text":"              description: The voice creation model to use. Defaults to `auto`."},{"kind":"add","text":"            name:"},{"kind":"add","text":"              description: The name of the new voice."}]},{"id":"chg_641ce683aeeaaab35509774d0f4b1c5424b1bedf646a8a88ef7ef54c4e7dd918","path":"/audio/speech","method":"POST","direction":"request","fieldPath":null,"changeType":"request-coverage-incomplete","detectedAt":"2026-10-31T04:16:17.002568+00:00","classification":"ambiguous","breakKind":null,"summary":"Schema acceptance comparison is unavailable; compatibility requires review.","reasoning":"coverage.incomplete: request request-coverage-incomplete -> ambiguous","ruleId":"coverage.incomplete","classifierVersion":"2026-10-15.2","evidenceStrength":"spec_only","detectionMethod":"openapi_diff","fragment":[{"kind":"ctx","text":"..."},{"kind":"ctx","text":"                voices are available in the [Text to speech"},{"kind":"ctx","text":"                guide](https://developers.openai.com/api/docs/guides/text-to-speech#voice-options)."},{"kind":"del","text":"                Custom voices must be created from audio samples.'"},{"kind":"add","text":"                Custom voices must be created from audio samples. Voices created"},{"kind":"add","text":"                from text prompts are supported only in Live.'"},{"kind":"ctx","text":"              title: Voice"},{"kind":"ctx","text":"          required:"},{"kind":"ctx","text":"..."}]},{"id":"chg_2879dab19910d647ac459ae3ede3733043904185f6ecfcab7491c9ea9ffb9195","path":"/audio/voices","method":"POST","direction":"response","fieldPath":"prompt","changeType":"response-optional-property-added","detectedAt":"2026-10-31T04:16:17.002568+00:00","classification":"non_breaking","breakKind":null,"summary":"added the optional property `prompt` to the response with the `200` status","reasoning":"response.added: response response-optional-property-added -> non_breaking","ruleId":"response.added","classifierVersion":"2026-10-15.2","evidenceStrength":"spec_only","detectionMethod":"openapi_diff","fragment":[{"kind":"ctx","text":"post:"},{"kind":"del","text":"  description: |"},{"kind":"del","text":"    Create a custom voice you can use for audio output (for example, in Text-to-Speech and the Realtime API). This requires an audio sample and a previously uploaded consent recording."},{"kind":"add","text":"  description: >"},{"kind":"add","text":"    Creates a voice from a text prompt or from a consent recording and an audio"},{"kind":"add","text":"    sample."},{"kind":"ctx","text":""},{"kind":"del","text":"    Send `name`, `audio_sample`, and the `consent` recording ID as multipart form data. The optional `type` defaults to `audio_sample`."},{"kind":"ctx","text":""},{"kind":"del","text":"    Returns the saved voice's metadata. See the [custom voices guide](https://developers.openai.com/api/docs/guides/text-to-speech#custom-voices) for requirements and best practices. Custom voices are limited to eligible customers."},{"kind":"add","text":"    For prompt-based creation, send `type: \"prompt\"` with a `name` and `prompt`"},{"kind":"add","text":"    as JSON or multipart form data. For creation from an audio sample, send"},{"kind":"add","text":"    `type: \"audio_sample\"` with a `name`, `audio_sample`, and `consent`"},{"kind":"add","text":"    recording ID as multipart form data. The type defaults to `audio_sample`"},{"kind":"add","text":"    when omitted."},{"kind":"add","text":""},{"kind":"add","text":""},{"kind":"add","text":"    Returns the saved voice's metadata. Voices created from text prompts are"},{"kind":"add","text":"    supported only in Live, not in Realtime or the speech endpoint. The response"},{"kind":"add","text":"    does not include preview audio."},{"kind":"ctx","text":"  operationId: createVoice"},{"kind":"ctx","text":"  requestBody:"},{"kind":"ctx","text":"    content:"},{"kind":"add","text":"      application/json:"},{"kind":"add","text":"        schema:"},{"kind":"add","text":"          additionalProperties: false"},{"kind":"add","text":"          description: Creates a synthetic voice from a text description. Supports"},{"kind":"add","text":"            application/json or multipart/form-data."},{"kind":"add","text":"          properties:"},{"kind":"add","text":"            model:"},{"kind":"add","text":"              anyOf:"},{"kind":"add","text":"                - type: string"},{"kind":"add","text":"                - enum:"},{"kind":"add","text":"                    - auto"},{"kind":"add","text":"                    - 2026-10-08"},{"kind":"add","text":"                  type: string"},{"kind":"add","text":"              default: auto"},{"kind":"add","text":"              description: The voice creation model to use. Defaults to `auto`."},{"kind":"add","text":"            name:"},{"kind":"add","text":"              description: The name of the new voice."}]},{"id":"chg_22d61602e8aa6743eeb38f1a71c3a271147c3b0e26785115ccd107d7f3d4c80e","path":"/audio/voices","method":"POST","direction":"request","fieldPath":null,"changeType":"request-body-media-type-added","detectedAt":"2026-10-31T04:16:17.002568+00:00","classification":"non_breaking","breakKind":null,"summary":"added the media type `application/json` to the request body","reasoning":"level.info: request request-body-media-type-added -> non_breaking","ruleId":"level.info","classifierVersion":"2026-10-15.2","evidenceStrength":"spec_only","detectionMethod":"openapi_diff","fragment":[{"kind":"ctx","text":"post:"},{"kind":"del","text":"  description: |"},{"kind":"del","text":"    Create a custom voice you can use for audio output (for example, in Text-to-Speech and the Realtime API). This requires an audio sample and a previously uploaded consent recording."},{"kind":"add","text":"  description: >"},{"kind":"add","text":"    Creates a voice from a text prompt or from a consent recording and an audio"},{"kind":"add","text":"    sample."},{"kind":"ctx","text":""},{"kind":"del","text":"    Send `name`, `audio_sample`, and the `consent` recording ID as multipart form data. The optional `type` defaults to `audio_sample`."},{"kind":"ctx","text":""},{"kind":"del","text":"    Returns the saved voice's metadata. See the [custom voices guide](https://developers.openai.com/api/docs/guides/text-to-speech#custom-voices) for requirements and best practices. Custom voices are limited to eligible customers."},{"kind":"add","text":"    For prompt-based creation, send `type: \"prompt\"` with a `name` and `prompt`"},{"kind":"add","text":"    as JSON or multipart form data. For creation from an audio sample, send"},{"kind":"add","text":"    `type: \"audio_sample\"` with a `name`, `audio_sample`, and `consent`"},{"kind":"add","text":"    recording ID as multipart form data. The type defaults to `audio_sample`"},{"kind":"add","text":"    when omitted."},{"kind":"add","text":""},{"kind":"add","text":""},{"kind":"add","text":"    Returns the saved voice's metadata. Voices created from text prompts are"},{"kind":"add","text":"    supported only in Live, not in Realtime or the speech endpoint. The response"},{"kind":"add","text":"    does not include preview audio."},{"kind":"ctx","text":"  operationId: createVoice"},{"kind":"ctx","text":"  requestBody:"},{"kind":"ctx","text":"    content:"},{"kind":"add","text":"      application/json:"},{"kind":"add","text":"        schema:"},{"kind":"add","text":"          additionalProperties: false"},{"kind":"add","text":"          description: Creates a synthetic voice from a text description. Supports"},{"kind":"add","text":"            application/json or multipart/form-data."},{"kind":"add","text":"          properties:"},{"kind":"add","text":"            model:"},{"kind":"add","text":"              anyOf:"},{"kind":"add","text":"                - type: string"},{"kind":"add","text":"                - enum:"},{"kind":"add","text":"                    - auto"},{"kind":"add","text":"                    - 2026-10-08"},{"kind":"add","text":"                  type: string"},{"kind":"add","text":"              default: auto"},{"kind":"add","text":"              description: The voice creation model to use. Defaults to `auto`."},{"kind":"add","text":"            name:"},{"kind":"add","text":"              description: The name of the new voice."}]}],"nextCursor":null}