HeyPuter/puter · error · HttpError

field_required

field_required

Error message

Missing required field: text

What it means

Error "Missing required field: text" thrown in HeyPuter/puter.

Source

Thrown at src/backend/drivers/ai-tts/providers/openai/OpenAITTSProvider.ts:138

    async synthesize(
        args: ISynthesizeArgs,
    ): Promise<DriverStreamResult | { url: string; content_type: string }> {
        const {
            text,
            voice: voiceArg,
            model: modelArg,
            response_format,
            instructions,
            test_mode,
        } = args;

        if (test_mode) {
            return { url: SAMPLE_AUDIO_URL, content_type: 'audio' };
        }

        if (typeof text !== 'string' || text.trim() === '') {
            throw new HttpError(400, 'Missing required field: text', {
                legacyCode: 'field_required',
                fields: { key: 'text' },
            });
        }

        const model = modelArg || DEFAULT_MODEL;
        if (!OPENAI_TTS_MODELS.find(({ id }) => id === model)) {
            throw new HttpError(
                400,
                `Invalid model: ${model}. Expected: ${OPENAI_TTS_MODELS.map(({ id }) => id).join(', ')}`,
                {
                    legacyCode: 'field_invalid',
                    fields: {
                        key: 'model',
                        expected: OPENAI_TTS_MODELS.map(({ id }) => id).join(
                            ', ',
                        ),
                        got: model,

View on GitHub (pinned to 908ec23eda)

Solutions

  1. Pass a non-empty `text` field in the request body.
  2. Verify the request payload includes `text` before calling the TTS driver.

When it happens

Trigger: Thrown at src/backend/drivers/ai-tts/providers/openai/OpenAITTSProvider.ts:138 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of HeyPuter/puter@908ec23eda (2026-08-12). Data as JSON: /api/errors/02fe402132caa225. Report an issue: GitHub.