@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,1636 @@
|
|
|
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.companies` (Companies): 50 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<"assign_company_owner_companies_assign_owner_post">;
|
|
9
|
+
*
|
|
10
|
+
* Reference with examples: companies.md
|
|
11
|
+
*/
|
|
12
|
+
/* eslint-disable */
|
|
13
|
+
|
|
14
|
+
/** `g8.api.companies.<member>` -> the operationId it calls. */
|
|
15
|
+
export interface CompaniesMembers {
|
|
16
|
+
assignCompanyOwner: "assign_company_owner_companies_assign_owner_post";
|
|
17
|
+
attachCompanyContact: "attach_company_contact_companies__company_id__contacts__contact_id__post";
|
|
18
|
+
bulkEnrichCompanies: "bulk_enrich_companies_companies_enrich_bulk_post";
|
|
19
|
+
bulkEnrichCompanyPeople: "bulk_enrich_company_people_companies_enrich_people_bulk_post";
|
|
20
|
+
bulkEnrichCompanyStakeholders: "bulk_enrich_company_stakeholders_companies_enrich_stakeholders_bulk_post";
|
|
21
|
+
createCompany: "create_company_companies_post";
|
|
22
|
+
createCompanyColumn: "create_company_column_companies_columns_create_post";
|
|
23
|
+
createCompanyTask: "create_company_task_companies__company_id__tasks_post";
|
|
24
|
+
deleteCompany: "delete_company_companies__company_id__delete";
|
|
25
|
+
deleteCompanyColumn: "delete_company_column_companies_columns__column_id__delete";
|
|
26
|
+
deleteCompanyDocument: "delete_company_document_companies__company_id__documents__document_id__delete";
|
|
27
|
+
enrichCompany: "enrich_company_companies__company_id__enrich_post";
|
|
28
|
+
generateCompanyDocument: "generate_company_document_companies__company_id__documents_types__doc_type__generate_post";
|
|
29
|
+
getCompaniesOpenJobs: "get_companies_open_jobs_companies_open_jobs_post";
|
|
30
|
+
getCompany: "get_company_companies__company_id__get";
|
|
31
|
+
getCompanyBillingPrefill: "get_company_billing_prefill_companies__company_id__billing_prefill_get";
|
|
32
|
+
getCompanyContacts: "get_company_contacts_companies__company_id__contacts_get";
|
|
33
|
+
getCompanyDashboard: "get_company_dashboard_companies__company_id__dashboard_get";
|
|
34
|
+
getCompanyDetail: "get_company_detail_companies__company_id__detail_get";
|
|
35
|
+
getCompanyEngagementSummary: "get_company_engagement_summary_companies__company_id__engagement_summary_get";
|
|
36
|
+
getCompanyFormFields: "get_company_form_fields_companies_form_fields_get";
|
|
37
|
+
getCompanyIcpFit: "get_company_icp_fit_companies__company_id__icp_fit_get";
|
|
38
|
+
getCompanyIntelligenceData: "get_company_intelligence_data_companies__company_id__intelligence_data__data_type__get";
|
|
39
|
+
getCompanyIntelligenceStatus: "get_company_intelligence_status_companies__company_id__intelligence_status_get";
|
|
40
|
+
getCompanyIntelligenceSteps: "get_company_intelligence_steps_companies__company_id__intelligence_steps_get";
|
|
41
|
+
getCompanyNextBestStep: "get_company_next_best_step_companies__company_id__next_best_step_get";
|
|
42
|
+
getCompanyReviewStats: "get_company_review_stats_companies_review_stats_get";
|
|
43
|
+
getCompanySignals: "get_company_signals_companies__company_id__signals_get";
|
|
44
|
+
getCompanySitesVisited: "get_company_sites_visited_companies__company_id__sites_visited_get";
|
|
45
|
+
getCompanySynthesisReadiness: "get_company_synthesis_readiness_companies__company_id__synthesis_readiness_get";
|
|
46
|
+
getCompanyWorkflowStatus: "get_company_workflow_status_companies__company_id__workflow_status_get";
|
|
47
|
+
importCompanies: "import_companies_companies_import_post";
|
|
48
|
+
listCompanies: "list_companies_companies_get";
|
|
49
|
+
listCompaniesEnriched: "list_companies_enriched_companies_enriched_get";
|
|
50
|
+
listCompanyColumns: "list_company_columns_companies_columns_get";
|
|
51
|
+
listCompanyDocuments: "list_company_documents_companies__company_id__documents_get";
|
|
52
|
+
listCompanyPeople: "list_company_people_companies__company_id__people_get";
|
|
53
|
+
listCompanyTasks: "list_company_tasks_companies__company_id__tasks_get";
|
|
54
|
+
listContactsAcrossCompanies: "list_contacts_across_companies_companies_contacts_get";
|
|
55
|
+
mergeCompany: "merge_company_companies__company_id__merge_post";
|
|
56
|
+
mergeFilteredCompanies: "merge_filtered_companies_companies_merge_filtered_post";
|
|
57
|
+
previewCompanyMerge: "preview_company_merge_companies__company_id__merge_preview_get";
|
|
58
|
+
refreshCompanyBillingPrefill: "refresh_company_billing_prefill_companies__company_id__billing_prefill_refresh_post";
|
|
59
|
+
regenerateCompanyDocument: "regenerate_company_document_companies__company_id__documents_types__doc_type__regenerate_post";
|
|
60
|
+
removeCompanyContact: "remove_company_contact_companies__company_id__contacts__contact_id__delete";
|
|
61
|
+
retryCompanyIntelligence: "retry_company_intelligence_companies__company_id__retry_intelligence_post";
|
|
62
|
+
retryCompanySynthesis: "retry_company_synthesis_companies__company_id__retry_synthesis_post";
|
|
63
|
+
saveSkillResultToCompany: "save_skill_result_to_company_companies__company_id__documents_from_skill_post";
|
|
64
|
+
startCompanyWorkflow: "start_company_workflow_companies__company_id__workflows__workflow_type__start_post";
|
|
65
|
+
updateCompany: "update_company_companies__company_id__patch";
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/** Input and output of every `g8.api.companies` operation, keyed by operationId. */
|
|
69
|
+
export interface CompaniesOperations {
|
|
70
|
+
/**
|
|
71
|
+
* POST /companies/assign-owner
|
|
72
|
+
* Assign Company Owner
|
|
73
|
+
* tier: write · scope: companies:write
|
|
74
|
+
*/
|
|
75
|
+
assign_company_owner_companies_assign_owner_post: {
|
|
76
|
+
input: {
|
|
77
|
+
headers?: {
|
|
78
|
+
"X-Target-Org-Id"?: string | null;
|
|
79
|
+
};
|
|
80
|
+
body: AssignOwnerMatchingRequest;
|
|
81
|
+
};
|
|
82
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* POST /companies/{company_id}/contacts/{contact_id}
|
|
86
|
+
* Attach Company Contact
|
|
87
|
+
* tier: write · scope: companies:write
|
|
88
|
+
*/
|
|
89
|
+
attach_company_contact_companies__company_id__contacts__contact_id__post: {
|
|
90
|
+
input: {
|
|
91
|
+
path: {
|
|
92
|
+
/** Company id. */
|
|
93
|
+
company_id: string;
|
|
94
|
+
/** Contact to link to the company. */
|
|
95
|
+
contact_id: string;
|
|
96
|
+
};
|
|
97
|
+
headers?: {
|
|
98
|
+
"X-Target-Org-Id"?: string | null;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* POST /companies/enrich/bulk
|
|
105
|
+
* Bulk Enrich Companies
|
|
106
|
+
* tier: billable · scope: enrichment:run
|
|
107
|
+
*/
|
|
108
|
+
bulk_enrich_companies_companies_enrich_bulk_post: {
|
|
109
|
+
input: {
|
|
110
|
+
headers?: {
|
|
111
|
+
"X-Target-Org-Id"?: string | null;
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* POST /companies/enrich/people/bulk
|
|
118
|
+
* Bulk Enrich Company People
|
|
119
|
+
* tier: billable · scope: enrichment:run
|
|
120
|
+
*/
|
|
121
|
+
bulk_enrich_company_people_companies_enrich_people_bulk_post: {
|
|
122
|
+
input: {
|
|
123
|
+
headers?: {
|
|
124
|
+
"X-Target-Org-Id"?: string | null;
|
|
125
|
+
};
|
|
126
|
+
};
|
|
127
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
128
|
+
};
|
|
129
|
+
/**
|
|
130
|
+
* POST /companies/enrich/stakeholders/bulk
|
|
131
|
+
* Bulk Enrich Company Stakeholders
|
|
132
|
+
* tier: billable · scope: enrichment:run
|
|
133
|
+
*/
|
|
134
|
+
bulk_enrich_company_stakeholders_companies_enrich_stakeholders_bulk_post: {
|
|
135
|
+
input: {
|
|
136
|
+
headers?: {
|
|
137
|
+
"X-Target-Org-Id"?: string | null;
|
|
138
|
+
};
|
|
139
|
+
};
|
|
140
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
141
|
+
};
|
|
142
|
+
/**
|
|
143
|
+
* POST /companies
|
|
144
|
+
* Create Company
|
|
145
|
+
* tier: write · scope: companies:write
|
|
146
|
+
*/
|
|
147
|
+
create_company_companies_post: {
|
|
148
|
+
input: {
|
|
149
|
+
headers?: {
|
|
150
|
+
"X-Target-Org-Id"?: string | null;
|
|
151
|
+
};
|
|
152
|
+
body: CompanyCreateRequest;
|
|
153
|
+
};
|
|
154
|
+
output: ApiResponse_CompanyCreateResponse_;
|
|
155
|
+
};
|
|
156
|
+
/**
|
|
157
|
+
* POST /companies/columns/create
|
|
158
|
+
* Create Company Column
|
|
159
|
+
* tier: write · scope: companies:write
|
|
160
|
+
*/
|
|
161
|
+
create_company_column_companies_columns_create_post: {
|
|
162
|
+
input: {
|
|
163
|
+
headers?: {
|
|
164
|
+
"X-Target-Org-Id"?: string | null;
|
|
165
|
+
};
|
|
166
|
+
body: CreateCompanyColumnRequest;
|
|
167
|
+
};
|
|
168
|
+
output: ApiResponse_CreateCompanyColumnResponse_;
|
|
169
|
+
};
|
|
170
|
+
/**
|
|
171
|
+
* POST /companies/{company_id}/tasks
|
|
172
|
+
* Create Company Task
|
|
173
|
+
* tier: write · scope: companies:write
|
|
174
|
+
*/
|
|
175
|
+
create_company_task_companies__company_id__tasks_post: {
|
|
176
|
+
input: {
|
|
177
|
+
path: {
|
|
178
|
+
/** Company id. */
|
|
179
|
+
company_id: number;
|
|
180
|
+
};
|
|
181
|
+
headers?: {
|
|
182
|
+
"X-Target-Org-Id"?: string | null;
|
|
183
|
+
};
|
|
184
|
+
body: CompanyTaskCreateRequest;
|
|
185
|
+
};
|
|
186
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
187
|
+
};
|
|
188
|
+
/**
|
|
189
|
+
* DELETE /companies/{company_id}
|
|
190
|
+
* Delete Company
|
|
191
|
+
* tier: destructive · scope: companies:delete
|
|
192
|
+
*/
|
|
193
|
+
delete_company_companies__company_id__delete: {
|
|
194
|
+
input: {
|
|
195
|
+
path: {
|
|
196
|
+
/** Company ID */
|
|
197
|
+
company_id: number;
|
|
198
|
+
};
|
|
199
|
+
headers?: {
|
|
200
|
+
"X-Target-Org-Id"?: string | null;
|
|
201
|
+
};
|
|
202
|
+
};
|
|
203
|
+
output: ApiResponse_dict_;
|
|
204
|
+
};
|
|
205
|
+
/**
|
|
206
|
+
* DELETE /companies/columns/{column_id}
|
|
207
|
+
* Delete Company Column
|
|
208
|
+
* tier: destructive · scope: companies:delete
|
|
209
|
+
*/
|
|
210
|
+
delete_company_column_companies_columns__column_id__delete: {
|
|
211
|
+
input: {
|
|
212
|
+
path: {
|
|
213
|
+
/** ID of the column to delete */
|
|
214
|
+
column_id: number;
|
|
215
|
+
};
|
|
216
|
+
headers?: {
|
|
217
|
+
"X-Target-Org-Id"?: string | null;
|
|
218
|
+
};
|
|
219
|
+
};
|
|
220
|
+
output: ApiResponse_dict_;
|
|
221
|
+
};
|
|
222
|
+
/**
|
|
223
|
+
* DELETE /companies/{company_id}/documents/{document_id}
|
|
224
|
+
* Delete Company Document
|
|
225
|
+
* tier: destructive · scope: companies:delete
|
|
226
|
+
*/
|
|
227
|
+
delete_company_document_companies__company_id__documents__document_id__delete: {
|
|
228
|
+
input: {
|
|
229
|
+
path: {
|
|
230
|
+
/** Company id. */
|
|
231
|
+
company_id: string;
|
|
232
|
+
/** Document id. */
|
|
233
|
+
document_id: string;
|
|
234
|
+
};
|
|
235
|
+
headers?: {
|
|
236
|
+
"X-Target-Org-Id"?: string | null;
|
|
237
|
+
};
|
|
238
|
+
};
|
|
239
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
240
|
+
};
|
|
241
|
+
/**
|
|
242
|
+
* POST /companies/{company_id}/enrich
|
|
243
|
+
* Enrich Company
|
|
244
|
+
* tier: billable · scope: enrichment:run
|
|
245
|
+
*/
|
|
246
|
+
enrich_company_companies__company_id__enrich_post: {
|
|
247
|
+
input: {
|
|
248
|
+
path: {
|
|
249
|
+
/** Company id. */
|
|
250
|
+
company_id: string;
|
|
251
|
+
};
|
|
252
|
+
headers?: {
|
|
253
|
+
"X-Target-Org-Id"?: string | null;
|
|
254
|
+
};
|
|
255
|
+
};
|
|
256
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
257
|
+
};
|
|
258
|
+
/**
|
|
259
|
+
* POST /companies/{company_id}/documents/types/{doc_type}/generate
|
|
260
|
+
* Generate Company Document
|
|
261
|
+
* tier: billable · scope: enrichment:run
|
|
262
|
+
*/
|
|
263
|
+
generate_company_document_companies__company_id__documents_types__doc_type__generate_post: {
|
|
264
|
+
input: {
|
|
265
|
+
path: {
|
|
266
|
+
/** Company id. */
|
|
267
|
+
company_id: string;
|
|
268
|
+
/** Document type, e.g. `account_brief`. */
|
|
269
|
+
doc_type: string;
|
|
270
|
+
};
|
|
271
|
+
headers?: {
|
|
272
|
+
"X-Target-Org-Id"?: string | null;
|
|
273
|
+
};
|
|
274
|
+
};
|
|
275
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
276
|
+
};
|
|
277
|
+
/**
|
|
278
|
+
* POST /companies/open-jobs
|
|
279
|
+
* Get Companies Open Jobs
|
|
280
|
+
* tier: read · scope: companies:read
|
|
281
|
+
*/
|
|
282
|
+
get_companies_open_jobs_companies_open_jobs_post: {
|
|
283
|
+
input: {
|
|
284
|
+
headers?: {
|
|
285
|
+
"X-Target-Org-Id"?: string | null;
|
|
286
|
+
};
|
|
287
|
+
body: CompaniesOpenJobsRequest;
|
|
288
|
+
};
|
|
289
|
+
output: ApiResponse_dict_;
|
|
290
|
+
};
|
|
291
|
+
/**
|
|
292
|
+
* GET /companies/{company_id}
|
|
293
|
+
* Get Company
|
|
294
|
+
* tier: read · scope: companies:read
|
|
295
|
+
*/
|
|
296
|
+
get_company_companies__company_id__get: {
|
|
297
|
+
input: {
|
|
298
|
+
path: {
|
|
299
|
+
/** Company ID */
|
|
300
|
+
company_id: number;
|
|
301
|
+
};
|
|
302
|
+
query?: {
|
|
303
|
+
/** When true, the response includes a `custom_fields` object of custom column values keyed by column slug. Default false omits it. */
|
|
304
|
+
include_custom_fields?: boolean;
|
|
305
|
+
};
|
|
306
|
+
headers?: {
|
|
307
|
+
"X-Target-Org-Id"?: string | null;
|
|
308
|
+
};
|
|
309
|
+
};
|
|
310
|
+
output: ApiResponse_CompanyResponse_;
|
|
311
|
+
};
|
|
312
|
+
/**
|
|
313
|
+
* GET /companies/{company_id}/billing-prefill
|
|
314
|
+
* Get Company Billing Prefill
|
|
315
|
+
* tier: read · scope: companies:read
|
|
316
|
+
*/
|
|
317
|
+
get_company_billing_prefill_companies__company_id__billing_prefill_get: {
|
|
318
|
+
input: {
|
|
319
|
+
path: {
|
|
320
|
+
/** Company id. */
|
|
321
|
+
company_id: string;
|
|
322
|
+
};
|
|
323
|
+
headers?: {
|
|
324
|
+
"X-Target-Org-Id"?: string | null;
|
|
325
|
+
};
|
|
326
|
+
};
|
|
327
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
328
|
+
};
|
|
329
|
+
/**
|
|
330
|
+
* GET /companies/{company_id}/contacts
|
|
331
|
+
* Get Company Contacts
|
|
332
|
+
* tier: read · scope: companies:read
|
|
333
|
+
*/
|
|
334
|
+
get_company_contacts_companies__company_id__contacts_get: {
|
|
335
|
+
input: {
|
|
336
|
+
path: {
|
|
337
|
+
/** Company ID */
|
|
338
|
+
company_id: number;
|
|
339
|
+
};
|
|
340
|
+
query?: {
|
|
341
|
+
/** Items per page (max 200) */
|
|
342
|
+
limit?: number;
|
|
343
|
+
/** Offset for pagination */
|
|
344
|
+
offset?: number;
|
|
345
|
+
};
|
|
346
|
+
headers?: {
|
|
347
|
+
"X-Target-Org-Id"?: string | null;
|
|
348
|
+
};
|
|
349
|
+
};
|
|
350
|
+
output: ApiResponse_list_CompanyContactItem__;
|
|
351
|
+
};
|
|
352
|
+
/**
|
|
353
|
+
* GET /companies/{company_id}/dashboard
|
|
354
|
+
* Get Company Dashboard
|
|
355
|
+
* tier: read · scope: companies:read
|
|
356
|
+
*/
|
|
357
|
+
get_company_dashboard_companies__company_id__dashboard_get: {
|
|
358
|
+
input: {
|
|
359
|
+
path: {
|
|
360
|
+
/** Company id. */
|
|
361
|
+
company_id: string;
|
|
362
|
+
};
|
|
363
|
+
headers?: {
|
|
364
|
+
"X-Target-Org-Id"?: string | null;
|
|
365
|
+
};
|
|
366
|
+
};
|
|
367
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
368
|
+
};
|
|
369
|
+
/**
|
|
370
|
+
* GET /companies/{company_id}/detail
|
|
371
|
+
* Get Company Detail
|
|
372
|
+
* tier: read · scope: companies:read
|
|
373
|
+
*/
|
|
374
|
+
get_company_detail_companies__company_id__detail_get: {
|
|
375
|
+
input: {
|
|
376
|
+
path: {
|
|
377
|
+
/** Company id. */
|
|
378
|
+
company_id: string;
|
|
379
|
+
};
|
|
380
|
+
query?: {
|
|
381
|
+
/** `auto` resolves the graph8 company id (integer or UUID); `company_id` resolves the global company business key. */
|
|
382
|
+
id_kind?: "auto" | "company_id";
|
|
383
|
+
};
|
|
384
|
+
headers?: {
|
|
385
|
+
"X-Target-Org-Id"?: string | null;
|
|
386
|
+
};
|
|
387
|
+
};
|
|
388
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
389
|
+
};
|
|
390
|
+
/**
|
|
391
|
+
* GET /companies/{company_id}/engagement-summary
|
|
392
|
+
* Get Company Engagement Summary
|
|
393
|
+
* tier: read · scope: companies:read
|
|
394
|
+
*/
|
|
395
|
+
get_company_engagement_summary_companies__company_id__engagement_summary_get: {
|
|
396
|
+
input: {
|
|
397
|
+
path: {
|
|
398
|
+
/** Company id. */
|
|
399
|
+
company_id: string;
|
|
400
|
+
};
|
|
401
|
+
headers?: {
|
|
402
|
+
"X-Target-Org-Id"?: string | null;
|
|
403
|
+
};
|
|
404
|
+
};
|
|
405
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
406
|
+
};
|
|
407
|
+
/**
|
|
408
|
+
* GET /companies/form-fields
|
|
409
|
+
* Get Company Form Fields
|
|
410
|
+
* tier: read · scope: companies:read
|
|
411
|
+
*/
|
|
412
|
+
get_company_form_fields_companies_form_fields_get: {
|
|
413
|
+
input: {
|
|
414
|
+
query?: {
|
|
415
|
+
/** Include this list's custom fields. */
|
|
416
|
+
list_id?: number | null;
|
|
417
|
+
};
|
|
418
|
+
headers?: {
|
|
419
|
+
"X-Target-Org-Id"?: string | null;
|
|
420
|
+
};
|
|
421
|
+
};
|
|
422
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
423
|
+
};
|
|
424
|
+
/**
|
|
425
|
+
* GET /companies/{company_id}/icp-fit
|
|
426
|
+
* Get Company Icp Fit
|
|
427
|
+
* tier: read · scope: companies:read
|
|
428
|
+
*/
|
|
429
|
+
get_company_icp_fit_companies__company_id__icp_fit_get: {
|
|
430
|
+
input: {
|
|
431
|
+
path: {
|
|
432
|
+
/** Company business key. */
|
|
433
|
+
company_id: number;
|
|
434
|
+
};
|
|
435
|
+
headers?: {
|
|
436
|
+
"X-Target-Org-Id"?: string | null;
|
|
437
|
+
};
|
|
438
|
+
};
|
|
439
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
440
|
+
};
|
|
441
|
+
/**
|
|
442
|
+
* GET /companies/{company_id}/intelligence-data/{data_type}
|
|
443
|
+
* Get Company Intelligence Data
|
|
444
|
+
* tier: read · scope: companies:read
|
|
445
|
+
*/
|
|
446
|
+
get_company_intelligence_data_companies__company_id__intelligence_data__data_type__get: {
|
|
447
|
+
input: {
|
|
448
|
+
path: {
|
|
449
|
+
/** Company id. */
|
|
450
|
+
company_id: string;
|
|
451
|
+
/** Intelligence data type, e.g. `tech_stack`. */
|
|
452
|
+
data_type: string;
|
|
453
|
+
};
|
|
454
|
+
headers?: {
|
|
455
|
+
"X-Target-Org-Id"?: string | null;
|
|
456
|
+
};
|
|
457
|
+
};
|
|
458
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
459
|
+
};
|
|
460
|
+
/**
|
|
461
|
+
* GET /companies/{company_id}/intelligence-status
|
|
462
|
+
* Get Company Intelligence Status
|
|
463
|
+
* tier: read · scope: companies:read
|
|
464
|
+
*/
|
|
465
|
+
get_company_intelligence_status_companies__company_id__intelligence_status_get: {
|
|
466
|
+
input: {
|
|
467
|
+
path: {
|
|
468
|
+
/** Company id. */
|
|
469
|
+
company_id: string;
|
|
470
|
+
};
|
|
471
|
+
headers?: {
|
|
472
|
+
"X-Target-Org-Id"?: string | null;
|
|
473
|
+
};
|
|
474
|
+
};
|
|
475
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
476
|
+
};
|
|
477
|
+
/**
|
|
478
|
+
* GET /companies/{company_id}/intelligence-steps
|
|
479
|
+
* Get Company Intelligence Steps
|
|
480
|
+
* tier: read · scope: companies:read
|
|
481
|
+
*/
|
|
482
|
+
get_company_intelligence_steps_companies__company_id__intelligence_steps_get: {
|
|
483
|
+
input: {
|
|
484
|
+
path: {
|
|
485
|
+
/** Company id. */
|
|
486
|
+
company_id: string;
|
|
487
|
+
};
|
|
488
|
+
headers?: {
|
|
489
|
+
"X-Target-Org-Id"?: string | null;
|
|
490
|
+
};
|
|
491
|
+
};
|
|
492
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
493
|
+
};
|
|
494
|
+
/**
|
|
495
|
+
* GET /companies/{company_id}/next-best-step
|
|
496
|
+
* Get Company Next Best Step
|
|
497
|
+
* tier: billable · scope: enrichment:run
|
|
498
|
+
*/
|
|
499
|
+
get_company_next_best_step_companies__company_id__next_best_step_get: {
|
|
500
|
+
input: {
|
|
501
|
+
path: {
|
|
502
|
+
/** Company id. */
|
|
503
|
+
company_id: number;
|
|
504
|
+
};
|
|
505
|
+
headers?: {
|
|
506
|
+
"X-Target-Org-Id"?: string | null;
|
|
507
|
+
};
|
|
508
|
+
};
|
|
509
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
510
|
+
};
|
|
511
|
+
/**
|
|
512
|
+
* GET /companies/review-stats
|
|
513
|
+
* Get Company Review Stats
|
|
514
|
+
* tier: read · scope: companies:read
|
|
515
|
+
*/
|
|
516
|
+
get_company_review_stats_companies_review_stats_get: {
|
|
517
|
+
input: {
|
|
518
|
+
headers?: {
|
|
519
|
+
"X-Target-Org-Id"?: string | null;
|
|
520
|
+
};
|
|
521
|
+
};
|
|
522
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
523
|
+
};
|
|
524
|
+
/**
|
|
525
|
+
* GET /companies/{company_id}/signals
|
|
526
|
+
* Get Company Signals
|
|
527
|
+
* tier: read · scope: companies:read
|
|
528
|
+
*/
|
|
529
|
+
get_company_signals_companies__company_id__signals_get: {
|
|
530
|
+
input: {
|
|
531
|
+
path: {
|
|
532
|
+
/** Company id. */
|
|
533
|
+
company_id: number;
|
|
534
|
+
};
|
|
535
|
+
headers?: {
|
|
536
|
+
"X-Target-Org-Id"?: string | null;
|
|
537
|
+
};
|
|
538
|
+
};
|
|
539
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
540
|
+
};
|
|
541
|
+
/**
|
|
542
|
+
* GET /companies/{company_id}/sites-visited
|
|
543
|
+
* Get Company Sites Visited
|
|
544
|
+
* tier: read · scope: companies:read
|
|
545
|
+
*/
|
|
546
|
+
get_company_sites_visited_companies__company_id__sites_visited_get: {
|
|
547
|
+
input: {
|
|
548
|
+
path: {
|
|
549
|
+
/** Company business key. */
|
|
550
|
+
company_id: number;
|
|
551
|
+
};
|
|
552
|
+
query?: {
|
|
553
|
+
/** Lookback window. Bounded here rather than left open: the query is an unindexed analytics scan and an unbounded window is a cheap way to exhaust it. */
|
|
554
|
+
days?: number;
|
|
555
|
+
};
|
|
556
|
+
headers?: {
|
|
557
|
+
"X-Target-Org-Id"?: string | null;
|
|
558
|
+
};
|
|
559
|
+
};
|
|
560
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
561
|
+
};
|
|
562
|
+
/**
|
|
563
|
+
* GET /companies/{company_id}/synthesis-readiness
|
|
564
|
+
* Get Company Synthesis Readiness
|
|
565
|
+
* tier: read · scope: companies:read
|
|
566
|
+
*/
|
|
567
|
+
get_company_synthesis_readiness_companies__company_id__synthesis_readiness_get: {
|
|
568
|
+
input: {
|
|
569
|
+
path: {
|
|
570
|
+
/** Company id. */
|
|
571
|
+
company_id: string;
|
|
572
|
+
};
|
|
573
|
+
headers?: {
|
|
574
|
+
"X-Target-Org-Id"?: string | null;
|
|
575
|
+
};
|
|
576
|
+
};
|
|
577
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
578
|
+
};
|
|
579
|
+
/**
|
|
580
|
+
* GET /companies/{company_id}/workflow-status
|
|
581
|
+
* Get Company Workflow Status
|
|
582
|
+
* tier: read · scope: companies:read
|
|
583
|
+
*/
|
|
584
|
+
get_company_workflow_status_companies__company_id__workflow_status_get: {
|
|
585
|
+
input: {
|
|
586
|
+
path: {
|
|
587
|
+
/** Company id. */
|
|
588
|
+
company_id: string;
|
|
589
|
+
};
|
|
590
|
+
query?: {
|
|
591
|
+
/** Also list the documents each workflow produced. */
|
|
592
|
+
include_documents?: boolean;
|
|
593
|
+
};
|
|
594
|
+
headers?: {
|
|
595
|
+
"X-Target-Org-Id"?: string | null;
|
|
596
|
+
};
|
|
597
|
+
};
|
|
598
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
599
|
+
};
|
|
600
|
+
/**
|
|
601
|
+
* POST /companies/import
|
|
602
|
+
* Import Companies
|
|
603
|
+
* tier: billable · scope: enrichment:run
|
|
604
|
+
*/
|
|
605
|
+
import_companies_companies_import_post: {
|
|
606
|
+
input: {
|
|
607
|
+
headers?: {
|
|
608
|
+
"X-Target-Org-Id"?: string | null;
|
|
609
|
+
};
|
|
610
|
+
body: ImportCompaniesRequest;
|
|
611
|
+
};
|
|
612
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
613
|
+
};
|
|
614
|
+
/**
|
|
615
|
+
* GET /companies
|
|
616
|
+
* List Companies
|
|
617
|
+
* tier: read · scope: companies:read
|
|
618
|
+
*/
|
|
619
|
+
list_companies_companies_get: {
|
|
620
|
+
input: {
|
|
621
|
+
query?: {
|
|
622
|
+
/** Page number (1-indexed) */
|
|
623
|
+
page?: number;
|
|
624
|
+
/** Items per page (max 200) */
|
|
625
|
+
limit?: number;
|
|
626
|
+
/** Filter by domain (exact match) */
|
|
627
|
+
domain?: string | null;
|
|
628
|
+
/** Filter by industry (partial match) */
|
|
629
|
+
industry?: string | null;
|
|
630
|
+
/** Filter by company name (partial match) */
|
|
631
|
+
name?: string | null;
|
|
632
|
+
/** Minimum employee count */
|
|
633
|
+
employee_count_min?: number | null;
|
|
634
|
+
/** Maximum employee count */
|
|
635
|
+
employee_count_max?: number | null;
|
|
636
|
+
/** Filter by country (exact match) */
|
|
637
|
+
country?: string | null;
|
|
638
|
+
/** Filter by state (exact match) */
|
|
639
|
+
state?: string | null;
|
|
640
|
+
/** Filter by city (partial match) */
|
|
641
|
+
city?: string | null;
|
|
642
|
+
/** Filter by company description (partial match) */
|
|
643
|
+
description?: string | null;
|
|
644
|
+
/** Minimum annual revenue */
|
|
645
|
+
revenue_min?: number | null;
|
|
646
|
+
/** Maximum annual revenue */
|
|
647
|
+
revenue_max?: number | null;
|
|
648
|
+
/** Minimum founding year */
|
|
649
|
+
founded_year_min?: number | null;
|
|
650
|
+
/** Maximum founding year */
|
|
651
|
+
founded_year_max?: number | null;
|
|
652
|
+
/** Minimum LinkedIn followers */
|
|
653
|
+
linkedin_followers_min?: number | null;
|
|
654
|
+
/** Maximum LinkedIn followers */
|
|
655
|
+
linkedin_followers_max?: number | null;
|
|
656
|
+
/** When true, each company includes a `custom_fields` object of custom column values keyed by column slug. Default false keeps the legacy response shape and adds no extra query. */
|
|
657
|
+
include_custom_fields?: boolean;
|
|
658
|
+
};
|
|
659
|
+
headers?: {
|
|
660
|
+
"X-Target-Org-Id"?: string | null;
|
|
661
|
+
};
|
|
662
|
+
};
|
|
663
|
+
output: ApiResponse_list_CompanyListItem__;
|
|
664
|
+
};
|
|
665
|
+
/**
|
|
666
|
+
* GET /companies/enriched
|
|
667
|
+
* List Companies Enriched
|
|
668
|
+
* tier: read · scope: companies:read
|
|
669
|
+
*/
|
|
670
|
+
list_companies_enriched_companies_enriched_get: {
|
|
671
|
+
input: {
|
|
672
|
+
query?: {
|
|
673
|
+
/** Rows to skip. */
|
|
674
|
+
skip?: number;
|
|
675
|
+
/** Rows to return. The app defaults this to 10000 - the entire roster in one response. Defaulted to 100 here; raise it deliberately. */
|
|
676
|
+
limit?: number;
|
|
677
|
+
/** Substring match on name or domain. */
|
|
678
|
+
search?: string | null;
|
|
679
|
+
/** Filter by record status, e.g. `prospect`. */
|
|
680
|
+
status?: string | null;
|
|
681
|
+
/** Filter by website status. */
|
|
682
|
+
website_status?: string | null;
|
|
683
|
+
};
|
|
684
|
+
headers?: {
|
|
685
|
+
"X-Target-Org-Id"?: string | null;
|
|
686
|
+
};
|
|
687
|
+
};
|
|
688
|
+
output: ApiResponse_CrmCollectionPayload_;
|
|
689
|
+
};
|
|
690
|
+
/**
|
|
691
|
+
* GET /companies/columns
|
|
692
|
+
* List Company Columns
|
|
693
|
+
* tier: read · scope: companies:read
|
|
694
|
+
*/
|
|
695
|
+
list_company_columns_companies_columns_get: {
|
|
696
|
+
input: {
|
|
697
|
+
query?: {
|
|
698
|
+
/** Optional list ID. When provided, list-specific dynamic columns are included alongside global ones. */
|
|
699
|
+
list_id?: number | null;
|
|
700
|
+
};
|
|
701
|
+
headers?: {
|
|
702
|
+
"X-Target-Org-Id"?: string | null;
|
|
703
|
+
};
|
|
704
|
+
};
|
|
705
|
+
output: ApiResponse_list_Column__;
|
|
706
|
+
};
|
|
707
|
+
/**
|
|
708
|
+
* GET /companies/{company_id}/documents
|
|
709
|
+
* List Company Documents
|
|
710
|
+
* tier: read · scope: companies:read
|
|
711
|
+
*/
|
|
712
|
+
list_company_documents_companies__company_id__documents_get: {
|
|
713
|
+
input: {
|
|
714
|
+
path: {
|
|
715
|
+
/** Company id. */
|
|
716
|
+
company_id: string;
|
|
717
|
+
};
|
|
718
|
+
query?: {
|
|
719
|
+
/** Only documents in this folder. */
|
|
720
|
+
folder?: string | null;
|
|
721
|
+
};
|
|
722
|
+
headers?: {
|
|
723
|
+
"X-Target-Org-Id"?: string | null;
|
|
724
|
+
};
|
|
725
|
+
};
|
|
726
|
+
output: ApiResponse_CrmCollectionPayload_;
|
|
727
|
+
};
|
|
728
|
+
/**
|
|
729
|
+
* GET /companies/{company_id}/people
|
|
730
|
+
* List Company People
|
|
731
|
+
* tier: read · scope: companies:read
|
|
732
|
+
*/
|
|
733
|
+
list_company_people_companies__company_id__people_get: {
|
|
734
|
+
input: {
|
|
735
|
+
path: {
|
|
736
|
+
/** Company id. */
|
|
737
|
+
company_id: string;
|
|
738
|
+
};
|
|
739
|
+
headers?: {
|
|
740
|
+
"X-Target-Org-Id"?: string | null;
|
|
741
|
+
};
|
|
742
|
+
};
|
|
743
|
+
output: ApiResponse_CrmCollectionPayload_;
|
|
744
|
+
};
|
|
745
|
+
/**
|
|
746
|
+
* GET /companies/{company_id}/tasks
|
|
747
|
+
* List Company Tasks
|
|
748
|
+
* tier: read · scope: companies:read
|
|
749
|
+
*/
|
|
750
|
+
list_company_tasks_companies__company_id__tasks_get: {
|
|
751
|
+
input: {
|
|
752
|
+
path: {
|
|
753
|
+
/** Company id. */
|
|
754
|
+
company_id: number;
|
|
755
|
+
};
|
|
756
|
+
query?: {
|
|
757
|
+
/** Only tasks in this status. */
|
|
758
|
+
task_status?: string | null;
|
|
759
|
+
};
|
|
760
|
+
headers?: {
|
|
761
|
+
"X-Target-Org-Id"?: string | null;
|
|
762
|
+
};
|
|
763
|
+
};
|
|
764
|
+
output: ApiResponse_CrmCollectionPayload_;
|
|
765
|
+
};
|
|
766
|
+
/**
|
|
767
|
+
* GET /companies/contacts
|
|
768
|
+
* List Contacts Across Companies
|
|
769
|
+
* tier: read · scope: companies:read
|
|
770
|
+
*/
|
|
771
|
+
list_contacts_across_companies_companies_contacts_get: {
|
|
772
|
+
input: {
|
|
773
|
+
query?: {
|
|
774
|
+
skip?: number;
|
|
775
|
+
/** The app defaults this to 10000; 100 here. */
|
|
776
|
+
limit?: number;
|
|
777
|
+
/** Substring match on name or email. */
|
|
778
|
+
search?: string | null;
|
|
779
|
+
/** Filter by job department. */
|
|
780
|
+
department?: string | null;
|
|
781
|
+
/** Filter by buying-committee role, e.g. `decision_maker`. */
|
|
782
|
+
buying_role?: string | null;
|
|
783
|
+
/** Only contacts attached to an open deal. */
|
|
784
|
+
in_pipeline?: boolean;
|
|
785
|
+
/** Filter by contact owner. */
|
|
786
|
+
owner_id?: string | null;
|
|
787
|
+
/** name | title | company_name | department | email | updated_at */
|
|
788
|
+
sort_by?: string;
|
|
789
|
+
/** asc | desc */
|
|
790
|
+
sort_order?: string;
|
|
791
|
+
};
|
|
792
|
+
headers?: {
|
|
793
|
+
"X-Target-Org-Id"?: string | null;
|
|
794
|
+
};
|
|
795
|
+
};
|
|
796
|
+
output: ApiResponse_CrmCollectionPayload_;
|
|
797
|
+
};
|
|
798
|
+
/**
|
|
799
|
+
* POST /companies/{company_id}/merge
|
|
800
|
+
* Merge Company
|
|
801
|
+
* tier: destructive · scope: companies:delete
|
|
802
|
+
*/
|
|
803
|
+
merge_company_companies__company_id__merge_post: {
|
|
804
|
+
input: {
|
|
805
|
+
path: {
|
|
806
|
+
/** The company that SURVIVES the merge. */
|
|
807
|
+
company_id: number;
|
|
808
|
+
};
|
|
809
|
+
headers?: {
|
|
810
|
+
"X-Target-Org-Id"?: string | null;
|
|
811
|
+
};
|
|
812
|
+
body: MergeRecordRequest;
|
|
813
|
+
};
|
|
814
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
815
|
+
};
|
|
816
|
+
/**
|
|
817
|
+
* POST /companies/merge-filtered
|
|
818
|
+
* Merge Filtered Companies
|
|
819
|
+
* tier: write · scope: companies:write
|
|
820
|
+
*/
|
|
821
|
+
merge_filtered_companies_companies_merge_filtered_post: {
|
|
822
|
+
input: {
|
|
823
|
+
query?: {
|
|
824
|
+
/** Optional per-column filter JSON. */
|
|
825
|
+
filterModel?: string | null;
|
|
826
|
+
/** Optional sort JSON. */
|
|
827
|
+
sortModel?: string | null;
|
|
828
|
+
};
|
|
829
|
+
headers?: {
|
|
830
|
+
"X-Target-Org-Id"?: string | null;
|
|
831
|
+
};
|
|
832
|
+
body: MergeFilteredRequest;
|
|
833
|
+
};
|
|
834
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
835
|
+
};
|
|
836
|
+
/**
|
|
837
|
+
* GET /companies/{company_id}/merge/preview
|
|
838
|
+
* Preview Company Merge
|
|
839
|
+
* tier: read · scope: companies:read
|
|
840
|
+
*/
|
|
841
|
+
preview_company_merge_companies__company_id__merge_preview_get: {
|
|
842
|
+
input: {
|
|
843
|
+
path: {
|
|
844
|
+
/** The company that SURVIVES the merge. */
|
|
845
|
+
company_id: number;
|
|
846
|
+
};
|
|
847
|
+
query: {
|
|
848
|
+
/** The company that would be merged AWAY. */
|
|
849
|
+
secondary: number;
|
|
850
|
+
};
|
|
851
|
+
headers?: {
|
|
852
|
+
"X-Target-Org-Id"?: string | null;
|
|
853
|
+
};
|
|
854
|
+
};
|
|
855
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
856
|
+
};
|
|
857
|
+
/**
|
|
858
|
+
* POST /companies/{company_id}/billing-prefill/refresh
|
|
859
|
+
* Refresh Company Billing Prefill
|
|
860
|
+
* tier: write · scope: companies:write
|
|
861
|
+
*/
|
|
862
|
+
refresh_company_billing_prefill_companies__company_id__billing_prefill_refresh_post: {
|
|
863
|
+
input: {
|
|
864
|
+
path: {
|
|
865
|
+
/** Company id. */
|
|
866
|
+
company_id: string;
|
|
867
|
+
};
|
|
868
|
+
headers?: {
|
|
869
|
+
"X-Target-Org-Id"?: string | null;
|
|
870
|
+
};
|
|
871
|
+
};
|
|
872
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
873
|
+
};
|
|
874
|
+
/**
|
|
875
|
+
* POST /companies/{company_id}/documents/types/{doc_type}/regenerate
|
|
876
|
+
* Regenerate Company Document
|
|
877
|
+
* tier: billable · scope: enrichment:run
|
|
878
|
+
*/
|
|
879
|
+
regenerate_company_document_companies__company_id__documents_types__doc_type__regenerate_post: {
|
|
880
|
+
input: {
|
|
881
|
+
path: {
|
|
882
|
+
/** Company id. */
|
|
883
|
+
company_id: string;
|
|
884
|
+
/** Document type. */
|
|
885
|
+
doc_type: string;
|
|
886
|
+
};
|
|
887
|
+
headers?: {
|
|
888
|
+
"X-Target-Org-Id"?: string | null;
|
|
889
|
+
};
|
|
890
|
+
};
|
|
891
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
892
|
+
};
|
|
893
|
+
/**
|
|
894
|
+
* DELETE /companies/{company_id}/contacts/{contact_id}
|
|
895
|
+
* Remove Company Contact
|
|
896
|
+
* tier: destructive · scope: companies:delete
|
|
897
|
+
*/
|
|
898
|
+
remove_company_contact_companies__company_id__contacts__contact_id__delete: {
|
|
899
|
+
input: {
|
|
900
|
+
path: {
|
|
901
|
+
/** Company id. */
|
|
902
|
+
company_id: string;
|
|
903
|
+
/** Contact to unlink from the company. */
|
|
904
|
+
contact_id: string;
|
|
905
|
+
};
|
|
906
|
+
headers?: {
|
|
907
|
+
"X-Target-Org-Id"?: string | null;
|
|
908
|
+
};
|
|
909
|
+
};
|
|
910
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
911
|
+
};
|
|
912
|
+
/**
|
|
913
|
+
* POST /companies/{company_id}/retry-intelligence
|
|
914
|
+
* Retry Company Intelligence
|
|
915
|
+
* tier: billable · scope: enrichment:run
|
|
916
|
+
*/
|
|
917
|
+
retry_company_intelligence_companies__company_id__retry_intelligence_post: {
|
|
918
|
+
input: {
|
|
919
|
+
path: {
|
|
920
|
+
/** Company id. */
|
|
921
|
+
company_id: string;
|
|
922
|
+
};
|
|
923
|
+
headers?: {
|
|
924
|
+
"X-Target-Org-Id"?: string | null;
|
|
925
|
+
};
|
|
926
|
+
body?: IntelligenceRetryRequest | null;
|
|
927
|
+
};
|
|
928
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
929
|
+
};
|
|
930
|
+
/**
|
|
931
|
+
* POST /companies/{company_id}/retry-synthesis
|
|
932
|
+
* Retry Company Synthesis
|
|
933
|
+
* tier: billable · scope: enrichment:run
|
|
934
|
+
*/
|
|
935
|
+
retry_company_synthesis_companies__company_id__retry_synthesis_post: {
|
|
936
|
+
input: {
|
|
937
|
+
path: {
|
|
938
|
+
/** Company id. */
|
|
939
|
+
company_id: string;
|
|
940
|
+
};
|
|
941
|
+
headers?: {
|
|
942
|
+
"X-Target-Org-Id"?: string | null;
|
|
943
|
+
};
|
|
944
|
+
};
|
|
945
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
946
|
+
};
|
|
947
|
+
/**
|
|
948
|
+
* POST /companies/{company_id}/documents/from-skill
|
|
949
|
+
* Save Skill Result To Company
|
|
950
|
+
* tier: write · scope: companies:write
|
|
951
|
+
*/
|
|
952
|
+
save_skill_result_to_company_companies__company_id__documents_from_skill_post: {
|
|
953
|
+
input: {
|
|
954
|
+
path: {
|
|
955
|
+
/** Company id. */
|
|
956
|
+
company_id: string;
|
|
957
|
+
};
|
|
958
|
+
headers?: {
|
|
959
|
+
"X-Target-Org-Id"?: string | null;
|
|
960
|
+
};
|
|
961
|
+
body: SaveSkillResultRequest;
|
|
962
|
+
};
|
|
963
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
964
|
+
};
|
|
965
|
+
/**
|
|
966
|
+
* POST /companies/{company_id}/workflows/{workflow_type}/start
|
|
967
|
+
* Start Company Workflow
|
|
968
|
+
* tier: billable · scope: enrichment:run
|
|
969
|
+
*/
|
|
970
|
+
start_company_workflow_companies__company_id__workflows__workflow_type__start_post: {
|
|
971
|
+
input: {
|
|
972
|
+
path: {
|
|
973
|
+
/** Company id. */
|
|
974
|
+
company_id: string;
|
|
975
|
+
/** Which workflow to run. */
|
|
976
|
+
workflow_type: CompanyWorkflowType;
|
|
977
|
+
};
|
|
978
|
+
headers?: {
|
|
979
|
+
"X-Target-Org-Id"?: string | null;
|
|
980
|
+
};
|
|
981
|
+
};
|
|
982
|
+
output: ApiResponse_CrmRecordPayload_;
|
|
983
|
+
};
|
|
984
|
+
/**
|
|
985
|
+
* PATCH /companies/{company_id}
|
|
986
|
+
* Update Company
|
|
987
|
+
* tier: write · scope: companies:write
|
|
988
|
+
*/
|
|
989
|
+
update_company_companies__company_id__patch: {
|
|
990
|
+
input: {
|
|
991
|
+
path: {
|
|
992
|
+
/** Company ID */
|
|
993
|
+
company_id: number;
|
|
994
|
+
};
|
|
995
|
+
headers?: {
|
|
996
|
+
"X-Target-Org-Id"?: string | null;
|
|
997
|
+
};
|
|
998
|
+
body: CompanyUpdateRequest;
|
|
999
|
+
};
|
|
1000
|
+
output: ApiResponse_dict_;
|
|
1001
|
+
};
|
|
1002
|
+
}
|
|
1003
|
+
|
|
1004
|
+
// 43 schemas referenced above (the same as G8Contract.<Name>).
|
|
1005
|
+
|
|
1006
|
+
export interface ApiResponse_CompanyCreateResponse_ {
|
|
1007
|
+
data: CompanyCreateResponse;
|
|
1008
|
+
pagination?: PaginationMeta | null;
|
|
1009
|
+
}
|
|
1010
|
+
|
|
1011
|
+
export interface ApiResponse_CompanyResponse_ {
|
|
1012
|
+
data: CompanyResponse;
|
|
1013
|
+
pagination?: PaginationMeta | null;
|
|
1014
|
+
}
|
|
1015
|
+
|
|
1016
|
+
export interface ApiResponse_CreateCompanyColumnResponse_ {
|
|
1017
|
+
data: CreateCompanyColumnResponse;
|
|
1018
|
+
pagination?: PaginationMeta | null;
|
|
1019
|
+
}
|
|
1020
|
+
|
|
1021
|
+
export interface ApiResponse_CrmCollectionPayload_ {
|
|
1022
|
+
data: CrmCollectionPayload;
|
|
1023
|
+
pagination?: PaginationMeta | null;
|
|
1024
|
+
}
|
|
1025
|
+
|
|
1026
|
+
export interface ApiResponse_CrmRecordPayload_ {
|
|
1027
|
+
data: CrmRecordPayload;
|
|
1028
|
+
pagination?: PaginationMeta | null;
|
|
1029
|
+
}
|
|
1030
|
+
|
|
1031
|
+
export interface ApiResponse_dict_ {
|
|
1032
|
+
data: Record<string, unknown>;
|
|
1033
|
+
pagination?: PaginationMeta | null;
|
|
1034
|
+
}
|
|
1035
|
+
|
|
1036
|
+
export interface ApiResponse_list_Column__ {
|
|
1037
|
+
data: Array<Column>;
|
|
1038
|
+
pagination?: PaginationMeta | null;
|
|
1039
|
+
}
|
|
1040
|
+
|
|
1041
|
+
export interface ApiResponse_list_CompanyContactItem__ {
|
|
1042
|
+
data: Array<CompanyContactItem>;
|
|
1043
|
+
pagination?: PaginationMeta | null;
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
export interface ApiResponse_list_CompanyListItem__ {
|
|
1047
|
+
data: Array<CompanyListItem>;
|
|
1048
|
+
pagination?: PaginationMeta | null;
|
|
1049
|
+
}
|
|
1050
|
+
|
|
1051
|
+
/**
|
|
1052
|
+
* Set the owner on every record matching a selection.
|
|
1053
|
+
*
|
|
1054
|
+
* A null `owner_id` UNASSIGNS the matching records rather than leaving them
|
|
1055
|
+
* alone, so an omitted owner is a destructive instruction, not a no-op.
|
|
1056
|
+
*/
|
|
1057
|
+
export interface AssignOwnerMatchingRequest {
|
|
1058
|
+
/** Per-column filters. */
|
|
1059
|
+
filterModel?: Record<string, unknown>;
|
|
1060
|
+
/** Restrict the selection to this list. */
|
|
1061
|
+
list_id?: number | null;
|
|
1062
|
+
/** Owner to assign. Null clears the owner on every match. */
|
|
1063
|
+
owner_id?: string | null;
|
|
1064
|
+
/** Advanced AND/OR filter tree. */
|
|
1065
|
+
segmentFilter?: SegmentFilterGroup | null;
|
|
1066
|
+
}
|
|
1067
|
+
|
|
1068
|
+
/**
|
|
1069
|
+
* Column entity representing a database column definition.
|
|
1070
|
+
* Used to describe table column metadata for MashupContact and other entities.
|
|
1071
|
+
*/
|
|
1072
|
+
export interface Column {
|
|
1073
|
+
data_type?: ColumnType;
|
|
1074
|
+
id?: number | null;
|
|
1075
|
+
/** Automatically computed: True if object_id is None/empty, False otherwise. */
|
|
1076
|
+
is_global: boolean;
|
|
1077
|
+
name?: string | null;
|
|
1078
|
+
object_id?: string | null;
|
|
1079
|
+
source?: ColumnSource;
|
|
1080
|
+
title: string;
|
|
1081
|
+
}
|
|
1082
|
+
|
|
1083
|
+
/**
|
|
1084
|
+
* Which entity a field in the contact field list belongs to.
|
|
1085
|
+
*
|
|
1086
|
+
* The ``GET /contacts/columns`` response deliberately combines fields from
|
|
1087
|
+
* three provenances into one list (issue #21184): the person record, their
|
|
1088
|
+
* employer's company record, and user-created custom columns. Consumers
|
|
1089
|
+
* (form-mapping UI, AI-agent field listing, CSV import) need to tell them
|
|
1090
|
+
* apart — a company field like ``COMPANY_REVENUE`` describes the employer,
|
|
1091
|
+
* not the contact.
|
|
1092
|
+
*
|
|
1093
|
+
* - ``contact``: a field on the person record (``MashupContact.*``) — the default.
|
|
1094
|
+
* - ``company``: a field on the contact's employer (``MashupCompany.*``),
|
|
1095
|
+
* surfaced so contacts can be mapped/filtered by company attributes.
|
|
1096
|
+
* - ``custom``: a user-created dynamic column (global or list-scoped).
|
|
1097
|
+
*/
|
|
1098
|
+
export type ColumnSource = "contact" | "company" | "custom";
|
|
1099
|
+
|
|
1100
|
+
/**
|
|
1101
|
+
* User-selectable dynamic-column data types.
|
|
1102
|
+
*
|
|
1103
|
+
* Every member must have a physical type in the repos' pg_type_map
|
|
1104
|
+
* (contacts/companies CDP repos + enrichment DynamicColumnRepository:
|
|
1105
|
+
* int→INTEGER, numeric→NUMERIC, text→TEXT, boolean→BOOLEAN) and belong to
|
|
1106
|
+
* the user-owned family in lists/usecases/dynamic_column_write_contract.py —
|
|
1107
|
+
* both already list these four. Write paths coerce values per type via
|
|
1108
|
+
* shared.infrustructure.db.cdp.dynamic_column_values.coerce_dynamic_value.
|
|
1109
|
+
*/
|
|
1110
|
+
export type ColumnType = "text" | "int" | "numeric" | "boolean";
|
|
1111
|
+
|
|
1112
|
+
/**
|
|
1113
|
+
* Request contract for the hiring-signal batch lookup.
|
|
1114
|
+
*
|
|
1115
|
+
* Field-for-field identical to the main-app model of the same name in
|
|
1116
|
+
* ``companies/interfaces/fastapi/router.py``. It is redefined here rather
|
|
1117
|
+
* than imported because that module imports
|
|
1118
|
+
* ``developer_api.dependencies.hybrid_auth``; importing it back would couple
|
|
1119
|
+
* the two app halves at import time. ``test_companies_open_jobs_api.py`` locks
|
|
1120
|
+
* the two models together so the duplication cannot silently drift.
|
|
1121
|
+
*/
|
|
1122
|
+
export interface CompaniesOpenJobsRequest {
|
|
1123
|
+
/** CRM company IDs (mashup_companies.id) - NOT linkedin_company_id */
|
|
1124
|
+
company_ids: Array<number>;
|
|
1125
|
+
/** False = counts only (one CH query) */
|
|
1126
|
+
include_postings?: boolean;
|
|
1127
|
+
/** Roll subsidiary postings into the parent. Off by default: one row = one company. NOTE: when true, `jobs` expands to child companies but `open_jobs` stays parent-only, so len(jobs) can exceed open_jobs. */
|
|
1128
|
+
include_subsidiaries?: boolean;
|
|
1129
|
+
limit_per_company?: number;
|
|
1130
|
+
window_days?: number;
|
|
1131
|
+
}
|
|
1132
|
+
|
|
1133
|
+
/**
|
|
1134
|
+
* One contact in a company import.
|
|
1135
|
+
*
|
|
1136
|
+
* Contacts are grouped by email domain, so `email` decides which company a
|
|
1137
|
+
* row lands on - `company_name` only names a company that does not exist yet.
|
|
1138
|
+
*/
|
|
1139
|
+
export interface CompanyContactImport {
|
|
1140
|
+
/** Company name, used only when the domain is unknown. */
|
|
1141
|
+
company_name?: string | null;
|
|
1142
|
+
/** Company owner. */
|
|
1143
|
+
company_owner?: string | null;
|
|
1144
|
+
/** Contact owner. */
|
|
1145
|
+
contact_owner?: string | null;
|
|
1146
|
+
/** Email address. Also the company-grouping key. */
|
|
1147
|
+
email: string;
|
|
1148
|
+
/** First name. */
|
|
1149
|
+
first_name: string;
|
|
1150
|
+
/** Last name. */
|
|
1151
|
+
last_name: string;
|
|
1152
|
+
/** LinkedIn profile URL. */
|
|
1153
|
+
linkedin_url?: string | null;
|
|
1154
|
+
/** Phone number. */
|
|
1155
|
+
phone?: string | null;
|
|
1156
|
+
/** Buying-committee role: decision_maker | influencer | champion | end_user | blocker | coach. */
|
|
1157
|
+
role?: string | null;
|
|
1158
|
+
/** Job title. */
|
|
1159
|
+
title?: string | null;
|
|
1160
|
+
}
|
|
1161
|
+
|
|
1162
|
+
/** Contact summary within a company. */
|
|
1163
|
+
export interface CompanyContactItem {
|
|
1164
|
+
city?: string | null;
|
|
1165
|
+
country?: string | null;
|
|
1166
|
+
direct_phone?: string | null;
|
|
1167
|
+
first_name?: string | null;
|
|
1168
|
+
full_name?: string | null;
|
|
1169
|
+
id: number;
|
|
1170
|
+
job_title?: string | null;
|
|
1171
|
+
last_name?: string | null;
|
|
1172
|
+
linkedin_url?: string | null;
|
|
1173
|
+
seniority_level?: string | null;
|
|
1174
|
+
state?: string | null;
|
|
1175
|
+
work_email?: string | null;
|
|
1176
|
+
}
|
|
1177
|
+
|
|
1178
|
+
/**
|
|
1179
|
+
* Request body for creating a company.
|
|
1180
|
+
*
|
|
1181
|
+
* ``domain`` is required — it drives dedup (an existing company with the same
|
|
1182
|
+
* domain is reused, not duplicated) and the Deals company picker. Every other
|
|
1183
|
+
* field is optional.
|
|
1184
|
+
*/
|
|
1185
|
+
export interface CompanyCreateRequest {
|
|
1186
|
+
address?: string | null;
|
|
1187
|
+
city?: string | null;
|
|
1188
|
+
country?: string | null;
|
|
1189
|
+
/** Company domain, e.g. acme.com (required) */
|
|
1190
|
+
domain: string;
|
|
1191
|
+
employee_count?: string | null;
|
|
1192
|
+
industry?: string | null;
|
|
1193
|
+
linkedin_url?: string | null;
|
|
1194
|
+
/** Optional list to add the company to after creation */
|
|
1195
|
+
list_id?: number | null;
|
|
1196
|
+
name?: string | null;
|
|
1197
|
+
phone?: string | null;
|
|
1198
|
+
state?: string | null;
|
|
1199
|
+
website?: string | null;
|
|
1200
|
+
zip?: string | null;
|
|
1201
|
+
}
|
|
1202
|
+
|
|
1203
|
+
export interface CompanyCreateResponse {
|
|
1204
|
+
company_id?: number | null;
|
|
1205
|
+
merged?: boolean;
|
|
1206
|
+
status: string;
|
|
1207
|
+
}
|
|
1208
|
+
|
|
1209
|
+
/** Lighter company representation for list endpoints. */
|
|
1210
|
+
export interface CompanyListItem {
|
|
1211
|
+
city?: string | null;
|
|
1212
|
+
country?: string | null;
|
|
1213
|
+
custom_fields?: (Record<string, string | null>) | null;
|
|
1214
|
+
description?: string | null;
|
|
1215
|
+
domain?: string | null;
|
|
1216
|
+
employee_count?: string | null;
|
|
1217
|
+
founded_year?: number | null;
|
|
1218
|
+
id?: number | null;
|
|
1219
|
+
industry?: string | null;
|
|
1220
|
+
linkedin_followers?: string | null;
|
|
1221
|
+
linkedin_url?: string | null;
|
|
1222
|
+
logo_url?: string | null;
|
|
1223
|
+
name?: string | null;
|
|
1224
|
+
owner_id?: string | null;
|
|
1225
|
+
owner_name?: string | null;
|
|
1226
|
+
revenue?: string | null;
|
|
1227
|
+
state?: string | null;
|
|
1228
|
+
website?: string | null;
|
|
1229
|
+
}
|
|
1230
|
+
|
|
1231
|
+
export interface CompanyResponse {
|
|
1232
|
+
address?: string | null;
|
|
1233
|
+
city?: string | null;
|
|
1234
|
+
contact_count?: number | null;
|
|
1235
|
+
country?: string | null;
|
|
1236
|
+
created_at?: string | null;
|
|
1237
|
+
crunchbase_url?: string | null;
|
|
1238
|
+
custom_fields?: (Record<string, string | null>) | null;
|
|
1239
|
+
description?: string | null;
|
|
1240
|
+
domain?: string | null;
|
|
1241
|
+
employee_count?: string | null;
|
|
1242
|
+
facebook_url?: string | null;
|
|
1243
|
+
founded_year?: number | null;
|
|
1244
|
+
id: number;
|
|
1245
|
+
industry?: string | null;
|
|
1246
|
+
industry_group?: string | null;
|
|
1247
|
+
linkedin_followers?: string | null;
|
|
1248
|
+
linkedin_url?: string | null;
|
|
1249
|
+
logo_url?: string | null;
|
|
1250
|
+
meta_data?: Record<string, unknown> | null;
|
|
1251
|
+
name?: string | null;
|
|
1252
|
+
phone?: string | null;
|
|
1253
|
+
revenue?: string | null;
|
|
1254
|
+
state?: string | null;
|
|
1255
|
+
twitter_url?: string | null;
|
|
1256
|
+
updated_at?: string | null;
|
|
1257
|
+
website?: string | null;
|
|
1258
|
+
zip?: string | null;
|
|
1259
|
+
}
|
|
1260
|
+
|
|
1261
|
+
/** Mirrors `companies.interfaces.fastapi.router.CompanyTaskCreateRequest`. */
|
|
1262
|
+
export interface CompanyTaskCreateRequest {
|
|
1263
|
+
/** Assignee user id. */
|
|
1264
|
+
assignee_id?: string | null;
|
|
1265
|
+
/** Assignee display name. */
|
|
1266
|
+
assignee_name?: string | null;
|
|
1267
|
+
/** Task body. */
|
|
1268
|
+
description?: string | null;
|
|
1269
|
+
/** ISO-8601 due date. */
|
|
1270
|
+
due_date?: string | null;
|
|
1271
|
+
/** Priority, higher is more urgent. */
|
|
1272
|
+
priority?: number | null;
|
|
1273
|
+
/** Up to 20 labels. */
|
|
1274
|
+
tags?: Array<string> | null;
|
|
1275
|
+
/** Task type, e.g. `call`. */
|
|
1276
|
+
task_type?: string | null;
|
|
1277
|
+
/** Task title. */
|
|
1278
|
+
title: string;
|
|
1279
|
+
}
|
|
1280
|
+
|
|
1281
|
+
/** Request body for updating a company. All fields optional (partial update). */
|
|
1282
|
+
export interface CompanyUpdateRequest {
|
|
1283
|
+
address?: string | null;
|
|
1284
|
+
city?: string | null;
|
|
1285
|
+
country?: string | null;
|
|
1286
|
+
domain?: string | null;
|
|
1287
|
+
employee_count?: string | null;
|
|
1288
|
+
industry?: string | null;
|
|
1289
|
+
linkedin_url?: string | null;
|
|
1290
|
+
name?: string | null;
|
|
1291
|
+
phone?: string | null;
|
|
1292
|
+
state?: string | null;
|
|
1293
|
+
website?: string | null;
|
|
1294
|
+
zip?: string | null;
|
|
1295
|
+
}
|
|
1296
|
+
|
|
1297
|
+
/** Types of workflows that can be run on a company */
|
|
1298
|
+
export type CompanyWorkflowType = "company_intelligence" | "stakeholder_mapping" | "deal_strategy" | "competitive_positioning";
|
|
1299
|
+
|
|
1300
|
+
/**
|
|
1301
|
+
* Request body for `POST /companies/columns/create`.
|
|
1302
|
+
*
|
|
1303
|
+
* Mirrors the shared `CreateColumnRequest` shape (`title`, `data_type`,
|
|
1304
|
+
* `list_id`, `created_by`) plus an OPTIONAL `enrichment` block that, when
|
|
1305
|
+
* supplied, provisions a companion waterfall pipeline in the same
|
|
1306
|
+
* request — so the new column is immediately runnable via
|
|
1307
|
+
* `POST /enrichment/waterfall/enrich`.
|
|
1308
|
+
*
|
|
1309
|
+
* Without the `enrichment` block the column is created, but it has no
|
|
1310
|
+
* enrichment plan; the UI "Enrich" button (and `g8_enrich_contacts` in
|
|
1311
|
+
* waterfall mode) will return 422 (`waterfall_config_missing`) until a
|
|
1312
|
+
* pipeline is provisioned separately via
|
|
1313
|
+
* `POST /enrichment/waterfall/configs`.
|
|
1314
|
+
*
|
|
1315
|
+
* Backwards compatible: callers that previously POSTed only `title` /
|
|
1316
|
+
* `data_type` / `list_id` / `created_by` continue to work unchanged.
|
|
1317
|
+
*/
|
|
1318
|
+
export interface CreateCompanyColumnRequest {
|
|
1319
|
+
/** Email of the user creating the column (for audit). */
|
|
1320
|
+
created_by: string;
|
|
1321
|
+
/** Column data type. Currently only 'text' is supported. */
|
|
1322
|
+
data_type?: ColumnType;
|
|
1323
|
+
/** STRONGLY RECOMMENDED. Optional waterfall enrichment block. When supplied, a companion `enrichment_configs` row is created alongside the column so the UI 'Enrich' button works immediately. Without it the column exists but isn't enrichable until a pipeline is configured via POST /enrichment/waterfall/configs. */
|
|
1324
|
+
enrichment?: CreateFieldEnrichmentInput | null;
|
|
1325
|
+
/** If set, the column is list-scoped (only visible on that list). Required when `enrichment` is supplied — waterfall pipelines are list-scoped. */
|
|
1326
|
+
list_id?: number | null;
|
|
1327
|
+
/** Column title shown in the UI (e.g. 'Tier') */
|
|
1328
|
+
title: string;
|
|
1329
|
+
}
|
|
1330
|
+
|
|
1331
|
+
/**
|
|
1332
|
+
* Response shape for `POST /companies/columns/create`.
|
|
1333
|
+
*
|
|
1334
|
+
* Mirrors the `Column` entity fields verbatim so existing callers reading
|
|
1335
|
+
* `data.id` / `data.title` / `data.name` / `data.is_global` etc. keep
|
|
1336
|
+
* working without code changes. Adds one new optional `enrichment` field
|
|
1337
|
+
* that is populated when the request included an `enrichment` block.
|
|
1338
|
+
*/
|
|
1339
|
+
export interface CreateCompanyColumnResponse {
|
|
1340
|
+
data_type?: ColumnType;
|
|
1341
|
+
/** Populated when the request included an `enrichment` block. Use `enrichment.column_id` for subsequent POST /enrichment/waterfall/enrich calls. */
|
|
1342
|
+
enrichment?: CreateFieldEnrichmentResponse | null;
|
|
1343
|
+
id?: number | null;
|
|
1344
|
+
/** Computed: True when object_id is null/empty (global column). */
|
|
1345
|
+
is_global?: boolean;
|
|
1346
|
+
name?: string | null;
|
|
1347
|
+
object_id?: string | null;
|
|
1348
|
+
title: string;
|
|
1349
|
+
}
|
|
1350
|
+
|
|
1351
|
+
/**
|
|
1352
|
+
* Optional enrichment-pipeline block attached at column-create time.
|
|
1353
|
+
*
|
|
1354
|
+
* When supplied, `POST /fields` creates a companion `enrichment_configs`
|
|
1355
|
+
* row in the same request so the new column is immediately runnable via
|
|
1356
|
+
* `POST /enrichment/waterfall/enrich`. Without this block the column
|
|
1357
|
+
* exists but has no enrichment plan — calling /waterfall/enrich on it
|
|
1358
|
+
* returns 422 (`waterfall_config_missing`).
|
|
1359
|
+
*
|
|
1360
|
+
* Currently only `type='waterfall'` is supported; AI / formula
|
|
1361
|
+
* enrichment will follow once the rest of the agent surface lands.
|
|
1362
|
+
*/
|
|
1363
|
+
export interface CreateFieldEnrichmentInput {
|
|
1364
|
+
/** Optional post-enrichment email verification config. */
|
|
1365
|
+
email_verification?: EmailVerificationInput | null;
|
|
1366
|
+
/** Target field identifier. Defaults to the new column's slug. */
|
|
1367
|
+
field_to_enrich?: string | null;
|
|
1368
|
+
/** Pipeline name. Defaults to `<column title> Enrichment` if omitted. */
|
|
1369
|
+
name?: string | null;
|
|
1370
|
+
/** Ordered list of provider names. Without `target_field`, server maps each to its default email-finder action (legacy). With `target_field`, filters the column template to these providers (correct per-field action preserved). Mutually exclusive with `steps`. */
|
|
1371
|
+
providers?: Array<string> | null;
|
|
1372
|
+
/** If true, skip rows where the target field is already populated. */
|
|
1373
|
+
skip_existing_values?: boolean;
|
|
1374
|
+
/** Full caller-supplied step list. Persisted verbatim. Mutually exclusive with `providers`. */
|
|
1375
|
+
steps?: Array<WaterfallStepInput> | null;
|
|
1376
|
+
/** Kind of data this column holds — CONTACT_DIRECT_PHONE, CONTACT_MOBILE_PHONE, CONTACT_WORK_EMAIL, CONTACT_LINKEDIN_URL, COMPANY_PHONE, ... or a friendly synonym ('phone', 'mobile', 'email', 'linkedin'). When set, the pipeline is built from the server's per-column TEMPLATE so each provider runs its CORRECT action for that data kind (e.g. leadmagic `mobile_finder` for a phone, NOT `email_finder`) — the same actions the web UI's 'Add column -> Waterfall' picks. Combine with `providers[]` to keep only those providers from the template. Mutually exclusive with `steps`. When omitted, the legacy `providers[]` email-finder shortcut is unchanged. */
|
|
1377
|
+
target_field?: string | null;
|
|
1378
|
+
/** Pipeline kind. Only 'waterfall' is supported today. */
|
|
1379
|
+
type?: string;
|
|
1380
|
+
}
|
|
1381
|
+
|
|
1382
|
+
/** Echo of the companion enrichment config created by `enrichment` block. */
|
|
1383
|
+
export interface CreateFieldEnrichmentResponse {
|
|
1384
|
+
/** column_id slug to pass to /enrichment/waterfall/enrich */
|
|
1385
|
+
column_id: string;
|
|
1386
|
+
config_id: string;
|
|
1387
|
+
email_verification?: Record<string, unknown> | null;
|
|
1388
|
+
name: string;
|
|
1389
|
+
providers?: Array<string>;
|
|
1390
|
+
type: string;
|
|
1391
|
+
}
|
|
1392
|
+
|
|
1393
|
+
/** An open envelope for a LIST result, so a bare list keeps its shape. */
|
|
1394
|
+
export interface CrmCollectionPayload {
|
|
1395
|
+
items?: Array<unknown>;
|
|
1396
|
+
[key: string]: unknown;
|
|
1397
|
+
}
|
|
1398
|
+
|
|
1399
|
+
/**
|
|
1400
|
+
* An open envelope for one record, one dashboard or one job receipt.
|
|
1401
|
+
*
|
|
1402
|
+
* Open because most of these reads are COMPUTED shapes - an engagement
|
|
1403
|
+
* summary, a next-best-step, an intelligence status - that grow with the
|
|
1404
|
+
* product, and dropping a field from an advisory read makes it say "nothing
|
|
1405
|
+
* to report" rather than "we did not tell you".
|
|
1406
|
+
*/
|
|
1407
|
+
export type CrmRecordPayload = Record<string, unknown>;
|
|
1408
|
+
|
|
1409
|
+
/**
|
|
1410
|
+
* Email verification config attached to a waterfall pipeline.
|
|
1411
|
+
*
|
|
1412
|
+
* Mirrors the canonical `EmailVerificationConfigDto` in
|
|
1413
|
+
* `enrichment/interfaces/fastapi/waterfall_dtos.py` so the dev-API and the
|
|
1414
|
+
* UI persist an identical settings shape (the CF worker reads `settings.
|
|
1415
|
+
* email_verification.*` regardless of which surface saved the pipeline).
|
|
1416
|
+
*/
|
|
1417
|
+
export interface EmailVerificationInput {
|
|
1418
|
+
/** Treat catch-all responses as valid (domains that accept any address). */
|
|
1419
|
+
accept_catchall?: boolean;
|
|
1420
|
+
/** Enable post-enrichment email verification */
|
|
1421
|
+
enabled?: boolean;
|
|
1422
|
+
/** Verification provider. Charges credits when use_system_credentials=True. */
|
|
1423
|
+
provider?: "zerobounce" | "hunter" | "icypeas" | "leadmagic";
|
|
1424
|
+
/** Use graph8-managed API keys (charges credits). False = use org's BYOK keys. */
|
|
1425
|
+
use_system_credentials?: boolean;
|
|
1426
|
+
/** Verification statuses to accept as valid. Typical: ['valid'] or ['valid','catch-all']. */
|
|
1427
|
+
valid_statuses?: Array<string>;
|
|
1428
|
+
}
|
|
1429
|
+
|
|
1430
|
+
/**
|
|
1431
|
+
* One structured filter condition.
|
|
1432
|
+
*
|
|
1433
|
+
* Mirrors `shared.interfaces.fastapi.dtos.DtoCondition`.
|
|
1434
|
+
*/
|
|
1435
|
+
export interface FilterCondition {
|
|
1436
|
+
/** Field name to apply the condition to. */
|
|
1437
|
+
field: string;
|
|
1438
|
+
/** Operator, e.g. `=`, `in`, `like`. */
|
|
1439
|
+
operator?: string;
|
|
1440
|
+
/** Value to compare against. */
|
|
1441
|
+
value?: unknown;
|
|
1442
|
+
/** Secondary value, for range operators. */
|
|
1443
|
+
value_to?: unknown | null;
|
|
1444
|
+
}
|
|
1445
|
+
|
|
1446
|
+
/**
|
|
1447
|
+
* Create or update companies from a batch of contacts.
|
|
1448
|
+
*
|
|
1449
|
+
* Grouping is by email domain: a new domain creates a company, a known one
|
|
1450
|
+
* is updated in place. There is no separate "company" payload.
|
|
1451
|
+
*/
|
|
1452
|
+
export interface ImportCompaniesRequest {
|
|
1453
|
+
/** Contacts to import. */
|
|
1454
|
+
contacts: Array<CompanyContactImport>;
|
|
1455
|
+
/** Where the records came from, recorded on the import. */
|
|
1456
|
+
source: string;
|
|
1457
|
+
}
|
|
1458
|
+
|
|
1459
|
+
/**
|
|
1460
|
+
* Re-run company intelligence generation. SPENDS CREDITS.
|
|
1461
|
+
*
|
|
1462
|
+
* Omitting `doc_types` regenerates the DEFAULT set rather than nothing, so
|
|
1463
|
+
* an empty body is the expensive option, not the cheap one.
|
|
1464
|
+
*/
|
|
1465
|
+
export interface IntelligenceRetryRequest {
|
|
1466
|
+
/** Document types to generate. Omit for the default set. */
|
|
1467
|
+
doc_types?: Array<string> | null;
|
|
1468
|
+
}
|
|
1469
|
+
|
|
1470
|
+
/** Which side of a merge wins one field. */
|
|
1471
|
+
export interface MergeFieldOverride {
|
|
1472
|
+
/** Field name, e.g. `CONTACT_JOB_TITLE`. */
|
|
1473
|
+
field: string;
|
|
1474
|
+
/** Which record's value to keep. */
|
|
1475
|
+
winner: "primary" | "secondary";
|
|
1476
|
+
}
|
|
1477
|
+
|
|
1478
|
+
/**
|
|
1479
|
+
* Add every record matching a filter into a target list.
|
|
1480
|
+
*
|
|
1481
|
+
* Mirrors `MergeFilteredContactsRequest` / `MergeFilteredCompaniesRequest`,
|
|
1482
|
+
* which are field-identical. Despite the name this MERGES A SELECTION INTO A
|
|
1483
|
+
* LIST - it does not merge duplicate records together. `/duplicates` is the
|
|
1484
|
+
* surface that does that.
|
|
1485
|
+
*
|
|
1486
|
+
* On a 409 the call is telling you some records need a decision; re-send
|
|
1487
|
+
* with `conflict_resolution` set.
|
|
1488
|
+
*/
|
|
1489
|
+
export interface MergeFilteredRequest {
|
|
1490
|
+
/** Required when retrying after a 409. `add_all` takes every warned record, `skip_all` takes none of them, `custom` takes the ids in `include_warned_ids`. Blocked records are excluded either way. */
|
|
1491
|
+
conflict_resolution?: ("add_all" | "skip_all" | "custom") | null;
|
|
1492
|
+
/** Source-column to target-column mapping for custom columns. */
|
|
1493
|
+
dynamic_column_mapping?: Record<string, string>;
|
|
1494
|
+
/** Conditions selecting the source records. */
|
|
1495
|
+
filter?: Array<FilterCondition>;
|
|
1496
|
+
/** With `conflict_resolution=custom`, the warned ids to include. */
|
|
1497
|
+
include_warned_ids?: Array<string> | null;
|
|
1498
|
+
/** Advanced AND/OR filter tree. */
|
|
1499
|
+
segmentFilter?: SegmentFilterGroup | null;
|
|
1500
|
+
/** List the matching records are added to. */
|
|
1501
|
+
target_list_id: number;
|
|
1502
|
+
}
|
|
1503
|
+
|
|
1504
|
+
/**
|
|
1505
|
+
* Merge `secondary_id` INTO the record in the path. The secondary stops existing.
|
|
1506
|
+
*
|
|
1507
|
+
* Mirrors `_MergeContactRequest` / `_MergeCompanyRequest`, which are identical.
|
|
1508
|
+
*/
|
|
1509
|
+
export interface MergeRecordRequest {
|
|
1510
|
+
/** The bulk criterion, when `trigger` is `bulk_criterion`. */
|
|
1511
|
+
bulk_criterion?: string | null;
|
|
1512
|
+
/** Decide individual fields instead of the app's rules. */
|
|
1513
|
+
field_overrides?: Array<MergeFieldOverride>;
|
|
1514
|
+
/** The record merged AWAY. */
|
|
1515
|
+
secondary_id: number;
|
|
1516
|
+
/** The duplicate suggestion this merge acts on, if any. */
|
|
1517
|
+
suggestion_id?: string | null;
|
|
1518
|
+
/** What prompted the merge. Recorded on the audit row. */
|
|
1519
|
+
trigger?: "manual" | "bulk_criterion";
|
|
1520
|
+
}
|
|
1521
|
+
|
|
1522
|
+
export interface PaginationMeta {
|
|
1523
|
+
/** Whether there are more pages */
|
|
1524
|
+
has_next: boolean;
|
|
1525
|
+
/** Items per page */
|
|
1526
|
+
limit: number;
|
|
1527
|
+
/** 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. */
|
|
1528
|
+
next_cursor?: string | null;
|
|
1529
|
+
/** Current page number (1-indexed) */
|
|
1530
|
+
page: number;
|
|
1531
|
+
/** Total number of items */
|
|
1532
|
+
total: number;
|
|
1533
|
+
}
|
|
1534
|
+
|
|
1535
|
+
/** Attach the output of a skill run to a record as a document. */
|
|
1536
|
+
export interface SaveSkillResultRequest {
|
|
1537
|
+
/** Action within that execution. */
|
|
1538
|
+
action_name: string;
|
|
1539
|
+
/** Document body to store. */
|
|
1540
|
+
content: string;
|
|
1541
|
+
/** The skill execution that produced the content. */
|
|
1542
|
+
execution_id: string;
|
|
1543
|
+
}
|
|
1544
|
+
|
|
1545
|
+
/**
|
|
1546
|
+
* An AND/OR group of leaves and nested groups, at most three groups deep.
|
|
1547
|
+
*
|
|
1548
|
+
* Mirrors `SegmentFilterGroup` in `contacts.domain.value_objects.ag_grid_models`.
|
|
1549
|
+
* `op` is closed because the app REFUSES an unrecognised connector rather
|
|
1550
|
+
* than defaulting to AND - defaulting would silently return a different
|
|
1551
|
+
* result set, and on a destructive route that is a different set of records
|
|
1552
|
+
* acted on.
|
|
1553
|
+
*
|
|
1554
|
+
* FIXED DEPTH, NOT RECURSIVE. The app's model is self-referencing; the
|
|
1555
|
+
* published one deliberately is not, because a schema that reaches itself
|
|
1556
|
+
* through `$ref` sends the docs renderer into unbounded recursion. Three
|
|
1557
|
+
* group levels (this one, `SegmentFilterSubgroup`, `SegmentFilterInnerGroup`)
|
|
1558
|
+
* cover every filter the app's own builder produces; the app's larger depth
|
|
1559
|
+
* and leaf budget still applies and surfaces as a 422.
|
|
1560
|
+
*/
|
|
1561
|
+
export interface SegmentFilterGroup {
|
|
1562
|
+
/** Nested groups and/or leaf conditions. */
|
|
1563
|
+
children?: Array<SegmentFilterSubgroup | SegmentFilterLeaf>;
|
|
1564
|
+
/** Connector for this group. Case-insensitive. */
|
|
1565
|
+
op: "AND" | "OR" | "and" | "or";
|
|
1566
|
+
}
|
|
1567
|
+
|
|
1568
|
+
/** The third and deepest group level: leaf conditions only. */
|
|
1569
|
+
export interface SegmentFilterInnerGroup {
|
|
1570
|
+
/** Leaf conditions. */
|
|
1571
|
+
children?: Array<SegmentFilterLeaf>;
|
|
1572
|
+
/** Connector for this group. Case-insensitive. */
|
|
1573
|
+
op: "AND" | "OR" | "and" | "or";
|
|
1574
|
+
}
|
|
1575
|
+
|
|
1576
|
+
/**
|
|
1577
|
+
* One field-level condition inside an advanced-filter tree.
|
|
1578
|
+
*
|
|
1579
|
+
* Mirrors `contacts.domain.value_objects.ag_grid_models.SegmentFilterLeaf`.
|
|
1580
|
+
* `op` is CLOSED here: the app compiles its UI vocabulary down to this
|
|
1581
|
+
* canonical set before sending, and an unrecognised operator reaching the
|
|
1582
|
+
* SQL builder is a 500 rather than a refusal naming the valid operators.
|
|
1583
|
+
*/
|
|
1584
|
+
export interface SegmentFilterLeaf {
|
|
1585
|
+
/** Column to test, e.g. `CONTACT_JOB_TITLE`. */
|
|
1586
|
+
field: string;
|
|
1587
|
+
/** Comparison to apply. */
|
|
1588
|
+
op: "eq" | "neq" | "lt" | "lte" | "gt" | "gte" | "contains" | "icontains" | "starts_with" | "ends_with" | "in" | "not_in" | "between" | "is_null" | "is_not_null";
|
|
1589
|
+
/** Value to compare against. */
|
|
1590
|
+
value?: unknown | null;
|
|
1591
|
+
/** Upper bound. Only meaningful with `between`. */
|
|
1592
|
+
valueTo?: unknown | null;
|
|
1593
|
+
}
|
|
1594
|
+
|
|
1595
|
+
/** The second group level: leaves and/or innermost groups. */
|
|
1596
|
+
export interface SegmentFilterSubgroup {
|
|
1597
|
+
/** Innermost groups and/or leaf conditions. */
|
|
1598
|
+
children?: Array<SegmentFilterInnerGroup | SegmentFilterLeaf>;
|
|
1599
|
+
/** Connector for this group. Case-insensitive. */
|
|
1600
|
+
op: "AND" | "OR" | "and" | "or";
|
|
1601
|
+
}
|
|
1602
|
+
|
|
1603
|
+
/**
|
|
1604
|
+
* Single step in a caller-supplied waterfall sequence.
|
|
1605
|
+
*
|
|
1606
|
+
* Mirrors `WaterfallStepDto` in `enrichment/interfaces/fastapi/waterfall_dtos.py`.
|
|
1607
|
+
* Persisted verbatim into `enrichment_configs.config.steps[]` so the CF
|
|
1608
|
+
* worker can resolve provider, action and credentials the same way
|
|
1609
|
+
* UI-saved pipelines do.
|
|
1610
|
+
*/
|
|
1611
|
+
export interface WaterfallStepInput {
|
|
1612
|
+
/** Provider action: lookup_person, find_email, enrich_person, ... */
|
|
1613
|
+
action: string;
|
|
1614
|
+
/** Human-readable label shown in UI. Auto-titled from `action` if omitted. */
|
|
1615
|
+
action_display_name?: string | null;
|
|
1616
|
+
confidence_threshold?: number;
|
|
1617
|
+
/** Provider-specific options (e.g. apollo `reveal_phone_numbers=true`). */
|
|
1618
|
+
config?: Record<string, unknown>;
|
|
1619
|
+
enabled?: boolean;
|
|
1620
|
+
/** Step identifier. Auto-generated (`step_<provider>_<uuid8>`) if omitted. */
|
|
1621
|
+
id?: string | null;
|
|
1622
|
+
/** Maps provider input names to graph8 column identifiers (CONTACT_*). */
|
|
1623
|
+
input_mapping?: Record<string, string>;
|
|
1624
|
+
/** True = use graph8-managed credentials + charge credits. False = use org BYOK. */
|
|
1625
|
+
is_system_provider?: boolean;
|
|
1626
|
+
max_retries?: number;
|
|
1627
|
+
/** 0-indexed execution order. */
|
|
1628
|
+
order?: number;
|
|
1629
|
+
/** Dotted path the worker writes into (e.g. 'contact.work_email'). */
|
|
1630
|
+
output_field?: string | null;
|
|
1631
|
+
/** Optional output field remap (deprecated — prefer `output_field`). */
|
|
1632
|
+
output_mapping?: Record<string, string>;
|
|
1633
|
+
/** Provider name: graph8, hunter, prospeo, dropcontact, apollo, ... */
|
|
1634
|
+
provider: string;
|
|
1635
|
+
stop_on_success?: boolean;
|
|
1636
|
+
}
|