curl --request POST \
--url https://app.octavehq.com/api/v2/event/time-series \
--header 'Content-Type: application/json' \
--header 'api_key: <api-key>' \
--data '
{
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z",
"filters": {
"entityMatchAll": true,
"eventOIds": [
"<string>"
],
"opportunityIds": [
"<string>"
],
"eventCategories": [],
"eventTypes": [],
"sentiments": [],
"contactEmails": [
"<string>"
],
"companyDomains": [
"<string>"
],
"outcomeFilters": [],
"opportunityStatuses": [],
"dealMotions": [],
"dealTypes": [
"<string>"
],
"dealStages": [
"<string>"
],
"dealStagesAtEvent": [
"<string>"
],
"pipelinePhases": [],
"crmPipelines": [
"<string>"
],
"minStalledDays": 123,
"minDealAmount": 123,
"maxDealAmount": 123,
"offerings": [
"<string>"
],
"personas": [
"<string>"
],
"segments": [
"<string>"
],
"tags": [
"<string>"
],
"useCases": [
"<string>"
],
"references": [
"<string>"
],
"competitors": [
"<string>"
],
"alternatives": [
"<string>"
],
"buyingTriggers": [
"<string>"
],
"coreFeatures": [
"<string>"
],
"objections": [
"<string>"
],
"proofPoints": [
"<string>"
],
"motionTypes": [],
"callPurposes": [],
"unmatchedOnly": true
},
"exclude": {
"eventCategories": [],
"eventTypes": [],
"sentiments": [],
"contactEmails": [
"<string>"
],
"companyDomains": [
"<string>"
],
"outcomeFilters": [],
"opportunityStatuses": [],
"minDealAmount": 123,
"maxDealAmount": 123,
"offerings": [
"<string>"
],
"personas": [
"<string>"
],
"segments": [
"<string>"
],
"tags": [
"<string>"
],
"useCases": [
"<string>"
],
"references": [
"<string>"
],
"competitors": [
"<string>"
],
"alternatives": [
"<string>"
],
"buyingTriggers": [
"<string>"
],
"coreFeatures": [
"<string>"
],
"objections": [
"<string>"
],
"proofPoints": [
"<string>"
],
"motionTypes": [],
"callPurposes": [],
"dealMotions": [],
"dealTypes": [
"<string>"
],
"dealStages": [
"<string>"
],
"pipelinePhases": []
},
"excludeTags": [
"<string>"
],
"granularity": "week",
"includePreviousPeriod": false
}
'import requests
url = "https://app.octavehq.com/api/v2/event/time-series"
payload = {
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z",
"filters": {
"entityMatchAll": True,
"eventOIds": ["<string>"],
"opportunityIds": ["<string>"],
"eventCategories": [],
"eventTypes": [],
"sentiments": [],
"contactEmails": ["<string>"],
"companyDomains": ["<string>"],
"outcomeFilters": [],
"opportunityStatuses": [],
"dealMotions": [],
"dealTypes": ["<string>"],
"dealStages": ["<string>"],
"dealStagesAtEvent": ["<string>"],
"pipelinePhases": [],
"crmPipelines": ["<string>"],
"minStalledDays": 123,
"minDealAmount": 123,
"maxDealAmount": 123,
"offerings": ["<string>"],
"personas": ["<string>"],
"segments": ["<string>"],
"tags": ["<string>"],
"useCases": ["<string>"],
"references": ["<string>"],
"competitors": ["<string>"],
"alternatives": ["<string>"],
"buyingTriggers": ["<string>"],
"coreFeatures": ["<string>"],
"objections": ["<string>"],
"proofPoints": ["<string>"],
"motionTypes": [],
"callPurposes": [],
"unmatchedOnly": True
},
"exclude": {
"eventCategories": [],
"eventTypes": [],
"sentiments": [],
"contactEmails": ["<string>"],
"companyDomains": ["<string>"],
"outcomeFilters": [],
"opportunityStatuses": [],
"minDealAmount": 123,
"maxDealAmount": 123,
"offerings": ["<string>"],
"personas": ["<string>"],
"segments": ["<string>"],
"tags": ["<string>"],
"useCases": ["<string>"],
"references": ["<string>"],
"competitors": ["<string>"],
"alternatives": ["<string>"],
"buyingTriggers": ["<string>"],
"coreFeatures": ["<string>"],
"objections": ["<string>"],
"proofPoints": ["<string>"],
"motionTypes": [],
"callPurposes": [],
"dealMotions": [],
"dealTypes": ["<string>"],
"dealStages": ["<string>"],
"pipelinePhases": []
},
"excludeTags": ["<string>"],
"granularity": "week",
"includePreviousPeriod": False
}
headers = {
"api_key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {api_key: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
startDate: '2023-11-07T05:31:56Z',
endDate: '2023-11-07T05:31:56Z',
filters: {
entityMatchAll: true,
eventOIds: ['<string>'],
opportunityIds: ['<string>'],
eventCategories: [],
eventTypes: [],
sentiments: [],
contactEmails: ['<string>'],
companyDomains: ['<string>'],
outcomeFilters: [],
opportunityStatuses: [],
dealMotions: [],
dealTypes: ['<string>'],
dealStages: ['<string>'],
dealStagesAtEvent: ['<string>'],
pipelinePhases: [],
crmPipelines: ['<string>'],
minStalledDays: 123,
minDealAmount: 123,
maxDealAmount: 123,
offerings: ['<string>'],
personas: ['<string>'],
segments: ['<string>'],
tags: ['<string>'],
useCases: ['<string>'],
references: ['<string>'],
competitors: ['<string>'],
alternatives: ['<string>'],
buyingTriggers: ['<string>'],
coreFeatures: ['<string>'],
objections: ['<string>'],
proofPoints: ['<string>'],
motionTypes: [],
callPurposes: [],
unmatchedOnly: true
},
exclude: {
eventCategories: [],
eventTypes: [],
sentiments: [],
contactEmails: ['<string>'],
companyDomains: ['<string>'],
outcomeFilters: [],
opportunityStatuses: [],
minDealAmount: 123,
maxDealAmount: 123,
offerings: ['<string>'],
personas: ['<string>'],
segments: ['<string>'],
tags: ['<string>'],
useCases: ['<string>'],
references: ['<string>'],
competitors: ['<string>'],
alternatives: ['<string>'],
buyingTriggers: ['<string>'],
coreFeatures: ['<string>'],
objections: ['<string>'],
proofPoints: ['<string>'],
motionTypes: [],
callPurposes: [],
dealMotions: [],
dealTypes: ['<string>'],
dealStages: ['<string>'],
pipelinePhases: []
},
excludeTags: ['<string>'],
granularity: 'week',
includePreviousPeriod: false
})
};
fetch('https://app.octavehq.com/api/v2/event/time-series', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.octavehq.com/api/v2/event/time-series",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'startDate' => '2023-11-07T05:31:56Z',
'endDate' => '2023-11-07T05:31:56Z',
'filters' => [
'entityMatchAll' => true,
'eventOIds' => [
'<string>'
],
'opportunityIds' => [
'<string>'
],
'eventCategories' => [
],
'eventTypes' => [
],
'sentiments' => [
],
'contactEmails' => [
'<string>'
],
'companyDomains' => [
'<string>'
],
'outcomeFilters' => [
],
'opportunityStatuses' => [
],
'dealMotions' => [
],
'dealTypes' => [
'<string>'
],
'dealStages' => [
'<string>'
],
'dealStagesAtEvent' => [
'<string>'
],
'pipelinePhases' => [
],
'crmPipelines' => [
'<string>'
],
'minStalledDays' => 123,
'minDealAmount' => 123,
'maxDealAmount' => 123,
'offerings' => [
'<string>'
],
'personas' => [
'<string>'
],
'segments' => [
'<string>'
],
'tags' => [
'<string>'
],
'useCases' => [
'<string>'
],
'references' => [
'<string>'
],
'competitors' => [
'<string>'
],
'alternatives' => [
'<string>'
],
'buyingTriggers' => [
'<string>'
],
'coreFeatures' => [
'<string>'
],
'objections' => [
'<string>'
],
'proofPoints' => [
'<string>'
],
'motionTypes' => [
],
'callPurposes' => [
],
'unmatchedOnly' => true
],
'exclude' => [
'eventCategories' => [
],
'eventTypes' => [
],
'sentiments' => [
],
'contactEmails' => [
'<string>'
],
'companyDomains' => [
'<string>'
],
'outcomeFilters' => [
],
'opportunityStatuses' => [
],
'minDealAmount' => 123,
'maxDealAmount' => 123,
'offerings' => [
'<string>'
],
'personas' => [
'<string>'
],
'segments' => [
'<string>'
],
'tags' => [
'<string>'
],
'useCases' => [
'<string>'
],
'references' => [
'<string>'
],
'competitors' => [
'<string>'
],
'alternatives' => [
'<string>'
],
'buyingTriggers' => [
'<string>'
],
'coreFeatures' => [
'<string>'
],
'objections' => [
'<string>'
],
'proofPoints' => [
'<string>'
],
'motionTypes' => [
],
'callPurposes' => [
],
'dealMotions' => [
],
'dealTypes' => [
'<string>'
],
'dealStages' => [
'<string>'
],
'pipelinePhases' => [
]
],
'excludeTags' => [
'<string>'
],
'granularity' => 'week',
'includePreviousPeriod' => false
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"api_key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.octavehq.com/api/v2/event/time-series"
payload := strings.NewReader("{\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"filters\": {\n \"entityMatchAll\": true,\n \"eventOIds\": [\n \"<string>\"\n ],\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"dealStagesAtEvent\": [\n \"<string>\"\n ],\n \"pipelinePhases\": [],\n \"crmPipelines\": [\n \"<string>\"\n ],\n \"minStalledDays\": 123,\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"unmatchedOnly\": true\n },\n \"exclude\": {\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"pipelinePhases\": []\n },\n \"excludeTags\": [\n \"<string>\"\n ],\n \"granularity\": \"week\",\n \"includePreviousPeriod\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("api_key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.octavehq.com/api/v2/event/time-series")
.header("api_key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"filters\": {\n \"entityMatchAll\": true,\n \"eventOIds\": [\n \"<string>\"\n ],\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"dealStagesAtEvent\": [\n \"<string>\"\n ],\n \"pipelinePhases\": [],\n \"crmPipelines\": [\n \"<string>\"\n ],\n \"minStalledDays\": 123,\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"unmatchedOnly\": true\n },\n \"exclude\": {\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"pipelinePhases\": []\n },\n \"excludeTags\": [\n \"<string>\"\n ],\n \"granularity\": \"week\",\n \"includePreviousPeriod\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.octavehq.com/api/v2/event/time-series")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["api_key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"filters\": {\n \"entityMatchAll\": true,\n \"eventOIds\": [\n \"<string>\"\n ],\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"dealStagesAtEvent\": [\n \"<string>\"\n ],\n \"pipelinePhases\": [],\n \"crmPipelines\": [\n \"<string>\"\n ],\n \"minStalledDays\": 123,\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"unmatchedOnly\": true\n },\n \"exclude\": {\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"pipelinePhases\": []\n },\n \"excludeTags\": [\n \"<string>\"\n ],\n \"granularity\": \"week\",\n \"includePreviousPeriod\": false\n}"
response = http.request(request)
puts response.read_body{
"_metadata": {
"requestId": "requestId",
"timestamp": "2021-01-01T00:00:00.000Z",
"usage": 0,
"message": "message"
},
"dataWindow": {
"kind": "event_range",
"startDate": "<string>",
"endDate": "<string>",
"isDefault": true,
"periodType": "week"
},
"granularity": "day",
"buckets": [
{
"bucketStart": "<string>",
"events": 123,
"uniqueCompanies": 123,
"uniqueDeals": 123,
"outsideStoredEvents": true
}
],
"storedEvents": {
"firstStoredEventAt": "<string>",
"lastStoredEventAt": "<string>",
"coverage": "unknown"
},
"previous": {
"dataWindow": {
"kind": "event_range",
"startDate": "<string>",
"endDate": "<string>",
"isDefault": true,
"periodType": "week"
},
"buckets": [
{
"bucketStart": "<string>",
"events": 123,
"uniqueCompanies": 123,
"uniqueDeals": 123,
"outsideStoredEvents": true
}
]
}
}{
"_metadata": {
"requestId": "requestId",
"timestamp": "2021-01-01T00:00:00.000Z",
"usage": 0,
"message": "message"
},
"message": "<string>"
}Event Time Series
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.
curl --request POST \
--url https://app.octavehq.com/api/v2/event/time-series \
--header 'Content-Type: application/json' \
--header 'api_key: <api-key>' \
--data '
{
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z",
"filters": {
"entityMatchAll": true,
"eventOIds": [
"<string>"
],
"opportunityIds": [
"<string>"
],
"eventCategories": [],
"eventTypes": [],
"sentiments": [],
"contactEmails": [
"<string>"
],
"companyDomains": [
"<string>"
],
"outcomeFilters": [],
"opportunityStatuses": [],
"dealMotions": [],
"dealTypes": [
"<string>"
],
"dealStages": [
"<string>"
],
"dealStagesAtEvent": [
"<string>"
],
"pipelinePhases": [],
"crmPipelines": [
"<string>"
],
"minStalledDays": 123,
"minDealAmount": 123,
"maxDealAmount": 123,
"offerings": [
"<string>"
],
"personas": [
"<string>"
],
"segments": [
"<string>"
],
"tags": [
"<string>"
],
"useCases": [
"<string>"
],
"references": [
"<string>"
],
"competitors": [
"<string>"
],
"alternatives": [
"<string>"
],
"buyingTriggers": [
"<string>"
],
"coreFeatures": [
"<string>"
],
"objections": [
"<string>"
],
"proofPoints": [
"<string>"
],
"motionTypes": [],
"callPurposes": [],
"unmatchedOnly": true
},
"exclude": {
"eventCategories": [],
"eventTypes": [],
"sentiments": [],
"contactEmails": [
"<string>"
],
"companyDomains": [
"<string>"
],
"outcomeFilters": [],
"opportunityStatuses": [],
"minDealAmount": 123,
"maxDealAmount": 123,
"offerings": [
"<string>"
],
"personas": [
"<string>"
],
"segments": [
"<string>"
],
"tags": [
"<string>"
],
"useCases": [
"<string>"
],
"references": [
"<string>"
],
"competitors": [
"<string>"
],
"alternatives": [
"<string>"
],
"buyingTriggers": [
"<string>"
],
"coreFeatures": [
"<string>"
],
"objections": [
"<string>"
],
"proofPoints": [
"<string>"
],
"motionTypes": [],
"callPurposes": [],
"dealMotions": [],
"dealTypes": [
"<string>"
],
"dealStages": [
"<string>"
],
"pipelinePhases": []
},
"excludeTags": [
"<string>"
],
"granularity": "week",
"includePreviousPeriod": false
}
'import requests
url = "https://app.octavehq.com/api/v2/event/time-series"
payload = {
"startDate": "2023-11-07T05:31:56Z",
"endDate": "2023-11-07T05:31:56Z",
"filters": {
"entityMatchAll": True,
"eventOIds": ["<string>"],
"opportunityIds": ["<string>"],
"eventCategories": [],
"eventTypes": [],
"sentiments": [],
"contactEmails": ["<string>"],
"companyDomains": ["<string>"],
"outcomeFilters": [],
"opportunityStatuses": [],
"dealMotions": [],
"dealTypes": ["<string>"],
"dealStages": ["<string>"],
"dealStagesAtEvent": ["<string>"],
"pipelinePhases": [],
"crmPipelines": ["<string>"],
"minStalledDays": 123,
"minDealAmount": 123,
"maxDealAmount": 123,
"offerings": ["<string>"],
"personas": ["<string>"],
"segments": ["<string>"],
"tags": ["<string>"],
"useCases": ["<string>"],
"references": ["<string>"],
"competitors": ["<string>"],
"alternatives": ["<string>"],
"buyingTriggers": ["<string>"],
"coreFeatures": ["<string>"],
"objections": ["<string>"],
"proofPoints": ["<string>"],
"motionTypes": [],
"callPurposes": [],
"unmatchedOnly": True
},
"exclude": {
"eventCategories": [],
"eventTypes": [],
"sentiments": [],
"contactEmails": ["<string>"],
"companyDomains": ["<string>"],
"outcomeFilters": [],
"opportunityStatuses": [],
"minDealAmount": 123,
"maxDealAmount": 123,
"offerings": ["<string>"],
"personas": ["<string>"],
"segments": ["<string>"],
"tags": ["<string>"],
"useCases": ["<string>"],
"references": ["<string>"],
"competitors": ["<string>"],
"alternatives": ["<string>"],
"buyingTriggers": ["<string>"],
"coreFeatures": ["<string>"],
"objections": ["<string>"],
"proofPoints": ["<string>"],
"motionTypes": [],
"callPurposes": [],
"dealMotions": [],
"dealTypes": ["<string>"],
"dealStages": ["<string>"],
"pipelinePhases": []
},
"excludeTags": ["<string>"],
"granularity": "week",
"includePreviousPeriod": False
}
headers = {
"api_key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {api_key: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
startDate: '2023-11-07T05:31:56Z',
endDate: '2023-11-07T05:31:56Z',
filters: {
entityMatchAll: true,
eventOIds: ['<string>'],
opportunityIds: ['<string>'],
eventCategories: [],
eventTypes: [],
sentiments: [],
contactEmails: ['<string>'],
companyDomains: ['<string>'],
outcomeFilters: [],
opportunityStatuses: [],
dealMotions: [],
dealTypes: ['<string>'],
dealStages: ['<string>'],
dealStagesAtEvent: ['<string>'],
pipelinePhases: [],
crmPipelines: ['<string>'],
minStalledDays: 123,
minDealAmount: 123,
maxDealAmount: 123,
offerings: ['<string>'],
personas: ['<string>'],
segments: ['<string>'],
tags: ['<string>'],
useCases: ['<string>'],
references: ['<string>'],
competitors: ['<string>'],
alternatives: ['<string>'],
buyingTriggers: ['<string>'],
coreFeatures: ['<string>'],
objections: ['<string>'],
proofPoints: ['<string>'],
motionTypes: [],
callPurposes: [],
unmatchedOnly: true
},
exclude: {
eventCategories: [],
eventTypes: [],
sentiments: [],
contactEmails: ['<string>'],
companyDomains: ['<string>'],
outcomeFilters: [],
opportunityStatuses: [],
minDealAmount: 123,
maxDealAmount: 123,
offerings: ['<string>'],
personas: ['<string>'],
segments: ['<string>'],
tags: ['<string>'],
useCases: ['<string>'],
references: ['<string>'],
competitors: ['<string>'],
alternatives: ['<string>'],
buyingTriggers: ['<string>'],
coreFeatures: ['<string>'],
objections: ['<string>'],
proofPoints: ['<string>'],
motionTypes: [],
callPurposes: [],
dealMotions: [],
dealTypes: ['<string>'],
dealStages: ['<string>'],
pipelinePhases: []
},
excludeTags: ['<string>'],
granularity: 'week',
includePreviousPeriod: false
})
};
fetch('https://app.octavehq.com/api/v2/event/time-series', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.octavehq.com/api/v2/event/time-series",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'startDate' => '2023-11-07T05:31:56Z',
'endDate' => '2023-11-07T05:31:56Z',
'filters' => [
'entityMatchAll' => true,
'eventOIds' => [
'<string>'
],
'opportunityIds' => [
'<string>'
],
'eventCategories' => [
],
'eventTypes' => [
],
'sentiments' => [
],
'contactEmails' => [
'<string>'
],
'companyDomains' => [
'<string>'
],
'outcomeFilters' => [
],
'opportunityStatuses' => [
],
'dealMotions' => [
],
'dealTypes' => [
'<string>'
],
'dealStages' => [
'<string>'
],
'dealStagesAtEvent' => [
'<string>'
],
'pipelinePhases' => [
],
'crmPipelines' => [
'<string>'
],
'minStalledDays' => 123,
'minDealAmount' => 123,
'maxDealAmount' => 123,
'offerings' => [
'<string>'
],
'personas' => [
'<string>'
],
'segments' => [
'<string>'
],
'tags' => [
'<string>'
],
'useCases' => [
'<string>'
],
'references' => [
'<string>'
],
'competitors' => [
'<string>'
],
'alternatives' => [
'<string>'
],
'buyingTriggers' => [
'<string>'
],
'coreFeatures' => [
'<string>'
],
'objections' => [
'<string>'
],
'proofPoints' => [
'<string>'
],
'motionTypes' => [
],
'callPurposes' => [
],
'unmatchedOnly' => true
],
'exclude' => [
'eventCategories' => [
],
'eventTypes' => [
],
'sentiments' => [
],
'contactEmails' => [
'<string>'
],
'companyDomains' => [
'<string>'
],
'outcomeFilters' => [
],
'opportunityStatuses' => [
],
'minDealAmount' => 123,
'maxDealAmount' => 123,
'offerings' => [
'<string>'
],
'personas' => [
'<string>'
],
'segments' => [
'<string>'
],
'tags' => [
'<string>'
],
'useCases' => [
'<string>'
],
'references' => [
'<string>'
],
'competitors' => [
'<string>'
],
'alternatives' => [
'<string>'
],
'buyingTriggers' => [
'<string>'
],
'coreFeatures' => [
'<string>'
],
'objections' => [
'<string>'
],
'proofPoints' => [
'<string>'
],
'motionTypes' => [
],
'callPurposes' => [
],
'dealMotions' => [
],
'dealTypes' => [
'<string>'
],
'dealStages' => [
'<string>'
],
'pipelinePhases' => [
]
],
'excludeTags' => [
'<string>'
],
'granularity' => 'week',
'includePreviousPeriod' => false
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"api_key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.octavehq.com/api/v2/event/time-series"
payload := strings.NewReader("{\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"filters\": {\n \"entityMatchAll\": true,\n \"eventOIds\": [\n \"<string>\"\n ],\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"dealStagesAtEvent\": [\n \"<string>\"\n ],\n \"pipelinePhases\": [],\n \"crmPipelines\": [\n \"<string>\"\n ],\n \"minStalledDays\": 123,\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"unmatchedOnly\": true\n },\n \"exclude\": {\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"pipelinePhases\": []\n },\n \"excludeTags\": [\n \"<string>\"\n ],\n \"granularity\": \"week\",\n \"includePreviousPeriod\": false\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("api_key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://app.octavehq.com/api/v2/event/time-series")
.header("api_key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"filters\": {\n \"entityMatchAll\": true,\n \"eventOIds\": [\n \"<string>\"\n ],\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"dealStagesAtEvent\": [\n \"<string>\"\n ],\n \"pipelinePhases\": [],\n \"crmPipelines\": [\n \"<string>\"\n ],\n \"minStalledDays\": 123,\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"unmatchedOnly\": true\n },\n \"exclude\": {\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"pipelinePhases\": []\n },\n \"excludeTags\": [\n \"<string>\"\n ],\n \"granularity\": \"week\",\n \"includePreviousPeriod\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.octavehq.com/api/v2/event/time-series")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["api_key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"startDate\": \"2023-11-07T05:31:56Z\",\n \"endDate\": \"2023-11-07T05:31:56Z\",\n \"filters\": {\n \"entityMatchAll\": true,\n \"eventOIds\": [\n \"<string>\"\n ],\n \"opportunityIds\": [\n \"<string>\"\n ],\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"dealStagesAtEvent\": [\n \"<string>\"\n ],\n \"pipelinePhases\": [],\n \"crmPipelines\": [\n \"<string>\"\n ],\n \"minStalledDays\": 123,\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"unmatchedOnly\": true\n },\n \"exclude\": {\n \"eventCategories\": [],\n \"eventTypes\": [],\n \"sentiments\": [],\n \"contactEmails\": [\n \"<string>\"\n ],\n \"companyDomains\": [\n \"<string>\"\n ],\n \"outcomeFilters\": [],\n \"opportunityStatuses\": [],\n \"minDealAmount\": 123,\n \"maxDealAmount\": 123,\n \"offerings\": [\n \"<string>\"\n ],\n \"personas\": [\n \"<string>\"\n ],\n \"segments\": [\n \"<string>\"\n ],\n \"tags\": [\n \"<string>\"\n ],\n \"useCases\": [\n \"<string>\"\n ],\n \"references\": [\n \"<string>\"\n ],\n \"competitors\": [\n \"<string>\"\n ],\n \"alternatives\": [\n \"<string>\"\n ],\n \"buyingTriggers\": [\n \"<string>\"\n ],\n \"coreFeatures\": [\n \"<string>\"\n ],\n \"objections\": [\n \"<string>\"\n ],\n \"proofPoints\": [\n \"<string>\"\n ],\n \"motionTypes\": [],\n \"callPurposes\": [],\n \"dealMotions\": [],\n \"dealTypes\": [\n \"<string>\"\n ],\n \"dealStages\": [\n \"<string>\"\n ],\n \"pipelinePhases\": []\n },\n \"excludeTags\": [\n \"<string>\"\n ],\n \"granularity\": \"week\",\n \"includePreviousPeriod\": false\n}"
response = http.request(request)
puts response.read_body{
"_metadata": {
"requestId": "requestId",
"timestamp": "2021-01-01T00:00:00.000Z",
"usage": 0,
"message": "message"
},
"dataWindow": {
"kind": "event_range",
"startDate": "<string>",
"endDate": "<string>",
"isDefault": true,
"periodType": "week"
},
"granularity": "day",
"buckets": [
{
"bucketStart": "<string>",
"events": 123,
"uniqueCompanies": 123,
"uniqueDeals": 123,
"outsideStoredEvents": true
}
],
"storedEvents": {
"firstStoredEventAt": "<string>",
"lastStoredEventAt": "<string>",
"coverage": "unknown"
},
"previous": {
"dataWindow": {
"kind": "event_range",
"startDate": "<string>",
"endDate": "<string>",
"isDefault": true,
"periodType": "week"
},
"buckets": [
{
"bucketStart": "<string>",
"events": 123,
"uniqueCompanies": 123,
"uniqueDeals": 123,
"outsideStoredEvents": true
}
]
}
}{
"_metadata": {
"requestId": "requestId",
"timestamp": "2021-01-01T00:00:00.000Z",
"usage": 0,
"message": "message"
},
"message": "<string>"
}Authorizations
Body
Event window, filters and grouping
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.
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 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, 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.
Show child attributes
Show child attributes
Filters to EXCLUDE events matching these criteria (same shape as the entity/outcome match filters)
Show child attributes
Show child attributes
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.
Bucket size, in UTC. Weeks start on Monday.
day, week, month Also compute the same thing for the period of equal length immediately before the window, returned under previous with its own dataWindow — for 'up or down vs the prior period'. The window's end defaults to now when endDate is omitted.
Response
Event Time Series
Show child attributes
Show child attributes
The time span these numbers cover. Compare numbers from two tools only when their dataWindow kind and dates match.
Show child attributes
Show child attributes
day, week, month One entry per bucket across the window, oldest first; a bucket with no matching events is present with zeros. The first and last buckets are partial when the window does not start or end on a bucket boundary.
Show child attributes
Show child attributes
The earliest and latest events Octave stores for this workspace (any type, up to now). Observed bounds only: coverage is always 'unknown' because nothing here detects a gap in ingestion between them, and the first stored event may simply follow a quiet stretch. A zero inside the bounds is 'no matching stored events', not proof that nothing happened. Say so when a trend rests on it.
Show child attributes
Show child attributes
The same series for the equal-length period just before the window; null unless includePreviousPeriod was set. Compare bucket i with bucket i.
Show child attributes
Show child attributes