Generic JSON
1. Create a JSON array of message objects. Each object needs role (user or assistant) and content (the message text), as shown below.
2. Save valid JSON as chat.json in UTF-8. Use double quotes and no trailing commas. Keep both speakers in the original order.
Prepare a file
[
{"role": "user", "content": "..."},
{"role": "assistant", "content": "..."}
]3. Open Upload to HeyAck, sign in if asked, and choose a .json, .txt or .csv export, a PNG or JPG screenshot, or a ZIP with files of the same kind. Name screenshots in a ZIP so they sort into chat order. Check the detected conversations and both speakers before continuing.
Gotcha: check that exported files contain both sides of the conversation before uploading.
Can I upload more than one file?
Upload one file at a time. Put several .json, .txt or .csv exports in a ZIP. Put screenshots in a separate ZIP and name them so they sort into chat order. Check the detected conversations in the upload review.
What if my export is short?
A short export may not contain enough usable messages for training. Read the upload review, add more real conversation history if available, or keep using the character without claiming a trained version.
Can I delete it later?
Open Me > Settings > Export or close account at /app/me/privacy/data to delete an uploaded chat or source file. Saved memories remain; review and remove them at /app/me/memory.