Home Best Practices & Guides How to Export Contacts with Conversation History

How to Export Contacts with Conversation History

Last updated on Aug 26, 2026

Exporting your contact database along with conversation context is an important step for transferring data to your CRM system, preparing extended reports, performing deep analysis, or simply creating a backup copy of your database.

In this article, we will cover three export methods.

Method 1. Exporting via Grinfi MCP + Claude

This is the fastest way to get a ready-made table with contacts and their conversation history, simply by asking artificial intelligence.

Through MCP, Claude securely connects to your workspace, accessing contacts, tags, pipeline stages, and full message threads (LinkedIn and Email are merged into a single chronological stream, just like in your inbox).

🟡 Note: Claude has limitations on processing large volumes of information; we recommend using this method for exporting databases of no more than 1,000 contacts. If you need to export a significantly larger volume of data, it is better to use the API export method.

How to set up export:

  1. Open the web version of claude.ai or the Claude desktop app.

  2. Go to Settings -> Connectors.

  3. Click Add Custom Connector and paste the URL: https://mcp.grinfi.io

  4. Log in using your Grinfi credentials.

Once connected, enter a prompt specifying your target filters and preferred file format (Excel, CSV, or Google Sheets).

Prompt examples:

  • "Export all contacts from the 'Enterprise Q2' list along with full conversation history. Format: Excel, one row = one contact, conversation in a separate column in chronological order."

  • "Find all contacts at the 'Interested' stage who replied in the last 30 days. Output a file including name, company, job title, LinkedIn, email, and full conversation thread for each."

Key advantage: Claude can not only export the file, but also analyze it right away. For example, break responses down by categories or find common patterns in conversations that convert best.

Method 2. Running a Ready-Made Python Script Locally

To export your database independently without volume limitations, execute our pre-configured script locally.

How to run the script

  1. Install Python 3 on your PC if it is not installed yet.

  2. Download the script archive using the link and extract it: export_contacts_script.zip

  3. Open terminal (Terminal for Mac/Linux or Command Prompt/PowerShell for Windows) and run the downloaded script.

  4. The script will prompt you to enter an API key (it can be generated in your Grinfi dashboard under Settings -> API Keys). Paste it and press Enter.

    🟡 Note: while entering the key, the cursor may not move and show nothing - the key is hidden for security reasons.

  5. Next, the script will ask what exactly to export:
    What do you want to export?

    1) All contacts

    2) Only contacts that have a conversation (people who replied) 

    Enter 1 or 2 (default 1):

    Type 1 (to export all contacts) or 2 (to export only contacts with conversations) and press Enter.

After entering the key, the script will start working, and a counter of processed contacts will appear in the console. Allow the process to finish.

🔴 Important: the API key provides access to all data in your workspace. Treat it like a password: do not share it with third parties, and do not send it in unsecured chats. If the key has been compromised, immediately delete it in workspace settings and generate a new one.

Script output

In the same folder where the script is located, two files with your data will automatically appear:

  • export.json - contains a detailed data array in the format { contact, linkedin_messages[], emails[] }. For each message, its type (inbox - from contact, outbox - sent by you), text / subject, sending time (sent_at) and conversation ID will be specified.

  • contacts.csv - a summary table where one row equals one contact. Contains basic information: name, company, job title, LinkedIn link, email, current pipeline stage, and total message count (message texts themselves are stored in the export.json file).

Method 3. Custom Logic via API

If you need a custom integration, writing your own requests to the platform's open API is the best solution.

Full technical documentation with all available endpoints is located at api.grinfi.io.

Step-by-step export logic

  1. Gaining access: Create a unique API key in your workspace (Settings -> API Keys section).

    🔴 Important: the API key provides access to all data in your workspace. Treat it like a password: do not share it with third parties, and do not send it in unsecured chats. If the key has been compromised, immediately delete it in workspace settings and generate a new one.

  2. Collecting contact database: Make a request to the lead search endpoint to get the list of required contacts. Be sure to configure pagination (limit and offset) to correctly fetch all pages of the data array.

  3. Exporting conversation history: Using contact IDs obtained in the previous step, make corresponding requests to message endpoints. This will allow you to fetch LinkedIn and Email thread history for each lead.

  4. Merging and saving: Combine the received data (contact profile information + message array) on your side and convert it into the format you need.