GenieScheduler
Stored in the genieschedulers collection. createdAt and updatedAt are maintained automatically.
Returned by GET /genie, POST /genie, DELETE /genie/:schedulerId.
| Field | Type | Notes |
|---|---|---|
company | ObjectId -> Company | |
createdBy | ObjectId -> Member | |
prompt | string | default "" |
outreachPrompt | string | default "" |
tone | string | default "" |
industry | string | default "" |
aiType | string | default gemini |
type | string | default lead · one of lead, contact |
enrichmentEnabled | boolean | default false |
userEnquiryEnabled | boolean | default true |
additionalFilters | any | default {} |
whitelistedCustom | boolean | default false |
customWhitelistedDomains | string[] | default [] |
customChannelSelection | boolean | default false |
customChannels.email.enabled | boolean | default false |
customChannels.email.apps | ObjectId[] -> Smtp | default [] |
customChannels.whatsapp.enabled | boolean | default false |
customChannels.whatsapp.apps | ObjectId[] -> MetaApp | default [] |
outreachCadence.steps | number | default 0 |
outreachCadence.spanMs | number | default 0 |
outreachCadence.windowStart | string | default "" |
outreachCadence.windowEnd | string | default "" |
outreachCadence.timezone | ObjectId -> Timezone | default null |
campaignMode | boolean | default false |
campaignPlanEnqueued | boolean | default false |
genieSmtpAppId | ObjectId -> Smtp | default null |
genieWaAppId | ObjectId -> MetaApp | default null |
campaignSteps | object[] | default [] |
campaignSteps.channel | string | one of email, whatsapp |
campaignSteps.scheduledAt | date | default null |
campaignSteps.state | string | default pending · one of pending, awaiting_template_approval, scheduled, failed, template_pending |
campaignSteps.emailTemplateId | ObjectId -> EmailTemplate | |
campaignSteps.waTemplateId | ObjectId -> MetaTemplate | |
campaignSteps.campaignId | ObjectId -> Campaign | |
campaignSteps.error | string | default "" |
campaignSteps._id | ObjectId | default "6a95712f932657988a91c097" |
source | string | default prompt · one of prompt, contacts |
count | number | default 25 |
recurring | boolean | default false |
intervalMs | number | default 0 |
recurringType | string | default daily · one of daily, weekly, monthly, custom |
customRecurringDays | number | default 1 |
recurringActive | boolean | default false |
nextRunAt | date | default null |
lastRunAt | date | default null |
recurringParent | ObjectId -> GenieScheduler | default null |
leadGeneratorConfigId | ObjectId -> LeadGeneratorConfig | |
leads | object[] | default [] |
leads.leadId | ObjectId -> Lead | |
leads.contactId | ObjectId -> Contact | |
leads.state | string | default pending_lead_gen · one of pending_lead_gen, pending_enrichment, enriched, awaiting_decision, pending_ai_window, awaiting_template_approval, scheduled, completed and 1 more |
leads.error | string | default "" |
leads.enrichmentData | any | default {} |
leads.channelDecision | string[] | default [] |
leads.scheduledAt | date | default null |
leads.emailTemplateId | ObjectId -> EmailTemplate | |
leads.waTemplateId | ObjectId -> MetaTemplate | |
leads.sendJobIds | ObjectId[] -> SendJob | default [] |
leads.smtpAppId | ObjectId -> Smtp | default null |
leads.waAppId | ObjectId -> MetaApp | default null |
leads.offsetHours | number | default null |
leads.steps | object[] | default [] |
leads.steps.channel | string | one of email, whatsapp |
leads.steps.scheduledAt | date | default null |
leads.steps.state | string | default pending · one of pending, scheduled, awaiting_template_approval, dispatched, failed, template_pending |
leads.steps.emailTemplateId | ObjectId -> EmailTemplate | |
leads.steps.waTemplateId | ObjectId -> MetaTemplate | |
leads.steps.sendJobId | ObjectId -> SendJob | |
leads.steps.error | string | default "" |
leads.enrichedAt | date | |
leads.decidedAt | date | |
leads.scheduledJobAt | date | |
leads.completedAt | date | |
status | string | default active · one of active, completed, failed, cancelled |
startEnqueued | boolean | default false |
notifiedStages.started | boolean | default false |
notifiedStages.leadGenStarted | boolean | default false |
notifiedStages.leadGenCompleted | boolean | default false |
notifiedStages.schedulingStarted | boolean | default false |
notifiedStages.completed | boolean | default false |
notifiedStages.failed | boolean | default false |
totalLeads | number | default 0 |
progressCounts.pending_enrichment | number | default 0 |
progressCounts.enriched | number | default 0 |
progressCounts.scheduled | number | default 0 |
progressCounts.completed | number | default 0 |
progressCounts.failed | number | default 0 |
draft | boolean | default false |
_id | ObjectId | default "6a95712f932657988a91c098" |
createdAt | date | set once |
updatedAt | date |