Log resolved Crisp conversations to a Google Sheet

By General Input

Every time a Crisp conversation is marked resolved, we add a row to your Google Sheet, so you have a clean record of closed tickets for weekly reporting.

Integrations

  • Crisp
  • Google Sheets

Type

Deterministic Code

Categories

  • Customer Support
  • Operations

Run this as a Crisp webhook workflow that fires whenever a conversation's status changes. Crisp sends this webhook for every status change, so the first thing to do is check the new status and only continue when it is "resolved". If the conversation moved to any other state (such as pending or unresolved), stop and do nothing, so the log only ever records closed tickets.

When a conversation is resolved, gather the details to log:

  • Call Crisp's Get People Profile for the conversation's contact to read the contact's full name, email address, and the segments or tags on that contact.

  • Call Crisp's Get Messages In Conversation and count the returned messages to get the total message count for the ticket.

  • Take the assigned operator, the conversation (session) id, and the website id from the webhook payload.

Then append a single row to a Google Sheet with Append Values, one row per resolved conversation, using these columns in order:

  • Resolved timestamp: Crisp timestamps are Unix epoch milliseconds, so convert the status-change time to a human-readable date and time before writing it.

  • Contact name.

  • Contact email.

  • Assigned operator.

  • Conversation segments or tags, comma-separated when there are several.

  • Message count.

  • Link back to the conversation, built from the website id and session id, for example https://app.crisp.chat/website/{website_id}/inbox/{session_id}/.

Append to a fixed spreadsheet and tab that I configure (for example a "Resolved Tickets" tab). This is a plain, deterministic record for weekly reporting, so do not summarize, score, or add any commentary. If a field is missing, such as a contact with no email, write an empty cell rather than skipping the row.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageLet support send one-off Loops emails without an engineerStop cold emails to anyone with a live deal in PipedriveiMessage campaign console with pre-flight checks and delivery boardLinkedIn Ads budget pacing dashboard for every client accountFront desk appointment confirmation board for the next 3 daysGive your team Looker numbers without buying more seatsBuild audience segments from product usage and push to LoopsTurn the people who engage with your posts into Pipedrive leads