@graph8/sdk 0.245.0 → 0.260.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -5
- package/dist/cli.js +216 -0
- package/dist/index.d.mts +283 -12
- package/dist/index.d.ts +283 -12
- package/dist/index.js +88 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +88 -2
- package/dist/index.mjs.map +1 -1
- package/dist/react.d.mts +274 -12
- package/dist/react.d.ts +274 -12
- package/dist/react.js +106 -10
- package/dist/react.js.map +1 -1
- package/dist/react.mjs +97 -11
- package/dist/react.mjs.map +1 -1
- package/dist/types/README.md +7 -0
- package/dist/types/agency.d.ts +20 -0
- package/dist/types/agentSetup.d.ts +57 -0
- package/dist/types/api.d.ts +127 -0
- package/dist/types/appClient.d.ts +99 -0
- package/dist/types/appPlatform.d.ts +269 -0
- package/dist/types/appTokens.d.ts +125 -0
- package/dist/types/apps.d.ts +130 -0
- package/dist/types/audiences.d.ts +88 -0
- package/dist/types/calendar.d.ts +55 -0
- package/dist/types/campaigns.d.ts +61 -0
- package/dist/types/chat.d.ts +35 -0
- package/dist/types/cli.d.ts +14 -0
- package/dist/types/companies.d.ts +123 -0
- package/dist/types/contacts.d.ts +200 -0
- package/dist/types/copilot.d.ts +31 -0
- package/dist/types/core.d.ts +1052 -0
- package/dist/types/deals.d.ts +215 -0
- package/dist/types/enrich.d.ts +51 -0
- package/dist/types/fields.d.ts +84 -0
- package/dist/types/forms.d.ts +16 -0
- package/dist/types/http.d.ts +141 -0
- package/dist/types/inbox.d.ts +123 -0
- package/dist/types/index.d.ts +63 -0
- package/dist/types/intent.d.ts +196 -0
- package/dist/types/lists.d.ts +44 -0
- package/dist/types/mailboxes.d.ts +240 -0
- package/dist/types/marketplace.d.ts +62 -0
- package/dist/types/meetings.d.ts +70 -0
- package/dist/types/newsletter.d.ts +212 -0
- package/dist/types/notes.d.ts +57 -0
- package/dist/types/objects.d.ts +281 -0
- package/dist/types/pipelines.d.ts +135 -0
- package/dist/types/quotes.d.ts +143 -0
- package/dist/types/react.d.ts +978 -0
- package/dist/types/search.d.ts +99 -0
- package/dist/types/sequences.d.ts +255 -0
- package/dist/types/signals.d.ts +28 -0
- package/dist/types/skills.d.ts +176 -0
- package/dist/types/snippet.d.ts +24 -0
- package/dist/types/studio.d.ts +161 -0
- package/dist/types/tasks.d.ts +101 -0
- package/dist/types/types.d.ts +45 -0
- package/dist/types/utils.d.ts +21 -0
- package/dist/types/version.d.ts +10 -0
- package/dist/types/visitors.d.ts +29 -0
- package/dist/types/voice.d.ts +304 -0
- package/dist/types/webhooks.d.ts +71 -0
- package/dist/types/workflows.d.ts +229 -0
- package/docs/agents.md +748 -0
- package/docs/api/README.md +165 -0
- package/docs/api/accounts.d.ts +396 -0
- package/docs/api/accounts.md +644 -0
- package/docs/api/adCampaigns.d.ts +707 -0
- package/docs/api/adCampaigns.md +1091 -0
- package/docs/api/adCreatives.d.ts +996 -0
- package/docs/api/adCreatives.md +1708 -0
- package/docs/api/agency.d.ts +556 -0
- package/docs/api/agency.md +845 -0
- package/docs/api/agent.d.ts +330 -0
- package/docs/api/agent.md +514 -0
- package/docs/api/agents.d.ts +1622 -0
- package/docs/api/agents.md +2860 -0
- package/docs/api/aiInbox.d.ts +1984 -0
- package/docs/api/aiInbox.md +3490 -0
- package/docs/api/analytics.d.ts +1273 -0
- package/docs/api/analytics.md +2095 -0
- package/docs/api/apiKeys.d.ts +252 -0
- package/docs/api/apiKeys.md +318 -0
- package/docs/api/appDeployments.d.ts +236 -0
- package/docs/api/appDeployments.md +471 -0
- package/docs/api/appDomains.d.ts +171 -0
- package/docs/api/appDomains.md +281 -0
- package/docs/api/appLogs.d.ts +120 -0
- package/docs/api/appLogs.md +159 -0
- package/docs/api/appObjects.d.ts +415 -0
- package/docs/api/appObjects.md +568 -0
- package/docs/api/appPages.d.ts +557 -0
- package/docs/api/appPages.md +796 -0
- package/docs/api/appPlatformTokens.d.ts +123 -0
- package/docs/api/appPlatformTokens.md +172 -0
- package/docs/api/appointments.d.ts +2361 -0
- package/docs/api/appointments.md +3917 -0
- package/docs/api/apps.d.ts +822 -0
- package/docs/api/apps.md +1342 -0
- package/docs/api/assertUpsert.d.ts +286 -0
- package/docs/api/assertUpsert.md +370 -0
- package/docs/api/audienceSyncs.d.ts +259 -0
- package/docs/api/audienceSyncs.md +395 -0
- package/docs/api/brandKit.d.ts +686 -0
- package/docs/api/brandKit.md +1133 -0
- package/docs/api/bugReports.d.ts +181 -0
- package/docs/api/bugReports.md +268 -0
- package/docs/api/by-path.md +3260 -0
- package/docs/api/calendarInvites.d.ts +117 -0
- package/docs/api/calendarInvites.md +148 -0
- package/docs/api/campaignWorkflows.d.ts +152 -0
- package/docs/api/campaignWorkflows.md +200 -0
- package/docs/api/campaigns.d.ts +721 -0
- package/docs/api/campaigns.md +1236 -0
- package/docs/api/channels.d.ts +171 -0
- package/docs/api/channels.md +235 -0
- package/docs/api/cliCampaigns.d.ts +205 -0
- package/docs/api/cliCampaigns.md +256 -0
- package/docs/api/cliPipelines.d.ts +324 -0
- package/docs/api/cliPipelines.md +562 -0
- package/docs/api/clickHouse.d.ts +115 -0
- package/docs/api/clickHouse.md +138 -0
- package/docs/api/companies.d.ts +1636 -0
- package/docs/api/companies.md +2211 -0
- package/docs/api/companyIntelligence.d.ts +299 -0
- package/docs/api/companyIntelligence.md +488 -0
- package/docs/api/contacts.d.ts +2173 -0
- package/docs/api/contacts.md +3143 -0
- package/docs/api/content.d.ts +968 -0
- package/docs/api/content.md +1667 -0
- package/docs/api/contentGridSkills.d.ts +177 -0
- package/docs/api/contentGridSkills.md +271 -0
- package/docs/api/copilot.d.ts +1017 -0
- package/docs/api/copilot.md +1765 -0
- package/docs/api/crmSyncs.d.ts +215 -0
- package/docs/api/crmSyncs.md +301 -0
- package/docs/api/customerSuccess.d.ts +491 -0
- package/docs/api/customerSuccess.md +776 -0
- package/docs/api/deals.d.ts +1696 -0
- package/docs/api/deals.md +2432 -0
- package/docs/api/deliverability.d.ts +418 -0
- package/docs/api/deliverability.md +677 -0
- package/docs/api/desk.d.ts +1765 -0
- package/docs/api/desk.md +3007 -0
- package/docs/api/dialer.d.ts +1185 -0
- package/docs/api/dialer.md +2166 -0
- package/docs/api/dialerAnalytics.d.ts +187 -0
- package/docs/api/dialerAnalytics.md +257 -0
- package/docs/api/documents.d.ts +895 -0
- package/docs/api/documents.md +1440 -0
- package/docs/api/duplicates.d.ts +195 -0
- package/docs/api/duplicates.md +315 -0
- package/docs/api/eSign.d.ts +38 -0
- package/docs/api/eSign.md +54 -0
- package/docs/api/eSignature.d.ts +242 -0
- package/docs/api/eSignature.md +341 -0
- package/docs/api/enrichment.d.ts +3207 -0
- package/docs/api/enrichment.md +5225 -0
- package/docs/api/events.d.ts +115 -0
- package/docs/api/events.md +105 -0
- package/docs/api/fields.d.ts +482 -0
- package/docs/api/fields.md +566 -0
- package/docs/api/forms.d.ts +1012 -0
- package/docs/api/forms.md +1542 -0
- package/docs/api/gtmCampaigns.d.ts +662 -0
- package/docs/api/gtmCampaigns.md +1044 -0
- package/docs/api/gtmContext.d.ts +1187 -0
- package/docs/api/gtmContext.md +2112 -0
- package/docs/api/gtmDeliverability.d.ts +60 -0
- package/docs/api/gtmDeliverability.md +63 -0
- package/docs/api/gtmKnowledgeBase.d.ts +76 -0
- package/docs/api/gtmKnowledgeBase.md +91 -0
- package/docs/api/gtmLaunchHelpers.d.ts +123 -0
- package/docs/api/gtmLaunchHelpers.md +148 -0
- package/docs/api/gtmLibrary.d.ts +448 -0
- package/docs/api/gtmLibrary.md +780 -0
- package/docs/api/health.d.ts +39 -0
- package/docs/api/health.md +58 -0
- package/docs/api/imageLibrary.d.ts +341 -0
- package/docs/api/imageLibrary.md +569 -0
- package/docs/api/imports.d.ts +157 -0
- package/docs/api/imports.md +174 -0
- package/docs/api/inbox.d.ts +709 -0
- package/docs/api/inbox.md +1067 -0
- package/docs/api/install.d.ts +213 -0
- package/docs/api/install.md +317 -0
- package/docs/api/installedApps.d.ts +131 -0
- package/docs/api/installedApps.md +241 -0
- package/docs/api/integrationStatus.d.ts +142 -0
- package/docs/api/integrationStatus.md +205 -0
- package/docs/api/integrations.d.ts +2327 -0
- package/docs/api/integrations.md +3791 -0
- package/docs/api/intent.d.ts +482 -0
- package/docs/api/intent.md +858 -0
- package/docs/api/knowledge.d.ts +501 -0
- package/docs/api/knowledge.md +843 -0
- package/docs/api/knowledgeBase.d.ts +84 -0
- package/docs/api/knowledgeBase.md +96 -0
- package/docs/api/landingPages.d.ts +1411 -0
- package/docs/api/landingPages.md +2488 -0
- package/docs/api/leads.d.ts +133 -0
- package/docs/api/leads.md +180 -0
- package/docs/api/library.d.ts +217 -0
- package/docs/api/library.md +338 -0
- package/docs/api/linkedIn.d.ts +227 -0
- package/docs/api/linkedIn.md +289 -0
- package/docs/api/linkedInOutreach.d.ts +727 -0
- package/docs/api/linkedInOutreach.md +990 -0
- package/docs/api/lists.d.ts +1106 -0
- package/docs/api/lists.md +1609 -0
- package/docs/api/logs.d.ts +71 -0
- package/docs/api/logs.md +70 -0
- package/docs/api/mailboxes.d.ts +1050 -0
- package/docs/api/mailboxes.md +1690 -0
- package/docs/api/marketingIntelligence.d.ts +256 -0
- package/docs/api/marketingIntelligence.md +454 -0
- package/docs/api/marketplace.d.ts +3173 -0
- package/docs/api/marketplace.md +5953 -0
- package/docs/api/mcp.d.ts +69 -0
- package/docs/api/mcp.md +69 -0
- package/docs/api/me.d.ts +54 -0
- package/docs/api/me.md +56 -0
- package/docs/api/meetings.d.ts +539 -0
- package/docs/api/meetings.md +747 -0
- package/docs/api/newsletter.d.ts +1613 -0
- package/docs/api/newsletter.md +2746 -0
- package/docs/api/notes.d.ts +517 -0
- package/docs/api/notes.md +888 -0
- package/docs/api/notifications.d.ts +94 -0
- package/docs/api/notifications.md +105 -0
- package/docs/api/objects.d.ts +621 -0
- package/docs/api/objects.md +1098 -0
- package/docs/api/openSearch.d.ts +234 -0
- package/docs/api/openSearch.md +297 -0
- package/docs/api/ops.d.ts +299 -0
- package/docs/api/ops.md +339 -0
- package/docs/api/orgGovernance.d.ts +393 -0
- package/docs/api/orgGovernance.md +623 -0
- package/docs/api/orgVideos.d.ts +184 -0
- package/docs/api/orgVideos.md +252 -0
- package/docs/api/organizationSettings.d.ts +626 -0
- package/docs/api/organizationSettings.md +911 -0
- package/docs/api/phoneNumbers.d.ts +484 -0
- package/docs/api/phoneNumbers.md +777 -0
- package/docs/api/profile.d.ts +329 -0
- package/docs/api/profile.md +540 -0
- package/docs/api/programmaticPages.d.ts +400 -0
- package/docs/api/programmaticPages.md +626 -0
- package/docs/api/providerDomains.d.ts +866 -0
- package/docs/api/providerDomains.md +1446 -0
- package/docs/api/providerUsage.d.ts +129 -0
- package/docs/api/providerUsage.md +186 -0
- package/docs/api/public.d.ts +69 -0
- package/docs/api/public.md +78 -0
- package/docs/api/publicCopilot.d.ts +67 -0
- package/docs/api/publicCopilot.md +80 -0
- package/docs/api/publicSignals.d.ts +66 -0
- package/docs/api/publicSignals.md +71 -0
- package/docs/api/publicVisitors.d.ts +97 -0
- package/docs/api/publicVisitors.md +118 -0
- package/docs/api/quotes.d.ts +1564 -0
- package/docs/api/quotes.md +2553 -0
- package/docs/api/radar.d.ts +808 -0
- package/docs/api/radar.md +1431 -0
- package/docs/api/radarReports.d.ts +208 -0
- package/docs/api/radarReports.md +306 -0
- package/docs/api/recordRoles.d.ts +143 -0
- package/docs/api/recordRoles.md +175 -0
- package/docs/api/repos.d.ts +146 -0
- package/docs/api/repos.md +211 -0
- package/docs/api/research.d.ts +295 -0
- package/docs/api/research.md +534 -0
- package/docs/api/revenue.d.ts +402 -0
- package/docs/api/revenue.md +608 -0
- package/docs/api/revenueAnalytics.d.ts +147 -0
- package/docs/api/revenueAnalytics.md +212 -0
- package/docs/api/revenueLifecycle.d.ts +207 -0
- package/docs/api/revenueLifecycle.md +274 -0
- package/docs/api/revenueRecords.d.ts +372 -0
- package/docs/api/revenueRecords.md +563 -0
- package/docs/api/roles.d.ts +431 -0
- package/docs/api/roles.md +812 -0
- package/docs/api/salesCoach.d.ts +877 -0
- package/docs/api/salesCoach.md +1540 -0
- package/docs/api/sandbox.d.ts +210 -0
- package/docs/api/sandbox.md +380 -0
- package/docs/api/scans.d.ts +104 -0
- package/docs/api/scans.md +136 -0
- package/docs/api/scheduleBuy.d.ts +293 -0
- package/docs/api/scheduleBuy.md +431 -0
- package/docs/api/scraping.d.ts +266 -0
- package/docs/api/scraping.md +383 -0
- package/docs/api/sdrAnalytics.d.ts +138 -0
- package/docs/api/sdrAnalytics.md +246 -0
- package/docs/api/search.d.ts +598 -0
- package/docs/api/search.md +866 -0
- package/docs/api/seo.d.ts +447 -0
- package/docs/api/seo.md +660 -0
- package/docs/api/sequenceLifecycle.d.ts +439 -0
- package/docs/api/sequenceLifecycle.md +513 -0
- package/docs/api/sequences.d.ts +1936 -0
- package/docs/api/sequences.md +3232 -0
- package/docs/api/settings.d.ts +448 -0
- package/docs/api/settings.md +731 -0
- package/docs/api/signals.d.ts +1441 -0
- package/docs/api/signals.md +2526 -0
- package/docs/api/signatures.d.ts +719 -0
- package/docs/api/signatures.md +1247 -0
- package/docs/api/skills.d.ts +230 -0
- package/docs/api/skills.md +466 -0
- package/docs/api/snippet.d.ts +85 -0
- package/docs/api/snippet.md +106 -0
- package/docs/api/socialPublishing.d.ts +824 -0
- package/docs/api/socialPublishing.md +1245 -0
- package/docs/api/studioDocuments.d.ts +244 -0
- package/docs/api/studioDocuments.md +348 -0
- package/docs/api/support.d.ts +90 -0
- package/docs/api/support.md +76 -0
- package/docs/api/suppressions.d.ts +241 -0
- package/docs/api/suppressions.md +343 -0
- package/docs/api/surveys.d.ts +847 -0
- package/docs/api/surveys.md +1223 -0
- package/docs/api/tasks.d.ts +813 -0
- package/docs/api/tasks.md +1344 -0
- package/docs/api/teamMembers.d.ts +668 -0
- package/docs/api/teamMembers.md +1040 -0
- package/docs/api/teams.d.ts +784 -0
- package/docs/api/teams.md +1395 -0
- package/docs/api/usage.d.ts +277 -0
- package/docs/api/usage.md +389 -0
- package/docs/api/visitors.d.ts +690 -0
- package/docs/api/visitors.md +1075 -0
- package/docs/api/voice.d.ts +4661 -0
- package/docs/api/voice.md +7905 -0
- package/docs/api/webAnalytics.d.ts +964 -0
- package/docs/api/webAnalytics.md +1452 -0
- package/docs/api/webChat.d.ts +1704 -0
- package/docs/api/webChat.md +2048 -0
- package/docs/api/webhooks.d.ts +251 -0
- package/docs/api/webhooks.md +386 -0
- package/docs/api/websiteEditor.d.ts +324 -0
- package/docs/api/websiteEditor.md +517 -0
- package/docs/api/work.d.ts +2298 -0
- package/docs/api/work.md +3096 -0
- package/docs/api/workbench.d.ts +2962 -0
- package/docs/api/workbench.md +4884 -0
- package/docs/api/workflows.d.ts +1218 -0
- package/docs/api/workflows.md +2302 -0
- package/docs/sdk-clients.md +4339 -0
- package/package.json +10 -3
|
@@ -0,0 +1,1936 @@
|
|
|
1
|
+
/* Generated by sdk/js/scripts/generate-agent-docs.ts from developer-contract/openapi.json. Regenerated on every build. */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Types for `g8.api.sequences` (Sequences): 71 operations.
|
|
5
|
+
*
|
|
6
|
+
* For reading. In code, import from the package instead:
|
|
7
|
+
* import type { ApiInput, ApiOutput, G8Contract } from "@graph8/sdk";
|
|
8
|
+
* type In = ApiInput<"add_contacts_to_sequence_sequences__sequence_id__contacts_post">;
|
|
9
|
+
*
|
|
10
|
+
* Reference with examples: sequences.md
|
|
11
|
+
*/
|
|
12
|
+
/* eslint-disable */
|
|
13
|
+
|
|
14
|
+
/** `g8.api.sequences.<member>` -> the operationId it calls. */
|
|
15
|
+
export interface SequencesMembers {
|
|
16
|
+
addContactsToSequence: "add_contacts_to_sequence_sequences__sequence_id__contacts_post";
|
|
17
|
+
addSequenceChannels: "add_sequence_channels_sequences__sequence_id__channels_post";
|
|
18
|
+
addSequenceSteps: "add_sequence_steps_sequences__sequence_id__steps_post";
|
|
19
|
+
archiveSchedule: "archive_schedule_schedules__schedule_id__archive_patch";
|
|
20
|
+
archiveSequence: "archive_sequence_sequences__sequence_id__archive_post";
|
|
21
|
+
archiveSequenceTemplate: "archive_sequence_template_sequencer_templates_sequences__sequence_template_id__archive_patch";
|
|
22
|
+
archiveStepTemplate: "archive_step_template_sequencer_templates_steps__step_template_id__archive_patch";
|
|
23
|
+
createNurture: "create_nurture_nurtures_post";
|
|
24
|
+
createSchedule: "create_schedule_schedules_post";
|
|
25
|
+
createSequenceTemplate: "create_sequence_template_sequencer_templates_sequences_post";
|
|
26
|
+
createStepTemplate: "create_step_template_sequencer_templates_steps_post";
|
|
27
|
+
deleteNurture: "delete_nurture_nurtures__nurture_id__delete";
|
|
28
|
+
deleteSequenceStep: "delete_sequence_step_sequences__sequence_id__steps__step_id__delete";
|
|
29
|
+
draftEmail: "draft_email_sequencer_content_email_generate_post";
|
|
30
|
+
draftLinkedinMessage: "draft_linkedin_message_sequencer_content_linkedin_generate_post";
|
|
31
|
+
duplicateNurture: "duplicate_nurture_nurtures__nurture_id__duplicate_post";
|
|
32
|
+
duplicateSequence: "duplicate_sequence_sequences__sequence_id__duplicate_post";
|
|
33
|
+
estimateEmailDraft: "estimate_email_draft_sequencer_content_email_estimate_post";
|
|
34
|
+
generateSequenceSpintax: "generate_sequence_spintax_sequences_generate_spintax_post";
|
|
35
|
+
generateStepTemplates: "generate_step_templates_sequencer_templates_steps_generate_post";
|
|
36
|
+
getNurture: "get_nurture_nurtures__nurture_id__get";
|
|
37
|
+
getProviderSizing: "get_provider_sizing_sequencer_deliverability_provider_sizing_get";
|
|
38
|
+
getSchedule: "get_schedule_schedules__schedule_id__get";
|
|
39
|
+
getSequence: "get_sequence_sequences__sequence_id__get";
|
|
40
|
+
getSequenceJob: "get_sequence_job_sequence_jobs__job_id__get";
|
|
41
|
+
getSequenceReports: "get_sequence_reports_sequences__sequence_id__reports_get";
|
|
42
|
+
getSequenceRoutingSummary: "get_sequence_routing_summary_sequences__sequence_id__routing_summary_get";
|
|
43
|
+
getSequenceStats: "get_sequence_stats_sequences__sequence_id__stats_get";
|
|
44
|
+
getSequencerCapacityEstimate: "get_sequencer_capacity_estimate_sequencer_channels_capacity_estimate_get";
|
|
45
|
+
getSequencesOverview: "get_sequences_overview_sequencer_stats_get";
|
|
46
|
+
improveStepInstruction: "improve_step_instruction_sequencer_content_instructions_improve_post";
|
|
47
|
+
launchNurture: "launch_nurture_nurtures__nurture_id__launch_post";
|
|
48
|
+
linkSequenceCampaign: "link_sequence_campaign_sequences__sequence_id__campaign_put";
|
|
49
|
+
listDialerContacts: "list_dialer_contacts_sequencer_dialer_sequences__sequence_id__contacts_get";
|
|
50
|
+
listDialerSequences: "list_dialer_sequences_sequencer_dialer_sequences_get";
|
|
51
|
+
listEmailDraftModels: "list_email_draft_models_sequencer_content_email_models_get";
|
|
52
|
+
listLinkedinAccounts: "list_linkedin_accounts_sequencer_channels_linkedin_accounts_get";
|
|
53
|
+
listNurtures: "list_nurtures_nurtures_get";
|
|
54
|
+
listSegVendors: "list_seg_vendors_sequencer_deliverability_seg_vendors_get";
|
|
55
|
+
listSequenceChannels: "list_sequence_channels_sequences__sequence_id__channels_get";
|
|
56
|
+
listSequenceContactIds: "list_sequence_contact_ids_sequences__sequence_id__contact_ids_get";
|
|
57
|
+
listSequenceContacts: "list_sequence_contacts_sequences__sequence_id__contacts_get";
|
|
58
|
+
listSequenceTemplates: "list_sequence_templates_sequencer_templates_sequences_get";
|
|
59
|
+
listSequencerMailboxes: "list_sequencer_mailboxes_sequencer_channels_mailboxes_get";
|
|
60
|
+
listSequencerPhoneNumbers: "list_sequencer_phone_numbers_sequencer_channels_phone_numbers_get";
|
|
61
|
+
listSequencerSmsNumbers: "list_sequencer_sms_numbers_sequencer_channels_sms_numbers_get";
|
|
62
|
+
listSequencerTextualAgents: "list_sequencer_textual_agents_sequencer_agents_textual_get";
|
|
63
|
+
listSequencerVoiceAgents: "list_sequencer_voice_agents_sequencer_agents_voice_get";
|
|
64
|
+
listSequencerWhatsappNumbers: "list_sequencer_whatsapp_numbers_sequencer_channels_whatsapp_numbers_get";
|
|
65
|
+
listSequencerWhatsappTemplates: "list_sequencer_whatsapp_templates_sequencer_channels_whatsapp_templates_get";
|
|
66
|
+
listSequences: "list_sequences_sequences_get";
|
|
67
|
+
listStepTemplates: "list_step_templates_sequencer_templates_steps_get";
|
|
68
|
+
pauseNurture: "pause_nurture_nurtures__nurture_id__pause_post";
|
|
69
|
+
pauseSequence: "pause_sequence_sequences__sequence_id__pause_post";
|
|
70
|
+
pauseSequenceContact: "pause_sequence_contact_sequences__sequence_id__contacts__contact_id__pause_post";
|
|
71
|
+
placeVoiceTestCall: "place_voice_test_call_sequencer_content_voice_test_call_post";
|
|
72
|
+
recordDialerOutcome: "record_dialer_outcome_sequencer_dialer_sequences__sequence_id__contacts__contact_id__callback_post";
|
|
73
|
+
removeSequenceChannel: "remove_sequence_channel_sequences__sequence_id__channels__sequence_channel_id__delete";
|
|
74
|
+
removeSequenceChannels: "remove_sequence_channels_sequences__sequence_id__channels_delete";
|
|
75
|
+
resumeNurture: "resume_nurture_nurtures__nurture_id__resume_post";
|
|
76
|
+
resumeSequence: "resume_sequence_sequences__sequence_id__resume_post";
|
|
77
|
+
resumeSequenceContact: "resume_sequence_contact_sequences__sequence_id__contacts__contact_id__resume_post";
|
|
78
|
+
runSequence: "run_sequence_sequences__sequence_id__run_post";
|
|
79
|
+
setSequenceStatus: "set_sequence_status_sequences__sequence_id__status_post";
|
|
80
|
+
syncSequence: "sync_sequence_sequences__sequence_id__sync_post";
|
|
81
|
+
terminateSequence: "terminate_sequence_sequences__sequence_id__terminate_post";
|
|
82
|
+
unlinkSequenceCampaign: "unlink_sequence_campaign_sequences__sequence_id__campaign_delete";
|
|
83
|
+
updateNurture: "update_nurture_nurtures__nurture_id__patch";
|
|
84
|
+
updateSchedule: "update_schedule_schedules__schedule_id__patch";
|
|
85
|
+
updateSequenceTemplate: "update_sequence_template_sequencer_templates_sequences__sequence_template_id__patch";
|
|
86
|
+
updateStepTemplate: "update_step_template_sequencer_templates_steps__step_template_id__patch";
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/** Input and output of every `g8.api.sequences` operation, keyed by operationId. */
|
|
90
|
+
export interface SequencesOperations {
|
|
91
|
+
/**
|
|
92
|
+
* POST /sequences/{sequence_id}/contacts
|
|
93
|
+
* Add Contacts To Sequence
|
|
94
|
+
* tier: external · scope: sequences:run
|
|
95
|
+
*/
|
|
96
|
+
add_contacts_to_sequence_sequences__sequence_id__contacts_post: {
|
|
97
|
+
input: {
|
|
98
|
+
path: {
|
|
99
|
+
/** Sequence ID */
|
|
100
|
+
sequence_id: string;
|
|
101
|
+
};
|
|
102
|
+
headers?: {
|
|
103
|
+
"X-Target-Org-Id"?: string | null;
|
|
104
|
+
};
|
|
105
|
+
body: AddSequenceContactsRequest;
|
|
106
|
+
};
|
|
107
|
+
output: ApiResponse_SequenceActionResponse_;
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* POST /sequences/{sequence_id}/channels
|
|
111
|
+
* Add Sequence Channels
|
|
112
|
+
* tier: write · scope: sequences:write
|
|
113
|
+
*/
|
|
114
|
+
add_sequence_channels_sequences__sequence_id__channels_post: {
|
|
115
|
+
input: {
|
|
116
|
+
path: {
|
|
117
|
+
/** Sequence id. */
|
|
118
|
+
sequence_id: string;
|
|
119
|
+
};
|
|
120
|
+
headers?: {
|
|
121
|
+
"X-Target-Org-Id"?: string | null;
|
|
122
|
+
};
|
|
123
|
+
body: AddChannelsRequest;
|
|
124
|
+
};
|
|
125
|
+
output: ApiResponse_SequencerListPayload_;
|
|
126
|
+
};
|
|
127
|
+
/**
|
|
128
|
+
* POST /sequences/{sequence_id}/steps
|
|
129
|
+
* Add Sequence Steps
|
|
130
|
+
* tier: write · scope: sequences:write
|
|
131
|
+
*/
|
|
132
|
+
add_sequence_steps_sequences__sequence_id__steps_post: {
|
|
133
|
+
input: {
|
|
134
|
+
path: {
|
|
135
|
+
/** Sequence id. */
|
|
136
|
+
sequence_id: string;
|
|
137
|
+
};
|
|
138
|
+
headers?: {
|
|
139
|
+
"X-Target-Org-Id"?: string | null;
|
|
140
|
+
};
|
|
141
|
+
body: AddStepsRequest;
|
|
142
|
+
};
|
|
143
|
+
output: ApiResponse_SequencerListPayload_;
|
|
144
|
+
};
|
|
145
|
+
/**
|
|
146
|
+
* PATCH /schedules/{schedule_id}/archive
|
|
147
|
+
* Archive Schedule
|
|
148
|
+
* tier: destructive · scope: campaigns:delete
|
|
149
|
+
*/
|
|
150
|
+
archive_schedule_schedules__schedule_id__archive_patch: {
|
|
151
|
+
input: {
|
|
152
|
+
path: {
|
|
153
|
+
/** Schedule id, from `GET /schedules`. */
|
|
154
|
+
schedule_id: string;
|
|
155
|
+
};
|
|
156
|
+
headers?: {
|
|
157
|
+
"X-Target-Org-Id"?: string | null;
|
|
158
|
+
};
|
|
159
|
+
body: ArchiveRequest;
|
|
160
|
+
};
|
|
161
|
+
output: ApiResponse_SequencerPayload_;
|
|
162
|
+
};
|
|
163
|
+
/**
|
|
164
|
+
* POST /sequences/{sequence_id}/archive
|
|
165
|
+
* Archive Sequence
|
|
166
|
+
* tier: destructive · scope: sequences:delete
|
|
167
|
+
*/
|
|
168
|
+
archive_sequence_sequences__sequence_id__archive_post: {
|
|
169
|
+
input: {
|
|
170
|
+
path: {
|
|
171
|
+
/** Sequence id. */
|
|
172
|
+
sequence_id: string;
|
|
173
|
+
};
|
|
174
|
+
headers?: {
|
|
175
|
+
"X-Target-Org-Id"?: string | null;
|
|
176
|
+
};
|
|
177
|
+
};
|
|
178
|
+
output: ApiResponse_dict_;
|
|
179
|
+
};
|
|
180
|
+
/**
|
|
181
|
+
* PATCH /sequencer/templates/sequences/{sequence_template_id}/archive
|
|
182
|
+
* Archive Sequence Template
|
|
183
|
+
* tier: destructive · scope: sequences:delete
|
|
184
|
+
*/
|
|
185
|
+
archive_sequence_template_sequencer_templates_sequences__sequence_template_id__archive_patch: {
|
|
186
|
+
input: {
|
|
187
|
+
path: {
|
|
188
|
+
/** Sequence template id. */
|
|
189
|
+
sequence_template_id: string;
|
|
190
|
+
};
|
|
191
|
+
headers?: {
|
|
192
|
+
"X-Target-Org-Id"?: string | null;
|
|
193
|
+
};
|
|
194
|
+
body: ArchiveRequest;
|
|
195
|
+
};
|
|
196
|
+
output: ApiResponse_SequencerPayload_;
|
|
197
|
+
};
|
|
198
|
+
/**
|
|
199
|
+
* PATCH /sequencer/templates/steps/{step_template_id}/archive
|
|
200
|
+
* Archive Step Template
|
|
201
|
+
* tier: destructive · scope: sequences:delete
|
|
202
|
+
*/
|
|
203
|
+
archive_step_template_sequencer_templates_steps__step_template_id__archive_patch: {
|
|
204
|
+
input: {
|
|
205
|
+
path: {
|
|
206
|
+
/** Step template id. */
|
|
207
|
+
step_template_id: string;
|
|
208
|
+
};
|
|
209
|
+
headers?: {
|
|
210
|
+
"X-Target-Org-Id"?: string | null;
|
|
211
|
+
};
|
|
212
|
+
body: ArchiveRequest;
|
|
213
|
+
};
|
|
214
|
+
output: ApiResponse_SequencerPayload_;
|
|
215
|
+
};
|
|
216
|
+
/**
|
|
217
|
+
* POST /nurtures
|
|
218
|
+
* Create Nurture
|
|
219
|
+
* tier: write · scope: sequences:write
|
|
220
|
+
*/
|
|
221
|
+
create_nurture_nurtures_post: {
|
|
222
|
+
input: {
|
|
223
|
+
headers?: {
|
|
224
|
+
"X-Target-Org-Id"?: string | null;
|
|
225
|
+
};
|
|
226
|
+
body: NurtureCreateRequest;
|
|
227
|
+
};
|
|
228
|
+
output: ApiResponse_NurtureResponse_;
|
|
229
|
+
};
|
|
230
|
+
/**
|
|
231
|
+
* POST /schedules
|
|
232
|
+
* Create Schedule
|
|
233
|
+
* tier: write · scope: campaigns:write
|
|
234
|
+
*/
|
|
235
|
+
create_schedule_schedules_post: {
|
|
236
|
+
input: {
|
|
237
|
+
headers?: {
|
|
238
|
+
"X-Target-Org-Id"?: string | null;
|
|
239
|
+
};
|
|
240
|
+
body: CreateSendingScheduleRequest;
|
|
241
|
+
};
|
|
242
|
+
output: ApiResponse_SequencerPayload_;
|
|
243
|
+
};
|
|
244
|
+
/**
|
|
245
|
+
* POST /sequencer/templates/sequences
|
|
246
|
+
* Create Sequence Template
|
|
247
|
+
* tier: write · scope: sequences:write
|
|
248
|
+
*/
|
|
249
|
+
create_sequence_template_sequencer_templates_sequences_post: {
|
|
250
|
+
input: {
|
|
251
|
+
headers?: {
|
|
252
|
+
"X-Target-Org-Id"?: string | null;
|
|
253
|
+
};
|
|
254
|
+
body: CreateSequenceTemplateRequest;
|
|
255
|
+
};
|
|
256
|
+
output: ApiResponse_SequencerListPayload_;
|
|
257
|
+
};
|
|
258
|
+
/**
|
|
259
|
+
* POST /sequencer/templates/steps
|
|
260
|
+
* Create Step Template
|
|
261
|
+
* tier: write · scope: sequences:write
|
|
262
|
+
*/
|
|
263
|
+
create_step_template_sequencer_templates_steps_post: {
|
|
264
|
+
input: {
|
|
265
|
+
headers?: {
|
|
266
|
+
"X-Target-Org-Id"?: string | null;
|
|
267
|
+
};
|
|
268
|
+
body: CreateStepTemplateRequest;
|
|
269
|
+
};
|
|
270
|
+
output: ApiResponse_SequencerListPayload_;
|
|
271
|
+
};
|
|
272
|
+
/**
|
|
273
|
+
* DELETE /nurtures/{nurture_id}
|
|
274
|
+
* Delete Nurture
|
|
275
|
+
* tier: destructive · scope: sequences:delete
|
|
276
|
+
*/
|
|
277
|
+
delete_nurture_nurtures__nurture_id__delete: {
|
|
278
|
+
input: {
|
|
279
|
+
path: {
|
|
280
|
+
/** Nurture id. */
|
|
281
|
+
nurture_id: string;
|
|
282
|
+
};
|
|
283
|
+
headers?: {
|
|
284
|
+
"X-Target-Org-Id"?: string | null;
|
|
285
|
+
};
|
|
286
|
+
};
|
|
287
|
+
output: ApiResponse_dict_;
|
|
288
|
+
};
|
|
289
|
+
/**
|
|
290
|
+
* DELETE /sequences/{sequence_id}/steps/{step_id}
|
|
291
|
+
* Delete Sequence Step
|
|
292
|
+
* tier: destructive · scope: sequences:delete
|
|
293
|
+
*/
|
|
294
|
+
delete_sequence_step_sequences__sequence_id__steps__step_id__delete: {
|
|
295
|
+
input: {
|
|
296
|
+
path: {
|
|
297
|
+
/** Sequence id. */
|
|
298
|
+
sequence_id: string;
|
|
299
|
+
/** Step id. */
|
|
300
|
+
step_id: string;
|
|
301
|
+
};
|
|
302
|
+
headers?: {
|
|
303
|
+
"X-Target-Org-Id"?: string | null;
|
|
304
|
+
};
|
|
305
|
+
};
|
|
306
|
+
output: ApiResponse_SequenceOpsPayload_;
|
|
307
|
+
};
|
|
308
|
+
/**
|
|
309
|
+
* POST /sequencer/content/email/generate
|
|
310
|
+
* Draft Email
|
|
311
|
+
* tier: billable · scope: sequences:run
|
|
312
|
+
*/
|
|
313
|
+
draft_email_sequencer_content_email_generate_post: {
|
|
314
|
+
input: {
|
|
315
|
+
headers?: {
|
|
316
|
+
"X-Target-Org-Id"?: string | null;
|
|
317
|
+
};
|
|
318
|
+
body: DraftEmailRequest;
|
|
319
|
+
};
|
|
320
|
+
output: ApiResponse_SequencerPayload_;
|
|
321
|
+
};
|
|
322
|
+
/**
|
|
323
|
+
* POST /sequencer/content/linkedin/generate
|
|
324
|
+
* Draft Linkedin Message
|
|
325
|
+
* tier: billable · scope: sequences:run
|
|
326
|
+
*/
|
|
327
|
+
draft_linkedin_message_sequencer_content_linkedin_generate_post: {
|
|
328
|
+
input: {
|
|
329
|
+
headers?: {
|
|
330
|
+
"X-Target-Org-Id"?: string | null;
|
|
331
|
+
};
|
|
332
|
+
body: DraftLinkedInRequest;
|
|
333
|
+
};
|
|
334
|
+
output: ApiResponse_SequencerPayload_;
|
|
335
|
+
};
|
|
336
|
+
/**
|
|
337
|
+
* POST /nurtures/{nurture_id}/duplicate
|
|
338
|
+
* Duplicate Nurture
|
|
339
|
+
* tier: write · scope: sequences:write
|
|
340
|
+
*/
|
|
341
|
+
duplicate_nurture_nurtures__nurture_id__duplicate_post: {
|
|
342
|
+
input: {
|
|
343
|
+
path: {
|
|
344
|
+
/** Nurture id to copy. */
|
|
345
|
+
nurture_id: string;
|
|
346
|
+
};
|
|
347
|
+
headers?: {
|
|
348
|
+
"X-Target-Org-Id"?: string | null;
|
|
349
|
+
};
|
|
350
|
+
body?: NurtureDuplicateRequest;
|
|
351
|
+
};
|
|
352
|
+
output: ApiResponse_NurtureResponse_;
|
|
353
|
+
};
|
|
354
|
+
/**
|
|
355
|
+
* POST /sequences/{sequence_id}/duplicate
|
|
356
|
+
* Duplicate Sequence
|
|
357
|
+
* tier: write · scope: sequences:write
|
|
358
|
+
*/
|
|
359
|
+
duplicate_sequence_sequences__sequence_id__duplicate_post: {
|
|
360
|
+
input: {
|
|
361
|
+
path: {
|
|
362
|
+
/** Sequence id to copy. */
|
|
363
|
+
sequence_id: string;
|
|
364
|
+
};
|
|
365
|
+
headers?: {
|
|
366
|
+
"X-Target-Org-Id"?: string | null;
|
|
367
|
+
};
|
|
368
|
+
body?: SequenceDuplicateRequest;
|
|
369
|
+
};
|
|
370
|
+
output: ApiResponse_SequenceRecord_;
|
|
371
|
+
};
|
|
372
|
+
/**
|
|
373
|
+
* POST /sequencer/content/email/estimate
|
|
374
|
+
* Estimate Email Draft
|
|
375
|
+
* tier: read · scope: sequences:read
|
|
376
|
+
*/
|
|
377
|
+
estimate_email_draft_sequencer_content_email_estimate_post: {
|
|
378
|
+
input: {
|
|
379
|
+
headers?: {
|
|
380
|
+
"X-Target-Org-Id"?: string | null;
|
|
381
|
+
};
|
|
382
|
+
body: DraftEmailRequest;
|
|
383
|
+
};
|
|
384
|
+
output: ApiResponse_SequencerPayload_;
|
|
385
|
+
};
|
|
386
|
+
/**
|
|
387
|
+
* POST /sequences/generate-spintax
|
|
388
|
+
* Generate Sequence Spintax
|
|
389
|
+
* tier: external · scope: sequences:run
|
|
390
|
+
*/
|
|
391
|
+
generate_sequence_spintax_sequences_generate_spintax_post: {
|
|
392
|
+
input: {
|
|
393
|
+
headers?: {
|
|
394
|
+
"X-Target-Org-Id"?: string | null;
|
|
395
|
+
};
|
|
396
|
+
body: GenerateSpintaxRequest;
|
|
397
|
+
};
|
|
398
|
+
output: ApiResponse_GenerateSpintaxResponse_;
|
|
399
|
+
};
|
|
400
|
+
/**
|
|
401
|
+
* POST /sequencer/templates/steps/generate
|
|
402
|
+
* Generate Step Templates
|
|
403
|
+
* tier: billable · scope: sequences:run
|
|
404
|
+
*/
|
|
405
|
+
generate_step_templates_sequencer_templates_steps_generate_post: {
|
|
406
|
+
input: {
|
|
407
|
+
headers?: {
|
|
408
|
+
"X-Target-Org-Id"?: string | null;
|
|
409
|
+
};
|
|
410
|
+
body: GenerateStepTemplatesRequest;
|
|
411
|
+
};
|
|
412
|
+
output: ApiResponse_SequencerListPayload_;
|
|
413
|
+
};
|
|
414
|
+
/**
|
|
415
|
+
* GET /nurtures/{nurture_id}
|
|
416
|
+
* Get Nurture
|
|
417
|
+
* tier: read · scope: sequences:read
|
|
418
|
+
*/
|
|
419
|
+
get_nurture_nurtures__nurture_id__get: {
|
|
420
|
+
input: {
|
|
421
|
+
path: {
|
|
422
|
+
/** Nurture id. */
|
|
423
|
+
nurture_id: string;
|
|
424
|
+
};
|
|
425
|
+
headers?: {
|
|
426
|
+
"X-Target-Org-Id"?: string | null;
|
|
427
|
+
};
|
|
428
|
+
};
|
|
429
|
+
output: ApiResponse_NurtureResponse_;
|
|
430
|
+
};
|
|
431
|
+
/**
|
|
432
|
+
* GET /sequencer/deliverability/provider-sizing
|
|
433
|
+
* Get Provider Sizing
|
|
434
|
+
* tier: read · scope: sequences:read
|
|
435
|
+
*/
|
|
436
|
+
get_provider_sizing_sequencer_deliverability_provider_sizing_get: {
|
|
437
|
+
input: {
|
|
438
|
+
headers?: {
|
|
439
|
+
"X-Target-Org-Id"?: string | null;
|
|
440
|
+
};
|
|
441
|
+
};
|
|
442
|
+
output: ApiResponse_SequencerPayload_;
|
|
443
|
+
};
|
|
444
|
+
/**
|
|
445
|
+
* GET /schedules/{schedule_id}
|
|
446
|
+
* Get Schedule
|
|
447
|
+
* tier: read · scope: campaigns:read
|
|
448
|
+
*/
|
|
449
|
+
get_schedule_schedules__schedule_id__get: {
|
|
450
|
+
input: {
|
|
451
|
+
path: {
|
|
452
|
+
/** Schedule id, from `GET /schedules`. */
|
|
453
|
+
schedule_id: string;
|
|
454
|
+
};
|
|
455
|
+
headers?: {
|
|
456
|
+
"X-Target-Org-Id"?: string | null;
|
|
457
|
+
};
|
|
458
|
+
};
|
|
459
|
+
output: ApiResponse_SequencerPayload_;
|
|
460
|
+
};
|
|
461
|
+
/**
|
|
462
|
+
* GET /sequences/{sequence_id}
|
|
463
|
+
* Get Sequence
|
|
464
|
+
* tier: read · scope: sequences:read
|
|
465
|
+
*/
|
|
466
|
+
get_sequence_sequences__sequence_id__get: {
|
|
467
|
+
input: {
|
|
468
|
+
path: {
|
|
469
|
+
/** Sequence ID */
|
|
470
|
+
sequence_id: string;
|
|
471
|
+
};
|
|
472
|
+
headers?: {
|
|
473
|
+
"X-Target-Org-Id"?: string | null;
|
|
474
|
+
};
|
|
475
|
+
};
|
|
476
|
+
output: ApiResponse_SequenceDetailResponse_;
|
|
477
|
+
};
|
|
478
|
+
/**
|
|
479
|
+
* GET /sequence-jobs/{job_id}
|
|
480
|
+
* Get Sequence Job
|
|
481
|
+
* tier: read · scope: sequences:read
|
|
482
|
+
*/
|
|
483
|
+
get_sequence_job_sequence_jobs__job_id__get: {
|
|
484
|
+
input: {
|
|
485
|
+
path: {
|
|
486
|
+
/** Background job id. */
|
|
487
|
+
job_id: string;
|
|
488
|
+
};
|
|
489
|
+
headers?: {
|
|
490
|
+
"X-Target-Org-Id"?: string | null;
|
|
491
|
+
};
|
|
492
|
+
};
|
|
493
|
+
output: ApiResponse_SequenceOpsPayload_;
|
|
494
|
+
};
|
|
495
|
+
/**
|
|
496
|
+
* GET /sequences/{sequence_id}/reports
|
|
497
|
+
* Get Sequence Reports
|
|
498
|
+
* tier: read · scope: sequences:read
|
|
499
|
+
*/
|
|
500
|
+
get_sequence_reports_sequences__sequence_id__reports_get: {
|
|
501
|
+
input: {
|
|
502
|
+
path: {
|
|
503
|
+
/** Sequence id. */
|
|
504
|
+
sequence_id: string;
|
|
505
|
+
};
|
|
506
|
+
headers?: {
|
|
507
|
+
"X-Target-Org-Id"?: string | null;
|
|
508
|
+
};
|
|
509
|
+
};
|
|
510
|
+
output: ApiResponse_SequenceOpsPayload_;
|
|
511
|
+
};
|
|
512
|
+
/**
|
|
513
|
+
* GET /sequences/{sequence_id}/routing-summary
|
|
514
|
+
* Get Sequence Routing Summary
|
|
515
|
+
* tier: read · scope: sequences:read
|
|
516
|
+
*/
|
|
517
|
+
get_sequence_routing_summary_sequences__sequence_id__routing_summary_get: {
|
|
518
|
+
input: {
|
|
519
|
+
path: {
|
|
520
|
+
/** Sequence id. */
|
|
521
|
+
sequence_id: string;
|
|
522
|
+
};
|
|
523
|
+
headers?: {
|
|
524
|
+
"X-Target-Org-Id"?: string | null;
|
|
525
|
+
};
|
|
526
|
+
};
|
|
527
|
+
output: ApiResponse_SequenceRoutingSummary_;
|
|
528
|
+
};
|
|
529
|
+
/**
|
|
530
|
+
* GET /sequences/{sequence_id}/stats
|
|
531
|
+
* Get Sequence Stats
|
|
532
|
+
* tier: read · scope: sequences:read
|
|
533
|
+
*/
|
|
534
|
+
get_sequence_stats_sequences__sequence_id__stats_get: {
|
|
535
|
+
input: {
|
|
536
|
+
path: {
|
|
537
|
+
/** Sequence id. */
|
|
538
|
+
sequence_id: string;
|
|
539
|
+
};
|
|
540
|
+
headers?: {
|
|
541
|
+
"X-Target-Org-Id"?: string | null;
|
|
542
|
+
};
|
|
543
|
+
};
|
|
544
|
+
output: ApiResponse_SequenceStats_;
|
|
545
|
+
};
|
|
546
|
+
/**
|
|
547
|
+
* GET /sequencer/channels/capacity-estimate
|
|
548
|
+
* Get Sequencer Capacity Estimate
|
|
549
|
+
* tier: read · scope: sequences:read
|
|
550
|
+
*/
|
|
551
|
+
get_sequencer_capacity_estimate_sequencer_channels_capacity_estimate_get: {
|
|
552
|
+
input: {
|
|
553
|
+
query: {
|
|
554
|
+
/** Target contacts to reach per month. */
|
|
555
|
+
contacts_per_month: number;
|
|
556
|
+
/** False = cold start (25/day); True = warmed (100/day). */
|
|
557
|
+
warmed?: boolean;
|
|
558
|
+
/** TLD for the per-domain USD cost estimate. */
|
|
559
|
+
domain_tld?: string;
|
|
560
|
+
};
|
|
561
|
+
headers?: {
|
|
562
|
+
"X-Target-Org-Id"?: string | null;
|
|
563
|
+
};
|
|
564
|
+
};
|
|
565
|
+
output: ApiResponse_Any_;
|
|
566
|
+
};
|
|
567
|
+
/**
|
|
568
|
+
* GET /sequencer/stats
|
|
569
|
+
* Get Sequences Overview
|
|
570
|
+
* tier: read · scope: sequences:read
|
|
571
|
+
*/
|
|
572
|
+
get_sequences_overview_sequencer_stats_get: {
|
|
573
|
+
input: {
|
|
574
|
+
query?: {
|
|
575
|
+
/** True: sequences the key owner created. False: the team's SHARED sequences. An organisation key owns none, so `true` answers empty. */
|
|
576
|
+
is_personal?: boolean;
|
|
577
|
+
};
|
|
578
|
+
headers?: {
|
|
579
|
+
"X-Target-Org-Id"?: string | null;
|
|
580
|
+
};
|
|
581
|
+
};
|
|
582
|
+
output: ApiResponse_SequencerPayload_;
|
|
583
|
+
};
|
|
584
|
+
/**
|
|
585
|
+
* POST /sequencer/content/instructions/improve
|
|
586
|
+
* Improve Step Instruction
|
|
587
|
+
* tier: billable · scope: sequences:run
|
|
588
|
+
*/
|
|
589
|
+
improve_step_instruction_sequencer_content_instructions_improve_post: {
|
|
590
|
+
input: {
|
|
591
|
+
headers?: {
|
|
592
|
+
"X-Target-Org-Id"?: string | null;
|
|
593
|
+
};
|
|
594
|
+
body: ImproveInstructionRequest;
|
|
595
|
+
};
|
|
596
|
+
output: ApiResponse_SequencerPayload_;
|
|
597
|
+
};
|
|
598
|
+
/**
|
|
599
|
+
* POST /nurtures/{nurture_id}/launch
|
|
600
|
+
* Launch Nurture
|
|
601
|
+
* tier: external · scope: sequences:run
|
|
602
|
+
*/
|
|
603
|
+
launch_nurture_nurtures__nurture_id__launch_post: {
|
|
604
|
+
input: {
|
|
605
|
+
path: {
|
|
606
|
+
/** Nurture id. */
|
|
607
|
+
nurture_id: string;
|
|
608
|
+
};
|
|
609
|
+
headers?: {
|
|
610
|
+
"X-Target-Org-Id"?: string | null;
|
|
611
|
+
};
|
|
612
|
+
};
|
|
613
|
+
output: ApiResponse_dict_;
|
|
614
|
+
};
|
|
615
|
+
/**
|
|
616
|
+
* PUT /sequences/{sequence_id}/campaign
|
|
617
|
+
* Link Sequence Campaign
|
|
618
|
+
* tier: write · scope: sequences:write
|
|
619
|
+
*/
|
|
620
|
+
link_sequence_campaign_sequences__sequence_id__campaign_put: {
|
|
621
|
+
input: {
|
|
622
|
+
path: {
|
|
623
|
+
/** Sequence id. */
|
|
624
|
+
sequence_id: string;
|
|
625
|
+
};
|
|
626
|
+
headers?: {
|
|
627
|
+
"X-Target-Org-Id"?: string | null;
|
|
628
|
+
};
|
|
629
|
+
body: SequenceCampaignLinkRequest;
|
|
630
|
+
};
|
|
631
|
+
output: ApiResponse_SequenceRecord_;
|
|
632
|
+
};
|
|
633
|
+
/**
|
|
634
|
+
* GET /sequencer/dialer/sequences/{sequence_id}/contacts
|
|
635
|
+
* List Dialer Contacts
|
|
636
|
+
* tier: read · scope: sequences:read
|
|
637
|
+
*/
|
|
638
|
+
list_dialer_contacts_sequencer_dialer_sequences__sequence_id__contacts_get: {
|
|
639
|
+
input: {
|
|
640
|
+
path: {
|
|
641
|
+
/** Sequence id. */
|
|
642
|
+
sequence_id: string;
|
|
643
|
+
};
|
|
644
|
+
query?: {
|
|
645
|
+
limit?: number;
|
|
646
|
+
offset?: number;
|
|
647
|
+
sort_by?: "created_at" | "current_step_order" | "state" | "current_step_execution_at";
|
|
648
|
+
sort_order?: "asc" | "desc";
|
|
649
|
+
/** Only contacts in this state. */
|
|
650
|
+
state?: string | null;
|
|
651
|
+
};
|
|
652
|
+
headers?: {
|
|
653
|
+
"X-Target-Org-Id"?: string | null;
|
|
654
|
+
};
|
|
655
|
+
};
|
|
656
|
+
output: ApiResponse_SequencerPayload_;
|
|
657
|
+
};
|
|
658
|
+
/**
|
|
659
|
+
* GET /sequencer/dialer/sequences
|
|
660
|
+
* List Dialer Sequences
|
|
661
|
+
* tier: read · scope: sequences:read
|
|
662
|
+
*/
|
|
663
|
+
list_dialer_sequences_sequencer_dialer_sequences_get: {
|
|
664
|
+
input: {
|
|
665
|
+
query?: {
|
|
666
|
+
limit?: number;
|
|
667
|
+
offset?: number;
|
|
668
|
+
sort_by?: "created_at" | "updated_at" | "name" | "status";
|
|
669
|
+
sort_order?: "asc" | "desc";
|
|
670
|
+
/** Sequence name contains. */
|
|
671
|
+
search?: string | null;
|
|
672
|
+
/** Only sequences in this status, e.g. `running`. */
|
|
673
|
+
status?: string | null;
|
|
674
|
+
};
|
|
675
|
+
headers?: {
|
|
676
|
+
"X-Target-Org-Id"?: string | null;
|
|
677
|
+
};
|
|
678
|
+
};
|
|
679
|
+
output: ApiResponse_SequencerPayload_;
|
|
680
|
+
};
|
|
681
|
+
/**
|
|
682
|
+
* GET /sequencer/content/email/models
|
|
683
|
+
* List Email Draft Models
|
|
684
|
+
* tier: read · scope: sequences:read
|
|
685
|
+
*/
|
|
686
|
+
list_email_draft_models_sequencer_content_email_models_get: {
|
|
687
|
+
input: {
|
|
688
|
+
headers?: {
|
|
689
|
+
"X-Target-Org-Id"?: string | null;
|
|
690
|
+
};
|
|
691
|
+
};
|
|
692
|
+
output: ApiResponse_SequencerPayload_;
|
|
693
|
+
};
|
|
694
|
+
/**
|
|
695
|
+
* GET /sequencer/channels/linkedin_accounts
|
|
696
|
+
* List Linkedin Accounts
|
|
697
|
+
* tier: read · scope: sequences:read
|
|
698
|
+
*/
|
|
699
|
+
list_linkedin_accounts_sequencer_channels_linkedin_accounts_get: {
|
|
700
|
+
input: {
|
|
701
|
+
query?: {
|
|
702
|
+
/** Treat accounts already allocated to THIS sequence as available. Pass the sequence being edited, or every account it already uses looks taken. */
|
|
703
|
+
exclude_sequence_id?: string | null;
|
|
704
|
+
};
|
|
705
|
+
headers?: {
|
|
706
|
+
"X-Target-Org-Id"?: string | null;
|
|
707
|
+
};
|
|
708
|
+
};
|
|
709
|
+
output: ApiResponse_SequencerPayload_;
|
|
710
|
+
};
|
|
711
|
+
/**
|
|
712
|
+
* GET /nurtures
|
|
713
|
+
* List Nurtures
|
|
714
|
+
* tier: read · scope: sequences:read
|
|
715
|
+
*/
|
|
716
|
+
list_nurtures_nurtures_get: {
|
|
717
|
+
input: {
|
|
718
|
+
query?: {
|
|
719
|
+
/** Page number (1-indexed). */
|
|
720
|
+
page?: number;
|
|
721
|
+
/** Items per page (max 200). */
|
|
722
|
+
limit?: number;
|
|
723
|
+
};
|
|
724
|
+
headers?: {
|
|
725
|
+
"X-Target-Org-Id"?: string | null;
|
|
726
|
+
};
|
|
727
|
+
};
|
|
728
|
+
output: ApiResponse_NurtureListResponse_;
|
|
729
|
+
};
|
|
730
|
+
/**
|
|
731
|
+
* GET /sequencer/deliverability/seg-vendors
|
|
732
|
+
* List Seg Vendors
|
|
733
|
+
* tier: read · scope: sequences:read
|
|
734
|
+
*/
|
|
735
|
+
list_seg_vendors_sequencer_deliverability_seg_vendors_get: {
|
|
736
|
+
input: {
|
|
737
|
+
headers?: {
|
|
738
|
+
"X-Target-Org-Id"?: string | null;
|
|
739
|
+
};
|
|
740
|
+
};
|
|
741
|
+
output: ApiResponse_SequencerPayload_;
|
|
742
|
+
};
|
|
743
|
+
/**
|
|
744
|
+
* GET /sequences/{sequence_id}/channels
|
|
745
|
+
* List Sequence Channels
|
|
746
|
+
* tier: read · scope: sequences:read
|
|
747
|
+
*/
|
|
748
|
+
list_sequence_channels_sequences__sequence_id__channels_get: {
|
|
749
|
+
input: {
|
|
750
|
+
path: {
|
|
751
|
+
/** Sequence id. */
|
|
752
|
+
sequence_id: string;
|
|
753
|
+
};
|
|
754
|
+
headers?: {
|
|
755
|
+
"X-Target-Org-Id"?: string | null;
|
|
756
|
+
};
|
|
757
|
+
};
|
|
758
|
+
output: ApiResponse_SequencerListPayload_;
|
|
759
|
+
};
|
|
760
|
+
/**
|
|
761
|
+
* GET /sequences/{sequence_id}/contact-ids
|
|
762
|
+
* List Sequence Contact Ids
|
|
763
|
+
* tier: read · scope: sequences:read
|
|
764
|
+
*/
|
|
765
|
+
list_sequence_contact_ids_sequences__sequence_id__contact_ids_get: {
|
|
766
|
+
input: {
|
|
767
|
+
path: {
|
|
768
|
+
/** Sequence id. */
|
|
769
|
+
sequence_id: string;
|
|
770
|
+
};
|
|
771
|
+
query?: {
|
|
772
|
+
/** Free text over name, email and phone. */
|
|
773
|
+
search?: string | null;
|
|
774
|
+
/** Comma-separated states to INCLUDE. */
|
|
775
|
+
state_filter?: string | null;
|
|
776
|
+
/** Comma-separated states to EXCLUDE; composes with `state_filter`. */
|
|
777
|
+
exclude_states?: string | null;
|
|
778
|
+
/** Allocated mailbox contains. */
|
|
779
|
+
mailbox_filter?: string | null;
|
|
780
|
+
/** Allocated phone number contains. */
|
|
781
|
+
phone_allocated_filter?: string | null;
|
|
782
|
+
/** Company name contains. */
|
|
783
|
+
company_filter?: string | null;
|
|
784
|
+
/** Currently at this step order. */
|
|
785
|
+
step_order_filter?: number | null;
|
|
786
|
+
};
|
|
787
|
+
headers?: {
|
|
788
|
+
"X-Target-Org-Id"?: string | null;
|
|
789
|
+
};
|
|
790
|
+
};
|
|
791
|
+
output: ApiResponse_SequencerPayload_;
|
|
792
|
+
};
|
|
793
|
+
/**
|
|
794
|
+
* GET /sequences/{sequence_id}/contacts
|
|
795
|
+
* List Sequence Contacts
|
|
796
|
+
* tier: read · scope: sequences:read
|
|
797
|
+
*/
|
|
798
|
+
list_sequence_contacts_sequences__sequence_id__contacts_get: {
|
|
799
|
+
input: {
|
|
800
|
+
path: {
|
|
801
|
+
/** Sequence ID */
|
|
802
|
+
sequence_id: string;
|
|
803
|
+
};
|
|
804
|
+
query?: {
|
|
805
|
+
/** Page number */
|
|
806
|
+
page?: number;
|
|
807
|
+
/** Items per page */
|
|
808
|
+
limit?: number;
|
|
809
|
+
/** Filter by contact state */
|
|
810
|
+
state?: string | null;
|
|
811
|
+
};
|
|
812
|
+
headers?: {
|
|
813
|
+
"X-Target-Org-Id"?: string | null;
|
|
814
|
+
};
|
|
815
|
+
};
|
|
816
|
+
output: ApiResponse_list_SequenceContactItem__;
|
|
817
|
+
};
|
|
818
|
+
/**
|
|
819
|
+
* GET /sequencer/templates/sequences
|
|
820
|
+
* List Sequence Templates
|
|
821
|
+
* tier: read · scope: sequences:read
|
|
822
|
+
*/
|
|
823
|
+
list_sequence_templates_sequencer_templates_sequences_get: {
|
|
824
|
+
input: {
|
|
825
|
+
headers?: {
|
|
826
|
+
"X-Target-Org-Id"?: string | null;
|
|
827
|
+
};
|
|
828
|
+
};
|
|
829
|
+
output: ApiResponse_SequencerListPayload_;
|
|
830
|
+
};
|
|
831
|
+
/**
|
|
832
|
+
* GET /sequencer/channels/mailboxes
|
|
833
|
+
* List Sequencer Mailboxes
|
|
834
|
+
* tier: read · scope: sequences:read
|
|
835
|
+
*/
|
|
836
|
+
list_sequencer_mailboxes_sequencer_channels_mailboxes_get: {
|
|
837
|
+
input: {
|
|
838
|
+
query: {
|
|
839
|
+
/** Mailbox email to scope the picker to. */
|
|
840
|
+
email: string;
|
|
841
|
+
/** Hide mailboxes already attached to this sequence. */
|
|
842
|
+
exclude_sequence_id?: string | null;
|
|
843
|
+
/** Include nurture-only mailboxes. */
|
|
844
|
+
include_nurture?: boolean;
|
|
845
|
+
};
|
|
846
|
+
headers?: {
|
|
847
|
+
"X-Target-Org-Id"?: string | null;
|
|
848
|
+
};
|
|
849
|
+
};
|
|
850
|
+
output: ApiResponse_Any_;
|
|
851
|
+
};
|
|
852
|
+
/**
|
|
853
|
+
* GET /sequencer/channels/phone_numbers
|
|
854
|
+
* List Sequencer Phone Numbers
|
|
855
|
+
* tier: read · scope: sequences:read
|
|
856
|
+
*/
|
|
857
|
+
list_sequencer_phone_numbers_sequencer_channels_phone_numbers_get: {
|
|
858
|
+
input: {
|
|
859
|
+
query?: {
|
|
860
|
+
exclude_sequence_id?: string | null;
|
|
861
|
+
};
|
|
862
|
+
headers?: {
|
|
863
|
+
"X-Target-Org-Id"?: string | null;
|
|
864
|
+
};
|
|
865
|
+
};
|
|
866
|
+
output: ApiResponse_Any_;
|
|
867
|
+
};
|
|
868
|
+
/**
|
|
869
|
+
* GET /sequencer/channels/sms_numbers
|
|
870
|
+
* List Sequencer Sms Numbers
|
|
871
|
+
* tier: read · scope: sequences:read
|
|
872
|
+
*/
|
|
873
|
+
list_sequencer_sms_numbers_sequencer_channels_sms_numbers_get: {
|
|
874
|
+
input: {
|
|
875
|
+
query?: {
|
|
876
|
+
exclude_sequence_id?: string | null;
|
|
877
|
+
};
|
|
878
|
+
headers?: {
|
|
879
|
+
"X-Target-Org-Id"?: string | null;
|
|
880
|
+
};
|
|
881
|
+
};
|
|
882
|
+
output: ApiResponse_Any_;
|
|
883
|
+
};
|
|
884
|
+
/**
|
|
885
|
+
* GET /sequencer/agents/textual
|
|
886
|
+
* List Sequencer Textual Agents
|
|
887
|
+
* tier: read · scope: sequences:read
|
|
888
|
+
*/
|
|
889
|
+
list_sequencer_textual_agents_sequencer_agents_textual_get: {
|
|
890
|
+
input: {
|
|
891
|
+
headers?: {
|
|
892
|
+
"X-Target-Org-Id"?: string | null;
|
|
893
|
+
};
|
|
894
|
+
};
|
|
895
|
+
output: ApiResponse_Any_;
|
|
896
|
+
};
|
|
897
|
+
/**
|
|
898
|
+
* GET /sequencer/agents/voice
|
|
899
|
+
* List Sequencer Voice Agents
|
|
900
|
+
* tier: read · scope: sequences:read
|
|
901
|
+
*/
|
|
902
|
+
list_sequencer_voice_agents_sequencer_agents_voice_get: {
|
|
903
|
+
input: {
|
|
904
|
+
query?: {
|
|
905
|
+
/** Filter by agent name. */
|
|
906
|
+
agent_name?: string | null;
|
|
907
|
+
};
|
|
908
|
+
headers?: {
|
|
909
|
+
"X-Target-Org-Id"?: string | null;
|
|
910
|
+
};
|
|
911
|
+
};
|
|
912
|
+
output: ApiResponse_Any_;
|
|
913
|
+
};
|
|
914
|
+
/**
|
|
915
|
+
* GET /sequencer/channels/whatsapp_numbers
|
|
916
|
+
* List Sequencer Whatsapp Numbers
|
|
917
|
+
* tier: read · scope: sequences:read
|
|
918
|
+
*/
|
|
919
|
+
list_sequencer_whatsapp_numbers_sequencer_channels_whatsapp_numbers_get: {
|
|
920
|
+
input: {
|
|
921
|
+
query?: {
|
|
922
|
+
exclude_sequence_id?: string | null;
|
|
923
|
+
};
|
|
924
|
+
headers?: {
|
|
925
|
+
"X-Target-Org-Id"?: string | null;
|
|
926
|
+
};
|
|
927
|
+
};
|
|
928
|
+
output: ApiResponse_Any_;
|
|
929
|
+
};
|
|
930
|
+
/**
|
|
931
|
+
* GET /sequencer/channels/whatsapp_templates
|
|
932
|
+
* List Sequencer Whatsapp Templates
|
|
933
|
+
* tier: read · scope: sequences:read
|
|
934
|
+
*/
|
|
935
|
+
list_sequencer_whatsapp_templates_sequencer_channels_whatsapp_templates_get: {
|
|
936
|
+
input: {
|
|
937
|
+
headers?: {
|
|
938
|
+
"X-Target-Org-Id"?: string | null;
|
|
939
|
+
};
|
|
940
|
+
};
|
|
941
|
+
output: ApiResponse_Any_;
|
|
942
|
+
};
|
|
943
|
+
/**
|
|
944
|
+
* GET /sequences
|
|
945
|
+
* List Sequences
|
|
946
|
+
* tier: read · scope: sequences:read
|
|
947
|
+
*/
|
|
948
|
+
list_sequences_sequences_get: {
|
|
949
|
+
input: {
|
|
950
|
+
query?: {
|
|
951
|
+
/** Page number */
|
|
952
|
+
page?: number;
|
|
953
|
+
/** Items per page */
|
|
954
|
+
limit?: number;
|
|
955
|
+
/** Filter by status */
|
|
956
|
+
status?: string | null;
|
|
957
|
+
/** Filter by sequence kind ('cold_outbound' or 'nurture'). Omit to list all kinds. */
|
|
958
|
+
sequence_kind?: string | null;
|
|
959
|
+
};
|
|
960
|
+
headers?: {
|
|
961
|
+
"X-Target-Org-Id"?: string | null;
|
|
962
|
+
};
|
|
963
|
+
};
|
|
964
|
+
output: ApiResponse_list_SequenceListItem__;
|
|
965
|
+
};
|
|
966
|
+
/**
|
|
967
|
+
* GET /sequencer/templates/steps
|
|
968
|
+
* List Step Templates
|
|
969
|
+
* tier: read · scope: sequences:read
|
|
970
|
+
*/
|
|
971
|
+
list_step_templates_sequencer_templates_steps_get: {
|
|
972
|
+
input: {
|
|
973
|
+
headers?: {
|
|
974
|
+
"X-Target-Org-Id"?: string | null;
|
|
975
|
+
};
|
|
976
|
+
};
|
|
977
|
+
output: ApiResponse_SequencerListPayload_;
|
|
978
|
+
};
|
|
979
|
+
/**
|
|
980
|
+
* POST /nurtures/{nurture_id}/pause
|
|
981
|
+
* Pause Nurture
|
|
982
|
+
* tier: write · scope: sequences:write
|
|
983
|
+
*/
|
|
984
|
+
pause_nurture_nurtures__nurture_id__pause_post: {
|
|
985
|
+
input: {
|
|
986
|
+
path: {
|
|
987
|
+
/** Nurture id. */
|
|
988
|
+
nurture_id: string;
|
|
989
|
+
};
|
|
990
|
+
headers?: {
|
|
991
|
+
"X-Target-Org-Id"?: string | null;
|
|
992
|
+
};
|
|
993
|
+
};
|
|
994
|
+
output: ApiResponse_dict_;
|
|
995
|
+
};
|
|
996
|
+
/**
|
|
997
|
+
* POST /sequences/{sequence_id}/pause
|
|
998
|
+
* Pause Sequence
|
|
999
|
+
* tier: external · scope: sequences:run
|
|
1000
|
+
*/
|
|
1001
|
+
pause_sequence_sequences__sequence_id__pause_post: {
|
|
1002
|
+
input: {
|
|
1003
|
+
path: {
|
|
1004
|
+
/** Sequence ID */
|
|
1005
|
+
sequence_id: string;
|
|
1006
|
+
};
|
|
1007
|
+
headers?: {
|
|
1008
|
+
"X-Target-Org-Id"?: string | null;
|
|
1009
|
+
};
|
|
1010
|
+
};
|
|
1011
|
+
output: ApiResponse_SequenceActionResponse_;
|
|
1012
|
+
};
|
|
1013
|
+
/**
|
|
1014
|
+
* POST /sequences/{sequence_id}/contacts/{contact_id}/pause
|
|
1015
|
+
* Pause Sequence Contact
|
|
1016
|
+
* tier: write · scope: sequences:write
|
|
1017
|
+
*/
|
|
1018
|
+
pause_sequence_contact_sequences__sequence_id__contacts__contact_id__pause_post: {
|
|
1019
|
+
input: {
|
|
1020
|
+
path: {
|
|
1021
|
+
/** Sequence id. */
|
|
1022
|
+
sequence_id: string;
|
|
1023
|
+
/** Contact id. */
|
|
1024
|
+
contact_id: number;
|
|
1025
|
+
};
|
|
1026
|
+
headers?: {
|
|
1027
|
+
"X-Target-Org-Id"?: string | null;
|
|
1028
|
+
};
|
|
1029
|
+
};
|
|
1030
|
+
output: ApiResponse_SequenceOpsPayload_;
|
|
1031
|
+
};
|
|
1032
|
+
/**
|
|
1033
|
+
* POST /sequencer/content/voice/test-call
|
|
1034
|
+
* Place Voice Test Call
|
|
1035
|
+
* tier: external · scope: sequences:run
|
|
1036
|
+
*/
|
|
1037
|
+
place_voice_test_call_sequencer_content_voice_test_call_post: {
|
|
1038
|
+
input: {
|
|
1039
|
+
headers?: {
|
|
1040
|
+
"X-Target-Org-Id"?: string | null;
|
|
1041
|
+
};
|
|
1042
|
+
body: VoiceTestCallRequest;
|
|
1043
|
+
};
|
|
1044
|
+
output: ApiResponse_SequencerPayload_;
|
|
1045
|
+
};
|
|
1046
|
+
/**
|
|
1047
|
+
* POST /sequencer/dialer/sequences/{sequence_id}/contacts/{contact_id}/callback
|
|
1048
|
+
* Record Dialer Outcome
|
|
1049
|
+
* tier: write · scope: sequences:write
|
|
1050
|
+
*/
|
|
1051
|
+
record_dialer_outcome_sequencer_dialer_sequences__sequence_id__contacts__contact_id__callback_post: {
|
|
1052
|
+
input: {
|
|
1053
|
+
path: {
|
|
1054
|
+
/** Sequence id. */
|
|
1055
|
+
sequence_id: string;
|
|
1056
|
+
/** The contact's integer id in this sequence. */
|
|
1057
|
+
contact_id: number;
|
|
1058
|
+
};
|
|
1059
|
+
headers?: {
|
|
1060
|
+
"X-Target-Org-Id"?: string | null;
|
|
1061
|
+
};
|
|
1062
|
+
body: DialerCallbackRequest;
|
|
1063
|
+
};
|
|
1064
|
+
output: ApiResponse_SequencerPayload_;
|
|
1065
|
+
};
|
|
1066
|
+
/**
|
|
1067
|
+
* DELETE /sequences/{sequence_id}/channels/{sequence_channel_id}
|
|
1068
|
+
* Remove Sequence Channel
|
|
1069
|
+
* tier: destructive · scope: sequences:delete
|
|
1070
|
+
*/
|
|
1071
|
+
remove_sequence_channel_sequences__sequence_id__channels__sequence_channel_id__delete: {
|
|
1072
|
+
input: {
|
|
1073
|
+
path: {
|
|
1074
|
+
/** Sequence id. */
|
|
1075
|
+
sequence_id: string;
|
|
1076
|
+
/** Sequence-channel id, from `GET .../channels`. */
|
|
1077
|
+
sequence_channel_id: string;
|
|
1078
|
+
};
|
|
1079
|
+
headers?: {
|
|
1080
|
+
"X-Target-Org-Id"?: string | null;
|
|
1081
|
+
};
|
|
1082
|
+
};
|
|
1083
|
+
output: ApiResponse_SequencerListPayload_;
|
|
1084
|
+
};
|
|
1085
|
+
/**
|
|
1086
|
+
* DELETE /sequences/{sequence_id}/channels
|
|
1087
|
+
* Remove Sequence Channels
|
|
1088
|
+
* tier: destructive · scope: sequences:delete
|
|
1089
|
+
*/
|
|
1090
|
+
remove_sequence_channels_sequences__sequence_id__channels_delete: {
|
|
1091
|
+
input: {
|
|
1092
|
+
path: {
|
|
1093
|
+
/** Sequence id. */
|
|
1094
|
+
sequence_id: string;
|
|
1095
|
+
};
|
|
1096
|
+
headers?: {
|
|
1097
|
+
"X-Target-Org-Id"?: string | null;
|
|
1098
|
+
};
|
|
1099
|
+
body: RemoveChannelsRequest;
|
|
1100
|
+
};
|
|
1101
|
+
output: ApiResponse_SequencerListPayload_;
|
|
1102
|
+
};
|
|
1103
|
+
/**
|
|
1104
|
+
* POST /nurtures/{nurture_id}/resume
|
|
1105
|
+
* Resume Nurture
|
|
1106
|
+
* tier: write · scope: sequences:write
|
|
1107
|
+
*/
|
|
1108
|
+
resume_nurture_nurtures__nurture_id__resume_post: {
|
|
1109
|
+
input: {
|
|
1110
|
+
path: {
|
|
1111
|
+
/** Nurture id. */
|
|
1112
|
+
nurture_id: string;
|
|
1113
|
+
};
|
|
1114
|
+
headers?: {
|
|
1115
|
+
"X-Target-Org-Id"?: string | null;
|
|
1116
|
+
};
|
|
1117
|
+
};
|
|
1118
|
+
output: ApiResponse_dict_;
|
|
1119
|
+
};
|
|
1120
|
+
/**
|
|
1121
|
+
* POST /sequences/{sequence_id}/resume
|
|
1122
|
+
* Resume Sequence
|
|
1123
|
+
* tier: external · scope: sequences:run
|
|
1124
|
+
*/
|
|
1125
|
+
resume_sequence_sequences__sequence_id__resume_post: {
|
|
1126
|
+
input: {
|
|
1127
|
+
path: {
|
|
1128
|
+
/** Sequence ID */
|
|
1129
|
+
sequence_id: string;
|
|
1130
|
+
};
|
|
1131
|
+
headers?: {
|
|
1132
|
+
"X-Target-Org-Id"?: string | null;
|
|
1133
|
+
};
|
|
1134
|
+
};
|
|
1135
|
+
output: ApiResponse_SequenceActionResponse_;
|
|
1136
|
+
};
|
|
1137
|
+
/**
|
|
1138
|
+
* POST /sequences/{sequence_id}/contacts/{contact_id}/resume
|
|
1139
|
+
* Resume Sequence Contact
|
|
1140
|
+
* tier: external · scope: sequences:run
|
|
1141
|
+
*/
|
|
1142
|
+
resume_sequence_contact_sequences__sequence_id__contacts__contact_id__resume_post: {
|
|
1143
|
+
input: {
|
|
1144
|
+
path: {
|
|
1145
|
+
/** Sequence id. */
|
|
1146
|
+
sequence_id: string;
|
|
1147
|
+
/** Contact id. */
|
|
1148
|
+
contact_id: number;
|
|
1149
|
+
};
|
|
1150
|
+
headers?: {
|
|
1151
|
+
"X-Target-Org-Id"?: string | null;
|
|
1152
|
+
};
|
|
1153
|
+
};
|
|
1154
|
+
output: ApiResponse_SequenceOpsPayload_;
|
|
1155
|
+
};
|
|
1156
|
+
/**
|
|
1157
|
+
* POST /sequences/{sequence_id}/run
|
|
1158
|
+
* Run Sequence
|
|
1159
|
+
* tier: external · scope: sequences:run
|
|
1160
|
+
*/
|
|
1161
|
+
run_sequence_sequences__sequence_id__run_post: {
|
|
1162
|
+
input: {
|
|
1163
|
+
path: {
|
|
1164
|
+
/** Sequence ID */
|
|
1165
|
+
sequence_id: string;
|
|
1166
|
+
};
|
|
1167
|
+
headers?: {
|
|
1168
|
+
"X-Target-Org-Id"?: string | null;
|
|
1169
|
+
};
|
|
1170
|
+
};
|
|
1171
|
+
output: ApiResponse_SequenceActionResponse_;
|
|
1172
|
+
};
|
|
1173
|
+
/**
|
|
1174
|
+
* POST /sequences/{sequence_id}/status
|
|
1175
|
+
* Set Sequence Status
|
|
1176
|
+
* tier: write · scope: sequences:write
|
|
1177
|
+
*/
|
|
1178
|
+
set_sequence_status_sequences__sequence_id__status_post: {
|
|
1179
|
+
input: {
|
|
1180
|
+
path: {
|
|
1181
|
+
/** Sequence id. */
|
|
1182
|
+
sequence_id: string;
|
|
1183
|
+
};
|
|
1184
|
+
headers?: {
|
|
1185
|
+
"X-Target-Org-Id"?: string | null;
|
|
1186
|
+
};
|
|
1187
|
+
body: SequenceStatusRequest;
|
|
1188
|
+
};
|
|
1189
|
+
output: ApiResponse_SequenceRecord_;
|
|
1190
|
+
};
|
|
1191
|
+
/**
|
|
1192
|
+
* POST /sequences/{sequence_id}/sync
|
|
1193
|
+
* Sync Sequence
|
|
1194
|
+
* tier: external · scope: sequences:run
|
|
1195
|
+
*/
|
|
1196
|
+
sync_sequence_sequences__sequence_id__sync_post: {
|
|
1197
|
+
input: {
|
|
1198
|
+
path: {
|
|
1199
|
+
/** Sequence id. */
|
|
1200
|
+
sequence_id: string;
|
|
1201
|
+
};
|
|
1202
|
+
headers?: {
|
|
1203
|
+
"X-Target-Org-Id"?: string | null;
|
|
1204
|
+
};
|
|
1205
|
+
};
|
|
1206
|
+
output: ApiResponse_dict_;
|
|
1207
|
+
};
|
|
1208
|
+
/**
|
|
1209
|
+
* POST /sequences/{sequence_id}/terminate
|
|
1210
|
+
* Terminate Sequence
|
|
1211
|
+
* tier: write · scope: sequences:write
|
|
1212
|
+
*/
|
|
1213
|
+
terminate_sequence_sequences__sequence_id__terminate_post: {
|
|
1214
|
+
input: {
|
|
1215
|
+
path: {
|
|
1216
|
+
/** Sequence id. */
|
|
1217
|
+
sequence_id: string;
|
|
1218
|
+
};
|
|
1219
|
+
headers?: {
|
|
1220
|
+
"X-Target-Org-Id"?: string | null;
|
|
1221
|
+
};
|
|
1222
|
+
};
|
|
1223
|
+
output: ApiResponse_dict_;
|
|
1224
|
+
};
|
|
1225
|
+
/**
|
|
1226
|
+
* DELETE /sequences/{sequence_id}/campaign
|
|
1227
|
+
* Unlink Sequence Campaign
|
|
1228
|
+
* tier: destructive · scope: sequences:delete
|
|
1229
|
+
*/
|
|
1230
|
+
unlink_sequence_campaign_sequences__sequence_id__campaign_delete: {
|
|
1231
|
+
input: {
|
|
1232
|
+
path: {
|
|
1233
|
+
/** Sequence id. */
|
|
1234
|
+
sequence_id: string;
|
|
1235
|
+
};
|
|
1236
|
+
headers?: {
|
|
1237
|
+
"X-Target-Org-Id"?: string | null;
|
|
1238
|
+
};
|
|
1239
|
+
};
|
|
1240
|
+
output: ApiResponse_SequenceRecord_;
|
|
1241
|
+
};
|
|
1242
|
+
/**
|
|
1243
|
+
* PATCH /nurtures/{nurture_id}
|
|
1244
|
+
* Update Nurture
|
|
1245
|
+
* tier: write · scope: sequences:write
|
|
1246
|
+
*/
|
|
1247
|
+
update_nurture_nurtures__nurture_id__patch: {
|
|
1248
|
+
input: {
|
|
1249
|
+
path: {
|
|
1250
|
+
/** Nurture id. */
|
|
1251
|
+
nurture_id: string;
|
|
1252
|
+
};
|
|
1253
|
+
headers?: {
|
|
1254
|
+
"X-Target-Org-Id"?: string | null;
|
|
1255
|
+
};
|
|
1256
|
+
body: NurtureUpdateRequest;
|
|
1257
|
+
};
|
|
1258
|
+
output: ApiResponse_NurtureResponse_;
|
|
1259
|
+
};
|
|
1260
|
+
/**
|
|
1261
|
+
* PATCH /schedules/{schedule_id}
|
|
1262
|
+
* Update Schedule
|
|
1263
|
+
* tier: write · scope: campaigns:write
|
|
1264
|
+
*/
|
|
1265
|
+
update_schedule_schedules__schedule_id__patch: {
|
|
1266
|
+
input: {
|
|
1267
|
+
path: {
|
|
1268
|
+
/** Schedule id, from `GET /schedules`. */
|
|
1269
|
+
schedule_id: string;
|
|
1270
|
+
};
|
|
1271
|
+
headers?: {
|
|
1272
|
+
"X-Target-Org-Id"?: string | null;
|
|
1273
|
+
};
|
|
1274
|
+
body: UpdateSendingScheduleRequest;
|
|
1275
|
+
};
|
|
1276
|
+
output: ApiResponse_SequencerPayload_;
|
|
1277
|
+
};
|
|
1278
|
+
/**
|
|
1279
|
+
* PATCH /sequencer/templates/sequences/{sequence_template_id}
|
|
1280
|
+
* Update Sequence Template
|
|
1281
|
+
* tier: write · scope: sequences:write
|
|
1282
|
+
*/
|
|
1283
|
+
update_sequence_template_sequencer_templates_sequences__sequence_template_id__patch: {
|
|
1284
|
+
input: {
|
|
1285
|
+
path: {
|
|
1286
|
+
/** Sequence template id. */
|
|
1287
|
+
sequence_template_id: string;
|
|
1288
|
+
};
|
|
1289
|
+
headers?: {
|
|
1290
|
+
"X-Target-Org-Id"?: string | null;
|
|
1291
|
+
};
|
|
1292
|
+
body: UpdateSequenceTemplateRequest;
|
|
1293
|
+
};
|
|
1294
|
+
output: ApiResponse_SequencerPayload_;
|
|
1295
|
+
};
|
|
1296
|
+
/**
|
|
1297
|
+
* PATCH /sequencer/templates/steps/{step_template_id}
|
|
1298
|
+
* Update Step Template
|
|
1299
|
+
* tier: write · scope: sequences:write
|
|
1300
|
+
*/
|
|
1301
|
+
update_step_template_sequencer_templates_steps__step_template_id__patch: {
|
|
1302
|
+
input: {
|
|
1303
|
+
path: {
|
|
1304
|
+
/** Step template id. */
|
|
1305
|
+
step_template_id: string;
|
|
1306
|
+
};
|
|
1307
|
+
headers?: {
|
|
1308
|
+
"X-Target-Org-Id"?: string | null;
|
|
1309
|
+
};
|
|
1310
|
+
body: UpdateStepTemplateRequest;
|
|
1311
|
+
};
|
|
1312
|
+
output: ApiResponse_SequencerPayload_;
|
|
1313
|
+
};
|
|
1314
|
+
}
|
|
1315
|
+
|
|
1316
|
+
// 58 schemas referenced above (the same as G8Contract.<Name>).
|
|
1317
|
+
|
|
1318
|
+
/** One sender to attach. Mirrors `AddChannelPayload` minus the client `id`. */
|
|
1319
|
+
export interface AddChannelItem {
|
|
1320
|
+
channel_data?: Record<string, unknown> | null;
|
|
1321
|
+
/** The sender's INTEGER id - a mailbox, number or account. */
|
|
1322
|
+
channel_id: number;
|
|
1323
|
+
channel_type: "SMTP" | "GMAIL" | "INBOXKIT" | "PHONE" | "LINKEDIN" | "LINKEDIN_NETRION" | "SMS" | "WHATSAPP";
|
|
1324
|
+
/** Its address: the email, phone number or profile. */
|
|
1325
|
+
channel_value: string;
|
|
1326
|
+
}
|
|
1327
|
+
|
|
1328
|
+
/** Attach senders to a sequence. Mirrors `AddChannelParams`. */
|
|
1329
|
+
export interface AddChannelsRequest {
|
|
1330
|
+
channels: Array<AddChannelItem>;
|
|
1331
|
+
}
|
|
1332
|
+
|
|
1333
|
+
export interface AddSequenceContactsRequest {
|
|
1334
|
+
/** Contact IDs to add to the sequence */
|
|
1335
|
+
contact_ids: Array<number>;
|
|
1336
|
+
/** List ID the contacts belong to */
|
|
1337
|
+
list_id: number;
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1340
|
+
/** One step to add. Mirrors `CreateStepPayload` minus the client `id`. */
|
|
1341
|
+
export interface AddStepItem {
|
|
1342
|
+
input_type: "ON_DEMAND" | "AI_GENERATED_TEMPLATE" | "MANUAL_TEMPLATE";
|
|
1343
|
+
/** The step's content, the same shape as `step_data` on `GET /sequences/{sequence_id}/steps`: `subject` / `body` for email, `message_body` for SMS and WhatsApp, the `linkedin_*` fields for LinkedIn, `instructions` for AI generation. */
|
|
1344
|
+
step_data: Record<string, unknown>;
|
|
1345
|
+
/** Position in the sequence, 1-based. */
|
|
1346
|
+
step_order: number;
|
|
1347
|
+
step_type: "PHONE" | "EMAIL" | "MANUAL_DIALER" | "HEYREACH" | "NETRION" | "SMS" | "WHATSAPP";
|
|
1348
|
+
/** Seconds after the previous step. */
|
|
1349
|
+
time_interval?: number | null;
|
|
1350
|
+
}
|
|
1351
|
+
|
|
1352
|
+
/** Append steps to a sequence. Mirrors `CreateStepParams`. */
|
|
1353
|
+
export interface AddStepsRequest {
|
|
1354
|
+
steps: Array<AddStepItem>;
|
|
1355
|
+
}
|
|
1356
|
+
|
|
1357
|
+
export interface ApiResponse_Any_ {
|
|
1358
|
+
data: unknown;
|
|
1359
|
+
pagination?: PaginationMeta | null;
|
|
1360
|
+
}
|
|
1361
|
+
|
|
1362
|
+
export interface ApiResponse_GenerateSpintaxResponse_ {
|
|
1363
|
+
data: GenerateSpintaxResponse;
|
|
1364
|
+
pagination?: PaginationMeta | null;
|
|
1365
|
+
}
|
|
1366
|
+
|
|
1367
|
+
export interface ApiResponse_NurtureListResponse_ {
|
|
1368
|
+
data: NurtureListResponse;
|
|
1369
|
+
pagination?: PaginationMeta | null;
|
|
1370
|
+
}
|
|
1371
|
+
|
|
1372
|
+
export interface ApiResponse_NurtureResponse_ {
|
|
1373
|
+
data: NurtureResponse;
|
|
1374
|
+
pagination?: PaginationMeta | null;
|
|
1375
|
+
}
|
|
1376
|
+
|
|
1377
|
+
export interface ApiResponse_SequenceActionResponse_ {
|
|
1378
|
+
data: SequenceActionResponse;
|
|
1379
|
+
pagination?: PaginationMeta | null;
|
|
1380
|
+
}
|
|
1381
|
+
|
|
1382
|
+
export interface ApiResponse_SequenceDetailResponse_ {
|
|
1383
|
+
data: SequenceDetailResponse;
|
|
1384
|
+
pagination?: PaginationMeta | null;
|
|
1385
|
+
}
|
|
1386
|
+
|
|
1387
|
+
export interface ApiResponse_SequenceOpsPayload_ {
|
|
1388
|
+
data: SequenceOpsPayload;
|
|
1389
|
+
pagination?: PaginationMeta | null;
|
|
1390
|
+
}
|
|
1391
|
+
|
|
1392
|
+
export interface ApiResponse_SequenceRecord_ {
|
|
1393
|
+
data: SequenceRecord;
|
|
1394
|
+
pagination?: PaginationMeta | null;
|
|
1395
|
+
}
|
|
1396
|
+
|
|
1397
|
+
export interface ApiResponse_SequenceRoutingSummary_ {
|
|
1398
|
+
data: SequenceRoutingSummary;
|
|
1399
|
+
pagination?: PaginationMeta | null;
|
|
1400
|
+
}
|
|
1401
|
+
|
|
1402
|
+
export interface ApiResponse_SequenceStats_ {
|
|
1403
|
+
data: SequenceStats;
|
|
1404
|
+
pagination?: PaginationMeta | null;
|
|
1405
|
+
}
|
|
1406
|
+
|
|
1407
|
+
export interface ApiResponse_SequencerListPayload_ {
|
|
1408
|
+
data: SequencerListPayload;
|
|
1409
|
+
pagination?: PaginationMeta | null;
|
|
1410
|
+
}
|
|
1411
|
+
|
|
1412
|
+
export interface ApiResponse_SequencerPayload_ {
|
|
1413
|
+
data: SequencerPayload;
|
|
1414
|
+
pagination?: PaginationMeta | null;
|
|
1415
|
+
}
|
|
1416
|
+
|
|
1417
|
+
export interface ApiResponse_dict_ {
|
|
1418
|
+
data: Record<string, unknown>;
|
|
1419
|
+
pagination?: PaginationMeta | null;
|
|
1420
|
+
}
|
|
1421
|
+
|
|
1422
|
+
export interface ApiResponse_list_SequenceContactItem__ {
|
|
1423
|
+
data: Array<SequenceContactItem>;
|
|
1424
|
+
pagination?: PaginationMeta | null;
|
|
1425
|
+
}
|
|
1426
|
+
|
|
1427
|
+
export interface ApiResponse_list_SequenceListItem__ {
|
|
1428
|
+
data: Array<SequenceListItem>;
|
|
1429
|
+
pagination?: PaginationMeta | null;
|
|
1430
|
+
}
|
|
1431
|
+
|
|
1432
|
+
/**
|
|
1433
|
+
* Archive or UN-archive.
|
|
1434
|
+
*
|
|
1435
|
+
* An explicit flag rather than a toggle, so a retried request is idempotent
|
|
1436
|
+
* instead of flipping the state back - and it is what makes the same route
|
|
1437
|
+
* the un-archive route.
|
|
1438
|
+
*/
|
|
1439
|
+
export interface ArchiveRequest {
|
|
1440
|
+
is_archived: boolean;
|
|
1441
|
+
}
|
|
1442
|
+
|
|
1443
|
+
/** A sending schedule. Mirrors `CreateSchedulePayload` minus the client `id`. */
|
|
1444
|
+
export interface CreateSendingScheduleRequest {
|
|
1445
|
+
config: SendingWeek;
|
|
1446
|
+
description?: string | null;
|
|
1447
|
+
name: string;
|
|
1448
|
+
/** IANA timezone. */
|
|
1449
|
+
timezone?: string;
|
|
1450
|
+
}
|
|
1451
|
+
|
|
1452
|
+
/** A reusable sequence skeleton. Mirrors `CreateSequenceTemplatePayload`. */
|
|
1453
|
+
export interface CreateSequenceTemplateRequest {
|
|
1454
|
+
/** Event type id for the booking link. */
|
|
1455
|
+
appointment_id?: number | null;
|
|
1456
|
+
description?: string | null;
|
|
1457
|
+
name: string;
|
|
1458
|
+
/** Sending schedule, from `GET /schedules`. */
|
|
1459
|
+
schedule_id?: string | null;
|
|
1460
|
+
steps?: Array<SequenceTemplateStep> | null;
|
|
1461
|
+
/** Agent for email / social steps. */
|
|
1462
|
+
textual_agent_name?: string | null;
|
|
1463
|
+
/** Agent for phone / SMS steps. */
|
|
1464
|
+
voice_agent_name?: string | null;
|
|
1465
|
+
}
|
|
1466
|
+
|
|
1467
|
+
/**
|
|
1468
|
+
* A reusable piece of step content. Mirrors `CreateStepTemplatePayload`
|
|
1469
|
+
* minus the client-supplied `id` (see the module docstring).
|
|
1470
|
+
*/
|
|
1471
|
+
export interface CreateStepTemplateRequest {
|
|
1472
|
+
input_type: "ON_DEMAND" | "AI_GENERATED_TEMPLATE" | "MANUAL_TEMPLATE";
|
|
1473
|
+
name: string;
|
|
1474
|
+
/** The step's content: `subject` / `body` for email, `message_body` for SMS and WhatsApp, the `linkedin_*` fields for LinkedIn, `instructions` for AI generation. The same shape as `step_data` on `GET /sequences/{sequence_id}/steps`. */
|
|
1475
|
+
step_data: Record<string, unknown>;
|
|
1476
|
+
step_type: "PHONE" | "EMAIL" | "MANUAL_DIALER" | "HEYREACH" | "NETRION" | "SMS" | "WHATSAPP";
|
|
1477
|
+
}
|
|
1478
|
+
|
|
1479
|
+
/** The outcome of a dialer call. Mirrors `DialerCallbackPayload`. */
|
|
1480
|
+
export interface DialerCallbackRequest {
|
|
1481
|
+
/** True if the call connected and the contact should advance to the next step; false records an unsuccessful attempt. */
|
|
1482
|
+
success: boolean;
|
|
1483
|
+
}
|
|
1484
|
+
|
|
1485
|
+
/** Draft one contact's email. Mirrors `OnDemandPayload` field for field. */
|
|
1486
|
+
export interface DraftEmailRequest {
|
|
1487
|
+
/** The textual agent whose voice and context are used. */
|
|
1488
|
+
agent_name: string;
|
|
1489
|
+
contact_id: number;
|
|
1490
|
+
contact_work_email: string;
|
|
1491
|
+
first_name: string;
|
|
1492
|
+
/** What the email should do - the step's prompt. */
|
|
1493
|
+
instructions: string;
|
|
1494
|
+
last_name: string;
|
|
1495
|
+
/** What is known about the contact, as free text. */
|
|
1496
|
+
lead_info: string;
|
|
1497
|
+
/** Model slug, from `GET /sequencer/content/email/models`. */
|
|
1498
|
+
model?: string | null;
|
|
1499
|
+
/** Model provider, from `GET /sequencer/content/email/models`. */
|
|
1500
|
+
provider?: ("openai" | "anthropic" | "openrouter") | null;
|
|
1501
|
+
/** Draft in the context of this sequence's linked campaign. */
|
|
1502
|
+
sequence_id?: string | null;
|
|
1503
|
+
step_order?: number | null;
|
|
1504
|
+
/** Draft in this campaign's context; wins over `sequence_id`. */
|
|
1505
|
+
studio_campaign_id?: string | null;
|
|
1506
|
+
}
|
|
1507
|
+
|
|
1508
|
+
/** Draft one contact's LinkedIn message. Mirrors `OnDemandLinkedInPayload`. */
|
|
1509
|
+
export interface DraftLinkedInRequest {
|
|
1510
|
+
agent_name?: string;
|
|
1511
|
+
contact_id: number;
|
|
1512
|
+
first_name: string;
|
|
1513
|
+
instructions: string;
|
|
1514
|
+
last_name: string;
|
|
1515
|
+
lead_info: string;
|
|
1516
|
+
/** The LinkedIn step kind the message is for, e.g. a connection request or a message. */
|
|
1517
|
+
linkedin_action_type: string;
|
|
1518
|
+
/** What earlier steps already said, so the draft does not repeat it. */
|
|
1519
|
+
step_history?: string | null;
|
|
1520
|
+
studio_campaign_id?: string | null;
|
|
1521
|
+
}
|
|
1522
|
+
|
|
1523
|
+
/**
|
|
1524
|
+
* One-time AI generation: rewrite a manual email into spintax.
|
|
1525
|
+
*
|
|
1526
|
+
* Field types intentionally mirror the internal
|
|
1527
|
+
* ``sequencer.interfaces.voice.email_generation.GenerateSpintaxPayload``
|
|
1528
|
+
* (same Literals) so outer/inner validation cannot drift. The legacy
|
|
1529
|
+
* ``target_combinations`` knob is deliberately NOT exposed on the public
|
|
1530
|
+
* surface; ``strength`` supersedes it.
|
|
1531
|
+
*/
|
|
1532
|
+
export interface GenerateSpintaxRequest {
|
|
1533
|
+
/** Email body to rewrite into spintax */
|
|
1534
|
+
body: string;
|
|
1535
|
+
/** Body format. 'html' preserves every <a href> link and all {{variables}} in the rewrite. */
|
|
1536
|
+
email_type?: "plain" | "html";
|
|
1537
|
+
/** Variation intensity: how heavily to vary the copy and how deeply to nest spintax blocks. Each level carries an ENFORCED ceiling on total distinct renderings (subject x body), applied after generation: 'light' up to 200 (flat blocks only), 'balanced' up to 5,000, 'maximum' up to 100,000. Output over the ceiling is trimmed down, never rejected. */
|
|
1538
|
+
strength?: "light" | "balanced" | "maximum";
|
|
1539
|
+
/** Email subject to rewrite into spintax */
|
|
1540
|
+
subject: string;
|
|
1541
|
+
/** Optional tone/style guidance applied during the rewrite (e.g. 'casual, no exclamation marks'). */
|
|
1542
|
+
tone_instructions?: string | null;
|
|
1543
|
+
}
|
|
1544
|
+
|
|
1545
|
+
/** Spintax-encoded email plus its distinct-rendering counts. */
|
|
1546
|
+
export interface GenerateSpintaxResponse {
|
|
1547
|
+
/** Body rewritten with (possibly nested) spintax blocks */
|
|
1548
|
+
body: string;
|
|
1549
|
+
/** Distinct renderings the body can produce */
|
|
1550
|
+
body_combinations: number;
|
|
1551
|
+
/** Subject rewritten with {{option a|option b}} spintax blocks */
|
|
1552
|
+
subject: string;
|
|
1553
|
+
/** Distinct renderings the subject can produce */
|
|
1554
|
+
subject_combinations: number;
|
|
1555
|
+
/** Distinct full-email renderings (subject x body) */
|
|
1556
|
+
total_combinations: number;
|
|
1557
|
+
}
|
|
1558
|
+
|
|
1559
|
+
/** Ask an agent to draft step content. Mirrors `GetContentTemplatesParams`. */
|
|
1560
|
+
export interface GenerateStepTemplatesRequest {
|
|
1561
|
+
/** The agent whose voice and context the drafts use. */
|
|
1562
|
+
agent_name: string;
|
|
1563
|
+
}
|
|
1564
|
+
|
|
1565
|
+
/** Rewrite a step's drafting instruction. Mirrors `PromptImprovementPayload`. */
|
|
1566
|
+
export interface ImproveInstructionRequest {
|
|
1567
|
+
/** The instruction being replaced, so the rewrite keeps its intent. */
|
|
1568
|
+
old_instruction?: string | null;
|
|
1569
|
+
/** What the drafting agent should do, in the author's own words. */
|
|
1570
|
+
user_instruction: string;
|
|
1571
|
+
}
|
|
1572
|
+
|
|
1573
|
+
/**
|
|
1574
|
+
* Create a nurture.
|
|
1575
|
+
*
|
|
1576
|
+
* `sequence_kind` is NOT accepted: the app pins it to `nurture` server-side
|
|
1577
|
+
* and re-validates, which is what makes the nurture-specific channel rules
|
|
1578
|
+
* fire. A client-supplied kind would either be ignored or, worse, look
|
|
1579
|
+
* honoured.
|
|
1580
|
+
*/
|
|
1581
|
+
export interface NurtureCreateRequest {
|
|
1582
|
+
/** Audience list whose contacts this nurture engages. */
|
|
1583
|
+
associated_list_id?: number | null;
|
|
1584
|
+
/** Studio campaign to link this nurture to. */
|
|
1585
|
+
campaign_builder_campaign_id?: string | null;
|
|
1586
|
+
/** Sending channels to attach. */
|
|
1587
|
+
channels?: Array<Record<string, unknown>>;
|
|
1588
|
+
description?: string | null;
|
|
1589
|
+
/** Stop nurturing a contact once they reply. */
|
|
1590
|
+
finish_on_reply?: boolean;
|
|
1591
|
+
/** Append the visible reply-opt-out CTA to email bodies. */
|
|
1592
|
+
include_unsubscribe_cta?: boolean;
|
|
1593
|
+
/** True makes the nurture visible org-wide. Requires an Admin or Owner role; see this router's note on org-scope promotion. */
|
|
1594
|
+
is_shared?: boolean;
|
|
1595
|
+
/** Nurture name. */
|
|
1596
|
+
name: string;
|
|
1597
|
+
/** The ONE mailbox this nurture sends from. Required: a nurture is pinned to a single sender so its consented audience always hears from the same address, and every email channel attached must use it. `validate_nurture_rules` rejects a nurture without one, so this is required here rather than left to fail deeper in. */
|
|
1598
|
+
pinned_mailbox_id: number;
|
|
1599
|
+
schedule_id?: string | null;
|
|
1600
|
+
/** Keep follow-ups in the original email thread. */
|
|
1601
|
+
send_in_same_thread?: boolean;
|
|
1602
|
+
/** Initial status. Nurtures start drafted. */
|
|
1603
|
+
status?: string;
|
|
1604
|
+
/** Sequence steps, in order. */
|
|
1605
|
+
steps?: Array<Record<string, unknown>>;
|
|
1606
|
+
textual_agent_name?: string | null;
|
|
1607
|
+
/** Owner of the nurture. Defaults to the identity the key was minted under. A PERSONAL nurture can only be owned by the caller - supplying anyone else's address with `is_shared=false` is a 403. */
|
|
1608
|
+
user_email?: string | null;
|
|
1609
|
+
voice_agent_name?: string | null;
|
|
1610
|
+
wait_for_new_contacts?: boolean;
|
|
1611
|
+
}
|
|
1612
|
+
|
|
1613
|
+
/**
|
|
1614
|
+
* Copy a nurture. The copy is always owned by the caller and starts drafted.
|
|
1615
|
+
*
|
|
1616
|
+
* `user_email` is deliberately absent: the app pins the copy's owner to the
|
|
1617
|
+
* caller regardless of what is sent, so accepting the field would advertise
|
|
1618
|
+
* control the endpoint does not grant.
|
|
1619
|
+
*/
|
|
1620
|
+
export interface NurtureDuplicateRequest {
|
|
1621
|
+
/** Give the copy a fresh contacts list instead of reusing the source's. */
|
|
1622
|
+
is_new_list?: boolean | null;
|
|
1623
|
+
/** Share setting for the copy. Omit to INHERIT the source's setting - which means duplicating an already-shared nurture still needs Admin/Owner even though this field was never sent. */
|
|
1624
|
+
is_shared?: boolean | null;
|
|
1625
|
+
/** Name for the copy. Defaults to the source name with ' (Copy)' appended. */
|
|
1626
|
+
name?: string | null;
|
|
1627
|
+
/** Existing list for the copy. Ignored unless `is_new_list` is true. */
|
|
1628
|
+
new_list_id?: number | null;
|
|
1629
|
+
}
|
|
1630
|
+
|
|
1631
|
+
/** A page of nurtures the caller may see - their own plus org-shared. */
|
|
1632
|
+
export interface NurtureListResponse {
|
|
1633
|
+
nurtures?: Array<NurtureResponse>;
|
|
1634
|
+
total?: number;
|
|
1635
|
+
[key: string]: unknown;
|
|
1636
|
+
}
|
|
1637
|
+
|
|
1638
|
+
/** One nurture sequence. */
|
|
1639
|
+
export interface NurtureResponse {
|
|
1640
|
+
created_at?: string | null;
|
|
1641
|
+
id?: string | null;
|
|
1642
|
+
/** True when visible org-wide. */
|
|
1643
|
+
is_shared?: boolean | null;
|
|
1644
|
+
name?: string | null;
|
|
1645
|
+
/** draft, live, paused, completed, terminated. */
|
|
1646
|
+
status?: string | null;
|
|
1647
|
+
updated_at?: string | null;
|
|
1648
|
+
[key: string]: unknown;
|
|
1649
|
+
}
|
|
1650
|
+
|
|
1651
|
+
/** Patch a nurture. Every field optional; omit one to leave it unchanged. */
|
|
1652
|
+
export interface NurtureUpdateRequest {
|
|
1653
|
+
appointment_id?: number | null;
|
|
1654
|
+
associated_list_id?: number | null;
|
|
1655
|
+
description?: string | null;
|
|
1656
|
+
finish_on_reply?: boolean | null;
|
|
1657
|
+
include_unsubscribe_cta?: boolean | null;
|
|
1658
|
+
/** Set true to promote the nurture to org scope. Admin/Owner only - this is the one field on this model that is permission-gated. */
|
|
1659
|
+
is_shared?: boolean | null;
|
|
1660
|
+
name?: string | null;
|
|
1661
|
+
schedule_id?: string | null;
|
|
1662
|
+
send_in_same_thread?: boolean | null;
|
|
1663
|
+
textual_agent_name?: string | null;
|
|
1664
|
+
voice_agent_name?: string | null;
|
|
1665
|
+
wait_for_new_contacts?: boolean | null;
|
|
1666
|
+
}
|
|
1667
|
+
|
|
1668
|
+
export interface PaginationMeta {
|
|
1669
|
+
/** Whether there are more pages */
|
|
1670
|
+
has_next: boolean;
|
|
1671
|
+
/** Items per page */
|
|
1672
|
+
limit: number;
|
|
1673
|
+
/** Opaque cursor for the next page; null when there are no more items. Pass it back as the `cursor` query param to fetch the following page without computing page numbers. */
|
|
1674
|
+
next_cursor?: string | null;
|
|
1675
|
+
/** Current page number (1-indexed) */
|
|
1676
|
+
page: number;
|
|
1677
|
+
/** Total number of items */
|
|
1678
|
+
total: number;
|
|
1679
|
+
}
|
|
1680
|
+
|
|
1681
|
+
/** Detach senders from a sequence. Mirrors `BulkArchiveChannelParams`. */
|
|
1682
|
+
export interface RemoveChannelsRequest {
|
|
1683
|
+
/** Sequence-channel ids, from `GET .../channels`. */
|
|
1684
|
+
channel_ids: Array<string>;
|
|
1685
|
+
}
|
|
1686
|
+
|
|
1687
|
+
/** The weekly window. A day left out is a day nothing is sent. */
|
|
1688
|
+
export interface SendingWeek {
|
|
1689
|
+
friday?: SendingWindow | null;
|
|
1690
|
+
monday?: SendingWindow | null;
|
|
1691
|
+
saturday?: SendingWindow | null;
|
|
1692
|
+
sunday?: SendingWindow | null;
|
|
1693
|
+
thursday?: SendingWindow | null;
|
|
1694
|
+
tuesday?: SendingWindow | null;
|
|
1695
|
+
wednesday?: SendingWindow | null;
|
|
1696
|
+
}
|
|
1697
|
+
|
|
1698
|
+
/**
|
|
1699
|
+
* One day's sending window. `start` must be EARLIER than `end`.
|
|
1700
|
+
*
|
|
1701
|
+
* Overnight windows are not supported - model them as two days. The app
|
|
1702
|
+
* rejects an inverted or zero-length window, and so does this.
|
|
1703
|
+
*/
|
|
1704
|
+
export interface SendingWindow {
|
|
1705
|
+
/** `HH:MM`, 24-hour. */
|
|
1706
|
+
end: string;
|
|
1707
|
+
/** `HH:MM`, 24-hour. */
|
|
1708
|
+
start: string;
|
|
1709
|
+
}
|
|
1710
|
+
|
|
1711
|
+
export interface SequenceActionResponse {
|
|
1712
|
+
contacts_affected?: number;
|
|
1713
|
+
sequence_id: string;
|
|
1714
|
+
status: string;
|
|
1715
|
+
}
|
|
1716
|
+
|
|
1717
|
+
/** Link a sequence to a Studio campaign. */
|
|
1718
|
+
export interface SequenceCampaignLinkRequest {
|
|
1719
|
+
/** Studio campaign id to link. */
|
|
1720
|
+
campaign_id: string;
|
|
1721
|
+
}
|
|
1722
|
+
|
|
1723
|
+
export interface SequenceContactItem {
|
|
1724
|
+
contact_id?: number | null;
|
|
1725
|
+
created_at?: string | null;
|
|
1726
|
+
current_step_order?: number | null;
|
|
1727
|
+
id?: string | null;
|
|
1728
|
+
state?: string | null;
|
|
1729
|
+
updated_at?: string | null;
|
|
1730
|
+
}
|
|
1731
|
+
|
|
1732
|
+
export interface SequenceDetailResponse {
|
|
1733
|
+
appointment_id?: number | null;
|
|
1734
|
+
associated_list_id?: number | null;
|
|
1735
|
+
created_at?: string | null;
|
|
1736
|
+
description?: string | null;
|
|
1737
|
+
finish_on_reply?: boolean;
|
|
1738
|
+
id: string;
|
|
1739
|
+
name?: string | null;
|
|
1740
|
+
paused_at?: string | null;
|
|
1741
|
+
pinned_mailbox_id?: number | null;
|
|
1742
|
+
resumed_at?: string | null;
|
|
1743
|
+
schedule_id?: string | null;
|
|
1744
|
+
send_in_same_thread?: boolean;
|
|
1745
|
+
sequence_kind?: string | null;
|
|
1746
|
+
status?: string | null;
|
|
1747
|
+
textual_agent_name?: string | null;
|
|
1748
|
+
updated_at?: string | null;
|
|
1749
|
+
user_email?: string | null;
|
|
1750
|
+
voice_agent_name?: string | null;
|
|
1751
|
+
wait_for_new_contacts?: boolean;
|
|
1752
|
+
}
|
|
1753
|
+
|
|
1754
|
+
/**
|
|
1755
|
+
* Copy a sequence. The copy is owned by the caller and starts drafted.
|
|
1756
|
+
*
|
|
1757
|
+
* `user_email` is deliberately absent: the app pins the copy's owner to the
|
|
1758
|
+
* caller, so accepting the field would advertise control it does not grant.
|
|
1759
|
+
*/
|
|
1760
|
+
export interface SequenceDuplicateRequest {
|
|
1761
|
+
/** Give the copy a fresh contacts list instead of the source's. */
|
|
1762
|
+
is_new_list?: boolean | null;
|
|
1763
|
+
/** Share setting for the copy. Omit to INHERIT the source's - which means duplicating an already-shared sequence can still require Admin/Owner even though this field was never sent. */
|
|
1764
|
+
is_shared?: boolean | null;
|
|
1765
|
+
/** Name for the copy. Defaults to the source name with ' (Copy)' appended. */
|
|
1766
|
+
name?: string | null;
|
|
1767
|
+
/** Existing list for the copy. Ignored unless `is_new_list` is true. */
|
|
1768
|
+
new_list_id?: number | null;
|
|
1769
|
+
}
|
|
1770
|
+
|
|
1771
|
+
export interface SequenceListItem {
|
|
1772
|
+
associated_list_id?: number | null;
|
|
1773
|
+
contact_count?: number | null;
|
|
1774
|
+
created_at?: string | null;
|
|
1775
|
+
id: string;
|
|
1776
|
+
name?: string | null;
|
|
1777
|
+
sequence_kind?: string | null;
|
|
1778
|
+
status?: string | null;
|
|
1779
|
+
step_count?: number | null;
|
|
1780
|
+
updated_at?: string | null;
|
|
1781
|
+
user_email?: string | null;
|
|
1782
|
+
}
|
|
1783
|
+
|
|
1784
|
+
/** A sequence contact, report, step list or job status, as the app returns it. */
|
|
1785
|
+
export type SequenceOpsPayload = Record<string, unknown>;
|
|
1786
|
+
|
|
1787
|
+
/** One sequence, as the lifecycle endpoints return it. */
|
|
1788
|
+
export interface SequenceRecord {
|
|
1789
|
+
associated_list_id?: number | null;
|
|
1790
|
+
/** Linked Studio campaign, if any. */
|
|
1791
|
+
campaign_builder_campaign_id?: string | null;
|
|
1792
|
+
created_at?: string | null;
|
|
1793
|
+
id?: string | null;
|
|
1794
|
+
is_archived?: boolean | null;
|
|
1795
|
+
is_shared?: boolean | null;
|
|
1796
|
+
name?: string | null;
|
|
1797
|
+
sequence_kind?: string | null;
|
|
1798
|
+
status?: string | null;
|
|
1799
|
+
updated_at?: string | null;
|
|
1800
|
+
/** Owner. */
|
|
1801
|
+
user_email?: string | null;
|
|
1802
|
+
[key: string]: unknown;
|
|
1803
|
+
}
|
|
1804
|
+
|
|
1805
|
+
/**
|
|
1806
|
+
* Approximate provider-routing and suppression breakdown for the list.
|
|
1807
|
+
*
|
|
1808
|
+
* Two properties a caller must not lose:
|
|
1809
|
+
*
|
|
1810
|
+
* * APPROXIMATE - computed by scanning up to 10,000 recipients, not all of
|
|
1811
|
+
* them.
|
|
1812
|
+
* * FAIL-OPEN - on any error every count is zero, so an all-zero summary
|
|
1813
|
+
* means "could not compute" just as much as "nothing matched". Do not
|
|
1814
|
+
* render it as a confident zero.
|
|
1815
|
+
*
|
|
1816
|
+
* Each recipient counts toward exactly ONE bucket, suppression taking
|
|
1817
|
+
* precedence over routing (bounce > seg > personal), so the buckets are a
|
|
1818
|
+
* partition and must not be summed alongside each other as if they overlap.
|
|
1819
|
+
*/
|
|
1820
|
+
export interface SequenceRoutingSummary {
|
|
1821
|
+
bounce_suppressed_count?: number;
|
|
1822
|
+
google_count?: number;
|
|
1823
|
+
m365_count?: number;
|
|
1824
|
+
other_count?: number;
|
|
1825
|
+
personal_suppressed_count?: number;
|
|
1826
|
+
/** How many recipients were actually scanned (capped at 10,000). */
|
|
1827
|
+
scanned_count?: number | null;
|
|
1828
|
+
seg_suppressed_count?: number;
|
|
1829
|
+
[key: string]: unknown;
|
|
1830
|
+
}
|
|
1831
|
+
|
|
1832
|
+
/**
|
|
1833
|
+
* Per-step delivery and engagement counts for a sequence.
|
|
1834
|
+
*
|
|
1835
|
+
* `skip_reason_breakdown` is SEQUENCE-level and counted ONCE per contact, so
|
|
1836
|
+
* its total can be LESS than the sum of the per-step `skipped` tiles: the
|
|
1837
|
+
* durable-LinkedIn-skip cascade writes one receipt per contiguous LinkedIn
|
|
1838
|
+
* step, and a skip with no recorded reason is omitted entirely. Presenting
|
|
1839
|
+
* the two as if they must reconcile is wrong.
|
|
1840
|
+
*/
|
|
1841
|
+
export interface SequenceStats {
|
|
1842
|
+
/** Distinct terminal-skipped contacts by raw skip-reason token, e.g. `skipped_too_distant`. Sequence-level, counted once per contact. */
|
|
1843
|
+
skip_reason_breakdown?: Record<string, number>;
|
|
1844
|
+
step_stats?: Array<Record<string, unknown>>;
|
|
1845
|
+
total_contacts?: number;
|
|
1846
|
+
[key: string]: unknown;
|
|
1847
|
+
}
|
|
1848
|
+
|
|
1849
|
+
/**
|
|
1850
|
+
* Drive the sequence status machine directly.
|
|
1851
|
+
*
|
|
1852
|
+
* Prefer the named transitions (`/launch`, `/pause`, `/resume`,
|
|
1853
|
+
* `/terminate`, `/archive`) - each runs the wind-down, scheduling and event
|
|
1854
|
+
* work that belongs to it. This endpoint SETS THE STATUS, and the app's
|
|
1855
|
+
* state machine is what rejects an illegal transition.
|
|
1856
|
+
*/
|
|
1857
|
+
export interface SequenceStatusRequest {
|
|
1858
|
+
/** Target status: drafted, scheduling, live, pausing, paused, resuming, terminating, terminated, completed or waiting. Declared as an open string rather than an enum so a status the sequencer adds is not rejected by a stale copy here - the app's own `SequenceStatus` enum is the source of truth and an unknown value comes back as a 422 that LISTS the valid set. */
|
|
1859
|
+
status: string;
|
|
1860
|
+
}
|
|
1861
|
+
|
|
1862
|
+
/** One step of a sequence template. Mirrors `SequenceTemplateStep`. */
|
|
1863
|
+
export interface SequenceTemplateStep {
|
|
1864
|
+
input_type: "ON_DEMAND" | "AI_GENERATED_TEMPLATE" | "MANUAL_TEMPLATE";
|
|
1865
|
+
name: string;
|
|
1866
|
+
/** The step's content: `subject` / `body` for email, `message_body` for SMS and WhatsApp, the `linkedin_*` fields for LinkedIn, `instructions` for AI generation. The same shape as `step_data` on `GET /sequences/{sequence_id}/steps`. */
|
|
1867
|
+
step_data: Record<string, unknown>;
|
|
1868
|
+
step_order: number;
|
|
1869
|
+
step_type: "PHONE" | "EMAIL" | "MANUAL_DIALER" | "HEYREACH" | "NETRION" | "SMS" | "WHATSAPP";
|
|
1870
|
+
/** Seconds after the previous step. */
|
|
1871
|
+
time_interval?: number | null;
|
|
1872
|
+
}
|
|
1873
|
+
|
|
1874
|
+
/** An open envelope around a LIST of sequencer records, as `items`. */
|
|
1875
|
+
export interface SequencerListPayload {
|
|
1876
|
+
items?: Array<unknown>;
|
|
1877
|
+
[key: string]: unknown;
|
|
1878
|
+
}
|
|
1879
|
+
|
|
1880
|
+
/**
|
|
1881
|
+
* An open envelope around one sequencer record.
|
|
1882
|
+
*
|
|
1883
|
+
* Open because templates, schedules and channels carry nested step data and
|
|
1884
|
+
* configuration that grows as channels are added.
|
|
1885
|
+
*/
|
|
1886
|
+
export type SequencerPayload = Record<string, unknown>;
|
|
1887
|
+
|
|
1888
|
+
/** Change a sending schedule. Mirrors `PatchScheduleParams`. */
|
|
1889
|
+
export interface UpdateSendingScheduleRequest {
|
|
1890
|
+
config?: SendingWeek | null;
|
|
1891
|
+
description?: string | null;
|
|
1892
|
+
name?: string | null;
|
|
1893
|
+
timezone?: string | null;
|
|
1894
|
+
}
|
|
1895
|
+
|
|
1896
|
+
/**
|
|
1897
|
+
* Change a sequence template. Mirrors `PatchSequenceTemplatePayload`.
|
|
1898
|
+
*
|
|
1899
|
+
* `steps`, when sent, REPLACES the template's steps rather than merging.
|
|
1900
|
+
*/
|
|
1901
|
+
export interface UpdateSequenceTemplateRequest {
|
|
1902
|
+
appointment_id?: number | null;
|
|
1903
|
+
description?: string | null;
|
|
1904
|
+
name?: string | null;
|
|
1905
|
+
schedule_id?: string | null;
|
|
1906
|
+
steps?: Array<SequenceTemplateStep> | null;
|
|
1907
|
+
textual_agent_name?: string | null;
|
|
1908
|
+
voice_agent_name?: string | null;
|
|
1909
|
+
}
|
|
1910
|
+
|
|
1911
|
+
/**
|
|
1912
|
+
* Change a step template. Mirrors `PatchStepTemplatePayload`.
|
|
1913
|
+
*
|
|
1914
|
+
* There is no `input_type` here because the app's patch has none: a
|
|
1915
|
+
* template's input type is fixed at creation.
|
|
1916
|
+
*/
|
|
1917
|
+
export interface UpdateStepTemplateRequest {
|
|
1918
|
+
name?: string | null;
|
|
1919
|
+
step_data?: Record<string, unknown> | null;
|
|
1920
|
+
step_type?: ("PHONE" | "EMAIL" | "MANUAL_DIALER" | "HEYREACH" | "NETRION" | "SMS" | "WHATSAPP") | null;
|
|
1921
|
+
}
|
|
1922
|
+
|
|
1923
|
+
/** Place one test call from a voice step. Mirrors `DryRunCallPayload`. */
|
|
1924
|
+
export interface VoiceTestCallRequest {
|
|
1925
|
+
/** The voice agent that runs the call. */
|
|
1926
|
+
agent_id: string;
|
|
1927
|
+
/** The test contact's email, as the agent would see it. */
|
|
1928
|
+
email: string;
|
|
1929
|
+
/** How the agent addresses the person it rings. */
|
|
1930
|
+
first_name: string;
|
|
1931
|
+
/** One of the organisation's numbers to call from. */
|
|
1932
|
+
from_phone: string;
|
|
1933
|
+
last_name: string;
|
|
1934
|
+
/** The number to ring. A REAL phone rings. */
|
|
1935
|
+
to_phone: string;
|
|
1936
|
+
}
|