Eksporter som struktureret JSON
Udover de syv dokumentformater tilbyder filgitteret – og hver meddelelses inline Eksporter fil-menu – en JSON-eksport. I modsætning til de andre er JSON ikke et færdigt dokument til læsning: det er samtalen som maskinlæsbare data, beregnet til udviklere, der ønsker at føre en chat ind i et script, en database eller et andet værktøj uden selv at skrabe siden.
Filen er et enkelt pænt formateret JSON-objekt – en blok med metadata om samtalen, efterfulgt af en flad liste over dens meddelelser.
- Samtalemetadata —
schema(en versioneret identifikator, aktueltai-chat-extractor/conversation@2, så en forbruger kan genkende formatet og dets version),site,title,url,exported_at(et ISO-tidsstempel),content_format(altidmarkdown) ogmessage_count. messages— en ordnet række, én post pr. meddelelse, hver med sitindex, sinrole(hvem der talte –userellerassistant), og to visninger af teksten:content, hele meddelelsen som Markdown, ogcontents, den samme meddelelse opdelt i typede dele.
De to visninger tjener to slags forbrugere. content er hele meddelelsen som en enkelt Markdown-streng – alt, hvad et simpelt script har brug for. contents opdeler den i en ordnet liste af typede segmenter, så en pipeline kan udvælge eller fjerne dele efter type uden at genparse Markdown: text for prosa, thinking for en models ræsonnementsblok, code for en indhegnet kodeblok (med et valgfrit language), image for et billede (med dets url og alt-tekst – uanset om det blev skrevet som Markdown eller som et HTML-tag), og table for en Markdown-tabel, opdelt i dens headers og rows, så en forbruger får rigtige kolonner i stedet for en blok af pipe-tegn. AI Chat Clipper udsender kun en segmenttype, den ærligt kan identificere fra samtalen – den vil ikke opfinde struktur, der ikke er der. Citater, for eksempel, ankommer som almindelige inline-links uden en egen blok, så der er bevidst ingen separat sources-type.
Et kort assistentsvar, der indeholder en kodeblok, eksporteres sådan:
{
"schema": "ai-chat-extractor/conversation@2",
"site": "claude",
"title": "Reversing a string",
"url": "https://claude.ai/chat/…",
"exported_at": "2026-07-18T10:32:00.000Z",
"content_format": "markdown",
"message_count": 2,
"messages": [
{ "index": 0, "role": "user", "content": "How do I reverse a string in Python?",
"contents": [ { "type": "text", "text": "How do I reverse a string in Python?" } ] },
{ "index": 1, "role": "assistant", "content": "Use a slice:\n\n```python\ns[::-1]\n```",
"contents": [
{ "type": "text", "text": "Use a slice:" },
{ "type": "code", "language": "python", "text": "s[::-1]" }
] }
]
}