Streams a full JSON archive of conversations and their messages for the current organization.
/api/export/conversations/archiveStreams a full JSON archive of conversations and their messages for the current organization. The archive always returns JSON, respects the date range filters, and can optionally redact message PII. The attachment includes conversations, visitor data, metadata, and messages. Date boundaries are optional, and redact_pii=true masks recognized PII in message content. Archives can be large. Stream the response to disk or object storage and honor Content-Disposition.
Bearer API key or X-API-Key header.export:readautomation_api)Query parameter. Format. Allowed values: csv, json.
Query parameter. ISO 8601 date and time for date_from.
Query parameter. ISO 8601 date and time for date_to.
Query parameter. Whether to mask recognized personal data in exported text.
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
[
{
"id": "11111111-1111-4111-8111-111111111111",
"status": "open",
"visitor": {
"id": "22222222-2222-4222-8222-222222222222",
"identifier": "[email protected]"
},
"messages": [
{
"senderType": "visitor",
"content": "I need a copy of my invoice",
"createdAt": "2026-07-15T10:05:00.000Z"
}
]
}
]{
"error": {
"code": "string",
"message": "string",
"fields": {
"property1": "string",
"property2": "string"
},
"details": {},
"correlationId": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"fields": {
"property1": "string",
"property2": "string"
},
"details": {},
"correlationId": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"fields": {
"property1": "string",
"property2": "string"
},
"details": {},
"correlationId": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"fields": {
"property1": "string",
"property2": "string"
},
"details": {},
"correlationId": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"fields": {
"property1": "string",
"property2": "string"
},
"details": {},
"correlationId": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"fields": {
"property1": "string",
"property2": "string"
},
"details": {},
"correlationId": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"fields": {
"property1": "string",
"property2": "string"
},
"details": {},
"correlationId": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"fields": {
"property1": "string",
"property2": "string"
},
"details": {},
"correlationId": "string"
}
}curl --request GET \
'https://api.convor.io/api/export/conversations/archive?format=json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer convor_sk_...'const response = await fetch("https://api.convor.io/api/export/conversations/archive?format=json", {
method: "GET",
headers: {
"Accept": "application/json",
"Authorization": "Bearer convor_sk_..."
},
});
const contentType = response.headers.get("content-type") ?? "";
const data = response.status === 204
? null
: contentType.includes("json")
? await response.json()
: contentType.startsWith("text/")
? await response.text()
: await response.blob();
if (!response.ok) {
const message = typeof data === "object" && data !== null
&& "error" in data && typeof data.error === "object"
&& data.error !== null && "message" in data.error
? String(data.error.message)
: "Convor API request failed (" + response.status + ")";
throw new Error(message);
}
console.log(data);Was this page helpful?