curl --request POST \
--url https://app.octavehq.com/api/v2/custom-extractor/create \
--header 'Content-Type: application/json' \
--header 'api_key: <api-key>' \
--data '
{
"name": "<string>",
"prompt": "<string>",
"eventTypes": [],
"description": "<string>",
"authoringInput": "<string>",
"eventFilters": {
"match": {
"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": []
}
},
"outputMode": "freeform",
"classes": [
{
"value": "<string>",
"label": "<string>",
"description": "<string>"
}
],
"numberConfig": {
"unit": "<string>",
"min": 123,
"max": 123
},
"jsonSchema": {},
"resultCardinality": "single",
"perspective": "EXTERNAL",
"fieldTargets": [],
"status": "ACTIVE"
}
'import requests
url = "https://app.octavehq.com/api/v2/custom-extractor/create"
payload = {
"name": "<string>",
"prompt": "<string>",
"eventTypes": [],
"description": "<string>",
"authoringInput": "<string>",
"eventFilters": {
"match": {
"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": []
}
},
"outputMode": "freeform",
"classes": [
{
"value": "<string>",
"label": "<string>",
"description": "<string>"
}
],
"numberConfig": {
"unit": "<string>",
"min": 123,
"max": 123
},
"jsonSchema": {},
"resultCardinality": "single",
"perspective": "EXTERNAL",
"fieldTargets": [],
"status": "ACTIVE"
}
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({
name: '<string>',
prompt: '<string>',
eventTypes: [],
description: '<string>',
authoringInput: '<string>',
eventFilters: {
match: {
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: []
}
},
outputMode: 'freeform',
classes: [{value: '<string>', label: '<string>', description: '<string>'}],
numberConfig: {unit: '<string>', min: 123, max: 123},
jsonSchema: {},
resultCardinality: 'single',
perspective: 'EXTERNAL',
fieldTargets: [],
status: 'ACTIVE'
})
};
fetch('https://app.octavehq.com/api/v2/custom-extractor/create', 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/custom-extractor/create",
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([
'name' => '<string>',
'prompt' => '<string>',
'eventTypes' => [
],
'description' => '<string>',
'authoringInput' => '<string>',
'eventFilters' => [
'match' => [
'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' => [
]
]
],
'outputMode' => 'freeform',
'classes' => [
[
'value' => '<string>',
'label' => '<string>',
'description' => '<string>'
]
],
'numberConfig' => [
'unit' => '<string>',
'min' => 123,
'max' => 123
],
'jsonSchema' => [
],
'resultCardinality' => 'single',
'perspective' => 'EXTERNAL',
'fieldTargets' => [
],
'status' => 'ACTIVE'
]),
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/custom-extractor/create"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"prompt\": \"<string>\",\n \"eventTypes\": [],\n \"description\": \"<string>\",\n \"authoringInput\": \"<string>\",\n \"eventFilters\": {\n \"match\": {\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 },\n \"outputMode\": \"freeform\",\n \"classes\": [\n {\n \"value\": \"<string>\",\n \"label\": \"<string>\",\n \"description\": \"<string>\"\n }\n ],\n \"numberConfig\": {\n \"unit\": \"<string>\",\n \"min\": 123,\n \"max\": 123\n },\n \"jsonSchema\": {},\n \"resultCardinality\": \"single\",\n \"perspective\": \"EXTERNAL\",\n \"fieldTargets\": [],\n \"status\": \"ACTIVE\"\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/custom-extractor/create")
.header("api_key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"prompt\": \"<string>\",\n \"eventTypes\": [],\n \"description\": \"<string>\",\n \"authoringInput\": \"<string>\",\n \"eventFilters\": {\n \"match\": {\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 },\n \"outputMode\": \"freeform\",\n \"classes\": [\n {\n \"value\": \"<string>\",\n \"label\": \"<string>\",\n \"description\": \"<string>\"\n }\n ],\n \"numberConfig\": {\n \"unit\": \"<string>\",\n \"min\": 123,\n \"max\": 123\n },\n \"jsonSchema\": {},\n \"resultCardinality\": \"single\",\n \"perspective\": \"EXTERNAL\",\n \"fieldTargets\": [],\n \"status\": \"ACTIVE\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.octavehq.com/api/v2/custom-extractor/create")
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 \"name\": \"<string>\",\n \"prompt\": \"<string>\",\n \"eventTypes\": [],\n \"description\": \"<string>\",\n \"authoringInput\": \"<string>\",\n \"eventFilters\": {\n \"match\": {\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 },\n \"outputMode\": \"freeform\",\n \"classes\": [\n {\n \"value\": \"<string>\",\n \"label\": \"<string>\",\n \"description\": \"<string>\"\n }\n ],\n \"numberConfig\": {\n \"unit\": \"<string>\",\n \"min\": 123,\n \"max\": 123\n },\n \"jsonSchema\": {},\n \"resultCardinality\": \"single\",\n \"perspective\": \"EXTERNAL\",\n \"fieldTargets\": [],\n \"status\": \"ACTIVE\"\n}"
response = http.request(request)
puts response.read_body{
"_metadata": {
"requestId": "requestId",
"timestamp": "2021-01-01T00:00:00.000Z",
"usage": 0,
"message": "message"
},
"data": {
"name": "<string>",
"prompt": "<string>",
"eventTypes": [
"EMAIL_SENT"
],
"modelTier": "NOTE",
"status": "DRAFT",
"oId": "<string>",
"promptVersion": 123,
"source": "WORKSPACE",
"mappingStatus": "PENDING",
"associatedLibraryTables": [
"persona"
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"executionScope": {
"phase": "EXTRACTION",
"extractionKeys": [
"<string>"
],
"deferredKeys": [
"<string>"
],
"unsupportedKeys": [
"<string>"
]
},
"description": "<string>",
"authoringInput": "<string>",
"eventFilters": {
"match": {
"entityMatchAll": true,
"eventOIds": [
"<string>"
],
"opportunityIds": [
"<string>"
],
"eventCategories": [
"EMAIL"
],
"eventTypes": [
"EMAIL_SENT"
],
"sentiments": [
"POSITIVE"
],
"contactEmails": [
"<string>"
],
"companyDomains": [
"<string>"
],
"outcomeFilters": [
"OPEN"
],
"opportunityStatuses": [
"OPEN"
],
"dealMotions": [
"NET_NEW"
],
"dealTypes": [
"<string>"
],
"dealStages": [
"<string>"
],
"dealStagesAtEvent": [
"<string>"
],
"pipelinePhases": [
"prospecting"
],
"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": [
"NET_NEW"
],
"customerScope": "ALL",
"callPurposes": [
"DISCOVERY"
],
"unmatchedOnly": true
},
"exclude": {
"eventCategories": [
"EMAIL"
],
"eventTypes": [
"EMAIL_SENT"
],
"sentiments": [
"POSITIVE"
],
"contactEmails": [
"<string>"
],
"companyDomains": [
"<string>"
],
"outcomeFilters": [
"OPEN"
],
"opportunityStatuses": [
"OPEN"
],
"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": [
"NET_NEW"
],
"callPurposes": [
"DISCOVERY"
],
"dealMotions": [
"NET_NEW"
],
"dealTypes": [
"<string>"
],
"dealStages": [
"<string>"
],
"pipelinePhases": [
"prospecting"
]
}
},
"outputMode": "freeform",
"classes": [
{
"value": "<string>",
"label": "<string>",
"description": "<string>"
}
],
"numberConfig": {
"unit": "<string>",
"min": 123,
"max": 123
},
"jsonSchema": {},
"resultCardinality": "single",
"perspective": "EXTERNAL",
"fieldTargets": [],
"mappingProposal": {
"libraryTables": [
{
"table": "persona",
"rationale": "<string>"
}
]
},
"mappingModel": "<string>",
"user": {
"oId": "<string>",
"email": "<string>"
}
}
}{
"_metadata": {
"requestId": "requestId",
"timestamp": "2021-01-01T00:00:00.000Z",
"usage": 0,
"message": "message"
},
"message": "<string>"
}Create Custom Extractor
Create a workspace-defined custom finding extractor (event types + optional event filters + custom prompt + model tier + perspective + optional field targets). Set outputMode to “object” with jsonSchema for schema-validated typed fields. Creation runs a one-time LLM mapping that proposes library-table anchors. Created ACTIVE by default — pass status DRAFT to hold it for review and activate via update later. Requires the custom-extractors entitlement.
curl --request POST \
--url https://app.octavehq.com/api/v2/custom-extractor/create \
--header 'Content-Type: application/json' \
--header 'api_key: <api-key>' \
--data '
{
"name": "<string>",
"prompt": "<string>",
"eventTypes": [],
"description": "<string>",
"authoringInput": "<string>",
"eventFilters": {
"match": {
"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": []
}
},
"outputMode": "freeform",
"classes": [
{
"value": "<string>",
"label": "<string>",
"description": "<string>"
}
],
"numberConfig": {
"unit": "<string>",
"min": 123,
"max": 123
},
"jsonSchema": {},
"resultCardinality": "single",
"perspective": "EXTERNAL",
"fieldTargets": [],
"status": "ACTIVE"
}
'import requests
url = "https://app.octavehq.com/api/v2/custom-extractor/create"
payload = {
"name": "<string>",
"prompt": "<string>",
"eventTypes": [],
"description": "<string>",
"authoringInput": "<string>",
"eventFilters": {
"match": {
"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": []
}
},
"outputMode": "freeform",
"classes": [
{
"value": "<string>",
"label": "<string>",
"description": "<string>"
}
],
"numberConfig": {
"unit": "<string>",
"min": 123,
"max": 123
},
"jsonSchema": {},
"resultCardinality": "single",
"perspective": "EXTERNAL",
"fieldTargets": [],
"status": "ACTIVE"
}
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({
name: '<string>',
prompt: '<string>',
eventTypes: [],
description: '<string>',
authoringInput: '<string>',
eventFilters: {
match: {
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: []
}
},
outputMode: 'freeform',
classes: [{value: '<string>', label: '<string>', description: '<string>'}],
numberConfig: {unit: '<string>', min: 123, max: 123},
jsonSchema: {},
resultCardinality: 'single',
perspective: 'EXTERNAL',
fieldTargets: [],
status: 'ACTIVE'
})
};
fetch('https://app.octavehq.com/api/v2/custom-extractor/create', 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/custom-extractor/create",
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([
'name' => '<string>',
'prompt' => '<string>',
'eventTypes' => [
],
'description' => '<string>',
'authoringInput' => '<string>',
'eventFilters' => [
'match' => [
'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' => [
]
]
],
'outputMode' => 'freeform',
'classes' => [
[
'value' => '<string>',
'label' => '<string>',
'description' => '<string>'
]
],
'numberConfig' => [
'unit' => '<string>',
'min' => 123,
'max' => 123
],
'jsonSchema' => [
],
'resultCardinality' => 'single',
'perspective' => 'EXTERNAL',
'fieldTargets' => [
],
'status' => 'ACTIVE'
]),
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/custom-extractor/create"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"prompt\": \"<string>\",\n \"eventTypes\": [],\n \"description\": \"<string>\",\n \"authoringInput\": \"<string>\",\n \"eventFilters\": {\n \"match\": {\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 },\n \"outputMode\": \"freeform\",\n \"classes\": [\n {\n \"value\": \"<string>\",\n \"label\": \"<string>\",\n \"description\": \"<string>\"\n }\n ],\n \"numberConfig\": {\n \"unit\": \"<string>\",\n \"min\": 123,\n \"max\": 123\n },\n \"jsonSchema\": {},\n \"resultCardinality\": \"single\",\n \"perspective\": \"EXTERNAL\",\n \"fieldTargets\": [],\n \"status\": \"ACTIVE\"\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/custom-extractor/create")
.header("api_key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"prompt\": \"<string>\",\n \"eventTypes\": [],\n \"description\": \"<string>\",\n \"authoringInput\": \"<string>\",\n \"eventFilters\": {\n \"match\": {\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 },\n \"outputMode\": \"freeform\",\n \"classes\": [\n {\n \"value\": \"<string>\",\n \"label\": \"<string>\",\n \"description\": \"<string>\"\n }\n ],\n \"numberConfig\": {\n \"unit\": \"<string>\",\n \"min\": 123,\n \"max\": 123\n },\n \"jsonSchema\": {},\n \"resultCardinality\": \"single\",\n \"perspective\": \"EXTERNAL\",\n \"fieldTargets\": [],\n \"status\": \"ACTIVE\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.octavehq.com/api/v2/custom-extractor/create")
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 \"name\": \"<string>\",\n \"prompt\": \"<string>\",\n \"eventTypes\": [],\n \"description\": \"<string>\",\n \"authoringInput\": \"<string>\",\n \"eventFilters\": {\n \"match\": {\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 },\n \"outputMode\": \"freeform\",\n \"classes\": [\n {\n \"value\": \"<string>\",\n \"label\": \"<string>\",\n \"description\": \"<string>\"\n }\n ],\n \"numberConfig\": {\n \"unit\": \"<string>\",\n \"min\": 123,\n \"max\": 123\n },\n \"jsonSchema\": {},\n \"resultCardinality\": \"single\",\n \"perspective\": \"EXTERNAL\",\n \"fieldTargets\": [],\n \"status\": \"ACTIVE\"\n}"
response = http.request(request)
puts response.read_body{
"_metadata": {
"requestId": "requestId",
"timestamp": "2021-01-01T00:00:00.000Z",
"usage": 0,
"message": "message"
},
"data": {
"name": "<string>",
"prompt": "<string>",
"eventTypes": [
"EMAIL_SENT"
],
"modelTier": "NOTE",
"status": "DRAFT",
"oId": "<string>",
"promptVersion": 123,
"source": "WORKSPACE",
"mappingStatus": "PENDING",
"associatedLibraryTables": [
"persona"
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"executionScope": {
"phase": "EXTRACTION",
"extractionKeys": [
"<string>"
],
"deferredKeys": [
"<string>"
],
"unsupportedKeys": [
"<string>"
]
},
"description": "<string>",
"authoringInput": "<string>",
"eventFilters": {
"match": {
"entityMatchAll": true,
"eventOIds": [
"<string>"
],
"opportunityIds": [
"<string>"
],
"eventCategories": [
"EMAIL"
],
"eventTypes": [
"EMAIL_SENT"
],
"sentiments": [
"POSITIVE"
],
"contactEmails": [
"<string>"
],
"companyDomains": [
"<string>"
],
"outcomeFilters": [
"OPEN"
],
"opportunityStatuses": [
"OPEN"
],
"dealMotions": [
"NET_NEW"
],
"dealTypes": [
"<string>"
],
"dealStages": [
"<string>"
],
"dealStagesAtEvent": [
"<string>"
],
"pipelinePhases": [
"prospecting"
],
"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": [
"NET_NEW"
],
"customerScope": "ALL",
"callPurposes": [
"DISCOVERY"
],
"unmatchedOnly": true
},
"exclude": {
"eventCategories": [
"EMAIL"
],
"eventTypes": [
"EMAIL_SENT"
],
"sentiments": [
"POSITIVE"
],
"contactEmails": [
"<string>"
],
"companyDomains": [
"<string>"
],
"outcomeFilters": [
"OPEN"
],
"opportunityStatuses": [
"OPEN"
],
"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": [
"NET_NEW"
],
"callPurposes": [
"DISCOVERY"
],
"dealMotions": [
"NET_NEW"
],
"dealTypes": [
"<string>"
],
"dealStages": [
"<string>"
],
"pipelinePhases": [
"prospecting"
]
}
},
"outputMode": "freeform",
"classes": [
{
"value": "<string>",
"label": "<string>",
"description": "<string>"
}
],
"numberConfig": {
"unit": "<string>",
"min": 123,
"max": 123
},
"jsonSchema": {},
"resultCardinality": "single",
"perspective": "EXTERNAL",
"fieldTargets": [],
"mappingProposal": {
"libraryTables": [
{
"table": "persona",
"rationale": "<string>"
}
]
},
"mappingModel": "<string>",
"user": {
"oId": "<string>",
"email": "<string>"
}
}
}{
"_metadata": {
"requestId": "requestId",
"timestamp": "2021-01-01T00:00:00.000Z",
"usage": 0,
"message": "message"
},
"message": "<string>"
}Authorizations
Body
Custom extractor definition
1 - 2551 - 20000Event types this extractor runs on
1EMAIL_SENT, EMAIL_REPLY_RECEIVED, CALL_TRANSCRIPT, DEAL_WON, DEAL_LOST, OPPORTUNITY_CREATED, MEETING_BOOKED, RESOURCE_INDEXED, RESOURCE_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 NOTE, PULSE, ECHO, HARMONY, CHORUS, SYMPHONY 2000The plain-language ask the AI authoring assist drafted the prompt from, kept for provenance. Omit (or null) when the prompt was hand-written. Changing it alone does not bump promptVersion.
4000Optional additional event filters (event-log filter shape). Library-entity filters hold the extractor until entity matching has run, then gate it there as well as in backfills.
Show child attributes
Show child attributes
Output shape: freeform snippets, structured fields, or a per-event verdict (boolean / number / single or multi choice)
freeform, boolean, number, enum_single, enum_multi, object Choice-mode classes (enum_single / enum_multi); >= 2 required
25Show child attributes
Show child attributes
NUMBER-mode unit and optional min/max bounds
Show child attributes
Show child attributes
OBJECT-mode JSON Schema for the structured value
Show child attributes
Show child attributes
OBJECT mode only: one record for the whole event, or one record per matching occurrence
single, repeated Whose contributions to mine: INTERNAL (our team), EXTERNAL (prospect), or ANY. Defaults to EXTERNAL — nearly all GTM intelligence is about what the buyer said, and an unstated preference is a preference for the buyer's voice.
INTERNAL, EXTERNAL, ANY Optional (entity, field) refinement targets — findings are pinned to these entities as evidence for the named field
Show child attributes
Show child attributes
Initial lifecycle status. ACTIVE (default) extracts from new matching events as they arrive; DRAFT holds the extractor for review until explicitly activated.
DRAFT, ACTIVE