TL;DR
I had an 8-minute voice conversation with ChatGPT. The transcript was missing, and I wanted to recover my original voice input.
I spent hours checking Chrome DevTools, Burp Suite, OpenAI endpoints, Grok, and Gemini before finding the recordings in my data export. Shortening the ZIP path let Windows extract them.
The transcript was missing
After an 8-minute voice conversation with ChatGPT, I tried to review what I had said. Instead of a transcript, I got:
"Transcription not available."
I didn't need ChatGPT's responses, I wanted my own spoken words back.
If I could play the recording, the data had to exist somewhere.
Checking ChatGPT requests
Using Chrome DevTools, I opened the Network tab and hit play on my voice message.
I found a POST request to:
POST /backend-api/synthesizeParameters included:
messageIdconversationIdvoiceformat=mp3
The server returned an MP3 stream. This was text-to-speech tied to my recorded input.
Checking the request in Burp Suite
I intercepted the request with Burp Suite and tried a few changes:
- Swapped in different
messageIdvalues - Tried other
conversationIds - Changed or removed
voice - Modified
formattowav,ogg, etc.
Every attempt failed with:
"message cannot be read."
The /synthesize endpoint seemed locked down with auth or encryption. My voice wasn't coming out that way.
Downloadable files use a different path
I remembered that ChatGPT can generate downloadable files (e.g., oaiusercontent.com links).
This hinted that file storage and voice playback might use separate backends.
Reading the conversation data
Next, I queried:
GET /conversation/[conversation_id]The response contained every message, audio reference, and metadata field. It ran to thousands of lines, so I looked for another way to find the recording.
Asking other models
- Grok (X.ai) → "Query too long. Please shorten."
- Gemini 2.5 Pro → Loaded the file fine, summarized it... but just confirmed what I already knew.
Exporting my data
I tried the official export:
Settings → Data Controls → Export My Data
Five minutes later: an 80MB ZIP file in my inbox.
That's big for text, there had to be audio in there.
Windows could not extract the ZIP
Windows' built-in extractor failed with:
".mp3 file is invalid or corrupted."
Inside the ZIP:
[conversation_id]/audio/
Windows claimed it was empty.
Shortening the file path
I remembered Windows' 260-character file path limit. I shortened the path and tried again.
- Rename ZIP to something short
- Move it to
C:\chatgpt - Extract manually via Explorer
Result: dozens of .mp3 files, my actual ChatGPT voice inputs.
Played one in VLC, there I was.
What I learned
/synthesizeis for playback generation, not storage/conversation/[id]contains raw thread data- Downloadable files use a different backend logic
- Data Export is the most reliable way to get voice data
- Windows path length limits can silently break ZIPs
- Using AI to summarize AI internals is oddly satisfying