Recued
Menu
← Back to recipes

Propose follow-up reply conversion options

by recued-core v2 30 views

Use “Propose follow-up reply conversion options” in Recued. Neutral detection recipe for the outbound follow-up loop.

Complete workflow

Outbound Follow-Up Loop 13 pinned recipes

Use Outbound Follow-Up Loop in Recued for solo, cold start, email, and mail. It includes 9 ready-to-run workflows and 2 related packs in one install.

You are viewing one recipe in this workflow. Installing it opens the complete pack so its other recipes and background automations arrive together.

Use “Outbound follow-up queue” in Recued. It provides a read-only outbound follow-up queue for a one-person company.

emailmailoutboxfollowup
by recued-core pinned v1

Use “Batch approve follow-up sends” in Recued. Action workflow over Email/Outbox. Scans likely silent outbound threads, drafts plain-text follow-ups, then sends the selected batch through the mail-send kernel ingredient. Changes remain behind Recued's approval controls.

emailmailfollowupoutbox
by recued-core pinned v1
Show all 13 recipes

Use “Schedule an approved meeting hold” in Recued. It carries out the named workflow using the connections and settings you choose.

emailmailcalendarmeeting
by recued-core pinned v2
View pack details, dependencies, and permissions →
How it works 146 steps

Inspect the data fetches, transforms, gates, and output this recipe runs.

Data fetch
▼ shared_followups core.storage.shared.list
List storage shared
▼ existing_notification_markers core.storage.shared.list
List storage shared
▼ existing_meeting_proposals core.storage.shared.list
List storage shared
▼ existing_task_proposals core.storage.shared.list
List storage shared
▼ existing_insight_proposals core.storage.shared.list
List storage shared
▼ existing_commitment_proposals core.storage.shared.list
List storage shared
▼ existing_crm_deal_update_proposals core.storage.shared.list
List storage shared
▼
Process (139 steps)
■ existing_meeting_proposals_family filter
Filter by condition
■ existing_task_proposals_family filter
Filter by condition
■ existing_insight_proposals_family filter
Filter by condition
■ existing_commitment_proposals_family filter
Filter by condition
■ existing_crm_deal_update_proposals_family filter
Filter by condition
■ existing_notification_markers_family filter
Filter by condition
■ response_needed_rows filter
Filter by condition
■ conversion_candidate_rows filter
Filter by condition
■ notified_response_record_ids map
Extract from each item
■ rows_without_notification_marker filter
Filter by condition
■ candidate_rows slice
Take a subset of
■ pending_count count
Count items in rows without notification marker
■ has_candidate compare
Check if candidate rows has data
■ defaults defaults
Apply defaults
■ meeting_proposal_key default
Apply default
■ task_proposal_key default
Apply default
■ insight_proposal_key default
Apply default
■ commitment_proposal_key default
Apply default
■ crm_deal_update_proposal_key default
Apply default
■ response_record_id default
Apply default
■ response_key_colon replace
Replace text in response record id
■ response_key_slash replace
Replace text in response key colon
■ response_key_dot replace
Replace text in response key slash
■ response_key_at replace
Replace text in response key dot
■ response_key_space replace
Replace text in response key at
■ response_key_lt replace
Replace text in response key space
■ response_key_gt replace
Replace text in response key lt
■ response_key_plus replace
Replace text in response key gt
■ response_key_equals replace
Replace text in response key plus
■ response_key_question replace
Replace text in response key equals
■ notification_marker_key default
Apply default
■ defaults_2 defaults
Apply defaults
■ defaults_3 defaults
Apply defaults
■ has_response_record compare
Check if response record id has data
■ has_response_mail_slug compare
Check if response mail slug has data
■ skip_body_read any
Check if any of the conditions are true
◆ body_read core.mail.body-read
Body read mail
skip: step.skip_body_read equal true
■ response_body default
Apply default
■ body_present compare
Check if response body has data
■ now_iso date_add
Add 0 minutes to
■ skip_extract any
Check if any of the conditions are true
■ protect pii-protect
Apply pii-protect
✦ extract_options core.ai.extract
AI extracts structured fields from data
skip: step.skip_extract equal true
■ restore_options pii-restore
Apply pii-restore
■ category_is_meeting compare
Check if response category equals meeting_requested
■ category_is_positive compare
Check if response category equals positive_reply
■ category_is_objection compare
Check if response category equals objection_or_blocker
■ category_is_needs_owner compare
Check if response category equals needs_owner_reply
■ category_is_task_or_commitment any
Check if any of the conditions are true
■ category_is_insight any
Check if any of the conditions are true
■ defaults_4 defaults
Apply defaults
■ meeting_start_at date_parse
Parse restore options restored meeting start at iso as a date
■ meeting_end_at_from_reply date_parse
Parse restore options restored meeting end at iso as a date
■ has_meeting_start_at compare
Check if meeting start at has data
■ has_meeting_end_at_from_reply compare
Check if meeting end at from reply has data
■ fallback_meeting_end_iso date_add
Add setting default duration minutes minutes to
skip: step.has_meeting_start_at not_equal true
■ fallback_meeting_end_at date_parse
Parse fallback meeting end iso as a date
■ meeting_end_at ternary
Apply ternary
■ has_meeting_end_at compare
Check if meeting end at has data
■ has_attendee compare
Check if attendee email has data
■ meeting_already_converted compare
Check if candidate rows 0 value calendar source id has data
■ meeting_existing_for_thread filter
Filter by condition
■ meeting_already_proposed compare
Check if meeting existing for thread has data
■ meeting_below_confidence compare
Check if meeting confidence is less than setting meeting confidence threshold
■ skip_meeting_propose any
Check if any of the conditions are true
■ task_title_raw default
Apply default
■ task_title trim
Trim whitespace from task title raw
■ task_notes default
Apply default
■ task_due_at date_parse
Parse restore options restored task due at iso as a date
■ raw_task_priority default
Apply default
■ task_priority_is_low compare
Check if raw task priority equals low
■ task_priority_is_high compare
Check if raw task priority equals high
■ task_priority_high_or_medium ternary
Apply ternary
■ task_priority ternary
Apply ternary
■ task_confidence default
Apply default
■ task_missing_title compare
Check if task title is empty
■ task_already_created compare
Check if candidate rows 0 value task id has data
■ task_existing_for_thread filter
Filter by condition
■ task_already_proposed compare
Check if task existing for thread has data
■ task_below_confidence compare
Check if task confidence is less than setting task confidence threshold
■ skip_task_propose any
Check if any of the conditions are true
■ note_title_raw default
Apply default
■ note_title trim
Trim whitespace from note title raw
■ note_body_raw default
Apply default
■ note_body trim
Trim whitespace from note body raw
■ raw_insight_type default
Apply default
■ is_positive_signal compare
Check if raw insight type equals positive_signal
■ is_objection compare
Check if raw insight type equals objection
■ is_blocker compare
Check if raw insight type equals blocker
■ is_commercial_context compare
Check if raw insight type equals commercial_context
■ objection_or_default ternary
Apply ternary
■ blocker_or_objection ternary
Apply ternary
■ commercial_or_blocker ternary
Apply ternary
■ insight_type ternary
Apply ternary
■ note_confidence default
Apply default
■ note_missing_title compare
Check if note title is empty
■ note_missing_body compare
Check if note body is empty
■ note_already_created compare
Check if candidate rows 0 value insight note id has data
■ insight_existing_for_thread filter
Filter by condition
■ insight_already_proposed compare
Check if insight existing for thread has data
■ note_below_confidence compare
Check if note confidence is less than setting insight confidence threshold
■ skip_insight_propose any
Check if any of the conditions are true
■ commitment_statement_raw default
Apply default
■ commitment_statement trim
Trim whitespace from commitment statement raw
■ raw_commitment_direction default
Apply default
■ commitment_direction_is_outbound compare
Check if raw commitment direction equals outbound
■ commitment_direction_is_internal compare
Check if raw commitment direction equals internal
■ commitment_internal_or_inbound ternary
Apply ternary
■ commitment_direction ternary
Apply ternary
■ commitment_counterparty_email_raw default
Apply default
■ commitment_counterparty_email trim
Trim whitespace from commitment counterparty email raw
■ commitment_promised_for_at date_parse
Parse restore options restored commitment promised for at iso as a date
■ commitment_confidence default
Apply default
■ commitment_missing_statement compare
Check if commitment statement is empty
■ commitment_already_created compare
Check if candidate rows 0 value commitment id has data
■ commitment_existing_for_thread filter
Filter by condition
■ commitment_already_proposed compare
Check if commitment existing for thread has data
■ commitment_below_confidence compare
Check if commitment confidence is less than setting commitment confidence threshold
■ skip_commitment_propose any
Check if any of the conditions are true
■ crm_deal_next_step_raw default
Apply default
■ crm_deal_next_step trim
Trim whitespace from crm deal next step raw
■ defaults_5 defaults
Apply defaults
■ has_crm_connection compare
Check if crm connection has data
■ has_crm_deal_id compare
Check if crm deal id has data
■ crm_deal_next_step_missing compare
Check if crm deal next step is empty
■ crm_deal_update_existing_for_thread filter
Filter by condition
■ crm_deal_update_already_proposed compare
Check if crm deal update existing for thread has data
■ crm_deal_below_confidence compare
Check if crm deal confidence is less than setting crm deal update confidence threshold
■ skip_crm_deal_update_propose any
Check if any of the conditions are true
◆ write_meeting_proposal core.storage.shared.write
Write storage shared
skip: step.skip_meeting_propose equal true
◆ write_task_proposal core.storage.shared.write
Write storage shared
skip: step.skip_task_propose equal true
◆ write_insight_proposal core.storage.shared.write
Write storage shared
skip: step.skip_insight_propose equal true
◆ write_commitment_proposal core.storage.shared.write
Write storage shared
skip: step.skip_commitment_propose equal true
◆ write_crm_deal_update_proposal core.storage.shared.write
Write storage shared
skip: step.skip_crm_deal_update_propose equal true
■ has_conversion_option any
Check if any of the conditions are true
◆ write_notification_marker core.storage.shared.write
Write storage shared
skip: step.has_conversion_option not_equal true
■ skip_notify any
Check if any of the conditions are true
◆ notify core.notification.send
Send notification
skip: step.skip_notify equal true
■ card to_summary
Format results as a summary card
▼
Output
summary card
Settings 10 configurable

Configurable at install. Defaults shown — change them anytime in Recued.

channels setting = [object Object]
calendar id setting = primary
calendar slug setting = primary
default time zone setting = UTC
default duration minutes setting = 30
task confidence threshold setting = 0.6
insight confidence threshold setting = 0.6
meeting confidence threshold setting = 0.65
commitment confidence threshold setting = 0.65
crm deal update confidence threshold setting = 0.65

Uses (5 operations)

Shared store List storage shared core.storage.shared.list
Mail Body read mail core.mail.body-read
AI models AI extracts structured fields from data core.ai.extract
Shared store Write storage shared core.storage.shared.write
Notifications Send notification core.notification.send

Trust & control

What installing this recipe would let it do. Recued grants these permissions at install — review them there before approving.

Permissions it requires

Send notifications
Declared by the recipe — Recued grants these at install, where you review them before approving.

What it's allowed to do

Read Shared store core.storage.shared.list read-only
Read Mail core.mail.body-read read-only
Read AI models core.ai.extract read-only
Write Shared store core.storage.shared.write external change
Read Notifications core.notification.send external change

Data it touches

SurfacesShared storeMailAI modelsNotifications
Warehousedata.shared

About

Tags

emailmailfollowupconversioncrmproposeoptionsclosed-loopwork-queueone-person-companystate:outbound-follow-up-response-watcherpack:outbound-follow-up-responseai_surface

Details

146 steps 10 configurable settings recipe_id: outbound-follow-up-reply-conversion-options