Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. relationshipGrain says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use populations for totals. REST twin of the get_event_cross_tab MCP tool.
Event window, filters, and the row and column dimensions
rows
object
required
The dimension down the side. One row per value, ranked by metric.
Show child attributes
columns
object
required
The dimension across the top. Every row is split by its values.
Show child attributes
startDate
string<date-time> | null
Start date for event time range (ISO 8601 format). Defaults to 14 days ago if not provided; the response's dataWindow echoes what was used.
endDate
string<date-time> | null
End date for event time range. Defaults to the time of the request, so events stamped in the future (a lost deal's placeholder close date, for example) are left out; pass an explicit later endDate to include them. The response's dataWindow echoes what was used.
filters
object
Filters to INCLUDE events: event type/category, company, contact, sentiment, call purpose, outcome, deal amount, library entity oIds (offerings, personas, segments, tags, use cases, competitors, alternatives, buying triggers, core features, objections, proof points, references), motion types, customer scope, custom extractor answers, and CRM deal context (opportunityIds, opportunityStatuses, dealMotions, dealTypes, dealStages, pipelinePhases, crmPipelines, minStalledDays). Deal filters AND on the same linked deal; values within one filter are OR'd. Events default to the activity feed's types, which leave out knowledge collection pages (docs, release notes): name their event types in eventTypes to read them.
Show child attributes
exclude
object
Filters to EXCLUDE events matching these criteria (same shape as the entity/outcome match filters)
Show child attributes
excludeTags
string[]
Exclude events matching any library entity that carries these reporting tag oIds. Use list_tag_groups to resolve tag oIds. Multiple tags are OR'd.
metric
enum<string>
default:events
What to rank by. events = distinct matching events; uniqueCompanies = distinct companies on them; uniqueDeals / wonDeals / lostDeals = distinct CRM deals linked to them (any / closed-won / closed-lost today); knownWonValue = summed home-currency value of the won deals whose value is known and not negative (a group with none known ranks last); winRateSampleAdjusted = win rate, ranked by the LOW end of each group's 95% interval (winRate.low) so a small sample cannot top the list — 2 won of 2 ranks below 40 won of 60. Use it for 'which of these wins most'; the plain winRate.rate is on every group but is not offered as a ranking because it rewards tiny samples. Groups with no closed deals rank last. Every metric is returned on every group — this only picks the ordering.
Available options:
events,
uniqueCompanies,
uniqueDeals,
wonDeals,
lostDeals,
knownWonValue,
winRateSampleAdjusted
rowLimit
integer
default:15
Row groups to return, ranked by metric (default 15, max 50).
Required range: 1 <= x <= 50
columnLimit
integer
default:10
Column groups to return, ranked by metric (default 10, max 25).
Required range: 1 <= x <= 25
Response
Event Cross-Tab
_metadata
object
required
Show child attributes
populations
object
required
What the table is drawn from. An event can carry several values of a dimension, so rows, columns and cells OVERLAP: never add them up to get a total — these are the totals. Only the top rowLimit / columnLimit groups are listed, so listed groups can cover less than these.
Show child attributes
relationshipGrain
enum<string> | null
required
What a CELL means when rows are crossed with columns. same_event: both values occur somewhere in the same conversation — co-occurrence, NOT that one was said about the other, and never who said it (the 'person' dimension is who attended). same_finding: speaker_side crossed with an entity type or tag group — the side is read off the very finding that matched the entity, so 'objection X × external' means a buyer-side finding raised X. There, 'unknown' is a finding type that records no speaker, and speaker_side totals cover only that dimension's findings. Whatever the grain, every metric still counts distinct events, companies and deals — never findings. Null without columns.
Available options:
same_finding,
same_event,
null
rows
object[]
required
Show child attributes
columns
object[]
required
The column groups, ranked; empty when no columns dimension was requested.
Show child attributes
dataWindow
object
required
The time span these numbers cover. Compare numbers from two tools only when their dataWindow kind and dates match.
Show child attributes
metric
enum<string>
required
What to rank by. events = distinct matching events; uniqueCompanies = distinct companies on them; uniqueDeals / wonDeals / lostDeals = distinct CRM deals linked to them (any / closed-won / closed-lost today); knownWonValue = summed home-currency value of the won deals whose value is known and not negative (a group with none known ranks last); winRateSampleAdjusted = win rate, ranked by the LOW end of each group's 95% interval (winRate.low) so a small sample cannot top the list — 2 won of 2 ranks below 40 won of 60. Use it for 'which of these wins most'; the plain winRate.rate is on every group but is not offered as a ranking because it rewards tiny samples. Groups with no closed deals rank last. Every metric is returned on every group — this only picks the ordering.
Available options:
events,
uniqueCompanies,
uniqueDeals,
wonDeals,
lostDeals,
knownWonValue,
winRateSampleAdjusted
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Octave API","colors":{"primary":"#333999","light":"#4B53C3","dark":"#3D3299"},"logo":{"light":"https://mintcdn.com/octave/SNMu0rTVOCvjTqcW/logo/logo.svg?fit=max\u0026auto=format\u0026n=SNMu0rTVOCvjTqcW\u0026q=85\u0026s=4f2d9698f4a42a583deee9e8721a9211","dark":"https://mintcdn.com/octave/SNMu0rTVOCvjTqcW/logo/logo.svg?fit=max\u0026auto=format\u0026n=SNMu0rTVOCvjTqcW\u0026q=85\u0026s=4f2d9698f4a42a583deee9e8721a9211"},"favicon":"https://mintcdn.com/octave/SNMu0rTVOCvjTqcW/favicon.svg?fit=max\u0026auto=format\u0026n=SNMu0rTVOCvjTqcW\u0026q=85\u0026s=f2d2b56c810a0fd21cf18ef023ddfab4","api":{"mdx":{"auth":{"method":"key","name":"api_key"}}},"navbar":{"links":[{"href":"mailto:support@octavehq.com","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.octavehq.com"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/octavehq"}},"seo":{"metatags":{"og:site_name":"Octave API Documentation","og:type":"website","og:locale":"en_US"},"indexing":"navigable"},"integrations":{"ga4":{"measurementId":"G-QW3B8BG664"},"posthog":{"apiKey":"phc_J3I5lz22TVmvufdByV6yBKkp0FTbjAAR9LiYPX7ss7k","apiHost":"https://us.i.posthog.com"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"octave","hasAudioNarration":false,"actualSubdomain":"octave","customDomains":["docs.octavehq.com"],"gitSource":{"type":"github","owner":"octavehq","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6af30c5e84c63df7259845b9","clientVersion":"0.0.4138","searchFilterCounts":[{"language":"default","tag":"V2 API Reference","count":252},{"language":"default","tag":"Getting Started","count":45},{"language":"default","tag":"Concepts","count":29},{"language":"default","tag":"Asset","count":25},{"language":"default","tag":"Agents","count":18},{"language":"default","tag":"MCP","count":12},{"language":"default","tag":"Events","count":11},{"language":"default","tag":"Custom Extractors","count":10},{"language":"default","tag":"Sources","count":8},{"language":"default","tag":"Data warehouse","count":8}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"v2-api-reference/events/event-cross-tab","slug":"/v2-api-reference/events/event-cross-tab","pageMetadata":{"openapi":"post /api/v2/event/cross-tab","title":"Event Cross-Tab","description":"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. `relationshipGrain` says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use `populations` for totals. REST twin of the get_event_cross_tab MCP tool.","href":"/v2-api-reference/events/event-cross-tab"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. \", _jsx(_components.code, {\n children: \"relationshipGrain\"\n }), \" says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use \", _jsx(_components.code, {\n children: \"populations\"\n }), \" for totals. REST twin of the get_event_cross_tab MCP tool.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"post /api/v2/event/cross-tab","title":"Event Cross-Tab","description":"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. `relationshipGrain` says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use `populations` for totals. REST twin of the get_event_cross_tab MCP tool.","href":"/v2-api-reference/events/event-cross-tab"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/octave/ad2757b864166314/schema.js"],"openApiReferenceData":{"operation":{"deprecated":false,"operationId":"crossTabulateEvents","summary":"Event Cross-Tab","description":"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. `relationshipGrain` says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use `populations` for totals. REST twin of the get_event_cross_tab MCP tool.","tags":["Events"],"x-visibility":"public","x-preview":true,"requestBody":"652264cd-80e2-4310-9098-80df74c8991c","responses":{"200":"298f8c69-6b20-4d1b-900e-1386b35f289e","400":"76f303cf-b7b9-4cb4-887a-401a4edcb5d4"},"method":"post","type":"path","servers":["f63d943e-e794-4d9b-9a7b-416941042663"],"security":["3d8accbd-55f3-4c87-a1ae-93a55ea5cbe6"],"path":"/api/v2/event/cross-tab","baseUrlOptions":["https://app.octavehq.com"],"title":"Event Cross-Tab","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"description":"Event window, filters, and the row and column dimensions","content":{"application/json":{"schema":{"type":"object","properties":{"rows":{"type":"object","properties":{"by":{"type":"string","enum":["segment","persona","use_case","core_feature","competitor","alternative","buying_trigger","objection","proof_point","reference","tag_group","offering","offering_of_core_feature","company","person","speaker_side","deal_stage_at_event"],"description":"What to group by. A library entity type (use_case, segment, persona, competitor, objection, …) groups by the entities matched on each event. 'tag_group' groups by the values of one tag group (give tagGroupOId) — e.g. use cases rolled up by Imperative. 'company' and 'person' group by who the event was with (person = external contacts). 'offering' groups by the products, services and solutions a finding on the event was matched to directly — the offering was what was talked about. 'offering_of_core_feature' rolls matched CAPABILITIES up to the offering each belongs to in the library today ('(no parent offering)' when a capability has none) — use it to compare products by the capabilities that came up. The two are different relations and give different answers; neither says what a deal SOLD or what the account OWNS. A conversation that touches two offerings counts under both. An offering match classifies the whole conversation rather than quoting someone, so 'offering' crossed with speaker_side is always 'unknown'. 'speaker_side' groups by internal vs external speaker. 'deal_stage_at_event' groups by the CRM stage the linked deal was in WHEN the event happened, not its stage today.","isRequired":true,"uniqueKey":"rows.by","typeLabel":"enum\u003cstring>"},"tagGroupOId":{"type":"string","description":"Required when by = 'tag_group' (tg_...); ignored otherwise.","uniqueKey":"rows.tagGroupOId","typeLabel":"string"}},"required":["by"],"description":"The dimension down the side. One row per value, ranked by `metric`.","isRequired":true,"uniqueKey":"rows","typeLabel":"object"},"columns":{"type":"object","properties":{"by":{"type":"string","enum":["segment","persona","use_case","core_feature","competitor","alternative","buying_trigger","objection","proof_point","reference","tag_group","offering","offering_of_core_feature","company","person","speaker_side","deal_stage_at_event"],"description":"What to group by. A library entity type (use_case, segment, persona, competitor, objection, …) groups by the entities matched on each event. 'tag_group' groups by the values of one tag group (give tagGroupOId) — e.g. use cases rolled up by Imperative. 'company' and 'person' group by who the event was with (person = external contacts). 'offering' groups by the products, services and solutions a finding on the event was matched to directly — the offering was what was talked about. 'offering_of_core_feature' rolls matched CAPABILITIES up to the offering each belongs to in the library today ('(no parent offering)' when a capability has none) — use it to compare products by the capabilities that came up. The two are different relations and give different answers; neither says what a deal SOLD or what the account OWNS. A conversation that touches two offerings counts under both. An offering match classifies the whole conversation rather than quoting someone, so 'offering' crossed with speaker_side is always 'unknown'. 'speaker_side' groups by internal vs external speaker. 'deal_stage_at_event' groups by the CRM stage the linked deal was in WHEN the event happened, not its stage today.","isRequired":true,"uniqueKey":"columns.by","typeLabel":"enum\u003cstring>"},"tagGroupOId":{"type":"string","description":"Required when by = 'tag_group' (tg_...); ignored otherwise.","uniqueKey":"columns.tagGroupOId","typeLabel":"string"}},"required":["by"],"description":"The dimension across the top. Every row is split by its values.","isRequired":true,"uniqueKey":"columns","typeLabel":"object"},"startDate":{"oneOf":[{"type":"string","format":"date-time","description":"Start date for event time range (ISO 8601 format). Defaults to 14 days ago if not provided; the response's dataWindow echoes what was used.","uniqueKey":"startDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Start date for event time range (ISO 8601 format). Defaults to 14 days ago if not provided; the response's dataWindow echoes what was used.","uniqueKey":"startDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"startDate","typeLabel":"string\u003cdate-time> | null"},"endDate":{"oneOf":[{"type":"string","format":"date-time","description":"End date for event time range. Defaults to the time of the request, so events stamped in the future (a lost deal's placeholder close date, for example) are left out; pass an explicit later endDate to include them. The response's dataWindow echoes what was used.","uniqueKey":"endDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"End date for event time range. Defaults to the time of the request, so events stamped in the future (a lost deal's placeholder close date, for example) are left out; pass an explicit later endDate to include them. The response's dataWindow echoes what was used.","uniqueKey":"endDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"endDate","typeLabel":"string\u003cdate-time> | null"},"filters":{"type":"object","properties":{"entityMatchAll":{"type":"boolean","description":"Require every selected library entity, including entities of the same category","uniqueKey":"filters.entityMatchAll","typeLabel":"boolean"},"eventOIds":{"type":"array","items":{"type":"string","uniqueKey":"filters.eventOIds.items.[INDEX]","typeLabel":"string"},"description":"Filter to these event oIds only","uniqueKey":"filters.eventOIds","typeLabel":"string[]"},"opportunityIds":{"type":"array","items":{"type":"string","uniqueKey":"filters.opportunityIds.items.[INDEX]","typeLabel":"string"},"description":"Filter to events linked to these opportunities. Accepts Octave opportunity oIds (crmo_*) or the CRM's own deal ids (Salesforce Id, HubSpot object id, Attio record UUID) interchangeably","uniqueKey":"filters.opportunityIds","typeLabel":"string[]"},"eventCategories":{"type":"array","items":{"type":"string","enum":["EMAIL","CALL","CRM","RESOURCE","REVISION","SOCIAL","ADS","PRODUCT","UNKNOWN"],"uniqueKey":"filters.eventCategories.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by event categories (CALL, EMAIL, CRM)","uniqueKey":"filters.eventCategories","typeLabel":"enum\u003cstring>[]"},"eventTypes":{"type":"array","items":{"type":"string","enum":["EMAIL_SENT","EMAIL_REPLY_RECEIVED","CALL_TRANSCRIPT","DEAL_WON","DEAL_LOST","OPPORTUNITY_CREATED","MEETING_BOOKED","RESOURCE_INDEXED","RESOURCE_REINDEXED","PRODUCT_DOC_INDEXED","PRODUCT_DOC_REINDEXED","DEVELOPER_DOC_INDEXED","DEVELOPER_DOC_REINDEXED","RELEASE_NOTE_INDEXED","RELEASE_NOTE_REINDEXED","PROJECT_UPDATE","TASK_COMPLETED","ENTITY_CREATED","ENTITY_UPDATED","SOCIAL_MESSAGE_SENT","SOCIAL_MESSAGE_RECEIVED","SOCIAL_CONNECTION_SENT","SOCIAL_CONNECTION_ACCEPTED","AD_SET_PUBLISHED","AD_PERFORMANCE_SNAPSHOT","BULK_IMPORT_SUMMARY","PROCESSING_NOT_APPLICABLE","PROVIDER_EVENT_TYPE_UNKNOWN","UNKNOWN"],"uniqueKey":"filters.eventTypes.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by specific event types (CALL_TRANSCRIPT, EMAIL_SENT, DEAL_WON, etc.)","uniqueKey":"filters.eventTypes","typeLabel":"enum\u003cstring>[]"},"sentiments":{"type":"array","items":{"type":"string","enum":["POSITIVE","NEUTRAL","NEGATIVE","UNKNOWN"],"uniqueKey":"filters.sentiments.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by sentiment (POSITIVE, NEGATIVE, NEUTRAL, MIXED)","uniqueKey":"filters.sentiments","typeLabel":"enum\u003cstring>[]"},"contactEmails":{"type":"array","items":{"type":"string","uniqueKey":"filters.contactEmails.items.[INDEX]","typeLabel":"string"},"description":"Filter by participant email addresses","uniqueKey":"filters.contactEmails","typeLabel":"string[]"},"companyDomains":{"type":"array","items":{"type":"string","uniqueKey":"filters.companyDomains.items.[INDEX]","typeLabel":"string"},"description":"Filter by company domains","uniqueKey":"filters.companyDomains","typeLabel":"string[]"},"replyOutcomes":{"type":"array","items":{"type":"string","enum":["POSITIVE","NEUTRAL","NEGATIVE"],"uniqueKey":"filters.replyOutcomes.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by how the reply to an outbound event was classified (POSITIVE, NEUTRAL, NEGATIVE). Independent of any deal.","uniqueKey":"filters.replyOutcomes","typeLabel":"enum\u003cstring>[]"},"opportunityStatuses":{"type":"array","items":{"type":"string","enum":["OPEN","WON","LOST"],"uniqueKey":"filters.opportunityStatuses.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter to events linked to deals with this status (OPEN, WON, LOST)","uniqueKey":"filters.opportunityStatuses","typeLabel":"enum\u003cstring>[]"},"lossReasonCategories":{"type":"array","items":{"type":"string","enum":["nurture_recycle","lost_to_competitor","product_fit","self_solve","not_qualified","internal_change","no_decision","ghosted","product_quality","security_compliance","timing","budget","merged_duplicate","churn","other"],"uniqueKey":"filters.lossReasonCategories.items.[INDEX]","typeLabel":"enum\u003cstring>"},"maxItems":50,"description":"Normalized CRM loss reason categories. Categories may be inferred from CRM text; they are not verified causal explanations.","uniqueKey":"filters.lossReasonCategories","typeLabel":"enum\u003cstring>[]"},"minDealValue":{"type":"number","description":"Minimum linked-deal value in workspace home currency, inclusive; missing/unconvertible values do not match. Reads the same linked opportunity as owner and stage.","uniqueKey":"filters.minDealValue","typeLabel":"number"},"maxDealValue":{"type":"number","description":"Maximum linked-deal value in workspace home currency, inclusive","uniqueKey":"filters.maxDealValue","typeLabel":"number"},"minDealAgeDays":{"type":"number","minimum":0,"maximum":365000,"description":"Minimum elapsed 24-hour days since CRM deal creation, inclusive","uniqueKey":"filters.minDealAgeDays","typeLabel":"number"},"maxDealAgeDays":{"type":"number","minimum":0,"maximum":365000,"description":"Maximum elapsed 24-hour days since CRM deal creation, inclusive","uniqueKey":"filters.maxDealAgeDays","typeLabel":"number"},"maxStalledDays":{"type":"number","minimum":0,"maximum":365000,"description":"Maximum elapsed days in the OPEN deal's current recorded stage. Missing stage history does not match.","uniqueKey":"filters.maxStalledDays","typeLabel":"number"},"dealCreatedAfter":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Linked deal CRM creation date on or after this UTC date","uniqueKey":"filters.dealCreatedAfter","typeLabel":"string"},"dealCreatedBefore":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Linked deal CRM creation date on or before this UTC date","uniqueKey":"filters.dealCreatedBefore","typeLabel":"string"},"dealClosedAfter":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Closed linked deals whose current CRM close date is on or after this UTC date; excludes open deals' forecast close dates","uniqueKey":"filters.dealClosedAfter","typeLabel":"string"},"dealClosedBefore":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Closed linked deals whose current CRM close date is on or before this UTC date","uniqueKey":"filters.dealClosedBefore","typeLabel":"string"},"stageTransition":{"type":"object","properties":{"fromStage":{"type":"string","minLength":1,"maxLength":256,"isRequired":true,"uniqueKey":"filters.stageTransition.fromStage","typeLabel":"string"},"toStage":{"type":"string","minLength":1,"maxLength":256,"isRequired":true,"uniqueKey":"filters.stageTransition.toStage","typeLabel":"string"},"minDays":{"type":"number","minimum":0,"maximum":365000,"uniqueKey":"filters.stageTransition.minDays","typeLabel":"number"},"maxDays":{"type":"number","minimum":0,"maximum":365000,"uniqueKey":"filters.stageTransition.maxDays","typeLabel":"number"}},"required":["fromStage","toStage"],"additionalProperties":false,"description":"A recorded completed direct stage transition, measuring entry into fromStage to entry into the immediately following different stage toStage. Any completed visit can match. Ongoing stages do not match. Historical analysis only; unavailable to live extraction.","uniqueKey":"filters.stageTransition","typeLabel":"object"},"dealOwnerIds":{"type":"array","items":{"type":"string","minLength":1,"maxLength":512,"uniqueKey":"filters.dealOwnerIds.items.[INDEX]","typeLabel":"string"},"maxItems":100,"description":"Current CRM owners of linked deals, using provider-scoped owner keys returned by getDealOwners. Values OR; match-side deal conditions must hold on the same deal. This is current ownership, not the owner at event time or the conversation participant.","uniqueKey":"filters.dealOwnerIds","typeLabel":"string[]"},"dealMotions":{"type":"array","items":{"type":"string","enum":["NET_NEW","UPSELL","CROSS_SELL","RENEW_AND_RETAIN","CONVERT_FREE_TO_PAID","DISPLACE_INCUMBENT","SERVICES","PARTNER","NON_COMMERCIAL"],"uniqueKey":"filters.dealMotions.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter to events linked to deals whose CRM deal type maps to these motions (NET_NEW, UPSELL, CROSS_SELL, RENEW_AND_RETAIN, CONVERT_FREE_TO_PAID, DISPLACE_INCUMBENT, SERVICES, PARTNER, NON_COMMERCIAL)","uniqueKey":"filters.dealMotions","typeLabel":"enum\u003cstring>[]"},"dealTypes":{"type":"array","items":{"type":"string","uniqueKey":"filters.dealTypes.items.[INDEX]","typeLabel":"string"},"description":"Filter to events linked to deals with these raw CRM deal-type labels (Salesforce Type, HubSpot dealtype), case-insensitive","uniqueKey":"filters.dealTypes","typeLabel":"string[]"},"dealStages":{"type":"array","items":{"type":"string","uniqueKey":"filters.dealStages.items.[INDEX]","typeLabel":"string"},"description":"Filter to events linked to deals currently in these CRM stages, by stage label or stage id, case-insensitive","uniqueKey":"filters.dealStages","typeLabel":"string[]"},"dealStagesAtEvent":{"type":"array","items":{"type":"string","uniqueKey":"filters.dealStagesAtEvent.items.[INDEX]","typeLabel":"string"},"description":"Filter to events whose linked deal was in one of these CRM stages WHEN THE EVENT HAPPENED (by stage label, case-insensitive), from the deal's stage history — unlike dealStages, which reads the deal's stage today. Use it for 'what came up on calls during Discovery'. An event whose deal has no recorded stage at that time does not match.","uniqueKey":"filters.dealStagesAtEvent","typeLabel":"string[]"},"pipelinePhases":{"type":"array","items":{"type":"string","enum":["prospecting","discovery","evaluation","negotiation","commitment","closed_won","closed_lost"],"uniqueKey":"filters.pipelinePhases.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter to events linked to deals whose stage maps to these pipeline phases (prospecting, discovery, evaluation, negotiation, commitment, closed_won, closed_lost)","uniqueKey":"filters.pipelinePhases","typeLabel":"enum\u003cstring>[]"},"crmPipelines":{"type":"array","items":{"type":"string","uniqueKey":"filters.crmPipelines.items.[INDEX]","typeLabel":"string"},"description":"Filter to events linked to deals in these CRM pipelines, by pipeline id or name (case-insensitive name)","uniqueKey":"filters.crmPipelines","typeLabel":"string[]"},"minStalledDays":{"type":"number","description":"Filter to events linked to an OPEN deal that has sat in its current stage at least this many days","uniqueKey":"filters.minStalledDays","typeLabel":"number"},"offerings":{"type":"array","items":{"type":"string","uniqueKey":"filters.offerings.items.[INDEX]","typeLabel":"string"},"description":"Filter by offering oIds","uniqueKey":"filters.offerings","typeLabel":"string[]"},"personas":{"type":"array","items":{"type":"string","uniqueKey":"filters.personas.items.[INDEX]","typeLabel":"string"},"description":"Filter by persona oIds (events must match these personas)","uniqueKey":"filters.personas","typeLabel":"string[]"},"segments":{"type":"array","items":{"type":"string","uniqueKey":"filters.segments.items.[INDEX]","typeLabel":"string"},"description":"Filter by segment oIds","uniqueKey":"filters.segments","typeLabel":"string[]"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"filters.tags.items.[INDEX]","typeLabel":"string"},"description":"Filter by reporting tag oIds (from any tag group, on any library entity type). Resolved to the entities carrying those tags; multiple tags are OR'd.","uniqueKey":"filters.tags","typeLabel":"string[]"},"customExtractors":{"type":"array","items":{"type":"string","uniqueKey":"filters.customExtractors.items.[INDEX]","typeLabel":"string"},"description":"Filter by custom extractor answers: events on which the custom extractor found something. Each value is a custom extractor oId (cex_…) for any answer, or \u003cextractorOId>:\u003cclassValue> for one answer of a yes/no or choice custom extractor (e.g. cex_abc:asked_for_it; yes/no custom extractors use true or false). Multiple values are OR'd. list_custom_extractors gives custom extractor oIds and their class values.","uniqueKey":"filters.customExtractors","typeLabel":"string[]"},"useCases":{"type":"array","items":{"type":"string","uniqueKey":"filters.useCases.items.[INDEX]","typeLabel":"string"},"description":"Filter by use case oIds","uniqueKey":"filters.useCases","typeLabel":"string[]"},"references":{"type":"array","items":{"type":"string","uniqueKey":"filters.references.items.[INDEX]","typeLabel":"string"},"description":"Filter by reference customer oIds","uniqueKey":"filters.references","typeLabel":"string[]"},"competitors":{"type":"array","items":{"type":"string","uniqueKey":"filters.competitors.items.[INDEX]","typeLabel":"string"},"description":"Filter by competitor oIds","uniqueKey":"filters.competitors","typeLabel":"string[]"},"alternatives":{"type":"array","items":{"type":"string","uniqueKey":"filters.alternatives.items.[INDEX]","typeLabel":"string"},"description":"Filter by alternative oIds","uniqueKey":"filters.alternatives","typeLabel":"string[]"},"buyingTriggers":{"type":"array","items":{"type":"string","uniqueKey":"filters.buyingTriggers.items.[INDEX]","typeLabel":"string"},"description":"Filter by buying trigger oIds","uniqueKey":"filters.buyingTriggers","typeLabel":"string[]"},"coreFeatures":{"type":"array","items":{"type":"string","uniqueKey":"filters.coreFeatures.items.[INDEX]","typeLabel":"string"},"description":"Filter by core feature oIds","uniqueKey":"filters.coreFeatures","typeLabel":"string[]"},"objections":{"type":"array","items":{"type":"string","uniqueKey":"filters.objections.items.[INDEX]","typeLabel":"string"},"description":"Filter by objection oIds","uniqueKey":"filters.objections","typeLabel":"string[]"},"proofPoints":{"type":"array","items":{"type":"string","uniqueKey":"filters.proofPoints.items.[INDEX]","typeLabel":"string"},"description":"Filter by proof point oIds","uniqueKey":"filters.proofPoints","typeLabel":"string[]"},"motionTypes":{"type":"array","items":{"type":"string","enum":["NET_NEW","UPSELL","CROSS_SELL","CONVERT_FREE_TO_PAID","RENEW_AND_RETAIN","DISPLACE_INCUMBENT"],"uniqueKey":"filters.motionTypes.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by motion type (NET_NEW, UPSELL)","uniqueKey":"filters.motionTypes","typeLabel":"enum\u003cstring>[]"},"customerScope":{"type":"string","enum":["ALL","NEW_CUSTOMERS","EXISTING_CUSTOMERS"],"description":"Customer-scope view (NEW_CUSTOMERS / EXISTING_CUSTOMERS); ALL or absent applies no filter","uniqueKey":"filters.customerScope","typeLabel":"enum\u003cstring>"},"callPurposes":{"type":"array","items":{"type":"string","enum":["DISCOVERY","DEMO","TECHNICAL_EVALUATION","WORKING_SESSION","NEGOTIATION_PRICING","ONBOARDING","CHECK_IN_SUCCESS","QBR_RENEWAL","EXPANSION_UPSELL","ESCALATION_CHURN_RISK","SUPPORT","CUSTOMER_INTERVIEW","INTERNAL_SYNC","OTHER"],"uniqueKey":"filters.callPurposes.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter calls by classified purpose (DISCOVERY, DEMO, TECHNICAL_EVALUATION, WORKING_SESSION, NEGOTIATION_PRICING, ONBOARDING, CHECK_IN_SUCCESS, QBR_RENEWAL, EXPANSION_UPSELL, ESCALATION_CHURN_RISK, SUPPORT, CUSTOMER_INTERVIEW, INTERNAL_SYNC, OTHER)","uniqueKey":"filters.callPurposes","typeLabel":"enum\u003cstring>[]"},"unmatchedOnly":{"type":"boolean","description":"When true, only return events that have findings with no library entity matches","uniqueKey":"filters.unmatchedOnly","typeLabel":"boolean"}},"description":"Filters to INCLUDE events: event type/category, company, contact, sentiment, call purpose, outcome, deal amount, library entity oIds (offerings, personas, segments, tags, use cases, competitors, alternatives, buying triggers, core features, objections, proof points, references), motion types, customer scope, custom extractor answers, and CRM deal context (opportunityIds, opportunityStatuses, dealMotions, dealTypes, dealStages, pipelinePhases, crmPipelines, minStalledDays). Deal filters AND on the same linked deal; values within one filter are OR'd. Events default to the activity feed's types, which leave out knowledge collection pages (docs, release notes): name their event types in eventTypes to read them.","uniqueKey":"filters","typeLabel":"object"},"exclude":{"type":"object","properties":{"eventCategories":{"type":"array","items":{"type":"string","enum":["EMAIL","CALL","CRM","RESOURCE","REVISION","SOCIAL","ADS","PRODUCT","UNKNOWN"],"uniqueKey":"exclude.eventCategories.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by event categories (CALL, EMAIL, CRM)","uniqueKey":"exclude.eventCategories","typeLabel":"enum\u003cstring>[]"},"eventTypes":{"type":"array","items":{"type":"string","enum":["EMAIL_SENT","EMAIL_REPLY_RECEIVED","CALL_TRANSCRIPT","DEAL_WON","DEAL_LOST","OPPORTUNITY_CREATED","MEETING_BOOKED","RESOURCE_INDEXED","RESOURCE_REINDEXED","PRODUCT_DOC_INDEXED","PRODUCT_DOC_REINDEXED","DEVELOPER_DOC_INDEXED","DEVELOPER_DOC_REINDEXED","RELEASE_NOTE_INDEXED","RELEASE_NOTE_REINDEXED","PROJECT_UPDATE","TASK_COMPLETED","ENTITY_CREATED","ENTITY_UPDATED","SOCIAL_MESSAGE_SENT","SOCIAL_MESSAGE_RECEIVED","SOCIAL_CONNECTION_SENT","SOCIAL_CONNECTION_ACCEPTED","AD_SET_PUBLISHED","AD_PERFORMANCE_SNAPSHOT","BULK_IMPORT_SUMMARY","PROCESSING_NOT_APPLICABLE","PROVIDER_EVENT_TYPE_UNKNOWN","UNKNOWN"],"uniqueKey":"exclude.eventTypes.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by specific event types (CALL_TRANSCRIPT, EMAIL_SENT, DEAL_WON, etc.)","uniqueKey":"exclude.eventTypes","typeLabel":"enum\u003cstring>[]"},"sentiments":{"type":"array","items":{"type":"string","enum":["POSITIVE","NEUTRAL","NEGATIVE","UNKNOWN"],"uniqueKey":"exclude.sentiments.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Filter by sentiment (POSITIVE, NEGATIVE, NEUTRAL, MIXED)","uniqueKey":"exclude.sentiments","typeLabel":"enum\u003cstring>[]"},"contactEmails":{"type":"array","items":{"type":"string","uniqueKey":"exclude.contactEmails.items.[INDEX]","typeLabel":"string"},"description":"Filter by participant email addresses","uniqueKey":"exclude.contactEmails","typeLabel":"string[]"},"companyDomains":{"type":"array","items":{"type":"string","uniqueKey":"exclude.companyDomains.items.[INDEX]","typeLabel":"string"},"description":"Filter by company domains","uniqueKey":"exclude.companyDomains","typeLabel":"string[]"},"replyOutcomes":{"type":"array","items":{"type":"string","enum":["POSITIVE","NEUTRAL","NEGATIVE"],"uniqueKey":"exclude.replyOutcomes.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Exclude by how the reply to an outbound event was classified (POSITIVE, NEUTRAL, NEGATIVE). Independent of any deal.","uniqueKey":"exclude.replyOutcomes","typeLabel":"enum\u003cstring>[]"},"opportunityStatuses":{"type":"array","items":{"type":"string","enum":["OPEN","WON","LOST"],"uniqueKey":"exclude.opportunityStatuses.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Exclude by opportunity status (OPEN, WON, LOST)","uniqueKey":"exclude.opportunityStatuses","typeLabel":"enum\u003cstring>[]"},"offerings":{"type":"array","items":{"type":"string","uniqueKey":"exclude.offerings.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these offering oIds","uniqueKey":"exclude.offerings","typeLabel":"string[]"},"personas":{"type":"array","items":{"type":"string","uniqueKey":"exclude.personas.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these persona oIds","uniqueKey":"exclude.personas","typeLabel":"string[]"},"segments":{"type":"array","items":{"type":"string","uniqueKey":"exclude.segments.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these segment oIds","uniqueKey":"exclude.segments","typeLabel":"string[]"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"exclude.tags.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching any library entity that carries these reporting tag oIds (any tag group; OR'd).","uniqueKey":"exclude.tags","typeLabel":"string[]"},"customExtractors":{"type":"array","items":{"type":"string","uniqueKey":"exclude.customExtractors.items.[INDEX]","typeLabel":"string"},"description":"Exclude events on which any of these custom extractor answers was found (same values as match.customExtractors)","uniqueKey":"exclude.customExtractors","typeLabel":"string[]"},"useCases":{"type":"array","items":{"type":"string","uniqueKey":"exclude.useCases.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these use case oIds","uniqueKey":"exclude.useCases","typeLabel":"string[]"},"references":{"type":"array","items":{"type":"string","uniqueKey":"exclude.references.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these reference customer oIds","uniqueKey":"exclude.references","typeLabel":"string[]"},"competitors":{"type":"array","items":{"type":"string","uniqueKey":"exclude.competitors.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these competitor oIds","uniqueKey":"exclude.competitors","typeLabel":"string[]"},"alternatives":{"type":"array","items":{"type":"string","uniqueKey":"exclude.alternatives.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these alternative oIds","uniqueKey":"exclude.alternatives","typeLabel":"string[]"},"buyingTriggers":{"type":"array","items":{"type":"string","uniqueKey":"exclude.buyingTriggers.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these buying trigger oIds","uniqueKey":"exclude.buyingTriggers","typeLabel":"string[]"},"coreFeatures":{"type":"array","items":{"type":"string","uniqueKey":"exclude.coreFeatures.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these core feature oIds","uniqueKey":"exclude.coreFeatures","typeLabel":"string[]"},"objections":{"type":"array","items":{"type":"string","uniqueKey":"exclude.objections.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these objection oIds","uniqueKey":"exclude.objections","typeLabel":"string[]"},"proofPoints":{"type":"array","items":{"type":"string","uniqueKey":"exclude.proofPoints.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching these proof point oIds","uniqueKey":"exclude.proofPoints","typeLabel":"string[]"},"motionTypes":{"type":"array","items":{"type":"string","enum":["NET_NEW","UPSELL","CROSS_SELL","CONVERT_FREE_TO_PAID","RENEW_AND_RETAIN","DISPLACE_INCUMBENT"],"uniqueKey":"exclude.motionTypes.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Exclude events matching these motion types (NET_NEW, UPSELL)","uniqueKey":"exclude.motionTypes","typeLabel":"enum\u003cstring>[]"},"callPurposes":{"type":"array","items":{"type":"string","enum":["DISCOVERY","DEMO","TECHNICAL_EVALUATION","WORKING_SESSION","NEGOTIATION_PRICING","ONBOARDING","CHECK_IN_SUCCESS","QBR_RENEWAL","EXPANSION_UPSELL","ESCALATION_CHURN_RISK","SUPPORT","CUSTOMER_INTERVIEW","INTERNAL_SYNC","OTHER"],"uniqueKey":"exclude.callPurposes.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Exclude calls with these classified purposes (e.g. SUPPORT, INTERNAL_SYNC)","uniqueKey":"exclude.callPurposes","typeLabel":"enum\u003cstring>[]"},"lossReasonCategories":{"type":"array","items":{"type":"string","enum":["nurture_recycle","lost_to_competitor","product_fit","self_solve","not_qualified","internal_change","no_decision","ghosted","product_quality","security_compliance","timing","budget","merged_duplicate","churn","other"],"uniqueKey":"exclude.lossReasonCategories.items.[INDEX]","typeLabel":"enum\u003cstring>"},"maxItems":50,"description":"Normalized CRM loss reason categories. Categories may be inferred from CRM text; they are not verified causal explanations.","uniqueKey":"exclude.lossReasonCategories","typeLabel":"enum\u003cstring>[]"},"minDealValue":{"type":"number","description":"Minimum linked-deal value in workspace home currency, inclusive; missing/unconvertible values do not match. Reads the same linked opportunity as owner and stage.","uniqueKey":"exclude.minDealValue","typeLabel":"number"},"maxDealValue":{"type":"number","description":"Maximum linked-deal value in workspace home currency, inclusive","uniqueKey":"exclude.maxDealValue","typeLabel":"number"},"minDealAgeDays":{"type":"number","minimum":0,"maximum":365000,"description":"Minimum elapsed 24-hour days since CRM deal creation, inclusive","uniqueKey":"exclude.minDealAgeDays","typeLabel":"number"},"maxDealAgeDays":{"type":"number","minimum":0,"maximum":365000,"description":"Maximum elapsed 24-hour days since CRM deal creation, inclusive","uniqueKey":"exclude.maxDealAgeDays","typeLabel":"number"},"maxStalledDays":{"type":"number","minimum":0,"maximum":365000,"description":"Maximum elapsed days in the OPEN deal's current recorded stage. Missing stage history does not match.","uniqueKey":"exclude.maxStalledDays","typeLabel":"number"},"dealCreatedAfter":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Linked deal CRM creation date on or after this UTC date","uniqueKey":"exclude.dealCreatedAfter","typeLabel":"string"},"dealCreatedBefore":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Linked deal CRM creation date on or before this UTC date","uniqueKey":"exclude.dealCreatedBefore","typeLabel":"string"},"dealClosedAfter":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Closed linked deals whose current CRM close date is on or after this UTC date; excludes open deals' forecast close dates","uniqueKey":"exclude.dealClosedAfter","typeLabel":"string"},"dealClosedBefore":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Closed linked deals whose current CRM close date is on or before this UTC date","uniqueKey":"exclude.dealClosedBefore","typeLabel":"string"},"stageTransition":{"type":"object","properties":{"fromStage":{"type":"string","minLength":1,"maxLength":256,"isRequired":true,"uniqueKey":"exclude.stageTransition.fromStage","typeLabel":"string"},"toStage":{"type":"string","minLength":1,"maxLength":256,"isRequired":true,"uniqueKey":"exclude.stageTransition.toStage","typeLabel":"string"},"minDays":{"type":"number","minimum":0,"maximum":365000,"uniqueKey":"exclude.stageTransition.minDays","typeLabel":"number"},"maxDays":{"type":"number","minimum":0,"maximum":365000,"uniqueKey":"exclude.stageTransition.maxDays","typeLabel":"number"}},"required":["fromStage","toStage"],"additionalProperties":false,"description":"A recorded completed direct stage transition, measuring entry into fromStage to entry into the immediately following different stage toStage. Any completed visit can match. Ongoing stages do not match. Historical analysis only; unavailable to live extraction.","uniqueKey":"exclude.stageTransition","typeLabel":"object"},"dealOwnerIds":{"type":"array","items":{"type":"string","minLength":1,"maxLength":512,"uniqueKey":"exclude.dealOwnerIds.items.[INDEX]","typeLabel":"string"},"maxItems":100,"description":"Current CRM owners of linked deals, using provider-scoped owner keys returned by getDealOwners. Values OR; match-side deal conditions must hold on the same deal. This is current ownership, not the owner at event time or the conversation participant.","uniqueKey":"exclude.dealOwnerIds","typeLabel":"string[]"},"dealMotions":{"type":"array","items":{"type":"string","enum":["NET_NEW","UPSELL","CROSS_SELL","RENEW_AND_RETAIN","CONVERT_FREE_TO_PAID","DISPLACE_INCUMBENT","SERVICES","PARTNER","NON_COMMERCIAL"],"uniqueKey":"exclude.dealMotions.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Exclude events linked to deals whose CRM deal type maps to these motions","uniqueKey":"exclude.dealMotions","typeLabel":"enum\u003cstring>[]"},"dealTypes":{"type":"array","items":{"type":"string","uniqueKey":"exclude.dealTypes.items.[INDEX]","typeLabel":"string"},"description":"Exclude events linked to deals with these raw CRM deal-type labels, case-insensitive","uniqueKey":"exclude.dealTypes","typeLabel":"string[]"},"dealStages":{"type":"array","items":{"type":"string","uniqueKey":"exclude.dealStages.items.[INDEX]","typeLabel":"string"},"description":"Exclude events linked to deals currently in these CRM stages, by stage label or stage id, case-insensitive","uniqueKey":"exclude.dealStages","typeLabel":"string[]"},"pipelinePhases":{"type":"array","items":{"type":"string","enum":["prospecting","discovery","evaluation","negotiation","commitment","closed_won","closed_lost"],"uniqueKey":"exclude.pipelinePhases.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"Exclude events linked to deals whose stage maps to these pipeline phases","uniqueKey":"exclude.pipelinePhases","typeLabel":"enum\u003cstring>[]"}},"description":"Filters to EXCLUDE events matching these criteria (same shape as the entity/outcome match filters)","uniqueKey":"exclude","typeLabel":"object"},"excludeTags":{"type":"array","items":{"type":"string","uniqueKey":"excludeTags.items.[INDEX]","typeLabel":"string"},"description":"Exclude events matching any library entity that carries these reporting tag oIds. Use list_tag_groups to resolve tag oIds. Multiple tags are OR'd.","uniqueKey":"excludeTags","typeLabel":"string[]"},"metric":{"type":"string","enum":["events","uniqueCompanies","uniqueDeals","wonDeals","lostDeals","knownWonValue","winRateSampleAdjusted"],"default":"events","description":"What to rank by. events = distinct matching events; uniqueCompanies = distinct companies on them; uniqueDeals / wonDeals / lostDeals = distinct CRM deals linked to them (any / closed-won / closed-lost today); knownWonValue = summed home-currency value of the won deals whose value is known and not negative (a group with none known ranks last); winRateSampleAdjusted = win rate, ranked by the LOW end of each group's 95% interval (`winRate.low`) so a small sample cannot top the list — 2 won of 2 ranks below 40 won of 60. Use it for 'which of these wins most'; the plain `winRate.rate` is on every group but is not offered as a ranking because it rewards tiny samples. Groups with no closed deals rank last. Every metric is returned on every group — this only picks the ordering.","uniqueKey":"metric","typeLabel":"enum\u003cstring>"},"rowLimit":{"type":"integer","minimum":1,"maximum":50,"default":15,"description":"Row groups to return, ranked by metric (default 15, max 50).","uniqueKey":"rowLimit","typeLabel":"integer"},"columnLimit":{"type":"integer","minimum":1,"maximum":25,"default":10,"description":"Column groups to return, ranked by metric (default 10, max 25).","uniqueKey":"columnLimit","typeLabel":"integer"}},"required":["rows","columns"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"rows":{"tagGroupOId":"\u003cstring>"},"columns":{"tagGroupOId":"\u003cstring>"},"startDate":"2023-11-07T05:31:56Z","endDate":"2023-11-07T05:31:56Z","filters":{"entityMatchAll":true,"eventOIds":["\u003cstring>"],"opportunityIds":["\u003cstring>"],"eventCategories":[],"eventTypes":[],"sentiments":[],"contactEmails":["\u003cstring>"],"companyDomains":["\u003cstring>"],"replyOutcomes":[],"opportunityStatuses":[],"lossReasonCategories":[],"minDealValue":123,"maxDealValue":123,"minDealAgeDays":182500,"maxDealAgeDays":182500,"maxStalledDays":182500,"dealCreatedAfter":"\u003cstring>","dealCreatedBefore":"\u003cstring>","dealClosedAfter":"\u003cstring>","dealClosedBefore":"\u003cstring>","dealOwnerIds":["\u003cstring>"],"dealMotions":[],"dealTypes":["\u003cstring>"],"dealStages":["\u003cstring>"],"dealStagesAtEvent":["\u003cstring>"],"pipelinePhases":[],"crmPipelines":["\u003cstring>"],"minStalledDays":123,"offerings":["\u003cstring>"],"personas":["\u003cstring>"],"segments":["\u003cstring>"],"tags":["\u003cstring>"],"customExtractors":["\u003cstring>"],"useCases":["\u003cstring>"],"references":["\u003cstring>"],"competitors":["\u003cstring>"],"alternatives":["\u003cstring>"],"buyingTriggers":["\u003cstring>"],"coreFeatures":["\u003cstring>"],"objections":["\u003cstring>"],"proofPoints":["\u003cstring>"],"motionTypes":[],"callPurposes":[],"unmatchedOnly":true},"exclude":{"eventCategories":[],"eventTypes":[],"sentiments":[],"contactEmails":["\u003cstring>"],"companyDomains":["\u003cstring>"],"replyOutcomes":[],"opportunityStatuses":[],"offerings":["\u003cstring>"],"personas":["\u003cstring>"],"segments":["\u003cstring>"],"tags":["\u003cstring>"],"customExtractors":["\u003cstring>"],"useCases":["\u003cstring>"],"references":["\u003cstring>"],"competitors":["\u003cstring>"],"alternatives":["\u003cstring>"],"buyingTriggers":["\u003cstring>"],"coreFeatures":["\u003cstring>"],"objections":["\u003cstring>"],"proofPoints":["\u003cstring>"],"motionTypes":[],"callPurposes":[],"lossReasonCategories":[],"minDealValue":123,"maxDealValue":123,"minDealAgeDays":182500,"maxDealAgeDays":182500,"maxStalledDays":182500,"dealCreatedAfter":"\u003cstring>","dealCreatedBefore":"\u003cstring>","dealClosedAfter":"\u003cstring>","dealClosedBefore":"\u003cstring>","dealOwnerIds":["\u003cstring>"],"dealMotions":[],"dealTypes":["\u003cstring>"],"dealStages":["\u003cstring>"],"pipelinePhases":[]},"excludeTags":["\u003cstring>"],"metric":"events","rowLimit":15,"columnLimit":10}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"298f8c69-6b20-4d1b-900e-1386b35f289e":{"description":"Event Cross-Tab","content":{"application/json":{"schema":{"type":"object","properties":{"_metadata":{"type":"object","properties":{"requestId":{"type":"string","example":"requestId","description":"Request ID","isRequired":true,"uniqueKey":"_metadata.requestId","typeLabel":"string"},"timestamp":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"Timestamp","isRequired":true,"uniqueKey":"_metadata.timestamp","typeLabel":"string"},"usage":{"type":"number","default":0,"example":0,"description":"API usage","uniqueKey":"_metadata.usage","typeLabel":"number"},"message":{"type":"string","example":"message","description":"Message","uniqueKey":"_metadata.message","typeLabel":"string"}},"required":["requestId","timestamp"],"isRequired":true,"uniqueKey":"_metadata","typeLabel":"object"},"populations":{"type":"object","properties":{"eventsInScope":{"type":"integer","description":"Distinct events the window and filters select.","isRequired":true,"uniqueKey":"populations.eventsInScope","typeLabel":"integer"},"eventsWithARowValue":{"type":"integer","description":"Of those, events that carry at least one row value. The rest have none and appear in no row.","isRequired":true,"uniqueKey":"populations.eventsWithARowValue","typeLabel":"integer"},"eventsWithAColumnValue":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"populations.eventsWithAColumnValue.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"populations.eventsWithAColumnValue.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"populations.eventsWithAColumnValue","typeLabel":"integer | null"},"eventsWithBoth":{"oneOf":[{"type":"integer","description":"Events that fall in at least one cell. At same_finding grain, events where one finding carries both.","isRequired":true,"uniqueKey":"populations.eventsWithBoth.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Events that fall in at least one cell. At same_finding grain, events where one finding carries both.","isRequired":true,"uniqueKey":"populations.eventsWithBoth.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"populations.eventsWithBoth","typeLabel":"integer | null"}},"required":["eventsInScope","eventsWithARowValue","eventsWithAColumnValue","eventsWithBoth"],"description":"What the table is drawn from. An event can carry several values of a dimension, so rows, columns and cells OVERLAP: never add them up to get a total — these are the totals. Only the top rowLimit / columnLimit groups are listed, so listed groups can cover less than these.","isRequired":true,"uniqueKey":"populations","typeLabel":"object"},"relationshipGrain":{"oneOf":[{"type":"string","enum":["same_finding","same_event",null],"description":"What a CELL means when rows are crossed with columns. same_event: both values occur somewhere in the same conversation — co-occurrence, NOT that one was said about the other, and never who said it (the 'person' dimension is who attended). same_finding: speaker_side crossed with an entity type or tag group — the side is read off the very finding that matched the entity, so 'objection X × external' means a buyer-side finding raised X. There, 'unknown' is a finding type that records no speaker, and speaker_side totals cover only that dimension's findings. Whatever the grain, every metric still counts distinct events, companies and deals — never findings. Null without columns.","isRequired":true,"uniqueKey":"relationshipGrain.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["same_finding","same_event",null],"description":"What a CELL means when rows are crossed with columns. same_event: both values occur somewhere in the same conversation — co-occurrence, NOT that one was said about the other, and never who said it (the 'person' dimension is who attended). same_finding: speaker_side crossed with an entity type or tag group — the side is read off the very finding that matched the entity, so 'objection X × external' means a buyer-side finding raised X. There, 'unknown' is a finding type that records no speaker, and speaker_side totals cover only that dimension's findings. Whatever the grain, every metric still counts distinct events, companies and deals — never findings. Null without columns.","isRequired":true,"uniqueKey":"relationshipGrain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"relationshipGrain","typeLabel":"enum\u003cstring> | null"},"rows":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","description":"The group's oId (entity, tag, company, person) or its literal value (side, stage).","isRequired":true,"uniqueKey":"rows.items.[INDEX].key","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"rows.items.[INDEX].name","typeLabel":"string"},"metrics":{"type":"object","properties":{"events":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.events","typeLabel":"integer"},"uniqueCompanies":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.uniqueCompanies","typeLabel":"integer"},"uniqueDeals":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.uniqueDeals","typeLabel":"integer"},"wonDeals":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.wonDeals","typeLabel":"integer"},"lostDeals":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.lostDeals","typeLabel":"integer"},"knownWonValue":{"oneOf":[{"type":"number","description":"Sum of the home-currency values of the won deals whose value is KNOWN and not negative. NOT revenue and not a complete total: read it with wonDealsWithValue, and see wonDealsValueMissing, wonDealsValueUnconverted and negativeValueWonDeals for what it leaves out. Null — never 0 — when no won deal has a known value. It differs from the Insights won-amount figure, which counts unknown values as 0 and nets negative ones.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.knownWonValue.oneOf.0","typeLabel":"number"},{"type":"null","description":"Sum of the home-currency values of the won deals whose value is KNOWN and not negative. NOT revenue and not a complete total: read it with wonDealsWithValue, and see wonDealsValueMissing, wonDealsValueUnconverted and negativeValueWonDeals for what it leaves out. Null — never 0 — when no won deal has a known value. It differs from the Insights won-amount figure, which counts unknown values as 0 and nets negative ones.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.knownWonValue.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.knownWonValue","typeLabel":"number | null"},"wonDealsWithValue":{"type":"integer","description":"Won deals with a known, non-negative value, a genuine zero included. Below wonDeals, knownWonValue is incomplete.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.wonDealsWithValue","typeLabel":"integer"},"wonDealsValueMissing":{"type":"integer","description":"Won deals whose CRM value field is empty.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.wonDealsValueMissing","typeLabel":"integer"},"wonDealsValueUnconverted":{"type":"integer","description":"Won deals that have a CRM value but no home-currency one: it could not be converted.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.wonDealsValueUnconverted","typeLabel":"integer"},"negativeValueWonDeals":{"type":"object","properties":{"deals":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.negativeValueWonDeals.deals","typeLabel":"integer"},"amount":{"type":"number","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.negativeValueWonDeals.amount","typeLabel":"number"}},"required":["deals","amount"],"description":"Won deals carrying a negative value, and their sum, kept out of knownWonValue rather than netted into it. A negative value can be a legitimate adjustment — a CRM amount field that records a change in contract value — not a bad record.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.negativeValueWonDeals","typeLabel":"object"},"winRate":{"type":"object","properties":{"closedDeals":{"type":"integer","description":"Won + lost deals behind the rate. Open deals are not in it.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.closedDeals","typeLabel":"integer"},"rate":{"oneOf":[{"type":"number","description":"won / closedDeals, 0..1; null with no closed deals.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.rate.oneOf.0","typeLabel":"number"},{"type":"null","description":"won / closedDeals, 0..1; null with no closed deals.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.rate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.rate","typeLabel":"number | null"},"low":{"oneOf":[{"type":"number","description":"95% interval, lower bound.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.low.oneOf.0","typeLabel":"number"},{"type":"null","description":"95% interval, lower bound.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.low.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.low","typeLabel":"number | null"},"high":{"oneOf":[{"type":"number","description":"95% interval, upper bound.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.high.oneOf.0","typeLabel":"number"},{"type":"null","description":"95% interval, upper bound.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.high.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.high","typeLabel":"number | null"},"sampleSizeBand":{"type":"string","enum":["insufficient","low","medium","high"],"description":"Sample-size band only; not confidence in attribution, product alignment, or causality: insufficient (\u003c3 closed deals — do not quote the rate), low (\u003c5), medium (\u003c15), high. Two rates whose intervals overlap heavily are not distinguishable, whatever their point values.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate.sampleSizeBand","typeLabel":"enum\u003cstring>"}},"required":["closedDeals","rate","low","high","sampleSizeBand"],"description":"A win rate with its 95% Wilson interval and sample size. Quote the interval, not just the rate, when the sample is small.","isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics.winRate","typeLabel":"object"}},"required":["events","uniqueCompanies","uniqueDeals","wonDeals","lostDeals","knownWonValue","wonDealsWithValue","wonDealsValueMissing","wonDealsValueUnconverted","negativeValueWonDeals","winRate"],"isRequired":true,"uniqueKey":"rows.items.[INDEX].metrics","typeLabel":"object"},"cells":{"type":"array","items":{"type":"object","properties":{"columnKey":{"type":"string","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].columnKey","typeLabel":"string"},"metrics":{"type":"object","properties":{"events":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.events","typeLabel":"integer"},"uniqueCompanies":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.uniqueCompanies","typeLabel":"integer"},"uniqueDeals":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.uniqueDeals","typeLabel":"integer"},"wonDeals":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.wonDeals","typeLabel":"integer"},"lostDeals":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.lostDeals","typeLabel":"integer"},"knownWonValue":{"oneOf":[{"type":"number","description":"Sum of the home-currency values of the won deals whose value is KNOWN and not negative. NOT revenue and not a complete total: read it with wonDealsWithValue, and see wonDealsValueMissing, wonDealsValueUnconverted and negativeValueWonDeals for what it leaves out. Null — never 0 — when no won deal has a known value. It differs from the Insights won-amount figure, which counts unknown values as 0 and nets negative ones.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.knownWonValue.oneOf.0","typeLabel":"number"},{"type":"null","description":"Sum of the home-currency values of the won deals whose value is KNOWN and not negative. NOT revenue and not a complete total: read it with wonDealsWithValue, and see wonDealsValueMissing, wonDealsValueUnconverted and negativeValueWonDeals for what it leaves out. Null — never 0 — when no won deal has a known value. It differs from the Insights won-amount figure, which counts unknown values as 0 and nets negative ones.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.knownWonValue.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.knownWonValue","typeLabel":"number | null"},"wonDealsWithValue":{"type":"integer","description":"Won deals with a known, non-negative value, a genuine zero included. Below wonDeals, knownWonValue is incomplete.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.wonDealsWithValue","typeLabel":"integer"},"wonDealsValueMissing":{"type":"integer","description":"Won deals whose CRM value field is empty.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.wonDealsValueMissing","typeLabel":"integer"},"wonDealsValueUnconverted":{"type":"integer","description":"Won deals that have a CRM value but no home-currency one: it could not be converted.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.wonDealsValueUnconverted","typeLabel":"integer"},"negativeValueWonDeals":{"type":"object","properties":{"deals":{"type":"integer","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.negativeValueWonDeals.deals","typeLabel":"integer"},"amount":{"type":"number","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.negativeValueWonDeals.amount","typeLabel":"number"}},"required":["deals","amount"],"description":"Won deals carrying a negative value, and their sum, kept out of knownWonValue rather than netted into it. A negative value can be a legitimate adjustment — a CRM amount field that records a change in contract value — not a bad record.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.negativeValueWonDeals","typeLabel":"object"},"winRate":{"type":"object","properties":{"closedDeals":{"type":"integer","description":"Won + lost deals behind the rate. Open deals are not in it.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.closedDeals","typeLabel":"integer"},"rate":{"oneOf":[{"type":"number","description":"won / closedDeals, 0..1; null with no closed deals.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.rate.oneOf.0","typeLabel":"number"},{"type":"null","description":"won / closedDeals, 0..1; null with no closed deals.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.rate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.rate","typeLabel":"number | null"},"low":{"oneOf":[{"type":"number","description":"95% interval, lower bound.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.low.oneOf.0","typeLabel":"number"},{"type":"null","description":"95% interval, lower bound.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.low.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.low","typeLabel":"number | null"},"high":{"oneOf":[{"type":"number","description":"95% interval, upper bound.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.high.oneOf.0","typeLabel":"number"},{"type":"null","description":"95% interval, upper bound.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.high.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.high","typeLabel":"number | null"},"sampleSizeBand":{"type":"string","enum":["insufficient","low","medium","high"],"description":"Sample-size band only; not confidence in attribution, product alignment, or causality: insufficient (\u003c3 closed deals — do not quote the rate), low (\u003c5), medium (\u003c15), high. Two rates whose intervals overlap heavily are not distinguishable, whatever their point values.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate.sampleSizeBand","typeLabel":"enum\u003cstring>"}},"required":["closedDeals","rate","low","high","sampleSizeBand"],"description":"A win rate with its 95% Wilson interval and sample size. Quote the interval, not just the rate, when the sample is small.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics.winRate","typeLabel":"object"}},"required":["events","uniqueCompanies","uniqueDeals","wonDeals","lostDeals","knownWonValue","wonDealsWithValue","wonDealsValueMissing","wonDealsValueUnconverted","negativeValueWonDeals","winRate"],"isRequired":true,"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX].metrics","typeLabel":"object"}},"required":["columnKey","metrics"],"uniqueKey":"rows.items.[INDEX].cells.items.[INDEX]","typeLabel":"object"},"description":"This row crossed with each returned column; a column with no shared events is omitted. Empty when no columns dimension was requested.","isRequired":true,"uniqueKey":"rows.items.[INDEX].cells","typeLabel":"object[]"}},"required":["key","name","metrics","cells"],"uniqueKey":"rows.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"rows","typeLabel":"object[]"},"columns":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","description":"The group's oId (entity, tag, company, person) or its literal value (side, stage).","isRequired":true,"uniqueKey":"columns.items.[INDEX].key","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"columns.items.[INDEX].name","typeLabel":"string"},"metrics":{"type":"object","properties":{"events":{"type":"integer","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.events","typeLabel":"integer"},"uniqueCompanies":{"type":"integer","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.uniqueCompanies","typeLabel":"integer"},"uniqueDeals":{"type":"integer","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.uniqueDeals","typeLabel":"integer"},"wonDeals":{"type":"integer","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.wonDeals","typeLabel":"integer"},"lostDeals":{"type":"integer","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.lostDeals","typeLabel":"integer"},"knownWonValue":{"oneOf":[{"type":"number","description":"Sum of the home-currency values of the won deals whose value is KNOWN and not negative. NOT revenue and not a complete total: read it with wonDealsWithValue, and see wonDealsValueMissing, wonDealsValueUnconverted and negativeValueWonDeals for what it leaves out. Null — never 0 — when no won deal has a known value. It differs from the Insights won-amount figure, which counts unknown values as 0 and nets negative ones.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.knownWonValue.oneOf.0","typeLabel":"number"},{"type":"null","description":"Sum of the home-currency values of the won deals whose value is KNOWN and not negative. NOT revenue and not a complete total: read it with wonDealsWithValue, and see wonDealsValueMissing, wonDealsValueUnconverted and negativeValueWonDeals for what it leaves out. Null — never 0 — when no won deal has a known value. It differs from the Insights won-amount figure, which counts unknown values as 0 and nets negative ones.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.knownWonValue.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.knownWonValue","typeLabel":"number | null"},"wonDealsWithValue":{"type":"integer","description":"Won deals with a known, non-negative value, a genuine zero included. Below wonDeals, knownWonValue is incomplete.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.wonDealsWithValue","typeLabel":"integer"},"wonDealsValueMissing":{"type":"integer","description":"Won deals whose CRM value field is empty.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.wonDealsValueMissing","typeLabel":"integer"},"wonDealsValueUnconverted":{"type":"integer","description":"Won deals that have a CRM value but no home-currency one: it could not be converted.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.wonDealsValueUnconverted","typeLabel":"integer"},"negativeValueWonDeals":{"type":"object","properties":{"deals":{"type":"integer","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.negativeValueWonDeals.deals","typeLabel":"integer"},"amount":{"type":"number","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.negativeValueWonDeals.amount","typeLabel":"number"}},"required":["deals","amount"],"description":"Won deals carrying a negative value, and their sum, kept out of knownWonValue rather than netted into it. A negative value can be a legitimate adjustment — a CRM amount field that records a change in contract value — not a bad record.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.negativeValueWonDeals","typeLabel":"object"},"winRate":{"type":"object","properties":{"closedDeals":{"type":"integer","description":"Won + lost deals behind the rate. Open deals are not in it.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.closedDeals","typeLabel":"integer"},"rate":{"oneOf":[{"type":"number","description":"won / closedDeals, 0..1; null with no closed deals.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.rate.oneOf.0","typeLabel":"number"},{"type":"null","description":"won / closedDeals, 0..1; null with no closed deals.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.rate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.rate","typeLabel":"number | null"},"low":{"oneOf":[{"type":"number","description":"95% interval, lower bound.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.low.oneOf.0","typeLabel":"number"},{"type":"null","description":"95% interval, lower bound.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.low.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.low","typeLabel":"number | null"},"high":{"oneOf":[{"type":"number","description":"95% interval, upper bound.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.high.oneOf.0","typeLabel":"number"},{"type":"null","description":"95% interval, upper bound.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.high.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.high","typeLabel":"number | null"},"sampleSizeBand":{"type":"string","enum":["insufficient","low","medium","high"],"description":"Sample-size band only; not confidence in attribution, product alignment, or causality: insufficient (\u003c3 closed deals — do not quote the rate), low (\u003c5), medium (\u003c15), high. Two rates whose intervals overlap heavily are not distinguishable, whatever their point values.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate.sampleSizeBand","typeLabel":"enum\u003cstring>"}},"required":["closedDeals","rate","low","high","sampleSizeBand"],"description":"A win rate with its 95% Wilson interval and sample size. Quote the interval, not just the rate, when the sample is small.","isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics.winRate","typeLabel":"object"}},"required":["events","uniqueCompanies","uniqueDeals","wonDeals","lostDeals","knownWonValue","wonDealsWithValue","wonDealsValueMissing","wonDealsValueUnconverted","negativeValueWonDeals","winRate"],"isRequired":true,"uniqueKey":"columns.items.[INDEX].metrics","typeLabel":"object"}},"required":["key","name","metrics"],"uniqueKey":"columns.items.[INDEX]","typeLabel":"object"},"description":"The column groups, ranked; empty when no columns dimension was requested.","isRequired":true,"uniqueKey":"columns","typeLabel":"object[]"},"dataWindow":{"type":"object","properties":{"kind":{"type":"string","enum":["event_range","stats_period"],"isRequired":true,"uniqueKey":"dataWindow.kind","typeLabel":"enum\u003cstring>"},"startDate":{"oneOf":[{"type":"string","description":"Inclusive start (ISO). Null when no data exists yet, or when events were fetched by oId and no window applied.","isRequired":true,"uniqueKey":"dataWindow.startDate.oneOf.0","typeLabel":"string"},{"type":"null","description":"Inclusive start (ISO). Null when no data exists yet, or when events were fetched by oId and no window applied.","isRequired":true,"uniqueKey":"dataWindow.startDate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"dataWindow.startDate","typeLabel":"string | null"},"endDate":{"oneOf":[{"type":"string","description":"End (ISO). An event_range with no endDate given ends at the time of the request. Null when events were fetched by oId and no window applied.","isRequired":true,"uniqueKey":"dataWindow.endDate.oneOf.0","typeLabel":"string"},{"type":"null","description":"End (ISO). An event_range with no endDate given ends at the time of the request. Null when events were fetched by oId and no window applied.","isRequired":true,"uniqueKey":"dataWindow.endDate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"dataWindow.endDate","typeLabel":"string | null"},"isDefault":{"type":"boolean","description":"True when the caller did not choose this window and the tool's default applied.","isRequired":true,"uniqueKey":"dataWindow.isDefault","typeLabel":"boolean"},"periodType":{"oneOf":[{"type":"string","enum":["week","month","quarter",null],"description":"week / month / quarter for a stats_period; null otherwise.","isRequired":true,"uniqueKey":"dataWindow.periodType.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["week","month","quarter",null],"description":"week / month / quarter for a stats_period; null otherwise.","isRequired":true,"uniqueKey":"dataWindow.periodType.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"dataWindow.periodType","typeLabel":"enum\u003cstring> | null"}},"required":["kind","startDate","endDate","isDefault","periodType"],"description":"The time span these numbers cover. Compare numbers from two tools only when their dataWindow kind and dates match.","isRequired":true,"uniqueKey":"dataWindow","typeLabel":"object"},"metric":{"type":"string","enum":["events","uniqueCompanies","uniqueDeals","wonDeals","lostDeals","knownWonValue","winRateSampleAdjusted"],"description":"What to rank by. events = distinct matching events; uniqueCompanies = distinct companies on them; uniqueDeals / wonDeals / lostDeals = distinct CRM deals linked to them (any / closed-won / closed-lost today); knownWonValue = summed home-currency value of the won deals whose value is known and not negative (a group with none known ranks last); winRateSampleAdjusted = win rate, ranked by the LOW end of each group's 95% interval (`winRate.low`) so a small sample cannot top the list — 2 won of 2 ranks below 40 won of 60. Use it for 'which of these wins most'; the plain `winRate.rate` is on every group but is not offered as a ranking because it rewards tiny samples. Groups with no closed deals rank last. Every metric is returned on every group — this only picks the ordering.","isRequired":true,"uniqueKey":"metric","typeLabel":"enum\u003cstring>"}},"required":["_metadata","populations","relationshipGrain","rows","columns","dataWindow","metric"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"_metadata":{"requestId":"requestId","timestamp":"2021-01-01T00:00:00.000Z","usage":0,"message":"message"},"populations":{"eventsInScope":123,"eventsWithARowValue":123,"eventsWithAColumnValue":123,"eventsWithBoth":123},"relationshipGrain":"same_finding","rows":[{"key":"\u003cstring>","name":"\u003cstring>","metrics":{"events":123,"uniqueCompanies":123,"uniqueDeals":123,"wonDeals":123,"lostDeals":123,"knownWonValue":123,"wonDealsWithValue":123,"wonDealsValueMissing":123,"wonDealsValueUnconverted":123,"negativeValueWonDeals":{"deals":123,"amount":123},"winRate":{"closedDeals":123,"rate":123,"low":123,"high":123,"sampleSizeBand":"insufficient"}},"cells":[{"columnKey":"\u003cstring>","metrics":{"events":123,"uniqueCompanies":123,"uniqueDeals":123,"wonDeals":123,"lostDeals":123,"knownWonValue":123,"wonDealsWithValue":123,"wonDealsValueMissing":123,"wonDealsValueUnconverted":123,"negativeValueWonDeals":{"deals":123,"amount":123},"winRate":{"closedDeals":123,"rate":123,"low":123,"high":123,"sampleSizeBand":"insufficient"}}}]}],"columns":[{"key":"\u003cstring>","name":"\u003cstring>","metrics":{"events":123,"uniqueCompanies":123,"uniqueDeals":123,"wonDeals":123,"lostDeals":123,"knownWonValue":123,"wonDealsWithValue":123,"wonDealsValueMissing":123,"wonDealsValueUnconverted":123,"negativeValueWonDeals":{"deals":123,"amount":123},"winRate":{"closedDeals":123,"rate":123,"low":123,"high":123,"sampleSizeBand":"insufficient"}}}],"dataWindow":{"kind":"event_range","startDate":"\u003cstring>","endDate":"\u003cstring>","isDefault":true,"periodType":"week"},"metric":"events"}}},"exampleType":"generated"}},"exampleType":"generated"},"76f303cf-b7b9-4cb4-887a-401a4edcb5d4":{"description":"Bad request","content":{"application/json":{"schema":{"type":"object","properties":{"_metadata":{"type":"object","properties":{"requestId":{"type":"string","example":"requestId","description":"Request ID","isRequired":true,"uniqueKey":"_metadata.requestId","typeLabel":"string"},"timestamp":{"type":"string","example":"2021-01-01T00:00:00.000Z","description":"Timestamp","isRequired":true,"uniqueKey":"_metadata.timestamp","typeLabel":"string"},"usage":{"type":"number","default":0,"example":0,"description":"API usage","uniqueKey":"_metadata.usage","typeLabel":"number"},"message":{"type":"string","example":"message","description":"Message","uniqueKey":"_metadata.message","typeLabel":"string"}},"required":["requestId","timestamp"],"isRequired":true,"uniqueKey":"_metadata","typeLabel":"object"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["_metadata","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"_metadata":{"requestId":"requestId","timestamp":"2021-01-01T00:00:00.000Z","usage":0,"message":"message"},"message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"3d8accbd-55f3-4c87-a1ae-93a55ea5cbe6":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"api_key","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"f63d943e-e794-4d9b-9a7b-416941042663":{"url":"https://app.octavehq.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"api_key","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"api_key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"api_key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"v2-api-reference/openapi.json"},"subdomain":"octave","siteName":"Octave API","title":"Event Cross-Tab - Octave API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-29T17:28:34.298Z","originalFileLocation":"v2-api-reference/events/event-cross-tab.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. relationshipGrain says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use populations for totals. REST twin of the get_event_cross_tab MCP tool.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Octave API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Event Cross-Tab - Octave API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. relationshipGrain says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use populations for totals. REST twin of the get_event_cross_tab MCP tool.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Octave API Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://octave.mintlify.site/_mintlify/api/og/v2?division=Events\u0026amp;title=Event+Cross-Tab\u0026amp;description=Cross+two+dimensions+of+the+events+matching+a+window+and+filters%2C+such+as+objection+x+segment%2C+and+get+event%2C+company+and+deal+metrics+for+every+combination%2C+ea\u0026amp;theme=685afbbc1a2a5768e8db8aff\u0026amp;signature=18cc5d92de915b0513e04a75fffc138ae00c7e3d6c9e49323164d6e2e23bed77\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Event Cross-Tab - Octave API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. relationshipGrain says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use populations for totals. REST twin of the get_event_cross_tab MCP tool.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://octave.mintlify.site/_mintlify/api/og/v2?division=Events\u0026amp;title=Event+Cross-Tab\u0026amp;description=Cross+two+dimensions+of+the+events+matching+a+window+and+filters%2C+such+as+objection+x+segment%2C+and+get+event%2C+company+and+deal+metrics+for+every+combination%2C+ea\u0026amp;theme=685afbbc1a2a5768e8db8aff\u0026amp;signature=18cc5d92de915b0513e04a75fffc138ae00c7e3d6c9e49323164d6e2e23bed77\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/octave/FIdKYiabDumANUaD/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Octave API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#333999\">\u003cmeta data-mint-head name=\"og:locale\" content=\"en_US\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/v2-api-reference/events/event-cross-tab.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.octavehq.com/#organization\",\"name\":\"Octave API\",\"url\":\"https://docs.octavehq.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/octave/SNMu0rTVOCvjTqcW/logo/logo.svg?fit=max\u0026auto=format\u0026n=SNMu0rTVOCvjTqcW\u0026q=85\u0026s=4f2d9698f4a42a583deee9e8721a9211\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.octavehq.com#website\",\"name\":\"Octave API\",\"url\":\"https://docs.octavehq.com\",\"publisher\":{\"@id\":\"https://docs.octavehq.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab#webpage\",\"url\":\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab\",\"name\":\"Event Cross-Tab\",\"description\":\"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. relationshipGrain says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use populations for totals. REST twin of the get_event_cross_tab MCP tool.\",\"dateModified\":\"2026-09-29T17:28:34.298Z\",\"isPartOf\":{\"@id\":\"https://docs.octavehq.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Events\",\"item\":\"https://docs.octavehq.com/v2-api-reference/events/list-events\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Event Cross-Tab\",\"item\":\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab#apireference\",\"headline\":\"Event Cross-Tab\",\"name\":\"Event Cross-Tab\",\"description\":\"Cross two dimensions of the events matching a window and filters, such as objection x segment, and get event, company and deal metrics for every combination, each row and column, and the populations they are drawn from. Dimensions: a library entity type, a tag group, company, person, speaker_side, or deal_stage_at_event. relationshipGrain says whether a cell is co-occurrence in one conversation or the same finding. Cells overlap, so use populations for totals. REST twin of the get_event_cross_tab MCP tool.\",\"url\":\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab\",\"mainEntityOfPage\":{\"@id\":\"https://docs.octavehq.com/v2-api-reference/events/event-cross-tab#webpage\"},\"dateModified\":\"2026-09-29T17:28:34.298Z\",\"publisher\":{\"@id\":\"https://docs.octavehq.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.octavehq.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Octave API\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Octave API\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/v2-api-reference/events/event-cross-tab.md","siteName":"Octave API","nav":{"global":null,"tabs":[{"tab":"Getting Started","pages":[{"title":"Getting Started","href":"/introduction"}]},{"tab":"V2 API Reference","groups":[{"group":"Agents","pages":[{"openapi":"get /api/v2/agents/list","title":"List Agents","href":"/v2-api-reference/agents/list-agents"},{"openapi":"get /api/v2/agents/types","title":"List Agent Types","href":"/v2-api-reference/agents/list-agent-types"},{"openapi":"get /api/v2/agents/languages","title":"List Languages","href":"/v2-api-reference/agents/list-languages"},{"openapi":"get /api/v2/agents/get","title":"Get Agent","href":"/v2-api-reference/agents/get-agent"},{"openapi":"post /api/v2/agents/create","title":"Create Agent","href":"/v2-api-reference/agents/create-agent"},{"openapi":"post /api/v2/agents/update","title":"Update Agent","href":"/v2-api-reference/agents/update-agent"},{"openapi":"delete /api/v2/agents/delete","title":"Delete Agent","href":"/v2-api-reference/agents/delete-agent"},{"openapi":"post /api/v2/agents/experiment/create","title":"Create Agent Experiment","href":"/v2-api-reference/agents/create-agent-experiment"},{"openapi":"post /api/v2/agents/enrich-company/run","title":"Enrich Company Agent","href":"/v2-api-reference/agents/enrich-company-agent"},{"openapi":"post /api/v2/agents/enrich-person/run","title":"Enrich Person Agent","href":"/v2-api-reference/agents/enrich-person-agent"},{"openapi":"post /api/v2/agents/generate-content/run","title":"Content Agent","href":"/v2-api-reference/agents/content-agent"},{"openapi":"post /api/v2/agents/sequence/run","title":"Sequence Agent","href":"/v2-api-reference/agents/sequence-agent"},{"openapi":"post /api/v2/agents/prospector/run","title":"Prospector Agent","href":"/v2-api-reference/agents/prospector-agent"},{"openapi":"post /api/v2/agents/qualify-person/run","title":"Qualify Person Agent","href":"/v2-api-reference/agents/qualify-person-agent"},{"openapi":"post /api/v2/agents/qualify-company/run","title":"Qualify Company Agent","href":"/v2-api-reference/agents/qualify-company-agent"},{"openapi":"post /api/v2/agents/call-prep/run","title":"Call Prep Agent","href":"/v2-api-reference/agents/call-prep-agent"},{"openapi":"post /api/v2/agents/context/run","title":"Context Agent Run","href":"/v2-api-reference/agents/context-agent-run"},{"openapi":"post /api/v2/agents/workspace/build","title":"Workspace Builder Agent","href":"/v2-api-reference/agents/workspace-builder-agent"}]},{"group":"Async","pages":[{"openapi":"post /api/v2/async/agent/run","title":"Run Agents","href":"/v2-api-reference/async/run-agent"},{"openapi":"get /api/v2/async/agent/run/status","title":"Get Async Agent Run Status","href":"/v2-api-reference/async/get-async-agent-run-status"},{"openapi":"post /api/v2/async/headless/generate-emails","title":"Generate Emails","href":"/v2-api-reference/async/generate-emails"}]},{"group":"Runs","pages":[{"openapi":"post /api/v2/skills/{key}/runs","title":"Run a skill","href":"/v2-api-reference/run/run-a-skill"},{"openapi":"get /api/v2/runs/{oId}","title":"Get a run","href":"/v2-api-reference/run/get-a-run"},{"openapi":"post /api/v2/runs/{oId}/cancel","title":"Cancel a run","href":"/v2-api-reference/run/cancel-a-run"}]},{"group":"Workspace","pages":[{"openapi":"post /api/v2/agents/workspace/build","title":"Workspace Builder Agent","href":"/v2-api-reference/workspace/build"}]},{"group":"Research","pages":[{"openapi":"post /api/v2/person/resolve-profile","title":"Resolve Profile from Email","href":"/v2-api-reference/research/resolve-profile-from-email"},{"openapi":"post /api/v2/person/resolve-email","title":"Resolve Email from Profile","href":"/v2-api-reference/research/resolve-email-from-profile"}]},{"group":"API Key","pages":[{"openapi":"get /api/v2/api-key/list","title":"List API keys","href":"/v2-api-reference/api-key/list-api-keys"},{"openapi":"get /api/v2/api-key/validate","title":"Validate API key","href":"/v2-api-reference/api-key/validate-api-key"}]},{"group":"Entity Webhooks","pages":[{"openapi":"get /api/v2/entity-webhook/list","title":"List entity webhook endpoints","href":"/v2-api-reference/entity-webhooks/list-entity-webhook-endpoints"},{"openapi":"post /api/v2/entity-webhook/create","title":"Create an entity webhook endpoint","href":"/v2-api-reference/entity-webhooks/create-an-entity-webhook-endpoint"},{"openapi":"post /api/v2/entity-webhook/update","title":"Update an entity webhook endpoint","href":"/v2-api-reference/entity-webhooks/update-an-entity-webhook-endpoint"},{"openapi":"delete /api/v2/entity-webhook/delete","title":"Delete an entity webhook endpoint","href":"/v2-api-reference/entity-webhooks/delete-an-entity-webhook-endpoint"},{"openapi":"post /api/v2/entity-webhook/rotate-secret","title":"Rotate an entity webhook signing secret","href":"/v2-api-reference/entity-webhooks/rotate-an-entity-webhook-signing-secret"},{"openapi":"post /api/v2/entity-webhook/test","title":"Send a test entity webhook","href":"/v2-api-reference/entity-webhooks/send-a-test-entity-webhook"}]},{"group":"Credits","pages":[{"openapi":"get /api/v2/credits/usage","title":"Get credit usage","href":"/v2-api-reference/credits/get-credit-usage"}]},{"group":"Motion","pages":[{"openapi":"get /api/v2/motion/list","title":"List motions","href":"/v2-api-reference/motion/list-motions"},{"openapi":"get /api/v2/motion/get","title":"Get a motion","href":"/v2-api-reference/motion/get-a-motion"},{"openapi":"post /api/v2/motion/create","title":"Create a motion","href":"/v2-api-reference/motion/create-a-motion"},{"openapi":"post /api/v2/motion/update","title":"Update a motion","href":"/v2-api-reference/motion/update-a-motion"},{"openapi":"delete /api/v2/motion/delete","title":"Delete a motion","href":"/v2-api-reference/motion/delete-a-motion"}]},{"group":"Motion Playbook","pages":[{"openapi":"get /api/v2/motion-playbook/list","title":"List motion playbooks","href":"/v2-api-reference/motionplaybook/list-motion-playbooks"},{"openapi":"get /api/v2/motion-playbook/get","title":"Get a motion playbook","href":"/v2-api-reference/motionplaybook/get-a-motion-playbook"},{"openapi":"post /api/v2/motion-playbook/create","title":"Create a motion playbook","href":"/v2-api-reference/motionplaybook/create-a-motion-playbook"},{"openapi":"post /api/v2/motion-playbook/update","title":"Update a motion playbook","href":"/v2-api-reference/motionplaybook/update-a-motion-playbook"},{"openapi":"delete /api/v2/motion-playbook/delete","title":"Delete a motion playbook","href":"/v2-api-reference/motionplaybook/delete-a-motion-playbook"}]},{"group":"Motion ICP","pages":[{"openapi":"get /api/v2/motion-icp/list","title":"List Motion ICP cells","href":"/v2-api-reference/motionicp/list-motion-icp-cells"},{"openapi":"get /api/v2/motion-icp/get","title":"Get Motion ICP detail","href":"/v2-api-reference/motionicp/get-motion-icp-detail"},{"openapi":"get /api/v2/motion-icp/elements/list","title":"List recommended elements for a Motion ICP","href":"/v2-api-reference/motionicp/list-recommended-elements-for-a-motion-icp"},{"openapi":"get /api/v2/motion-icp/learnings/list","title":"List learnings for a Motion ICP","href":"/v2-api-reference/motionicp/list-learnings-for-a-motion-icp"},{"openapi":"get /api/v2/motion-icp/learnings/get","title":"Get a Motion ICP learning","href":"/v2-api-reference/motionicp/get-a-motion-icp-learning"},{"openapi":"post /api/v2/motion-icp/regenerate","title":"Regenerate a Motion ICP cell","href":"/v2-api-reference/motionicp/regenerate-a-motion-icp-cell"}]},{"group":"Product","pages":[{"openapi":"get /api/v2/product/get","title":"Get Product","href":"/v2-api-reference/product/get-product"},{"openapi":"get /api/v2/product/list","title":"List Products","href":"/v2-api-reference/product/list-products"},{"openapi":"post /api/v2/product/create","title":"Create Product","href":"/v2-api-reference/product/create-product"},{"openapi":"post /api/v2/product/update","title":"Update Product","href":"/v2-api-reference/product/update-product"},{"openapi":"post /api/v2/product/generate","title":"Generate Product","href":"/v2-api-reference/product/generate-product"},{"openapi":"delete /api/v2/product/delete","title":"Delete Product","href":"/v2-api-reference/product/delete-product"}]},{"group":"Service","pages":[{"openapi":"get /api/v2/service/list","title":"List Services","href":"/v2-api-reference/service/list-services"},{"openapi":"get /api/v2/service/get","title":"Get Service","href":"/v2-api-reference/service/get-service"},{"openapi":"post /api/v2/service/create","title":"Create Service","href":"/v2-api-reference/service/create-service"},{"openapi":"post /api/v2/service/update","title":"Update Service","href":"/v2-api-reference/service/update-service"},{"openapi":"post /api/v2/service/generate","title":"Generate Service","href":"/v2-api-reference/service/generate-service"},{"openapi":"post /api/v2/service/delete","title":"Delete Service","href":"/v2-api-reference/service/delete-service"}]},{"group":"Solution","pages":[{"openapi":"get /api/v2/solution/list","title":"List Solutions","href":"/v2-api-reference/solution/list-solutions"},{"openapi":"get /api/v2/solution/get","title":"Get Solution","href":"/v2-api-reference/solution/get-solution"},{"openapi":"post /api/v2/solution/create","title":"Create Solution","href":"/v2-api-reference/solution/create-solution"},{"openapi":"post /api/v2/solution/update","title":"Update Solution","href":"/v2-api-reference/solution/update-solution"},{"openapi":"post /api/v2/solution/generate","title":"Generate Solution","href":"/v2-api-reference/solution/generate-solution"},{"openapi":"delete /api/v2/solution/delete","title":"Delete Solution","href":"/v2-api-reference/solution/delete-solution"}]},{"group":"Segment","pages":[{"openapi":"get /api/v2/segment/get","title":"Get Segment","href":"/v2-api-reference/segment/get-segment"},{"openapi":"get /api/v2/segment/list","title":"List segments","href":"/v2-api-reference/segment/list-segments"},{"openapi":"post /api/v2/segment/update","title":"Update Segment","href":"/v2-api-reference/segment/update-segment"},{"openapi":"post /api/v2/segment/create","title":"Create Segment","href":"/v2-api-reference/segment/create-segment"},{"openapi":"post /api/v2/segment/generate","title":"Generate Segments","href":"/v2-api-reference/segment/generate-segments"},{"openapi":"delete /api/v2/segment/delete","title":"Delete Segment","href":"/v2-api-reference/segment/delete-segment"}]},{"group":"Persona","pages":[{"openapi":"get /api/v2/persona/get","title":"Get Persona","href":"/v2-api-reference/persona/get-persona"},{"openapi":"get /api/v2/persona/list","title":"List persona","href":"/v2-api-reference/persona/list-persona"},{"openapi":"post /api/v2/persona/update","title":"Update Persona","href":"/v2-api-reference/persona/update-persona"},{"openapi":"post /api/v2/persona/create","title":"Create Persona","href":"/v2-api-reference/persona/create-persona"},{"openapi":"post /api/v2/persona/generate","title":"Generate Personas","href":"/v2-api-reference/persona/generate-personas"},{"openapi":"delete /api/v2/persona/delete","title":"Delete Persona","href":"/v2-api-reference/persona/delete-persona"}]},{"group":"Use Case","pages":[{"openapi":"get /api/v2/use-case/get","title":"Get Use Case","href":"/v2-api-reference/use-case/get-use-case"},{"openapi":"get /api/v2/use-case/list","title":"List Use Cases","href":"/v2-api-reference/use-case/list-use-cases"},{"openapi":"post /api/v2/use-case/update","title":"Update Use Case","href":"/v2-api-reference/use-case/update-use-case"},{"openapi":"post /api/v2/use-case/create","title":"Create Use Case","href":"/v2-api-reference/use-case/create-use-case"},{"openapi":"post /api/v2/use-case/generate","title":"Generate Use Cases","href":"/v2-api-reference/use-case/generate-use-cases"},{"openapi":"delete /api/v2/use-case/delete","title":"Delete Use Case","href":"/v2-api-reference/use-case/delete-use-case"}]},{"group":"Reference","pages":[{"openapi":"get /api/v2/reference/get","title":"Get Reference","href":"/v2-api-reference/reference/get-reference"},{"openapi":"get /api/v2/reference/list","title":"List References","href":"/v2-api-reference/reference/list-references"},{"openapi":"post /api/v2/reference/create","title":"Create Reference","href":"/v2-api-reference/reference/create-reference"},{"openapi":"post /api/v2/reference/update","title":"Update Reference","href":"/v2-api-reference/reference/update-reference"},{"openapi":"post /api/v2/reference/generate","title":"Generate References","href":"/v2-api-reference/reference/generate-references"},{"openapi":"delete /api/v2/reference/delete","title":"Delete Reference","href":"/v2-api-reference/reference/delete-reference"}]},{"group":"Proof Point","pages":[{"openapi":"get /api/v2/proof-point/get","title":"Get Proof Point","href":"/v2-api-reference/proof-point/get-proof-point"},{"openapi":"get /api/v2/proof-point/list","title":"List proof points","href":"/v2-api-reference/proof-point/list-proof-points"},{"openapi":"post /api/v2/proof-point/update","title":"Update Proof Point","href":"/v2-api-reference/proof-point/update-proof-point"},{"openapi":"post /api/v2/proof-point/create","title":"Create Proof Point","href":"/v2-api-reference/proof-point/create-proof-point"},{"openapi":"post /api/v2/proof-point/generate","title":"Generate Proof Points","href":"/v2-api-reference/proof-point/generate-proof-points"},{"openapi":"delete /api/v2/proof-point/delete","title":"Delete Proof Point","href":"/v2-api-reference/proof-point/delete-proof-point"}]},{"group":"Competitor","pages":[{"openapi":"get /api/v2/competitor/get","title":"Get Competitor","href":"/v2-api-reference/competitor/get-competitor"},{"openapi":"get /api/v2/competitor/list","title":"List competitors","href":"/v2-api-reference/competitor/list-competitors"},{"openapi":"post /api/v2/competitor/update","title":"Update Competitor","href":"/v2-api-reference/competitor/update-competitor"},{"openapi":"post /api/v2/competitor/create","title":"Create Competitor","href":"/v2-api-reference/competitor/create-competitor"},{"openapi":"post /api/v2/competitor/generate","title":"Generate Competitors","href":"/v2-api-reference/competitor/generate-competitors"},{"openapi":"delete /api/v2/competitor/delete","title":"Delete Competitor","href":"/v2-api-reference/competitor/delete-competitor"}]},{"group":"Alternative","pages":[{"openapi":"get /api/v2/alternative/get","title":"Get Alternative","href":"/v2-api-reference/alternative/get-alternative"},{"openapi":"get /api/v2/alternative/list","title":"List alternatives","href":"/v2-api-reference/alternative/list-alternatives"},{"openapi":"post /api/v2/alternative/create","title":"Create Alternative","href":"/v2-api-reference/alternative/create-alternative"},{"openapi":"post /api/v2/alternative/update","title":"Update Alternative","href":"/v2-api-reference/alternative/update-alternative"},{"openapi":"post /api/v2/alternative/generate","title":"Generate Alternatives","href":"/v2-api-reference/alternative/generate-alternatives"},{"openapi":"delete /api/v2/alternative/delete","title":"Delete Alternative","href":"/v2-api-reference/alternative/delete-alternative"}]},{"group":"Buying Trigger","pages":[{"openapi":"get /api/v2/buying-trigger/get","title":"Get Buying Trigger","href":"/v2-api-reference/buying-trigger/get-buying-trigger"},{"openapi":"get /api/v2/buying-trigger/list","title":"List buying triggers","href":"/v2-api-reference/buying-trigger/list-buying-triggers"},{"openapi":"post /api/v2/buying-trigger/create","title":"Create Buying Trigger","href":"/v2-api-reference/buying-trigger/create-buying-trigger"},{"openapi":"post /api/v2/buying-trigger/update","title":"Update Buying Trigger","href":"/v2-api-reference/buying-trigger/update-buying-trigger"},{"openapi":"post /api/v2/buying-trigger/generate","title":"Generate Buying Triggers","href":"/v2-api-reference/buying-trigger/generate-buying-triggers"},{"openapi":"delete /api/v2/buying-trigger/delete","title":"Delete Buying Trigger","href":"/v2-api-reference/buying-trigger/delete-buying-trigger"}]},{"group":"Core Feature","pages":[{"openapi":"get /api/v2/core-feature/list","title":"List core features","href":"/v2-api-reference/core-feature/list-core-features"},{"openapi":"get /api/v2/core-feature/get","title":"Get Core Feature","href":"/v2-api-reference/core-feature/get-core-feature"},{"openapi":"post /api/v2/core-feature/create","title":"Create Core Feature","href":"/v2-api-reference/core-feature/create-core-feature"},{"openapi":"post /api/v2/core-feature/update","title":"Update Core Feature","href":"/v2-api-reference/core-feature/update-core-feature"},{"openapi":"post /api/v2/core-feature/generate","title":"Generate Core Features","href":"/v2-api-reference/core-feature/generate-core-features"},{"openapi":"delete /api/v2/core-feature/delete","title":"Delete Core Feature","href":"/v2-api-reference/core-feature/delete-core-feature"}]},{"group":"Objection","pages":[{"openapi":"get /api/v2/objection/list","title":"List objections","href":"/v2-api-reference/objection/list-objections"},{"openapi":"get /api/v2/objection/get","title":"Get Objection","href":"/v2-api-reference/objection/get-objection"},{"openapi":"post /api/v2/objection/create","title":"Create Objection","href":"/v2-api-reference/objection/create-objection"},{"openapi":"post /api/v2/objection/update","title":"Update Objection","href":"/v2-api-reference/objection/update-objection"},{"openapi":"post /api/v2/objection/generate","title":"Generate Objections","href":"/v2-api-reference/objection/generate-objections"},{"openapi":"delete /api/v2/objection/delete","title":"Delete Objection","href":"/v2-api-reference/objection/delete-objection"}]},{"group":"Brand Voice","pages":[{"openapi":"get /api/v2/brand-voice/list","title":"List Brand Voices","href":"/v2-api-reference/brand-voice/list-brand-voices"},{"openapi":"get /api/v2/brand-voice/get","title":"Get Brand Voice","href":"/v2-api-reference/brand-voice/get-brand-voice"},{"openapi":"post /api/v2/brand-voice/create","title":"Create Brand Voice","href":"/v2-api-reference/brand-voice/create-brand-voice"},{"openapi":"post /api/v2/brand-voice/update","title":"Update Brand Voice","href":"/v2-api-reference/brand-voice/update-brand-voice"},{"openapi":"post /api/v2/brand-voice/generate","title":"Generate Brand Voice","href":"/v2-api-reference/brand-voice/generate-brand-voice"},{"openapi":"post /api/v2/brand-voice/apply","title":"Apply Brand Voice","href":"/v2-api-reference/brand-voice/apply-brand-voice"},{"openapi":"post /api/v2/brand-voice/toggle-default","title":"Toggle Default Brand Voice","href":"/v2-api-reference/brand-voice/toggle-default-brand-voice"}]},{"group":"Library","pages":[{"openapi":"get /api/v2/library/download","title":"Download Library","href":"/v2-api-reference/library/download-library"},{"openapi":"get /api/v2/library/links","title":"Get Library Entity Links","href":"/v2-api-reference/library/get-library-entity-links"}]},{"group":"Library Locks","pages":[{"openapi":"post /api/v2/entity-lock/update","title":"Lock or unlock a library entity","href":"/v2-api-reference/library-locks/lock-or-unlock-a-library-entity"}]},{"group":"Context","pages":[{"openapi":"post /api/v2/context","title":"Context Search","href":"/v2-api-reference/context/context-search"}]},{"group":"Workflow","pages":[{"openapi":"post /api/v2/workflows/run","title":"Run a workflow","href":"/v2-api-reference/workflow/run-a-workflow"},{"openapi":"get /api/v2/workflows/run/status","title":"Get Workflow Run Status","href":"/v2-api-reference/workflow/get-workflow-run-status"}]},{"group":"Events","pages":[{"openapi":"get /api/v2/event/list","title":"List Events","href":"/v2-api-reference/events/list-events"},{"openapi":"post /api/v2/event/import","title":"Bulk import events","href":"/v2-api-reference/events/bulk-import-events"},{"openapi":"get /api/v2/event/import/status","title":"Get bulk import status","href":"/v2-api-reference/events/get-bulk-import-status"},{"openapi":"post /api/v2/analytics/webhook/receive/generic/{eventType}","title":"Log Event","href":"/v2-api-reference/events/log-event"},{"openapi":"post /api/v2/event/count","title":"Count Events","href":"/v2-api-reference/events/count-events"},{"openapi":"get /api/v2/event/get","title":"Get Event Detail","href":"/v2-api-reference/events/get-event-detail"},{"openapi":"post /api/v2/event/time-series","title":"Event Time Series","description":"Counts per day, week or month for the events matching a window and filters: events, distinct companies and distinct linked deals per bucket, zero-filled. `includePreviousPeriod` adds the equal-length prior period. REST twin of the get_event_time_series MCP tool.","href":"/v2-api-reference/events/event-time-series"},{"openapi":"post /api/v2/event/cross-tab","title":"Event Cross-Tab","href":"/v2-api-reference/events/event-cross-tab"},{"openapi":"post /api/v2/event/top","title":"Top Event Entities","description":"Rank the library entities of one type, the values of a tag group, companies, external people, speaker sides or deal stages at the time of the event, across the events matching a window and filters. `metric` picks the ranking; every metric is returned on every item. REST twin of the top_event_entities MCP tool.","href":"/v2-api-reference/events/top-event-entities"},{"openapi":"post /api/v2/event/compare","title":"Compare Cohorts","href":"/v2-api-reference/events/compare-cohorts"},{"openapi":"post /api/v2/event/cohort-deals","title":"List Cohort Deals","href":"/v2-api-reference/events/list-cohort-deals"}]},{"group":"Findings","pages":[{"openapi":"get /api/v2/finding/list","title":"List Findings","href":"/v2-api-reference/findings/list-findings"},{"openapi":"post /api/v2/finding/search","title":"Search Findings","href":"/v2-api-reference/findings/search-findings"}]},{"group":"Custom Extractors","pages":[{"openapi":"get /api/v2/custom-extractor/list","title":"List Custom Extractors","href":"/v2-api-reference/custom-extractors/list-custom-extractors"},{"openapi":"post /api/v2/custom-extractor/create","title":"Create Custom Extractor","href":"/v2-api-reference/custom-extractors/create-custom-extractor"},{"openapi":"post /api/v2/custom-extractor/update","title":"Update Custom Extractor","href":"/v2-api-reference/custom-extractors/update-custom-extractor"},{"openapi":"delete /api/v2/custom-extractor/delete","title":"Delete Custom Extractor","href":"/v2-api-reference/custom-extractors/delete-custom-extractor"},{"openapi":"post /api/v2/custom-extractor/backtest","title":"Backtest Custom Extractor","href":"/v2-api-reference/custom-extractors/backtest-custom-extractor"},{"openapi":"post /api/v2/custom-extractor/backfill/estimate","title":"Estimate Custom Extractor Backfill","href":"/v2-api-reference/custom-extractors/estimate-custom-extractor-backfill"},{"openapi":"post /api/v2/custom-extractor/backfill/start","title":"Start Custom Extractor Backfill","href":"/v2-api-reference/custom-extractors/start-custom-extractor-backfill"},{"openapi":"get /api/v2/custom-extractor/backfill/get","title":"Get Custom Extractor Backfill","href":"/v2-api-reference/custom-extractors/get-custom-extractor-backfill"},{"openapi":"post /api/v2/custom-extractor/backfill/control","title":"Control Custom Extractor Backfill","href":"/v2-api-reference/custom-extractors/control-custom-extractor-backfill"},{"openapi":"post /api/v2/custom-extractor/purge-findings","title":"Purge Custom Extractor Findings","href":"/v2-api-reference/custom-extractors/purge-custom-extractor-findings"}]},{"group":"Transcript","pages":[{"openapi":"post /api/v2/transcript/search","title":"Search Call Transcripts","href":"/v2-api-reference/transcript/search-call-transcripts"},{"openapi":"post /api/v2/transcript/entity-evidence","title":"Get Entity Evidence","href":"/v2-api-reference/transcript/get-entity-evidence"}]},{"group":"Suggestions","pages":[{"openapi":"get /api/v2/suggestion/list","title":"List Suggestions","href":"/v2-api-reference/suggestions/list-suggestions"},{"openapi":"get /api/v2/suggestion/get","title":"Get Suggestion","href":"/v2-api-reference/suggestions/get-suggestion"},{"openapi":"post /api/v2/suggestion/create","title":"Create Suggestion","href":"/v2-api-reference/suggestions/create-suggestion"},{"openapi":"post /api/v2/suggestion/update","title":"Update Suggestion","href":"/v2-api-reference/suggestions/update-suggestion"},{"openapi":"post /api/v2/suggestion/accept","title":"Accept Suggestion","href":"/v2-api-reference/suggestions/accept-suggestion"},{"openapi":"post /api/v2/suggestion/reject","title":"Reject Suggestion","href":"/v2-api-reference/suggestions/reject-suggestion"}]},{"group":"Revisions","pages":[{"openapi":"get /api/v2/revision/list","title":"List Revisions","href":"/v2-api-reference/revision/list-revisions"},{"openapi":"get /api/v2/revision/get","title":"Get Revision","href":"/v2-api-reference/revision/get-revision"}]},{"group":"Insights","pages":[{"openapi":"get /api/v2/insights/top-entities","title":"Top Entities","href":"/v2-api-reference/insights/top-entities"},{"openapi":"get /api/v2/insights/entity-stats","title":"Entity Stats","href":"/v2-api-reference/insights/entity-stats"},{"openapi":"get /api/v2/insights/entity-time-series","title":"Entity Time Series","href":"/v2-api-reference/insights/entity-time-series"},{"openapi":"get /api/v2/insights/competitive","title":"Competitive Landscape","href":"/v2-api-reference/insights/competitive-landscape"},{"openapi":"get /api/v2/insights/library-health","title":"Library Health","href":"/v2-api-reference/insights/library-health"},{"openapi":"get /api/v2/insights/workspace-baseline","title":"Workspace Baseline","href":"/v2-api-reference/insights/workspace-baseline"},{"openapi":"get /api/v2/insights/entity-usage","title":"Entity Usage","href":"/v2-api-reference/insights/entity-usage"}]},{"group":"Intel","pages":[{"openapi":"get /api/v2/intel/list","title":"List intel","href":"/v2-api-reference/intel/list-intel"},{"openapi":"get /api/v2/intel/get","title":"Get intel","href":"/v2-api-reference/intel/get-intel"}]},{"group":"Tag Group","pages":[{"openapi":"get /api/v2/tag-group/list","title":"List Tag Groups","href":"/v2-api-reference/tag-group/list-tag-groups"},{"openapi":"post /api/v2/tag-group/create","title":"Create Tag Group","href":"/v2-api-reference/tag-group/create-tag-group"},{"openapi":"post /api/v2/tag-group/update","title":"Update Tag Group","href":"/v2-api-reference/tag-group/update-tag-group"},{"openapi":"delete /api/v2/tag-group/delete","title":"Delete Tag Group","href":"/v2-api-reference/tag-group/delete-tag-group"},{"openapi":"get /api/v2/tag-group/assignments","title":"List Tag Group Assignments","href":"/v2-api-reference/tag-group/list-tag-group-assignments"},{"openapi":"get /api/v2/tag-group/performance","title":"Get Tag Group Performance","href":"/v2-api-reference/tag-group/get-tag-group-performance"},{"openapi":"post /api/v2/tag-group/backfill","title":"Backfill Tag Group","href":"/v2-api-reference/tag-group/backfill-tag-group"}]},{"group":"Tag","pages":[{"openapi":"post /api/v2/tag/create","title":"Create Tag","href":"/v2-api-reference/tag/create-tag"},{"openapi":"post /api/v2/tag/update","title":"Update Tag","href":"/v2-api-reference/tag/update-tag"},{"openapi":"delete /api/v2/tag/delete","title":"Delete Tag","href":"/v2-api-reference/tag/delete-tag"},{"openapi":"post /api/v2/tag/assign","title":"Assign Tag","href":"/v2-api-reference/tag/assign-tag"},{"openapi":"post /api/v2/tag/unassign","title":"Unassign Tag","href":"/v2-api-reference/tag/unassign-tag"}]},{"group":"Reports","pages":[{"openapi":"get /api/v2/report-group/list","title":"List report groups","href":"/v2-api-reference/reportgroup/list-report-groups"},{"openapi":"get /api/v2/report-group/get","title":"Get a report group","href":"/v2-api-reference/reportgroup/get-a-report-group"},{"openapi":"get /api/v2/report-config/list","title":"List report configs","href":"/v2-api-reference/reportconfig/list-report-configs"},{"openapi":"get /api/v2/report-config/get","title":"Get a report config","href":"/v2-api-reference/reportconfig/get-a-report-config"},{"openapi":"get /api/v2/report-run/list","title":"List report runs","href":"/v2-api-reference/reportrun/list-report-runs"},{"openapi":"get /api/v2/report-run/get","title":"Get a report run","href":"/v2-api-reference/reportrun/get-a-report-run"}]},{"group":"CRM","pages":[{"openapi":"get /api/v2/crm/get-entity-schema","title":"Get CRM Entity Schema","href":"/v2-api-reference/crm/get-crm-entity-schema"}]},{"group":"Sources","pages":[{"title":"Get Source","openapi":"get /api/v2/resource/get","href":"/v2-api-reference/resource/get-resource"},{"title":"List Sources","openapi":"get /api/v2/resource/list","href":"/v2-api-reference/resource/list-resources"},{"title":"Create Source","openapi":"post /api/v2/resource/create","href":"/v2-api-reference/resource/create-resource"},{"title":"Delete Source(s)","openapi":"post /api/v2/resource/delete","href":"/v2-api-reference/resource/delete-resources"},{"title":"Get Source Status","openapi":"get /api/v2/resource/status","href":"/v2-api-reference/resource/get-resource-status"},{"title":"Search Sources","openapi":"post /api/v2/resource/search","href":"/v2-api-reference/resource/search-resources"},{"title":"Check Source Drift","openapi":"post /api/v2/resource/check-drift","href":"/v2-api-reference/resource/check-resource-drift"},{"title":"Link Entities to Source","openapi":"post /api/v2/resource/link-entities","href":"/v2-api-reference/resource/link-entities-to-resource"}]},{"group":"Skill","pages":[{"openapi":"get /api/v2/skill/list","title":"List Skills","href":"/v2-api-reference/skill/list-skills"},{"openapi":"get /api/v2/skill/get","title":"Get Skill","href":"/v2-api-reference/skill/get-skill"},{"openapi":"get /api/v2/skill/file","title":"Get Skill File","href":"/v2-api-reference/skill/get-skill-file"},{"openapi":"post /api/v2/skill/create","title":"Create Skill","href":"/v2-api-reference/skill/create-skill"},{"openapi":"post /api/v2/skill/update","title":"Update Skill","href":"/v2-api-reference/skill/update-skill"},{"openapi":"post /api/v2/skill/delete","title":"Delete Skill","href":"/v2-api-reference/skill/delete-skill"},{"openapi":"post /api/v2/skill/find","title":"Find Skill","href":"/v2-api-reference/skill/find-skill"}]},{"group":"Asset","pages":[{"title":"Publishing Assets via API","href":"/v2-api-reference/asset/publishing-assets"},{"openapi":"get /api/v2/asset/list","title":"List Assets","href":"/v2-api-reference/asset/list-assets"},{"openapi":"get /api/v2/asset/get","title":"Get Asset","href":"/v2-api-reference/asset/get-asset"},{"openapi":"post /api/v2/asset/update","title":"Update Asset","href":"/v2-api-reference/asset/update-asset"},{"openapi":"delete /api/v2/asset/delete","title":"Delete Asset","href":"/v2-api-reference/asset/delete-asset"},{"openapi":"get /api/v2/asset/stats","title":"Get Asset Stats","href":"/v2-api-reference/asset/get-asset-stats"},{"openapi":"get /api/v2/asset/visitors","title":"List Asset Visitors","href":"/v2-api-reference/asset/list-asset-visitors"},{"openapi":"get /api/v2/asset/versions/list","title":"List Asset Versions","href":"/v2-api-reference/asset/list-asset-versions"},{"openapi":"post /api/v2/asset/versions/restore","title":"Restore Asset Version","href":"/v2-api-reference/asset/restore-asset-version"},{"openapi":"delete /api/v2/asset/versions/delete","title":"Delete Asset Version","href":"/v2-api-reference/asset/delete-asset-version"},{"openapi":"get /api/v2/asset/shares/list","title":"List Asset Shares","href":"/v2-api-reference/asset/list-asset-shares"},{"openapi":"post /api/v2/asset/shares/create","title":"Create Asset Share","href":"/v2-api-reference/asset/create-asset-share"},{"openapi":"delete /api/v2/asset/shares/revoke","title":"Revoke Asset Share","href":"/v2-api-reference/asset/revoke-asset-share"},{"openapi":"post /api/v2/asset/shares/add-recipients","title":"Add Asset Share Recipients","href":"/v2-api-reference/asset/add-asset-share-recipients"},{"openapi":"post /api/v2/asset/shares/remove-recipients","title":"Remove Asset Share Recipients","href":"/v2-api-reference/asset/remove-asset-share-recipients"},{"openapi":"post /api/v2/asset/shares/add-domains","title":"Add Asset Share Domains","href":"/v2-api-reference/asset/add-asset-share-domains"},{"openapi":"post /api/v2/asset/shares/remove-domains","title":"Remove Asset Share Domains","href":"/v2-api-reference/asset/remove-asset-share-domains"},{"openapi":"get /api/v2/asset/access-requests/list","title":"List Asset Access Requests","href":"/v2-api-reference/asset/list-asset-access-requests"},{"openapi":"post /api/v2/asset/access-requests/grant","title":"Grant Asset Access Request","href":"/v2-api-reference/asset/grant-asset-access-request"},{"openapi":"post /api/v2/asset/access-requests/dismiss","title":"Dismiss Asset Access Request","href":"/v2-api-reference/asset/dismiss-asset-access-request"},{"openapi":"post /api/v2/asset/access-token/generate","title":"Generate Asset Access Token","href":"/v2-api-reference/asset/generate-asset-access-token"},{"openapi":"post /api/v2/asset/access-token/refresh","title":"Refresh Asset Access Token","href":"/v2-api-reference/asset/refresh-asset-access-token"},{"openapi":"post /api/v2/asset/transfer","title":"Transfer Asset","href":"/v2-api-reference/asset/transfer-asset"},{"openapi":"post /api/v2/asset/tracked-links/create","title":"Create Tracked Link","href":"/v2-api-reference/asset/create-tracked-link"},{"openapi":"get /api/v2/asset/tracked-links/list","title":"List Tracked Links","href":"/v2-api-reference/asset/list-tracked-links"}]},{"group":"Workspace Company","pages":[{"openapi":"get /api/v2/workspace-company/get","title":"Get Workspace Company","href":"/v2-api-reference/workspace-company/get-workspace-company"},{"openapi":"post /api/v2/workspace-company/update","title":"Update Workspace Company","href":"/v2-api-reference/workspace-company/update-workspace-company"},{"openapi":"post /api/v2/workspace-company/generate","title":"Generate Workspace Company","href":"/v2-api-reference/workspace-company/generate-workspace-company"}]},{"group":"Legacy Playbooks","pages":[{"title":"Legacy Playbooks (deprecated)","href":"/concepts/playbooks"},{"openapi":"get /api/v2/playbook/list","title":"List Playbooks","href":"/v2-api-reference/playbook/list-playbooks"},{"openapi":"get /api/v2/playbook/get","title":"Get Playbook","href":"/v2-api-reference/playbook/get-playbook"},{"openapi":"post /api/v2/playbook/create","title":"Create Playbook","href":"/v2-api-reference/playbook/create-playbook"},{"openapi":"post /api/v2/playbook/update","title":"Update Playbook","href":"/v2-api-reference/playbook/update-playbook"},{"openapi":"delete /api/v2/playbook/delete","title":"Delete Playbook","href":"/v2-api-reference/playbook/delete-playbook"}]}]},{"tab":"MCP","pages":[{"title":"MCP","href":"/mcp/overview"}]}]},"basePath":"","title":"Event Cross-Tab - Octave API","buildId":"dpl_715YoAgvjTGBDdo8RtXmHKM22b5p","deploymentId":"dpl_715YoAgvjTGBDdo8RtXmHKM22b5p","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-BvKnMd7F.js","utils-BMt52org.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CGXZuDGO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dl57XWH2.js","snippetPresets-CWd8CxSk.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BR-Wkc_D.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-YMmi08aZ.js","shallow-DBC1OB78.js","getApiPlaygroundDisplay-Be7mmEzP.js","CodeSnippet-B14o1TgQ.js","CodeSnippets-CJ2q3fTq.js","Page-Chgj7sZe.js","getPastedJson-DnpLXm8x.js","icon-BpkSFtdK.js","MethodPill-BO3zPf-g.js","DuplicateIcon-Bib3qwfw.js","createIcon-CY2noFo3.js","DynamicMarkdown-TAXIW2vN.js","SectionHeading-Dfs3Fmfw.js","axios-vUo_bRtp.js","Markdown-CGAo_eqA.js","clsx-BNa-H6W6.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-r2tNEC1n.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-B7oWe6jc.js"]}