@graph8/sdk 0.251.0 → 0.262.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.
Files changed (350) hide show
  1. package/README.md +9 -2
  2. package/dist/cli.js +216 -0
  3. package/dist/index.d.mts +105 -7
  4. package/dist/index.d.ts +105 -7
  5. package/dist/index.js +44 -3
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.mjs +44 -3
  8. package/dist/index.mjs.map +1 -1
  9. package/dist/react.d.mts +103 -7
  10. package/dist/react.d.ts +103 -7
  11. package/dist/react.js +62 -11
  12. package/dist/react.js.map +1 -1
  13. package/dist/react.mjs +53 -12
  14. package/dist/react.mjs.map +1 -1
  15. package/dist/types/README.md +7 -0
  16. package/dist/types/agency.d.ts +20 -0
  17. package/dist/types/agentSetup.d.ts +57 -0
  18. package/dist/types/api.d.ts +127 -0
  19. package/dist/types/appClient.d.ts +99 -0
  20. package/dist/types/appPlatform.d.ts +269 -0
  21. package/dist/types/appTokens.d.ts +125 -0
  22. package/dist/types/apps.d.ts +130 -0
  23. package/dist/types/audiences.d.ts +88 -0
  24. package/dist/types/calendar.d.ts +55 -0
  25. package/dist/types/campaigns.d.ts +61 -0
  26. package/dist/types/chat.d.ts +35 -0
  27. package/dist/types/cli.d.ts +14 -0
  28. package/dist/types/companies.d.ts +123 -0
  29. package/dist/types/contacts.d.ts +200 -0
  30. package/dist/types/copilot.d.ts +31 -0
  31. package/dist/types/core.d.ts +1052 -0
  32. package/dist/types/deals.d.ts +215 -0
  33. package/dist/types/enrich.d.ts +51 -0
  34. package/dist/types/fields.d.ts +84 -0
  35. package/dist/types/forms.d.ts +16 -0
  36. package/dist/types/http.d.ts +141 -0
  37. package/dist/types/inbox.d.ts +123 -0
  38. package/dist/types/index.d.ts +63 -0
  39. package/dist/types/intent.d.ts +196 -0
  40. package/dist/types/lists.d.ts +44 -0
  41. package/dist/types/mailboxes.d.ts +240 -0
  42. package/dist/types/marketplace.d.ts +62 -0
  43. package/dist/types/meetings.d.ts +70 -0
  44. package/dist/types/newsletter.d.ts +212 -0
  45. package/dist/types/notes.d.ts +57 -0
  46. package/dist/types/objects.d.ts +281 -0
  47. package/dist/types/pipelines.d.ts +135 -0
  48. package/dist/types/quotes.d.ts +143 -0
  49. package/dist/types/react.d.ts +978 -0
  50. package/dist/types/search.d.ts +99 -0
  51. package/dist/types/sequences.d.ts +255 -0
  52. package/dist/types/signals.d.ts +28 -0
  53. package/dist/types/skills.d.ts +176 -0
  54. package/dist/types/snippet.d.ts +24 -0
  55. package/dist/types/studio.d.ts +161 -0
  56. package/dist/types/tasks.d.ts +101 -0
  57. package/dist/types/types.d.ts +45 -0
  58. package/dist/types/utils.d.ts +21 -0
  59. package/dist/types/version.d.ts +10 -0
  60. package/dist/types/visitors.d.ts +29 -0
  61. package/dist/types/voice.d.ts +304 -0
  62. package/dist/types/webhooks.d.ts +71 -0
  63. package/dist/types/workflows.d.ts +229 -0
  64. package/docs/agents.md +748 -0
  65. package/docs/api/README.md +165 -0
  66. package/docs/api/accounts.d.ts +396 -0
  67. package/docs/api/accounts.md +644 -0
  68. package/docs/api/adCampaigns.d.ts +707 -0
  69. package/docs/api/adCampaigns.md +1091 -0
  70. package/docs/api/adCreatives.d.ts +996 -0
  71. package/docs/api/adCreatives.md +1708 -0
  72. package/docs/api/agency.d.ts +556 -0
  73. package/docs/api/agency.md +845 -0
  74. package/docs/api/agent.d.ts +330 -0
  75. package/docs/api/agent.md +514 -0
  76. package/docs/api/agents.d.ts +1622 -0
  77. package/docs/api/agents.md +2860 -0
  78. package/docs/api/aiInbox.d.ts +1984 -0
  79. package/docs/api/aiInbox.md +3490 -0
  80. package/docs/api/analytics.d.ts +1273 -0
  81. package/docs/api/analytics.md +2095 -0
  82. package/docs/api/apiKeys.d.ts +252 -0
  83. package/docs/api/apiKeys.md +318 -0
  84. package/docs/api/appDeployments.d.ts +236 -0
  85. package/docs/api/appDeployments.md +471 -0
  86. package/docs/api/appDomains.d.ts +171 -0
  87. package/docs/api/appDomains.md +281 -0
  88. package/docs/api/appLogs.d.ts +120 -0
  89. package/docs/api/appLogs.md +159 -0
  90. package/docs/api/appObjects.d.ts +415 -0
  91. package/docs/api/appObjects.md +568 -0
  92. package/docs/api/appPages.d.ts +557 -0
  93. package/docs/api/appPages.md +796 -0
  94. package/docs/api/appPlatformTokens.d.ts +123 -0
  95. package/docs/api/appPlatformTokens.md +172 -0
  96. package/docs/api/appointments.d.ts +2361 -0
  97. package/docs/api/appointments.md +3917 -0
  98. package/docs/api/apps.d.ts +822 -0
  99. package/docs/api/apps.md +1342 -0
  100. package/docs/api/assertUpsert.d.ts +286 -0
  101. package/docs/api/assertUpsert.md +370 -0
  102. package/docs/api/audienceSyncs.d.ts +259 -0
  103. package/docs/api/audienceSyncs.md +395 -0
  104. package/docs/api/brandKit.d.ts +686 -0
  105. package/docs/api/brandKit.md +1133 -0
  106. package/docs/api/bugReports.d.ts +181 -0
  107. package/docs/api/bugReports.md +268 -0
  108. package/docs/api/by-path.md +3260 -0
  109. package/docs/api/calendarInvites.d.ts +117 -0
  110. package/docs/api/calendarInvites.md +148 -0
  111. package/docs/api/campaignWorkflows.d.ts +152 -0
  112. package/docs/api/campaignWorkflows.md +200 -0
  113. package/docs/api/campaigns.d.ts +721 -0
  114. package/docs/api/campaigns.md +1236 -0
  115. package/docs/api/channels.d.ts +171 -0
  116. package/docs/api/channels.md +235 -0
  117. package/docs/api/cliCampaigns.d.ts +205 -0
  118. package/docs/api/cliCampaigns.md +256 -0
  119. package/docs/api/cliPipelines.d.ts +324 -0
  120. package/docs/api/cliPipelines.md +562 -0
  121. package/docs/api/clickHouse.d.ts +115 -0
  122. package/docs/api/clickHouse.md +138 -0
  123. package/docs/api/companies.d.ts +1636 -0
  124. package/docs/api/companies.md +2211 -0
  125. package/docs/api/companyIntelligence.d.ts +299 -0
  126. package/docs/api/companyIntelligence.md +488 -0
  127. package/docs/api/contacts.d.ts +2173 -0
  128. package/docs/api/contacts.md +3143 -0
  129. package/docs/api/content.d.ts +968 -0
  130. package/docs/api/content.md +1667 -0
  131. package/docs/api/contentGridSkills.d.ts +177 -0
  132. package/docs/api/contentGridSkills.md +271 -0
  133. package/docs/api/copilot.d.ts +1017 -0
  134. package/docs/api/copilot.md +1765 -0
  135. package/docs/api/crmSyncs.d.ts +215 -0
  136. package/docs/api/crmSyncs.md +301 -0
  137. package/docs/api/customerSuccess.d.ts +491 -0
  138. package/docs/api/customerSuccess.md +776 -0
  139. package/docs/api/deals.d.ts +1697 -0
  140. package/docs/api/deals.md +2436 -0
  141. package/docs/api/deliverability.d.ts +418 -0
  142. package/docs/api/deliverability.md +677 -0
  143. package/docs/api/desk.d.ts +1765 -0
  144. package/docs/api/desk.md +3007 -0
  145. package/docs/api/dialer.d.ts +1185 -0
  146. package/docs/api/dialer.md +2166 -0
  147. package/docs/api/dialerAnalytics.d.ts +187 -0
  148. package/docs/api/dialerAnalytics.md +257 -0
  149. package/docs/api/documents.d.ts +895 -0
  150. package/docs/api/documents.md +1440 -0
  151. package/docs/api/duplicates.d.ts +195 -0
  152. package/docs/api/duplicates.md +315 -0
  153. package/docs/api/eSign.d.ts +38 -0
  154. package/docs/api/eSign.md +54 -0
  155. package/docs/api/eSignature.d.ts +242 -0
  156. package/docs/api/eSignature.md +341 -0
  157. package/docs/api/enrichment.d.ts +3207 -0
  158. package/docs/api/enrichment.md +5225 -0
  159. package/docs/api/events.d.ts +115 -0
  160. package/docs/api/events.md +105 -0
  161. package/docs/api/fields.d.ts +482 -0
  162. package/docs/api/fields.md +566 -0
  163. package/docs/api/forms.d.ts +1012 -0
  164. package/docs/api/forms.md +1542 -0
  165. package/docs/api/gtmCampaigns.d.ts +662 -0
  166. package/docs/api/gtmCampaigns.md +1044 -0
  167. package/docs/api/gtmContext.d.ts +1187 -0
  168. package/docs/api/gtmContext.md +2112 -0
  169. package/docs/api/gtmDeliverability.d.ts +60 -0
  170. package/docs/api/gtmDeliverability.md +63 -0
  171. package/docs/api/gtmKnowledgeBase.d.ts +76 -0
  172. package/docs/api/gtmKnowledgeBase.md +91 -0
  173. package/docs/api/gtmLaunchHelpers.d.ts +123 -0
  174. package/docs/api/gtmLaunchHelpers.md +148 -0
  175. package/docs/api/gtmLibrary.d.ts +448 -0
  176. package/docs/api/gtmLibrary.md +780 -0
  177. package/docs/api/health.d.ts +39 -0
  178. package/docs/api/health.md +58 -0
  179. package/docs/api/imageLibrary.d.ts +341 -0
  180. package/docs/api/imageLibrary.md +569 -0
  181. package/docs/api/imports.d.ts +157 -0
  182. package/docs/api/imports.md +174 -0
  183. package/docs/api/inbox.d.ts +709 -0
  184. package/docs/api/inbox.md +1067 -0
  185. package/docs/api/install.d.ts +213 -0
  186. package/docs/api/install.md +317 -0
  187. package/docs/api/installedApps.d.ts +131 -0
  188. package/docs/api/installedApps.md +241 -0
  189. package/docs/api/integrationStatus.d.ts +142 -0
  190. package/docs/api/integrationStatus.md +205 -0
  191. package/docs/api/integrations.d.ts +2327 -0
  192. package/docs/api/integrations.md +3791 -0
  193. package/docs/api/intent.d.ts +482 -0
  194. package/docs/api/intent.md +858 -0
  195. package/docs/api/knowledge.d.ts +501 -0
  196. package/docs/api/knowledge.md +843 -0
  197. package/docs/api/knowledgeBase.d.ts +84 -0
  198. package/docs/api/knowledgeBase.md +96 -0
  199. package/docs/api/landingPages.d.ts +1411 -0
  200. package/docs/api/landingPages.md +2488 -0
  201. package/docs/api/leads.d.ts +133 -0
  202. package/docs/api/leads.md +180 -0
  203. package/docs/api/library.d.ts +217 -0
  204. package/docs/api/library.md +338 -0
  205. package/docs/api/linkedIn.d.ts +227 -0
  206. package/docs/api/linkedIn.md +289 -0
  207. package/docs/api/linkedInOutreach.d.ts +727 -0
  208. package/docs/api/linkedInOutreach.md +990 -0
  209. package/docs/api/lists.d.ts +1106 -0
  210. package/docs/api/lists.md +1609 -0
  211. package/docs/api/logs.d.ts +71 -0
  212. package/docs/api/logs.md +70 -0
  213. package/docs/api/mailboxes.d.ts +1050 -0
  214. package/docs/api/mailboxes.md +1690 -0
  215. package/docs/api/marketingIntelligence.d.ts +256 -0
  216. package/docs/api/marketingIntelligence.md +454 -0
  217. package/docs/api/marketplace.d.ts +3173 -0
  218. package/docs/api/marketplace.md +5953 -0
  219. package/docs/api/mcp.d.ts +69 -0
  220. package/docs/api/mcp.md +69 -0
  221. package/docs/api/me.d.ts +54 -0
  222. package/docs/api/me.md +56 -0
  223. package/docs/api/meetings.d.ts +539 -0
  224. package/docs/api/meetings.md +747 -0
  225. package/docs/api/newsletter.d.ts +1613 -0
  226. package/docs/api/newsletter.md +2746 -0
  227. package/docs/api/notes.d.ts +517 -0
  228. package/docs/api/notes.md +888 -0
  229. package/docs/api/notifications.d.ts +94 -0
  230. package/docs/api/notifications.md +105 -0
  231. package/docs/api/objects.d.ts +621 -0
  232. package/docs/api/objects.md +1098 -0
  233. package/docs/api/openSearch.d.ts +234 -0
  234. package/docs/api/openSearch.md +297 -0
  235. package/docs/api/ops.d.ts +299 -0
  236. package/docs/api/ops.md +339 -0
  237. package/docs/api/orgGovernance.d.ts +393 -0
  238. package/docs/api/orgGovernance.md +623 -0
  239. package/docs/api/orgVideos.d.ts +184 -0
  240. package/docs/api/orgVideos.md +252 -0
  241. package/docs/api/organizationSettings.d.ts +626 -0
  242. package/docs/api/organizationSettings.md +911 -0
  243. package/docs/api/phoneNumbers.d.ts +484 -0
  244. package/docs/api/phoneNumbers.md +777 -0
  245. package/docs/api/profile.d.ts +329 -0
  246. package/docs/api/profile.md +540 -0
  247. package/docs/api/programmaticPages.d.ts +400 -0
  248. package/docs/api/programmaticPages.md +626 -0
  249. package/docs/api/providerDomains.d.ts +866 -0
  250. package/docs/api/providerDomains.md +1446 -0
  251. package/docs/api/providerUsage.d.ts +129 -0
  252. package/docs/api/providerUsage.md +186 -0
  253. package/docs/api/public.d.ts +69 -0
  254. package/docs/api/public.md +78 -0
  255. package/docs/api/publicCopilot.d.ts +67 -0
  256. package/docs/api/publicCopilot.md +80 -0
  257. package/docs/api/publicSignals.d.ts +66 -0
  258. package/docs/api/publicSignals.md +71 -0
  259. package/docs/api/publicVisitors.d.ts +97 -0
  260. package/docs/api/publicVisitors.md +118 -0
  261. package/docs/api/quotes.d.ts +1564 -0
  262. package/docs/api/quotes.md +2553 -0
  263. package/docs/api/radar.d.ts +808 -0
  264. package/docs/api/radar.md +1431 -0
  265. package/docs/api/radarReports.d.ts +208 -0
  266. package/docs/api/radarReports.md +306 -0
  267. package/docs/api/recordRoles.d.ts +143 -0
  268. package/docs/api/recordRoles.md +175 -0
  269. package/docs/api/repos.d.ts +146 -0
  270. package/docs/api/repos.md +211 -0
  271. package/docs/api/research.d.ts +295 -0
  272. package/docs/api/research.md +534 -0
  273. package/docs/api/revenue.d.ts +402 -0
  274. package/docs/api/revenue.md +608 -0
  275. package/docs/api/revenueAnalytics.d.ts +147 -0
  276. package/docs/api/revenueAnalytics.md +212 -0
  277. package/docs/api/revenueLifecycle.d.ts +207 -0
  278. package/docs/api/revenueLifecycle.md +274 -0
  279. package/docs/api/revenueRecords.d.ts +372 -0
  280. package/docs/api/revenueRecords.md +563 -0
  281. package/docs/api/roles.d.ts +431 -0
  282. package/docs/api/roles.md +812 -0
  283. package/docs/api/salesCoach.d.ts +877 -0
  284. package/docs/api/salesCoach.md +1540 -0
  285. package/docs/api/sandbox.d.ts +210 -0
  286. package/docs/api/sandbox.md +380 -0
  287. package/docs/api/scans.d.ts +104 -0
  288. package/docs/api/scans.md +136 -0
  289. package/docs/api/scheduleBuy.d.ts +293 -0
  290. package/docs/api/scheduleBuy.md +431 -0
  291. package/docs/api/scraping.d.ts +266 -0
  292. package/docs/api/scraping.md +383 -0
  293. package/docs/api/sdrAnalytics.d.ts +138 -0
  294. package/docs/api/sdrAnalytics.md +246 -0
  295. package/docs/api/search.d.ts +598 -0
  296. package/docs/api/search.md +866 -0
  297. package/docs/api/seo.d.ts +447 -0
  298. package/docs/api/seo.md +660 -0
  299. package/docs/api/sequenceLifecycle.d.ts +439 -0
  300. package/docs/api/sequenceLifecycle.md +513 -0
  301. package/docs/api/sequences.d.ts +1936 -0
  302. package/docs/api/sequences.md +3232 -0
  303. package/docs/api/settings.d.ts +448 -0
  304. package/docs/api/settings.md +731 -0
  305. package/docs/api/signals.d.ts +1441 -0
  306. package/docs/api/signals.md +2526 -0
  307. package/docs/api/signatures.d.ts +719 -0
  308. package/docs/api/signatures.md +1247 -0
  309. package/docs/api/skills.d.ts +230 -0
  310. package/docs/api/skills.md +466 -0
  311. package/docs/api/snippet.d.ts +85 -0
  312. package/docs/api/snippet.md +106 -0
  313. package/docs/api/socialPublishing.d.ts +824 -0
  314. package/docs/api/socialPublishing.md +1245 -0
  315. package/docs/api/studioDocuments.d.ts +244 -0
  316. package/docs/api/studioDocuments.md +348 -0
  317. package/docs/api/support.d.ts +90 -0
  318. package/docs/api/support.md +76 -0
  319. package/docs/api/suppressions.d.ts +241 -0
  320. package/docs/api/suppressions.md +343 -0
  321. package/docs/api/surveys.d.ts +847 -0
  322. package/docs/api/surveys.md +1223 -0
  323. package/docs/api/tasks.d.ts +813 -0
  324. package/docs/api/tasks.md +1344 -0
  325. package/docs/api/teamMembers.d.ts +668 -0
  326. package/docs/api/teamMembers.md +1040 -0
  327. package/docs/api/teams.d.ts +784 -0
  328. package/docs/api/teams.md +1395 -0
  329. package/docs/api/usage.d.ts +277 -0
  330. package/docs/api/usage.md +389 -0
  331. package/docs/api/visitors.d.ts +690 -0
  332. package/docs/api/visitors.md +1075 -0
  333. package/docs/api/voice.d.ts +4661 -0
  334. package/docs/api/voice.md +7905 -0
  335. package/docs/api/webAnalytics.d.ts +964 -0
  336. package/docs/api/webAnalytics.md +1452 -0
  337. package/docs/api/webChat.d.ts +1704 -0
  338. package/docs/api/webChat.md +2048 -0
  339. package/docs/api/webhooks.d.ts +251 -0
  340. package/docs/api/webhooks.md +386 -0
  341. package/docs/api/websiteEditor.d.ts +324 -0
  342. package/docs/api/websiteEditor.md +517 -0
  343. package/docs/api/work.d.ts +2298 -0
  344. package/docs/api/work.md +3096 -0
  345. package/docs/api/workbench.d.ts +2962 -0
  346. package/docs/api/workbench.md +4884 -0
  347. package/docs/api/workflows.d.ts +1218 -0
  348. package/docs/api/workflows.md +2302 -0
  349. package/docs/sdk-clients.md +4339 -0
  350. 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
+ }