n8n-nodes-instantly
Version:
n8n community node for Instantly API v2
126 lines • 3.37 kB
TypeScript
import { IExecuteFunctions } from 'n8n-workflow';
/**
* Common types and interfaces for Instantly API operations
*/
export interface IInstantlyApiContext {
context: IExecuteFunctions;
itemIndex: number;
}
export interface IResourceLocator {
mode: 'list' | 'id' | 'email';
value: string;
}
export interface IPaginationOptions {
returnAll: boolean;
limit: number;
}
export interface IDateRange {
startDate?: string;
endDate?: string;
}
export interface IOperationResult {
success: boolean;
data?: any;
error?: string;
}
export interface IAccountUpdateFields {
firstName?: string;
lastName?: string;
dailyLimit?: number;
trackingDomainName?: string;
trackingDomainStatus?: string;
enableSlowRamp?: boolean;
inboxPlacementTestLimit?: number;
sendingGap?: number;
skipCnameCheck?: boolean;
removeTrackingDomain?: boolean;
warmup?: IWarmupConfig;
warmupDailyIncrease?: number;
}
export interface IWarmupConfig {
limit?: number;
replyRate?: number;
warmupCustomFtag?: string;
increment?: 'disabled' | 'enabled';
}
export interface ICampaignFields {
name: string;
}
export interface ICampaignScheduleTiming {
from: string;
to: string;
}
export interface ICampaignScheduleDays {
0?: boolean;
1?: boolean;
2?: boolean;
3?: boolean;
4?: boolean;
5?: boolean;
6?: boolean;
}
export interface ICampaignScheduleItem {
name: string;
timing: ICampaignScheduleTiming;
days: ICampaignScheduleDays;
timezone: string;
}
export interface ICampaignSchedule {
schedules: ICampaignScheduleItem[];
start_date?: string;
end_date?: string;
}
export interface ICampaignSequenceStepVariant {
subject: string;
body: string;
}
export interface ICampaignSequenceStep {
type: string;
delay: number;
variants: ICampaignSequenceStepVariant[];
}
export interface ICampaignSequence {
steps: ICampaignSequenceStep[];
}
export interface ICampaignAutoVariantSelect {
trigger?: 'click_rate' | 'open_rate' | 'reply_rate';
}
export interface ICampaignCreateFields {
name: string;
campaign_schedule: ICampaignSchedule;
pl_value?: number;
is_evergreen?: boolean;
email_gap?: number;
random_wait_max?: number;
text_only?: boolean;
daily_limit?: number;
daily_max_leads?: number;
link_tracking?: boolean;
open_tracking?: boolean;
stop_on_reply?: boolean;
stop_on_auto_reply?: boolean;
prioritize_new_leads?: boolean;
match_lead_esp?: boolean;
stop_for_company?: boolean;
insert_unsubscribe_header?: boolean;
allow_risky_contacts?: boolean;
disable_bounce_protect?: boolean;
email_list?: string[];
email_tag_list?: string[];
cc_list?: string[];
bcc_list?: string[];
sequences?: ICampaignSequence[];
auto_variant_select?: ICampaignAutoVariantSelect;
}
export interface ILeadFields {
email: string;
}
export interface IAnalyticsParams {
returnAll: boolean;
startDate?: string;
endDate?: string;
campaignId?: string;
}
export type ResourceType = 'account' | 'campaign' | 'lead' | 'analytics';
export type OperationType = 'addToCampaign' | 'create' | 'get' | 'getMany' | 'update' | 'delete' | 'pause' | 'resume' | 'getCampaignAnalytics' | 'updateInterestStatus';
//# sourceMappingURL=common.d.ts.map