@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.
- package/README.md +9 -2
- package/dist/cli.js +216 -0
- package/dist/index.d.mts +105 -7
- package/dist/index.d.ts +105 -7
- package/dist/index.js +44 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +44 -3
- package/dist/index.mjs.map +1 -1
- package/dist/react.d.mts +103 -7
- package/dist/react.d.ts +103 -7
- package/dist/react.js +62 -11
- package/dist/react.js.map +1 -1
- package/dist/react.mjs +53 -12
- 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 +1697 -0
- package/docs/api/deals.md +2436 -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,1765 @@
|
|
|
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.desk` (Desk): 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<"apply_account_plan_desk_accounts__account_id__plan_apply_post">;
|
|
9
|
+
*
|
|
10
|
+
* Reference with examples: desk.md
|
|
11
|
+
*/
|
|
12
|
+
/* eslint-disable */
|
|
13
|
+
|
|
14
|
+
/** `g8.api.desk.<member>` -> the operationId it calls. */
|
|
15
|
+
export interface DeskMembers {
|
|
16
|
+
applyAccountPlan: "apply_account_plan_desk_accounts__account_id__plan_apply_post";
|
|
17
|
+
askDesk: "ask_desk_desk_ask_post";
|
|
18
|
+
checkCommitteePlay: "check_committee_play_desk_accounts__account_id__committee_plays__action_id__check_get";
|
|
19
|
+
checkDeskPlanStageSweep: "check_desk_plan_stage_sweep_desk_org_settings_plan_stages_check_get";
|
|
20
|
+
createOrReplanAccountPlan: "create_or_replan_account_plan_desk_accounts__account_id__plan_post";
|
|
21
|
+
decideDeskPlayApproval: "decide_desk_play_approval_desk_plays_approvals__execution_id__decide_post";
|
|
22
|
+
draftAccountPlan: "draft_account_plan_desk_accounts__account_id__plan_draft_post";
|
|
23
|
+
editAccountCommittee: "edit_account_committee_desk_accounts__account_id__committee_post";
|
|
24
|
+
findCommitteeMemberLinkedin: "find_committee_member_linkedin_desk_accounts__account_id__committee__contact_id__find_linkedin_post";
|
|
25
|
+
getAccountContext: "get_account_context_desk_accounts__account_id__context_get";
|
|
26
|
+
getAccountPlan: "get_account_plan_desk_accounts__account_id__plan_get";
|
|
27
|
+
getAccountPlanHistory: "get_account_plan_history_desk_accounts__account_id__plan_history_get";
|
|
28
|
+
getDeskAutonomy: "get_desk_autonomy_desk_autonomy_get";
|
|
29
|
+
getDeskBatch: "get_desk_batch_desk_batch_get";
|
|
30
|
+
getDeskBlockQueue: "get_desk_block_queue_desk_blocks__list_id__queue_get";
|
|
31
|
+
getDeskCallTarget: "get_desk_call_target_desk_decisions__decision_id__call_target_post";
|
|
32
|
+
getDeskCommitteeHeat: "get_desk_committee_heat_desk_committee_heat_get";
|
|
33
|
+
getDeskCommitteeTargets: "get_desk_committee_targets_desk_committee_targets_get";
|
|
34
|
+
getDeskComplianceSummary: "get_desk_compliance_summary_desk_compliance_summary_get";
|
|
35
|
+
getDeskContactCallTarget: "get_desk_contact_call_target_desk_contacts__contact_id__call_target_post";
|
|
36
|
+
getDeskCoverage: "get_desk_coverage_desk_coverage_get";
|
|
37
|
+
getDeskDecisionBrief: "get_desk_decision_brief_desk_decisions__decision_id__brief_get";
|
|
38
|
+
getDeskDecisionCardContext: "get_desk_decision_card_context_desk_decisions__decision_id__card_context_get";
|
|
39
|
+
getDeskDecisionConversation: "get_desk_decision_conversation_desk_decisions__decision_id__conversation_get";
|
|
40
|
+
getDeskHomeSummary: "get_desk_home_summary_desk_home_summary_get";
|
|
41
|
+
getDeskKickoff: "get_desk_kickoff_desk_kickoff_get";
|
|
42
|
+
getDeskKickoffAudio: "get_desk_kickoff_audio_desk_kickoff_audio_get";
|
|
43
|
+
getDeskLinkedinSender: "get_desk_linkedin_sender_desk_linkedin_sender_get";
|
|
44
|
+
getDeskListGoals: "get_desk_list_goals_desk_list_goals_get";
|
|
45
|
+
getDeskListGroupOverride: "get_desk_list_group_override_desk_list_group_override_get";
|
|
46
|
+
getDeskListPriority: "get_desk_list_priority_desk_list_priority_get";
|
|
47
|
+
getDeskNextBest: "get_desk_next_best_desk_next_best_get";
|
|
48
|
+
getDeskOrgSettings: "get_desk_org_settings_desk_org_settings_get";
|
|
49
|
+
getDeskPlayExecution: "get_desk_play_execution_desk_plays_executions__execution_id__get";
|
|
50
|
+
getDeskPulse: "get_desk_pulse_desk_pulse_get";
|
|
51
|
+
getDeskReplyTarget: "get_desk_reply_target_desk_decisions__decision_id__reply_target_post";
|
|
52
|
+
getDeskSmsTarget: "get_desk_sms_target_desk_decisions__decision_id__sms_target_post";
|
|
53
|
+
getDeskWrapped: "get_desk_wrapped_desk_wrapped_get";
|
|
54
|
+
improveDeskEmail: "improve_desk_email_desk_email_improve_post";
|
|
55
|
+
listAccountPlans: "list_account_plans_desk_accounts_plans_get";
|
|
56
|
+
listCommitteePlays: "list_committee_plays_desk_accounts__account_id__committee_plays_get";
|
|
57
|
+
listCompletedDeskDecisions: "list_completed_desk_decisions_desk_decisions_completed_get";
|
|
58
|
+
listDeskBlocks: "list_desk_blocks_desk_blocks_get";
|
|
59
|
+
listDeskCardPlays: "list_desk_card_plays_desk_decisions__decision_id__plays_get";
|
|
60
|
+
listDeskDecisions: "list_desk_decisions_desk_decisions_get";
|
|
61
|
+
listDeskPlayApprovals: "list_desk_play_approvals_desk_plays_approvals_get";
|
|
62
|
+
listDeskUpcoming: "list_desk_upcoming_desk_upcoming_get";
|
|
63
|
+
markDeskKickoffPlayed: "mark_desk_kickoff_played_desk_kickoff_played_post";
|
|
64
|
+
postDeskVoiceMemo: "post_desk_voice_memo_desk_voice_memo_post";
|
|
65
|
+
previewAccountPlan: "preview_account_plan_desk_accounts__account_id__plan_preview_post";
|
|
66
|
+
pullDeskBatch: "pull_desk_batch_desk_batch_pull_post";
|
|
67
|
+
replanDeskDecision: "replan_desk_decision_desk_decisions__decision_id__replan_post";
|
|
68
|
+
resolveDeskDecision: "resolve_desk_decision_desk_decisions__decision_id__resolve_post";
|
|
69
|
+
reviveDeskListGoal: "revive_desk_list_goal_desk_list_goals__list_id__revive_post";
|
|
70
|
+
runCommitteePlay: "run_committee_play_desk_accounts__account_id__committee_plays__action_id__run_post";
|
|
71
|
+
runDeskCardPlay: "run_desk_card_play_desk_decisions__decision_id__plays__action_id__run_post";
|
|
72
|
+
runDeskPlanStageSweep: "run_desk_plan_stage_sweep_desk_org_settings_plan_stages_run_post";
|
|
73
|
+
scoreDeskEmail: "score_desk_email_desk_email_score_post";
|
|
74
|
+
sendCommitteeLinkedinInvite: "send_committee_linkedin_invite_desk_accounts__account_id__committee__contact_id__linkedin_invite_post";
|
|
75
|
+
sendDeskReply: "send_desk_reply_desk_decisions__decision_id__send_reply_post";
|
|
76
|
+
sendDeskSms: "send_desk_sms_desk_decisions__decision_id__send_sms_post";
|
|
77
|
+
startDeskBatch: "start_desk_batch_desk_batch_start_post";
|
|
78
|
+
undoDeskDecision: "undo_desk_decision_desk_decisions__decision_id__undo_post";
|
|
79
|
+
unsnoozeDeskDecision: "unsnooze_desk_decision_desk_decisions__decision_id__unsnooze_post";
|
|
80
|
+
updateAccountPlanStep: "update_account_plan_step_desk_accounts__account_id__plan_steps__step_id__put";
|
|
81
|
+
updateDeskAutonomy: "update_desk_autonomy_desk_autonomy_put";
|
|
82
|
+
updateDeskLinkedinSender: "update_desk_linkedin_sender_desk_linkedin_sender_put";
|
|
83
|
+
updateDeskListGoal: "update_desk_list_goal_desk_list_goals_put";
|
|
84
|
+
updateDeskListGroupOverride: "update_desk_list_group_override_desk_list_group_override_put";
|
|
85
|
+
updateDeskListPriority: "update_desk_list_priority_desk_list_priority_put";
|
|
86
|
+
updateDeskOrgSettings: "update_desk_org_settings_desk_org_settings_put";
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/** Input and output of every `g8.api.desk` operation, keyed by operationId. */
|
|
90
|
+
export interface DeskOperations {
|
|
91
|
+
/**
|
|
92
|
+
* POST /desk/accounts/{account_id}/plan/apply
|
|
93
|
+
* Apply Account Plan
|
|
94
|
+
* tier: write · scope: deals:write
|
|
95
|
+
*/
|
|
96
|
+
apply_account_plan_desk_accounts__account_id__plan_apply_post: {
|
|
97
|
+
input: {
|
|
98
|
+
path: {
|
|
99
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
100
|
+
account_id: number;
|
|
101
|
+
};
|
|
102
|
+
headers?: {
|
|
103
|
+
"X-Target-Org-Id"?: string | null;
|
|
104
|
+
};
|
|
105
|
+
body: AccountPlanApplyRequest;
|
|
106
|
+
};
|
|
107
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* POST /desk/ask
|
|
111
|
+
* Ask Desk
|
|
112
|
+
* tier: billable · scope: deals:run
|
|
113
|
+
*/
|
|
114
|
+
ask_desk_desk_ask_post: {
|
|
115
|
+
input: {
|
|
116
|
+
headers?: {
|
|
117
|
+
"X-Target-Org-Id"?: string | null;
|
|
118
|
+
};
|
|
119
|
+
body: DeskAskRequest;
|
|
120
|
+
};
|
|
121
|
+
output: ApiResponse_DeskPayload_;
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* GET /desk/accounts/{account_id}/committee/plays/{action_id}/check
|
|
125
|
+
* Check Committee Play
|
|
126
|
+
* tier: read · scope: deals:read
|
|
127
|
+
*/
|
|
128
|
+
check_committee_play_desk_accounts__account_id__committee_plays__action_id__check_get: {
|
|
129
|
+
input: {
|
|
130
|
+
path: {
|
|
131
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
132
|
+
account_id: number;
|
|
133
|
+
/** Play id, from `.../committee/plays`. */
|
|
134
|
+
action_id: string;
|
|
135
|
+
};
|
|
136
|
+
headers?: {
|
|
137
|
+
"X-Target-Org-Id"?: string | null;
|
|
138
|
+
};
|
|
139
|
+
};
|
|
140
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
141
|
+
};
|
|
142
|
+
/**
|
|
143
|
+
* GET /desk/org-settings/plan-stages/check
|
|
144
|
+
* Check Desk Plan Stage Sweep
|
|
145
|
+
* tier: read · scope: deals:read
|
|
146
|
+
*/
|
|
147
|
+
check_desk_plan_stage_sweep_desk_org_settings_plan_stages_check_get: {
|
|
148
|
+
input: {
|
|
149
|
+
headers?: {
|
|
150
|
+
"X-Target-Org-Id"?: string | null;
|
|
151
|
+
};
|
|
152
|
+
};
|
|
153
|
+
output: ApiResponse_DeskPayload_;
|
|
154
|
+
};
|
|
155
|
+
/**
|
|
156
|
+
* POST /desk/accounts/{account_id}/plan
|
|
157
|
+
* Create Or Replan Account Plan
|
|
158
|
+
* tier: write · scope: deals:write
|
|
159
|
+
*/
|
|
160
|
+
create_or_replan_account_plan_desk_accounts__account_id__plan_post: {
|
|
161
|
+
input: {
|
|
162
|
+
path: {
|
|
163
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
164
|
+
account_id: number;
|
|
165
|
+
};
|
|
166
|
+
headers?: {
|
|
167
|
+
"X-Target-Org-Id"?: string | null;
|
|
168
|
+
};
|
|
169
|
+
body: AccountPlanUpsertRequest;
|
|
170
|
+
};
|
|
171
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* POST /desk/plays/approvals/{execution_id}/decide
|
|
175
|
+
* Decide Desk Play Approval
|
|
176
|
+
* tier: external · scope: deals:run
|
|
177
|
+
*/
|
|
178
|
+
decide_desk_play_approval_desk_plays_approvals__execution_id__decide_post: {
|
|
179
|
+
input: {
|
|
180
|
+
path: {
|
|
181
|
+
/** Paused workflow execution id. */
|
|
182
|
+
execution_id: string;
|
|
183
|
+
};
|
|
184
|
+
headers?: {
|
|
185
|
+
"X-Target-Org-Id"?: string | null;
|
|
186
|
+
};
|
|
187
|
+
body: DeskApprovalDecisionRequest;
|
|
188
|
+
};
|
|
189
|
+
output: ApiResponse_DeskPayload_;
|
|
190
|
+
};
|
|
191
|
+
/**
|
|
192
|
+
* POST /desk/accounts/{account_id}/plan/draft
|
|
193
|
+
* Draft Account Plan
|
|
194
|
+
* tier: billable · scope: deals:run
|
|
195
|
+
*/
|
|
196
|
+
draft_account_plan_desk_accounts__account_id__plan_draft_post: {
|
|
197
|
+
input: {
|
|
198
|
+
path: {
|
|
199
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
200
|
+
account_id: number;
|
|
201
|
+
};
|
|
202
|
+
headers?: {
|
|
203
|
+
"X-Target-Org-Id"?: string | null;
|
|
204
|
+
};
|
|
205
|
+
};
|
|
206
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
207
|
+
};
|
|
208
|
+
/**
|
|
209
|
+
* POST /desk/accounts/{account_id}/committee
|
|
210
|
+
* Edit Account Committee
|
|
211
|
+
* tier: write · scope: deals:write
|
|
212
|
+
*/
|
|
213
|
+
edit_account_committee_desk_accounts__account_id__committee_post: {
|
|
214
|
+
input: {
|
|
215
|
+
path: {
|
|
216
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
217
|
+
account_id: number;
|
|
218
|
+
};
|
|
219
|
+
headers?: {
|
|
220
|
+
"X-Target-Org-Id"?: string | null;
|
|
221
|
+
};
|
|
222
|
+
body: CommitteeEditRequest;
|
|
223
|
+
};
|
|
224
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
225
|
+
};
|
|
226
|
+
/**
|
|
227
|
+
* POST /desk/accounts/{account_id}/committee/{contact_id}/find-linkedin
|
|
228
|
+
* Find Committee Member Linkedin
|
|
229
|
+
* tier: billable · scope: deals:run
|
|
230
|
+
*/
|
|
231
|
+
find_committee_member_linkedin_desk_accounts__account_id__committee__contact_id__find_linkedin_post: {
|
|
232
|
+
input: {
|
|
233
|
+
path: {
|
|
234
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
235
|
+
account_id: number;
|
|
236
|
+
/** The committee member to look up. */
|
|
237
|
+
contact_id: number;
|
|
238
|
+
};
|
|
239
|
+
headers?: {
|
|
240
|
+
"X-Target-Org-Id"?: string | null;
|
|
241
|
+
};
|
|
242
|
+
};
|
|
243
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
244
|
+
};
|
|
245
|
+
/**
|
|
246
|
+
* GET /desk/accounts/{account_id}/context
|
|
247
|
+
* Get Account Context
|
|
248
|
+
* tier: read · scope: deals:read
|
|
249
|
+
*/
|
|
250
|
+
get_account_context_desk_accounts__account_id__context_get: {
|
|
251
|
+
input: {
|
|
252
|
+
path: {
|
|
253
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
254
|
+
account_id: number;
|
|
255
|
+
};
|
|
256
|
+
query?: {
|
|
257
|
+
activity_limit?: number;
|
|
258
|
+
};
|
|
259
|
+
headers?: {
|
|
260
|
+
"X-Target-Org-Id"?: string | null;
|
|
261
|
+
};
|
|
262
|
+
};
|
|
263
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
264
|
+
};
|
|
265
|
+
/**
|
|
266
|
+
* GET /desk/accounts/{account_id}/plan
|
|
267
|
+
* Get Account Plan
|
|
268
|
+
* tier: read · scope: deals:read
|
|
269
|
+
*/
|
|
270
|
+
get_account_plan_desk_accounts__account_id__plan_get: {
|
|
271
|
+
input: {
|
|
272
|
+
path: {
|
|
273
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
274
|
+
account_id: number;
|
|
275
|
+
};
|
|
276
|
+
headers?: {
|
|
277
|
+
"X-Target-Org-Id"?: string | null;
|
|
278
|
+
};
|
|
279
|
+
};
|
|
280
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
281
|
+
};
|
|
282
|
+
/**
|
|
283
|
+
* GET /desk/accounts/{account_id}/plan/history
|
|
284
|
+
* Get Account Plan History
|
|
285
|
+
* tier: read · scope: deals:read
|
|
286
|
+
*/
|
|
287
|
+
get_account_plan_history_desk_accounts__account_id__plan_history_get: {
|
|
288
|
+
input: {
|
|
289
|
+
path: {
|
|
290
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
291
|
+
account_id: number;
|
|
292
|
+
};
|
|
293
|
+
query?: {
|
|
294
|
+
limit?: number;
|
|
295
|
+
};
|
|
296
|
+
headers?: {
|
|
297
|
+
"X-Target-Org-Id"?: string | null;
|
|
298
|
+
};
|
|
299
|
+
};
|
|
300
|
+
output: ApiResponse_AccountPlanListPayload_;
|
|
301
|
+
};
|
|
302
|
+
/**
|
|
303
|
+
* GET /desk/autonomy
|
|
304
|
+
* Get Desk Autonomy
|
|
305
|
+
* tier: read · scope: deals:read
|
|
306
|
+
*/
|
|
307
|
+
get_desk_autonomy_desk_autonomy_get: {
|
|
308
|
+
input: {
|
|
309
|
+
headers?: {
|
|
310
|
+
"X-Target-Org-Id"?: string | null;
|
|
311
|
+
};
|
|
312
|
+
};
|
|
313
|
+
output: ApiResponse_DeskPayload_;
|
|
314
|
+
};
|
|
315
|
+
/**
|
|
316
|
+
* GET /desk/batch
|
|
317
|
+
* Get Desk Batch
|
|
318
|
+
* tier: read · scope: deals:read
|
|
319
|
+
*/
|
|
320
|
+
get_desk_batch_desk_batch_get: {
|
|
321
|
+
input: {
|
|
322
|
+
query?: {
|
|
323
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). A batch is scoped to the rep's local day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
324
|
+
tz_offset?: number;
|
|
325
|
+
};
|
|
326
|
+
headers?: {
|
|
327
|
+
"X-Target-Org-Id"?: string | null;
|
|
328
|
+
};
|
|
329
|
+
};
|
|
330
|
+
output: ApiResponse_Union_DeskBatch__NoneType__;
|
|
331
|
+
};
|
|
332
|
+
/**
|
|
333
|
+
* GET /desk/blocks/{list_id}/queue
|
|
334
|
+
* Get Desk Block Queue
|
|
335
|
+
* tier: read · scope: deals:read
|
|
336
|
+
*/
|
|
337
|
+
get_desk_block_queue_desk_blocks__list_id__queue_get: {
|
|
338
|
+
input: {
|
|
339
|
+
path: {
|
|
340
|
+
/** Dial list (audience) id. */
|
|
341
|
+
list_id: number;
|
|
342
|
+
};
|
|
343
|
+
query?: {
|
|
344
|
+
/** Only the contacts whose redial day is up, never the not-yet-called half. */
|
|
345
|
+
redial_only?: boolean;
|
|
346
|
+
};
|
|
347
|
+
headers?: {
|
|
348
|
+
"X-Target-Org-Id"?: string | null;
|
|
349
|
+
};
|
|
350
|
+
};
|
|
351
|
+
output: ApiResponse_DeskListPayload_;
|
|
352
|
+
};
|
|
353
|
+
/**
|
|
354
|
+
* POST /desk/decisions/{decision_id}/call-target
|
|
355
|
+
* Get Desk Call Target
|
|
356
|
+
* tier: read · scope: deals:read
|
|
357
|
+
*/
|
|
358
|
+
get_desk_call_target_desk_decisions__decision_id__call_target_post: {
|
|
359
|
+
input: {
|
|
360
|
+
path: {
|
|
361
|
+
/** Decision id (UUID). */
|
|
362
|
+
decision_id: string;
|
|
363
|
+
};
|
|
364
|
+
headers?: {
|
|
365
|
+
"X-Target-Org-Id"?: string | null;
|
|
366
|
+
};
|
|
367
|
+
};
|
|
368
|
+
output: ApiResponse_DeskPayload_;
|
|
369
|
+
};
|
|
370
|
+
/**
|
|
371
|
+
* GET /desk/committee-heat
|
|
372
|
+
* Get Desk Committee Heat
|
|
373
|
+
* tier: read · scope: deals:read
|
|
374
|
+
*/
|
|
375
|
+
get_desk_committee_heat_desk_committee_heat_get: {
|
|
376
|
+
input: {
|
|
377
|
+
query: {
|
|
378
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
379
|
+
account_id: number;
|
|
380
|
+
};
|
|
381
|
+
headers?: {
|
|
382
|
+
"X-Target-Org-Id"?: string | null;
|
|
383
|
+
};
|
|
384
|
+
};
|
|
385
|
+
output: ApiResponse_DeskPayload_;
|
|
386
|
+
};
|
|
387
|
+
/**
|
|
388
|
+
* GET /desk/committee-targets
|
|
389
|
+
* Get Desk Committee Targets
|
|
390
|
+
* tier: read · scope: deals:read
|
|
391
|
+
*/
|
|
392
|
+
get_desk_committee_targets_desk_committee_targets_get: {
|
|
393
|
+
input: {
|
|
394
|
+
query: {
|
|
395
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
396
|
+
account_id: number;
|
|
397
|
+
};
|
|
398
|
+
headers?: {
|
|
399
|
+
"X-Target-Org-Id"?: string | null;
|
|
400
|
+
};
|
|
401
|
+
};
|
|
402
|
+
output: ApiResponse_DeskPayload_;
|
|
403
|
+
};
|
|
404
|
+
/**
|
|
405
|
+
* GET /desk/compliance-summary
|
|
406
|
+
* Get Desk Compliance Summary
|
|
407
|
+
* tier: read · scope: deals:read
|
|
408
|
+
*/
|
|
409
|
+
get_desk_compliance_summary_desk_compliance_summary_get: {
|
|
410
|
+
input: {
|
|
411
|
+
query?: {
|
|
412
|
+
/** Open deals to aggregate over. */
|
|
413
|
+
limit?: number;
|
|
414
|
+
};
|
|
415
|
+
headers?: {
|
|
416
|
+
"X-Target-Org-Id"?: string | null;
|
|
417
|
+
};
|
|
418
|
+
};
|
|
419
|
+
output: ApiResponse_DeskPayload_;
|
|
420
|
+
};
|
|
421
|
+
/**
|
|
422
|
+
* POST /desk/contacts/{contact_id}/call-target
|
|
423
|
+
* Get Desk Contact Call Target
|
|
424
|
+
* tier: read · scope: deals:read
|
|
425
|
+
*/
|
|
426
|
+
get_desk_contact_call_target_desk_contacts__contact_id__call_target_post: {
|
|
427
|
+
input: {
|
|
428
|
+
path: {
|
|
429
|
+
/** Contact id. */
|
|
430
|
+
contact_id: number;
|
|
431
|
+
};
|
|
432
|
+
headers?: {
|
|
433
|
+
"X-Target-Org-Id"?: string | null;
|
|
434
|
+
};
|
|
435
|
+
};
|
|
436
|
+
output: ApiResponse_DeskPayload_;
|
|
437
|
+
};
|
|
438
|
+
/**
|
|
439
|
+
* GET /desk/coverage
|
|
440
|
+
* Get Desk Coverage
|
|
441
|
+
* tier: read · scope: deals:read
|
|
442
|
+
*/
|
|
443
|
+
get_desk_coverage_desk_coverage_get: {
|
|
444
|
+
input: {
|
|
445
|
+
headers?: {
|
|
446
|
+
"X-Target-Org-Id"?: string | null;
|
|
447
|
+
};
|
|
448
|
+
};
|
|
449
|
+
output: ApiResponse_DeskPayload_;
|
|
450
|
+
};
|
|
451
|
+
/**
|
|
452
|
+
* GET /desk/decisions/{decision_id}/brief
|
|
453
|
+
* Get Desk Decision Brief
|
|
454
|
+
* tier: read · scope: deals:read
|
|
455
|
+
*/
|
|
456
|
+
get_desk_decision_brief_desk_decisions__decision_id__brief_get: {
|
|
457
|
+
input: {
|
|
458
|
+
path: {
|
|
459
|
+
/** Decision id (UUID). */
|
|
460
|
+
decision_id: string;
|
|
461
|
+
};
|
|
462
|
+
headers?: {
|
|
463
|
+
"X-Target-Org-Id"?: string | null;
|
|
464
|
+
};
|
|
465
|
+
};
|
|
466
|
+
output: ApiResponse_dict_;
|
|
467
|
+
};
|
|
468
|
+
/**
|
|
469
|
+
* GET /desk/decisions/{decision_id}/card-context
|
|
470
|
+
* Get Desk Decision Card Context
|
|
471
|
+
* tier: read · scope: deals:read
|
|
472
|
+
*/
|
|
473
|
+
get_desk_decision_card_context_desk_decisions__decision_id__card_context_get: {
|
|
474
|
+
input: {
|
|
475
|
+
path: {
|
|
476
|
+
/** Decision id (UUID). */
|
|
477
|
+
decision_id: string;
|
|
478
|
+
};
|
|
479
|
+
headers?: {
|
|
480
|
+
"X-Target-Org-Id"?: string | null;
|
|
481
|
+
};
|
|
482
|
+
};
|
|
483
|
+
output: ApiResponse_dict_;
|
|
484
|
+
};
|
|
485
|
+
/**
|
|
486
|
+
* GET /desk/decisions/{decision_id}/conversation
|
|
487
|
+
* Get Desk Decision Conversation
|
|
488
|
+
* tier: read · scope: deals:read
|
|
489
|
+
*/
|
|
490
|
+
get_desk_decision_conversation_desk_decisions__decision_id__conversation_get: {
|
|
491
|
+
input: {
|
|
492
|
+
path: {
|
|
493
|
+
/** Decision id (UUID). */
|
|
494
|
+
decision_id: string;
|
|
495
|
+
};
|
|
496
|
+
headers?: {
|
|
497
|
+
"X-Target-Org-Id"?: string | null;
|
|
498
|
+
};
|
|
499
|
+
};
|
|
500
|
+
output: ApiResponse_dict_;
|
|
501
|
+
};
|
|
502
|
+
/**
|
|
503
|
+
* GET /desk/home-summary
|
|
504
|
+
* Get Desk Home Summary
|
|
505
|
+
* tier: read · scope: deals:read
|
|
506
|
+
*/
|
|
507
|
+
get_desk_home_summary_desk_home_summary_get: {
|
|
508
|
+
input: {
|
|
509
|
+
query?: {
|
|
510
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). The desk day is the rep's LOCAL day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
511
|
+
tz_offset?: number;
|
|
512
|
+
};
|
|
513
|
+
headers?: {
|
|
514
|
+
"X-Target-Org-Id"?: string | null;
|
|
515
|
+
};
|
|
516
|
+
};
|
|
517
|
+
output: ApiResponse_DeskPayload_;
|
|
518
|
+
};
|
|
519
|
+
/**
|
|
520
|
+
* GET /desk/kickoff
|
|
521
|
+
* Get Desk Kickoff
|
|
522
|
+
* tier: billable · scope: deals:run
|
|
523
|
+
*/
|
|
524
|
+
get_desk_kickoff_desk_kickoff_get: {
|
|
525
|
+
input: {
|
|
526
|
+
query?: {
|
|
527
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). The desk day is the rep's LOCAL day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
528
|
+
tz_offset?: number;
|
|
529
|
+
};
|
|
530
|
+
headers?: {
|
|
531
|
+
"X-Target-Org-Id"?: string | null;
|
|
532
|
+
};
|
|
533
|
+
};
|
|
534
|
+
output: ApiResponse_DeskPayload_;
|
|
535
|
+
};
|
|
536
|
+
/**
|
|
537
|
+
* GET /desk/kickoff/audio
|
|
538
|
+
* Get Desk Kickoff Audio
|
|
539
|
+
* tier: billable · scope: deals:run
|
|
540
|
+
*/
|
|
541
|
+
get_desk_kickoff_audio_desk_kickoff_audio_get: {
|
|
542
|
+
input: {
|
|
543
|
+
query?: {
|
|
544
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). The desk day is the rep's LOCAL day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
545
|
+
tz_offset?: number;
|
|
546
|
+
};
|
|
547
|
+
headers?: {
|
|
548
|
+
"X-Target-Org-Id"?: string | null;
|
|
549
|
+
};
|
|
550
|
+
};
|
|
551
|
+
output: void;
|
|
552
|
+
};
|
|
553
|
+
/**
|
|
554
|
+
* GET /desk/linkedin-sender
|
|
555
|
+
* Get Desk Linkedin Sender
|
|
556
|
+
* tier: read · scope: deals:read
|
|
557
|
+
*/
|
|
558
|
+
get_desk_linkedin_sender_desk_linkedin_sender_get: {
|
|
559
|
+
input: {
|
|
560
|
+
headers?: {
|
|
561
|
+
"X-Target-Org-Id"?: string | null;
|
|
562
|
+
};
|
|
563
|
+
};
|
|
564
|
+
output: ApiResponse_DeskPayload_;
|
|
565
|
+
};
|
|
566
|
+
/**
|
|
567
|
+
* GET /desk/list-goals
|
|
568
|
+
* Get Desk List Goals
|
|
569
|
+
* tier: read · scope: deals:read
|
|
570
|
+
*/
|
|
571
|
+
get_desk_list_goals_desk_list_goals_get: {
|
|
572
|
+
input: {
|
|
573
|
+
headers?: {
|
|
574
|
+
"X-Target-Org-Id"?: string | null;
|
|
575
|
+
};
|
|
576
|
+
};
|
|
577
|
+
output: ApiResponse_DeskPayload_;
|
|
578
|
+
};
|
|
579
|
+
/**
|
|
580
|
+
* GET /desk/list-group-override
|
|
581
|
+
* Get Desk List Group Override
|
|
582
|
+
* tier: read · scope: deals:read
|
|
583
|
+
*/
|
|
584
|
+
get_desk_list_group_override_desk_list_group_override_get: {
|
|
585
|
+
input: {
|
|
586
|
+
headers?: {
|
|
587
|
+
"X-Target-Org-Id"?: string | null;
|
|
588
|
+
};
|
|
589
|
+
};
|
|
590
|
+
output: ApiResponse_DeskPayload_;
|
|
591
|
+
};
|
|
592
|
+
/**
|
|
593
|
+
* GET /desk/list-priority
|
|
594
|
+
* Get Desk List Priority
|
|
595
|
+
* tier: read · scope: deals:read
|
|
596
|
+
*/
|
|
597
|
+
get_desk_list_priority_desk_list_priority_get: {
|
|
598
|
+
input: {
|
|
599
|
+
headers?: {
|
|
600
|
+
"X-Target-Org-Id"?: string | null;
|
|
601
|
+
};
|
|
602
|
+
};
|
|
603
|
+
output: ApiResponse_DeskPayload_;
|
|
604
|
+
};
|
|
605
|
+
/**
|
|
606
|
+
* GET /desk/next-best
|
|
607
|
+
* Get Desk Next Best
|
|
608
|
+
* tier: read · scope: deals:read
|
|
609
|
+
*/
|
|
610
|
+
get_desk_next_best_desk_next_best_get: {
|
|
611
|
+
input: {
|
|
612
|
+
headers?: {
|
|
613
|
+
"X-Target-Org-Id"?: string | null;
|
|
614
|
+
};
|
|
615
|
+
};
|
|
616
|
+
output: ApiResponse_DeskPayload_;
|
|
617
|
+
};
|
|
618
|
+
/**
|
|
619
|
+
* GET /desk/org-settings
|
|
620
|
+
* Get Desk Org Settings
|
|
621
|
+
* tier: read · scope: deals:read
|
|
622
|
+
*/
|
|
623
|
+
get_desk_org_settings_desk_org_settings_get: {
|
|
624
|
+
input: {
|
|
625
|
+
headers?: {
|
|
626
|
+
"X-Target-Org-Id"?: string | null;
|
|
627
|
+
};
|
|
628
|
+
};
|
|
629
|
+
output: ApiResponse_DeskPayload_;
|
|
630
|
+
};
|
|
631
|
+
/**
|
|
632
|
+
* GET /desk/plays/executions/{execution_id}
|
|
633
|
+
* Get Desk Play Execution
|
|
634
|
+
* tier: read · scope: deals:read
|
|
635
|
+
*/
|
|
636
|
+
get_desk_play_execution_desk_plays_executions__execution_id__get: {
|
|
637
|
+
input: {
|
|
638
|
+
path: {
|
|
639
|
+
/** Workflow execution id. */
|
|
640
|
+
execution_id: string;
|
|
641
|
+
};
|
|
642
|
+
query?: {
|
|
643
|
+
/** Card this run belongs to. When given, a TERMINAL status is persisted onto the card - so this read has a write side, and omitting it keeps the read pure. */
|
|
644
|
+
decision_id?: string | null;
|
|
645
|
+
/** Play this run belongs to. */
|
|
646
|
+
action_id?: string | null;
|
|
647
|
+
};
|
|
648
|
+
headers?: {
|
|
649
|
+
"X-Target-Org-Id"?: string | null;
|
|
650
|
+
};
|
|
651
|
+
};
|
|
652
|
+
output: ApiResponse_DeskPayload_;
|
|
653
|
+
};
|
|
654
|
+
/**
|
|
655
|
+
* GET /desk/pulse
|
|
656
|
+
* Get Desk Pulse
|
|
657
|
+
* tier: read · scope: deals:read
|
|
658
|
+
*/
|
|
659
|
+
get_desk_pulse_desk_pulse_get: {
|
|
660
|
+
input: {
|
|
661
|
+
query?: {
|
|
662
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). The desk day is the rep's LOCAL day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
663
|
+
tz_offset?: number;
|
|
664
|
+
};
|
|
665
|
+
headers?: {
|
|
666
|
+
"X-Target-Org-Id"?: string | null;
|
|
667
|
+
};
|
|
668
|
+
};
|
|
669
|
+
output: ApiResponse_DeskPayload_;
|
|
670
|
+
};
|
|
671
|
+
/**
|
|
672
|
+
* POST /desk/decisions/{decision_id}/reply-target
|
|
673
|
+
* Get Desk Reply Target
|
|
674
|
+
* tier: read · scope: deals:read
|
|
675
|
+
*/
|
|
676
|
+
get_desk_reply_target_desk_decisions__decision_id__reply_target_post: {
|
|
677
|
+
input: {
|
|
678
|
+
path: {
|
|
679
|
+
/** Decision id (UUID). */
|
|
680
|
+
decision_id: string;
|
|
681
|
+
};
|
|
682
|
+
headers?: {
|
|
683
|
+
"X-Target-Org-Id"?: string | null;
|
|
684
|
+
};
|
|
685
|
+
};
|
|
686
|
+
output: ApiResponse_DeskPayload_;
|
|
687
|
+
};
|
|
688
|
+
/**
|
|
689
|
+
* POST /desk/decisions/{decision_id}/sms-target
|
|
690
|
+
* Get Desk Sms Target
|
|
691
|
+
* tier: read · scope: deals:read
|
|
692
|
+
*/
|
|
693
|
+
get_desk_sms_target_desk_decisions__decision_id__sms_target_post: {
|
|
694
|
+
input: {
|
|
695
|
+
path: {
|
|
696
|
+
/** Decision id (UUID). */
|
|
697
|
+
decision_id: string;
|
|
698
|
+
};
|
|
699
|
+
headers?: {
|
|
700
|
+
"X-Target-Org-Id"?: string | null;
|
|
701
|
+
};
|
|
702
|
+
};
|
|
703
|
+
output: ApiResponse_DeskPayload_;
|
|
704
|
+
};
|
|
705
|
+
/**
|
|
706
|
+
* GET /desk/wrapped
|
|
707
|
+
* Get Desk Wrapped
|
|
708
|
+
* tier: read · scope: deals:read
|
|
709
|
+
*/
|
|
710
|
+
get_desk_wrapped_desk_wrapped_get: {
|
|
711
|
+
input: {
|
|
712
|
+
query?: {
|
|
713
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). The desk day is the rep's LOCAL day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
714
|
+
tz_offset?: number;
|
|
715
|
+
};
|
|
716
|
+
headers?: {
|
|
717
|
+
"X-Target-Org-Id"?: string | null;
|
|
718
|
+
};
|
|
719
|
+
};
|
|
720
|
+
output: ApiResponse_DeskPayload_;
|
|
721
|
+
};
|
|
722
|
+
/**
|
|
723
|
+
* POST /desk/email-improve
|
|
724
|
+
* Improve Desk Email
|
|
725
|
+
* tier: billable · scope: deals:run
|
|
726
|
+
*/
|
|
727
|
+
improve_desk_email_desk_email_improve_post: {
|
|
728
|
+
input: {
|
|
729
|
+
headers?: {
|
|
730
|
+
"X-Target-Org-Id"?: string | null;
|
|
731
|
+
};
|
|
732
|
+
body: DeskEmailImproveRequest;
|
|
733
|
+
};
|
|
734
|
+
output: ApiResponse_DeskPayload_;
|
|
735
|
+
};
|
|
736
|
+
/**
|
|
737
|
+
* GET /desk/accounts/plans
|
|
738
|
+
* List Account Plans
|
|
739
|
+
* tier: read · scope: deals:read
|
|
740
|
+
*/
|
|
741
|
+
list_account_plans_desk_accounts_plans_get: {
|
|
742
|
+
input: {
|
|
743
|
+
query?: {
|
|
744
|
+
/** Only plans in this status. */
|
|
745
|
+
status?: ("draft" | "active" | "paused" | "archived") | null;
|
|
746
|
+
/** Which board: `deals` (accounts with an open deal), `campaign` (requires `campaign_id`), or `all`. Omitted means all. */
|
|
747
|
+
source?: ("all" | "deals" | "campaign") | null;
|
|
748
|
+
/** REQUIRED when `source=campaign`. */
|
|
749
|
+
campaign_id?: string | null;
|
|
750
|
+
/** Only accounts this caller owns. Ownership is resolved BEFORE paging, so this changes the total rather than filtering a page. */
|
|
751
|
+
mine?: boolean;
|
|
752
|
+
limit?: number;
|
|
753
|
+
offset?: number;
|
|
754
|
+
};
|
|
755
|
+
headers?: {
|
|
756
|
+
"X-Target-Org-Id"?: string | null;
|
|
757
|
+
};
|
|
758
|
+
};
|
|
759
|
+
output: ApiResponse_AccountPlanListPayload_;
|
|
760
|
+
};
|
|
761
|
+
/**
|
|
762
|
+
* GET /desk/accounts/{account_id}/committee/plays
|
|
763
|
+
* List Committee Plays
|
|
764
|
+
* tier: read · scope: deals:read
|
|
765
|
+
*/
|
|
766
|
+
list_committee_plays_desk_accounts__account_id__committee_plays_get: {
|
|
767
|
+
input: {
|
|
768
|
+
path: {
|
|
769
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
770
|
+
account_id: number;
|
|
771
|
+
};
|
|
772
|
+
headers?: {
|
|
773
|
+
"X-Target-Org-Id"?: string | null;
|
|
774
|
+
};
|
|
775
|
+
};
|
|
776
|
+
output: ApiResponse_AccountPlanListPayload_;
|
|
777
|
+
};
|
|
778
|
+
/**
|
|
779
|
+
* GET /desk/decisions/completed
|
|
780
|
+
* List Completed Desk Decisions
|
|
781
|
+
* tier: read · scope: deals:read
|
|
782
|
+
*/
|
|
783
|
+
list_completed_desk_decisions_desk_decisions_completed_get: {
|
|
784
|
+
input: {
|
|
785
|
+
query?: {
|
|
786
|
+
limit?: number;
|
|
787
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). A batch is scoped to the rep's local day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
788
|
+
tz_offset?: number;
|
|
789
|
+
};
|
|
790
|
+
headers?: {
|
|
791
|
+
"X-Target-Org-Id"?: string | null;
|
|
792
|
+
};
|
|
793
|
+
};
|
|
794
|
+
output: ApiResponse_DeskDecisionListResponse_;
|
|
795
|
+
};
|
|
796
|
+
/**
|
|
797
|
+
* GET /desk/blocks
|
|
798
|
+
* List Desk Blocks
|
|
799
|
+
* tier: read · scope: deals:read
|
|
800
|
+
*/
|
|
801
|
+
list_desk_blocks_desk_blocks_get: {
|
|
802
|
+
input: {
|
|
803
|
+
query?: {
|
|
804
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). The desk day is the rep's LOCAL day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
805
|
+
tz_offset?: number;
|
|
806
|
+
};
|
|
807
|
+
headers?: {
|
|
808
|
+
"X-Target-Org-Id"?: string | null;
|
|
809
|
+
};
|
|
810
|
+
};
|
|
811
|
+
output: ApiResponse_DeskListPayload_;
|
|
812
|
+
};
|
|
813
|
+
/**
|
|
814
|
+
* GET /desk/decisions/{decision_id}/plays
|
|
815
|
+
* List Desk Card Plays
|
|
816
|
+
* tier: read · scope: deals:read
|
|
817
|
+
*/
|
|
818
|
+
list_desk_card_plays_desk_decisions__decision_id__plays_get: {
|
|
819
|
+
input: {
|
|
820
|
+
path: {
|
|
821
|
+
/** Decision id (UUID). */
|
|
822
|
+
decision_id: string;
|
|
823
|
+
};
|
|
824
|
+
headers?: {
|
|
825
|
+
"X-Target-Org-Id"?: string | null;
|
|
826
|
+
};
|
|
827
|
+
};
|
|
828
|
+
output: ApiResponse_DeskListPayload_;
|
|
829
|
+
};
|
|
830
|
+
/**
|
|
831
|
+
* GET /desk/decisions
|
|
832
|
+
* List Desk Decisions
|
|
833
|
+
* tier: read · scope: deals:read
|
|
834
|
+
*/
|
|
835
|
+
list_desk_decisions_desk_decisions_get: {
|
|
836
|
+
input: {
|
|
837
|
+
query?: {
|
|
838
|
+
/** Filter by decision type. */
|
|
839
|
+
decision_type?: string | null;
|
|
840
|
+
/** Filter by signal FAMILY, e.g. "forms" or "website". */
|
|
841
|
+
source_group?: string | null;
|
|
842
|
+
/** Filter by EXACT signal id, e.g. "form_submitted". */
|
|
843
|
+
source?: string | null;
|
|
844
|
+
limit?: number;
|
|
845
|
+
offset?: number;
|
|
846
|
+
};
|
|
847
|
+
headers?: {
|
|
848
|
+
"X-Target-Org-Id"?: string | null;
|
|
849
|
+
};
|
|
850
|
+
};
|
|
851
|
+
output: ApiResponse_DeskDecisionListResponse_;
|
|
852
|
+
};
|
|
853
|
+
/**
|
|
854
|
+
* GET /desk/plays/approvals
|
|
855
|
+
* List Desk Play Approvals
|
|
856
|
+
* tier: read · scope: deals:read
|
|
857
|
+
*/
|
|
858
|
+
list_desk_play_approvals_desk_plays_approvals_get: {
|
|
859
|
+
input: {
|
|
860
|
+
headers?: {
|
|
861
|
+
"X-Target-Org-Id"?: string | null;
|
|
862
|
+
};
|
|
863
|
+
};
|
|
864
|
+
output: ApiResponse_DeskListPayload_;
|
|
865
|
+
};
|
|
866
|
+
/**
|
|
867
|
+
* GET /desk/upcoming
|
|
868
|
+
* List Desk Upcoming
|
|
869
|
+
* tier: read · scope: deals:read
|
|
870
|
+
*/
|
|
871
|
+
list_desk_upcoming_desk_upcoming_get: {
|
|
872
|
+
input: {
|
|
873
|
+
headers?: {
|
|
874
|
+
"X-Target-Org-Id"?: string | null;
|
|
875
|
+
};
|
|
876
|
+
};
|
|
877
|
+
output: ApiResponse_DeskListPayload_;
|
|
878
|
+
};
|
|
879
|
+
/**
|
|
880
|
+
* POST /desk/kickoff/played
|
|
881
|
+
* Mark Desk Kickoff Played
|
|
882
|
+
* tier: write · scope: deals:write
|
|
883
|
+
*/
|
|
884
|
+
mark_desk_kickoff_played_desk_kickoff_played_post: {
|
|
885
|
+
input: {
|
|
886
|
+
query?: {
|
|
887
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). The desk day is the rep's LOCAL day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
888
|
+
tz_offset?: number;
|
|
889
|
+
};
|
|
890
|
+
headers?: {
|
|
891
|
+
"X-Target-Org-Id"?: string | null;
|
|
892
|
+
};
|
|
893
|
+
};
|
|
894
|
+
output: ApiResponse_DeskPayload_;
|
|
895
|
+
};
|
|
896
|
+
/**
|
|
897
|
+
* POST /desk/voice-memo
|
|
898
|
+
* Post Desk Voice Memo
|
|
899
|
+
* tier: billable · scope: deals:run
|
|
900
|
+
*/
|
|
901
|
+
post_desk_voice_memo_desk_voice_memo_post: {
|
|
902
|
+
input: {
|
|
903
|
+
headers?: {
|
|
904
|
+
"X-Target-Org-Id"?: string | null;
|
|
905
|
+
};
|
|
906
|
+
};
|
|
907
|
+
output: ApiResponse_DeskPayload_;
|
|
908
|
+
};
|
|
909
|
+
/**
|
|
910
|
+
* POST /desk/accounts/{account_id}/plan/preview
|
|
911
|
+
* Preview Account Plan
|
|
912
|
+
* tier: read · scope: deals:read
|
|
913
|
+
*/
|
|
914
|
+
preview_account_plan_desk_accounts__account_id__plan_preview_post: {
|
|
915
|
+
input: {
|
|
916
|
+
path: {
|
|
917
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
918
|
+
account_id: number;
|
|
919
|
+
};
|
|
920
|
+
headers?: {
|
|
921
|
+
"X-Target-Org-Id"?: string | null;
|
|
922
|
+
};
|
|
923
|
+
body: AccountPlanPreviewRequest;
|
|
924
|
+
};
|
|
925
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
926
|
+
};
|
|
927
|
+
/**
|
|
928
|
+
* POST /desk/batch/pull
|
|
929
|
+
* Pull Desk Batch
|
|
930
|
+
* tier: write · scope: deals:write
|
|
931
|
+
*/
|
|
932
|
+
pull_desk_batch_desk_batch_pull_post: {
|
|
933
|
+
input: {
|
|
934
|
+
headers?: {
|
|
935
|
+
"X-Target-Org-Id"?: string | null;
|
|
936
|
+
};
|
|
937
|
+
body: DeskBatchPullRequest;
|
|
938
|
+
};
|
|
939
|
+
output: ApiResponse_DeskBatch_;
|
|
940
|
+
};
|
|
941
|
+
/**
|
|
942
|
+
* POST /desk/decisions/{decision_id}/replan
|
|
943
|
+
* Replan Desk Decision
|
|
944
|
+
* tier: billable · scope: deals:run
|
|
945
|
+
*/
|
|
946
|
+
replan_desk_decision_desk_decisions__decision_id__replan_post: {
|
|
947
|
+
input: {
|
|
948
|
+
path: {
|
|
949
|
+
/** Plan-review decision id (UUID). */
|
|
950
|
+
decision_id: string;
|
|
951
|
+
};
|
|
952
|
+
headers?: {
|
|
953
|
+
"X-Target-Org-Id"?: string | null;
|
|
954
|
+
};
|
|
955
|
+
};
|
|
956
|
+
output: ApiResponse_DeskPayload_;
|
|
957
|
+
};
|
|
958
|
+
/**
|
|
959
|
+
* POST /desk/decisions/{decision_id}/resolve
|
|
960
|
+
* Resolve Desk Decision
|
|
961
|
+
* tier: write · scope: deals:write
|
|
962
|
+
*/
|
|
963
|
+
resolve_desk_decision_desk_decisions__decision_id__resolve_post: {
|
|
964
|
+
input: {
|
|
965
|
+
path: {
|
|
966
|
+
/** Decision id (UUID). */
|
|
967
|
+
decision_id: string;
|
|
968
|
+
};
|
|
969
|
+
headers?: {
|
|
970
|
+
"X-Target-Org-Id"?: string | null;
|
|
971
|
+
};
|
|
972
|
+
body: DeskResolveRequest;
|
|
973
|
+
};
|
|
974
|
+
output: ApiResponse_dict_;
|
|
975
|
+
};
|
|
976
|
+
/**
|
|
977
|
+
* POST /desk/list-goals/{list_id}/revive
|
|
978
|
+
* Revive Desk List Goal
|
|
979
|
+
* tier: write · scope: deals:write
|
|
980
|
+
*/
|
|
981
|
+
revive_desk_list_goal_desk_list_goals__list_id__revive_post: {
|
|
982
|
+
input: {
|
|
983
|
+
path: {
|
|
984
|
+
/** Dial list (audience) id. */
|
|
985
|
+
list_id: number;
|
|
986
|
+
};
|
|
987
|
+
query?: {
|
|
988
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). The desk day is the rep's LOCAL day; a wrong offset silently returns the wrong day rather than erroring. */
|
|
989
|
+
tz_offset?: number;
|
|
990
|
+
};
|
|
991
|
+
headers?: {
|
|
992
|
+
"X-Target-Org-Id"?: string | null;
|
|
993
|
+
};
|
|
994
|
+
};
|
|
995
|
+
output: ApiResponse_DeskPayload_;
|
|
996
|
+
};
|
|
997
|
+
/**
|
|
998
|
+
* POST /desk/accounts/{account_id}/committee/plays/{action_id}/run
|
|
999
|
+
* Run Committee Play
|
|
1000
|
+
* tier: external · scope: deals:run
|
|
1001
|
+
*/
|
|
1002
|
+
run_committee_play_desk_accounts__account_id__committee_plays__action_id__run_post: {
|
|
1003
|
+
input: {
|
|
1004
|
+
path: {
|
|
1005
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
1006
|
+
account_id: number;
|
|
1007
|
+
/** Play id, from `.../committee/plays`. */
|
|
1008
|
+
action_id: string;
|
|
1009
|
+
};
|
|
1010
|
+
headers?: {
|
|
1011
|
+
"X-Target-Org-Id"?: string | null;
|
|
1012
|
+
};
|
|
1013
|
+
};
|
|
1014
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
1015
|
+
};
|
|
1016
|
+
/**
|
|
1017
|
+
* POST /desk/decisions/{decision_id}/plays/{action_id}/run
|
|
1018
|
+
* Run Desk Card Play
|
|
1019
|
+
* tier: external · scope: deals:run
|
|
1020
|
+
*/
|
|
1021
|
+
run_desk_card_play_desk_decisions__decision_id__plays__action_id__run_post: {
|
|
1022
|
+
input: {
|
|
1023
|
+
path: {
|
|
1024
|
+
/** Decision id (UUID). */
|
|
1025
|
+
decision_id: string;
|
|
1026
|
+
/** Play id, from `/desk/decisions/{id}/plays`. */
|
|
1027
|
+
action_id: string;
|
|
1028
|
+
};
|
|
1029
|
+
headers?: {
|
|
1030
|
+
"X-Target-Org-Id"?: string | null;
|
|
1031
|
+
};
|
|
1032
|
+
};
|
|
1033
|
+
output: ApiResponse_DeskPayload_;
|
|
1034
|
+
};
|
|
1035
|
+
/**
|
|
1036
|
+
* POST /desk/org-settings/plan-stages/run
|
|
1037
|
+
* Run Desk Plan Stage Sweep
|
|
1038
|
+
* tier: billable · scope: deals:run
|
|
1039
|
+
*/
|
|
1040
|
+
run_desk_plan_stage_sweep_desk_org_settings_plan_stages_run_post: {
|
|
1041
|
+
input: {
|
|
1042
|
+
query?: {
|
|
1043
|
+
/** Plan at most this many deals in this press. Omitted means up to the daily cap. */
|
|
1044
|
+
limit?: number | null;
|
|
1045
|
+
};
|
|
1046
|
+
headers?: {
|
|
1047
|
+
"X-Target-Org-Id"?: string | null;
|
|
1048
|
+
};
|
|
1049
|
+
};
|
|
1050
|
+
output: ApiResponse_DeskPayload_;
|
|
1051
|
+
};
|
|
1052
|
+
/**
|
|
1053
|
+
* POST /desk/email-score
|
|
1054
|
+
* Score Desk Email
|
|
1055
|
+
* tier: billable · scope: deals:run
|
|
1056
|
+
*/
|
|
1057
|
+
score_desk_email_desk_email_score_post: {
|
|
1058
|
+
input: {
|
|
1059
|
+
headers?: {
|
|
1060
|
+
"X-Target-Org-Id"?: string | null;
|
|
1061
|
+
};
|
|
1062
|
+
body: DeskEmailScoreRequest;
|
|
1063
|
+
};
|
|
1064
|
+
output: ApiResponse_DeskPayload_;
|
|
1065
|
+
};
|
|
1066
|
+
/**
|
|
1067
|
+
* POST /desk/accounts/{account_id}/committee/{contact_id}/linkedin-invite
|
|
1068
|
+
* Send Committee Linkedin Invite
|
|
1069
|
+
* tier: external · scope: deals:run
|
|
1070
|
+
*/
|
|
1071
|
+
send_committee_linkedin_invite_desk_accounts__account_id__committee__contact_id__linkedin_invite_post: {
|
|
1072
|
+
input: {
|
|
1073
|
+
path: {
|
|
1074
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
1075
|
+
account_id: number;
|
|
1076
|
+
/** The committee member to invite. */
|
|
1077
|
+
contact_id: number;
|
|
1078
|
+
};
|
|
1079
|
+
headers?: {
|
|
1080
|
+
"X-Target-Org-Id"?: string | null;
|
|
1081
|
+
};
|
|
1082
|
+
body: CommitteeLinkedInInviteRequest;
|
|
1083
|
+
};
|
|
1084
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
1085
|
+
};
|
|
1086
|
+
/**
|
|
1087
|
+
* POST /desk/decisions/{decision_id}/send-reply
|
|
1088
|
+
* Send Desk Reply
|
|
1089
|
+
* tier: external · scope: deals:run
|
|
1090
|
+
*/
|
|
1091
|
+
send_desk_reply_desk_decisions__decision_id__send_reply_post: {
|
|
1092
|
+
input: {
|
|
1093
|
+
path: {
|
|
1094
|
+
/** Decision id (UUID). */
|
|
1095
|
+
decision_id: string;
|
|
1096
|
+
};
|
|
1097
|
+
headers?: {
|
|
1098
|
+
"X-Target-Org-Id"?: string | null;
|
|
1099
|
+
};
|
|
1100
|
+
body: DeskSendReplyRequest;
|
|
1101
|
+
};
|
|
1102
|
+
output: ApiResponse_DeskPayload_;
|
|
1103
|
+
};
|
|
1104
|
+
/**
|
|
1105
|
+
* POST /desk/decisions/{decision_id}/send-sms
|
|
1106
|
+
* Send Desk Sms
|
|
1107
|
+
* tier: external · scope: deals:run
|
|
1108
|
+
*/
|
|
1109
|
+
send_desk_sms_desk_decisions__decision_id__send_sms_post: {
|
|
1110
|
+
input: {
|
|
1111
|
+
path: {
|
|
1112
|
+
/** Decision id (UUID). */
|
|
1113
|
+
decision_id: string;
|
|
1114
|
+
};
|
|
1115
|
+
headers?: {
|
|
1116
|
+
"X-Target-Org-Id"?: string | null;
|
|
1117
|
+
};
|
|
1118
|
+
body: DeskSendSmsRequest;
|
|
1119
|
+
};
|
|
1120
|
+
output: ApiResponse_DeskPayload_;
|
|
1121
|
+
};
|
|
1122
|
+
/**
|
|
1123
|
+
* POST /desk/batch/start
|
|
1124
|
+
* Start Desk Batch
|
|
1125
|
+
* tier: write · scope: deals:write
|
|
1126
|
+
*/
|
|
1127
|
+
start_desk_batch_desk_batch_start_post: {
|
|
1128
|
+
input: {
|
|
1129
|
+
headers?: {
|
|
1130
|
+
"X-Target-Org-Id"?: string | null;
|
|
1131
|
+
};
|
|
1132
|
+
body: DeskBatchStartRequest;
|
|
1133
|
+
};
|
|
1134
|
+
output: ApiResponse_DeskBatch_;
|
|
1135
|
+
};
|
|
1136
|
+
/**
|
|
1137
|
+
* POST /desk/decisions/{decision_id}/undo
|
|
1138
|
+
* Undo Desk Decision
|
|
1139
|
+
* tier: write · scope: deals:write
|
|
1140
|
+
*/
|
|
1141
|
+
undo_desk_decision_desk_decisions__decision_id__undo_post: {
|
|
1142
|
+
input: {
|
|
1143
|
+
path: {
|
|
1144
|
+
/** Decision id (UUID). */
|
|
1145
|
+
decision_id: string;
|
|
1146
|
+
};
|
|
1147
|
+
headers?: {
|
|
1148
|
+
"X-Target-Org-Id"?: string | null;
|
|
1149
|
+
};
|
|
1150
|
+
};
|
|
1151
|
+
output: ApiResponse_dict_;
|
|
1152
|
+
};
|
|
1153
|
+
/**
|
|
1154
|
+
* POST /desk/decisions/{decision_id}/unsnooze
|
|
1155
|
+
* Unsnooze Desk Decision
|
|
1156
|
+
* tier: write · scope: deals:write
|
|
1157
|
+
*/
|
|
1158
|
+
unsnooze_desk_decision_desk_decisions__decision_id__unsnooze_post: {
|
|
1159
|
+
input: {
|
|
1160
|
+
path: {
|
|
1161
|
+
/** Decision id (UUID). */
|
|
1162
|
+
decision_id: string;
|
|
1163
|
+
};
|
|
1164
|
+
headers?: {
|
|
1165
|
+
"X-Target-Org-Id"?: string | null;
|
|
1166
|
+
};
|
|
1167
|
+
};
|
|
1168
|
+
output: ApiResponse_dict_;
|
|
1169
|
+
};
|
|
1170
|
+
/**
|
|
1171
|
+
* PUT /desk/accounts/{account_id}/plan/steps/{step_id}
|
|
1172
|
+
* Update Account Plan Step
|
|
1173
|
+
* tier: write · scope: deals:write
|
|
1174
|
+
*/
|
|
1175
|
+
update_account_plan_step_desk_accounts__account_id__plan_steps__step_id__put: {
|
|
1176
|
+
input: {
|
|
1177
|
+
path: {
|
|
1178
|
+
/** The account's mashup company id (`cb_account_plans.account_id`). */
|
|
1179
|
+
account_id: number;
|
|
1180
|
+
/** Step id, as carried on the plan. */
|
|
1181
|
+
step_id: string;
|
|
1182
|
+
};
|
|
1183
|
+
headers?: {
|
|
1184
|
+
"X-Target-Org-Id"?: string | null;
|
|
1185
|
+
};
|
|
1186
|
+
body: AccountPlanStepUpdateRequest;
|
|
1187
|
+
};
|
|
1188
|
+
output: ApiResponse_AccountPlanPayload_;
|
|
1189
|
+
};
|
|
1190
|
+
/**
|
|
1191
|
+
* PUT /desk/autonomy
|
|
1192
|
+
* Update Desk Autonomy
|
|
1193
|
+
* tier: external · scope: deals:run
|
|
1194
|
+
*/
|
|
1195
|
+
update_desk_autonomy_desk_autonomy_put: {
|
|
1196
|
+
input: {
|
|
1197
|
+
headers?: {
|
|
1198
|
+
"X-Target-Org-Id"?: string | null;
|
|
1199
|
+
};
|
|
1200
|
+
body: DeskAutonomyUpdate;
|
|
1201
|
+
};
|
|
1202
|
+
output: ApiResponse_DeskPayload_;
|
|
1203
|
+
};
|
|
1204
|
+
/**
|
|
1205
|
+
* PUT /desk/linkedin-sender
|
|
1206
|
+
* Update Desk Linkedin Sender
|
|
1207
|
+
* tier: write · scope: deals:write
|
|
1208
|
+
*/
|
|
1209
|
+
update_desk_linkedin_sender_desk_linkedin_sender_put: {
|
|
1210
|
+
input: {
|
|
1211
|
+
headers?: {
|
|
1212
|
+
"X-Target-Org-Id"?: string | null;
|
|
1213
|
+
};
|
|
1214
|
+
body: DeskLinkedInSenderUpdate;
|
|
1215
|
+
};
|
|
1216
|
+
output: ApiResponse_DeskPayload_;
|
|
1217
|
+
};
|
|
1218
|
+
/**
|
|
1219
|
+
* PUT /desk/list-goals
|
|
1220
|
+
* Update Desk List Goal
|
|
1221
|
+
* tier: write · scope: deals:write
|
|
1222
|
+
*/
|
|
1223
|
+
update_desk_list_goal_desk_list_goals_put: {
|
|
1224
|
+
input: {
|
|
1225
|
+
headers?: {
|
|
1226
|
+
"X-Target-Org-Id"?: string | null;
|
|
1227
|
+
};
|
|
1228
|
+
body: DeskListGoalUpdate;
|
|
1229
|
+
};
|
|
1230
|
+
output: ApiResponse_DeskPayload_;
|
|
1231
|
+
};
|
|
1232
|
+
/**
|
|
1233
|
+
* PUT /desk/list-group-override
|
|
1234
|
+
* Update Desk List Group Override
|
|
1235
|
+
* tier: write · scope: deals:write
|
|
1236
|
+
*/
|
|
1237
|
+
update_desk_list_group_override_desk_list_group_override_put: {
|
|
1238
|
+
input: {
|
|
1239
|
+
headers?: {
|
|
1240
|
+
"X-Target-Org-Id"?: string | null;
|
|
1241
|
+
};
|
|
1242
|
+
body: DeskListGroupOverrideUpdate;
|
|
1243
|
+
};
|
|
1244
|
+
output: ApiResponse_DeskPayload_;
|
|
1245
|
+
};
|
|
1246
|
+
/**
|
|
1247
|
+
* PUT /desk/list-priority
|
|
1248
|
+
* Update Desk List Priority
|
|
1249
|
+
* tier: write · scope: deals:write
|
|
1250
|
+
*/
|
|
1251
|
+
update_desk_list_priority_desk_list_priority_put: {
|
|
1252
|
+
input: {
|
|
1253
|
+
headers?: {
|
|
1254
|
+
"X-Target-Org-Id"?: string | null;
|
|
1255
|
+
};
|
|
1256
|
+
body: DeskListPriorityUpdate;
|
|
1257
|
+
};
|
|
1258
|
+
output: ApiResponse_DeskPayload_;
|
|
1259
|
+
};
|
|
1260
|
+
/**
|
|
1261
|
+
* PUT /desk/org-settings
|
|
1262
|
+
* Update Desk Org Settings
|
|
1263
|
+
* tier: external · scope: deals:run
|
|
1264
|
+
*/
|
|
1265
|
+
update_desk_org_settings_desk_org_settings_put: {
|
|
1266
|
+
input: {
|
|
1267
|
+
headers?: {
|
|
1268
|
+
"X-Target-Org-Id"?: string | null;
|
|
1269
|
+
};
|
|
1270
|
+
body: DeskOrgSettingsUpdate;
|
|
1271
|
+
};
|
|
1272
|
+
output: ApiResponse_DeskPayload_;
|
|
1273
|
+
};
|
|
1274
|
+
}
|
|
1275
|
+
|
|
1276
|
+
// 40 schemas referenced above (the same as G8Contract.<Name>).
|
|
1277
|
+
|
|
1278
|
+
/**
|
|
1279
|
+
* Persist the approved steps as a NEW plan version.
|
|
1280
|
+
*
|
|
1281
|
+
* `proposed_plan` must be non-empty: apply REPLACES the account's steps, so
|
|
1282
|
+
* an empty proposal would blank the plan. The app answers 400 rather than
|
|
1283
|
+
* doing it, and this surface forwards that rather than second-guessing it.
|
|
1284
|
+
*/
|
|
1285
|
+
export interface AccountPlanApplyRequest {
|
|
1286
|
+
instruction?: string | null;
|
|
1287
|
+
proposed_plan?: Array<AccountPlanStep>;
|
|
1288
|
+
rationale?: string | null;
|
|
1289
|
+
/** draft | active | paused | archived. */
|
|
1290
|
+
status?: string | null;
|
|
1291
|
+
/** What caused this (re)plan. */
|
|
1292
|
+
trigger?: string;
|
|
1293
|
+
}
|
|
1294
|
+
|
|
1295
|
+
/** An open envelope for a LIST result, so a bare list keeps its shape. */
|
|
1296
|
+
export interface AccountPlanListPayload {
|
|
1297
|
+
items?: Array<unknown>;
|
|
1298
|
+
[key: string]: unknown;
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
/** An open envelope for a plan, a context read or a committee result. */
|
|
1302
|
+
export type AccountPlanPayload = Record<string, unknown>;
|
|
1303
|
+
|
|
1304
|
+
/**
|
|
1305
|
+
* Diff a proposed plan against the current version. Persists NOTHING.
|
|
1306
|
+
*
|
|
1307
|
+
* It also does not consume the signal-replanner cooldown, so a caller can
|
|
1308
|
+
* preview as often as it likes before committing with `/plan/apply`.
|
|
1309
|
+
*/
|
|
1310
|
+
export interface AccountPlanPreviewRequest {
|
|
1311
|
+
/** Free-text note echoed back with the diff. */
|
|
1312
|
+
instruction?: string | null;
|
|
1313
|
+
proposed_plan?: Array<AccountPlanStep>;
|
|
1314
|
+
}
|
|
1315
|
+
|
|
1316
|
+
/**
|
|
1317
|
+
* One step in a plan: who to reach, on what channel, when, and why now.
|
|
1318
|
+
*
|
|
1319
|
+
* `extra="allow"` mirrors the app's own model, which is also open - the step
|
|
1320
|
+
* shape carries per-channel extras the desk adds as it learns new channels,
|
|
1321
|
+
* and a closed mirror would DROP them on the way in rather than pass them
|
|
1322
|
+
* through.
|
|
1323
|
+
*
|
|
1324
|
+
* `approval_status` is closed because it reaches a real `Literal` inside the
|
|
1325
|
+
* handler: a free value would raise there and escape as a 500 instead of a
|
|
1326
|
+
* 422 naming the four states.
|
|
1327
|
+
*/
|
|
1328
|
+
export interface AccountPlanStep {
|
|
1329
|
+
approval_status?: "pending" | "approved" | "rejected" | "edited";
|
|
1330
|
+
channel?: string | null;
|
|
1331
|
+
/** Committee member this step is aimed at. */
|
|
1332
|
+
contact_id?: unknown | null;
|
|
1333
|
+
draft_content?: string | null;
|
|
1334
|
+
scheduled_at?: string | null;
|
|
1335
|
+
status?: string | null;
|
|
1336
|
+
/** Caller-assigned id, stable across versions. */
|
|
1337
|
+
step_id: string;
|
|
1338
|
+
why_now?: string | null;
|
|
1339
|
+
[key: string]: unknown;
|
|
1340
|
+
}
|
|
1341
|
+
|
|
1342
|
+
/**
|
|
1343
|
+
* Approve, reject or edit ONE step on the latest plan version.
|
|
1344
|
+
*
|
|
1345
|
+
* `action` is closed - it reaches a real `Literal` inside the handler.
|
|
1346
|
+
* `draft_content` is what `edit` edits; sending it with `approve` or
|
|
1347
|
+
* `reject` is accepted and ignored, exactly as the app treats it.
|
|
1348
|
+
*/
|
|
1349
|
+
export interface AccountPlanStepUpdateRequest {
|
|
1350
|
+
action: "approve" | "reject" | "edit";
|
|
1351
|
+
draft_content?: string | null;
|
|
1352
|
+
scheduled_at?: string | null;
|
|
1353
|
+
}
|
|
1354
|
+
|
|
1355
|
+
/**
|
|
1356
|
+
* Create the account's plan, or REPLAN it.
|
|
1357
|
+
*
|
|
1358
|
+
* There is no update: a replan inserts a new version and bumps
|
|
1359
|
+
* `plan_version`. Prior versions stay readable through
|
|
1360
|
+
* `/desk/accounts/{account_id}/plan/history`.
|
|
1361
|
+
*/
|
|
1362
|
+
export interface AccountPlanUpsertRequest {
|
|
1363
|
+
buying_committee_id?: string | null;
|
|
1364
|
+
buying_committee_members?: Array<Record<string, unknown>> | null;
|
|
1365
|
+
current_plan?: Array<AccountPlanStep>;
|
|
1366
|
+
deep_research_summary?: string | null;
|
|
1367
|
+
goal?: string | null;
|
|
1368
|
+
/** Optional why-now, recorded in the trigger history. */
|
|
1369
|
+
rationale?: string | null;
|
|
1370
|
+
/** draft | active | paused | archived. */
|
|
1371
|
+
status?: string | null;
|
|
1372
|
+
/** What caused this (re)plan. */
|
|
1373
|
+
trigger?: string;
|
|
1374
|
+
}
|
|
1375
|
+
|
|
1376
|
+
export interface ApiResponse_AccountPlanListPayload_ {
|
|
1377
|
+
data: AccountPlanListPayload;
|
|
1378
|
+
pagination?: PaginationMeta | null;
|
|
1379
|
+
}
|
|
1380
|
+
|
|
1381
|
+
export interface ApiResponse_AccountPlanPayload_ {
|
|
1382
|
+
data: AccountPlanPayload;
|
|
1383
|
+
pagination?: PaginationMeta | null;
|
|
1384
|
+
}
|
|
1385
|
+
|
|
1386
|
+
export interface ApiResponse_DeskBatch_ {
|
|
1387
|
+
data: DeskBatch;
|
|
1388
|
+
pagination?: PaginationMeta | null;
|
|
1389
|
+
}
|
|
1390
|
+
|
|
1391
|
+
export interface ApiResponse_DeskDecisionListResponse_ {
|
|
1392
|
+
data: DeskDecisionListResponse;
|
|
1393
|
+
pagination?: PaginationMeta | null;
|
|
1394
|
+
}
|
|
1395
|
+
|
|
1396
|
+
export interface ApiResponse_DeskListPayload_ {
|
|
1397
|
+
data: DeskListPayload;
|
|
1398
|
+
pagination?: PaginationMeta | null;
|
|
1399
|
+
}
|
|
1400
|
+
|
|
1401
|
+
export interface ApiResponse_DeskPayload_ {
|
|
1402
|
+
data: DeskPayload;
|
|
1403
|
+
pagination?: PaginationMeta | null;
|
|
1404
|
+
}
|
|
1405
|
+
|
|
1406
|
+
export interface ApiResponse_Union_DeskBatch__NoneType__ {
|
|
1407
|
+
data: DeskBatch | null;
|
|
1408
|
+
pagination?: PaginationMeta | null;
|
|
1409
|
+
}
|
|
1410
|
+
|
|
1411
|
+
export interface ApiResponse_dict_ {
|
|
1412
|
+
data: Record<string, unknown>;
|
|
1413
|
+
pagination?: PaginationMeta | null;
|
|
1414
|
+
}
|
|
1415
|
+
|
|
1416
|
+
/**
|
|
1417
|
+
* Add and remove buying-committee members in one call.
|
|
1418
|
+
*
|
|
1419
|
+
* A committee edit rides plan versioning like everything else: it persists a
|
|
1420
|
+
* NEW plan version, preserving the existing steps. Both lists are applied in
|
|
1421
|
+
* the same version, so adding and removing in one request cannot leave the
|
|
1422
|
+
* committee half-changed.
|
|
1423
|
+
*/
|
|
1424
|
+
export interface CommitteeEditRequest {
|
|
1425
|
+
add?: Array<CommitteeMemberInput>;
|
|
1426
|
+
/** Contact ids to take off the committee. */
|
|
1427
|
+
remove?: Array<number>;
|
|
1428
|
+
}
|
|
1429
|
+
|
|
1430
|
+
/**
|
|
1431
|
+
* The optional note on a LinkedIn connection request.
|
|
1432
|
+
*
|
|
1433
|
+
* 300 characters is LinkedIn's own cap, not a display limit.
|
|
1434
|
+
*/
|
|
1435
|
+
export interface CommitteeLinkedInInviteRequest {
|
|
1436
|
+
/** Optional invite note. Capped by LinkedIn at 300 characters. */
|
|
1437
|
+
note?: string | null;
|
|
1438
|
+
}
|
|
1439
|
+
|
|
1440
|
+
/** A contact to put on the buying committee. */
|
|
1441
|
+
export interface CommitteeMemberInput {
|
|
1442
|
+
contact_id: number;
|
|
1443
|
+
/** Their part in the decision, e.g. "champion". */
|
|
1444
|
+
role?: string | null;
|
|
1445
|
+
}
|
|
1446
|
+
|
|
1447
|
+
/**
|
|
1448
|
+
* Approve or reject one paused workflow run.
|
|
1449
|
+
*
|
|
1450
|
+
* `decision` is CLOSED to the two values the engine accepts. A free string
|
|
1451
|
+
* would reach the engine and come back as a 502, which reads like an outage
|
|
1452
|
+
* rather than a typo.
|
|
1453
|
+
*/
|
|
1454
|
+
export interface DeskApprovalDecisionRequest {
|
|
1455
|
+
decision: "approve" | "reject";
|
|
1456
|
+
/** Optional note. The engine records it as `notes` on an approval and `reason` on a rejection. */
|
|
1457
|
+
note?: string | null;
|
|
1458
|
+
}
|
|
1459
|
+
|
|
1460
|
+
/**
|
|
1461
|
+
* A grounded question about a card or a deal.
|
|
1462
|
+
*
|
|
1463
|
+
* Give it something to ground on: with neither `decision_id` nor `deal_id`
|
|
1464
|
+
* the answer has no record to read and comes back generic.
|
|
1465
|
+
*/
|
|
1466
|
+
export interface DeskAskRequest {
|
|
1467
|
+
/** Ground the answer in this deal. */
|
|
1468
|
+
deal_id?: string | null;
|
|
1469
|
+
/** Ground the answer in this decision card. */
|
|
1470
|
+
decision_id?: string | null;
|
|
1471
|
+
question: string;
|
|
1472
|
+
}
|
|
1473
|
+
|
|
1474
|
+
/**
|
|
1475
|
+
* Which decisions the desk may act on WITHOUT asking the rep first.
|
|
1476
|
+
*
|
|
1477
|
+
* A lane of `autopilot` means the desk executes that decision type on the
|
|
1478
|
+
* rep's behalf - including the ones that send. `approve` asks first, `off`
|
|
1479
|
+
* stops the type being raised at all. The app validates both maps against its
|
|
1480
|
+
* own `DecisionType` / `AutonomyLane` / lane-family vocabularies and answers
|
|
1481
|
+
* 400 on anything it could not act on, so this surface forwards them as open
|
|
1482
|
+
* maps rather than freezing a copy of three enums that move with the product.
|
|
1483
|
+
*
|
|
1484
|
+
* An omitted `autonomy_families` means "I did not touch the family
|
|
1485
|
+
* questions", so a partial save cannot wipe them. An explicit `{}` clears
|
|
1486
|
+
* them and hands every type back to its own lane - the only way back once a
|
|
1487
|
+
* family has been answered.
|
|
1488
|
+
*/
|
|
1489
|
+
export interface DeskAutonomyUpdate {
|
|
1490
|
+
/** Map of lane family -> lane (plan_work/outreach/hygiene_and_alerts). Omit to leave family answers untouched; send `{}` to clear them. */
|
|
1491
|
+
autonomy_families?: Record<string, string> | null;
|
|
1492
|
+
/** Map of decision_type -> lane (autopilot/approve/off). */
|
|
1493
|
+
lanes: Record<string, string>;
|
|
1494
|
+
}
|
|
1495
|
+
|
|
1496
|
+
/**
|
|
1497
|
+
* Today's frozen batch.
|
|
1498
|
+
*
|
|
1499
|
+
* A batch is FINITE by design: the rep freezes a ranked slice of the queue so
|
|
1500
|
+
* the day has an end. `None` from the app means no batch has been started
|
|
1501
|
+
* today, which is different from a batch with no items left - the response
|
|
1502
|
+
* keeps that distinction rather than flattening both to an empty batch.
|
|
1503
|
+
*/
|
|
1504
|
+
export interface DeskBatch {
|
|
1505
|
+
completed?: number | null;
|
|
1506
|
+
completed_at?: string | null;
|
|
1507
|
+
id?: string | null;
|
|
1508
|
+
item_ids?: Array<string>;
|
|
1509
|
+
remaining?: number | null;
|
|
1510
|
+
started_at?: string | null;
|
|
1511
|
+
status?: string | null;
|
|
1512
|
+
total?: number | null;
|
|
1513
|
+
[key: string]: unknown;
|
|
1514
|
+
}
|
|
1515
|
+
|
|
1516
|
+
/** Append newly selected cards to today's existing batch. */
|
|
1517
|
+
export interface DeskBatchPullRequest {
|
|
1518
|
+
/** Decision ids to append. 1-40 - a smaller cap than start, by design. */
|
|
1519
|
+
item_ids: Array<string>;
|
|
1520
|
+
/** The rep's UTC offset in minutes. */
|
|
1521
|
+
tz_offset?: number;
|
|
1522
|
+
}
|
|
1523
|
+
|
|
1524
|
+
/**
|
|
1525
|
+
* Freeze today's ranked queue into a finite batch.
|
|
1526
|
+
*
|
|
1527
|
+
* `item_ids` is typed `list[UUID]`, not `list[str]`, so a malformed id is a
|
|
1528
|
+
* request-validation 422 that NAMES the offending element. Typed as strings,
|
|
1529
|
+
* the app's own `list[UUID]` model raises a pydantic `ValidationError` from
|
|
1530
|
+
* inside the handler body instead - the same class of bare-500 the path
|
|
1531
|
+
* guard exists to prevent, one layer in.
|
|
1532
|
+
*/
|
|
1533
|
+
export interface DeskBatchStartRequest {
|
|
1534
|
+
/** Decision ids to freeze into the batch. 1-80 - the cap is the app's. */
|
|
1535
|
+
item_ids: Array<string>;
|
|
1536
|
+
/** The rep's UTC offset in MINUTES (local = UTC + tz_offset). A batch is scoped to the rep's local day, so a wrong offset returns yesterday's batch or starts a second one. */
|
|
1537
|
+
tz_offset?: number;
|
|
1538
|
+
}
|
|
1539
|
+
|
|
1540
|
+
/** One card in the queue: something the desk thinks a rep should do next. */
|
|
1541
|
+
export interface DeskDecision {
|
|
1542
|
+
created_at?: string | null;
|
|
1543
|
+
/** What kind of action this card is asking for. */
|
|
1544
|
+
decision_type?: string | null;
|
|
1545
|
+
entity_id?: string | null;
|
|
1546
|
+
entity_type?: string | null;
|
|
1547
|
+
id?: string | null;
|
|
1548
|
+
priority?: number | null;
|
|
1549
|
+
resolved_at?: string | null;
|
|
1550
|
+
snoozed_until?: string | null;
|
|
1551
|
+
/** Exact signal id, e.g. "form_submitted". */
|
|
1552
|
+
source?: string | null;
|
|
1553
|
+
/** Signal family, e.g. "forms". */
|
|
1554
|
+
source_group?: string | null;
|
|
1555
|
+
/** pending, approved, edited, skipped, deferred, snoozed, done_already. */
|
|
1556
|
+
status?: string | null;
|
|
1557
|
+
summary?: string | null;
|
|
1558
|
+
title?: string | null;
|
|
1559
|
+
[key: string]: unknown;
|
|
1560
|
+
}
|
|
1561
|
+
|
|
1562
|
+
/** A page of decision cards. */
|
|
1563
|
+
export interface DeskDecisionListResponse {
|
|
1564
|
+
decisions?: Array<DeskDecision>;
|
|
1565
|
+
total?: number;
|
|
1566
|
+
[key: string]: unknown;
|
|
1567
|
+
}
|
|
1568
|
+
|
|
1569
|
+
/** A draft to rewrite. The rewrite targets its FAILING subscores. */
|
|
1570
|
+
export interface DeskEmailImproveRequest {
|
|
1571
|
+
body: string;
|
|
1572
|
+
subject?: string;
|
|
1573
|
+
}
|
|
1574
|
+
|
|
1575
|
+
/** A draft to score 0-100. Heuristics plus an AI read. */
|
|
1576
|
+
export interface DeskEmailScoreRequest {
|
|
1577
|
+
body: string;
|
|
1578
|
+
/** Recipient name, used for the personalisation subscore. */
|
|
1579
|
+
contact_name?: string | null;
|
|
1580
|
+
subject?: string;
|
|
1581
|
+
}
|
|
1582
|
+
|
|
1583
|
+
/**
|
|
1584
|
+
* Claim a LinkedIn account for this rep, or give the claim up.
|
|
1585
|
+
*
|
|
1586
|
+
* NULL is the release, not a no-op. The claim is exclusive: two unique
|
|
1587
|
+
* constraints on the underlying table are what stop a rep taking a
|
|
1588
|
+
* colleague's account, so a claim on a held account is refused with a 409
|
|
1589
|
+
* rather than silently reassigned.
|
|
1590
|
+
*/
|
|
1591
|
+
export interface DeskLinkedInSenderUpdate {
|
|
1592
|
+
/** The LinkedIn account to claim. NULL releases the current claim. */
|
|
1593
|
+
provider_member_id?: string | null;
|
|
1594
|
+
}
|
|
1595
|
+
|
|
1596
|
+
/** Set or clear one list's daily dial target. */
|
|
1597
|
+
export interface DeskListGoalUpdate {
|
|
1598
|
+
/** The dial list this target belongs to. */
|
|
1599
|
+
audience_id: number;
|
|
1600
|
+
/** Dials per day. NULL CLEARS the target rather than setting zero. */
|
|
1601
|
+
target?: number | null;
|
|
1602
|
+
}
|
|
1603
|
+
|
|
1604
|
+
/**
|
|
1605
|
+
* The rep's own moves of dial lists into a band. THE WHOLE MAP.
|
|
1606
|
+
*
|
|
1607
|
+
* Keyed by dial-list (audience) id. A PUT REPLACES what is stored rather
|
|
1608
|
+
* than merging one entry into it, so a list left out goes back to the band
|
|
1609
|
+
* the desk would have put it in, and `{}` clears every move.
|
|
1610
|
+
*/
|
|
1611
|
+
export interface DeskListGroupOverrideUpdate {
|
|
1612
|
+
/** Dial-list id -> band (`form`, `warm` or `cold`). REPLACES every stored move. */
|
|
1613
|
+
overrides?: Record<string, "form" | "warm" | "cold">;
|
|
1614
|
+
}
|
|
1615
|
+
|
|
1616
|
+
/** An open envelope for a LIST result, so a bare list keeps its shape. */
|
|
1617
|
+
export interface DeskListPayload {
|
|
1618
|
+
items?: Array<unknown>;
|
|
1619
|
+
[key: string]: unknown;
|
|
1620
|
+
}
|
|
1621
|
+
|
|
1622
|
+
/**
|
|
1623
|
+
* The rep's dial-list order. THE WHOLE ORDER, most important first.
|
|
1624
|
+
*
|
|
1625
|
+
* Not a partial edit and not an append: the app replaces the stored order
|
|
1626
|
+
* with exactly this list, so a caller that sends one id has pinned one list
|
|
1627
|
+
* and UNPINNED every other. Said here because the field name alone reads like
|
|
1628
|
+
* "add these".
|
|
1629
|
+
*/
|
|
1630
|
+
export interface DeskListPriorityUpdate {
|
|
1631
|
+
/** Dial-list (audience) ids, most important first. REPLACES the whole order - an empty list clears every pin. */
|
|
1632
|
+
audience_ids?: Array<number>;
|
|
1633
|
+
}
|
|
1634
|
+
|
|
1635
|
+
/**
|
|
1636
|
+
* Org-level desk settings. PARTIAL - an unset field is left untouched.
|
|
1637
|
+
*
|
|
1638
|
+
* Mirrors `desk.interfaces.fastapi.dtos.DeskOrgSettingsUpdate` field for
|
|
1639
|
+
* field, pinned by test, because it is constructed inside the proxy.
|
|
1640
|
+
*
|
|
1641
|
+
* THREE KINDS OF FIELD LIVE HERE AND THEY ARE NOT EQUALLY QUIET
|
|
1642
|
+
* ---------------------------------------------------------------
|
|
1643
|
+
* Most are thresholds and ids. But `max_auto_account_plans_per_day`,
|
|
1644
|
+
* `max_account_replans_per_day` and `max_skill_plans_per_day` are the org's
|
|
1645
|
+
* DAILY SPEND CAPS on charged model calls, and `desk_acts_on_signals`,
|
|
1646
|
+
* `desk_drafts_with_ai`, `desk_writes_deal_plans`, `reps_may_fire_workflows`
|
|
1647
|
+
* and `stalled_deal_send_email` are the switches that let the desk act - and
|
|
1648
|
+
* email - on its own. That is why this operation is not tiered a plain
|
|
1649
|
+
* `write`; see the router docstring.
|
|
1650
|
+
*
|
|
1651
|
+
* Every value is validated by the app's own `validated_payload()` and
|
|
1652
|
+
* `save_desk_org_settings`, which answer 400 with the reason. This surface
|
|
1653
|
+
* does not second-guess either.
|
|
1654
|
+
*/
|
|
1655
|
+
export interface DeskOrgSettingsUpdate {
|
|
1656
|
+
contact_update_planned_deals_only?: boolean | null;
|
|
1657
|
+
daily_action_target?: number | null;
|
|
1658
|
+
desk_acts_on_signals?: boolean | null;
|
|
1659
|
+
desk_drafts_with_ai?: boolean | null;
|
|
1660
|
+
desk_escalates_to_managers?: boolean | null;
|
|
1661
|
+
desk_keeps_crm_tidy?: boolean | null;
|
|
1662
|
+
desk_writes_deal_plans?: boolean | null;
|
|
1663
|
+
enrichment_win_fields?: Array<string> | null;
|
|
1664
|
+
fallback_owner_emails?: Array<string> | null;
|
|
1665
|
+
lead_sla_minutes?: number | null;
|
|
1666
|
+
/** DAILY CAP on charged account re-plans. */
|
|
1667
|
+
max_account_replans_per_day?: number | null;
|
|
1668
|
+
/** DAILY CAP on charged auto account plans. */
|
|
1669
|
+
max_auto_account_plans_per_day?: number | null;
|
|
1670
|
+
max_cards_per_generator_per_day?: number | null;
|
|
1671
|
+
/** DAILY CAP on charged skill plans. */
|
|
1672
|
+
max_skill_plans_per_day?: number | null;
|
|
1673
|
+
no_reply_channels?: Array<string> | null;
|
|
1674
|
+
no_reply_threshold_days?: number | null;
|
|
1675
|
+
overdue_self_task_enabled?: boolean | null;
|
|
1676
|
+
overdue_task_max_age_days?: number | null;
|
|
1677
|
+
pipeline_target_quarterly?: number | null;
|
|
1678
|
+
plan_required_stage_ids?: Array<string> | null;
|
|
1679
|
+
reps_may_fire_workflows?: boolean | null;
|
|
1680
|
+
signal_policies?: Record<string, DeskSignalPolicy> | null;
|
|
1681
|
+
/** Per-signal kill switches. `ai_briefs` is the desk-wide LLM-spend gate and `morning_kickoff` gates the daily briefing. */
|
|
1682
|
+
signals_enabled?: Record<string, boolean> | null;
|
|
1683
|
+
stalled_deal_approve_after_days?: number | null;
|
|
1684
|
+
stalled_deal_enabled?: boolean | null;
|
|
1685
|
+
stalled_deal_fallback_manager_user_id?: string | null;
|
|
1686
|
+
stalled_deal_manager_user_id?: string | null;
|
|
1687
|
+
stalled_deal_min_amount?: number | null;
|
|
1688
|
+
stalled_deal_min_deal_age_days?: number | null;
|
|
1689
|
+
stalled_deal_reassign_to_user_id?: string | null;
|
|
1690
|
+
stalled_deal_reminder_after_hours?: number | null;
|
|
1691
|
+
stalled_deal_require_activity_evidence?: boolean | null;
|
|
1692
|
+
/** Let the stalled-deal escalation EMAIL the manager. */
|
|
1693
|
+
stalled_deal_send_email?: boolean | null;
|
|
1694
|
+
stalled_deal_skip_crm_synced_transfer?: boolean | null;
|
|
1695
|
+
stalled_deal_stage_ids?: Array<string> | null;
|
|
1696
|
+
stalled_deal_undo_window_minutes?: number | null;
|
|
1697
|
+
stalled_deal_warn_after_days?: number | null;
|
|
1698
|
+
}
|
|
1699
|
+
|
|
1700
|
+
/**
|
|
1701
|
+
* An open envelope for one desk object.
|
|
1702
|
+
*
|
|
1703
|
+
* Open on purpose - see the module docstring. A rebuilder gets every field
|
|
1704
|
+
* the desk returns, including ones added after this contract version.
|
|
1705
|
+
*/
|
|
1706
|
+
export type DeskPayload = Record<string, unknown>;
|
|
1707
|
+
|
|
1708
|
+
/** Resolve a pending decision. */
|
|
1709
|
+
export interface DeskResolveRequest {
|
|
1710
|
+
/** Action payload, e.g. the edited email body. */
|
|
1711
|
+
action_taken?: Record<string, unknown> | null;
|
|
1712
|
+
/** REQUIRED when status=snoozed. Wake time, UTC. */
|
|
1713
|
+
snoozed_until?: string | null;
|
|
1714
|
+
/** approved, edited, skipped, deferred, snoozed or done_already. A status the app does not accept is a 400 rather than being silently dropped, which is why this is an open string and not an enum this surface would have to keep in lock-step. `done_already` resolves the card AND records the work on its entity. */
|
|
1715
|
+
status: string;
|
|
1716
|
+
/** Early-wake condition, valid only with status=snoozed: reply | site_visit | stage_change. `snoozed_until` stays required as the fallback timeout. `stage_change` is accepted but only wakes via that timeout today - no deal-stage-change event reaches the desk signal consumer yet. */
|
|
1717
|
+
wake_condition?: string | null;
|
|
1718
|
+
}
|
|
1719
|
+
|
|
1720
|
+
/**
|
|
1721
|
+
* The rep's reply, as it will arrive in the prospect's inbox.
|
|
1722
|
+
*
|
|
1723
|
+
* An omitted `subject` keeps the thread's own. The opt-out check runs AGAIN
|
|
1724
|
+
* on send - `reply-target` already asked, but that answer is as old as the
|
|
1725
|
+
* editing session and a STOP arriving while the rep typed must not be sent
|
|
1726
|
+
* through.
|
|
1727
|
+
*/
|
|
1728
|
+
export interface DeskSendReplyRequest {
|
|
1729
|
+
/** The reply body. Reaches a real person. */
|
|
1730
|
+
body: string;
|
|
1731
|
+
subject?: string | null;
|
|
1732
|
+
}
|
|
1733
|
+
|
|
1734
|
+
/**
|
|
1735
|
+
* The rep's text, as it will arrive on the prospect's phone.
|
|
1736
|
+
*
|
|
1737
|
+
* 1600 characters is the app's ceiling, not a display limit - it is the
|
|
1738
|
+
* concatenated-SMS cap, and a longer body is refused rather than truncated.
|
|
1739
|
+
*/
|
|
1740
|
+
export interface DeskSendSmsRequest {
|
|
1741
|
+
/** The message. Reaches a real phone and costs carrier spend. */
|
|
1742
|
+
body: string;
|
|
1743
|
+
}
|
|
1744
|
+
|
|
1745
|
+
/**
|
|
1746
|
+
* Per-signal policy override. Mirrors the app's `DeskSignalPolicyUpdate`.
|
|
1747
|
+
*
|
|
1748
|
+
* Open (`extra="allow"`) rather than pinned: this nests inside a JSONB
|
|
1749
|
+
* settings blob the desk extends per signal family, and a closed mirror would
|
|
1750
|
+
* reject a key the app has just learned to read.
|
|
1751
|
+
*/
|
|
1752
|
+
export type DeskSignalPolicy = Record<string, unknown>;
|
|
1753
|
+
|
|
1754
|
+
export interface PaginationMeta {
|
|
1755
|
+
/** Whether there are more pages */
|
|
1756
|
+
has_next: boolean;
|
|
1757
|
+
/** Items per page */
|
|
1758
|
+
limit: number;
|
|
1759
|
+
/** 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. */
|
|
1760
|
+
next_cursor?: string | null;
|
|
1761
|
+
/** Current page number (1-indexed) */
|
|
1762
|
+
page: number;
|
|
1763
|
+
/** Total number of items */
|
|
1764
|
+
total: number;
|
|
1765
|
+
}
|