Modjo records and transcribes your sales calls. This guide shows you two ways to send the product feedback captured in those calls to Harvestr, so it lands in your inbox alongside feedback from every other channel.
Important: our native Modjo integration has been discontinued
The previous integration relied on Modjo Highlights, which Modjo has sunsetted. Calls no longer flow into Harvestr through the old webhook connection.
The two approaches below replace it. Both use features Modjo actively supports, and both keep your feedback tagged as coming from Modjo.
Which approach should you use?
Both routes let Modjo's own AI do the extraction, so you are not paying a second time to analyse the same call.
AI CRM Filling | Zapier | |
Requires | Salesforce or HubSpot connected to Modjo | A Zapier account |
Who extracts the feedback | Modjo, automatically after each call | Zapier's AI step, from the call summary |
Setup effort | Low — mostly configuration | Medium — a 4-step Zap |
Best for | Teams already running Modjo with a CRM | Teams without Salesforce or HubSpot |
If you use Salesforce or HubSpot, start with AI CRM Filling. It uses Modjo's native automation, requires no third-party tool, and runs on every matching call without anyone clicking anything.
Option 1: AI CRM Filling + Salesforce automation
Modjo's AI CRM Filling analyses every call that matches your rules and writes what it finds into a CRM field. You create a field for product feedback, let Modjo populate it, then use a Salesforce Flow to push that field into Harvestr through our API.
Prerequisites
Admin or Manager role in Modjo
Modjo AI activated for your organization
Modjo connected to Salesforce or HubSpot
Admin access in Salesforce
A Harvestr API Access Token with the
create_feedbackscope, from your Harvestr API settings
Step 1: Create the CRM field
In Salesforce, create a custom field on the object you want feedback attached to — usually Account or Opportunity.
Field type: Long Text Area. A standard Text field caps at 255 characters and will truncate verbatims mid-sentence.
Suggested name:
Modjo_Product_Feedback__c
Check Field-Level Security before you continue. Go to Setup > Object Manager > [Object] > Fields & Relationships, open your field, and click Set Field-Level Security. The field must be visible and editable for the profile used by the Modjo integration. If it isn't, Modjo silently fails to fill it — no error is shown anywhere.
Step 2: Create the AI CRM Filling template in Modjo
In Modjo, go to Settings > AI CRM Filling and click Create a new template. Choose Start from scratch.
Set your scope
Choose which calls the template applies to. You can filter by Teams and Tags, and under advanced settings also by call duration and telephony provider.
Narrowing the scope matters: a template that runs on every internal stand-up will produce noise. Targeting customer-facing teams and external calls gives much cleaner results.
Select the CRM field
Pick the Modjo_Product_Feedback__c field you created in Step 1.
Write the prompt
This prompt decides what ends up in Harvestr, so it's worth getting right. Here's one you can paste and adapt:
Extract the product feedback shared by the customer during this call.
Product feedback means specific input on the product's existing features, or an expressed need for new functionality. This includes negative experiences with current features, requests for new capabilities, comparisons with competitors, and concrete suggestions for improvement.
List the exact customer verbatims without rephrasing or summarizing. Group verbatims by topic when relevant. Use a bullet list in markdown format.
Do NOT extract:
• Statements that only describe or praise existing capabilities
• Generic positive comments with no actionable input
• Basic product usage questions
• Questions that a teammate answers during the call as already possible today
• Greetings, small talk, administrative or procedural questions
If the call contains no product feedback, return nothing at all.
That last line matters. An empty field means your Salesforce Flow won't fire, so calls without feedback never reach Harvestr.
Use Test your prompt to try it on a real call, then Validate my prompt and run the large-scale test on 5 calls. Modjo's own guidance is to always scale-test — prompts validated this way perform noticeably better.
Set the synchronization options
Three settings here have real consequences:
Synchronization: choose Automatic so feedback flows without a rep having to confirm anything.
Overwrite existing data: choose No. On "Yes", each new call replaces the previous call's feedback and you lose it before Harvestr ever sees it. On "No", new output is added on top of what's already there.
Call date display: turn this on. Because the field aggregates several calls, the date tells you when each piece of feedback was gathered.
Name your template, choose its output language, and click Finalize my template, then Publish.
Templates only apply to calls that happen after publishing. Existing calls are not backfilled.
Step 3: Push the field to Harvestr from Salesforce
Now build a Record-Triggered Flow that fires when Modjo fills the field, and sends its contents to Harvestr.
The full setup — External Credential, Named Credential, and the HTTP Callout — is documented step by step in Automatically send Opportunity feedback from Salesforce to Harvestr. Follow Option 2 in that article, with these changes:
Entry conditions
Trigger the Flow When a record is updated on your chosen object, with:
Modjo_Product_Feedback__c Is Changed = TrueModjo_Product_Feedback__c Is Null = False
Optimize for Actions and Related Records.
Request body
Use POST to /v1/message with this body, replacing the field names with your own:
{
"title": "Product feedback from {!$Record.Name}",
"content": "{!$Record.Modjo_Product_Feedback__c}",
"channel": "MODJO",
"requester": {
"type": "COMPANY",
"name": "{!$Record.Name}"
}
}Setting "channel": "MODJO" keeps this feedback labelled as Modjo-sourced in your inbox and in reporting, exactly as before.
If you'd rather attach feedback to an individual instead of a company, use "type": "USER" and pass the contact's name and email.
Option 2: Zapier
If you don't use Salesforce or HubSpot, Modjo's webhooks can send each call to Zapier, where an AI step extracts the product feedback and our Create Message action creates it in Harvestr.
Prerequisites
Administrator or Manager permissions in Modjo
A Zapier account on a Professional plan or higher — both Webhooks and AI by Zapier are unavailable on the Free plan
A Harvestr Editor account connected to Zapier. See our Zapier integration article for the basics.
Step 1: Create the Zap and get your webhook URL
In Zapier, create a new Zap.
For the trigger, search for and select Webhooks by Zapier.
Choose the Catch Hook event and click Continue.
In the Test tab, copy the webhook URL. It looks like
https://hooks.zapier.com/hooks/catch/XXXXX/YYYYY/.
Step 2: Point Modjo at that URL
In Modjo, go to Settings > Integrations > Webhook.
Click Create Webhook and paste the Zapier URL.
Uncheck the Call deleted and Transcript deleted events — you only want new calls.
Save. Modjo gives you a security token; keep it if you plan to verify signatures.
Record a test call, then go back to Zapier and click Test trigger so Zapier can read the payload structure.
Check what the payload actually contains. AI by Zapier cannot follow links or fetch URLs — it can only read text that is already in the Zap. If Modjo's webhook sends only a link to the call rather than the summary or transcript text, insert a Webhooks by Zapier → GET step before the AI step to fetch the content from the Modjo API first.
Step 3: Extract the feedback with AI by Zapier
Click + to add an action and select AI by Zapier.
In the Prompt field, type
/to insert the call summary or transcript from the trigger step, then paste the prompt below.Under Settings > Output Fields, add two fields so the result is structured rather than free text:
has_feedback— type Boolean, marked requiredfeedback— type Text
Click Preview to test, then Finish.
You are reading a sales call. Extract the product feedback shared by the customer.
Product feedback means specific input on the product's existing features, or an expressed need for new functionality: negative experiences with current features, requests for new capabilities, comparisons with competitors, and concrete suggestions for improvement.
Quote the customer's exact words. Do not rephrase or summarize. Group verbatims by topic when relevant.
Do NOT extract:
• Statements that only describe or praise existing capabilities
• Generic positive comments with no actionable input
• Basic product usage questions
• Questions that a teammate answers during the call as already possible today
• Greetings, small talk, administrative or procedural questions
Set has_feedback to true only if you found genuine product feedback. If you found none, set has_feedback to false and leave feedback empty.
Step 4: Skip calls with no feedback
Add a Filter by Zapier step and set the condition to has_feedback (Boolean) is true.
Without this, every call creates an empty item in your inbox and you spend your week deleting them.
Step 5: Create the feedback in Harvestr
Add a final action, search for the Harvestr app, and select Create Message. Connect your Harvestr account, then map the fields:
Field | Required? | What to map |
Source type | ✅ | Select Modjo so the feedback stays labelled as Modjo-sourced |
Requester name, email, or company | ✅ (at least one) | The account or contact from the Modjo payload |
Title | ✅ | Something like |
Content | ✅ | The |
Submitter name and/or email | Optional | The rep who ran the call |
Message URL | Optional | The Modjo call URL — strongly recommended, it lets you jump back to the recording from the feedback |
Labels | Optional | A label such as |
Required fields left blank will make the Zap fail. Make sure Source type, Title, Content, and at least one requester field are always populated.
Test the step, then turn your Zap on.
What lands in Harvestr
Either route creates a new feedback item in your inbox containing the product feedback extracted from the call, attributed to the right customer, with a link back to the Modjo recording if you mapped it.
From there it behaves like any other feedback: HAI parses it, suggests a categorization, and you can link it to a Discovery the same way you would with feedback from Slack, Zendesk, or your widget.
Troubleshooting
Nothing arrives in Harvestr
Check in this order:
Was the call recorded after you published? Neither route is retroactive.
Did the call match your scope? An AI CRM Filling template filtered to one team ignores everyone else's calls.
Did the call actually contain product feedback? Both prompts are written to return nothing when there is none. That's working as intended, not a failure.
The CRM field stays empty
Almost always Field-Level Security. Confirm the field is visible and editable for the profile used by the Modjo integration — Modjo cannot write to it otherwise, and reports no error.
Feedback from earlier calls disappears
Your template is set to overwrite. Edit it and set Overwrite existing data to No.
The Zap fails or doesn't trigger
If it doesn't trigger, confirm the webhook URL in Modjo matches the one in your Zap exactly, and that the Zap is turned on — a Zap that is off returns a 404 to Modjo. If it triggers but fails at the Harvestr step, check that every required field is mapped.
Still stuck? Reach out to our support team and we'll help you get it running.
