- Migration Guides
- Freshchat
- Export Your Data
Export Your Data
Part of the Freshchat migration guide
Learn how to export your customer data, conversation history, and contacts from Freshchat before migrating to a new platform.
How to Export Your Data from Freshchat
Freshchat does not provide a one-click bulk export from its admin dashboard. You need the REST API v2 for users, conversations, and messages, plus the Extract API for CSV-format reports. There is no single "export everything" button — each data type requires a separate method.
Step 1: Generate Your API Token
In your Freshchat admin panel, go to Admin > API Tokens and generate a new token. All REST API v2 requests use Bearer token authentication — include the header Authorization: Bearer YOUR_TOKEN in every request. Your account's API base URL is https://<your-account>.freshchat.com/v2/ where <your-account> is your Freshchat subdomain. Save this token securely; you'll need it for every export step below.
Step 2: Export Contacts (Users)
Use GET /v2/users to list all contacts with optional filters: first_name, email, phone, created_from, and created_to (ISO 8601 date range). The API returns paginated JSON with user properties including name, email, phone, custom properties, and creation timestamps. To retrieve a specific batch of users, use POST /v2/users/fetch with an array of user IDs (maximum 100 IDs per request). Export the JSON responses and convert to CSV using any JSON-to-CSV tool if needed.
Step 3: Export Conversation History
Retrieve conversations per user via GET /v2/users/{user_id}/conversations. Each conversation includes status, assigned agent, group, timestamps, and channel source. For the actual messages, call GET /v2/conversations/{conversation_id}/messages — messages include sender info, content (text, images, files), and timestamps. This is per-user and per-conversation, so a full export requires iterating through all users and their conversations. Alternative methods: The Extract API at /reports/raw with the Chat-Transcript event type exports conversation data in bulk as CSV — limited to 120 requests/day and a 1-month window per request. The Download Transcript marketplace app exports individual conversations as .txt files (200-message limit per transcript). The Email Transcript app sends a conversation transcript via email.
Step 4: Export Agents, Groups, and Channel Configuration
Use GET /v2/agents to list all agent profiles (name, email, role, status, assigned groups). Use GET /v2/groups to retrieve your team group structure and routing configuration. Use GET /v2/channels to export your channel configuration (called "Topics" in the API). Save these JSON responses so you can recreate equivalent team structures, routing rules, and channel setups in your new platform.
Step 5: Document What Cannot Be Exported
Freshchat's API does not expose: Freddy AI Agent bot flows (the no-code chatbot builder configurations), IntelliAssign routing rules (skill-based assignment logic), CSAT survey templates, canned responses, and campaign configurations (proactive messaging setups). Screenshot your bot flows from the Freddy AI Agent builder, copy your canned response text manually, and document your IntelliAssign settings and auto-resolve rules before canceling your account. You'll recreate these as auto-reply rules and quick replies on your new platform.
Tip: If you also use Freshdesk alongside Freshchat, ticket data may be accessible through Freshdesk's separate data export feature under Admin > Account > Data Export, which offers CSV downloads for tickets and contacts.
Need the full migration guide?
This page covers export your data specifically. For the complete step-by-step migration process:
Read the complete Freshchat migration guide →Ready to try Converge?
$49/month flat. Up to 15 agents. 14-day free trial, no credit card required.
Start Free Trial