Exports visitors for the current organization as a CSV file.
/api/export/visitorsExports visitors for the current organization as a CSV file. The format is fixed to CSV, and the export is streamed in batches for large visitor lists. The response is streamed and limited by the configured maximum row count. If the limit would be exceeded, the request fails before any body is written.
Bearer API key or X-API-Key header.export:readautomation_api)Query parameter. Format. Allowed values: csv.
text/csv
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
"id,identifier,fingerprint,firstSeenAt,lastSeenAt,totalSessions,geoCountry,geoCity\n22222222-2222-4222-8222-222222222222,[email protected],,2026-07-01T10:00:00.000Z,2026-07-15T10:00:00.000Z,3,PL,Warsaw"{
"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/visitors?format=csv' \
--header 'Accept: text/csv' \
--header 'Authorization: Bearer convor_sk_...'const response = await fetch("https://api.convor.io/api/export/visitors?format=csv", {
method: "GET",
headers: {
"Accept": "text/csv",
"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?