Sortlist AI DM Concierge (Manual AI Setup with Zapier + Slack)
Qualify and reply to your Sortlist leads automatically with your own AI Sales Assistant.
🧩 Why this guide exists
The shared Zapier template saves your connections (Sortlist, Slack, etc.)
but can’t store your AI prompts or data mapping — these must be added manually.
This step-by-step tutorial shows you exactly how to rebuild and customize the AI steps so the automation understands the right data, runs correctly, and produces quality replies.
🎥 Before you start
You’ll follow this guide with a Loom walkthrough.
We’ll show you each click visually — no coding needed.
Estimated setup time: 15 minutes.
✅ You’ll need
A Zapier account
Access to your Sortlist provider account
Your Slack workspace (or Teams, Discord, etc.)
Your Sortlist AI DM Concierge Zap template link (provided by Sortlist)
A Calendly link or meeting URL (optional)
🚀 Step 1 – Open the Sortlist AI DM Concierge Zap
Click the template link → “Try this Zap”
Connect your Sortlist accounts when prompted.
You’ll see a few preconfigured steps:
Trigger:
New Direct Message Received (Sortlist)| Connect your accountAction: ChatGPT (OpenAI) | Connect your API Key that you can create here: https://platform.openai.com/api-keys
Formatter by Zapier (see video)
AI By Zapier (see video)
And Slack notification (empty message body) (see video)
🧠 Step 2 – Add your first AI step (Lead Qualification)
Between the Sortlist trigger and Slack, click ➕
Choose AI by Zapier → Generate Text
In the “Prompt” field, paste this entire block 👇
🟢 Prompt for Lead Qualification (to Copy-Paste)
You are an expert in inbound lead qualification for B2B service agencies.
Goal: Analyse the message content received from the direct_message_received trigger and classify the lead into one of three buckets.
Buckets:
- High qualitative lead: clear business need, budget or urgency indicators, relevant service request, coherent company details, professional tone, valid phone number & professional email.
- Needs more insight: relevant service need but missing clarity, context, or authority to decide; might require a discovery call.
- Poor lead (disqualify): spam, irrelevant request, student/research inquiry, unclear or no service need, or individual consumer request.
Scoring logic for confidence_score (integer 0–100):
- Start from 50.
- +20 if the message clearly expresses a concrete need, budget, or urgency.
- +15 if company and contact info appear professional or coherent.
- +10 if tone is business-oriented and matches the requested expertise.
- −10 if key information is missing (budget, scope, timing).
- −15 if contact details look unprofessional or non-business.
Clamp between 0 and 100.
Tone: Analytical, not promotional.
Output strictly in one line using semicolon (;) as the separator: classification; confidence_score; reasoning; recommended_next_action
Example output: High qualitative; 92; The message shows a clear project request with timing and relevant expertise; Schedule a qualification call to confirm details and budget.
Message to analyse: {{message}}
Context: Company: {{company__name}}
Website: {{company__website}}
Expertise requested: {{expertise}}
Location: {{location}}
Contact First Name: {{contacts[]first_name}}
Contact Job Title: {{contacts[]job_title}}
LinkedIn URL: {{contacts[]linkedin_url}}
Phone validation status: {{contacts[]phone_validation_status}} Professional email: {{contacts[]professional_email}}
Map the data in the prompt as shown in the video.
Test it → you should get an output like:
High qualitative; 92; The message shows a clear project request...; Schedule a qualification call.
🧩 Step 3 – Split the output into usable fields
Add a Formatter by Zapier → Text → Split Text step.
Input: the output from the AI step above.
Separator:
;(semicolon)Check “Split into Separate Fields”.
This gives you 4 variables:
classification
confidence_score
reasoning
recommended_next_action
💬 Step 4 – Add your second AI step (Write SDR Reply)
Click ➕ → AI by Zapier → Generate Text
In the “Prompt” field, paste this full prompt 👇
🟣 Prompt for SDR Reply (to Copy-Paste)
You are a senior inbound SDR at a digital agency replying to an inbound lead received via Sortlist.
Goal: Write a short, natural, human-sounding email reply (<100 words) optimized for conversion and efficiency.
Engage and convert high or mid-quality leads into short discovery calls. Qualify uncertain leads with curiosity and empathy.
Politely disengage irrelevant leads while maintaining warmth. Protect your time and prioritize valuable leads.
If classification is missing, default to "Needs more insight".
Inputs:
- Classification: {{output__Item 1}}
- Confidence: {{output__Item 2}}
- Reasoning: {{output__Item 3}}
- Recommended action: {{output__Item 4}}
- Message: {{message}}
- Contact First Name: {{contacts[]first_name}}
- Company Name: {{company__name}}
- Expertise Area: {{expertise}}
- Meeting Link: https://calendly.com/your-link
Behavior:
- High qualitative → personalize and invite to 15-min call.
- Needs more insight → ask one clarifying question, propose call.
- Poor lead → thank politely, share resource link, no call.
Tone: professional, friendly, efficient.
Use first name once, avoid robotic phrases.
Return plain text only.
Output: only the final message, no markdown, no metadata.
Map the data field like in the video
For inputs, use the outputs from the previous Formatter step.
📨 Step 5 – Send everything to Slack
Add Slack → Send Message to Channel
In “Message Text”, paste:
:incoming_envelope: *New Direct Message received:*
• *Classification:* `{{output__Item 1}}`
• *Confidence:* `{{output__Item 2}}/100`
• *Reasoning:* `{{output__Item 3}}`
*Lead:* `{{company__name}} ({{location}})`
*Contact:* `{{contacts[]first_name}} {{contacts[]last_name}}` · <mailto:{{contacts[]email}}|Email> · `{{contacts[]phone}}`
*Job Title:* `{{contacts[]job_title}}`
*Expertise:* `{{expertise}}`
*Message:* “{{message}}”
*Actions:* `{{output__Item 4}}`
👉 *Links:* <{{opportunity_link}}|Open in Sortlist>
✨ *Answer to Copy-Paste:*
{{output_from_AI_Email_Generator}}
🧪 Step 6 – Test your workflow
Go to Sortlist → send a test Direct Message from a project.
In Zapier → click “Test Trigger” → ensure the Sortlist message loads.
Run the full Zap test → check Slack message output.
Expected Slack output:
✅ classification, score, reasoning, next action, and ready-to-send reply.
🔁 Step 7 – Turn on your Zap (Publish)
Once you’ve tested both AI steps and Slack output:
Turn on the Zap.
Every new inbound message will now:
Trigger instant AI classification
Generate a smart SDR reply
Send it to your Slack channel
💡 Troubleshooting Tips
Problem | Fix |
AI step output is empty | Ensure all Sortlist fields are correctly mapped |
Output shows JSON or extra text | Check you copied the full prompt (no missing sections) |
Slack message looks messy | Use code block ( |
Slow response | Upgrade to Zapier Pro or use OpenAI connector (faster requests) |
🎉 You’re done!
Your Sortlist AI DM Concierge is live 🎊
You now have a 24/7 assistant that:
Reads and qualifies each inbound message
Suggests an actionable SDR reply
Sends it to your team instantly



