Skip to content

Export API

Bulk-export conversation history and documents from a project. These endpoints are served by the Flask backend; the same exports are available in the UI — see Bulk Export.

All export endpoints are GET requests sharing the same query parameters:

Parameter Type Required Description
course_name string yes Project name.
from_date string no Start of the date range (ISO 8601).
to_date string no End of the date range (ISO 8601).

And the same response behavior:

  • Small exports — the file (a .zip) is returned directly as a download.
  • Large exports — the export is staged in object storage and the response contains a link: {"response": "Download from S3", "s3_path": "…"}.
  • No data in range — HTTP 204 No Content.

GET /export-convo-history

Export all conversations in the project as JSON Lines. See Bulk Export for the row format.

curl -o convos.zip "https://backend.chat.illinois.edu/export-convo-history?course_name=your-project-name&from_date=2026-01-01&to_date=2026-06-30"

Variants:

  • GET /export-convo-history-csv — CSV-oriented export of the conversation history.
  • GET /export-convo-history-user — export a single user's conversations.
  • GET /export-conversations-custom — custom-filtered conversation export.

GET /exportDocuments

Export the post-processed text and vector embeddings of all documents as JSON Lines.

curl -o documents.zip "https://backend.chat.illinois.edu/exportDocuments?course_name=your-project-name"

Original files

To minimize data-transfer costs, exporting original files (PDFs, etc.) is only available for individual documents through the Materials page.